Ciao a tutti, ho dei problemi con l'oggetto MsFlexGrid.
In questa griglia vengono visualizzati dei record contenente dati,
le righe totali della griglia di norma sono due.
Una riga contiene le etichette delle varie colonne, l'altra i dati effettivi.
Può capitare però che ci siano piu righe.
Ho dovuto aggiungere due nuovi campi, per cui due nuove colonne alla struttura della griglia.
Eseguo poi un test su un dato che deve contenere nella griglia un solo record (a parte ovviamente le etichette)
Invece me ne visualizza due record quasi identici:
Al primo record mancano i dati (guarda caso) delle ultime due colonne che ho aggiunto,
al secondo record anche i dati delle ultime colonne aggiunte sono presenti.
Ho pensato che forse dovevo controllolare l'incremento delle colonne, ma il codice mi sembra corretto.
Nelle proprietà dell'oggetto griglia ovviamente ho modificato il n. di colonne riportando l'esatto n.
Ve lo riporto:
codice:
Sub VisualizzaListaContratti47(ByVal CodiceCliente As String)
Dim strListaC As String
Dim NumCliente As String
Dim NumPolizza, Lib9, Lib10, Lib11, Lib12, Lib13, Lib14, Lib15, Lib37, Col29, Col30 As String
Dim SqlVisCoCli As String
On Error GoTo ErrExec
MSFlexGridContratti.Clear
'Inserisco il titolo della colonna
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 0
MSFlexGridContratti.ColWidth(0) = 1200
MSFlexGridContratti.Text = "N. Polizza"
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 1
MSFlexGridContratti.ColWidth(1) = 1600
MSFlexGridContratti.Text = "Tipologia Polizza"
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 2
MSFlexGridContratti.ColWidth(2) = 1100
MSFlexGridContratti.Text = "Frazionamento"
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 3
MSFlexGridContratti.ColWidth(3) = 2200
MSFlexGridContratti.Text = "Premio Annuo"
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 4
MSFlexGridContratti.ColWidth(4) = 1000
MSFlexGridContratti.Text = "Rate non pagate"
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 5
MSFlexGridContratti.ColWidth(5) = 1400
MSFlexGridContratti.Text = "Importo"
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 6
MSFlexGridContratti.ColWidth(6) = 1200
MSFlexGridContratti.Text = "Data ult. vers. effet."
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 7
MSFlexGridContratti.ColWidth(7) = 1200
MSFlexGridContratti.Text = "Data Sottoscr."
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 8
MSFlexGridContratti.ColWidth(8) = 1700
MSFlexGridContratti.Text = "Mod. pagamento"
' Modifica Elena Aggiunta colonne 20030622
MSFlexGridContratti.Row = 0
MSFlexGridContratti.Col = 9
MSFlexGridContratti.ColWidth(9) = 1400
MSFlexGridContratti.Text = "Revoca da BM"
NumCliente = CodiceCliente
SqlVisCoCli = "Select * from Recall47 where colonna14 = '" & CodiceCliente & "'"
Set Rs = CnRdo.OpenResultset(SqlVisCoCli)
If Rs("libero14") <> vbNullString Then
NumPolizza = Rs("libero14")
Else
NumPolizza = ""
End If
If Rs("libero9") <> vbNullString Then
Lib9 = Rs("libero9")
Else
Lib9 = ""
End If
If Rs("libero10") <> vbNullString Then
Lib10 = Rs("libero10")
Else
Lib10 = ""
End If
If Rs("libero11") <> vbNullString Then
Lib11 = Rs("libero11")
Else
Lib11 = ""
End If
If Rs("libero12") <> vbNullString Then
Lib12 = Rs("libero12")
Else
Lib12 = ""
End If
If Rs("libero13") <> vbNullString Then
Lib13 = Rs("libero13")
Else
Lib13 = ""
End If
If Rs("libero15") <> vbNullString Then
Lib15 = Rs("libero15")
Else
Lib15 = ""
End If
'Modifica elena 20030622- inserimento nuove colonne
If Rs("colonna29") <> vbNullString Then
Col29 = Rs("colonna29")
Else
Col29 = ""
End If
If Rs("libero37") <> vbNullString Then
Lib37 = Rs("libero37")
Else
Lib37 = ""
End If
If Rs("colonna30") <> vbNullString Then
Col30 = Rs("colonna30")
Else
Col30 = ""
End If
'Fine modifica Elena 20030622
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 0
MSFlexGridContratti.Text = Trim(NumPolizza)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 1
MSFlexGridContratti.Text = Trim(Lib9)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 2
MSFlexGridContratti.Text = Trim(Lib15)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 3
MSFlexGridContratti.Text = Trim(Lib10)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 4
MSFlexGridContratti.Text = Trim(Lib11)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 5
MSFlexGridContratti.Text = Trim(Lib12)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 6
MSFlexGridContratti.Text = Trim(Lib13)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 7
MSFlexGridContratti.Text = Trim(Col29)
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 8
MSFlexGridContratti.Text = Trim(Lib37)
' Modifica Elena - aggiunta nuova colonna - 20030622
MSFlexGridContratti.Row = 1
MSFlexGridContratti.Col = 9
MSFlexGridContratti.Text = Trim(Col30)
'Fine Modifica Elena 20030622
Rs.MoveNext
Do While Not Rs.EOF
If Rs("libero14") <> vbNullString Then
NumPolizza = Rs("libero14")
Else
NumPolizza = ""
End If
If Rs("libero9") <> vbNullString Then
Lib9 = Rs("libero9")
Else
Lib9 = ""
End If
If Rs("libero10") <> vbNullString Then
Lib10 = Rs("libero10")
Else
Lib10 = ""
End If
If Rs("libero11") <> vbNullString Then
Lib11 = Rs("libero11")
Else
Lib11 = ""
End If
If Rs("libero12") <> vbNullString Then
Lib12 = Rs("libero12")
Else
Lib12 = ""
End If
If Rs("libero13") <> vbNullString Then
Lib13 = Rs("libero13")
Else
Lib13 = ""
End If
If Rs("libero15") <> vbNullString Then
Lib15 = Rs("libero15")
Else
Lib15 = ""
End If
' Modifica Elena Aggiunta nuove colonne 20030622
If Rs("colonna29") <> vbNullString Then
Col29 = Rs("colonna29")
Else
Col29 = ""
End If
If Rs("libero37") <> vbNullString Then
Lib37 = Rs("libero37")
Else
Lib37 = ""
End If
If Rs("colonna30") <> vbNullString Then
Col30 = Rs("colonna30")
Else
Col30 = ""
End If
' Fine Modifica Elena 20030622
'----------------------------------------------------------------------------
Dim strListaCGrid As String
strListaCGrid = ""
strListaCGrid = strListaCGrid & Trim(NumPolizza)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib9)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib15)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib10)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib11)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib12)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib13)
'Modifica Elena - Aggiunta colonne - 20030622
strListaCGrid = strListaCGrid & Chr(9) & Trim(Col29)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Lib37)
strListaCGrid = strListaCGrid & Chr(9) & Trim(Col30)
'Fine Modifica Elena - Aggiunta colonne - 20030622
MSFlexGridContratti.AddItem strListaCGrid
Rs.MoveNext
Loop
Exit Sub
Trovate qualcosa di sbagliato?? o che manca??? :master: