Page 1 sur 1

[Résolu]parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:05
par Jérôme-F
Bonjour,

j'ai un champ multi valeur avec nouvelle ligne comme séparateur.
Je souhaiterai travailler sur chaque élement du champ.
je n'arrive pas a parser les valeurs lorsque mon séprateur est une nouvelle ligne

Merci d'avance de vos réponses

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:10
par Michael DELIQUE
salut

en quelle language ?

si c'est du LotusScript ou du Java pas besoin le champ est un array il suffut de boucler sur chaque valeur

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:15
par Jérôme-F
Bonjour,

c'est du lotuscript


j'ai bien fait un :
forall z in mon champ
je joue avec les valeurs de z
end forall

Mais on me renvoi une erreur type mismatch, et il semble que mon champ ne soit pas vu comme un array (isarray renvoie false)

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:23
par Michael DELIQUE
je crois savoir pourquoi, montre moi ton code

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:27
par Jérôme-F
Function frns (fournisseur,id,acheteur,fichier,destinataires As variant)

Dim session As New NotesSession
Dim db As NotesDatabase
Dim db_names As NotesDatabase
Dim db_ach As NotesDatabase
Dim doc_mail As NotesDocument
Dim doc_names As notesdocument
Dim doc_conf_frns As NotesDocument
Dim doc_ach As NotesDocument
Dim view_names As NotesView
'dim view_conf_frns As notesview
Dim object As NotesEmbeddedObject
Dim fullnames_ach As NotesName
Dim fullnames_ach_s As String
Dim tab_nom As Variant

Dim acheteur_dd As string
acheteur_dd= acheteur+"/DELTADORE"
Set fullnames_ach=session.Createname(acheteur_dd)
fullnames_ach_s=fullnames_ach.Canonical



ForAll z In destinataires
MessageBox z
End ForAll

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:43
par Michael DELIQUE
re,

ton code est incomplet, ou est instancié ta variable destinataire ?

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 10:55
par Jérôme-F
Oui désolé,

elle est instancié depuis le code d'un bouton
qui donne pour la variable destinataires

destinataires = uidoc.FieldGetText("Conf_frns_destinataires")
ensuite j'appelle ma fonction frns avec destinataires comme variable
Merci beaucoup de ton aide

Jérôme

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 11:14
par roubech
j'allais dire : vérifie les propriétés du doc pour voir le contenu de ton champs et s'il contient bien un tableau
Mais avec ta dernière réponse, c'est clair : tu utilises la méthode FieldGetText qui, comme son nom l'indique, te renvoi une chaine de texte et pas un tableau

Re: parser champ avec nouvelle ligne comme séparateur

MessagePublié: 07 Mai 2012 à 11:41
par Michael DELIQUE
re,

dans ton cas essais ça

destinataires = split(uidoc.FieldGetText("Conf_frns_destinataires"),chr(10))
ou

destinataires = split(uidoc.FieldGetText("Conf_frns_destinataires"),chr(13))

et puis il faut faire la différence entre le séparateur pour l'affichage et celui poru le stockage

Re: [Résolu]parser champ avec nouvelle ligne comme séparateu

MessagePublié: 07 Mai 2012 à 12:34
par Jérôme-F
Merci beaucoup c'est e qu'il me fallait.