Esempio LUA: Stampare insieme più ordini contemporaneamente

 In questo esempio vedremo come realizzare una stampa che permetta di unire più ordini insieme utilizzando l’oggetto document.

Gruppo Script
Programma
Evento
Azione
 tabella = database.getsql("SELECT gguid FROM ordini WHERE eli=0")

Iniziamo a estrapolare quali sono gli ordini che andremo a stampare. In questo caso diciamo che li prenderemo tutti. Ovviamente è meglio inserire un sistema di filtro come per data o cliente.

Per eseguire le stampe comunque avremo bisogno solo del gguid di ogni ordine


righe = tabella.getrows()

stampa = nil

for i = 1,tabella.countrows() do

if stampa == nil then

stampa = database.createdocument("gguidstampa", "ordini",righe[i].getvalue("gguid"))

else

stampa2 = database.createdocument("gguidstampa", "ordini",righe[i].getvalue("gguid"))

stampa.adddocument(stampa2)

end

end

if stampa != nil then

stampa.show()

end

Iniziamo girando tutte le righe della tabella. Abbiamo creato un oggetto stampa vuoto perchè abbiamo bisogno di creare un primo document che raccolga tutti gli altri.

Dopo avere impostato l’oggetto stampa tutti gli altri ordini verranno accodati a questo.

Alla fine se almeno una stampa è presente procederemo a mostrarla.