Urgente urgente sobre Ado . . .

Hola, necesito su ayuda urgente.
Abajo muestro la lógica del código y un ejemplo de lo que necesito hacer.
Código:
public numero as ??, numero1 as ?? Public numero2 as ?? (en el módulo)
adodc1.recorsource = "Select num from tablaX where cod_area = XX"
adodc1.refresh
adodc2.recorsource = "Select num from tablaY where cod_tipo = XX"
adodc2.refresh
numero1 = Los valores que devuelve el adodc1.recorsource
numero2 = Los valores que devuelve el adodc2.recorsource
numero = valores en comun de los adodc1 y adodc2
adodc3.recorsource = "Select * from tablaZ, tablaX, tablaY,tablaH, tablaM where tablaX.num = numero"
adodc3.refresh
Ejemplo:
adodc1 devuelve 10,20,30
adodc2 devuelve 20,30,40
numero = 20,30 (valores en comun)
Me imagino que te preguntas por qué no hice un solo Select, lo que pasa es que las condiciones de búsqueda no están definidas, sino que el usuario elige las combinaciones de variables y sus valores, es por ello que siempre tendré que hacer combinaciones diferentes.
De antemano gracias por su ayuda.
Chao Chao ...

1 respuesta

Respuesta
1
Tanto tiempo yanirae, por lo que veo has avanzado bastante..
Veamos..
No necesito declarar variables numero... no las voy a ocupar..
Public malo, i, j , cant, cant1 as integer
Public Tadodc1, Tadodc2 as New AdoDB.Recordset
malo=0
adodc1.recordsource = "Select num from tablaX where cod_area = 'XX'"
adodc1.refresh
If adodc1.recordset.recordcount<>0 then
Set Tadodc1=adodc1.recordset '(Guardo en el recordset los numeros que encontre)
else
malo=1
end if
If malo=0 then '(Encontre numeros en ambas tablas)
'Reviso coincidencias entre ambos recordset
Tadodc1.movelast
cant=Tadodc1.recordcount
TAdodc1.movefirst
for i=1 to cant
adodc2.recordsource="Select * from TablaY where Num='" & Tadodc1("Num") & "'"
adodc2.refresh
If adodc2.recordset.recordcount<>0 then
Set Tadodc2=adodc2.recordset
'Aca tengo todos los de la tablaY cuyo num coincide con los num encontrados en la tablaX.
end if
Tadodc1.movenext
next
end sub
Analízalo, revísalo y lo hablamos mañana, no debieras tener problemas, creo que el análisis es el correcto.
Un abrazo desde Chile.
Master

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas