Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Es la primera vez que utilizo este medio para plantear una duda: Tengo dos archivos QVD donde manejo como campo en común el número de cliente. Mi problema es que en mi tabla principal (DETALLES) esta condicionada para que obtenga solo algunos registros que cumplan con la condición. Lo que quiero hacer es que en mi otra tabla DATOSCLIENTE, se tome unicamente un campo.
Principal:
LOAD NumeroCliente,
NumeroCliente AS ClienteReferenciado,
SaldoTotalMuebles, ,
SaldoTotalRopa,
FROM Detalles.qvd
WHERE NumeroCliente = 15901527;
Directorio:
LOAD NumeroCliente,
Credito
FROM DatosCliente
Lo que quiero hacer es que el resultado sea:
NumeroCliente SaldoTotalMuebles SaldoTotalRopa Credito
15901527 900 50 5000
Como puedo hacer eso? Tengo que validar tambien cuando cargo los datos de la tabla DIRECTORIO en el where la misma validación que en la carga PRINCIPAL? ME habian comentado que se puede hacer con un JOIN, pero no tengo idea.
Debes hacer que todas las cargas se concatenen en una sola tabla. Para ello debes asegurarte que todas las instrucciones LOAD tienen exáctamente los mismos nombres de campos o utilizar la palabra clave CONCATENATE antes del primer LOAD.
Prueba lo siguiente:
Principal:
LOAD NumeroCliente,
NumeroCliente AS ClienteReferenciado,
SaldoTotalMuebles,
SaldoTotalRopa,
FROM Detalles.qvd
WHERE NumeroCliente = 15901527;
LEFT JOIN
LOAD NumeroCliente,
Credito
FROM DatosCliente;
Juan Gerardo
Muchas GRacias Juan, ahora s eme presenta otro problema. Tengo que cargar varios QVD que tienen la misma estructura, el problema es que al momento de cargarme todos los archuivos, se me genera una tabla sintetica y todos los archivos que subí en lugar de que me genere una sola tabla.
Lo que hago es esto:
FOR i = 1 TO 5
IF MesCalculado > 12 THEN
MesCalculado = 1
AñoAnterior = AñoAnterior + 1
ENDIF
// Calcula el mes
IF MesCalculado < 10 THEN
NombreTablaTramites = '[\\10.44.167.13\QVD and Excel Crédito\CREDITO\MEXICO\SemestreCredito_' & '0' & MesCalculado & AñoAnterior & '.qvd] (qvd)'
NombreTablaDialogos = '[\\10.44.167.13\QVD and Excel Crédito\CREDITO\MEXICO\Directorio_' & '0' & MesCalculado & AñoAnterior & '.qvd] (qvd)'
ELSE
NombreTablaTramites = '[\\10.44.167.13\QVD and Excel Crédito\CREDITO\MEXICO\SemestreCredito_' & MesCalculado & AñoAnterior & '.qvd] (qvd)'
NombreTablaDialogos = '[\\10.44.167.13\QVD and Excel Crédito\CREDITO\MEXICO\Directorio_' & MesCalculado & AñoAnterior & '.qvd] (qvd)'
ENDIF
Crédito:
LOAD
NumeroCliente,
NumeroCliente AS ClienteReferenciado,
SaldoTotalMuebles,
MakeDate($(AñoAnterior), $(MesCalculado), 1) AS FechaCorte
FROM $(NombreTablaTramites)
WHERE NumeroCliente = 15901527;
LEFT JOIN
Directorio:
LOAD
NumeroCliente,
LineaDeCreditoRealConvertida
FROM $(NombreTablaDialogos);
MesCalculado = MesCalculado + 1
NEXT
Debes hacer que todas las cargas se concatenen en una sola tabla. Para ello debes asegurarte que todas las instrucciones LOAD tienen exáctamente los mismos nombres de campos o utilizar la palabra clave CONCATENATE antes del primer LOAD.