exposé technique sur filemaker go 1.2 · 2014-09-29 · qui travaillent sur le terrain. ......

28
1 Exposé technique sur FileMaker Go 1.2.1 Exposé technique sur FileMaker Go 1.2.1

Upload: hoangkhuong

Post on 11-Sep-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

1Exposé technique sur FileMaker Go 1.2.1

Exposé technique sur FileMaker Go 1.2.1

Exposé technique sur FileMaker Go 1.2.1 2

Exposé technique sur FileMaker Go 1.2.1

Mises à jour de versionVersion 1.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Version 1.1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Version 1.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

FileMaker Go

Système d'exploitation requis (exigences minimales)Hôtes (pris en charge) : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Réseau : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Fonctions prises en charge à ne pas manquerSaisie de données et validation des modifications apportées à un enregistrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Texte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Dates et heures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Objets de rubrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Objets de modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Rubriques Multimédia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Mode Recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Impression et Impression d’un PDF . . . . . . . . . . . . . . . . . . . . 8

Tri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Déclencheurs de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Calculs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Menus personnalisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Importation d'enregistrements . . . . . . . . . . . . . . . . . . . . . . 12

Exportation du contenu d'une rubrique . . . . . . . . . . . . . . . 13

Sauvegarde d'enregistrements au format PDF . . . . . . . . . . 13

Enregistrement d'une copie . . . . . . . . . . . . . . . . . . . . . . . . . 13

Schémas d'URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Actions de script, reconnaissance des fichiers d'exécution et autres changements subtils . . . . . . . . . . . . . . . . . . . . . . . 14

Exposé technique sur FileMaker Go 1.2.1 3

FileMaker Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Fonctionnalités non prise en chargeModification de schéma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Mode Modèle et modification de la structure . . . . . . . . . . 14

Impression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Création de graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Exportation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Plug-ins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Cocoa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Hébergement/partage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Fonctions Enregistrer et Envoyer en . . . . . . . . . . . . . . . . . . 15

Considérations sur les performancesRecommandations pour des performances optimales . . . 15

Optimisation d'une interface pour FileMaker Go . . . . . . . . 16

Iconographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Boutons de déconnexion . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

Rafraîchissement/traitement à la demande . . . . . . . . . . . . 18

Dimensionnement des éléments de modèle . . . . . . . . . . . 19

Dimensionnement auto. et rotations portrait/paysage . . . 21

Dimensions de l'écran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Gestion des fenêtres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Gestion du zoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Création de scripts pour un monde mobileStratégies de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Tests pour la plate-forme visée . . . . . . . . . . . . . . . . . . . . . . 22

Scripts SurTemporisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Utilisation des informations de localisation . . . . . . . . . . . . 23

Scripts qui s'exécutent à l'ouverture et à la fermeture d'une base de données FileMaker . . . . . . . . . . . . . . . . . . . . 24

Transactions de verrouillage d'enregistrements liés . . . . . 24

Mise en file d'attente côté serveur . . . . . . . . . . . . . . . . . . . . 24

Journalisation/marquage de scripts . . . . . . . . . . . . . . . . . . 25

Annexe A : Actions de script non prises en chargeCode d'erreur 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Code d'erreur 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Articles de la Knowledge Base . . . . . . . . . . . . . . . . . . . . . . . 27

Auteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Exposé technique sur FileMaker Go 1.2.1 4

Exposé technique sur FileMaker Go 1.2.1

Mises à jour de version

Version 1.2.1• Prise en charge de l’impression sur des imprimantes compatibles iOS

• Affichage et mise à jour automatique des graphiques lors de la modification des données

• Prise en charge de la saisie de signature par les rubriques Multimédia

• Possibilité d’envoyer un message à un autre utilisateur dans une solution hébergée lorsqu’un enregistrement est verrouillé

• Possibilité d’ouvrir les fichiers partagés indiqués comme étant masqués

• Prise en charge du chinois simplifié par l’application

• Performances améliorées des objets Web Viewer, des boutons de modèle et de la sortie du mode hibernation

Version 1.1.2• Prise en charge linguistique du français, de l'allemand, de l'espagnol et du japonais dans l'application

• Enregistrement de fichiers à un emplacement temporaire et écrasement de ces fichiers à l'aide de scripts

• Correction des problèmes de compatibilité avec les images et les rubriques Multimédia volumineuses

• Possibilité pour l'utilisateur de réactiver des solutions passées en mode hibernation en entrant le même nom d'utilisateur et le même mot de passe une seule fois pour les solutions composées de plusieurs fichiers

• Correction de problèmes de compatibilité générale

Version 1.1.1• Création d’un PDF et envoi de celui-ci à l’aide d’un processus scripté ou d’une commande de menu

• Création d’une copie de base de données à l’aide d’un processus scripté ou d’une commande de menu

• Exportation du contenu d’une rubrique à l’aide d’un processus scripté ou d’une commande de menu

• Possibilité d’utiliser les rubriques Multimédia pour stocker des photos provenant de la bibliothèque d’images de l’appareil ou prises par l’appareil photo intégré

• Transfert de données d’une application externe à FileMaker Go à l’aide d’un nouveau schéma d’URL

• Prise en charge des fichiers .USR, qui peuvent désormais être reconnus et ouverts dans FileMaker Go

• Changements peu importants concernant les scripts et l’hibernation. Consultez la section « Fonctions prises en charge à ne pas manquer », plus loin dans ce document

FileMaker GoFileMaker Go® est un client FileMaker® très complet conçu pour iOS. Il utilise le format de fichier FileMaker .fp7 et fonctionne en tant que client en interaction avec un hôte FileMaker (Pro ou Server) ou en tant que fichiers locaux stockés sur l'appareil. Il joue sensiblement le même rôle que FileMaker Pro.

L'expérience utilisateur avec une solution FileMaker sous FileMaker Go est comparable à une session Safari (navigateur Web) sous iOS avec du contenu Web en mode plein écran. L'utilisateur peut utiliser les gestes iOS tels que le pincement (pour zoomer) et le balayage (pour faire défiler l'écran) pour interagir avec une solution FileMaker Pro conçue pour un écran plus grand. A quelques exceptions près, qui seront présentées dans cet exposé technique, les solutions fonctionnent comme sous FileMaker Pro. Sans travail

5Exposé technique sur FileMaker Go 1.2.1

de développement supplémentaire, vos utilisateurs peuvent se connecter à leurs solutions existantes et y accéder à partir de leur iPad ou de leur iPhone. FileMaker Go permet aux utilisateurs de FileMaker Pro de créer des solutions mobiles personnalisées sans faire appel à un programmeur. Ils peuvent concevoir des applications en Objective C (langage natif de l'iPhone) ou des applications Web mobiles avec des outils tels que Java ou PHP.

La plupart des fonctionnalités sont opérationnelles, mais il existe néanmoins un certain nombre de limites, détaillées dans la section consacrée aux scripts. En fonction de l'application et de sa fréquence d'utilisation, certains développeurs peuvent décider d'adapter des modèles et fichiers de base de données spécifiques aux appareils mobiles. Ces modèles mobiles peuvent, par exemple, être optimisés pour les écrans de petite taille, ou simplement offrir des zones tactiles plus importantes. Quand FileMaker Go se connecte à des solutions FileMaker hébergées, il peut être utile d'avoir des interfaces mobiles pour les employés tels que les commerciaux qui travaillent sur le terrain. Ces interfaces mobiles peuvent, par exemple, les aider à vérifier rapidement et facilement l'état d'une commande, à entrer des dépenses, etc. sans avoir à procéder à une synchronisation ou à une nouvelle saisie par la suite.

FileMaker Go permet aux utilisateurs de travailler sur les fichiers locaux stockés sur leur appareil. Cet accès local est très intéressant pour les informations de référence rapide et pour toutes les informations qui n'ont pas besoin d'être partagées avec d'autres utilisateurs. Par exemple, si vous souhaitez emporter avec vous votre base de données de contacts à un endroit qui ne disposera pas d'un accès Web fiable, vous pouvez la copier sur votre appareil et l'utiliser pendant votre déplacement. La procédure à suivre pour charger et ouvrir des fichiers dans FileMaker Go est décrite de manière détaillée dans la documentation du produit :

Pour l'iPhone : http://www.filemaker.com/products/filemaker-go/for-iphone/help/1/fr/index.html

Pour l'iPad : http://www.filemaker.com/products/filemaker-go/for-ipad/help/1/fr/index.html

Cet exposé technique détaille les fonctions FileMaker Pro qui sont prises en charge dans FileMaker Go, celles qui ne le sont pas, et les meilleures pratiques à utiliser. L'un des principaux points à conserver à l'esprit est celui de la compatibilité. En tant que développeur, vous devez impérativement vous interroger sur la compatibilité avec le client pendant les phases de développement et de test. Vous devez également être attentif à toutes vos solutions hébergées, puisque les utilisateurs peuvent désormais travailler à la fois via FileMaker Pro installé sur un ordinateur de bureau et via FileMaker Go installé sur un appareil mobile, que vous ayez conçu votre solution pour les appareils mobiles ou non.

Si vous débutez sous FileMaker Go, nous vous recommandons de lire le Guide de développement de FileMaker Go, disponible à l'adresse : http://www.filemaker.fr/support/product/docs/filemaker-go/fmgo_development.pdf

Les captures d'écran et éléments d'interface utilisateur (graphismes, boutons, présentations de modèles, etc.) qui accompagnent cet exposé technique proviennent tous de la base de données « FileMaker Go Toolkit » créée par Soliant Consulting. Cette base de données (en anglais) peut être téléchargée gratuitement à l'adresse : http://www.soliantconsulting.com/gotoolkit/. Elle contient une série de ressources et d'exemples utiles pour développer des interfaces utilisateur FileMaker Go.

Système d'exploitation requis (exigences minimales)FileMaker Go est un client qui accède aux fichiers locaux stockés sur votre appareil mobile ou à des bases de données hébergées sous FileMaker Server ou FileMaker Pro.

• iPhone et iPod Touch : iOS 4.2.1 ou supérieur

• iPad : iOS 4.2.1 ou supérieur

Hôtes (pris en charge) :• FileMaker Server/Server Advanced 10 et 11

• FileMaker Pro/Pro Advanced 10 et 11

Réseau :Compatible avec les réseaux WiFi et 3G ; les réseaux Edge ne sont pas pris en charge.

FileMaker Go ne peut pas détecter les hôtes FileMaker Server accessibles via le protocole LDAP, ni afficher ou utiliser les certificats SSL des hôtes LDAP.

6Exposé technique sur FileMaker Go 1.2.1

Fonctions prises en charge à ne pas manquerSi vous avez l'habitude de développer pour FileMaker Pro, vous serez frappé par le fait que l'environnement de FileMaker Go ressemble trait pour trait à celui de FileMaker Pro. La plupart des fonctions de FileMaker Pro sont prises en charge. Il serait fastidieux de les énumérer toutes, et cela ferait double emploi avec la documentation du logiciel. FileMaker Go est un client très complet qui fonctionne sensiblement comme FileMaker Pro, hormis pour les fonctions de développement. Il ne comporte pas de mode Modèle ni d'outils de développement de bases de données. Vous pouvez travailler sur des bases de données mais vous ne pouvez pas en créer de nouvelles ni modifier le schéma des bases de données existantes. Vous connaissez peut-être Bento®, et vous avez peut-être aussi utilisé FileMaker Mobile il y a quelques années. Ils reposent tous deux sur un modèle de synchronisation limité permettant de partager des données. Cependant, contrairement à ces deux produits, FileMaker Go offre une connexion dynamique à FileMaker Server et aux bases de données qu'il héberge. Il offre aussi la possibilité de copier complètement des fichiers de base de données à partir et à destination de l'appareil iOS.

Cette section met l'accent sur les fonctions importantes de la plate-forme FileMaker et explique en quoi elles sont différentes sous FileMaker Go. Si vous avez besoin d'aide pour vous repérer au sein de l'interface de FileMaker Go, veuillez lire sa documentation à l'adresse :

Pour l'iPhone : http://www.filemaker.com/products/filemaker-go/for-iphone/help/1/fr/index.html

Pour l'iPad : http://www.filemaker.com/products/filemaker-go/for-ipad/help/1/fr/index.html

Saisie de données et validation des modifications apportées à un enregistrementComme sous FileMaker Pro, l'utilisateur peut entrer dans une rubrique en mode Utilisation, effectuer des modifications et les valider de telle sorte qu'elles se répercutent sur une base de données ouverte via une connexion réseau ou localement, sur l'appareil lui-même. Quand un enregistrement est validé, les déclencheurs de script de niveau enregistrement, les fonctions d'entrée automatique, la validation des rubriques et les mises à jour d'index fonctionnent exactement comme sous FileMaker Pro. Si vous touchez l'extérieur d'une rubrique sous FileMaker Go, cela revient au même que de cliquer à l'extérieur d'une rubrique sous FileMaker Pro.

Un utilisateur FileMaker Go qui tente de modifier un enregistrement verrouillé (en cours d’utilisation) par un autre utilisateur dans un environnement hébergé peut envoyer un message à celui-ci. Même si l’interface utilisateur est différente, les fonctionnalités et l’expérience utilisateur sont exactement les mêmes que dans FileMaker Pro.

TexteVous pouvez parfaitement saisir du texte dans une rubrique, mais la procédure diffère légèrement de celle de FileMaker Pro.

Quand vous sélectionnez du texte sous FileMaker Go (en touchant deux fois ce texte quand le clavier est présent), vous pouvez couper, copier et coller du texte, et même effectuer des corrections orthographiques à l'aide des contrôles de texte d'iOS. Notez que ce mécanisme est analogue aux commandes du menu Edition et aux fonctions de correction orthographique de FileMaker Pro.

Vous ne pouvez éditer qu'environ 64 000 caractères de texte. Dans le cas exceptionnel où une rubrique Texte contient plus de 64 000 caractères, le contrôle de texte iOS essaie de tronquer proprement le texte au niveau d'une césure à l'approche de la limite. Un message d'erreur apparaît si vous essayez de modifier ou sélectionner du texte dans une rubrique qui contient plus de 64 000 caractères. Le texte s'affiche correctement et il est lisible sous FileMaker Go, mais pour pouvoir modifier un texte de 64 000 caractères, il faut impérativement être sous FileMaker Pro.

FileMaker Go affiche correctement le texte riche stocké dans votre base de données FileMaker. Cependant, les formats suivants ne sont pas pris en charge par iOS : surligné, barré, condensé, étendu, petites majuscules, exposant et indice. Ces formats ne s'affichent pas mais ils restent stockés et s'affichent correctement dans FileMaker Pro.

Les formats suivants s'affichent parfaitement : gras, italique, souligné, majuscule, soulignement d'un mot et double souligné (apparaît comme du souligné ordinaire). FileMaker Go ne permet pas de manipuler les attributs du texte riche, de créer des styles de paragraphe mélangés au sein d'un même bloc de texte et de définir l'interligne. Si un utilisateur entre dans une rubrique qui présente des attributs de texte riche et effectue des modifications, FileMaker Go remplace tous les styles non pris en charge par les attributs par défaut de la rubrique. Cela signifie que tous les éléments de style et de paragraphe qui peuvent avoir été appliqués au texte dans FileMaker Pro sont perdus.

La fonction Compléter automatiquement n'est pas prise en charge sous FileMaker Go. Les rubriques Texte pour lesquelles l'option

Exposé technique sur FileMaker Go 1.2.1 7

Compléter auto. avec les valeurs existantes est activée fonctionne comme si cette option était désactivée. De la même manière, lors de la saisie de données, l'utilisateur ne peut pas insérer du texte en provenance d'un index sous FileMaker Go.

Les langues asiatiques sont prises en charge, mais les fonctions telles que Orientation transversale et Furigana ne le sont pas. Il n'est pas possible d'effectuer des entrées par l'intermédiaire d'un éditeur de méthode d'entrée (IME) dans les rubriques configurées avec des déclencheurs de script SurFrappeClavierObjet et SurFrappeClavierModele.

NombresContrairement à FileMaker Pro, FileMaker Go n'affiche pas de caractère « ? » pour les rubriques Nombre contenant plus de données qu'il ne peut en afficher. Il utilise au contraire le mécanisme de troncation d'iOS. Le résultat peut également s'afficher un peu différemment suivant la configuration de l'alignement. Si l'alignement est centré ou à droite, le premier caractère s'affiche, suivi de points de suspension. Par exemple, la valeur « 8050 » peut s'afficher sous la forme « 8… ». Si l'alignement est à gauche, les premiers caractères s'affichent et il n'y a pas forcément de points de suspension. Pour reprendre l'exemple précédent, la valeur « 8050 » peut s'afficher sous la forme « 805 » si elle est alignée à gauche. Il est donc important de prendre en considération ces aspects et leur impact sur les utilisateurs pour placer des rubriques Nombre sur un modèle.

Dates et heures Les dates et heures fonctionnent comme sous FileMaker Pro. Cependant, elles utilisent des contrôles iOS pour les entrées de données comme indiqué ci-dessous.

Le contrôle iOS d’horodatage, présenté ci-dessous, ne permet pas d'insérer des secondes (ni des fractions de seconde). Cependant, vous pouvez saisir des secondes dans une rubrique Heure ou Horodatage avant ou après avoir utilisé un contrôle iOS.

Il n'y a pas de moyen direct d'insérer la date, l'heure ou la valeur d'horodatage en cours à l'aide de raccourcis clavier ou de menus. Si vous souhaitez offrir une fonctionnalité de ce type, vous devez concevoir des scripts et, le cas échéant, les associer à des boutons placés sur vos modèles. En outre, vous pouvez ajouter des déclencheurs de script tels que SurEntreeObjet pour entrer les données désirées comme point de départ pour la saisie de données.

Objets de rubriqueTous les contrôles de rubrique, y compris les répétitions, les cases à cocher, les cercles d'option et les sélecteurs de valeurs de type iOS sont pris en charge.

8Exposé technique sur FileMaker Go 1.2.1

Les rubriques associées à une mise en forme de données ou à une mise en forme conditionnelle s'affichent de la même manière sous FileMaker Go que sous FileMaker Pro.

Pour supprimer ou effacer les valeurs de cercles d'option dans FileMaker Go, vous devez prévoir un bouton et/ou une méthode scriptée.

Objets de modèleLes contrôles onglet, les boutons, les tables externes et les objets Web Viewer sont tous pris en charge. Les modèles s'affichent quasiment de la même manière sur un iPad/iPhone que sous FileMaker Pro. La plupart des options de mise en forme d'objet, telles que la couleur de trait, l'épaisseur de trait, la mise en relief, l'effet d'empreinte et les ombres, sont prises en charge, tout comme les objets géométriques tels que les lignes, les rectangles, les rectangles arrondis et les cercles. Les motifs de remplissage sont l'exception : FileMaker Go les ignore.

Les infobulles ne sont pas prises en charge et elles ne s'affichent pas sous FileMaker Go. Dans une interface tactile, il n'y a pas d'état de survol pour les invoquer.

Rubriques MultimédiaLes rubriques Multimédia prennent en charge tous les formats d'image pris en charge par iOS : GIF, PNG, JPG et TIFF. D’autres formats de fichier, dont PDF, Word et Excel, peuvent également être stockés et affichés. Les formats audio et vidéo sont pris en charge. Il vous suffit d’appuyer dessus pour les exécuter. Si vous touchez une rubrique Multimédia vide, FileMaker Go vous permet d'y stocker une photo prise par l'appareil photo intégré ou stockée dans la bibliothèque d'images de l'iPhone ou de l'iPad ou encore d’y saisir une signature. Si la rubrique Multimédia contient des données, vous pouvez aussi choisir d'ouvrir son contenu ou de l'envoyer par email à l'aide du logiciel d'email local de l'appareil. Vous pouvez couper, copier et coller le contenu d'une rubrique Multimédia en la touchant, ce qui fait apparaître le clavier iOS, puis en la touchant de nouveau pour accéder au menu contextuel contenant les éléments de menu correspondants. Si vous avez copié précédemment une image dans le presse-papiers iOS, vous pouvez la coller dans une rubrique Multimédia à partir de ce menu. Vous pouvez également effectuer un copier-coller d'une rubrique Multimédia à une autre ou d'une rubrique Multimédia à un email, par exemple.

Lorsque la fonction de saisie de signature est activée, une fenêtre de saisie de signature s’ouvre dans laquelle l’utilisateur peut « dessiner » sur la surface tactile d’un appareil iOS. L’utilisateur peut appuyer sur le bouton Effacer pour effacer ce qui a été dessiné, sur le bouton Annuler pour quitter sans introduire de changement dans la rubrique Multimédia ou sur le bouton Accepter pour enregistrer la signature dans la rubrique Multimédia. Une image PNG est générée une fois la signature enregistrée.

REMARQUE : La fenêtre de saisie de signature prend exclusivement en charge le mode paysage. Cela s’applique également aux appareils verrouillés en mode portrait. Une fois la signature saisie, son fichier PNG peut être affiché puis envoyé par email à l’instar de n’importe quelle autre image stockée dans une rubrique Multimédia.

Mode RechercheLes opérations FileMaker Pro classiques sont prises en charge par le mode Recherche et par la recherche rapide. C'est notamment le cas des requêtes et des options restreindre/développer. Il n'y a pas de liste d'opérateurs disponible en mode Recherche, mais l'utilisateur peut entrer les opérateurs manuellement.

GraphiquesTous les types de graphiques pris en charge dans FileMaker Pro 11 le sont également dans FileMaker Go. Les graphiques affichés dans FileMaker Go sont dynamiques. Leur mise à jour intervient dès le moment où les données utilisées dans leur définition sont modifiées.

Impression et Impression d’un PDFFileMaker Go permet d’imprimer directement sur des imprimantes compatibles iOS. Les fonctionnalités d’impression de FileMaker Go sont similaires à celles de FileMaker Pro, même s’il existe quelques différences minimes. En effet, les options d’impression prises en charge par iOS sont différentes.

9Exposé technique sur FileMaker Go 1.2.1

Les fonctions suivantes sont prises en charge pour l’impression dans FileMaker Go. Néanmoins, leur configuration se fait au moyen de FileMaker Pro :

• Réduction de la taille et recadrage des objets de modèle

• Réduction de la taille des parties d’un modèle

• Masquage des objets de modèle

• Plusieurs colonnes

• Marges fixes

Les fonctions suivantes sont directement prises en charge depuis la zone de dialogue Imprimer de FileMaker Go :

• Impression d’une plage d’enregistrements

• Indication du numéro de page de départ

• Format du papier – si le format choisi n’est pas connu, le mode par défaut de l’imprimante s’affiche

• Orientation de la page

• Mise à l’échelle – choix prédéfinis et possibilité d’indiquer une valeur comprise entre 25 et 400 %

FileMaker Go prend également en charge l’impression directe au format PDF. La fonction Enregistrer au format PDF, introduite dans une version précédente de FileMaker Go, a été modifiée pour profiter de la nouvelle fonctionnalité Imprimer en PDF. Le document généré par la fonction Enregistrer au format PDF ressemble davantage à la version imprimée attendue et respecte les paramètres mentionnés ci-dessus.

Les options d’impression restent en mémoire pour chaque fichier et sont utilisées par défaut à chaque fois que l’utilisateur ouvre la boîte de dialogue d’impression pour ce fichier. Les paramètres d’impression sont stockés dans les paramètres par défaut de l’utilisateur et non dans le fichier lui-même. Il arrive parfois que certaines options d’impression ne soient pas spécifiées, ou encore qu’elles soient invalides ou manquantes. Cela est par exemple le cas si aucune imprimante par défaut n’est sélectionnée lors de la première ouverture de FileMaker Go.

Gardez à l’esprit les points suivants lorsque vous créez des scripts d’impression pour FileMaker Go.

• L’option Sans fenêtre n’est pas prise en charge dans FileMaker Go. Un script d’impression pour lequel l’option Sans fenêtre est cochée permet d’afficher les boîtes de dialogue Imprimer et Configuration de l’impression si cette option n’est pas cochée.

• L’action de script Configuration de l’impression ne fait apparaître aucune boîte de dialogue mais les paramètres qu’elle contient sont appliqués.

TriLes opérations de tri sont prises en charge, y compris les tris ascendants, descendants et en ordre personnalisé. Vous ne pouvez trier qu'en fonction des rubriques du modèle en cours. En revanche, vous pouvez utiliser les rubriques cachées pour disposer de plus d'options dans la fenêtre Modifier l'ordre de tri.

En vue Tableau, vous pouvez effectuer des tris en touchant les en-têtes de colonnes. La première fois que vous tapez l'écran, le tri est croissant. La deuxième fois, il est décroissant. La troisième fois, le tri est annulé.

SécuritéLa sécurité d'accès aux fichiers et l'accès aux fonctions et opérations au sein d'une base de données FileMaker Pro demeurent inchangés. FileMaker Go permet également d’ouvrir des fichiers qui ont été configurés pour ne pas s’afficher (masqués) dans la boîte de dialogue Ouvrir fichier distant. L’application autorise pour cela la saisie d’un chemin direct d’accès au fichier lorsque vous parcourez les listes de fichiers disponibles pour un hôte ou un serveur donné. Appuyez simplement sur Nom de fichier pour saisir le nom du fichier masqué. FileMaker Go accède automatiquement au chemin d’accès menant à l’hôte de sorte que seul le nom du fichier doit être saisi. Toutefois, FileMaker Go n’empêche pas l’utilisateur de modifier ce chemin et d’indiquer un fichier sur un hôte différent, si nécessaire.

REMARQUE : A des fins de lisibilité, le protocole fmnet n’apparaît pas dans l’interface utilisateur de FileMaker Go. Il est inutile d’inclure fmnet: lorsque vous ouvrez un fichier masqué.

10Exposé technique sur FileMaker Go 1.2.1

FileMaker Go prend en charge le privilège étendu « fmrestorelogin». Pour tirer parti de ce privilège étendu, vous devez créer un nouveau privilège étendu avec le mot de passe spécifique « fmrestorelogin » (sans les guillemets).

Par défaut, FileMaker Go n'enregistre pas le nom d'utilisateur et le mot de passe d'un fichier interrompu. Lors de l'ouverture de session suivante, FileMaker Go demande à l'utilisateur d'entrer ses informations d'authentification et il essaie de rétablir la session précédente de l'utilisateur, excepté dans les cas suivants :

• L'utilisateur en cours est connecté à l'aide d'un compte Invité. FileMaker Go laisse l'utilisateur se reconnecter immédiatement en tant qu'invité.

• L’utilisateur actuel est connecté à une base de données FileMaker dans laquelle la connexion automatique au fichier a été activée dans les Options de fichier.

• L'utilisateur est connecté à l'aide d'un compte associé au privilège étendu « fmrestorelogin ». Ce privilège permet à l'utilisateur de reprendre une session FileMaker Go sans être arrêté par une boîte de dialogue d'authentification. Dans pareil cas, il peut être prudent de recommander à tous les utilisateurs de verrouiller leur appareil à l'aide de la fonction de code de sécurité d'iOS.

Le privilège étendu « fmrestorelogin» fonctionne avec le paramètre Restauration auto. de la connexion (écran Accueil > menu Paramètres) de FileMaker Go. Si cette option est désactivée, l'utilisateur doit toujours entrer ses informations d'authentification.

Si FileMaker Go s'est fermé parce que l'utilisateur a appuyé sur le bouton principal ou a répondu à un appel entrant, les solutions multifichier ne demandent plus à l'utilisateur d'entrer ses informations d'authentification pour chaque fichier quand il se « réveille ». FileMaker Go v1.1.2 ne demande ces informations que pour ouvrir le premier fichier. Dès lors que les autres fichiers de la solution contiennent le même compte et le même mot de passe, aucune demande d'informations d'authentification ne s'affiche.

Le client FileMaker Go doit honorer tous les paramètres de sécurité existants d'une solution. Cela signifie que toute personne autorisée à accéder à une base de données FileMaker Pro est autorisée de la même manière à accéder à la même base de données, avec exactement les mêmes privilèges, sous FileMaker Go.

ScriptsComme FileMaker Pro, FileMaker Go permet d'utiliser des scripts et ils fonctionnent de la même manière. Comme pour la Publication Web, certaines actions de script ne sont pas prises en charge, et quelques explications sur l'utilisation des scripts sont nécessaires. Vous les trouverez dans les sections « Fonctionnalités non prises en charge » et « Création de scripts pour un monde mobile » ci-dessous. FileMaker Go ne permet pas de modifier un script, et il n'intègre pas non plus de Script Debugger.

Soulignons dès à présent une différence de fonctionnement majeure. Quand un script fonctionne sous FileMaker Go et est configuré pour autoriser l'utilisateur à annuler son exécution, le fait de toucher l'écran fait apparaître une boîte de dialogue d'annulation. Sous FileMaker Pro, le seul moyen d'interrompre un script consiste à appuyer sur la touche Echap ou à utiliser la combinaison de touches Commande + point (Mac). Etant donné que le risque que l'utilisateur touche l'écran est très important – surtout s'il ne se rend pas compte que le script n'a pas fini de s'exécuter –, le développeur aura plus tendance à désactiver les annulations de l'utilisateur (à l'aide de l'action de script Autor. annulation utilisateur [Non] que sous FileMaker Pro.

En environnement mobile, les développeurs doivent intégrer une autre réalité importante : un script peut être annulé à tout moment, quel que soit l'état de l'action de script Autor. annulation utilisateur, et même s'il s'agit d'opérations FileMaker ordinaires. Quand l'utilisateur active l'écran d'accueil (en appuyant sur le bouton principal) ou reçoit un appel entrant sur son iPhone (ce qui ferme FileMaker Go), tous les scripts qui s'exécutent sont annulés sans avertissement.

Il y a un troisième cas où les scripts risquent de ne pas fonctionner comme prévu : quand FileMaker Go rencontre une action de script non prise en charge. FileMaker Go peut réagir de deux manières. Certaines actions de script sont relativement mineures. Dans ce cas, FileMaker Go les passe ou les ignore, et le script s'exécute jusqu'à son terme. Vous pouvez détecter les omissions de ce type à l'aide de Obtenir (DernièreErreur).

Pour les actions de script qui risquent d'endommager votre base de données (par exemple, Exporter enregistrements), FileMaker Go affiche une alerte sur l'écran de l'utilisateur, et si Autor. annulation utilisateur est paramétré sur Oui, l'utilisateur peut choisir de poursuivre l'exécution du script ou de l'annuler. Si Autor. annulation utilisateur est paramétré sur Non, FileMaker Go continue d'exécuter le script après avoir ignoré l'action de script qui pose problème. Il est important que le développeur teste sa base de données et consulte ses rapports sur la structure de la base de données pour connaître les actions de script qui ne fonctionnent pas sous FileMaker Go.

Vous trouverez d'autres explications sur l'approche à utiliser pour créer des scripts pour FileMaker Go plus loin dans cet exposé technique.

11Exposé technique sur FileMaker Go 1.2.1

Signalons un certain nombre de différences de fonctionnement concernant les scripts (extrait du Guide du développeur) :

• Envoyer courrier ne prend pas en charge la fonction Sans fenêtre. L'email s'affiche sur l'appareil et vous pouvez l'envoyer manuellement. Cette remarque ne s'applique pas aux emails envoyés via le protocole SMTP.

• Un script qui utilise Remplacer contenu rubrique ne peut pas inviter un utilisateur de FileMaker Go à indiquer la rubrique et les données à remplacer. Une action de script Remplacer contenu rubrique avec l'option Sans fenêtre désélectionnée ne peut pas s'exécuter.

• Les actions de script Sélectionner tout et Définir sélection ne sélectionnent pas le texte si le clavier est masqué sur l'appareil.

• L'action de script Ouvrir URL associée à une URL Google Maps ouvre un navigateur, et il suffit ensuite de choisir Ouvrir dans Safari pour ouvrir l'application Maps.

• Si un script contient une commande Masquer la fenêtre, FileMaker Go ne masque pas la fenêtre mais modifie l'ordre des fenêtres ouvertes affichées.

• Quand vous faites passer FileMaker Go en veille prolongée, les scripts en cours d'exécution sont annulés. Si Autor. annulation utilisateur est activé, vous pouvez retourner à l'état précédent au moment de relancer FileMaker Go. Si Autor. annulation utilisateur est désactivé, FileMaker Go se ferme au lieu de passer en veille prolongée.

Déclencheur de scriptLes déclencheurs de script, y compris SurTemporisation, fonctionnent sous FileMaker Go dès lors qu'ils utilisent des actions de script prises en charge. Vous trouverez un exemple dans la section « Création de scripts pour un monde mobile » ci-dessous.

CalculsLe moteur de calcul est pleinement disponible sous FileMaker Go, les modules étant la seule exception. Les fonctions personnalisées sont également prises en charge, y compris les fonctions récursives, avec les mêmes limites de pile que sous FileMaker Pro. Les appareils mobiles n'ont pas la même puissance de calcul que les ordinateurs de bureau. Aussi est-il important de prendre en considération cet aspect pour créer des formules utilisant des données liées. En outre, les calculs non stockés doivent également être utilisés avec parcimonie. Nous reviendrons sur ce point dans le détail dans la section consacrée aux performances. Des changements importants sont à signaler pour les fonctions suivantes :

• Obtenir(PlateformeSystème) renvoie 3 sur un appareil mobile.

• Obtenir(VersionApplication) renvoie « Go 1.x.x » sur un iPhone et un iPod Touch et « Go_iPad 1.x.x » sur un iPad.

• Etant donné qu'il n'y a rien sur quoi appuyer, Obtenir (TouchesSpécialesDéclencheur) et Obtenir(TouchesSpécialesActives)ne renvoient pas les informations attendues à propos des touches modificatrices.

• Obtenir(HauteurContenuFenêtre) et Obtenir(LargeurContenuFenêtre) sont les deux seules fonctions de fenêtre qui changent avec la rotation de l'appareil.

Menus personnalisésLes menus personnalisés sont pris en charge de manière limitée par FileMaker Go, pour la simple raison que de nombreux menus FileMaker Pro ne sont pas disponibles ou applicables sous FileMaker Go. Vous pouvez modifier et remplacer les éléments de menu suivants affichés dans l'interface :

• Dans le menu en mode Utilisation :

{ Afficher tous les enregistrements

{ Afficher enreg. ignorés

{ Ignorer enregistrements...

{ Trier enregistrements...

{ Mode Recherche

Exposé technique sur FileMaker Go 1.2.1 12

• Dans le menu en mode Recherche :

{ Afficher tous les enregistrements

{ Afficher enreg. ignorés

{ Restreindre ensemble trouvé

{ Développer ensemble trouvé

{ Exécuter la requête

{ Quitter le mode Recherche

• Dans le menu en mode Recherche :

{ Nouvelle requête

{ Dupliquer la requête

{ Supprimer la requête

{ Rétablir la requête…

• Dans le menu  :

{ Nouvel enregistrement

{ Dupliquer l'enregistrement

{ Supprimer l'enregistrement...

{ Supprimer les enreg. trouvés...

{ Rétablir l'enregistrement…

• Dans la boîte de dialogue du menu Outils :

{ Rafraîchir fenêtre

{ Enregistrer/Envoyer

{ Format affichage

{ Imprimer (y compris les PDF)

Vous ne pouvez pas remplacer l'élément de menu Recherche rapide, Enregistrer ou Quitter l’enregistrement. Vous ne pouvez pas non plus ajouter des menus personnalisés à vos bases de données, ni supprimer des menus ou des éléments de menu. Les éléments de menu qui ne sont pas inclus dans vos menus personnalisés continuent d'apparaître, mais ils sont grisés. Enfin, vous ne pouvez pas utiliser le caractère & (esperluette) dans les noms de menus personnalisés.

Importation d'enregistrementsL'importation d'enregistrements est prise en charge dans un processus scripté quand l'action de script Importer enregistrements est utilisée pour effectuer une importation à partir d'un autre fichier FileMaker. Avec l'action de script Importer enregistrements, vous pouvez :

• Importer des enregistrements d'un fichier hébergé (sous FileMaker Server ou partagé en mode point à point avec FileMaker Pro et FileMaker Pro Advanced) à une base de données locale. FileMaker Go ne permet pas d'effectuer directement une importation à partir d'une source ODBC, mais vous pouvez utiliser ESS pour importer des données à partir d'une telle source

• Importer des enregistrements stockés dans une base de données locale dans un fichier hébergé.

• Importer des enregistrements d'un fichier hébergé à un autre fichier hébergé.

13Exposé technique sur FileMaker Go 1.2.1

• Importer des enregistrements d'une base de données locale à une autre base de données locale.

• Importer des enregistrements entre des tables d'un même fichier (local ou hébergé).

Remarque importante : La correspondance des rubriques et leur ordre d'importation doivent être établis avant l'importation des enregistrements sous FileMaker Go. Il n'est pas possible de créer une nouvelle table pendant une importation. Pour plus d'informations, consultez le Guide de développement de FileMaker Go.

Exportation du contenu d'une rubriqueVous pouvez exporter le contenu d'une rubrique à l'aide d'un processus scripté ou en cliquant sur le menu Outils dans l'angle supérieur droit de l'application. Notez que l'exportation de plusieurs enregistrements n'est pas prise en charge : FileMaker Go n'exporte que le contenu d'une rubrique de l'enregistrement (unique) en cours. Le contenu ainsi obtenu peut être envoyé par email, affiché ou enregistré. S'il est enregistré, il devient disponible dans la liste Fichiers locaux.

Imaginons le cas d'une rubrique Texte qui contient une grande quantité de texte. Un utilisateur peut exporter le contenu et l'envoyer par email à un collègue en quelques étapes très simples ou à l'aide d'un processus scripté.

Sauvegarde d'enregistrements au format PDFL'action de script Sauvegarder en PDF est prise en charge sous forme de processus scripté ou en cliquant sur le menu Outils. A l’instar de l’option Exporter le contenu de la rubrique, le fichier obtenu peut être envoyé par email et il est disponible sous FileMaker Go dans la liste Fichiers locaux accessible via le menu Fenêtre > Navigateur fichiers. Il est important de noter que bien que cette fonction soit disponible, certaines options d'action de script de FileMaker Pro ne sont pas prises en charge. Ainsi, il n'est pas possible de :

• ajouter des enregistrements à un PDF existant ;

• sélectionner la version d'Acrobat ;

• sélectionner les options Impression et Edition de l'onglet Sécurité ;

• désélectionner l'option qui permet d'utiliser un logiciel de lecture à l'écran ;

• utiliser les options de l'onglet Affichage initial.

Cette fonction a été mise à jour à partir des versions précédentes de FileMaker Go, l’objectif étant d’obtenir un fonctionnement ressemblant davantage à l’option d’impression au format PDF de FileMaker Pro. Les fonctions FileMaker Pro qui n’étaient auparavant pas prises en charge, comme le fait de faire glisser et de masquer des objets au moment de l’impression le sont désormais lorsque vous créez des PDF à l’aide de FileMaker Go.

Enregistrement d'une copieFileMaker Go peut enregistrer une copie d’une base de données locale sur l’appareil. L'enregistrement d'un fichier sous forme de copie compactée ou de clone est possible avec l'action de script Enregistrer une copie mais pas avec l'élément de menu. Le fichier obtenu peut être ouvert et utilisé sous FileMaker Go, envoyé par email ou enregistré sur l'appareil, sur lequel il apparaît dans la liste Fichiers locaux. Cette fonction peut être utile pour partager des fichiers entre plusieurs utilisateurs FileMaker Go ou pour stocker une sauvegarde d'un fichier. Imaginez la situation suivante : vous travaillez à distance sur une base de données locale et vous recevez une demande d'accès à votre fichier local de votre bureau. Cette fonction vous permet de créer une copie de cette base de données locale pour les personnes ayant besoin d'y accéder et d'envoyer cette copie par email. Il est important de noter qu'une copie d'un fichier local n'est en aucun cas liée au fichier original. Les données entrées par la suite dans l'original n'apparaissent pas dans les copies de ce fichier.

Schémas d'URL La plupart des développeurs FileMaker connaissent le schéma d'URL fmp7://<hôte>/<nomfichier>, qui permet d'ouvrir une base de données à partir d'un lien cliquable. Ce protocole d'URL a été étendu pour prendre en charge les noms de scripts et les paramètres. La syntaxe de ce nouveau schéma d'URL est :

FMP7Script://<hôte>/<fichier>?script=<nomscript>[&param=<paramètre>][&<$name>=<valeur>]

Ce protocole URL permet à FileMaker Go de communiquer avec d’autres applications iOS. Par exemple, imaginez que vous ayez

Exposé technique sur FileMaker Go 1.2.1 14

sur votre appareil mobile une application qui scanne les codes-barres. En utilisant ce schéma d'URL à partir de FileMaker Go, vous pouvez lancer l'application externe de scan de codes-barres, scanner un article et retransmettre les données du code-barres à FileMaker Go, sous lequel elles pourront être utilisées pour rechercher des informations sur le produit.

Actions de script, reconnaissance des fichiers d'exécution et autres changements subtilsL'action de script Ouvrir Préférences ouvre désormais l'écran Paramètres de FileMaker Go (également accessible en touchant le menu Outils > Paramètres), qui permet à l'utilisateur de définir ses préférences pour des paramètres tels que l'affichage de la barre d'état et les options Correction auto. et Restauration auto. de la connexion.

Sous FileMaker Go, l'attribut de rubrique de modèle « Passer à l'objet suivant avec » fonctionne désormais comme prévu quand l'utilisateur appuie sur la touche Tab ou Retour. Les attributs de rubrique de ce type peuvent être spécifiés en utilisant l'Inspecteur (FileMaker Pro 11) ou le menu Format > Rubrique/Contrôle > Mode de saisie… (FileMaker Pro 10 et versions précédentes). Signalons que comme le clavier iOS ne propose pas de touche Entrée, cette touche ne s'applique pas sous FileMaker Go.

Le message d'erreur « Enregistrement modifié alors que vous étiez déconnecté » a été légèrement modifié. Le message d'erreur « Impossible d'enregistrer les modifications car l'enregistrement a été modifié par un autre utilisateur alors que vous étiez déconnecté. » est désormais associé à un bouton d'annulation qui permet à l'utilisateur de savoir ce qu'il doit faire pour sortir de cet état.

FileMaker Go reconnaît désormais les fichiers portant une extension .USR. Ainsi, les solutions d'exécution peuvent être reconnues et ouvertes automatiquement. Une nouvelle icône de fichier est désormais associée aux fichiers .USR. (Cette icône ressemble à l'icône de document FileMaker sur les ordinateurs Macintosh et Windows.)

FileMaker ServerFileMaker Go peut accéder aux sources ESS (External SQL Sources) dans les bases de données hébergées sous FileMaker Server ou partagées via FileMaker Pro, grâce à la technologie ESS. La technologie ESS est prise en charge comme sous FileMaker Pro avec le pilote ODBC du serveur FileMaker Server ou de l'ordinateur de bureau FileMaker Pro. Les bases de données stockées sur l'appareil mobile ne peuvent pas accéder directement à des sources SQL car il n'existe pas de pilote ODBC pour les appareils iOS actuellement.

Sous FileMaker Server, « Go 1.x.x » ou « Go_iPad 1.x.x » apparaît dans l'Admin Console.

Il n'y a pas de compte à rebours dans les messages « Demande de fermeture » de l'hôte de la base de données. L'utilisateur est invité à fermer le fichier et, s'il ne répond pas dans les 30 secondes, FileMaker Go ferme le fichier.

IPv6 n'est pas pris en charge par iOS.

Fonctionnalités non prises en charge

Modification de schémaLe développeur ne peut pas accéder aux options de menu de gestion, y compris à la boîte de dialogue Gérer la boîte de dialogue. Tout le développement concernant les bases de données FileMaker Go doit être effectué sous FileMaker Pro ou FileMaker Pro Advanced. Cela vaut pour la modification des tables, des rubriques, des permissions de sécurité et des relations.

Mode Modèle et modification de la structureFileMaker Go n'a pas de mode Modèle. Par conséquent, le développeur ne peut pas modifier les modèles ni leurs paramètres. De la même manière, il n'y a pas de fonctions de modification pour les scripts, les menus personnalisés, les fonctions personnalisées, etc. Vous pouvez modifier une liste de valeurs contenant des valeurs personnalisées dès lors que l'option « Autoriser la modification de la liste de valeurs » est sélectionnée lorsque vous appliquez le style de contrôle de rubrique. Vous ne pouvez pas modifier d'autres types de listes de valeurs.

15Exposé technique sur FileMaker Go 1.2.1

Notez que de ce fait, vous ne pouvez pas non plus accéder aux modèles qui n'apparaissent pas dans le menu Modèle. Pour accéder à ces modèles sous FileMaker Go, vous devez utiliser des scripts ou des boutons de navigation.

ImpressionL'iPhone et l'iPad ne prennent pas en charge l'impression. Il n'y a pas de mode Prévisualisation sous FileMaker Go. Par conséquent, la pratique habituelle consistant à conduire l'utilisateur à un modèle de rapport, à le faire basculer en mode Prévisualisation, à faire une pause, puis à revenir au modèle original doit être adaptée pour FileMaker Go. Avec l'arrivée des éléments sous-récapitulatifs dynamiques, l'utilisateur ne devrait plus avoir besoin de basculer en mode Prévisualisation.

Création de graphiquesLes graphiques FileMaker ne sont pas pris en charge sous FileMaker Go actuellement. Comme sous FileMaker Pro avant la version 11, les objets graphiques apparaissent sous forme de zones vierges dans les modèles.

ExportationFileMaker Go ne prend pas en charge les exportations d'enregistrements. Seul le contenu des rubriques peut être exporté.

Plug-insLes plug-ins ne sont pas pris en charge.

CocoaFileMaker Go n'offre pas d'accès à l'environnement de programmation natif destiné à l'iPad et à l’iPhone. Les éléments des bibliothèques Objective C et Cocoa des applications natives ne sont donc pas disponibles pour le développeur.

Hébergement/partageFileMaker Go n'offre aucune fonction de partage ou d'hébergement. Si un fichier est local sur un appareil iOS, un seul utilisateur est pris en charge.

Fonctions Enregistrer/Envoyer enLes fonctions Enregistrer/Envoyer en Excel et Lien snapshot ne sont pas prises en charge.

Considérations sur les performancesComme pour FileMaker Pro, le développeur doit prendre en considération la vitesse du réseau et la vitesse opérationnelle pour concevoir des bases de données pour FileMaker Go. Lors des tests que nous avons réalisés, nous avons eu peu de surprises. Sous FileMaker Go, les performances dépendent essentiellement de la connexion réseau. La validation et la création d'enregistrements sur un réseau 3G peuvent prendre plus de temps que prévu, et les routines de sous-récapitulatifs ou de tri peuvent poser des problèmes. En règle générale, les opérations qui impliquent plusieurs enregistrements ou les touches spéciales qui contrôlent des relations doivent être vérifiées et testées soigneusement du point de vue de leurs performances.

Recommandations pour des performances optimalesEvitez les scripts qui font des boucles très longues, surtout s'ils servent à ouvrir et à valider des enregistrements. Si vous avez besoin de travailler sur des blocs de données volumineux, vous pouvez examiner les stratégies présentées dans la section suivante consacrée aux scripts, ou choisir d'exécuter les routines qui risquent d'être trop lentes sur un appareil mobile sous FileMaker Pro, ou sous forme de script programmé sous FileMaker Server.

Exposé technique sur FileMaker Go 1.2.1 16

Méfiez-vous des rapports sous-récapitulatifs et évitez les jeux d'enregistrements trouvés volumineux. Un affichage sous forme de liste avec un jeu d'enregistrements trouvés volumineux et un ou plusieurs éléments sous-récapitulatifs peut obliger l'utilisateur à attendre pendant que les enregistrements sont triés et récapitulés. Vous pouvez envisager de simplifier la structure de la liste en supprimant des éléments sous-récapitulatifs ou en utilisant d'autres moyens, comme les déclencheurs de script ou les éléments de navigation, pour réduire la taille du jeu d'enregistrements trouvés.

Compressez au maximum les images ou graphismes de vos modèles.

Utilisez les tris de tables externes et les tris de liens judicieusement. Sur un réseau local, les tris de tables externes peuvent fonctionner correctement, mais si vous utilisez FileMaker Pro et FileMaker Go sur un WAN, les tris de tables externes risquent d'allonger la génération du rendu des modèles.

Lors des tests de performances que nous avons réalisés, un MacBook Pro connecté à un WAN en WiFi fonctionnait sensiblement de la même manière que FileMaker Go sur un iPhone ou un iPad. Abstraction faite de la baisse de bande passante que l'on constate habituellement quand on se connecte en 3G, les appareils mobiles n'ont fait apparaître des lenteurs que pour les opérations nécessitant de la puissance locale. Il a été intéressant de noter que pour certaines opérations lourdes, toute la charge de travail effective était transférée au serveur. Par exemple, l'un de nos tests, consistant à effectuer une recherche sur une rubrique non mémorisée au sein de 350 000 enregistrements, a donné des résultats quasiment identiques sur un Mac Pro à deux processeurs quadricœurs relié à un réseau local, sur un MacBook Pro connecté à un WAN, et sur les deux appareils mobiles connectés à un WAN. En revanche, une fonction récursive délibérément mal conçue, et affichée dans une rubrique Calcul sur une liste de 300 enregistrements, a atteint sa limite de récursion en moins d'une seconde sur le Mac Pro relié à un réseau local, en moins de 10 secondes sur le MacBook Pro relié à un WAN, et en plus de dix minutes sur l'iPhone et l'iPad. Cela étant, méfiez-vous des tâches gourmandes en ressources processeur. Lors des mêmes tests, les performances se sont dégradées considérablement sur le réseau 3G.

Profitez de ce qu'il y a moins de place sur l'écran pour supprimer certains éléments de vos modèles. Analysez soigneusement les besoins de vos modèles en matière de calculs non mémorisés et de rubriques liées, et faites les bons choix pour les rubriques récapitulatives. Toutes ces considérations sont valables tant pour les solutions déployées pour FileMaker Go que pour celles déployées pour FileMaker Pro sur un WAN. Nous n'irons pas plus loin concernant l'optimisation des solutions pour WAN. Rappelez-vous simplement que tous ces points sont importants.

Optimisation d'une interface pour FileMaker GoIl est très facile d'ouvrir une base de données FileMaker Pro existante dans FileMaker Go, mais l'écran réduit et l'interface tactile de l'iPhone et de l'iPad vous conduiront sans doute à chercher à optimiser vos modèles et vos procédures pour iOS.

De la même manière qu'il doit prendre en considération les différences subtiles entre Mac OS et Windows pour le rendu du texte et des objets, le développeur doit veiller à prévoir suffisamment de place pour les polices et les objets sous iOS. L'interface est soumise à une certaine forme de mise à l'échelle, et vous devez aussi tester l'apparence de vos modèles sous iOS comme vous le feriez pour une plate-forme de bureau. C'est particulièrement vrai pour FileMaker Go, dans la mesure où les zooms sur les modèles se font par incréments entiers simples. Par exemple, votre écran peut être réduit à 64 % pour tenir sur un écran d'appareil mobile. De ce fait, les objets et les éléments risquent de ne pas s'aligner aussi parfaitement que sous FileMaker Pro avec un niveau de zoom de 100 % et une résolution de 72 ppp. Nos tests ont fait apparaître des petites différences d'ordre esthétique. Par exemple, vous pouvez voir apparaître sur votre iPhone une fine ligne entre les lignes des affichages sous forme de liste, selon la hauteur en pixels de ces lignes de liste, alors que cette ligne est invisible sous FileMaker Pro installé sur un ordinateur de bureau. Une fois encore, il est important de tester vos solutions pour toutes les plates-formes que vous visez.

FileMaker Go prend en charge certains gestes, tels que le double-toucher pour zoomer, ou le pincement et le balayage pour se déplacer au sein d'un écran en mode zoom. Puisqu'il fallait aussi assurer la compatibilité de FileMaker Go avec les bases de données FileMaker Pro existantes, les nouvelles fonctions reposant sur les gestes n'ont été utilisées qu'avec modération. L'une des grandes forces des logiciels FileMaker a toujours été leur fidélité à l'approche multi-plateforme. Avec le lancement de FileMaker Go, les développeurs expérimentés doivent se familiariser avec les subtilités de la nouvelle plateforme, mais FileMaker gère la plupart des différences automatiquement. Aussi les développeurs n'ont-ils pas accès à certains gestes de l'interface tactile disponibles sous iOS.

Nous vous recommandons de lire les Human Interface Guidelines (lignes directrices relatives à l'interface humaine) d'Apple pour iOS. Nombre d'entre elles ne s'appliquent pas spécifiquement à FileMaker Go, mais il est néanmoins utile au développeur de les avoir à l'esprit pour mûrir sa réflexion. Vous pouvez les consulter ici (en anglais):

Pour l'iPhone : http://developer.apple.com/iphone/library/documentation/userexperience/conceptual/mobilehig/

Exposé technique sur FileMaker Go 1.2.1 17

Pour l'iPad : http://developer.apple.com/library/ios/#documentation/General/Conceptual/iPadHIG/index.html

Pour les applications Web : http://developer.apple.com/safari/library/documentation/InternetWeb/Conceptual/iPhoneWebAppHIG/

IconographieIl n'existe pas de restrictions particulières pour les bases de données utilisées sous FileMaker Go, mais un certain nombre de normes s'appliquent. Certaines sont formelles – elles résultent des pratiques et recommandations d'Apple. D'autres sont informelles mais sont bel et bien utilisées sur la plate-forme iOS.

Par exemple, il est d'usage d'utiliser une icône plus (« + ») pour suggérer l'ajout de quelque chose à une base de données ou pour afficher un mécanisme de sélection. L'icône « > », souvent entourée d'un cercle, signale l'affichage d'une vue détaillée. La corbeille, utilisée de longue date par les développeurs FileMaker, indique généralement une suppression, tout comme un cercle barré par un signe divisé ou une icône « x ». Une paire de jumelles désigne généralement une fonction de recherche, et une flèche arrondie pointant vers le haut désigne généralement l'envoi de données à quelqu'un d'autre ou à quelque chose d'autre.

Le tableau 10-1 des lignes directrices relatives à l'interface humaine (Human Interface Guidelines) rédigées pour l'iPhone présente un certain nombre de boutons standard que la plate-forme iPhone propose pour les barres d'outils et les barres de navigation.

Si ces icônes ont l'avantage d'être familières aux utilisateurs d'iPhone et d'iPad, il peut être risqué de créer une copie trop littérale de l'interface d'IOS. FileMaker Go fonctionne différemment des applications natives, et il est important que les utilisateurs se rappellent qu'ils travaillent toujours sur des bases de données connectées au sein du paradigme FileMaker. De la même

18Exposé technique sur FileMaker Go 1.2.1

manière, les utilisateurs de FileMaker Pro risquent d'être réticents à utiliser sur leur ordinateur de bureau une interface conçue exclusivement pour des appareils iOS. Par conséquent, il vaut mieux se baser sur les attentes des utilisateurs et créer des interfaces qui soient intuitives et ressemblent à celles des applications qu'ils connaissent déjà.

Boutons de déconnexionDurant les tests que nous avons réalisés sous FileMaker Go, il est apparu que seuls les utilisateurs les plus disciplinés pensaient à fermer tous les fichiers ouverts avant d'appuyer sur le bouton principal et de fermer FileMaker Go. Lorsqu'ils n'ont plus besoin de FileMaker Go, la plupart des utilisateurs appuient immédiatement sur le bouton principal de l'appareil, sans y réfléchir à deux fois. Si votre base de données nécessite une fermeture dans les règles de l'art, vous ne pouvez pas forcer les utilisateurs à agir différemment mais vous pouvez envisager de disposer un gros bouton Déconnecter ou Quitter en haut de vos écrans d'interface, en espérant que les utilisateurs prennent l'habitude de s'en servir.

Rafraîchissement/traitement à la demandePour les utilisateurs mobiles, il semble généralement naturel de toucher une icône de rafraîchissement pour actualiser les données provenant d'un serveur. Cette icône de rafraîchissement est en effet très répandue dans le monde des applications mobiles connectées et des applications mobiles Web. Elle ouvre de nouvelles possibilités au développeur FileMaker. Alors que beaucoup d'utilisateurs de FileMaker Pro, surtout ceux qui ont l'habitude de travailler en réseau local, ne s'attendent pas à trouver des fonctions de rafraîchissement, les utilisateurs mobiles accueillent ces fonctions d'autant plus volontiers qu'ils peuvent en bénéficier directement. Ainsi, ils peuvent déterminer à quel moment ils sont en mesure d'attendre que les processus gourmands en données et en performances s'exécutent et demander ces données de manière explicite.

Prenons par exemple le cas d'une base de données qui affiche une liste de notes de frais d'employés et un sous-total. Avec un affichage standard sous forme de liste sous-récapitulative, FileMaker Go devrait régénérer la liste et recalculer les totaux chaque fois que l'utilisateur afficherait ce modèle. Or, cette approche peut allonger le temps de traitement pour les utilisateurs mobiles ou pour ceux qui sont connectés à un WAN.

Etant donné que la pratique consistant à rafraîchir les données sur un appareil mobile est plus répandue chez les utilisateurs mobiles que chez les utilisateurs de FileMaker Pro, le développeur peut créer un affichage sous forme de liste qui n'utilise pas la fonctionnalité sous-récapitulative dynamique mais repose sur des totaux mémorisés, puis met à jour ces totaux quand l'utilisateur demande explicitement de nouvelles données. Notez les contrôles ajoutés en haut de cet exemple pour grouper les données et afficher les totaux.

Exposé technique sur FileMaker Go 1.2.1 19

L’adoption des mécanismes de ce genre dépend étroitement de l’approche que le développeur a de sa base de données, mais aussi des attentes de ses utilisateurs. Il s’agit là d’un exemple parmi tant d’autres, visant à montrer comment un développeur peut envisager d’ajuster une interface pour résoudre les problèmes de performances et de différences d’expérience avec les appareils mobiles. On peut également dire que cette pratique peut profiter à l’ensemble des utilisateurs de FileMaker Pro connectés à un WAN.

Dimensionnement des éléments de modèle

Sur l'iPad et l'iPhone, le dispositif de pointage – un doigt humain – est moins précis que le pointeur d'une souris. De ce fait, vous pouvez ajuster la taille de vos objets de modèle, y compris les boutons et la hauteur des rubriques, ainsi que la hauteur des lignes pour les affichages sous forme de listes et les tables externes.

Dans ses Human Interface Guidelines (lignes directrices concernant pour l'interface humaine) pour l'iPhone, Apple recommande d'utiliser des polices entre « 17 pixels et 22 pixels ». Du point de vue de FileMaker, avec la police Helvetica sous Mac OS X, la dimension verticale en pixels de la police est généralement supérieure de deux unités à celle de la taille en points. Sur la capture d'écran ci-contre, vous pouvez voir à l'arrière-plan de la police un rectangle gris ajusté sur la taille en points de la police sur chaque ligne.

En pratique, vous pouvez généralement créer des étiquettes plus petites que les boutons et le texte des rubriques. Etant donné que l'utilisateur final n'interagit pas avec les étiquettes, la taille d'un doigt humain n'est pas aussi importante que quand l'utilisateur doit modifier le texte ou cliquer dessus.

De la même manière, la hauteur des lignes – pour les tables externes et les affichages sous forme de listes – doit être comprise entre 34 et 42 pixels.

Enfin, les zones actives des boutons doivent couvrir au minimum un carré de 32 pixels sur 32, et elles peuvent atteindre 52 pixels de haut pour se conformer à ce que la plupart des utilisateurs de l'iPhone ou de l'iPad ont l'habitude de voir.

Exposé technique sur FileMaker Go 1.2.1 20

L'exemple ci-dessus montre ce que l'on peut considérer comme une interface organisée de manière raisonnable pour l'iPad avec un affichage sous forme de liste et un affichage sous forme de formulaire. Cet exemple montre également une image d'arrière-plan au format JPG qui a été compressée significativement.

L'exemple ci-dessus reprend les lignes directrices d'Apple pour un modèle de notes de frais destiné à être affiché sur un iPhone.

Notez qu'il ne s'agit que de recommandations. Une interface doit avant tout être conçue de manière à répondre aux besoins des personnes qui utilisent la base de données correspondante. Cet exposé technique n'a pas vocation à introduire un nouveau dogme dans la communauté des développeurs.

De la même manière, les interfaces destinées essentiellement aux utilisateurs d'iPad et d'iPhone peuvent être complètement inadaptées aux utilisateurs de FileMaker Pro qui travaillent sur un ordinateur de bureau. L'une des grandes forces de la plate-forme FileMaker réside dans son ubiquité et sa compatibilité. Un même modèle peut répondre aux besoins des utilisateurs de Mac OS,

21Exposé technique sur FileMaker Go 1.2.1

de Windows et des plateformes iPhone et iPad. A l'aide du zoom par pincement et du défilement par balayage, vous pouvez créer une base commune pour l'ensemble de vos utilisateurs sans pénaliser ceux qui travaillent sur un ordinateur de bureau en utilisant exclusivement des modèles de type iOS.

Enfin, signalons que pour une utilisation occasionnelle, les interfaces existantes peuvent parfaitement faire l'affaire. De la même manière que la plupart des possesseurs d'iPhone arrivent parfaitement à naviguer sur des sites Web dimensionnés pour des ordinateurs de bureau, ils peuvent utiliser FileMaker Go pour naviguer au sein d'une interface FileMaker Pro. Une interface conçue spécifiquement pour les appareils mobiles peut être plus facile à utiliser et améliorer la productivité des utilisateurs mobiles, mais il faut aussi rapporter les avantages d'une interface spécifiquement conçue pour un appareil tactile ou pour une taille d'écran donnée aux efforts requis pour la créer et en assurer la maintenance.

Dimensionnement automatique et rotations portrait/paysageSi vous n'utilisez pas déjà de manière intensive le dimensionnement automatique des objets de modèles sous FileMaker, disponible via les paramètres Ancrage de l'onglet Position de l'Inspecteur, vous serez sans doute obligé de le faire si vous développez pour FileMaker Go. L'utilisateur peut faire pivoter son appareil du mode paysage au mode portrait à tout moment, et FileMaker Go gère parfaitement la régénération du modèle en conséquence. N'oubliez pas que pour que le redimensionnement des modèles soit optimal, vous devez systématiquement utiliser des dimensions aussi réduites que possible.

Dimensions de l'écranA titre de référence, voici les dimensions des éléments de l'écran selon le mode d'affichage :

N'oubliez pas : l'affichage sous forme de liste consomme 3 pixels de plus en largeur pour l'indicateur de sélection de gauche. Cette différence n'apparaît pas avec Obtenir(LargeurContenuFenêtre) et n'est pas prise en considération dans cette matrice :

Portrait Paysage

Barre d’outils Aucune barre d’outils Barre d’outils Aucune barre d’outils

iPad 768 L x 929 H 768 L x 973 H 1024 L x 673 H

1024 L x 717 H

iPhone 320 L x 385 H 320 L x 429 H 480 L x 255 H 480 L x 289 H

Pour déterminer si l'appareil de l'utilisateur est en mode paysage ou portrait, et pour déterminer combien d'espace il vous reste à l'écran, utilisez Obtenir(LargeurContenuFenêtre) et Obtenir(HauteurContenuFenêtre). Notez que quel que soit votre niveau de zoom, les valeurs ci-dessus correspondent à ce que FileMaker Go indique.

Gestion des fenêtresFileMaker Go fonctionne sensiblement de la même manière que FileMaker Pro sous Windows en mode maximisé. Une seule fenêtre à la fois s'affiche sous FileMaker Go. L'utilisateur mobile ne peut pas positionner deux fenêtres l'une à côté de l'autre sur son écran et cliquer de l'une à l'autre. La gestion des fenêtres s'effectue dans une interface séparée qui imite la manière dont Safari fonctionne sur l'iPhone et l'iPad.

Il n'y a aucun intérêt à masquer une fenêtre sous FileMaker Go, dans la mesure où une fenêtre masquée fonctionne de la même manière qu'une fenêtre non masquée. Les fenêtres locales flottantes (de petite taille) et les boîtes de dialogue pseudo-modales prennent tout l'écran. Les fenêtres de traitement hors champ ne sont pas générées hors champ. Elles sont pleinement visibles quand elles ont le focus. Si vous avez un script qui repose sur une fenêtre hors champ, l'utilisateur verra FileMaker Go basculer dans cette fenêtre, où il restera jusqu'à ce que votre script fasse repasser le focus dans la fenêtre originale. Ce mode de fonctionnement peut avoir un impact significatif sur les habitudes de création de scripts de certains développeurs.

Tous ces éléments conduisent à une même recommandation générale : mieux faut faire reposer votre solution sur une seule et même fenêtre pour les fonctions principales.

22Exposé technique sur FileMaker Go 1.2.1

Gestion du zoomLes paramètres de zoom de fenêtres fonctionnent légèrement différemment sous FileMaker Go. Vous pouvez appliquer des paramètres de zoom à un modèle, et ils seront conservés pour ce modèle jusqu'à ce que vous les modifiiez. Ce mode de fonctionnement contraste légèrement avec celui de FileMaker Pro. En effet, sous FileMaker Pro, le paramètre de zoom est appliqué à la fenêtre et conservé même quand un changement de modèle survient.

En outre, si vous définissez dans un script un niveau de zoom inférieur à celui qui permet de remplir l'écran, FileMaker Go s'arrête à la valeur de zoom fractionnelle qui permet de voir l'ensemble du modèle, mais il ne descend pas en dessous de cette valeur. FileMaker Go ne permet pas de réduire la vue au point d'obtenir une version miniature du modèle affiché. Il ne peut réduire la vue que dans les limites permises par l'écran.

Par exemple, si vous affichez un modèle qui ne tient pas dans l'écran et que vous pincez l'écran, il ne diminuera pas en dessous du seuil de remplissage de l'écran, par exemple 73 %. Dans pareil cas, si vous utilisez un script pour fixer un niveau de zoom inférieur à 73 % (50 %, par exemple), FileMaker Go ne réduira la vue que jusqu'à 73 %.

Notez que Obtenir(NiveauZoomFenêtre) renvoie la valeur entière d'un écran, alors que les utilisateurs de FileMaker Pro et les scripts ne peuvent modifier le niveau de zoom que par incréments prédéfinis de 25 %, 50 %, etc.

Il peut être intéressant de verrouiller le niveau de zoom dans un affichage sous forme de liste pour empêcher le défilement horizontal. Toutefois, étant donné que les utilisateurs contrôlent de manière plus dynamique le niveau de zoom en pinçant l'écran quand ils en éprouvent le besoin, il est généralement préférable de laisser l'utilisateur libre de définir ce niveau de zoom plutôt que de le définir à l'aide d'un script comme c'est souvent le cas sous FileMaker Pro.

Création de scripts pour un monde mobileComme indiqué précédemment, il ne faut pas oublier que sous FileMaker Go, un script peut être interrompu à tout moment, quel que soit le paramétrage de l'option Autor. annulation utilisateur. Si un appel arrive sur l'iPhone, iOS ferme l'application existante pour prendre l'appel. FileMaker Go ne prend pas en charge le multitâche. Par conséquent, l'application se ferme systématiquement dans pareil cas. De la même manière, l'utilisateur peut fermer l'application à tout moment en appuyant sur le bouton principal de l'iPhone ou de l'iPad.

Les performances sont un autre facteur important à prendre en considération. Alors qu'il est possible de créer des processus élaborés et riches en scripts sous FileMaker, l'apparition de FileMaker Go impose plus que jamais au développeur de bien réfléchir avant d'utiliser des « astuces alambiquées » ou des processus gourmands en données.

Les tests que nous avons réalisés nous ont montré que la validation d'enregistrements était une opération plus gourmande en ressources réseau que la plupart des autres opérations sous FileMaker Go, comme l'exécution d'une requête. Si, par exemple, un développeur crée un script de boucle qui modifie une rubrique dans un jeu d'enregistrements trouvés, deux problèmes peuvent survenir. Premièrement, votre script peut être interrompu par le bouton principal, par un appel téléphonique ou par une perte de connexion. Deuxièmement, votre utilisateur peut ne pas être prêt à attendre les résultats sur un réseau 3G.

Dans pareil cas, un script mal conçu peut laisser une partie non négligeable de vos données en état non modifié. Nous ne rappellerons jamais assez que sous FileMaker Go, vous ne pouvez jamais être certain qu'un script donné arrivera à terme. En règle générale, il est vivement conseillé de bien réfléchir pour concevoir des scripts qui modifient les données.

Cette approche des solutions mobiles peut sembler alarmiste, mais il ne faut pas oublier qu'il est bien rare qu'un utilisateur ait besoin d'exécuter des scripts de grande ampleur sur le terrain. En pratique, le développeur doit s'accommoder des limites inhérentes aux réseaux mobiles et réserver les développements lourds aux utilisateurs de FileMaker Pro et de FileMaker Server.

Stratégies de scriptIl y a plusieurs manières d'appréhender les scripts de traitement de données pour les bases de données mobiles ou, plus généralement, pour les bases de données accessibles via un WAN. Les techniques suivantes visent à illustrer des idées, sans nécessairement suggérer que ces approches sont les seules correctes ni même qu'elles sont universelles.

Tests pour la plate-forme viséeAucune permission supplémentaire n'est requise pour ouvrir une base de données sous FileMaker Go, et il ne faut pas perdre de vue

Exposé technique sur FileMaker Go 1.2.1 23

cet aspect. Si un utilisateur est autorisé à ouvrir un fichier sous FileMaker Pro, il peut aussi l'ouvrir sous FileMaker Go. Etant donné que les solutions de base de données complexes contiennent généralement des scripts qui doivent être testés avant d'être utilisés sous FileMaker Go, il peut être judicieux d'empêcher les utilisateurs mobiles de se connecter à votre base de données tant que vous n'avez pas vérifié la compatibilité.

Comme expliqué précédemment, vous pouvez déterminer quelle plate-forme une personne utilise à l'aide de la fonction de calcul Obtenir(VersionApplication). Cette fonction renvoie « Go 1.x.x » sur un iPhone et un iPod Touch et « Go_iPad 1.x.x » sur un iPad. Vous pouvez aussi utiliser la fonction Obtenir(PlateformeSystème), qui renvoie « 3 » lorsqu'elle est évaluée sur un appareil mobile qui utilise FileMaker Go.

En ajoutant une action Si à un script configuré pour s'exécuter quand votre base de données s'ouvre, vous pouvez empêcher les utilisateurs mobiles d'accéder à cette dernière :

Si [Obtenir(PlateformeSystème) = 3]

Ouvrir boîte dial. person. [Titre: “Accès mobile”; Message: “Cette base de données n'est pas accessible à partir de FileMaker Go pour l'instant. Pour plus d'informations, veuillez contacter votre développeur.”; Boutons: "OK"]

Fermer fichier [Fichier actif]

Fin de si

Scripts SurTemporisationLes scripts SurTemporisation sont configurés pour s'exécuter à intervalle régulier. La principale différence entre un script paramétré pour s'exécuter avec un déclencheur SurTemporisation et tout autre script réside dans ce qui se produit quand l'utilisateur appuie sur le bouton principal ou quand un appel arrive et force FileMaker Go à se fermer. Un script déclenché à l'aide de l'action de script SurTemporisation est suffisamment intelligent pour savoir combien de temps s'est écoulé même si l'application a été fermée. Une fois l'application rouverte, le script SurTemporisation sait si l'intervalle s'est écoulé et se déclenche si tel est le cas.

Par exemple, si vous gérez vos rendez-vous quotidiens avec FileMaker Go et que vous avez défini un rappel pour vous prévenir 10 minutes avant l'heure de début d'un rendez-vous, vous pouvez utiliser un script SurTemporisation pour aider FileMaker Go à suivre vos rappels même si un appel arrive. Aucun autre déclencheur ni processus scripté ne peut se poursuivre si FileMaker Go est fermé. Outre le déclencheur de script SurTemporisation, vous devez ajouter une action de script Autor. annulation utilisateur [Non] à votre script. Si vous n'ajoutez pas d'action de script Autor. annulation utilisateur [Non], le script s'interrompra et le script SurTemporisation cessera de fonctionner jusqu'à ce que vous puissiez le déclencher de nouveau. Cette technique illustre l'une des nombreuses utilisations possibles du déclencheur de script SurTemporisation sous FileMaker Go.

Utilisation des informations de localisation FileMaker Go n'est pas capable d'accéder aux fonctions GPS de l'iPhone. Cependant, avec un peu de créativité et un Web Viewer, il est possible de contourner cette limitation. La technique présentée combine une page HTML5 toute simple et un peu de JavaScript. Puisque Safari sur iPhone prend en charge les services de géolocalisation HTML5, FileMaker Go les prend lui aussi en charge, car un objet Web Viewer utilise le moteur Safari pour gérer le rendu des pages Web.

Imaginez une équipe commerciale qui pourrait marquer la géolocalisation de ses clients tout en saisissant ses données pendant ses déplacements – tout cela à partir de FileMaker. Imaginez également que l'utilisateur puisse enregistrer les kilomètres qu'il parcourt (ou au moins la distance la plus courte entre deux points). En fait, il existe plusieurs manières d'y parvenir.

Chad Novotny (The Support Group) et Todd Geist (Geist Interactive) ont tous deux publié des articles de blog montrant comment procéder. Une recherche dans Google portant sur FileMaker Go geolocation vous permettra de trouver rapidement des liens menant à ces articles.

24Exposé technique sur FileMaker Go 1.2.1

Scripts qui s'exécutent à l'ouverture et à la fermeture d'une base de données FileMaker

Les scripts configurés pour s'exécuter quand une base de données s'ouvre et se ferme fonctionnent de la même manière que sous FileMaker Pro. Cependant, le comportement de l'utilisateur et la manière dont FileMaker Go hiberne nécessitent une attention particulière. Comme sous FileMaker Pro, un script d'ouverture s'exécute dès que la première fenêtre d'un fichier s'affiche. Cependant, si un utilisateur retourne sous FileMaker Go après avoir fermé l'application et répond Oui dans la boîte de dialogue qui lui demande s'il souhaite recommencer à travailler sur ses bases de données ouvertes précédemment, FileMaker Go fera exactement ce qu'il propose : il ramènera l'utilisateur à sa situation précédente mais n'exécutera pas le script spécifié dans les options de fichier.

De la même manière, les scripts configurés pour s'exécuter quand le fichier se ferme ne s'exécutent que quand un utilisateur (ou un script) ferme la fenêtre ouverte finale pour un fichier donné. Si l'utilisateur appuie sur le bouton principal ou reçoit un appel téléphonique, FileMaker Go se ferme sans exécuter aucun script supplémentaire, pas même celui qui a été configuré pour s'exécuter quand un fichier se ferme.

Transactions de verrouillage d'enregistrements liés

Même s'il ne s'agit pas à proprement parler d'une stratégie de script, il ne faut pas oublier que les enregistrements liés peuvent être désynchronisés dans les modifications dépendantes. Si, par exemple, vous avez besoin de vous assurer que toutes les modifications apportées à un jeu d'enregistrements liés sont appliquées ou qu'aucune d'elles ne l'est, vous pouvez utiliser le mécanisme de verrouillage habituel de FileMaker Pro. Si vous ouvrez un enregistrement, les modifications apportées à un enregistrement lié via des tables externes alors qu'un enregistrement n'est pas validé ne sont pas validées non plus.

Todd Geist, contributeur régulier de la communauté de développeurs FileMaker, a rédigé des articles sur un modèle transactionnel qui vous permet de tirer parti de ce mode de fonctionnement si vous avez besoin d'assurer une opération atomique sur un processus complexe. Toutes les modifications apportées à un enregistrement parent non validé, mais aussi à ses enfants via des tables externes, sont soit validées, soit complètement annulées si l'opération est interrompue. Cette technique existe depuis plusieurs années et elle est bien comprise des développeurs avancés. Elle suscite un regain d'intérêt face à la multiplication des connexions mobiles, qui sont beaucoup moins stables dans le temps.

Todd Geist a publié des informations (en anglais) sur http://www.geistinteractive.com et sur http://www.geistinteractive.com/content/inventory-transactions.

Mise en file d'attente côté serveur

Au lieu de faire reposer tous les scripts sur FileMaker Go, vous pouvez déplacer certains d'entre eux sur votre serveur FileMaker Server ou sur une machine cliente FileMaker Pro dédiée à la prise en charge de votre solution. La mise en file d'attente est une technique courante bien connue des développeurs FileMaker. Elle porte parfois d'autres noms, tels que « traitement asynchrone » soit « asynchronous processing », « traitement robot » soit « (ro)bot processing » ou « traitement côté serveur » soit « server side processing ». En effet, l'utilisateur fait quelque chose qui place une requête dans une file d'attente, qui est ensuite traitée par un démon ou par un processus programmé qui s'exécute à intervalle régulier sur l'hôte ou sur la machine robot/cliente.

Cette technique est fréquemment utilisée pour les tâches susceptibles de prendre un temps de traitement considérable, et donc d'empêcher l'utilisateur de faire autre chose si elles s'exécutent sur le client. Elle suscite un regain d'intérêt avec la multiplication des applications mobiles. Les appareils mobiles embarquent moins de puissance de traitement et leurs connexions sont moins permanentes. Par conséquent, la mise en file d'attente des tâches peut sembler plus intéressante pour les solutions mobiles que pour celles qui reposent sur FileMaker Pro installé sur un réseau local.

La mise en file d'attente fonctionne particulièrement bien quand vous pouvez générer une notification « push » en temps et en heure, et le déclencheur SurTemporisation est très utile dans pareil cas. Notez que le déclencheur SurTemporisation ne fonctionne que quand FileMaker Go est en cours d'exécution.

Cette technique fonctionne de la manière suivante :

1. L'utilisateur initie votre script en touchant un bouton ou en exécutant un script à partir du menu Scripts.

2. Au lieu de traiter votre script sur le client FileMaker Go, cette technique crée un enregistrement dans une « table de file

Exposé technique sur FileMaker Go 1.2.1 25

d'attente » avec le nom du script qui doit s'exécuter, le nom de l'utilisateur qui a fait la demande et les paramètres pertinents ou les données requises éventuelles.

3. Un client FileMaker Pro ou un serveur FileMaker Server exécutant son propre script de surveillance associé à un temporisateur détecte qu'il y a une nouvelle demande de script dans la table de file d'attente. A partir du nom du script et des paramètres fournis, il exécute le traitement par lot.

4. Un moyen intéressant d’informer l’utilisateur que le script est terminé consiste à utiliser un script SurTemporisation sous FileMaker Go pour observer la table de file d’attente et détecter qu’un enregistrement de la liste est en train d’être terminé. Il peut ensuite afficher une boîte de dialogue pour en informer l’utilisateur.

Cette manière de procéder n'est pas la seule, et elle vous promet un certain nombre de défis en matière de contextes et de jeux d'enregistrements trouvés, mais elle mérite d'être prise en considération.

Journalisation/marquage de scripts

Pour vous assurer que les données ne sont pas laissées dans un état non terminé par un script qui ne s'est pas exécuté jusqu'au bout, vous pouvez suivre une autre approche, consistant à tester une condition de résultat. Cette approche peut être mise en œuvre de différentes manières, mais l'idée essentielle consiste à marquer chaque enregistrement modifié par un script à l'aide d'un marqueur d'horodatage ou d'un élément similaire, puis, éventuellement à l'aide d'un script SurTemporisation, à rechercher régulièrement les enregistrements qui ne portent pas ce marqueur. Votre base de données peut ensuite demander à l'utilisateur s'il souhaite exécuter de nouveau le script pour terminer son processus.

Votre approche de ces problématiques doit être guidée par votre bon sens. Par exemple, si vous écrivez un script qui génère un rapport pour l'utilisateur, personne ne viendra vous reprocher que la connexion ait été perdue et que le rapport n'ait pas été affiché. Vos données seront correctes et l'utilisateur aura toujours la possibilité d'exécuter de nouveau le rapport quand il se sera reconnecté.

L'objectif est de réfléchir aux conséquences que peut avoir un blocage de votre script et de prendre les précautions qui s'imposent.

Annexe A : Actions de script non prises en charge (extrait du Guide du développeur)

FileMaker Go ne prend pas en charge certaines actions de script. Si vous exécutez des scripts sans gérer les actions de script non prises en charge, vous risquez d'obtenir un comportement inattendu ou même de corrompre vos données.

Code d'erreur 4

Les actions de script suivantes renvoient le code d'erreur 4 : Commande inconnue. Utilisez Obtenir(DernièreErreur) pour détecter ce code d'erreur. Si Autor. annulation utilisateur est activé, FileMaker Go affiche une alerte qui permet à l'utilisateur de choisir de continuer ou d'annuler le script. Si Autor. annulation utilisateur est désactivé, FileMaker Go affiche une alerte indiquant à l'utilisateur quelle action de script n'est pas prise en charge à moins que Gestion erreurs soit activé, ce qui empêche les boîtes de dialogue d'erreur de s'afficher. En outre, l'utilisateur ne peut pas annuler un script si Autor. annulation utilisateur est désactivé.

Catégorie

- Action de script

Actions de script d'édition

- Ex. Rech. et remplacer

Actions de script sur les rubriques

- Insérer à partir de l'index

- Insérer image

Exposé technique sur FileMaker Go 1.2.1 26

- Insérer QuickTime

- Insérer fichier

Actions de script sur les fichiers

- Imprimer

- Nouveau fichier

Actions de script diverses

- Exécuter SQL

Actions de script de navigation

- Mode Prévisualisation

Actions de script sur les enregistrements

- Importer enregistrements (l'importation entre fichiers FileMaker est prise en charge)

- Exporter enregistrements

- Sauvegarder en Excel

- Enregistrer en lien snapshot

Code d'erreur 3

Les actions de script suivantes renvoient le code d'erreur 3: Commande non disponible. Utilisez Obtenir(DernièreErreur) pour détecter ce code d'erreur. FileMaker Go n'affiche pas d'alerte pour ces actions de script.

Actions de script sur les rubriques

- Insérer objet (Windows)

- Mettre à jour lien (Windows)

Actions de script sur les fichiers

- Configuration impression

- Multi-utilisateur

- Récupérer fichier

- Convertir fichier

Actions de script diverses

- Autoriser palettes d'outils

- Prononcer (Mac)

- Emettre événement (Mac)

- Emettre événement (Windows)

- Exécuter AppleScript (Mac)

- Emettre exécution DDE (Windows)

Actions de script d'ouverture d'élément de menu

27Exposé technique sur FileMaker Go 1.2.1

- Ouvrir Modifier les recherches enregistrées

- Ouvrir Options fichier

- Ouvrir Gérer la base de données

- Ouvrir Gérer les sources de données

- Ouvrir Gérer les modèles

- Ouvrir Gérer les scripts

- Ouvrir Gérer les listes de valeurs

- Ouvrir Rech. et remplacer

- Ouvrir Partage

Actions de script d'orthographe

- Vérifier sélection

- Vérifier enregistrement

- Vérifier enreg. trouvés

- Orthographes proposées

- Options d'orthographe

- Installer dictionnaire

- Dictionnaire utilisateur

Actions de script sur les fenêtres

- Afficher/masq. réglette texte

- Déplacer/redim. fenêtre

- Organiser toutes les fenêtres

L'action de script Ouvrir aide est prise en charge. Elle ouvre la vue Web sur la page d'aide mais ne ferme pas l'application.

Articles de la Knowledge Base (en anglais)Consultez également les articles de la Knowledge Base (en anglais), disponible sur le site Web de FileMaker à l'adresse : http://help.filemaker.com/

Auteurs

Ecrit par Scott Love et Aaron Gutleben, de Soliant Consulting, avec l’aide de Jeremiah Small et de Carl Young.

Soliant Consulting crée des bases de données, des sites Web et des applications mobiles personnalisés pour des entreprises de l’ensemble des Etats-Unis. Nous sommes spécialistes de FileMaker, de PHP, de la plate-forme Zend, d’iOS sur iPhone/iPad OS, d’Adobe Flex et de Salesforce.com.

http://www.soliantconsulting.com

28Exposé technique sur FileMaker Go 1.2.1

LE PRESENT DOCUMENT EST FOURNI « TEL QUEL », SANS GARANTIE D’AUCUNE SORTE, ET FILEMAKER DECLINE TOUTE GARANTIE,

EXPLICITE OU IMPLICITE, Y COMPRIS, MAIS SANS QUE CETTE LISTE SOIT EXHAUSTIVE, LES GARANTIES IMPLICITES DE QUALITE

MARCHANDE OU D’ADEQUATION A UN USAGE PARTICULIER, OU LA GARANTIE DE NON-VIOLATION. EN AUCUN CAS FILEMAKER, INC.

OU SES FOURNISSEURS NE SAURAIENT ETRE TENUS RESPONSABLES DE DOMMAGES, QUELLE QU’EN SOIT LA NATURE, Y COMPRIS

DES DOMMAGES DIRECTS, INDIRECTS, FORTUITS, CONSECUTIFS A L’UTILISATION DU PRODUIT, AINSI QUE LA PERTE DE PROFITS, LA

CESSATION D’ACTIVITE, LES DOMMAGES EN REPARATION OU SPECIAUX, MEME SI FILEMAKER .INC OU SES FOURNISSEURS ONT EU

CONNAISSANCE DE LA POSSIBILITE DE TELS DOMMAGES. CERTAINS ETATS N’AUTORISENT PAS L’EXCLUSION OU LA LIMITATION DE

RESPONSABILITES. FILEMAKER PEUT APPORTER DES MODIFICATIONS AU PRESENT DOCUMENT A TOUT MOMENT, SANS PREAVIS. LE

PRESENT DOCUMENT N’EST PEUT-ETRE PAS A JOUR, ET FILEMAKER NE S’ENGAGE PAS A METTRE A JOUR CES INFORMATIONS.

© 2011 FileMaker, Inc. Tous droits réservés. FileMaker est une marque de FileMaker, Inc., déposée aux Etats-Unis et dans d’autres pays. Le

logo en forme de dossier est une marque de FileMaker, Inc. Toutes les autres marques sont la propriété de leurs détenteurs respectifs. Les

caractéristiques et la disponibilité des produits sont sujettes à modification sans préavis.