Visual Basic para Aplicaciones - Problemas con Listview URGENTE AYUDA..

Life is soft - evento anual de software empresarial
 
Vista:
Imágen de perfil de DANIEL
Val: 7
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Problemas con Listview URGENTE AYUDA..

Publicado por DANIEL (4 intervenciones) el 11/07/2018 15:30:29
Buenas compañeros:

Mi problerma se trata con un listview, tengo dos combos donde cargos el diagnostico y su repectivo codigo al seselecionar debo guardarlos en una tabla en sql que se llama (Tbl_Diagnostico), al guardar en la tabla no me da ningun problemas los coampas de las tablas son los siguientes:

Pk_id_registro numeric 5
Di_num_rep numeric 5
Di_identificador nvarchar 15
Di_CIE10 nvarchar 10
Di_cieinterpretacion nvarchar 100
Di_diag_numero numeric 5

Cuando los consulta en la tabla los asigno a 5 Variables declaradas de esta manera:

Public REPORTE, ORDEN_ENTRADA As Integer
Public IDENTIFICACION, DIAGNOSTICO, INTERPRETACION As String

el codigo es el siguiente donde consulto y asigno:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
Dim DiagnosticoRs As ADODB.Recordset
Dim item As ListItem
 
Me.lstListado.ListItems.Clear
 
COLUMNAS
 
Set DiagnosticoRs = New ADODB.Recordset
With DiagnosticoRs
.Open "select * from Tbl_Diagnostico where Di_num_rep = '" & txtnum_repo & "'", CONEXION_ADO, adOpenStatic, adLockOptimistic
If .RecordCount <> 0 Then
.MoveFirst
Do While Not .EOF
 
If IsNull(.Fields("Di_num_rep")) Or .Fields("Di_num_rep") = "" Then
REPORTE = ""
Else
REPORTE = .Fields("Di_num_rep")
End If
 
If IsNull(.Fields("Di_identificador")) Or .Fields("Di_identificador") = "" Then
IDENTIFICACION = ""
Else
IDENTIFICACION = .Fields("Di_identificador")
End If
 
If IsNull(.Fields("Di_CIE10")) Or .Fields("Di_CIE10") = "" Then
DIAGNOSTICO = ""
Else
DIAGNOSTICO = .Fields("Di_CIE10")
End If
 
If IsNull(.Fields("Di_cieinterpretacion")) Or .Fields("Di_cieinterpretacion") = "" Then
INTERPRETACION = ""
Else
INTERPRETACION = .Fields("Di_cieinterpretacion")
End If
 
If IsNull(.Fields("Di_diag_numero")) Or .Fields("Di_diag_numero") = "" Then
ORDEN_ENTRADA = ""
Else
ORDEN_ENTRADA = .Fields("Di_diag_numero")
End If
 
'//---------------Variables---------------------------
Set item = lstListado.ListItems.Add(, , REPORTE)
                        item.SubItems(1) = IDENTIFICACION
                        item.SubItems(2) = DIAGNOSTICO
                        item.SubItems(3) = INTERPRETACION
                        item.SubItems(4) = ORDEN_ENTRADA
 
.MoveNext
Loop
End If
.Close
End With
Set DiagnosticoRs = Nothing
 
REPORTE = txtnum_repo
DIAGNOSTICO = Me.cbo101.Text
 
txtcontador = ""
cbo101.ListIndex = -1
End Sub

codigo para el listview las columnas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub COLUMNAS()
 
Me.lstListado.ColumnHeaders.Clear
 
'//----------------------------Formato de las columnas-------------------------------
Me.lstListado.ColumnHeaders.Add , , "Reporte", 1000
Me.lstListado.ColumnHeaders.Add , , "Identificador", 1500
Me.lstListado.ColumnHeaders.Add , , "Diagnostico", 1500
Me.lstListado.ColumnHeaders.Add , , "Interpretacion", 3500
Me.lstListado.ColumnHeaders.Add , , "Posición", 800
 
Me.lstListado.View = lvwReport
Me.lstListado.LabelEdit = lvwManual
Me.lstListado.FullRowSelect = True
 
End Sub

El gran problema es que me envia el error 13 en tiempo de ejecución no conciden los tipos de datos, este mismo codigo lo use en otro proyecto y si me funciona pero en este nuevo proyecto no me funciona y no encuentro el pq el error. AYUDA PORFAVOR
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de DANIEL
Val: 7
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Problemas con Listview URGENTE AYUDA..

Publicado por DANIEL (4 intervenciones) el 11/07/2018 16:28:29
Mira a ver si tienes en componentes los windows Common Controls de
distintas versiones, 5 y 6, y te aparecen dos listviews distintos. Si es
así, puede ser que tengas un listview de la versión 6 y el listitem que
estás definiendo sea de la 5.
Ponle Dim list as obejct en vez de Dim list As ListItem y te debe
funcionar.


SOLUCIONADO WEEEEEEEEEEE
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar