maj champs dependants

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

maj champs dependants

Messagepar Laly » 16 Sep 2002 à 15:40

Bonjour,J'ai cree deux champs Date Debut et Date Fin et un champ Nb Jours calcule qui calcule le nombre de jours separant les deux premieres dates.Comment faire pour que le champ Nb Jours se recalcule automatiquement (cad sans presser F9) lorsque la date de debut/fin change.Merci pour vos reponse,Laly.
Laly
 

Re: maj champs dependants

Messagepar Virginie » 17 Sep 2002 à 13:45

Tout dépend à quel moment sont modifier les champs de dates.Le mieux est d'intégrer directement le calcul en LotusScript soit à l'ouverture du document (PosteOpen) ou à l'enregistrement (QuerySave) avec la notion de refresh des champs calculés qui de mémoire doit être une spécificité du NotesUIDocument.Ou il y a encore la possibilité de faire un agent qui tourne tous les matins et qui recalcule automatiquement.Mais tout dépend du rythme des changements de dates.
Virginie
 

Re: maj champs dependants

Messagepar Laly » 17 Sep 2002 à 14:24

Excuse moi, je m'etais mal exprime.En fait, c'est dans un masque, j'ai mes deux champs dates dans une presentation de sorte que j'ai le petit bouton a cote des champs pour selectionner une date dans la popup.Quand je selectionne une date, le champ qui contient le nb de jours separant ces deux dates, ne se met pas a jour, je dois faire F9. Pourtant, j'ai coche la propriete du mask "maj automatique des champs".Cordialement,Laly.
Laly
 

Re: maj champs dependants

Messagepar Virginie » 17 Sep 2002 à 15:03

Dans ce cas, il faut que tu te serves de l'objet "Exiting" de tes champs Date.Il faut que tu recalcules automatiquement en LotusScript ton champ dans lequel apparait la valuer Jour.je te donne ci-dessous un exemple : Sub Exiting(Source As Field) Dim ws As New notesUIWorkspace Dim uidoc As notesUIdocument Dim doc As notesdocument Dim Date1 As NotesDateTime Dim Date2 As NotesDateTime Dim diff As Long Set uidoc = ws.currentdocument Set doc = uidoc.Document If doc.Date2(0) <> "" Then Set Date1 = New NotesDateTime( doc.Date1(0) ) Set Date2 = New NotesDateTime( doc.Date2(0) ) diff = Date2.TimeDifference( Date1 ) doc.calcul = diff/3600/24 End IfEnd Sub
Virginie
 


Retour vers Développement

cron