SAP Netweaver / ABAP                  Notas técnicas / Tips / Tutorials

Función ABAP: Recuperacion de partidas individuales

Recupere información de partidas individuales en ABAP sin utilizar sentencias SELECT.

La función GET_CLEARED_ITEMS en ABAP permite obtener los datos de documentos relacionados a una orden con la misma información que se visualiza en una consulta de partidas individuales de acreedor o deudor.

Generalmente, los documentos relacionados a una orden de pago corresponden a facturas, pero bien pueden representar notas de débito/crédito u otros. Esta función es utilizable ya sea para obtener información de documentos de partidas de acreedor como también de deudor.

Por ejemplo, al visualizar un documento que representa una orden de pago a un acreedor mediante la transacción FB03, es posible recuperar las partidas individuales del documento de pago mediante el menú funcional Entorno Utilización del pago.

Esta misma información se obtiene con la función GET_CLEARED_ITEMS.

Se detalla a continuación los elementos necesarios y la forma de utilización de esta función dentro de un programa ABAP:

  • Definir variables que contienen los parámetros de entrada a la función. Ejemplo:
data: xbelnr like payr-vblnr. "Nro.documento
data: xbukrs like payr-zbukr. "Sociedad
data: xgjahr like payr-gjahr. "Ejercicio
data: xbvorg like bkpf-bvorg. "Nro operación contab.multisociedades
  • Definir la tabla interna que contendrá las partidas individuales del documento de pago. Ejemplo:
data:    begin of itab occurs 50.
data: xauth(1) type c. " Berechtigung
data: xhell(1) type c. " Hell anzeigen
include structure rfpos. " Listanzeigen-Strukture
include rfeposc9. " Kunden-Sonderfelder
data: end of itab.

Tener en cuenta, que si se utiliza esta función dentro de, por ejemplo, un loop y se desea procesar separadamente por documento de pago/cobro, es necesario limpiar la tabla interna debido a que la función siempre realiza append sobre la tabla.

Ejemplo:

...clear itab. refresh itab....
  • Llamada a la función, un ejemplo:
 ...
call function 'GET_CLEARED_ITEMS'
exporting
i_belnr = xbelnr
i_bukrs = xbukrs
i_gjahr = xgjahr
i_bvorg = xbvorg
tables
t_items = itab
exceptions
not_found = 1
error_cleared_accounts = 2
others = 3.
...
  • Por último, y dependiendo del código de retorno, comenzar a procesar las partidas que se almacenaron en la tabla interna.
...
case sy-subrc.
when 0.
perform procesar_tabla.
when 1.
* No se encontró doc. de compensación
when others.
* Otro error.
endcase.
...
...
case sy-subrc.
when 0.
perform procesar_tabla.
when 1.
* No se encontró doc. de compensación
when others.
* Otro error.
endcase.
...

 


Copyright Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 

Tema: FI, PARTIDAS INDIVIDUALES, FUNCIONES Descripcion: Obtención de información de partidas individuales sin utilizar sentencias SELECT en ABAP.

 

Copyright © 2025 Teknoda Tech Portal & Training. Todos los derechos reservados.
Joomla! es software libre, liberado bajo la GNU General Public License.