Masku programmēšana ar Masku skriptu

Ar Masku skriptu tu pārbaudi un papildini ievades, nemainot pašu netERP.

Dizains un kods

Masku veidotājā F12 pārslēdz starp dizainu un kodu. F9 pārbauda skriptu, F1 atver palīdzību „Ko var skripts?“ ar 35 piemēriem, kurus tu vari ievietot ar dubultklikšķi. Valoda ir Pascal (netPascalScript) ar angļu nosaukumiem.

Notikumi

  • Forma: BeforeOpen, AfterOpen, BeforeSave, AfterSave, BeforeClose, OnValidate.
  • Lauks: OnEnter, OnExit, OnChange, OnClick.

Objekta inspektorā cilnē „Notikumi“ ar (jauns) izveido atbilstošu rutīnu, piemēram FormBeforeSave. NetERP saglabāšanas brīdī noņem tukšas rutīnas.

Piemērs

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;

Ko skripts spēj

Var nolasīt un iestatīt laukus (Form.Field, Form.SetField), slēpt vai rādīt laukus vai bloķēt tos (SetVisible, SetEnabled), iestatīt fokusu, atvērt sekciju, rādīt ziņojumus un apstiprināšanas jautājumus (Message, Confirm) un atcelt saglabāšanu vai aizvēršanu (Form.Cancel). Form.IsNew, Form.Module un Form.Id sniedz informāciju par ierakstu. Lauku atslēgas nāk no maskas dizaina.

Kļūda skriptā tiek paziņota vienu reizi; forma paliek lietojama. Tikai Form.Cancel atceļ darbību.