' il seguente frammento di codice è un esempio di collegamento di una lista di ricerca ad un pulsante aggiunto alla maschera
' Da notare l'utilizzo di una veriabile di sessione per memorizzare la query di ricerca, che deve persistere fra i vari postback
dim QWSess as QWSession=this.page.GetSession()
Dim form As gemanoco2 = this.page
Dim c as QWWebControls.QWWebPushbutton = CType(this.page, QWWebControls.QWWebPage).FindControl2("CUSTOM_2")
dim q as QWTable
' Ridefinisce l'handler del Click per lanciare la query in ListaArchivio
AddHandler c.Click,
Sub(sender As Object, arg As String)
dim campi as assocarray
dim anno as string
campi= new assocarray()
q = new qwtable
dim err,sql as string
sql="select MATRICOLA,cast(MACCHINA as varchar(255)) as MACCHINA,cast(VERSIONE as varchar(255)) as VERSIONE,COMMESSA from mepMATRICOLE"
q.Database = QWSess.DB
q.SQL = sql
q.RequestLive = False
q.active = True
q.Rowset.first()
' Mette la datatable in una variabile di sessione per passarlo alla procedura seguente
this.page.session("q") = q
ListaArchivio(this,"Matricole",this.page.session("q"),New DBArray(New DBArray(this.page.session("q").Rowset.Fields("MATRICOLA"), 50,"Matricola"), _
New DBArray(this.page.session("q").Rowset.Fields("MACCHINA"), 50,"Macchina"), _
New DBArray(this.page.session("q").Rowset.Fields("VERSIONE"), 50,"Versione"), _
New DBArray(this.page.session("q").Rowset.Fields("COMMESSA"), 50,"Commessa") _
), 558, 292, 20, True)
End Sub
addhandler ctype(this,QWWebControls.QWWebPushButton).DialogClose, sub (sender as object, arg as string)
‘ Recupera il valore selezionato e lo assegna al campo CUSTOM1
CType(form.FindControl("CUSTOM_1"), qwWebControls.QWWebEntryfield).value = this.page.session("q").Rowset.Fields("MATRICOLA").value
this.page.session("q").active = False
this.page.Session.Remove("q")
end sub