Quando c'è la necessità di eliminare il contenuto di un file database basta richiamare la funzione EDCLRTB.
Occorre passare in exchange i seguenti campi:
£EDDBTABLE := Nome del file
£EDDBWHERE := Eventuale where di filtro per la delete
Se il campo £EDDBWHERE viene passato a *blank, la funzione esegue una TRUNCATE TABLE su PC e un CLRPFM su AS400
altrimenti esegue la UD_EXECSQL con il comando DELETE FROM £EDDBTABLE WHERE £EDDBWHERE
Nota: il campo £EDDBWHERE se passato deve contenere solo il filtro senza la parola "WHERE" all'inizio.
Esempi:
* Pulizia totale
£EDDBTABLE := "PRWRK71"
EXCHANGE FIELDS(£EDDBTABLE)
CALL PROCESS(*DIRECT) FUNCTION(EDCLRTB) EXIT_USED(*NEXT) MENU_USED(*NEXT)
* Pulizia parziale
£EDDBTABLE := "PRWRK71"
£EDDBWHERE := "PRWKUSER = '" + £UTENTE + "'"
EXCHANGE FIELDS(£EDDBTABLE £EDDBWHERE)
CALL PROCESS(*DIRECT) FUNCTION(EDCLRTB) EXIT_USED(*NEXT) MENU_USED(*NEXT)