Regole di incompatibilità deterministiche

Una regola di incompatibilità è formata da espressioni di variabili, costanti e operatori, unite da 'and' o 'or' e racchiuse, se necessario, tra parentesi "( )" che possono essere di vari ordini.

Le regole che iniziano con un # sono commenti.

Gli operatori sono di tipo:

aritmetico: **(potenza), *(per), /(diviso), +(piu') ,-(meno);
logico: >,gt(maggiore) <, lt(minore) =, eq(uguale), ne(diverso) , ge(non minore), le(non maggiore);
booleano: & and(e) | or(o).

e vengono considerati nell'ordine di priorità di descrizione, quindi prima gli operatori aritmetici, e nell'ambito prima la potenza, poi il prodotto ecc., poi quelli logici e nell'ambito prima il > poi < e così via, e per ultimi gli operatori booleani.

Si possono usare indifferentemente i simboli doppi, quali > o gt, & o and, ecc.

 Esempi di regole:

#------ esempio di regola ------------- (commento)
sesso = 2 and profes = list1
(se sesso uguale a 2 e professione uguale a un valore contenuto nella lista list1 il record è errato)
 
ateco ne listac and ((totdip > 1200 & salar < 1200000) or (totdip < 1201 & salar < 1100000))
(se ateco diverso dai valori della lista listac e, il num. dipendenti maggiore di 1200 e il salario minore di 1200000, oppure il numero dipendenti minore di 1201 e il salario minore di 1100000 allora il record è errato).
 

Con la definizione vengono generati i file esterni fregole.dat e fregout.dat.

Per inserire una regola:

è possibile scrivere direttamente la regola dando poi invio oppure:
scegliere la variabile tra quelle mostrate o il simbolo "(";
scegliere l'operatore necessario tra quelli mostrati;
scegliere una seconda variabile o la parentesi e così via;
alla fine scegliere "add";

La regola viene controllata sintatticamente e se non ci sono errori aggiunta alla fine dell'insieme di regole, altrimenti viene segnalato l'errore in chiaro.

Per inserire una nuova regola dopo una determinata regola selezionarla con un solo click del mouse;

Per modificare una regola:

scegliere la regola con doppio click del mouse;
modificare la regola evidenziando con il mouse la zona da variare;
alla fine "modify"; la regola viene controllata e, se non ci sono errori, sostituita.

ATTENZIONE! la modifica potrebbe influenzare eventuali correzioni associate.

Per cancellare una regola:

selezionare la regola da cancellare e poi "delete";

ATTENZIONE! verranno cancellate anche le correzioni associate.

 "clear" annulla le modifiche della regola.

Da menu a tendina:

"Save and exit" salva le modifiche su fregout.dat e fregole.dat e crea nella cartella di progetto il file FSCREEN.dat che può essere utilizzato per il controllo interattivo dei dati con la funzione gestione dati.
"Exit" esce senza salvare le modifiche.
"Import" crea le variabili dal file esterno fregout.dat.