Libreria per campionamento custom

Il seguente frammento di codice può essere inserito in una libreria per definire i campionamenti custom da usare nei Controlli Qualità.

Delegate Sub tCampionamento_Custom(ByVal QWSess As QWSession, ByVal dmd_ref As Object, ByVal Alias_Variabile As QWRowset, ByVal Cod_Art As String, ByVal Cod_For As String, ByRef primaforn As Boolean, ByRef schema As DBArray, ByRef nuovotipo_stat As Integer, ByRef numcamp_nonstat As Double)

sub InitCampionamento()
    QWSession.Campionamenti_Custom = New AssocArray
            
    Dim cf1 As tCampionamento_Custom
    cf1 = AddressOf _CMS_Campionamento_CF1
    QWSession.Campionamenti_Custom("Camp.CF1") = cf1

    Dim cf2 As tCampionamento_Custom
    cf2 = AddressOf _CMS_Campionamento_CF2
    QWSession.Campionamenti_Custom("Camp.CF2") = cf2
            
    Dim cf3 As tCampionamento_Custom
    cf3 = AddressOf _CMS_Campionamento_CF3
    QWSession.Campionamenti_Custom("Camp.CF3") = cf3
End Sub

sub _CMS_Campionamento_CF1(ByVal QWSess As QWSession, ByVal dmd_ref As Object, ByVal Alias_Variabile As QWRowset, ByVal Cod_Art As String, ByVal Cod_For As String, ByRef primaforn As Boolean, ByRef schema As DBArray, ByRef nuovotipo_stat As Integer, ByRef numcamp_nonstat As Double)

end sub

sub _CMS_Campionamento_CF2(ByVal QWSess As QWSession, ByVal dmd_ref As Object, ByVal Alias_Variabile As QWRowset, ByVal Cod_Art As String, ByVal Cod_For As String, ByRef primaforn As Boolean, ByRef schema As DBArray, ByRef nuovotipo_stat As Integer, ByRef numcamp_nonstat As Double)

end sub    

sub _CMS_Campionamento_CF3(ByVal QWSess As QWSession, ByVal dmd_ref As Object, ByVal Alias_Variabile As QWRowset, ByVal Cod_Art As String, ByVal Cod_For As String, ByRef primaforn As Boolean, ByRef schema As DBArray, ByRef nuovotipo_stat As Integer, ByRef numcamp_nonstat As Double)

end sub

La libreria è utilizzabile in un task, inizializzando il campionamento nel seguente modo:

Dim QWSess as QWSession=DB.QWSession

QWSess.Global.InitCampionamento()

........

In uno script personalizzato associato a CORPOINIZ.ASPX, è poi possibile inizializzare la libreria per l’utilizzo dall’interfaccia, con le seguenti righe di codice:

Dim QWSess as QWSession=page.session("QWSess")

QWSess.Global.InitCampionamento()

........