Jump to content
magicsam2008

Lancer Automatiquement Une Base De Donnée À L'ouverture De Filemaker

Recommended Posts

"la solution la plus "zen" en terme de consommation de `clicks' consisterait à écrire une "plist" (placée dans ~/Library/LaunchAgents) doté d'une clé "WatchPath" ou "QueDirectories", à laquelle on associerait un script executable (bash/AS) ouvrant oui ou non la base cible; laquelle plist serait contrôlé par le ProcessID n°1 de MacOSX: Launchd et fonctionnerait donc en tâche de fond."

heu je parle français et japonais mais pas le chinois -__- J'ai rien capté à ton charababia lol.

Je vais réessayer avec les corrections que vous m'avez donnée et je reviens vers vous dés que possible,

merci encore,

Share this post


Link to post
Share on other sites

(...)

heu je parle français et japonais mais pas le chinois -__- J'ai rien capté à ton charababia lol.

(...)

Ou l'art de se faire des copains :D:D:D

Share this post


Link to post
Share on other sites

Bah ça faisait longtemps que je n'étais pas venue sur le forum mais je vois que vous vous amusez toujours autant ;)

Si vous continuez Sensaï Sam risque de prendre exemple sur Mishima et va jeter l'écran couleur de son ordi dans la rivière la plus proche !

Je repars compter mes clics de souris ;)

A plus les méchants qui regardent la télé en N&B o:)

Share this post


Link to post
Share on other sites

magicsam2008,

quelle version de FMP utilises-tu ?

quel version d'OSX utilises-tu ?

(...une petite mise à jour de ton profil serait la bienvenue)

本当にありがとうございます。

Share this post


Link to post
Share on other sites

... bon, l'est plus là l'ami Matsuri ??? J'avais un truc rigolo à lui proposer... Tant pi

Gregory

Share this post


Link to post
Share on other sites

Il est parti regarder la télé en 3D :hehe:

Share this post


Link to post
Share on other sites

Il est parti regarder la télé en 3D :hehe:

+

Elle est déjà en couleur la télé en 3D ? :siffle:

Mickeys !! :diable::diable::diable::diable::diable:

Share this post


Link to post
Share on other sites

bonjour,

désolé pour ma réponse tardive.

J'utilise la version FileMaker Pro 10 Advanced sous Mac Osx Léopard.

Quel est donc ce truc rigolo dont tu voulais me parler?

予めにありがとうございます!

Share this post


Link to post
Share on other sites

Oui Oui un truc rigolo est toujours le bienvenue :w00t:

Mais au fait Sam as tu au moins essayé l'applescript ?? qui se met bien dans la partie gauche du doc. !

