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.