Bonsoir,
je continue lentement mon apprentissage d'Applescript, et je suis en train de faire un script qui crée des évènements iCal à partir d'un fichier texte contenant un planning (mon planning du boulot !). La lecture du fichier texte s'effectue sans aucun problème... mais la création de l'évènement ical bloque car je lui transmet une date sous forme de chaine ; l'instruction que j'emploie est la suivante :
tell application "iCal"
tell calendar "Travail"
make new event at end with properties {description:descriptEv, summary:ObjetEv, location:LieuEv, start date:dateDebEvent, end date:dateFinEvent}
end tell
end tell
Toutes les variables DescriptEv, ObjetEv, LieuEv, dateDebEvent et dateFinEvent sont des chaines de caractères définies plus haut dans le script et validées par des display dialog (dateDebEvent vaut "2010-12-21 06:00:00" et dateFinEvent vaut "2010-12-21 07:30:00")
Comme celà plantait, j'ai essayé de créer une date, et de lui modifier les propriétés "date string" et "time string" de façon à récuperer les bonnes dates en format date, mais celà plante encore (message saturation de pile).
set DateDeb to my TransfoDate(DateDebEvent)
set DateFin to my TransfoDate(DateFinEvent)
.
.
.
on TransfoDate(ChaineDate)
set DateLoc to text 1 thru 10 of ChaineDate
set HeureLoc to text 11 thru end of ChaineDate
set DateTransfo to current date
set date string of DateTransfo to DateLoc
set time string of DateTransfo to HeureLoc
return DateTransfo
end TransfoDate
Quelqu'un pourrait-il me dire ce qui cloche ?
Question subsidiaire : existe-t-il une fonction qui permet d'éliminer les espaces en début ou en fin de chaine (un peu comme le "trim" de real basic?)
Merci d'avance
:zen:
je continue lentement mon apprentissage d'Applescript, et je suis en train de faire un script qui crée des évènements iCal à partir d'un fichier texte contenant un planning (mon planning du boulot !). La lecture du fichier texte s'effectue sans aucun problème... mais la création de l'évènement ical bloque car je lui transmet une date sous forme de chaine ; l'instruction que j'emploie est la suivante :
tell application "iCal"
tell calendar "Travail"
make new event at end with properties {description:descriptEv, summary:ObjetEv, location:LieuEv, start date:dateDebEvent, end date:dateFinEvent}
end tell
end tell
Toutes les variables DescriptEv, ObjetEv, LieuEv, dateDebEvent et dateFinEvent sont des chaines de caractères définies plus haut dans le script et validées par des display dialog (dateDebEvent vaut "2010-12-21 06:00:00" et dateFinEvent vaut "2010-12-21 07:30:00")
Comme celà plantait, j'ai essayé de créer une date, et de lui modifier les propriétés "date string" et "time string" de façon à récuperer les bonnes dates en format date, mais celà plante encore (message saturation de pile).
set DateDeb to my TransfoDate(DateDebEvent)
set DateFin to my TransfoDate(DateFinEvent)
.
.
.
on TransfoDate(ChaineDate)
set DateLoc to text 1 thru 10 of ChaineDate
set HeureLoc to text 11 thru end of ChaineDate
set DateTransfo to current date
set date string of DateTransfo to DateLoc
set time string of DateTransfo to HeureLoc
return DateTransfo
end TransfoDate
Quelqu'un pourrait-il me dire ce qui cloche ?
Question subsidiaire : existe-t-il une fonction qui permet d'éliminer les espaces en début ou en fin de chaine (un peu comme le "trim" de real basic?)
Merci d'avance
:zen: