✒️ABAP / Las subrutinas y la grabación de datos de un BI Por Miguel Acosta Acosta

Selector Alummnos / Empresas

ABAP Las subrutinas y la grabación de datos de un BI

ABAP Las subrutinas y la grabación de datos de un BI

SUBRUTINAS Y GRABACIÒN DE DATOS DE UN BI

1.- Utilizaciòn de subrutinas en un batch input.

Para hacer màs simple la creaciòn de un Batch Input, vamos a utilizar la subrutina BDC_FIELD, la cual nos va a modularizar los programas.

* Form bdc_field

FORM bdc_field USING dyn_begin TYPE c

campo1

campo2.

CLEAR st_bdc_data.

IF dyn_begin = 'X'..

st_bdc_data-program = campo1.

st_bdc_data-dynpro = campo2.

st_bdc_data-dynbegin = dyn_begin.

ELSE.

st_bdc_data-fnam = campo1.

st_bdc_data-fval = campo2.

ENDIF.

APPEND st_bdc_data TO ti_bdc_data.

ENDFORM.

Cambiando lo anterior, utilizando la subrutina BDC_FIELD:

* Ingreso a la primera pantalla y presiono el botòn de mantenimiento.

PERFORM bdc:field USING 'X' 'SAPMSVMA' '0100'.

PERFORM bdc_field USING ' ' 'VIEWNAME' 'ZTABLA_USUARIOS'.

PERFORM bdc_filed USING ' ' 'BDC_OKCODE' '=UPD'.

* Presiono botòn de nuevas entradas

PERFORM bdc_field USING 'X' 'SAPLZTABLA_USUARIOS' '0002'.

PERFORM bdc_field USING ' ' 'BDC_OKCODE' '=NEW'.

* cargo datos de usuario

PERFORM bdc_field USING 'X' 'SAPLZTABLA_USUARIOS' '0002'.

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-DNI' st_usuarios-dni

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-NOMBRE_APE' st_usuarios-nombre_ape.

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-ESTADO_USU' st_usuarios-estado_usu.

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-DIRECCION' st_usuarios-direccion.

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-CODIGO_POSTAL' st_usuarios-codigo_postal.

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-FECHA_NAC' st_usuarios-fecha_nac.

PERORM bdc_field USING ' ' 'ZTABLA_USUARIOS-ESTADO_CIVIL' st_usuarios-estado_civil.

* Grabo Los registros

PERORM bdc_field USING ' ' 'BDC_OPCODE' '=SAVE'.

* cierro la segunda pantalla.

PERFORM bdc_field USING 'X' 'SAPLZTABLA_USUARIOS' '0002'

PERFORM bdc_field USING ' ' 'BDC_OKCODE' '/ENDE'.

* Cierro la primera pantalla

PERFORM bdc_field USING 'X' 'SAPMSVMA' '0100'

PERFORM bdc_field USING ' ' 'BDC_OKCODE' '/EENDE'.

En el ejemplo anterior se puede ver lo importante que es la modularizaciòn en los programas Bacth Input.

2.- Còmo obtener los datos necesarios para la carga de la tabla BDCDATA?.

Vamos a explicar como obtener los valores que cargamos en la tabla interna BDCDATA. Para ello, tomamos el ejemplo de la carga de la tabla BDCDATA, que vimos en la lecciòn anterior.

Con la transacciòn SM30, recuperamos los datos correspondientes a la primera pantalla. Existen varias formas:

- Paràndonos sobre un campo de entrada de datos, presionamos F1 y luego click en el botòn de informaciòn tècnica.

Y veremos una ventana de diàlogo con informaciòn relevante para el armado de la tabla BDCDATA, como es el nombre del programa, el nombre de la dynpro y el nombre del campo.

- Paràndonos sobre un botòn de la pantalla presionamos F1. Y veremos una ventana de diàlogo con el nombre del programa y el còdigo de funciòn correspondiente al botòn.

- En todas las pantalla de SAP,podemos visualizar en el extremo inferior derecho de las mismas, diferentes datos de la pantalla como ser el nombre del programa en ejecuciòn, la transacciòn, etc.

3.- Grabaciòn de un Batch Input.

Otra forma màs eficiente de obtener los datos para la carga de la tabla BDCDATA, consiste en realizar una grabaciòn de los pasos que hacemos en la ejecuciòn de las transacciones, mediante la SM35.

"La transacciòn SM35, conocida como la grabadora, es utilizada para realizar la grabaciòn de las sesiones de Batch Input que nos serà de gràn utilidad a la hora de desarrollar nuestros programas".

Para realizar la grabaciòn, presionamos el botòn "Grabaciòn" Y veremos la siguiente ventana de diàlogo.

