Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 07/25/20 in Blog Entries

  1. Nous avons le plaisir de vous présenter le premier bijou technique de @Lucie Guilbert, en tant que développeuse Web et FileMaker chez ParJupiter. Les bijoux techniques de Lucie seront naturellement appelés les «Diamants de Lucie» ! 💎 🎵 Et il y en aura d'autres… Ce tout premier diamant vient combler un manque historique de #FileMaker : il apporte la possibilité de consulter les données dans un tableau facile à trier, à filtrer, bien présentable, avec une pagination et un compteur de ligne en bas, etc. En prime : un tableau qui s'intègre parfaitement dans n'importe quelle interface visuelle ! Bref, un tableau de données (DataTable) qui interagit avec les données de la base FileMaker, et encore plus fluide et agréable qu'un tableur Excel… Voilà qui est possible grâce à FileMaker 19 et à l'immense créativité de Lucie. 👏 N'hésitez pas à nous contacter pour en savoir plus. Un bon point 🏆 accordé à toute personne qui saura reconnaître les 3 coups… Boum-boum-boum 🥁 Including English and French subtitles Voir toutes nos vidéos : https://www.parjupiter.com/nos-videos/#diamant-1
    3 points
  2. Grande nouvelle pour nous, IU-DATA intègre le Marketplace de Claris afin de proposer de manière régulière différents add-ons ou produits permettant d'ajouter des fonctionnalités aussi uniques qu'intéressantes à vos solutions FileMaker. Un moyen pour moi de vraiment m'amuser en recherche et développement je dois le dire ! C'était aussi l'occasion pour nous de refondre totalement notre site Internet afin d'y proposer de nouveaux services. D'un côté nous partagerons avec vous des articles autour de nos développements et nos trouvailles. Et de l'autre nos produits et différents add-ons que vous pourrez découvrir au travers de nos documentations ou de nos vidéos de présentation... N'hésitez pas à venir y faire un tour et découvrir qui nous sommes, c'est par ici ! A bientôt, Julien IU-DATA
    3 points
  3. Chères consœurs, confrères, Je vous partage cette petite astuce de formation, que j'utilise avec succès depuis 7 ans : le souvenir de la gentille dame de la bibliothèque, qui cherchait des informations dans ses armoires métalliques… Non, ceci ne nous rajeunit pas ! 😁 Réjouissons-nous cependant d'avoir connu cette époque, car elle nous aide, et elle aide beaucoup de personnes à saisir le principe de base des bases de données relationnelles, et donc de FileMaker. Lien LinkedIn Lien YouTube Si d'autres veulent partager leurs petits trucs de formateurs, n'hésitez pas à nous en faire part ! Bonne journée avec le soleil ! ☀️ Jérémie
    2 points
  4. Claris l’avait annoncé : finies les traditionnelles grandes sorties du moi de mai. Le cycle « Agile » consiste en des mises à jour plus fréquentes, avec une répartition des nouveautés tout au long de l’année. Cette semaine, c’est la version 19.3 qui a été annoncée, et c’est une version importante même si surtout « technique ». Petit résumé […] Cet article Sortie de FileMaker 19.3 est apparu en premier sur 1-more-thing. >>> Lire la suite… <<<
    1 point
  5. We often work on projects that intersect two technologies near and dear to us: FileMaker and Ruby. This allows us to build robust web applications in Ruby on Rails, integrated with data sources from FileMaker solutions. When Claris introduced the FileMaker Data API we were naturally curious to try it out. At the time there […] Afficher la totalité du billet
    1 point
  6. Recently, having had a conversation with a fellow developer about a FileMaker theme potentially causing issues with slow performance, it was asked about how it's possible to update a theme. Whether you simply want to update existing styles and/or remove and add others, there's only a few critical things you need to remember about updating and migrating a theme. If you can get those few things right, then making any number of updates to your existing theme can be quite easy to accomplish. The great thing about updating a theme is that it can be accomplished in a completely separate copy of your live file. All you need to do is download the file from FileMaker Server and then make the desired changes/deletions/additions and then simply apply the updated theme onto the previous version. This migration can be done with minimal fuss provided you keep both the theme name and the theme styles named exactly the same. Needing to update your FileMaker theme for all your layouts? Watch this video if you'd like some insight into how you can go about migrating your theme from an older version to a newer version. Click the title or link to this article to view the video. Afficher la totalité du billet
    1 point
  7. FileMaker themes are simply a collection of the popular CSS standards plus a few extra attributes which are FileMaker specific. Each element on your FileMaker layouts is defined by these CSS settings. They can be seen when extracting them from the clipboard, and if you know the right location to retrieve and store them, can be defined by any enthusiastic developer. When FileMaker, now Claris, first introduced themes they likely had the intention of allowing users and/or third parties to create their own. In the time since that initial release it may not be as commonly known, but the location still exists and you can certainly create (or modify) your own theme. The trick is knowing what's required, what can and can't be done and how the CSS translates to the FileMaker UI widgets. Even still, if you can't take the time to learn every single detail, you can still work with a theme which currently exists and simply tweak that theme to fit your specific needs. In this video I walk through all the specifics related to customizing one of the existing themes. As long and you get the files into the right location with the right values, then you can modify any theme to your heart's content. Locations to find existing theme files are here. Macintosh: [MY_DRIVE_NAME]/Applications/FileMaker Pro.app/Contents/Resources/Themes Windows: C:\Program Files\FileMaker\FileMaker Pro 19\Themes Locations to store theme files are here. Macintosh: [MY_DRIVE_NAME]/Users/[USERNAME]/Library/Application Support/FileMaker/Extensions/Themes Windows: C:\Users\[USERNAME]\AppData\Local\FileMaker\Extensions\Themes Click the title or link to this article to view the video. Afficher la totalité du billet
    1 point
  8. The decorator pattern is one of my favorite patterns. It is simple, extensible and powerful. It feels like it follows the essence of object oriented programming beautifully. Sadly though, it is also easy to be misused or misunderstood. So, in this post I will show you the essence of the decorator pattern, illustrated with a […] Afficher la totalité du billet
    1 point
  9. Here's an interesting dilemma. How do you track when specific fields are modified and adjust your JSON object so it only includes the data which was modified? Or, how about knowing when a user has modified specific fields, then having the user interface direct them down a different path than if they had modified others? In both situations, you simply need to know when a field was modified. Using the Get ( RecordModificationCount ) function we can know THAT a given record was modified and using a modification field we can know WHEN it last happened. What we don't know is when only a specific set of fields is modified. We also may need to know exactly which fields were modified in order to take some type of action. This is where Detecting Data Changes is quite helpful. There are a number of ways this can be accomplished and the solution, as always, depends on what your needs are. In this video, I showcase a method I use to detect data changes and then generate a JSON object based on specific fields which were changed. If you find your solution needing to work with an external API or needing to simply know when certain fields have been changed then you're sure to find some valuable info within this video and technique file. Click the title or link to this article to view the video. Afficher la totalité du billet
    1 point
  10. We are pleased to release bBox version 0.96. bBox is a free utility plug-in to extend FileMaker solutions to easily use code libraries and macOS-based functions from Python, JavaScript, PHP, Ruby, AppleScript, Bash/sh, XPath, and SQLite. Afficher la totalité du billet
    1 point
  11. Who doesn't like the simplicity of using a single field to search across many. That's essentially what Quick Find is. In fact, by default FileMaker makes the silly assumption that every field you add to a layout is something you want the user to be able to search. Essentially, you want to take control of the user experience in terms of search and make sure the user is not only searching what you want them to search, but also able to search in a fashion which is both familiar and comfortable. This technique file and video will walk you through the details needed to take full control of the Quick Find experience. You can enforce desirable effects such as sorted record sets and keep the user within the search field ready for multiple repeated search attempts. By taking advantage of a variety of FileMaker features, we can create both an easy-to-implement and universally powerful Quick Find feature. Watch the video and use the associated technique file in order to have a better understanding of how Quick Find truly works within FileMaker Pro. Click the title or link to this article to view the video. Afficher la totalité du billet
    1 point
  12. Learn how to generate massive amounts of test data in your FileMaker app by leveraging new FileMaker 19 features that allow you to interact directly with JavaScript. Part of good app development is testing with conditions that are similar to the environment you can expect your app to eventually operate in. One of those conditions is the amount of data your app is working with. It’s a not infrequent occurrence that someone comes to us with a system that worked well with a few records but has grown slow and cumbersome as more data is entered. That’s why we develop with test data in the system so that we can easily spot situations where a technique used is not performant enough for production. This is great when we have an existing set of data to use but there are plenty of times where we’re tasked with an entirely new system concept that might not have years and years of data to work with. At that point, we need to generate on our own data. With the release of FileMaker 19, this task becomes much easier. Generating the Test Data This problem is not a new or unique development problem and we luckily have access to robust libraries whose sole purpose is to generate fake data for testing purposes. The library we’ll be working with today is called faker.js. This library exposes a wealth of different methods for generating various types of fake data. It ranges from contact names, company names, dates, currency amounts, internet domains, lorem ipsum text, phone numbers, file names and more. Setting Our File Up To kick this off, I’m going to setup a new table in my FileMaker app named Faker. This will be a single record table with a sole purpose of storing the code we use to generate fake data. The JavaScript Next, we need to write a little bit of JavaScript to actually generate our fake data. In this example, our goal is generate a number of contacts with each contact having a number of donations associated with them. We’ll end up with something that looks like this – A couple of notes here – FileMaker’s interaction with JavaScript happens through the web viewer which is a web portal that we can inject our own html into. With that in mind, we’re wrapping all of our JS code in <script> tags so that the web viewer can properly interpret and render it. The first script tag is loading the faker.js library from a CDN. You may consider downloading a minified version of the library and encapsulating in a script tag to improve performance and reduce reliance on outside resources. The fake data we’re generating here is very specific to this system and that will basically always be the case. Check out the faker.js docs for more fake data options. Back to FileMaker Now that we’ve got our JS code all set, we’re going to take it and place it in the HTML field of the single record Faker table. We’re also going to navigate to the Faker layout and create a web viewer. FileMaker’s functionality to perform JS code requires the JS to be loaded into a web viewer object. Our setup will look something like this: A few important points for all of this to work: Note the prefix “data:text/html,”. This is a required prefix for FileMaker to render and interpret our HTML/JS. It’s also important to note that we’ve named this web viewer object: In the web viewer settings (accessible by double clicking in layout mode), we need to enable our JavaScript to call FileMaker scripts: In browse mode, we’ll have something like this: The Scripts We’ll need a few scripts to actually run the library to generate the fake data as well as process it. The first one will navigate us to the Faker layout where the web viewer resides and run the fakeContacts JavaScript function. In order to run that JS function, we’ll be using the new in FileMaker 19 script step, “Perform JavaScript in Web Viewer”. This script step takes a web viewer object name, a JavaScript function name and any parameters you want to pass along. In our case, the call looks like this: When this JS function is called, it will generate a number of fake contacts (based on the variable, $numberOfContacts, we send as a parameter), package them into an array, and then call a FileMaker script to actually process the data. We do that by leveraging the new to FileMaker 19 function FileMaker.PerformScript. This is a JavaScript function that is injected and, therefore, available to us when in the context of the FileMaker web viewer object. That looks something like this (from our JS code): When this line is executed, the JavaScript code will call the FileMaker script “Generate Fake Contacts” and pass along our response variable as a parameter. From there, our Generate Fake Contacts script can process that response and create FileMaker records with that fake data. And that’s it! We’ve included a demo file so that you can see this in action. Login with admin and no password and dig in! Let us know if you have any questions in the comments below 😃 Afficher la totalité du billet
    1 point
  13. Author’s note: Inevitable comparisons will be drawn between the new While function and the venerable CustomList custom function, which I wrote about at length several years ago. Preliminary testing indicates that CustomList is faster under certain circumstances and While is faster under others. In my opinion, both of them belong in your developer tool kit. […] Afficher la totalité du billet
    1 point
  14. Nous voici arrivé au terme de cette série où nous allons enfin réaliser cette fameuse fonction personnalisée récursive ! Pour celles et ceux qui arrivent seulement, je propose depuis trois semaines une série sur la réalisation de fonctions personnalisées récursives. Donc, nous allons mettre en place la fonction personnalisée qui correspond au script donné la semaine dernière, à savoir une fonction qui a comme objectif d’inverser les items. Bon, pour ceux du fond qui sont pressés de partir en vacances, on fournit à la fonction une liste de valeurs (A, B, C, D) et elle devra nous retourner cette liste mais avec les items inversés (D, C, B, A). Petits rappels Pour créer une fonction personnalisée vous devez avoir le logiciel FileMaker Pro Advanced. C’est avec ce logiciel que vous allez pouvoir mettre dans votre base de données la fonction personnalisée, car elle appartiendra au fichier, ce qui permet aux utilisateurs n’ayant pas FileMaker Pro Advanced de pouvoir l’exécuter sans problème à partir d’une formule de calcul. Si vous souhaitez connaître la procédure pour la réalisation d’une fonction personnalisée, je vous recommande de lire la chronique disponible en cliquant ici. La réalisation d’une fonction récursive Pour rappel, je n’arrête pas de le rappeler, une fonction récursive est une fonction qui s’appelle elle-même pour palier le fait qu’on n’a pas d’instruction de boucle. Notre fonction devra avoir la forme suivante : InverserListe( listeATraiter ), avec : InverserListe : le nom de la fonction, que l’on retrouvera dans la liste des fonctions des formules de calcul; listeATraiter : le paramètre de la fonction, qui sera justement une liste. Deuxième petit rappel, dans FileMaker une liste de valeurs est une liste où chaque item est séparé par une retour à la ligne (symbole ¶). Voici le logigramme correspondant à la fonction que nous allons mettre en place: Et vous remarquez que j’ai ajouté deux paramètres à la fonction : i et l. Car je dois, à chaque itération de ma boucle (appel à la fonction), transmettre des valeurs transitoires : i : contient lors du 1er appel à la fonction une valeur vide et ensuite le numéro de l’item à récupérer ; l : contient la liste inversée encours de construction. Voici donc la formule de la fonction récursive : DEFINIR ( [ _L = ListeATraiter ; _i = CAS( ESTVIDE( i ) ; DECOMPTEVALEURS( _L ) ; i - 1 ) ; _lt = l & "¶" & OBTENIRVALEUR( _L ; _i ) ] ; CAS( _i ≤ 1 ; _lt ; InverserListe( _L ; _i : _lt ) ) ) Pour ceux qui veulent supprimer le premier retour chariot du résultat Car la formule précédente génère un retour chariot inutile en début de liste, mais comme je ne voulais compliquer la formule, la voici donc avec le retour chariot en moins : DEFINIR ( [ _L = ListeATraiter ; _i = CAS( ESTVIDE( i ) ; DECOMPTEVALEURS( _L ) ; i - 1 ) ; _la = OBTENIRVALEUR( _L ; _i ) ; _lt = CAS( ESTVIDE( l ) ; _la ; l & "¶" & _la ) ] ; CAS( _i ≤ 1 ; _lt ; InverserListe( _L ; _i : _lt ) ) ) C’est tout pour aujourd’hui Vous trouverez en pièce jointe à cette chronique le fichier FileMaker contenant la fonction personnalisée. En attendant la prochaine chronique, je vous souhaite à toutes et à tous une excellente semaine ensoleillée et chaude !
    1 point
×
×
  • Create New...