Programiranje maski uz skriptu maske

Pomoću skripte maske provjeravaš i nadopunjuješ unose, bez izmjene samog netERP-a.

Dizajn i kod

U dizajneru maski tipka F12 prebacuje između dizajna i koda. F9 provjerava skriptu, F1 otvara pomoć „Was kann das Skript?“ s 35 primjera koje umećeš dvostrukim klikom. Jezik je Pascal (netPascalScript) s engleskim imenima.

Događaji

  • Maska: BeforeOpen, AfterOpen, BeforeSave, AfterSave, BeforeClose, OnValidate.
  • Polje: OnEnter, OnExit, OnChange, OnClick.

U Objektinspektoru kreiraš (novo) na kartici „Događaji“ odgovarajuću rutinu, na primjer FormBeforeSave. Prazne rutine netERP uklanja pri spremanju.

Primjer

procedure FormBeforeSave(Sender: TObject);
begin
  if Form.Field('description') = '' then
    Form.Cancel('Unesite naziv.');
end;

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

Što skripta može

Čitanje i postavljanje polja (Form.Field, Form.SetField), sakrivanje i prikazivanje polja ili njihovo zaključavanje (SetVisible, SetEnabled), postavljanje fokusa, otvaranje sekcije, prikaz poruka i upita (Message, Confirm) te prekid spremanja ili zatvaranja (Form.Cancel). Form.IsNew, Form.Module i Form.Id daju informacije o zapisu. Ključevi polja potječu iz dizajna maske.

Greška u skripti bit će prijavljena jednom; maska ostaje upotrebljiva. Samo Form.Cancel prekida akciju.