2010-06-08 18 views
1

Pourriez-vous me donner un exemple de la façon dont je devrais coder dans l'événement pfc_Validation? C'est un événement que je n'ai jamais utilisé. Par exemple, voici quelque chose que j'ai codé dans l'événement ue_itemchanged.Exemple de codage d'événement pfc_Validation

if dwo.name = 'theme' then 
    This.Setitem(row,"theme",wf_clean_up_text(data)) 
end if 

if dwo.name = 'Comments' then 
    This.Setitem(row,"Comments",wf_clean_up_text(data)) 
end if 

Quelle est la bonne façon de coder ces validations en cas pfc_Validation, de sorte qu'ils ne sont effectuées que sur enregistrer en temps?

Répondre

3

Vous demandez quelque chose en dehors de PowerBuilder natif, donc rien ne garantit que mes hypothèses sont correctes. est un événement pfc_Validation codé dans le cadre du service LUW (Unical Unit of Work) dans PowerBuilder Foundation Classes (PFC). Si vous voulez en savoir plus à ce sujet, j'ai écrit an article sur le LUW. Tout d'abord, votre question: Tout dans le service LUW est seulement déclenché au moment de la sauvegarde, donc vous êtes en bonne forme là-bas. Cela dit, du point de vue du code, il ne s'agit pas de validation, mais de préparation de données pour la mise à jour. Sur cette base, je suggère que l'endroit approprié pour cette logique est pfc_UpdatePrep. En ce qui concerne la conversion du code, c'est assez simple. (Maintenant, me regarder mess it up.)

FOR ll = 1 to RowCount() 
    Setitem(ll,"theme",wf_clean_up_text(GetItemString (ll, "theme"))) 
    Setitem(ll,"comments",wf_clean_up_text(GetItemString (ll, "comments"))) 
NEXT 

Bonne chance,

Terry.