Asignamos un nombre a la grabaciòn

Escribimos el nombre de la transacciòn

El resto de las opciones, las dejamos como estàn y presionados el botòn "Iniciar grabaciòn"

Luego seguiremos la secuencia de pantallas hasta generar un registro en la tabla ZTABLA_USUARIOS, que finaliza presionando el botòn y saliendo de la transacciòn. Despuès de esto, veremos la siguiente pantalla con la grabaciòn.

"Cuando estamos haciendo una grabaciòn en la transacciòn SM35 y queremos ver el resultado de la misma, deberemos presionar el botòn grabar o el botòn exit de la pantalla"

La tabla con las columnas que visualizamos en la grabaciòn tiene la misma estructura que la tabla BDCDATA.

Luego si presionamos el botòn grabar, la grabaciòn quedarà almacenada en el sistema para consultarla mientras haceos el Batch Input. Tambièn es posible exportarla a un archivo o importar de un archivo una grabaciòn.

Por ùltimo, si volvemos hacia atràs, presionamos el botòn BACK de la pantalla, veremos la grabaciòn que acabamos de crear con cierta informaciòn de la misma.

Se puede ejecutar la grabaciòn cuantas veces se desee, presionando el botòn procesar y seleccionando la grabaciòn de la pantalla. Tambièn es posible modificar una grabaciòn creada para volver a ejecutarla.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para el Curso SAP ABAP.

SAP Expert


Miguel Angel Acosta Acosta

Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C

✒️Autor de: 238 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.

Certificación Académica de Miguel Acosta

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las subrutinas y la grabación de datos de un BI" de la mano de nuestros alumnos.

SAP Master


