Page 1 sur 2
RECUPERATION DATES

Publié:
16 Juin 2003 à 06:58
par Marcello
BonjourJ'ai dans un champ des dates séparée par des virgules (une deux,ou X dates) je desire récuperer ces diverses dates dans une vue, une ligne par dates.Si quelqu'un a une solution...Merci
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 08:22
par Raziel
Le plus simple, c'est de dire que ton champ est multiévalué et que le séparateur de valeur est la virgule. Ensuite, dns ta vue, tu va dans la colonne qui affiche ce champ Onglet 2 et tu coches l'option "Afficher les valeurs multiples comme entrées distinctes".
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 10:16
par Marcello
J'ai déja fait cela. Ca marche dans la vue pas de pb...Ensuite je lance un agent qui doit recuperer les divers enregistrements dans la vue et les coller dans une base access.....Il me colle toujours la meme date (la premiere.....). ex: 30/06/03,01/07/03,02/07/03J'ai dans ma base 3 fois la date 30/06/03....? alors que dans la vue j'ai bien 3 lignes.
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 10:21
par Raziel
Comment récupères tu la valeur de ton champ ?Imaginons que mon champ se nomme Date. Si je fais celaprint doc.getitemvalue("Date")(0) alors je ne récupère que la première valeur du champ (dans ton cas, le 30/06/03).Même si dans ta vue, tu as trois lignes, cela ne vaux pas dire 3 documents. Tu n'as bien qu'un seul doc. Si tu veux accéder aux autres valeurs, il faut que tu ai un truc du genreprint doc.getitemvalue("Date")(0) => (30/06/03)print doc.getitemvalue("Date")(1) => (01/07/03)print doc.getitemvalue("Date")(2) => (02/07/03)
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 14:38
par Marcello
Cela fonctionne. MerciJe veux aussi passer en parametre la valeur d'un champ de ma vue a mon compteur pour l'incrémenter.Champ "TotalDays".For i=0 to XJe n'arrive pas a récuperer la valeur de "Totaldays" dans mon code.
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 15:02
par Raziel
Ou se trouve ce champ TotalDays ? Si c'est dans le document, il te suffit de faire "doc.getitemvalue("TotalDays")(0)"
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 15:47
par Marcello
Le champ se trouve dans ma vue. C'est Ok.J'ai juste un message d'erreur, car il ne trouve plus d'enregistrements.Je pars 0 pour le premier enregistrement et j'ai par exemple 5 jours(TotalDays), il ajoute les enregistrement dans access mais donne le message suivant.."Subcript out of range"Encore merci pour ton aide précieurse.
Re: RECUPERATION DATES

Publié:
16 Juin 2003 à 15:52
par Raziel
Excuse moi mais je ne comprends pas bien...C'est lorsque tu parcours ton champ Date que tu as ce message ?Peux tu nous envoyer le code de sorte que l'on y regarde ?
Re: RECUPERATION DATES

Publié:
17 Juin 2003 à 05:57
par Marcello
Voici le codeSub Initialize Dim con As New ODBCConnection Dim qry As New ODBCQuery Dim result As New ODBCResultSet Dim workspace As New NotesUIWorkspace Dim uidoc As NotesUIDocument Dim x As Long Set uidoc = workspace.CurrentDocument Set qry.Connection = con Set result.Query = qry Set session = New NotesSession Set db = session.CurrentDatabase Set view = db.GetView("ESSAI") con.ConnectTo("listepersonnel") qry.SQL = "SELECT * FROM MVT" result.Execute Set doc = view.GetFirstDocument While Not(doc Is Nothing) If result.IsValueNull(uidoc.CurrentField) Then For x = 0 To doc.getitemvalue("TotalDays")(0) result.AddRow Call result.SetValue(1,doc.NomDemandeur(0)) Call result.SetValue(2,doc.GetItemValue("DURATION")(x)) Call result.SetValue(3,doc.MAT(0)) result.UpdateRow Next x Set doc = view.GetNextDocument(doc) Else Messagebox("Pas de Chance") End If Wend result.Close(DB_CLOSE) con.Disconnect End Sub
Re: RECUPERATION DATES

Publié:
17 Juin 2003 à 08:21
par Raziel
Salut, à mon avis, le message provient de cette ligneCall result.SetValue(2,doc.GetItemValue("DURATION")(x))Comme tu fais une boucle est que cette ligne dépend de l'indice de cette boucle (x dans ton cas) il faut que tu sois sûr de ne jamais dépasser l'indice max du tableau.Ex :Mon champ Duration est un champ multival (et donc un tableau) composé de 10 valeurs (donc le tableau est numéroté de 0 à 9).Si, dans ma boucle, TotalDays vaut 10, cela veux dire que je fait faire 11 tours de boucle (0 à 11). Or, lors de cette onzième boucle, je fais dépassé l'indice max du tableau.Lance le debugger (Fichier/Outils/Mettre au point le lotusscript) et vois exactement où est le soucis.
Re: RECUPERATION DATES

Publié:
17 Juin 2003 à 08:23
par Marcello
Merci de ses infos.A +
Re: RECUPERATION DATES

Publié:
18 Juin 2003 à 08:55
par Marcello
Encore moiJ'ai dans la vue a exporter un champ "TYPECP", il contient : Congés payés ou Repos compensateur.....lors de l'exportation je recupére les valeurs..Si je crée une formule dans la vue qui reprend le champ TYPECP pour afficher CP, RC lors de l'exportation le champ de ma base est vide ???Pourquoi ?
Re: RECUPERATION DATES

Publié:
18 Juin 2003 à 09:01
par Raziel
Salut,Est ce que CP et RM sont des champs qui se touve physiquement dans le doc ou est ce un champ qui est obtenu par calcul lors de la l'affichage de la vue ?
Re: RECUPERATION DATES

Publié:
18 Juin 2003 à 09:11
par Marcello
RC et CP sont calculés dans la vue...
Re: RECUPERATION DATES

Publié:
18 Juin 2003 à 09:20
par Raziel
Et est ce que tu utilise l'export standrad de Notes (Fichier Exporté) ou est ce que tu as un code qui s'en occupe.Si c'est ton code qui fait le traitement et que tu te base sur la notesdocument pour le faire, alors il est tout à fait normal que tu ne retrouve pas ces valeurs lors de ton export.Si c'est l'export standard de notes, il ne me semble pas qu'il puisse exporté des valeurs calculé dans une vue (à vérifier car je n'utilise jamais ce mode d'extraction)