#1
|
||||
|
||||
Consulta de lectura de tabla interna
Hola amigos tengo una consulta, tengo el sgte codigo:
Al momento de leer la tabla interna (t_ztb_prvac) ya cargada a travez de un loop con un where pernr EQ pernr-pernr, no obtiene los datos en la tabla gt_rep. Por favor podrian orientarme si esta bien mi codigo o que sugerencia me darian ( mi objetivo es llenar una tabla interna recorrerla y obtener los datos y mostralos en otra tabla solo por su pernr (codigo de personal). TABLES: pernr, ztb_prvac. TYPES: BEGIN OF gty_rep, bukrs LIKE ztb_prvac-bukrs, pernr LIKE ztb_prvac-pernr, nomc(50) TYPE C, begda LIKE ztb_prvac-begda, endda LIKE ztb_prvac-endda, tdias LIKE ztb_prvac-tdias, tdliq LIKE ztb_prvac-tdliq, tprov LIKE ztb_prvac-tprov, tsalp LIKE ztb_prvac-tsalp, END OF gty_rep. DATA: t_ztb_prvac TYPE TABLE OF ztb_prvac WITH HEADER LINE, gt_rep TYPE STANDARD TABLE OF gty_rep WITH HEADER LINE. START-OF-SELECTION. REFRESH t_ztb_prvac. CLEAR t_ztb_prvac. SELECT * INTO CORRESPONDING FIELDS OF TABLE t_ztb_prvac FROM ztb_prvac WHERE bukrs in PNPBUKRS. GET pernr. rp-provide-from-last p0002 space pn-begda pn-endda. PERFORM carga_datos. END-OF-SELECTION. FORM carga_datos . REFRESH gt_rep. CLEAR gt_rep. LOOP AT t_ztb_prvac where pernr EQ pernr-pernr. CONCATENATE p0002-vorna p0002-nachn p0002-name2 INTO v_nomc SEPARATED BY SPACE. TRANSLATE v_nomc TO UPPER CASE. gt_rep-nomc = v_nomc. gt_rep-bukrs = t_ztb_prvac-bukrs. gt_rep-pernr = t_ztb_prvac-pernr. gt_rep-begda = t_ztb_prvac-begda. gt_rep-endda = t_ztb_prvac-endda. gt_rep-tdias = t_ztb_prvac-tdias. gt_rep-tdliq = t_ztb_prvac-tdliq. gt_rep-tprov = t_ztb_prvac-tprov. gt_rep-tsalp = t_ztb_prvac-tsalp. APPEND gt_rep. ENDLOOP. ENDFORM. " carga_datos Muchas Gracias |
#2
|
||||
|
||||
Cuando intentas debuggear, tu tabla interna contiene datos??, de ser asi la otra pregunta es si el campo pernr-pernr esta vacio o contiene valor'?
__________________
David Carballido Córdova |
#3
|
||||
|
||||
David siempre dando la mano, sabes ya descubri mi problema es que el problema era que cada vez que salgo del loop estaba declarando un refresh lo cual hacia que no me muestre la data de la tabla gt_rep .... osea solito me fregaba jeje START-OF-SELECTION. REFRESH t_ztb_prvac. CLEAR t_ztb_prvac. SELECT * INTO CORRESPONDING FIELDS OF TABLE t_ztb_prvac FROM ztb_prvac WHERE bukrs in PNPBUKRS. GET pernr. rp-provide-from-last p0002 space pn-begda pn-endda. PERFORM carga_datos. END-OF-SELECTION. FORM carga_datos . REFRESH gt_rep. CLEAR gt_rep. LOOP AT t_ztb_prvac where pernr EQ pernr-pernr. CONCATENATE p0002-vorna p0002-nachn p0002-name2 INTO v_nomc SEPARATED BY SPACE. TRANSLATE v_nomc TO UPPER CASE. gt_rep-nomc = v_nomc. gt_rep-bukrs = t_ztb_prvac-bukrs. gt_rep-pernr = t_ztb_prvac-pernr. gt_rep-begda = t_ztb_prvac-begda. gt_rep-endda = t_ztb_prvac-endda. gt_rep-tdias = t_ztb_prvac-tdias. gt_rep-tdliq = t_ztb_prvac-tdliq. gt_rep-tprov = t_ztb_prvac-tprov. gt_rep-tsalp = t_ztb_prvac-tsalp. APPEND gt_rep. ENDLOOP. ENDFORM. " carga_datos Muchas gracias DAVID. |
#4
|
||||
|
||||
Estamos para eso .... , veo que también eres de lima , un saludo
__________________
David Carballido Córdova |
Herramientas | Buscar en Tema |
Desplegado | |
|
|