Philippe ( en attente d'un truc rigolo :diable: )

Share this post


Link to post
Share on other sites

Magic sensei sam n'a rien essayé qui n'a pas été pré-maché et digéré, faut pas déconner non plus. Il est l'aiguillon, celui qui dit : "la télé c'est bien mais si en plus on pouvait avoir la couleur, alors ce serait mieux. Mais moi je ne sais pas faire, bougez vous un peu le tafanar, les gars. Merci" (en option).

Il n'est pas là pour faire, mais pour émoustiller, demander, utiliser. À peine pour tester, si c'est bien présenté. C'est le révélateur du génie qui n'osait pas s'exprimer, le Nobel de l'usager, le Churchill de la demande non aboutie, le Caesar Imperator de la demande client qui révolutionnera l'interface de demain (ou pas).

Le Japon perdu entre ses traditions, ses forces spirituelles immenses et son occidentalisation irréversible (sauf peut-être, faute de place).

L'envie de gagner un clic ou de faire croire qu'on a créé une application opposée à la patience millénaire des arbres et des sept collines, à la sagesse de notre Dr House, aka Clem, à la constance du salami.

Mickey Mouse (qui n'a même pas la télé, à la campagne). :P

PS t'es malade Maxence ? :D

Share this post


Link to post
Share on other sites

...Depuis quand "charabia" est-il devenu synonyme de "rigolo" ??? :blink:

Il y aurait-il un conflit entre mon hémisphère gauche & droit... à moins que celà ne soit l'inverse ! :unsure:

Requis:

Mac OS : 10.4 (minimum)

FileMaker Pro ou FileMaker Pro Advanced : v9 ou ultérieure (en fait toutes les versions antérieures à la v9, mais pas testé)

REMARQUE: Le pas-à-pas ci-dessous peut paraître effrayant, voire fastidieux; en fait il ne s'agit que de définir 3 chemins différents dans les deux documents fournis.

1 - Télécharge puis décompresse l'archive ci-jointe.

OpenDefaultFMFile.zip

Celle-ci contient deux fichiers:

  • fmOpenDefault.sh (le script shell en charge d'ouvrir le fichier par défaut.)
  • com.clem.WatchFMsTempFolder.plist (le fichier plist contenant les paramètres (chemins & script) à contrôler et à excécuter par "launchd" (le manager de "daemons").

2 - Place le fichier script "fmOpenDefault.sh" dans un endroit de ton choix ou dans un répertoire dédié au scripts. (ex: "~/Library/Scripts").

3 - Place le fichier plist "com.clem.WatchFMsTempFolder.plist" trés exactement dans le dossier "~/Library/LaunchAgents".

4 - Lance l'application TextEdit et ouvre les deux fichiers en prenant soin de choisir "Unicode UTF-8" comme encodage de texte.

5 - Dans un fichier Filemaker, récupère le chemin au Dossier Temporaire obtenu à partir du calcul: Obtenir( CheminTemporaire )

En fonction de la version de FMP, copie du résultat obtenu la portion allant de :

v9: "/private/var/.../FileMaker/"

v10: "/private/var/.../Cleanup At Startup/"

... c'est ce chemin que l'on va demander à "launchd" de surveiller.

Quitte l'application FMP.

6 - Dans le fichier script, ligne 4 remplace le texte *-CheminDossierTemp-* par ton presse-papier.

7 - idem dans fichier plist ligne 15

8 - Dans le fichier script, fait un "Glisser&Déposer" du fichier FMP que tu veux ouvrir par défaut à l'endroit/à la place de *-CheminFichierFMP-* (ligne 3), ou entre le chemin à la main.(ex: "/Users/magicsam/Documents/mabase.fp7)

9 - Enregistre & ferme le fichier script.

10 - Dans le fichier plist, (ligne 11) remplace *-CheminDuScript-* par le chemin du script (par Drag&drop ou à la main).

11 - Enregistre & ferme le fichier plist.

12 - Il ne reste plus qu'a demander à "launchd" de prendre le job en compte...

Ouvre ton Terminal (/Applications/Utilities/Terminal.app)...

saisi: launchctl (suivi d'un espace) et fais un "Glisser&Déposer" du fichier plist. Valide la commande avec la touche "Enter"

13 - Ouvre l'application Filemaker

... si tout c'est bien passé, ton document par défaut devrait être ouvert!

... ferme le document ...

楽しい !

いいえ ??


PS:

- Pour désactiver le job pendant toute la session, saisir dans le Terminal:

launchctl unload '/Users/xxxxx/Library/LaunchAgents/com.clem.WatchFMsTempFolder.plist'

- Pour désactiver définitivement le job, saisir dans le Terminal:

launchctl unload -w '/Users/xxxxx/Library/LaunchAgents/com.clem.WatchFMsTempFolder.plist'

pour le recharger, il faudra écrire

launchctl load -w '/Users/.....etc'

clem[ :diable: Jack-in-the-box]

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

OpenDefaultFMFile.zip

Edited by Clem

Share this post


Link to post
Share on other sites

A Rodolf pour commencer:

"Magic sensei sam n'a rien essayé" Bien sur que j'ai essayé déjà, avec mes humbles et maigres compétences informatiques qui n'ont mené à rien.

"Mais moi je ne sais pas faire, bougez vous un peu le tafanar, les gars. Merci" Mais qui es-tu pour faire parler les gens à leur place? T'es ventriloque?

En disant ça tu insultes toutes personnes comme moi demandant tout simplement un conseil/une solution sur les forum du net.

"Il n'est pas là pour faire, mais pour émoustiller, demander, utiliser. À peine pour tester, si c'est bien présenté." Pour l'instant l'amuseur c'est toi mon chère. Oui je suis la pour émoustiller, ce qui crée l'émulation, la convergence des cerveaux pour arriver à une solution. Oui je suis là pour demander quelque chose, d'où le nom de "Forum", et oui je suis là pour utiliser, utiliser ce magnifique outil qui s'appelle Internet et qui permet d'y trouver des solutions. Si tu y vois un côté "profiteur" ou "opportuniste" comme tu le laisse entendre et bien je te souhaite pas un jour de trouver plus intelligent que toi, ou plutôt milles excuses d'être moins intelligent que toi et d'avoir osé posé une question à Sire Rodolf!

"Le Japon perdu entre ses traditions, ses forces spirituelles immenses et son occidentalisation irréversible" No Comment. Viens au Japon vivre 1 an au moins et on en reparlera aprés. Un pays c'est pas Ushuaïa.

Pour Clem,

je te remercie de tes explications, je vais essayer ça et reviens vers toi. Ca m'a l'air en tout cas d'être complet, net et précis et de correspondre parfaitement à ce que je recherchais. :-) Merci!

Share this post


Link to post
Share on other sites

Bon, Rodolf, maintenant que tu as vu ce que ça faisait d'être dedans, tu peux rendre ses pompes à Maxence ? :D

Eh oui, l'intérim est un métier à risques... ;)

Share this post


Link to post
Share on other sites

Clem, pendant que tu te frottes les hémisphères l'un contre l'autre, t'aurais pas un script pour refaire ma base de 11 fichiers en un seul et en mieux. En un clic évidemment. Merci. :rolleyes:

Share this post


Link to post
Share on other sites

Bon, Rodolf, maintenant que tu as vu ce que ça faisait d'être dedans, tu peux rendre ses pompes à Maxence ? :D

Eh oui, l'intérim est un métier à risques... ;)

:bien::diable::diable::lol:

Share this post


Link to post
Share on other sites

je bloque là déjà :

"Dans un fichier Filemaker, récupère le chemin au Dossier Temporaire obtenu à partir du calcul: Obtenir( CheminTemporaire )"

faut tout me dire parce que là je comprend rien du tout désolé^^. Comment est-ce qu'on récupère ce chemin du Dossier Temporaire? J'ai ouvert un fichier FM comme tu m'as dit et dans préférence y'a rien qui mentionne cela. Et "obtenu à partir de calcul" c'est quoi ce calcul? J'ai fait aucun calcul moi +-+

Share this post


Link to post
Share on other sites

(...)J'ai fait aucun calcul moi +-+

Dans un fichier filemaker, il faut créer une rubrique dont le calcul est Obtenir (CheminTemporaire). Il ne va en effet pas se faire tout seul le calcul :bien:

Et, au passage, il y a un super outil dans Fmp et sur le merveilleux internet, qui s'appelle l'aide :fleur:

Share this post


Link to post
Share on other sites

"Dans le fichier plist, (ligne 11) remplace *-CheminDuScript-* par le chemin du script (par Drag&drop ou à la main)."

C'est quoi le chemin du script?

Sinon quand tu dis de remplacer *-CheminFichierFMP-* rassure moi on laisse bien les guillemets de part et d'autre des astérisques quand même?

J'y suis presque allez courage^^

Merci à Clément au fait pour le Dossier Temporaire, j'aurai pas pu tout seul:-)

Share this post


Link to post
Share on other sites

(...)

Sinon quand tu dis de remplacer *-CheminFichierFMP-* rassure moi on laisse bien les guillemets de part et d'autre des astérisques quand même?

Moi je dis (sans ventriloquer) que ça vaut le coup d'essayer pour savoir -_-

J'y suis presque allez courage^^

(...)

:bien:

Share this post


Link to post
Share on other sites

Bonjour,

Pour lancer la base au démarrage de Windows,

il suffit de mettre le raccourci de la dite base dans le dossier démarrage

de windows il me semble ..

Sous XP ouvrir "programme" pour accéder au dossier de "démarrage" ..

Nelson

Share this post


Link to post
Share on other sites

Heu merci Nelson, mais je crois que ce n'est pas du tout ce qui était demandé... :unsure:

Share this post


Link to post
Share on other sites

Bonjour,

J'arrive un peu après la bataille.

Mon objectif du jour est d'arriver à faire que la base se lance toute seule à 8h le matin... J'ai donc paramétré l'ordi pour qu'il s'allume comme un grand, ouvre FMP10 Adv et ouvre ma base.

Les deux premières étapes, je maîtrise.

La troisième... un peu moins. J'ai repris le pas à pas de Clem (d'ailleurs à l'étape 12, je dirais qu'il manque un load : "lauchctl load truc.plist").

Mon problème :

Si l'option "Afficher l'écran de démarrage rapide" est cochée, FMP s'arrête dessus quand il démarre. Ma base ne s'ouvre que si je clique sur Annuler. Pour le côté automatique on repassera...

Si cette option est décochée, FMP reste sur la fenêtre classique "ouvrir un fichier existant ou nouveau". Et là, un "annuler" ne permet pas d'ouvrir la base.

Y a t-il une subtilité cachée dans les préférences de FMP que j'aurais loupée ?

Share this post


Link to post
Share on other sites

Bon en fait, j'aurais du réfléchir un peu avant. Il suffit de régler les préférences du poste au démarrage, pas besoin de tout ça !

Share this post


Link to post
Share on other sites

Bonjour,

J'ai repris le pas à pas de Clem (d'ailleurs à l'étape 12, je dirais qu'il manque un load : "lauchctl load truc.plist").

... effectivement, j'ai omis un `load` dans la commande. Merci de l'avoir relevé.

Mon problème :

Si l'option "Afficher l'écran de démarrage rapide" est cochée, FMP s'arrête dessus quand il démarre. Ma base ne s'ouvre que si je clique sur Annuler. Pour le côté automatique on repassera...

... Dans la méthode que tu mets en oeuvre (séparation des process!), le comportement que tu relèves est on ne peu plus normal.

En effet, dans un premier temps tu demandes au Système de lancer l'application FMP, laquelle à sa préférence "Afficher l'écran de démarrage rapide" cochée ... Il est donc logique que cette fenêtre apparaisse.

Ayant demandé à "Launchd" (session Utilisateur) de surveiller le dossier temporaire de FMP, le script *.sh que "Launchd" est en charge d'exécuter décompte 1 fichier temporaire (celui de l'application) ce qui à pour effet la non interruption du script if [ $xTMPFiles_Count != 1 ]; then exit 0 ; fi.

Le script poursuit donc et ouvre le fichier déclaré dans la variable `xFMDefautFile`. Mais il ne peut pas apparaître parcequ'il est 'bloqué' par une la fenêtre de dialogue de démarrage rapide.

Seule l'action sur "Annuler" permettra de monter le fichier.

En utilisant cette méthode, dans TON cas c-à-d ouvrir un FICHIER au démarrage, il aurait fallu modifier la plist en utilisant la clé optionnelle "RunAtLoad" et ne pas lancer automatiquement FMP au démarrage.:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict>	<key>Label</key>	<string>com.clem.WatchFMsTempFolder</string>	<key>OnDemand</key>	<false/>	<key>ProgramArguments</key>	<array>		<string>/Users/...../...../fmOpenDefault.sh</string>	</array>	<key>RunAtLoad</key>	<true/></dict></plist>

et modifier le script *.sh en:

#! /bin/shxFMDefautFile="/Users/...../...../...../myFile.fp7"if [ -f "$xFMDefautFile" ]; then    open "$xFMDefautFile";fi

Le script invoquant un open (sous entendu `file') l'application ciblée ouvrira le fichier et de ce fait bypassera soit la fenêtre de dialogue de démarrage rapide soit la fenêtre d'invite de sélection de fichier.


Si cette option est décochée, FMP reste sur la fenêtre classique "ouvrir un fichier existant ou nouveau". Et là, un "annuler" ne permet pas d'ouvrir la base.

... Là aussi ce comportement est normal. Comme plus haut il est dû au fait que les process font appel a des domaines différents.

Sont d'abord exécutées les tâches "System" et seulement viennent ensuite les tâches liées à la session.

Il faut donc rester au niveau de la session utilisateur.

Voilà le pourquoi.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...