Visual Basic - NO se encontro el elemento en esta coleccion Access

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

NO se encontro el elemento en esta coleccion Access

Publicado por Juan Pablo (7 intervenciones) el 20/09/2016 01:44:58
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*Me dice No se encontro el elemento en esta coleccion en RS2!Desc y mas adelante tambien */
 
    OpenRS ("select * from productos") /*esta rutina la tengo en un .BAS*/
 
    Set RS2 = DAO.Recordset
 
    While Not RS.EOF
        Set RS2 = DB.OpenRecordset("select sum(cant) as iCant from pedidos_b where fec=" & _
        CDbl(dtpFec.Value) & " and cod='" & RS!Cod & "'")
 
            If RS2!iCant > 0 Then
                grid.Rows = grid.Rows + 1
                grid.Row = grid.Rows - 1
                grid.Col = 1: grid.Text = RS2!Desc
                grid.Col = 2: grid.Text = RS2!marca
                grid.Col = 3: grid.Text = RS2!rubro
                grid.Col = 4: grid.Text = RS2!iCant
            End If
 
        RS.MoveNext
    Wend
 
/*Que esta mal?   tuve este problema hace unos años y lo solucione, perdi el archivo lo siento*/
facebook.com/joni.luna.5 este es mi facebook
Gracias
Sin-titulo
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
sin imagen de perfil
Val: 12
Ha disminuido su posición en 64 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

NO se encontro el elemento en esta coleccion Access

Publicado por Alfredo (12 intervenciones) el 20/09/2016 01:53:57
Fijate como tienes las columnas de tu base de datos, te esta diciendo que no encontro la columna Desc, a lo mejor lo tienes con minusculas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Juan Pablo
Val: 82
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

NO se encontro el elemento en esta coleccion Access

Publicado por Juan Pablo (7 intervenciones) el 20/09/2016 02:31:45
Gracias amigo, ya lo hice, VB6 no distingue mayusculas y eso, y en Set RS2 = DAO.Recordset esta corregido por Dim, igualmente da el mismo error. Mil gracias por comentar, un abrazo!
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
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

NO se encontro el elemento en esta coleccion Access

Publicado por Andres Leonardo (1798 intervenciones) el 20/09/2016 16:55:43
LO que pasa es que haces un select SUm y eso devuelve un campo.
entonces recuperas un solo campo y en el grid estas asignando mas de un campo por eso ese error.

deberias hacer un select que te devuelve el numero de columnas que vas a asignar siempre.

Espero te ayuda saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Juan Pablo
Val: 82
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

NO se encontro el elemento en esta coleccion Access

Publicado por Juan Pablo (7 intervenciones) el 21/09/2016 17:32:43
Tenias razon, gracias.

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
While Not RS.EOF
    Set RS2 = DB.OpenRecordset("select sum(cant) as iCant from pedidos_b where fec=" & _
    CDbl(dtpFec.Value) & " and cod='" & RS!cod & "'")
 
        If RS2!iCant > 0 Then
 
            Dim X As Integer
            Dim Y As Integer
            X = RS2!iCant
 
            Set RS2 = DB.OpenRecordset("select * from pedidos_b where fec=" & _
            CDbl(dtpFec.Value) & " and cod='" & RS!cod & "'")
 
 
            grid.Rows = grid.Rows + 1
            grid.Row = grid.Rows - 1
            grid.Col = 1: grid.Text = RS2!desc
            grid.Col = 2: grid.Text = RS2!marca
            grid.Col = 3: grid.Text = RS2!rubro
            grid.Col = 4: grid.Text = X
 
            Y = Y + X
        End If
 
    RS.MoveNext
Wend
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
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

NO se encontro el elemento en esta coleccion Access

Publicado por Andres Leonardo (1798 intervenciones) el 21/09/2016 20:29:08
Me alegro que te haya servido un gusto

SAludos
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