seba ho provato come mi hai detto e ho individuato la "zona", solo che devo ripostare tutto il codice completo, la "zona" rossa è la colpevole:
codice:
Sub Stampa()
'Dim mioReport As DataReport
Dim mioFiltro As String, mioDataMember As String
Dim mioTipoIndirizzo As Integer
Dim mioDataMemberPerIncompleti As String
Dim mioTipoRicerca As String
Dim mioTipoStampa As String
mioFiltro = "IDAcquisitore = " & CLng(dcAcquisitori.BoundText)
'imposto il tipo di stampa: se buste o etichette
Select Case fnTipoDiStampa
Case 0: Set mioReport = drStampaBuste
mioTipoStampa = "Buste"
mioTipoIndirizzo = 1
Case 2: Set mioReport = drStampaEtichetteGrandi
mioTipoStampa = "Etichette"
mioTipoIndirizzo = 2
End Select
'imposto il filtro per la stampa: se acquisitore o firmatario
Select Case fnFiltro
Case 0 'acquisitore
mioTipoRicerca = "Acquisitori"
Case 1 'firmatario
mioTipoRicerca = "Firmatari"
End Select
Dim mioElenco As New clsDati
mioElenco.Filtro = mioFiltro
mioElenco.tipoRicerca = mioTipoRicerca
mioElenco.tipoStampa = mioTipoStampa
mioElenco.TipoIndirizzo = mioTipoIndirizzo
Dim NumIndInc As Long
NumIndInc = mioElenco.ContaIndirizziIncompleti
'CONTROLLO SE CI SONO INDIRIZZI INCOMPLETI
If NumIndInc > 0 Then 'ci sono indirizzi incompleti
Dim miaForm As New frmIndirizziIncompleti
With miaForm
.mioFiltro = mioFiltro
.mioTipoRicerca = mioTipoRicerca
.mioTipoStampa = mioTipoStampa
.mioTipoIndirizzo = mioTipoIndirizzo
.RiempiElenco
.Show 1
End With
Exit Sub
End If
End If
'Proseguo con la stampa
'assegno il datamember al datareport per la stampa:
Set mioReport.DataSource = mioElenco
mioReport.DataMember = "BusteEtichette"
If fnTipoDiStampa = 0 Then
mioReport.Orientation = rptOrientLandscape
End If
mioReport.Show 1
Set mioElenco = Nothing
Set mioReport = Nothing
Unload Me
End Sub
mioElenco.ContaIndirizziIncompleti è una funzione che sta nella classe che controlla tutti gli indirizzi e ne verifica la completezza.
vi posto anche questo codice:
codice:
Public Function ContaIndirizziIncompleti() As Long
Dim mioCmd As New ADODB.Command
Dim mioPar As ADODB.Parameter
With mioCmd
.ActiveConnection = miaConn
.CommandText = "sp_ControllaElencoPerStampaBusteEtichette" '
& mvarTipoStampa
.CommandType = adCmdStoredProc
End With
'aggiungo i parametri al command appena settato
Set mioPar = New ADODB.Parameter
Set mioPar = mioCmd.CreateParameter("@mioFiltro", adVarChar,
adParamInput, 500, mvarFiltro)
mioCmd.Parameters.Append mioPar
Set mioPar = New ADODB.Parameter
Set mioPar = mioCmd.CreateParameter("@TipoRicerca", adVarChar,
adParamInput, 20, mvarTipoRicerca)
mioCmd.Parameters.Append mioPar
Set mioPar = New ADODB.Parameter
Set mioPar = mioCmd.CreateParameter("@TipoRicerca", adSmallInt,
adParamInput, 4, mvarTipoIndirizzo)
mioCmd.Parameters.Append mioPar
Set mioRS = mioCmd.Execute()
ContaIndirizziIncompleti = mioRS.RecordCount
Set mioRS = Nothing
End Function
questo è quanto... aiutatemi voi...