Page 1 sur 1

Vérifier champ RichText avant validation

MessagePublié: 06 Juin 2012 à 09:21
par Thelonious
Bonjour à tous,

Dans un masque de saisie ( client Notes lourd 8.5 ), j'ai un champ de texte riche dont je dois vérifier le contenu avant de sauvegarder ma fiche.
Dans ce champ, on peut avoir 2 types de saisies :
- Un fichier attaché
- Une ou plusieurs lignes de texte ( faisant office de commentaire )

Pour vérifier qu'il y a bien un fichier, j'ai testé le code ci-après : viewtopic.php?f=48&t=24117 qui fonctionne très bien.
Par contre, si à la place du fichier je mets une ligne de texte, le contrôle attend un fichier et donc ne sauvegarde pas la fiche ...

Y a-t-il un moyen simple de vérifier les deux ( texte et/ou fichier ) ou faut-il passer par un champ texte supplémentaire réservé à ce commentaire ?

Merci pour votre aide.

Re: Vérifier champ RichText avant validation

MessagePublié: 06 Juin 2012 à 09:31
par Michael DELIQUE
salut

avant ou apres le controle tu test s'il ya du texte dans ton champ...

via un NotesRichTextItem.text

Re: Vérifier champ RichText avant validation

MessagePublié: 06 Juin 2012 à 10:28
par Thelonious
Merci Michael, je vais essayer.

Re: Vérifier champ RichText avant validation

MessagePublié: 07 Juin 2012 à 11:00
par LSong
si tu cherche a vérifier une piece jointe

dans le NotesUiDocument tu as une fonction refresh qui prend un argument

Call notesUIDocument.Refresh( [ IncludeRichTextItems ] )

utiliser avant il te permet de voir les attachements sans avoir a sauvegarder le document

Re: Vérifier champ RichText avant validation

MessagePublié: 08 Juin 2012 à 14:19
par Thelonious
LSong a écrit:si tu cherche a vérifier une piece jointe

dans le NotesUiDocument tu as une fonction refresh qui prend un argument

Call notesUIDocument.Refresh( [ IncludeRichTextItems ] )

utiliser avant il te permet de voir les attachements sans avoir a sauvegarder le document

Merci pour l'astuce !

Re: Vérifier champ RichText avant validation

MessagePublié: 21 Nov 2012 à 10:10
par Thelonious
Bonjour à tous,

Je fais un petit "up" de ce sujet car j'ai un petit effet de bord assez gênant ...

Dans l'ensemble, tout fonctionne bien :
- On vérifie que le champ désiré a ou non un ou plusieurs fichiers attachés et/ou du texte
- Si le champ est vide, on renvoie un message d'erreur
- Si le champ n'est pas vide, on envoie un mail à un utilisateur.

C'est sur ce dernier point que j'ai un problème : si le champ contient un ou plusieurs fichiers attachés, ceux-ci sont envoyés
( attachés automatiquement ) dans le mail vers l'utilisateur ( alors que c'est juste un mail d'information ).
Est-ce qu'il y a un moyen d'éviter que les fichiers soient attachés dans ce mail ?

Nous utilisons une version 8.3 de Lotus Notes.
L'application à laquelle se rapporte ce bug est développée pour client lourd.

Merci pour vos lumières !

Re: Vérifier champ RichText avant validation

MessagePublié: 21 Nov 2012 à 11:19
par Michael DELIQUE
salut

tout dépend comment tu construit ton mail...

Re: Vérifier champ RichText avant validation

MessagePublié: 21 Nov 2012 à 11:57
par Thelonious
Bonjour Michael,

Voici l'extrait de code utilisé pour l'envoi du mail :

Code : Tout sélectionner
' Envoi du mail de warning             
      Envoi_Mail=False
      Set docMemo = uidoc.Document
      docMemo.Form = "Memo"   
            
      docMemo.Principal="DESTINATAIRE"
      docMemo.SendTo =  doc.Sox_Valideur_Email(0)      
      docMemo.Subject = "Contrôle : Validation en attente pour "+doc.Sox_ReferenceCtrl(0)
      
      Set rtitem = New NotesRichTextItem( docMemo, "Body" )
      
      Call rtitem.AddNewLine(1)         
      Call rtitem.AppendText( "Bonjour," )
      Call rtitem.AddNewLine(2)   
      Call rtitem.AppendText( "Merci de bien vouloir valider le contrôle périodique suivant :" )
      Call rtitem.AddNewLine(2)
      Call rtitem.AppendText( "Sous-process :                                " )
      Call rtitem.AppendText( doc.Sox_SProcess(0) )
      Call rtitem.AddNewLine(1)      
      Call rtitem.AppendText( "Référence :                                       " )   
      Call rtitem.AppendText( doc.Sox_ReferenceCtrl(0) )
      Call rtitem.AddNewLine(1)      
      Call rtitem.AppendText( "Fréquence :                                      " )
      Call rtitem.AppendText( doc.Sox_FreqCtrl(0) )
      Call rtitem.AddNewLine(1)
      Call rtitem.AppendText( "Responsable :                                " )   
      Call rtitem.AppendText( doc.Sox_Responsable(0) )
      Call rtitem.AddNewLine(2)
      
      Call rtitem.AppendText( "Vous pouvez accéder à la fiche associée en cliquant sur le LienDoc ci-contre : " )
      Call rtitem.AppendDocLink( doc , db.title)
      
      Call docMemo.Send( False )
      Envoi_Mail=True   
      
      Call uidoc.Close(True)


Cordialement,
Thelo.

Re: Vérifier champ RichText avant validation

MessagePublié: 21 Nov 2012 à 12:18
par Michael DELIQUE
c'est bien ce que je pensais tu utilise le document courant, créé un nouveau document pour envoyer ton mail.

ensuite tu y met les infos que tu veux et tu n'a meme pas besoin de l'enregistrer, un notesDocument.send suffit