Esempi di programmazione
Jump to navigation
Jump to search
Calcolo del massimo in una tabella[edit]
Filter [F:YCE] # Azzero eventuale filtro precedente Filter [F:YCE] Where YCODMAR = [M:YCE0]YCODMAR Order By YSEQMAR Desc # filtro For [F:YCE] MASSIMO = [F:YCE]YSEQMAR Break Next Filter [F:YCE] # tolgo filtro
Utilizzo nolign[edit]
Questo esempio carica in un riquadro di una scheda dell'articolo una lista di documenti presenti in una apposita tabella tramite transclass.
NBDOC è la variabile di linea del riquadro (colonna PARAMETRO nella scheda Generale della videata)
$LIENS Filter [F:YDO] Where YDOCITMREF=[M:ITM0]ITMREF nolign=0 For [F:YDO] nolign +=1 [M:YT9] = [F:YDO] #ATTENZIONE per la transclass nolign parte da 1 [M:YT9]CAMPOXXX(nolign-1) = [F:YDO]CAMPOXXX #ATTENZIONE per vettori usare nolign-1 (parte da zero) Next [M:YT9]NBDOC=nolign Return
Questo esempio scrive tutte le righe di un riquadro in una tabella (in questo caso non viene gestita la modifica di una riga già esistente, bisogna cancellare tutto e poi qui vengono riscritte tutte le righe)
###################################################################################### $WRITEDOC Trbegin [F:YDO] For nolign=1 To [M:YT9]NBDOC [F:YDO] = [M:YT9] [F:YDO]YDOCITMREF = [M:ITM0]ITMREF #NB: questa riga va messa DOPO la transclass, altrimenti i campi non corrispondenti vengono sbiancati Write [F:YDO] If fstat Then GMESSAGE= "Errore in scrittura dei documenti" Break Endif Next If GMESSAGE <> "" Rollback Else Commit Endif Return ###################################################################################### $DELETEDOC Trbegin [F:YDO] Filter [F:YDO] Where [F:YDO]YDOCITMREF=[M:ITM0]ITMREF Delete [F:YDO] Where 1=1 Filter [F:YDO] Commit Return