Page 1 sur 1

supprimer un champ

MessagePublié: 04 Déc 2007 à 11:03
par Michael DELIQUE
Code : Tout sélectionner
Sub deleteField(wDoc As NotesDocument, wChamp As String, wnbSave As Integer)
   
   On Erreur Goto ErreurHandle
   
   If wDoc Is Nothing Then
      Error 9999,"wDoc is nothing"
      Exit Sub
   End If
   
   If Trim(wChamp) = "" Then
      Error 9999,"wChamp is empty"
      Exit Sub
   End If
   
   If wDoc.HasItem(Trim(wChamp)) = True Then
      Call wDoc.RemoveItem(Trim(wChamp))
      If wnbSave = True Then
         Call wDoc.Save(True,False)
      End If
   End If
   
   Exit Sub
ErreurHandle:
   Msgbox "("+Cstr(Getthreadinfo (1))+" Call by "+Cstr(Getthreadinfo(10))+")"+Chr(10)+"Erreur N° " + Str(Err) + " : "+Chr(10) + Cstr(Error)+". "+Chr(10)+"Ligne N° "+Cstr(Erl),16," ERREUR !"
   Exit Sub
End Sub


en @formule ça donne ça

Code : Tout sélectionner
field MonChamp := @DeleteField

MessagePublié: 19 Sep 2011 à 09:59
par R-one
Ce post est assez ancien, mais il me semble qu'il faut mettre d'abord le champs à vide et ensuite le supprimer, sinon les données restent. Car si on remet le champs supprimé dans le masque, les données se remettent dedans.

MessagePublié: 19 Sep 2011 à 10:23
par Michael DELIQUE
salut

tu confonds back-end et front-end !

en front-end, si tu retire un champ du masque il est toujours présent dans le document.

en back-end (la fonction ici présente) si tu retire un champ tu l'efface !

MessagePublié: 19 Sep 2011 à 11:20
par R-one
Salut,

C'est vrai que j'ai pas testé en back-end.
Je le faisais avec @DeleteField et les données réapparaissaient si je remettais le champs.

Merci pour la précision.

MessagePublié: 19 Sep 2011 à 11:22
par Raziel
Sinon tu peux utiliser le @Unavailable