Bonjour,
Voici ce que je cherche à faire :
J'ai un agenda avec plusieurs RDV. Je souhaite les synchroniser dans Outlook. S'il existe pas, un nouveau RDV est crée sous Outlook et s'il existe, le RDV est modifié.
J'ai une requête qui me donne tout les rendez-vous de mon agenda perso. Je souhaiterai testé si chaque RDV se trouve dans outlook ou pas, et faire le traitement associé (ajout ou modification)
Voici mon code (a savoir que pour l'instant je traite les deux cas à part )
Ajout :
Modification
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 // Ouvre une session GL_SYNC_IDSession = EmailOuvreSessionOutlook("") // Initialisation des paramètres de la requête permettant d'obtenir les RDV d'une personne REQ_AffichageRDV.P_IdUtilisateur=GL_UtilID REQ_AffichageRDV.P_DateDu=PremierJourDuMois(DateDuJour()) REQ_AffichageRDV.P_DateDu=DernierJourDuMois(DateDuJour()) HExécuteRequête(REQ_AffichageRDV,hRequêteInterruptible) POUR TOUT REQ_AffichageRDV // On remplit le RDV dans Outlook RemplirRDVOutlook() // Ajout du rendez-vous dans Outlook SI PAS RendezVousAjoute(GL_SYNC_IDSession) = Vrai ALORS Erreur("Erreur lors de l'ajout", ErreurInfo(errMessage)) SINON // Recherche du RDV dans la table ACTIOn et insertion de son numéro OUTLOOKID HLitRecherche(Action,IDAction,REQ_AffichageRDV.IDAction) SI PAS HTrouve(Action) ALORS Erreur("RDV Introuvable") SINON // On insére l'idoutlook du rendez-vous dans la table action Action.OutlookID=mRendezVous.ID HModifie(Action) SI PAS HModifie(Action) ALORS Erreur("Action non modifiée",ErreurInfo(errMessage)) FIN FIN FIN FIN
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 // Ouvre une session GL_SYNC_IDSession = EmailOuvreSessionOutlook("") // Initialisation des paramètres de la requête permettant d'obtenir les RDV d'une personne REQ_AffichageRDV.P_IdUtilisateur=GL_UtilID REQ_AffichageRDV.P_DateDu=PremierJourDuMois(DateDuJour()) REQ_AffichageRDV.P_DateDu=DernierJourDuMois(DateDuJour()) HExécuteRequête(REQ_AffichageRDV,hRequêteInterruptible) HLitPremier(REQ_AffichageRDV) SI HTrouve() ALORS RendezVousPremier(GL_SYNC_IDSession) TANTQUE mRendezVous.EnDehors=Faux SI mRendezVous.ID = REQ_AffichageRDV.OutlookID ALORS // Remplissage du RDV RemplirRDVOutlook() RendezVousModifie(GL_SYNC_IDSession) SORTIR FIN RendezVousSuivant(GL_SYNC_IDSession) FIN HLitSuivant(REQ_AffichageRDV) FIN
Pour l'ajout, cela fonctionne plutôt bien, par contre, pour la modification, j'arrive à modifier le premier RDV, mais pas les autres..
Une idée ?
Merci
Partager