Las subrutinas y la grabación de datos de un BI. Para hacer mas simple la creación de un Batch Input se modulariza a través de una subrutina, estructurándolo para una mejor lectura y mantenimiento. Utilizar y ejecutar la subrutina dependiendo del tipo de línea a cargar (dinpro o no dinpro), asignando valores a distintos campos en la tabla BSDATA. En un Batch Input. Se mostró un ejemplo práctico modificando código ABAP anterior para utilizar la subrutina LLENAR_TABLA_BCDATA y se destacó la importancia de la modularización. Obtención de datos para BSDATA Se abordaron métodos para obtener valores necesarios en la carga de la tabla interna BSDATA....

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Subrutina `LLENAR_TABLA_BDCDATA` · Modulariza el código para hacerlo más legible y mantenible. · Parámetros: · P_DYNPRO: 'X' si es una nueva pantalla. · P_CAMPO1: Nombre del programa o campo. · P_CAMPO2: Número de dynpro o valor del campo. Código de la subrutina: ```abap FORM llenar_tabla_bdcdata USING p_dynpro TYPE c p_campo1 p_campo2. CLEAR wa_bdcdata. IF p_dynpro EQ 'X'. wa_bdcdata-dynbegin = p_dynpro. wa_bdcdata-program = p_campo1. wa_bdcdata-dynpro = p_campo2. ELSE. wa_bdcdata-fnam = p_campo1. wa_bdcdata-fval = p_campo2. ENDIF. APPEND wa_bdcdata TO ti_bdcdata. ENDFORM....

Acceder a esta publicación

Creado y Compartido por: Mara Fadua Romero Hernandez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Introducción: Optimiza la creación de Batch Inputs mediante subrutinas modulares (LLENAR_TABLA_BDCDATA) y grabaciones automáticas (SHDB), evitando errores y acelerando el desarrollo. Subrutina LLENAR_TABLA_BDCDATA Propósito: Modularizar la carga de BDCDATA para simplificar programas. Parámetros clave: p_dynpro: 'X' → Indica que la línea es una dynpro (pantalla). Ejemplo (dynpro): p_campo1: Nombre del campo (FNAM) o programa (PROGRAM). p_campo2: Valor del campo (FVAL) o número de dynpro (DYNPRO). Ejemplo...

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert



Subrutinas y grabación de datos en un BI en SAP En el contexto de SAP Business Intelligence (BI), las subrutinas y la grabación de datos son componentes clave para garantizar el procesamiento eficiente, estructurado y correcto de la información durante la carga, transformación y almacenamiento de datos en el sistema. Estos elementos desempeñan un papel crucial en los procesos de extracción, transformación y carga (ETL), así como en el mantenimiento de la integridad y la trazabilidad de los datos en SAP BW (Business Warehouse). Subrutinas en SAP BI Las subrutinas en SAP BI se utilizan principalmente dentro de transformaciones, rutinas de actualización y reglas de conversión...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Las subrutinas y la grabación de datos de un BI 1 La utilización de subrutinas en un Batch Input Una de las subrutinas más utilizadas es LLENAR_TABLA_BDCDATA, que se encarga de cargar de forma controlada los datos dentro de la tabla interna BDCDATA, fundamental en el proceso del Batch Input. Ahora bien existe dos formas de ejecutar la subrutina LLENAR_TABLA_BDCDATA Cuando se carga una pantalla o dynpro. Cuando se cargan los campos y valores dentro de una pantalla. 2 Cómo obtener los datos necesarios para la carga de la tabla interna BDCDATA? Para que un Batch Input funcione correctamente, es esencial contar con la información precisa de las pantallas, campos y botones de la transacción que...

Acceder a esta publicación

Creado y Compartido por: Geovanny Martínez Campoverde

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Las subrutinas y la grabación de datos de un BI 1. La utilización de subrutinas en un Batch Input Para hacer más simple la creación de un batch input vamos a utilizar la subrutina llenar_tabla_bdcdata que nos va a permitir modularizar los programas. La estrucutra de la subrutina llenar_tabla_bdcdata es la siguiente PERFORM llenar_tabla_bdcdata USING <dynpro> <campo1> <campo2> dynpro: es un flag que cuando está en 'X' indica que la línea que se intenta cargar en la tabla interna BDCDATA es una dympro campo1: es el contenido del campo 1, el cual es un textoq eu se pasa entre comillas campo2: es el contenido del campo 2, el cual es un textoq eu se pasa entre comillas Existen 2 formas...

Acceder a esta publicación

Creado y Compartido por: Yeny Gisela Yanes Bautista

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Utilizacion de subrutinas en un batch input Para simplificar la creacion de un batch input, hay que definir una subrutina con la que se modularizaran los programas. La sintaxis seria: PERFORM llenar_tabla_bdcdata USING <dynpro> <campo1> <campo2>. Dynpro: es un flag que cuando esta en 'X' indica que la linea que se intenta cargar en la tabla interna BDCDATA es una dynpro. Campo1: es el contenido del campo 1, un texto entre comillas. Campo2: es el contenido del campo 2, un texto entre comillas. Ahora en la subrutina hay dos formas de ejecutarla. Si lo que vamos a cargar en la tabla interna BDCDATA...

Acceder a esta publicación

Creado y Compartido por: Luciano Martinez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Grabacion de un Batch Input. La transacción estándar de SAP SM35 se utiliza para la grabación de sesiones de datos de Batch Inputs. Esta transacción es sumamente útil debido a que cuando estamos en el proceso de generación de un batch input, podremos generar una grabación simulando lo que va a realizar el batch input y esto es lo que nos va a dar la información de nombres de programas, números de dynpros, códigos de botones de la pantalla presionados, que utilizaremos para completar la tabla interna del batch input. Recordemos que la idea detrás del concepto de batch input es simular a un usuario interactuando o cargando datos en una o varias pantallas de una transacción,...

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

La utilizacioón subrutinas en un Batch Input, vamos a utilizar la subrutina LLANAR_TABLA_BDCDATA, que nos va a permitir modularizar los programas. La estructura de la subrutina LLENAR_TABLA_BDCDATA. Analicemos a continuación para que se utioliza cada uno de los tresparámetros de entrada que son: Dynpro: es un flag que cuando está en 'X' indica que la linea que se intenta cargar en la tabla interna BDCDATA es una dynpro campo1: es el contenido del campo 1, el cual es un texto que se pasa entre comillas. campo2: es el contenido del campo 2, el cual es un texto que se pasa entre comillas. Ahora bien existen dos formas de ejecutar la subrutina LLENAR_TABLA_BDCDATA. Si lo que vamos a cargar en la tabla interna...

Acceder a esta publicación

Creado y Compartido por: Javier Miguel Angel Barcelo / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

LA UTILIZACIÓN DE SUBRUTINAS EN UN BATCH INPUT: para la creación de un batch input, en este caso vamos a utilizar la subrutina “LLENAR_TABLA_BDCDATA” que nos va a permitir modularizar los programas, la estructura de la subrutina LLENAR_TABLA_BDCDATA es la siguiente: PERFORM llenar_tabla_bdcdata USING <dynpro> <campo1> <campo2> Donde cada campo es: - Dynpro: es un flag que cuando está en ‘X’ indica que la línea que se intenta cargar en la tabla interna BDCDATA es una dynpro. - Campo1: es el contenido del campo 1, el cual es un texto que se pasa entre comillas. - Campo2: es el contenido del campo 2, el cual es un texto que se pasa entre comillas. GRABACIÓN DE...

Acceder a esta publicación

Creado y Compartido por: Jean Carlos Lopez / Disponibilidad Laboral: FullTime

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!