Programmer les masques avec le script de masque

Avec le script de masque, tu vérifies et complètes les saisies sans modifier netERP lui‑même.

Conception et code

Dans le concepteur de masques, F12 bascule entre Conception et Code. F9 vérifie le script, F1 ouvre l’aide «Que peut faire le script?» avec 35 exemples que tu insères par double‑clic. Le langage est Pascal (netPascalScript) avec des noms en anglais.

Événements

  • Masque: BeforeOpen, AfterOpen, BeforeSave, AfterSave, BeforeClose, OnValidate.
  • Champ: OnEnter, OnExit, OnChange, OnClick.

Dans l’inspecteur d’objets, crée la routine appropriée dans l’onglet «Événements» en cliquant sur (nouveau), par exemple FormBeforeSave. netERP supprime les routines vides lors de l’enregistrement.

Exemple

procedure FormBeforeSave(Sender: TObject);
begin
  if Form.Field('description') = '' then
    Form.Cancel('Bitte die Bezeichnung angeben.');
end;

procedure CodeOnExit(Sender: TObject);
begin
  Form.SetField('code', UpperCase(Form.Field('code')));
  Form.SetEnabled('zip', Form.Field('country') = 'DE');
end;

Ce que peut faire le script

Lire et définir des champs (Form.Field, Form.SetField), afficher/masquer ou verrouiller des champs (SetVisible, SetEnabled), définir le focus, ouvrir une section, afficher des messages et des questions de confirmation (Message, Confirm) et annuler l’enregistrement ou la fermeture (Form.Cancel). Form.IsNew, Form.Module et Form.Id fournissent des informations sur l’enregistrement. Les clés de champ proviennent de la conception du masque.

Une erreur dans le script est signalée une seule fois ; le masque reste utilisable. Seule Form.Cancel annule une action.