Aller au contenu


Photo
- - - - -

Fmp, Script Ical


  • Please log in to reply
62 réponses à ce sujet

#41 accostages

accostages
  • Membres
  • PipPip
  • 74 messages
  • Genre :Homme
  • Lieu :PARIS - FRANCE
  • Intérêts :Tout ce qui tourne autour de mon appli FileMaker et de son intégration avec CIEL Gestino et CIEL compta (ça c'est pou mes centres d'intérêts boulot !).
  • FM : FMS11 FMA10 FM11
  • OS : OSX 10.6.8


Posté 14 janvier 2009 - 15:24

super help à nouveau, ça finit par m'obseder
(myEventList's item 1) as calendar, ça donne une erreur
Impossible de transformer «class wrev» 39 of «class wres» 19 of application "iCal" en type «class wres»

a défaut de trouver une solution à mon message précédent, y a t il un moyen d'intercepter sous forme de texte le message
d'erreur, il y a dedans le foutu 19 que je veux récuperer ( c'est le numéro de l'agenda)
Xavier FOURNERET 0660670336

#42 Clem

Clem
  • Membres
  • PipPipPipPipPipPipPipPip
  • 2 995 messages
  • Genre :Homme
  • Lieu :Groland
  • FM : FMPA 12.0.2, iOS
  • OS : OSX 10.6.8 | XP pro SP3 | Seven


Posté 14 janvier 2009 - 16:11

...bjr,

tu cherches précisément à faire ou a obtenir quoi ?
tes messages sont tellement décousus et si pauvres d'exemples (et de retours de résultats AS) qu'il est bien difficile de t'aiguiller.

et puis, ne dépasse-t-on pas avec ta question le cadre initial du sujet ? Ne serait-il pas plus préférable d'ouvrir un nouveau sujet ?
Image envoyée

Clement Hoffmann aka clem
Certified "Do-it-yourself" developer.

#43 accostages

accostages
  • Membres
  • PipPip
  • 74 messages
  • Genre :Homme
  • Lieu :PARIS - FRANCE
  • Intérêts :Tout ce qui tourne autour de mon appli FileMaker et de son intégration avec CIEL Gestino et CIEL compta (ça c'est pou mes centres d'intérêts boulot !).
  • FM : FMS11 FMA10 FM11
  • OS : OSX 10.6.8


Posté 14 janvier 2009 - 16:37

Dans fileMaker j'ai une base d'event crée avec une cle unique.
Avec ton script modifié, j'arrive très bien à récupérer pour un event donné toutes les modification de ses propriétés ( liées à des manip dans ical sur cet event)
( par rapport à ton script myEventList ne contient par construction qu'un seul event )
dans l'exemple donné précédement myEventList contient {event 39 of calendar 19 of application "iCal"}
l'event associé de myEventList item 1 renvoie event 39 dont je peux récupérer les propriétes.

Par contre je voudrais aussi récupérer que l'event aurait été déplacé dans un autre calendrier
(dans la pratique l'event généré par File Maker va dans un calendrier A Faire, et quand l'utilisteur de ical a traité le sujet il le déplace dans un calendrier Fait

Et la je bloque.

Je n'arrive pas à récupérer le calendrier d'un event défini, je vois bien que c'est le 19, et que la propriété de "calendrier 19" est le bon truc.
MAis je n'arrive pas à récupérer l'info
ni en passant une commande sur l'event ( event 19 ici)
Ni en récupérant sous forme texte MyEventList
( c'est là que si je passe la commande log ((myEventList's item 1) as string) que j'ai le message
Impossible de transformer «class wrev» 39 of «class wres» 19 of application "iCal" en type «class wres»
( pour info "class wres" tapé dans script editor ça compile en agenda)
si je fais log (myEventList's item 1) je ne récupère que event 39

c'est plus clair

Ni en essayant de récupérer sous forme texte l'erreur ( je sais d'ailleurs pas si c'est possible)
Xavier FOURNERET 0660670336

#44 Trias

Trias
  • Membres
  • 1 messages
  • Genre :Homme
  • Lieu :Paris
  • FM : FMP8
  • OS : OSX.6


Posté 19 juillet 2010 - 23:16

.../...
Et la je bloque.

Je n'arrive pas à récupérer le calendrier d'un event défini, je vois bien que c'est le 19, et que la propriété de "calendrier 19" est le bon truc.
MAis je n'arrive pas à récupérer l'info
ni en passant une commande sur l'event ( event 19 ici)
Ni en récupérant sous forme texte MyEventList
( c'est là que si je passe la commande log ((myEventList's item 1) as string) que j'ai le message
Impossible de transformer «class wrev» 39 of «class wres» 19 of application "iCal" en type «class wres»
( pour info "class wres" tapé dans script editor ça compile en agenda)
si je fais log (myEventList's item 1) je ne récupère que event 39

c'est plus clair

Ni en essayant de récupérer sous forme texte l'erreur ( je sais d'ailleurs pas si c'est possible)


J'arrive sur le même problème.
Tu as pu progresser depuis ?
D'avance merci

#45 accostages

accostages
  • Membres
  • PipPip
  • 74 messages
  • Genre :Homme
  • Lieu :PARIS - FRANCE
  • Intérêts :Tout ce qui tourne autour de mon appli FileMaker et de son intégration avec CIEL Gestino et CIEL compta (ça c'est pou mes centres d'intérêts boulot !).
  • FM : FMS11 FMA10 FM11
  • OS : OSX 10.6.8


Posté 20 juillet 2010 - 10:04

c'était il y a longtemps. La je suis super à la bourre et je n'ai pas le temps de me replonger dans ma question !!
Je crois que le but était de récupérer le nom du nouveau calendrier.

Possible que le debut de ce truc réponde à la question ? Apparemment à la fin, j'alimente bien file maker pour le mettre à jour après une manip dans ical.
Désolé de pas avoir le temps d'approfondir .
Bon courage

"-- L'identifiant ne doit ici contenir aucun espace et n'est constitué que de caractères alphanumériques."& ¶ &
"-- pourquoi pas besoin de tell current record ? par defaut ?"& ¶ &
"set myDescriptionRequest to \""&CampagneRecouvDetail2::Pointeur&"\" "& ¶ &

"---------------------------------------------------------------------- Execution dans iCal !" & ¶ &
"tell application \"Ical\""&Si(MotsDebut ( $remote;1)=Obtenir ( NomUtilisateur );"" ; " of machine \"eppc://"&$remote&"\"")&¶ &
/* $remote contient le script pour un apple event distant, généré par script pour la session*/

" -- Initialisation des variables liste"& ¶ &
" set FilterByCalendar to {}"& ¶ &
" set AllCalendars to every calendar"& ¶ &

" -- Requête menée sur la DESCRIPTION de tous les EVENT de l'ensemble des CALENDRIERS."& ¶ &
" set FoundByCalendar to every event of every calendar whose description contains myDescriptionRequest"& ¶ &

" --On recupere le nom de l'agenda dans v3 "& ¶ &
" repeat with i from 1 to (count FoundByCalendar)"& ¶ &
" if FoundByCalendar's item i is not missing value then exit repeat"& ¶ &
" end repeat"& ¶ &
" set v1 to name of calendar i"& ¶ &
" set calendarprop to properties of calendar i"& ¶ &
" if description of calendarprop is missing value then"& ¶ &
" set v2 to \"non défini\""& ¶ &
" else"& ¶ &
" set v2 to description of calendar i"& ¶ &
" end if"& ¶ &

" -- Reduction du résultat à toutes les valeurs non vides. "& ¶ &
" repeat with i from 1 to (count FoundByCalendar)"& ¶ &
" if FoundByCalendar's item i is not missing value then"& ¶ &
" set FilterByCalendar's end to FoundByCalendar's item i"& ¶ &
" end if"& ¶ &
" end repeat"& ¶ &

" -- Extraction des données par Event"& ¶ &

" set thisEvent to properties of FilterByCalendar's item 1"& ¶ &
" tell thisEvent"& ¶ &
" set v3 to its uid"& ¶ &
" set v4 to its description"& ¶ &
" tell its start date"& ¶ &
" set v5 to (it's day & \"/\" & (it's month as integer) & \"/\" & it's year) as string"& ¶ &
" set v6 to last word of (it as string)"& ¶ &
" --v6 c'est la date v5 l'heure "& ¶ &
" end tell"& ¶ &

" tell its end date"& ¶ &
" set v7 to (it's day & \"/\" & (it's month as integer) & \"/\" & it's year) as string"& ¶ &
" set v8 to last word of (it as string)"& ¶ &
" end tell"& ¶ &

" end tell"& ¶ &
"end tell"& ¶ &

"--mise à jour dans FileMaker"& ¶ &
"set cell \"CampagneRecouvDetail2::IcalCalendar\" of current record to v1"& ¶ &
"set cell \"CampagneRecouvDetail2::IcalCalendarDescription\" of current record to v2"& ¶ &
"set cell \"CampagneRecouvDetail2::iCal_id\" of current record to v3"& ¶ &
"set cell \"CampagneRecouvDetail2::DescriptionDina\" of current record to v4"& ¶ &
"set cell \"CampagneRecouvDetail2::IcalDateDebut\" of current record to v5"& ¶ &
"set cell \"CampagneRecouvDetail2::IcalHeureDebut\" of current record to v6"& ¶ &
"set cell \"CampagneRecouvDetail2::IcalDateFin\" of current record to v7"& ¶ &
"set cell \"CampagneRecouvDetail2::IcalHeureFin\" of current record to v8"
Xavier FOURNERET 0660670336

#46 ocverclock

ocverclock
  • Membres
  • Pip
  • 25 messages
  • Genre :Homme
  • Lieu :Caen
  • Intérêts :Musicien
  • FM Conférence : Honfleur 2005
  • FM : FMP10A
  • OS : OSX.5


Posté 10 février 2011 - 18:09

ce script me plais bien, mais question....

peux ton appliquer des $variable, a la place des rubriques ?

Image envoyée

c'est plus pratique, quand il y a differentes tables

merci qui peux



#47 Clem

Clem
  • Membres
  • PipPipPipPipPipPipPipPip
  • 2 995 messages
  • Genre :Homme
  • Lieu :Groland
  • FM : FMPA 12.0.2, iOS
  • OS : OSX 10.6.8 | XP pro SP3 | Seven


Posté 10 février 2011 - 18:47

Bonjour

On peut bien évidemment faire usage de variables en lieu et place de rubriques...
Mais ne sachant de quel script tu parles, je prendrais en exemple celui donné dans le fichier iCal_AddEvent.fp7 du post #7

Définir variable [$cmd; Valeur:
"set myCal to " & $$cal & "¶
set myEvent to " & $$varEvent & "¶
set myDescription to \"FileMaker Reference:\" & " & $$varEventID & " & return & return & " & $$varEventDescription & "¶
--¶
set mySDate to " & $$varDateStart & "¶
set mySTime to " & $$varTimeStart & "¶
--¶
set myEDate to " & $$varDateEnd & "¶
set myETime to " & $$varTimeEnd & "¶
--¶
set myISAllDay to " & $$varAllDay & " as number as boolean¶
---------------------------------------------------------------------- Coercion en «class date» de la Date de Début¶
-- ... à partir de là plus aucune rubrique FMP n'est appelée pour assigner des variables AppleScript
-- ... excepté la dernière ligne du script où une rubrique est définie par le script. Mais là, pas de variable possible.

]


Clem
Image envoyée

Clement Hoffmann aka clem
Certified "Do-it-yourself" developer.

#48 ocverclock

ocverclock
  • Membres
  • Pip
  • 25 messages
  • Genre :Homme
  • Lieu :Caen
  • Intérêts :Musicien
  • FM Conférence : Honfleur 2005
  • FM : FMP10A
  • OS : OSX.5


Posté 10 février 2011 - 18:58

merci clem. Image envoyéeImage envoyée

#49 ocverclock

ocverclock
  • Membres
  • Pip
  • 25 messages
  • Genre :Homme
  • Lieu :Caen
  • Intérêts :Musicien
  • FM Conférence : Honfleur 2005
  • FM : FMP10A
  • OS : OSX.5


Posté 11 février 2011 - 18:47

Okay c'est super ça marche super, mais puis--je abuser encore ?

mon event_id, je n'arrive pas a le mettre dans une variable.

S'il vous plait. Image envoyée

#50 Clem

Clem
  • Membres
  • PipPipPipPipPipPipPipPip
  • 2 995 messages
  • Genre :Homme
  • Lieu :Groland
  • FM : FMPA 12.0.2, iOS
  • OS : OSX 10.6.8 | XP pro SP3 | Seven


Posté 11 février 2011 - 20:27

...mon event_id, je n'arrive pas a le mettre dans une variable.

... je pense que tu n'a pas lu le peu de commentaires que j'ai mis dans l'exemple plus haut.
En l'occurrence la toute dernière ligne...

-- ... excepté la dernière ligne du script où une rubrique est définie par le script. Mais là, pas de variable possible.


En clair, il n'est pas possible (à ma connaissance) de définir une variable FileMaker avec la valeur d'une variable ou d'un résultat AppleScript.
La seule méthode de contournement que je connaisse et que j'utilise consiste à remplir une globale FMP et de transférer subito pronto la valeur de cette globale dans une variable $locale ou $$globale.

En plus clair:
#
Definir variable[$cmd; Valeur:
...
---------------------------------------------------------------------- retour de l'id de l'event dans fmp¶
set cell \"OccurrenceTableQuiDoitComporterAuMoinsUnEnregistrement::taRubriqueGlobale\" of layout \"tonLayoutSurLequelleSeTrouveLaGlobale\" to event_id"
]
Exécuter AppleScript[$cmd]
Définir variable [$taVariable; Valeur:  OccurrenceTableQuiDoitComporterAuMoinsUnEnregistrement::taRubriqueGlobale]
#... suite script

Clem[Thanks God it's Friday]
Image envoyée

Clement Hoffmann aka clem
Certified "Do-it-yourself" developer.

#51 ocverclock

ocverclock
  • Membres
  • Pip
  • 25 messages
  • Genre :Homme
  • Lieu :Caen
  • Intérêts :Musicien
  • FM Conférence : Honfleur 2005
  • FM : FMP10A
  • OS : OSX.5


Posté 12 février 2011 - 07:17

malin, je vais exploiter ce genre d'astuce, en envoyaient bien dans une global, et definir ma variable dans filemaker, puisque c'est dans un souci de stockage sur la table.

Merci beaucoup clem.

Image envoyée

#52 Pask

Pask
  • Membres
  • 11 messages
  • Genre :Homme
  • Lieu :Suisse
  • FM : FMP 11
  • OS : Mac OS X


Posté 02 mai 2011 - 16:17

Cher Clem, ton script est vraiment chouette, exactement ce que je cherchais également. Par contre les événements créés dans iCal par ce biais disparaissent en quittant iCal, du coup ça rend la chose beaucoup moins pratique. As-tu un conseil pour que les événements créés restent dans le calendrier?

#53 latypik

latypik
  • Membres
  • 5 messages
  • Genre :Homme
  • Lieu :Nanjing


Posté 10 août 2012 - 14:21

Bonjour à tous,

Je me permets de relancer cette discussion avec une question très bête (je suis débutant sur FM12)... J'ai une base de données clients avec facturation déjà existante, et je voudrais ajouter le bouton "iCal - Make new event" dans l'un de mes modèles. Comment dois-je faire ?

Merci pour votre aide envers un newbe comme moi... :bye:

#54 Clem

Clem
  • Membres
  • PipPipPipPipPipPipPipPip
  • 2 995 messages
  • Genre :Homme
  • Lieu :Groland
  • FM : FMPA 12.0.2, iOS
  • OS : OSX 10.6.8 | XP pro SP3 | Seven


Posté 16 août 2012 - 08:09

Bonjour,

Tout simplement en recopiant le script prpoposé dans le post #7 et adapter les noms et types de rubriques :
  • TASKS::Calendrier // le nom du calendrier iCal dans lequel l'évènement sera ajouté. Si le calendrier n'existe pas, il est alors créé.
  • TASKS::Evenement // le nom donné à l'évènement
  • TASKS::zkp_ID_Event // (nombre) l'identifiant unique de l'enregistrement FileMaker qui est ajouté dans le champ "remarque" de l'évènement.
  • TASKS::Event_Description // la description de l'évènement
  • TASKS::Event_DateDebut // la date de début de l'évènement
  • TASKS::Event_HeureDebut // l'heure de début de …
  • TASKS::Event_DateFin // la date de fin de …
  • TASKS::Event_HeureFin // l'heure de fin de …
  • TASKS::Journalier // (nombre) l'évènement est-il journalier
à ton en environnement.
Image envoyée

Clement Hoffmann aka clem
Certified "Do-it-yourself" developer.

#55 latypik

latypik
  • Membres
  • 5 messages
  • Genre :Homme
  • Lieu :Nanjing


Posté 22 août 2012 - 11:52

Bonjour,

Merci Clem pour ces infos qui me seront très utiles ! Mais une fois que j'ai ouvert iCal_AddEvent.fp7 dans FMP12, comment dois-je faire pour avoir accès au script et le copier ?

Dans "Gérer les scripts" il y a "on open" et "iCal - schedule new event" mais si je les ouvre il n'y a pas grand chose dedans...

Merci encore pour le coup de main. :bien:

Julien

#56 latypik

latypik
  • Membres
  • 5 messages
  • Genre :Homme
  • Lieu :Nanjing


Posté 20 septembre 2012 - 02:18

Personne pour m'aider sur ce coup là ? :bye:

#57 alnoe

alnoe
  • Membres
  • PipPipPip
  • 114 messages
  • Genre :Homme
  • Lieu :Au milieu du parc
  • FM : FMA 11 - FMA 12
  • OS : MacOS 10.6


Posté 20 septembre 2012 - 08:50

Tout est là il me semble.

Dans la variable $cmd il y a tout un code applescript qui est exécuté dans l'ordre suivant.

Image envoyée

#58 latypik

latypik
  • Membres
  • 5 messages
  • Genre :Homme
  • Lieu :Nanjing


Posté 27 septembre 2012 - 13:09

Super ! Je viens de trouver grâce ta copie d'écran ! Je m'attelle à faire correspondre les champs en espérant que ça ne me donne pas trop de fil à retordre...

Merci pour tout, et vive ce forum génial ! :bien:

#59 dustin

dustin
  • Membres
  • 14 messages
  • Genre :Homme
  • Lieu :Charleroi, province du Hainaut, Belgique
  • Intérêts :La photographie ancienne, c'est à dire les procédés dits alternatifs.
  • FM : FM9


Posté 02 janvier 2013 - 00:40

Bonjour,

 

Mes meilleurs voeux à toutes et à tous.

 

En parcourant le forum je découvre le fichier "iCal_AddEvent.fp7 "qui m'intéresse fortement. Lors de son exécution ical renvoit une erreur. J'ai essayé de modifier le script  comme indiqué, mais là ça depasse toutes mes maigres compétences. Serait-il possible que quelqu'un me modifie ce fichier? Je suis sous FM 12   et osx montain Lion 

 

en vous remerciant d'avance



#60 Olivier.b

Olivier.b
  • Membres
  • PipPipPipPipPip
  • 596 messages
  • Genre :Homme
  • Lieu :St Lambert (78)
  • FM : FM12, FMS 12, FM FM go ,
  • OS : OSX 10.7.8 - Mac OSX Serveur


Posté 28 mars 2013 - 08:34

Je reviens sur ce post... 

 

J'ai transposé son script (la première version car la deuxième créé des task dont je n'ai pas besoin) dans ma base et remplacer les rubriques TASK par mes rubriques date, heure .

 

J'ai une erreur -1728...

 

Avez-vous une idée ?

 

[MAJ] je précise que le modèle de Clem fonctionne très bien.


Olivier bedouelle
http://www.vertdeco.fr

FM12 FMS12 FMAdvanced  12
Réseau 18 postes Mac os 10.8; fmGo.