#1
|
|||
|
|||
Funcion para tablas
Buenas tardes alguno de uds conoce de alguna funcion para tabla que se pueda utilizar en vez de los tradicionales select
CALL FUNCTION 'K_COEP_INSERT' "Updating line item COEP EXPORTING * epskz = 'X' " tka07-epskz Ind. whether planned line items ar * totals_update = 'X' " tka07-epskz Indicator 'update totals records' vrgng = " cobk-vrgng Transaction TABLES cobk_tab = " cobk Table of the document headers to b coep_tab = " coep Table of the COEP records to be wr . " K_COEP_INSERT Algo parecido a esto. Les agradezco de antemano |
#2
|
|||
|
|||
Hola, la funcion 'K_COEP_INSERT' (por lo visto) se utiliza para modificar una posición de una partidas COEP, esto no quiere decir que solo vas a modificar una tabla (si es estandar sap, puede modificar 1 o varias tablas) esta es la mejor forma de modificar cualquier objeto si lo haces programando, estas funciones se llaman BAPI (hay manuales) depende de lo que quieras hacer, puedes utilizar la BAPI que sea necesario, NO PARA TODO HAY BAPIS,
No se si te he ayudado, sino, danos mas informacion saludos Manuel H. |
#3
|
|||
|
|||
Funcion para tabla
Gracias por responder lo sucedido es lo siguiente, recien me pidieron en el trabajo modificar la siguiente consulta:
SELECT coep~belnr coep~buzei coep~vrgng cobk~budat coep~objnr coep~wkgbtr coep~mbgbtr coep~matnr cobk~refbn cobk~aworg coep~meinb cobk~awtypcoep~perio coep~gjahr coep~wrttp coep~kstar coep~parob coep~uspob coep~beknz coep~werks coep~wogbtr coep~owaer coep~megbtr INTO CORRESPONDING FIELDS OF TABLE ti_cobk_coep3 FROM coep INNER JOIN cobk ON coep~mandt = cobk~mandt AND coep~kokrs = cobk~k okrs AND coep~belnr = cobk~belnr WHERE cobk~budat IN so_budat AND coep~kokrs EQ 'GAND' AND coep~wrttp EQ '04' AND coep~lednr EQ '00' AND coep~objnr IN r_objnr AND coep~vrgng NE 'KOAO'. Averiguando y ayudado por otros amigos modifique la consulta a esto: SELECT mandt kokrs belnr buzei perio wogbtr wkgbtr megbtr mbgbtr lednr objnr gjahr wrttp kstar vrgng parob uspob beknz owaer meinb werks matnr FROM COEP INTO TABLE ti_coep WHERE objnr IN r_objnr AND kokrs EQ 'GAND' AND wrttp EQ '04' AND lednr EQ '00' AND vrgng NE 'KOAO'. NOTA: AWORG NO EXISTE, SORT ti_coep BY mandt kokrs belnr. DELETE ADJACENT DUPLICATES FROM ti_coep COMPARING mandt kokrs belnr. SELECT mandt kokrs belnr budat awtyp aworg FROM COBK INTO TABLE ti_cobk FOR ALL ENTRIES IN ti_coep WHERE budat IN so_budat and kokrs EQ 'GAND'. SORT ti_cobk BY mandt kokrs belnr. LOOP AT ti_coep into st_coep. READ TABLE INTO ti_cobk WITH KEY mandt = st_cobk-mandt and st_cobk-kokrs and st_cobk-belnr binary search. IF sy-subrc = 0. MOVE-CORRESPONDING st_cobk to st_coep. APPEND st_coep to ti_coep. ENDIF. IF sy-subrc = 0. MOVE-CORRESPONDING st_coepto st_cobk. APPEND st_cobk to ti_cobk. ENDIF. ENDLOOP. Probe la consulta pero aun no corre el programa, tambien me indicaron que seria bueno utilizar funciones. Es por eso que recurro a ustedes expertos, y les pregunto si la consulta que modifique esta bien hecha, que le falta, y si habria alguna funcion que pueda reemplazarla. Muchas gracias por su atención. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|