Visual Basic para Aplicaciones - Error en el metodo open del objeto recordset

Life is soft - evento anual de software empresarial
   
Vista:

Error en el metodo open del objeto recordset

Publicado por Juan (2 intervenciones) el 08/07/2016 11:34:52
Buenas a todos:

Me estoy volviendo loco con este código, la consulta esta correcta, pero el recordset no quiere abrirse,
¿Alguién ve el fallo?

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
Private Sub CommandButton1_Click()
  'dimensiones
Dim datConnection As ADODB.Connection
Dim recSet As ADODB.Recordset
Dim strDB, strSQL As String
Dim lngTablas As Long
Dim i As Long
 
'ruta al archivo Access
'strDB = "C:\Fabricacion.mdb"
 
 
'crear la conexión
Set datConnection = New ADODB.Connection
Set recSet = New ADODB.Recordset
datConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source =" & strDB & ";"
 
'consulta SQL
strSQL = "SELECT e.art, e.compo, e.fase, e.ruta, v.vpa, v.vpp, e.Est_Frecuencia, e.UD, Ma.ID, M.descrip FROM e FULL OUTER JOIN v ON e.compo= v.art AND e.fase = v.fase AND e.ruta = v.ruta FULL OUTER JOIN Ma ON v.TipoMod = Ma.TipMod AND v.ruta= Ma.ruta AND v.fase= Ma.fase FULL OUTER JOIN M ON Ma.ID = M.ID WHERE e.art like '_1CO135180' and e.natur= 'OP'" _
& "Union" _
& "SELECT e.art, e.compo, e.fase, e.ruta, v.vpa, v.vpp, e.FR, e.UD, Ma.ID, M.descrip FROM e FULL OUTER JOIN v ON e.compo= v.art AND e.fase = v.fase AND e.ruta = v.ruta FULL OUTER JOIN Ma ON v.TipoMod = Ma.TipMod AND v.ruta= Ma.ruta AND v.fase= Ma.fase FULL OUTER JOIN M ON Ma.ID = M.ID WHERE e.art like '_1CO' and e.natur= 'OP'
recSet.Open strSQL, datConnection
 
'copiar datos
Range("d24").CopyFromRecordset recSet
 
 
  recSet.Close
  Set recSet = Nothing
 
End Sub

Saludos
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
información
Otras secciones de LWP con contenido de Visual Basic para Aplicaciones
- Código fuente de Visual Basic para Aplicaciones
- Cursos de Visual Basic para Aplicaciones
- Temas de Visual Basic para Aplicaciones
información
Códigos de Visual Basic para Aplicaciones
- Monto Escrito
- Calculador de TSP
- Análisis Numerico
Imágen de perfil de Andres Leonardo

Error en el metodo open del objeto recordset

Publicado por Andres Leonardo (26 intervenciones) el 08/07/2016 16:30:21
Coloca un On Error
y que te muestre la descripcion del error
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Error en el metodo open del objeto recordset

Publicado por Juan (2 intervenciones) el 11/07/2016 08:36:58
Gracias por tu pronta respuesta y disculpa la demora.
Finalmente es un conflicto de tipos, por alguna razón cuando crearon las tablas lo hicieron con diferentes tipos en diferentes tablas( integer y string para fase y ruta).
Estuve probando CLng, Cint y SUBSTRING para evitarlo y transformar el string en integer, pero sin resultado.
Como no puedo demorarme más, tengo que optar por algo menos óptimo y dividir la consulta.
Muchas gracias por todo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar