Code: Definicja regul pol obowiazkowych: Różnice pomiędzy wersjami

Z Motława
Linia 130: Linia 130:
  
 
Przykład 1:
 
Przykład 1:
Karta kontrahenta, pole katcol0 ma być różne od 0.
+
Karta kontrahenta, pole katcol0 ma być różne od 0.
Definicja:
+
Definicja:
''Tabela sys_fld_validator_ng''
+
''Tabela sys_fld_validator_ng''
  
insert into sys_fld_validator_ng values (0,'K_katcol0_rule1','K_',0);
+
  insert into sys_fld_validator_ng values (0,'K_katcol0_rule1','K_',0);
  
''Tabela sys_fld_validator_po''
+
''Tabela sys_fld_validator_po''
  
insert into sys_fld_validator_po values  
+
  insert into sys_fld_validator_po values  
(0,'K_katcol0_rule1_1','K_katcol0_rule1','katcol0',0,0,'NOT EMPTY','','','Wartosc pierwszej kategorii kolumnowej musi byc okreslona! ');
+
  (0,'K_katcol0_rule1_1','K_katcol0_rule1','katcol0',0,0,'NOT EMPTY','','','Wartosc pierwszej kategorii kolumnowej musi byc okreslona! ');
  
  

Wersja z 06:05, 24 mar 2009

Algorytm walidacji pól

Mechanizm definiowanej walidacji pól aktywowany jest kluczem w Rejestrze systemowym o nazwie walidacja_pol_aktywna.

Struktury tabel odpowaidających za definicje walidacji pól:

Tabela sys_fld_validator_ng

Field Type Null Key Default
idn int(11) NO PRI NULL
GUID varchar(38) NO UNI
coreid varchar(38) NO MUL
rule_operator int(11) NO


Tabela sys_fld_validator_po

Field Type Null Key Default Extra
idn int(11) NO PRI NULL auto_increment
GUID varchar(38) NO UNI
GUID_NG varchar(38) NO MUL
fieldname varchar(38) NO
rule_order int(11) NO 0
admin int(11) NO 0
validation_rule_type varchar(20) YES NULL
validation_rule varchar(200) YES NULL
condition_ruleset_guid varchar(38) NO MUL
message_if_not_valid text YES NULL

Pole validation_rule przyjmuje wartości:

NOT NULL, NOT EMPTY, EQ, NOT EQ, LESS, LESS EQ, GREATER, GREATER EQ, LENGTH EQ, LENGTH MAX, LENGTH MIN
DEFAULT ?, CONDITION


Przykładowe definicje walidacji:

Przykład 1:

Karta kontrahenta, pole katcol0 ma być różne od 0.
Definicja:
Tabela sys_fld_validator_ng
 insert into sys_fld_validator_ng values (0,'K_katcol0_rule1','K_',0);
Tabela sys_fld_validator_po
 insert into sys_fld_validator_po values 
 (0,'K_katcol0_rule1_1','K_katcol0_rule1','katcol0',0,0,'NOT EMPTY',,,'Wartosc pierwszej kategorii kolumnowej musi byc okreslona! ');