Bueno ya me asignaron mi maquina en el trabajo y bueno espero estar mas a menudo por aca.
En esta oportunidad les hago una consulta con respecto a un SELECT que estoy haciendo para un ALV.
SELECT ZLOG_RES~DOC_LEGADO ZLOG_RES~DOC_SAP ZLOG_CAB~DOC_LEGADO
ZLOG_CAB~HEADER_TXT ZLOG_RES~RESULTADO
APPENDING TABLE it_DETALLE
FROM ZLOG_RES INNER JOIN ZLOG_CAB
ON ZLOG_RES~DOC_LEGADO EQ ZLOG_CAB~DOC_LEGADO
WHERE ZLOG_RES~DATUM IN FECHA
AND ZLOG_RES~DOC_LEGADO eq LEGADO
AND ZLOG_CAB~COMP_CODE EQ SOCIEDAD.
IF SY-SUBRC EQ 0.
cl_salv_table=>factory( importing r_salv_table = gr_table
changing t_table = it_detalle ). Importa Datos de IT
gr_table->display( ). -- Despliega ALV
De verdad es bastante sencillo, basicamente lo que quiero es traer es traer esos datos que se muestran, para luego desplegar un alv inmediatamente despues de llenado la tabla interna.
Tengo una duda. Cuando me dices que:[quote=“Haden_Yasser_, post:8, topic:8624, full:true”]
Y que valores tienen esos parametros al momento de hacer el SELECT? recuerda que no deben estar en blanco. la menos los parametros.
[/quote]
Estos parametros no se necesitan de caracter obligatorio segun lo que me pidieron. Pero de igual forma hice la prueba llenando el parametro LEGADO con el mismo resultado. Lo que si quieren tener como obligatorio es la fecha, pero eso puedo arreglarlo posteriormente.
Si están en blanco, entonces esta parte del select te fallará:
AND ZLOG_RES~DOC_LEGADO eq LEGADO
AND ZLOG_CAB~COMP_CODE EQ SOCIEDAD.
Porque estás diciendo que el legado sea igual a espacio. Y en tu tabla no tienes un registro cuyo legado o sociedad sean igual a espacio. Si no es obligatorio entonces usa SELECT-OPTIONS, para que en tu consultas cambies en EQ por IN.
Es que tienes varios errores mezcldos,
debes hacer varios cambios, haz lo que te dije del EQ por = en el join, y luego aplica lo que dice @Haden_Yasser_ y cambia el EQ por IN.
Con eso resuelves.
OJO! común en usuario normales y error de olvido en los desarrolladores, si es necesario que el campo lleve datos valida lo, si no es necesario valida lo.
Sea condición if, case u otra que desconozca, depende que quieras hacer para la cantidad de condiciones necesarias pero son 2 campos entonces es de 1 a 3 posibilidades.