Más contenido relacionado
La actualidad más candente (20)
Similar a Estandares abap (20)
Estandares abap
- 1. Proyecto “ “
Estándares de Programación SAP-ABAP
Table of Contents
Table of Contents................................................................................................................................ 1
Nomenclaturas:................................................................................................................................... 2
Variables:.......................................................................................................................................... 2
Constantes:...................................................................................................................................... 2
Parámetros de Entrada:.................................................................................................................. 2
Tipos de Datos, Tablas Internas y Rangos:................................................................................... 3
Nombres de Programas:................................................................................................................. 3
Objetos del Diccionario de Datos:.................................................................................................. 4
Paquetes (Clases de Desarrollo):................................................................................................... 4
Tablas y Vistas:................................................................................................................................ 4
Elementos de Datos, Dominios, Search Helps y Objetos de Bloqueo:....................................... 5
Transacciones y Menús de ámbito:................................................................................................ 5
Documentación Interna:..................................................................................................................... 6
Dentro del Programa:...................................................................................................................... 6
Hoja 1 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 2. Proyecto “ “
Estándares de Programación SAP-ABAP
Nomenclaturas:
Variables:
Las Variables GLOBALES deben de usar el prefijo GV_ seguidas de una breve descripción
compuesta por hasta 7 caracteres como máximo para dar una longitud máxima de 10
caracteres.
Las Variable LOCALES deben de usar el prefijo LV_ seguidas de una breve descripción
compuesta por hasta 7 caracteres como máximo para dar una longitud máxima de 10
caracteres.
Nota: Para ambos casos si la variable hace referencia a un objeto del Diccionario de Datos (DD), entonces
la descripción será igual a la del objeto; ejemplos: GV_BUKRS like BSIS-BUKRS. LV_BELNR like BSIS-
BELNR; si la descripción del Objeto del D.D. es mayor a 7, entonces la longitud de la descripción de la
variable se adecuara a los 7 caracteres definidos anteriormente, ejemplo: GV_ GRANT_N like BSIS-
GRANT_NBR.
Constantes:
Las Constantes deben de usar el prefijo C_ seguidas de una breve descripción compuesta por
hasta 8 caracteres como máximo para dar una longitud máxima de 10 caracteres.
Parámetros de Entrada:
Los Parámetros deben de iniciar con el prefijo P_ seguidos de una breve descripción no mayor de
6 caracteres para tener una longitud máxima de 8 caracteres, que es la permitida por SAP.
Los Rangos de Selección (Select-Options) deben de iniciar con el prefijo S_ seguidos de una breve
descripción no mayor de 6 caracteres para tener una longitud máxima de 8 caracteres, que es
la permitida por SAP.
Hoja 2 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 3. Proyecto “ “
Estándares de Programación SAP-ABAP
Tipos de Datos, Tablas Internas y Rangos:
Los Tipos de Datos deben de llevar el prefijo TY_ seguidos de una descripción de hasta 7
caracteres para dar una longitud máxima de 10 caracteres.
Las Tablas Internas deben de llevar el prefijo T_ seguidas de una descripción de hasta 7
caracteres para dar una longitud máxima de 10 caracteres.
Nota: Para ambos casos los campos que componen ambos objetos tienen una descripción libre, se
recomienda que si algún campo hace referencia a un campo de una tabla del Diccionario de Datos (DD),
la descripción sea igual a la de SAP, ejemplo:
TYPES:
BEGIN OF ty_ctas, " Estructura General p/Crear Planes de Cuentas
hkont LIKE bsis-hkont, " Cuenta de Mayor
ltext(50), " Texto Largo
END OF ty_ctas.
Los rangos a usar en un programa ABAP deben de iniciar con el prefijo R_ seguidos de una
descripción no mayor a 6 caracteres para obtener una longitud total de 8 caracteres.
Nombres de Programas:
Los programas ABAP (Excepto Module Pools) deben de cumplir con la siguiente nomenclatura:
Pos. 01 Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD),
Producción(PP), Project System(PS), Materiales(MM), Rec.Humanos(HR) y
Nómina (HRPY).
Pos. 04 Tipo de Programa: Reporte(R), Interfaz(I),Formulario(S –por Sapscript y
Smartform-) ó Módulo de Función(F).
Pos. 05 Guión bajo (_) para separar el prefijo del programa de su descripción.
Pos. 06-30 Descripción breve del Programa.
Notas: Para los Programas de Diálogo (Module Pools) se usará el prefijo SAPMZ_ el cual es el Standard de
SAP para este tipo de programas, de la posición 7 a la 30 se indicará una descripción breve del mismo.
Para los Programas tipo Incluye se aplicará el mismo procedimiento general explicado anteriormente, con
la consideración que en la descripción breve (Posiciones 06 a 30) se incluya en las últimas posiciones las
siguientes nomenclaturas:
DATA Para Includes de Declaración de Datos Variables, Tablas y/o Parámetros.
PROC Para Declaración de Procedimientos y Rutinas usados en el Programa Principal.
PAI Para rutinas PAI (Process After Input) usadas en programas tipo Include.
Hoja 3 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 4. Proyecto “ “
Estándares de Programación SAP-ABAP
PBO Para rutinas PBO (Process Before Output) usadas en programas tipo Include.
Objetos del Diccionario de Datos:
Paquetes (Clases de Desarrollo):
Los Paquetes (Clases de Desarrollo en versiones anteriores) ya están definidos por módulo, en
caso de requerir de algún paquete adicional, favor de solicitarlo a la persona responsable. Los
Paquetes creados son:
Clase de Desarrollo Descripción
ZBC Clase de desarrollo Basis
ZCO Clase de desarrollo CO
ZFI Clase de desarrollo FI
ZMM Clase de desarollo MM
ZPM Clase de desarrollo PM
ZPP Clase de desarrollo PP
ZPS Clase de desarrollo PS
ZRH Clase de desarrollo RH
ZSD Clase de desarrollo SD
Tablas y Vistas:
Las Tablas creadas en el Diccionario de Datos (DD) deben de llevar siguiente nomenclatura:
Pos. 01 Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD),
Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 Guión bajo (_) para separar el prefijo de la tabla de su descripción.
Pos. 05-16 Descripción breve de la tabla.
Las Vistas generalmente se crearan con la opción de “Generador actualiz.tab.” dentro del menú
“Utilidades” en la creación de las Tablas, en este paso la vista toma el mismo nombre de la
tabla, dicha vista puede ser llamada desde la transacción SM30. Solo en el caso de que sea
necesario crear otra vista o una vista compuesta se usara la opción de “Vista” en el Diccionario
de Datos, llevando la siguiente nomenclatura:
Pos. 01 Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD),
Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Hoja 4 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 5. Proyecto “ “
Estándares de Programación SAP-ABAP
Pos. 04 Letra “V”, la cual indicará que se trata de una Vista.
Pos. 05 Guión bajo (_) para separar el prefijo de la tabla de su descripción.
Pos. 06-16 Descripción breve de la tabla.
Elementos de Datos, Dominios, Search Helps y Objetos de Bloqueo:
En ambos casos deberán de llevar el prefijo “Z_” seguidos de una descripción breve, ejemplos:
Z_PRODUCTO, Z_EMPRESA, Z_FRANQUICIA, etc.
Transacciones y Menús de ámbito:
Las Transacciones deberán de llevar la siguiente nomenclatura:
Pos. 01 Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD),
Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 Guión bajo (_) para separar el prefijo de la transacción de su descripción.
Pos. 05-20 Descripción breve de la transacción.
Los Menús de ámbito deberán de llevar la siguiente nomenclatura:
Pos. 01 Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD),
Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 Guión bajo (_) para separar el prefijo de la transacción de su descripción.
Pos. 05-30 Descripción breve del Menú
Hoja 5 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 6. Proyecto “ “
Estándares de Programación SAP-ABAP
Documentación Interna:
Dentro del Programa:
Los programas desarrollados debe de contener la siguiente información, relevante para una mejor
comprensión del mismo:
1.- Nombre del Programa, 2.- Tipo, 3.-Título breve del Programa, 4.- Autor, 5.- Fecha de
Creación, 6.- Nombre de la Empresa(del que desarrolló el programa), 7.- Descripción del
Programa.
Adicionalmente se agregarán dos secciones, una con el histórico de las Ordenes de Transporte
asociadas al Programa y otra con el Histórico de las Modificaciones realizadas al mismo. Ambas
secciones deberán de contener al menos los siguientes datos: Fecha, Orden de Transporte,
Programador y Comentarios.
Se solicita el uso de Includes para las declaraciones de Datos y Subrutinas (en el caso de los
Module Pools, se solicitan dos más: uno para los procesos PAI y otro para los PBO), esto con el
propósito de hacer el flujo del programa lo más fácil posible para su análisis en las
modificaciones futuras, así como en los Quality Assurance aplicados al mismo.
También se requiere que los procesos y eventos que se realicen dentro del flujo del programa
contengan algún comentario que facilite la comprensión de su uso dentro del proceso lógico del
programa.
A continuación se muestra un ejemplo de un programa de tipo Interfase con la información
requerida:
*----------------------------------------------------------------------*
* Programa: ZFII_CARGA_PLAN Tipo: Programa de Interfase *
* Titulo : Carga Inicial de Planes de Cuentas. *
* Autor : Pablo Ojeda Fecha: Noviembre 17, 2010 *
* Empresa : Ojeda Juraidini Consulting *
* Descrip.: Interfaz para la Carga Inicial de Diferentes Planes de *
* Cuentas. *
************************************************************************
* Histórico de Ordenes de Transporte: *
*----------------------------------------------------------------------|
* Orden Tr. | Fecha | Comentarios |
*----------------------------------------------------------------------|
Hoja 6 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 7. Proyecto “ “
Estándares de Programación SAP-ABAP
* DEVK900074 | 17/11/2010 | Desarrollo Inicial [Creación] |
* | | |
************************************************************************
* Histórico de Modificaciones: *
*----------------------------------------------------------------------|
* Date | Desarrollador | Orden Tr.| Comentarios |
*----------------------------------------------------------------------|
* 17/11/2004 | P.Ojeda |DEVK900074| Desarrollo Inicial. |
* | | |
************************************************************************
REPORT zfii_carga_plan MESSAGE-ID 00 NO STANDARD PAGE HEADING.
***************************************************
** Includes utilizados por el Programa Principal **
***************************************************
INCLUDE zfii_carga_plan_data. " Declaración de Variables y Tablas.
INCLUDE zfii_carga_plan_proc. " Procedimientos usados en el Programa
********************************
* Eventos de Selection Screens *
***********************************************************************
** Se ejecuta rutina GET_FILENAME si el usuario da un click sobre el **
** campo P_FILE **
***********************************************************************
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
PERFORM get_filename. " Muestra ventana diálogo del archivo a leer
***********************************
** Inicio del Flujo del Programa **
***********************************
START-OF-SELECTION.
PERFORM upload_file. " Sube archivo de texto a tablas internas
PERFORM open_batch. " Abre el juego de datos
PERFORM fill_batch. " Llena el Juego de Datos
PERFORM close_batch. " Cierra el Juego de Datos
En el caso de modificaciones realizadas a un programa existente, es necesario indicar en el rubro
de “Comentarios” del Histórico de Modificaciones las iniciales que permitan identificar sus
cambios dentro del programa. Además de sus iniciales, en las líneas modificadas deberán de
llevar la Fecha de Modificación/Inserción/Borrado de la misma. En caso de ser un grupo de
Hoja 7 de 8
© 2010 Ojeda & Juraidini Consultores S.C.
- 8. Proyecto “ “
Estándares de Programación SAP-ABAP
líneas de programación continuas, indicar cual es la línea inicial y cual la final, siempre
indicando sus iniciales y fechas de modificación.
A continuación se muestra un ejemplo de líneas insertadas/borradas en un programa:
***********************************
** Inicio del Flujo del Programa **
***********************************
START-OF-SELECTION.
** POA Nov. 26, 2010 Inicio: Se Elimina rutina UPLOAD_FILE y se sustituye **
** por las rutinas NEW_UPLOAD1 y NEW_UPLOAD2. **
** PERFORM upload_file. " Sube archivo de texto a tablas internas
PERFORM NEW_UPLOAD1.
PERFORM NEW_UPLOAD2.
** POA Nov. 26, 2010 Fin: Se Elimina rutina UPLOAD_FILE y se sustituye **
** por las rutinas NEW_UPLOAD1 y NEW_UPLOAD2. **
PERFORM open_batch. " Abre el juego de datos
PERFORM NEW_ROUTINE. “ POA Nov. 25, 2010: “ Nueva rutina agregada
PERFORM fill_batch. " Llena el Juego de Datos
PERFORM close_batch. " Cierra el Juego de Datos
La aplicación de estos estándares dentro de los programas ABAP desarrollados permitirá un mejor
análisis y control de los mismos dentro del proyecto “Proyecto”. Cualquier modificación a los
mismos deberá de verse reflejada en este manual e informada a los miembros del grupo de
desarrolladores para evitar posibles confusiones en su aplicación.
Hoja 8 de 8
© 2010 Ojeda & Juraidini Consultores S.C.