Collegamento di una lista di ricerca ad un pulsante aggiunto alla maschera

 

' 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