Sei sulla pagina 1di 21

ESTANDARES DE PROGRAMACION ABAP/4

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

ndice
1. 2. 3. Alcances y Objetivos ........................................................................................................................................3 Herramientas ....................................................................................................................................................4 Estndares generales de programacin .........................................................................................................5 3.1. Convenios de nombres .............................................................................................................................5 3.2. Atributos de Programa ..............................................................................................................................5 3.2.1. Ttulo ..................................................................................................................................................5 3.2.2. Tipo ....................................................................................................................................................5 3.2.3. Aplicacin ...........................................................................................................................................5 3.3. Estructura para nuevos programas ...........................................................................................................5 3.3.1. Comentarios .......................................................................................................................................5 3.3.2. Cabecera del programa .....................................................................................................................6 3.3.3. Declaracin de datos globales ...........................................................................................................6 3.3.4. Declaracin de campos de pantalla. ..................................................................................................8 3.3.5. Validacin de campos de pantalla e inicializacin .............................................................................9 3.3.6. Rutina principal del programa. .........................................................................................................10 3.3.7. Tratamiento de los datos obtenidos. ................................................................................................10 3.3.8. Eventos de control. ..........................................................................................................................11 3.3.9. Subrutinas internas. .........................................................................................................................12 3.4. Convencin para nombres internos ABAP/4 ..........................................................................................13 3.5. Recomendaciones generales sobre formato ..........................................................................................13 3.5.1. Subrutinas ( FORMS ) .....................................................................................................................13 3.5.2. Programas INCLUDE .......................................................................................................................14 3.5.3. Cabeceras de listados. ....................................................................................................................14 3.5.4. Textos de seleccin .........................................................................................................................15 3.5.5. Smbolos de texto. ...........................................................................................................................15 3.5.6. Pantallas ..........................................................................................................................................15 3.5.7. Status GUI........................................................................................................................................15 4. Modificacin del Standard ..............................................................................................................................16 4.1. Modificacin para adicionar funcionalidad. .............................................................................................16 4.2. Modificacin por aplicacin de notas SAP ..............................................................................................16 ANEXO ..................................................................................................................................................................18

Pgina 2 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

1.

Alcances y Objetivos
Tiene como objetivo principal el de fijar normas en el desarrollo en ABAP/4 para que de esa manera, el cdigo sea legible y ms fcil de mantener por cualquier desarrollador. Este documento est destinado a cubrir la totalidad de los desarrollos efectuados.

Pgina 3 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

2.

Herramientas
Se recomienda la utilizacin del OBJECT BROWSER (3.0F) o REPOSITORY BROWSER (4.0) para todo desarrollo a efectuarse en el sistema SAP R/3.

Pgina 4 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

3.

Estndares generales de programacin

3.1. Convenios de nombres


Todos los programas y objetos propios desarrollados en SAP, deben seguir las normas establecidas en el ANEXO Nomenclatura de objetos de este documento. Todos los programas ABAP desarrollados, deben seguir lo definido en el punto Convencin para nombres internos ABAP/4 de este mismo documento

3.2. Atributos de Programa


Ser obligatorio completar los atributos de programa que se detallan en los puntos siguientes. El resto de los atributos solo se completarn en caso de ser necesarios.

3.2.1. Ttulo
El ttulo del programa deber ser claro y conciso, de tal manera que no deje dudas cual es el objetivo del programa. Deber completarse en letra minscula, para mantener la ergonoma del sistema general

3.2.2. Tipo
Utilizar alguno de los tipos propuestos por SAP y que se corresponda con el desarrollo a efectuar.

3.2.3. Aplicacin
Completar con Z, para el caso de programas desarrollados

3.3. Estructura para nuevos programas


Se detallan en los puntos siguientes las normas para la estructuracin del cdigo ABAP. Esta estructura est referida solamente a los programas cuyo atributo de tipo est indicado con 1 y debe respetarse para la codificacin del mismo, el mismo orden que sigue en este documento.

3.3.1. Comentarios
Todo programa desarrollado debe incluir comentarios con el propsito de facilitar a futuros programadores una herramienta para comprender con mayor exactitud cual es la funcin del cdigo desarrollado y disminuir el impacto que representa para esta persona la modificacin de un cdigo no propio. Todo comentario debe estar en letra minscula, adems debe ser claro y conciso, dando una idea general de la funcin que realiza esa seccin de cdigo en el programa.

Pgina 5 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

3.3.2. Cabecera del programa


La cabecera de un programa ABAP deber respetar el siguiente formato: REPORT ZBCNORM1 MESSAGE-ID Z1 LINE-SIZE 132 LINE-COUNT 65 NO STANDARD PAGE HEADING. *======================================================================= * TITULO DEL PROGRAMA * * DESCRIPCION: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx * xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx * xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx * * ANALISTA : xxxxxxxxxxxxxx (Empresa) * PROGRAMADOR: xxxxxxxxxxxxxx (Empresa) * *---------------------------------------------------------------------* LOG DE MODIFICACION: * FECHA PROGRAMADOR CORRECCION DESCRIPCION * ddmmmaaaa xxxxxxxxxxxxxx C11K906167 xxxxxxxxxxxxxxxxxxxxxxxx * (14DIC2004) xxxxxxxxxxxxxxxxxxxxxxxx * xxxxxxxxxxxxxxxxxxxxxxxx * * FECHA PROGRAMADOR CORRECCION DESCRIPCION * ddmmmaaaa xxxxxxxxxxxxxx C11K906200 xxxxxxxxxxxxxxxxxxxxxxxx * (14DIC2008) xxxxxxxxxxxxxxxxxxxxxxxx * xxxxxxxxxxxxxxxxxxxxxxxx *------------------------------------------------------------------------------------------------------------------------- -----Donde: Las primeras lneas del programa deben ser destinadas al nombre del programa, tamao del reporte de salida, clase de mensajes, etc. Se debe respetar el sangrado y el orden de cada atributo de la sentencia REPORT. En el bloque siguiente se debe colocar el ttulo del desarrollo en maysculas. Este debe ser claro, conciso y dar una rpida idea de la funcionalidad del programa. A continuacin debe completarse en letra minscula, un comentario lo ms detallado posible de la funcionalidad del programa, explicando el objetivo, principales validaciones, etc. Por ltimo, debe indicarse los responsables del desarrollo y la empresa a la que pertenecen Debe completarse tambin un bloque dentro de la misma seccin donde se lleve un registro detallado de las modificaciones que sufre el cdigo en el transcurso del tiempo de la manera y formato que se muestra en el ejemplo de arriba. En este punto es muy importante mantener el nmero de orden de transporte tanto para la creacin del programa como para sus posibles posteriores modificaciones, ya que permitir un mejor manejo del sistema de versiones de SAP

3.3.3. Declaracin de datos globales


Esta seccin se debe utilizar para la declaracin de todas las variables globales utilizadas en el programa. La declaracin de datos debe respetar el siguiente formato:

Pgina 6 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

*----------------------------------------------------------------------* * DECLARACION DE TABLAS * *----------------------------------------------------------------------* TABLES: T001, "Sociedades BKPF, "Cabecera de documento para Contabilidad BSEG. "Segmento de documento de Contabilidad *----------------------------------------------------------------------* * DECLARACION DE VARIABLES * * Utilizar esta seccion para declaracion de variables elementales, * * estructuras y tablas internas ( de lo mas simple a lo mas complejo) * *----------------------------------------------------------------------* * Campos globales DATA: G_CAMPO1 LIKE T001-BUKRS, "Adicionar comentario G_CAMPO2(3), "Adicionar comentario G_CAMPO3 TYPE N, "Adicionar comentario G_CAMPO4 LIKE BKPF-BUDAT. "Adicionar comentario * Estructuras DATA: BEGIN OF E_XXXXXX, BUKRS LIKE BKPF-BUKRS, BELNR LIKE BSEG-BELNR, END OF E_XXXXXX. DATA: BEGIN OF E_BKPF. INCLUDE STRUCTURE BKPF. DATA: END OF E_BKPF. * Tablas internas DATA: BEGIN OF T_XXXXXX OCCURS 10, BUKRS LIKE BKPF-BUKRS, BUDAT LIKE BKPF-BUDAT, END OF T_XXXXXX. DATA: BEGIN OF T_BKPF OCCURS 100. INCLUDE STRUCTURE BKPF. DATA: END OF T_BKPF. * Rangos RANGES: R_BUKRS * Field symbols FIELD-SYMBOLS: <FS_001>, <FS_002>. * Fields groups FIELD-GROUPS: HEADER, "Agregar comentario FG_DETALLE. "Agregar comentario FOR BKPF-BUDAT.

"Sociedad "Fecha de contabilizacion

"Agregar comentario

"Sociedad "Fecha de contabilizacion

"Agregar comentario

"Rango de sociedades

Donde:

Pgina 7 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

Las primeras lneas de este bloque deben utilizarse para la declaracin de las tablas y estructura de datos utilizada por el programa. Cada tabla declarada debe tener a su derecha el comentario sobre la descripcin breve de la tabla La segunda seccin del bloque se utilizar para la declaracin de variables globales. Esto incluye campos, tablas internas, estructuras, etc. en la forma y orden en que se muestra en el ejemplo de arriba. Cada objeto adicionado debe comentarse. Debe tratarse en lo posible de definir las variables haciendo referencia a campos definidos en el diccionario de datos, mediante la utilizacin del LIKE.

3.3.4. Declaracin de campos de pantalla.


Esta seccin se debe utilizar para la declaracin de todos los campos que se mostrarn en la pantalla de inicio del programa y que permiten la seleccin de la informacin ( PARAMETERS, SELECTOPTIONS, ETC ). No debe bajo ningn concepto crearse un programa de este tipo sin al menos un parmetro de seleccin. Esto posibilitar que al ejecutar el programa se muestre primero una pantalla de seleccin, con el ttulo del programa y el/los campo/s de seleccin, evitando que el usuario ejecute el programa por error. La declaracin de parmetros de pantalla debe respetar el siguiente formato:

*----------------------------------------------------------------------* * DISEO PANTALLA DE SELECCION *----------------------------------------------------------------------* * En esta seccin del programa deben codificarse todas las sentencias * que permitan mostrar campos en la pantalla de seleccin. * Las mismas deben respetar los grupos de bloques y el sangrado * No deben hacerse programas de este tipo sin al menos un parmetro de * entrada. SELECTION-SCREEN BEGIN OF BLOCK BLK01 WITH FRAME TITLE TEXT-001. SELECT-OPTIONS: S_BUKRS FOR BKPF-BUKRS NO INTERVALS, S_BLART FOR BKPF-BLART. LIKE BKPF-GJAHR OBLIGATORY, P_MONAT LIKE BKPF-MONAT. SELECTION-SCREEN END OF BLOCK BLK01. PARAMETERS: P_KUNNR LIKE KNA1-KUNNR. PARAMETERS: P_GJAHR

Donde: Deben posicionarse los distintos PARAMETERS y SELECT-OPTIONS, de acuerdo a la posicin que se desea aparezcan en la pantalla.

Pgina 8 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

Debe comentarse cada parmetro declarado. Este tipo de variables deben ser utilizadas para evitar los HARD_CODES

3.3.5. Validacin de campos de pantalla e inicializacin


En esta seccin del programa se deben efectuar las validaciones de todos los campos de la pantalla de seleccin y realizar las inicializaciones de variables si corresponde. El formato es el que se muestra a continuacin: *----------------------------------------------------------------------* * INICIALIZACION *----------------------------------------------------------------------* INITIALIZATION. PERFORM F_INICIALIZACION_NN. *----------------------------------------------------------------------* * VALIDACION DE PARAMETROS DE PANTALLA *----------------------------------------------------------------------* * En esta seccin del programa deben codificarse todas las validaciones * de los campos de la pantalla AT SELECTION-SCREEN ON BLOCK BLK01. AT SELECTION-SCREEN ON P_KUNNR.

Donde: Toda validacin que se realice sobre los parmetros de entrada debe efectuarse utilizando estos eventos. De esta manera, se enviarn los mensajes de error o informacin segn corresponda y los mismos aparecern sobre la pantalla de seleccin, posibilitando de esa manera que el usuario corrija el error. Debe comentarse cada parmetro declarado. Pueden crearse subrutinas del tipo PERFORM para agrupar las validaciones correspondientes a un evento de este tipo y de esa manera mejorar la modularizacin del programa, facilitando los probables cambios posteriores. El evento INITIALIZATION debe utilizarse para cargar previamente a su utilizacin las variables deseadas. Podr crearse una subrutina para agrupar todas las inicializaciones y modularizar el programa.

3.3.6. Rutina principal del programa.


Esta seccin del programa representa el cuerpo principal de cdigo y debe utilizarse para la extraccin de la informacin en las bases de datos o en su defecto codificar el nudo del desarrollo.

Pgina 9 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

El formato es el que se muestra a continuacin:

*----------------------------------------------------------------------* * LECTURAS DE BASES DE DATOS * BDL: Base de datos logica utilizada - Nro.pantalla *----------------------------------------------------------------------* START-OF-SELECTION. * Realizar aqu todos los procesos necesarios para recuperar la * informacion de las bases de datos, ya sea utilizando una BDL o no. * Tratar de agupar codigo en subrutinas. * La informacin debe tratar de almacenarse en tablas internas GET BKPF. GET BSEG. GET BKPF LATE. MOVE-CORRESPONDING BKPF TO T_XXXXXX. MOVE-CORRESPONDING BSEG TO T_XXXXXX. APPEND T_XXXXXX.

Donde: La rutina principal del programa siempre debe comenzar con el evento START-OF-SELECTION. Comentar el bloque principal del programa, indicando en el caso de utilizar una BDL, cul es y que pantalla de seleccin utiliza, as como tambin incluir todo comentario de inters sobre la funcionalidad de la rutina. Los datos ledos deben almacenarse en una tabla interna para despus de realizada la seleccin controlar que se haya efectuado con xito. Pueden crearse subrutinas del tipo PERFORM para agrupar el cdigo y de esa manera mejorar la modularizacin del programa, facilitando la lectura y los probables cambios posteriores.

3.3.7. Tratamiento de los datos obtenidos.


Esta seccin del programa debe ser utilizada para codificar el tratamiento de los datos obtenidos en la seccin anterior. El formato es el que se muestra a continuacin:

*----------------------------------------------------------------------* * FIN DE SELECCION DE DATOS *----------------------------------------------------------------------* END-OF-SELECTION. * Debe verificarse que la bsqueda de la informacin en las * bases de datos fue exitosa. Si esto no fuera as, deber terminarse * el programa enviando un mensaje de aviso al usuario, para que revise * la seleccin efectuada Pgina 10 de 21 DESCRIBE TABLE T_XXXXXX LINES SY-INDEX. IF SY-INDEX IS INITIAL.

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

Donde: La codificacin en esta parte del programa siempre debe comenzar con el evento END-OFSELECTION. Luego debe validarse que la seleccin de datos ha sido exitosa. En ese caso se contina con el programa, caso contrario, se debe enviar un mensaje de tipo S, informndole al usuario que verifique los datos ingresados en la pantalla de seleccin y dar por terminado el programa. Una vez verificado que el programa tiene datos para trabajar, debe codificarse en una subrutina todo lo que haga falta para complementar los datos seleccionados, ordenarlos, etc. Por ultimo, se crear una subrutina adicional donde se codificarn las sentencias necesarias para emitir el reporte. ( WRITE, FORMAT, etc.)

3.3.8. Eventos de control.


Esta seccin del programa debe ser utilizada para codificar todos los posibles eventos de control, que son aquellos que se disparan una vez generada la salida. El formato es el que se muestra a continuacin:

*----------------------------------------------------------------------* * EVENTOS DE CONTROL *----------------------------------------------------------------------* * No ser necesario codificar todos los eventos en esta seccin del * programa sino solamente los necesarios. TOP-OF-PAGE. END-OF-PAGE. TOP-OF-PAGE DURING LINE-SELECTION. AT LINE-SELECTION. AT PFNN. AT USER-COMMAND.

Donde: No es necesaria la codificacin de la totalidad de los eventos sino solamente los estrictamente necesarios. No tienen un orden establecido.

Pgina 11 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

3.3.9. Subrutinas internas.


Es la ltima seccin del programa. Deben codificarse en esta todas las subrutinas internas que son llamadas en el programa. El formato es el que se muestra a continuacin: *----------------------------------------------------------------------* * SUBRUTINAS INTERNAS *----------------------------------------------------------------------* *&---------------------------------------------------------------------* *& Form F_INICIALIZACION_NN *&---------------------------------------------------------------------* * Documentar en esta parte la funcionalidad de la * * subrutina. * *----------------------------------------------------------------------* * --> p1 documentacin de parametros * <-- p2 Dcoumentacion de parametros *----------------------------------------------------------------------* FORM F_INICIALIZACION_NN. ENDFORM. " F_INICIALIZACION_NN *&---------------------------------------------------------------------* *& Form F_SUBRUTINA *&---------------------------------------------------------------------* * Documentar aqu la funcionalidad de la subrutina * *----------------------------------------------------------------------* * --> p1 documentar parametros de entrada * <-- p2 documentar parametros de salida *----------------------------------------------------------------------* FORM F_SUBRUTINA USING U_PAR1 U_PAR2. DATA: ENDFORM. L_CAMPO1 TYPE D. "Adicionar comentario " F_SUBRUTINA

Donde: Debe respetarse el formato mostrado en el ejemplo de arriba. Este formato se obtiene automticamente en el momento de creacin del PERFORM, haciendo doble click sobre el nombre de la sub-rutina. En el encabezado de la sub-rutina debe comentarse la funcionalidad principal de la misma, as como tambin cada uno de los parmetros pasados, comentando su contenido.

3.4. Convencin para nombres internos ABAP/4


Se detalla a continuacin la nomenclatura que debe respetarse en la codificacin de programas ABAP. Se recomienda incluir dentro del nombre (en la parte libre) el mismo nombre de variable que el campo de SAP. Ej.: G_BUKRS

Pgina 12 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

OBJETO Variables globales Variables locales Tablas Internas Estructuras Rangos Field Symbols Fields Groups Select-options Parameters Forms Parmetros actuales

LG.MAX. 10 10 10 10 8 8 10 8 8 Libre 8

POSICION 1-2 3-10 1-2 3-10 1-2 3-10 1-2 3-10 1-2 3-8 1-3 4-8 1-3 4-10 1-2 3-8 1-2 3-8 1-2 3-n 1-2 3-8

VALOR G_ Libre L_ Libre T_ Libre E_ Libre R_ Libre FS_ Libre FG_ Libre S_ Libre P_ Libre F_ Libre U_ Libre

3.5. Recomendaciones generales sobre formato


En los puntos siguientes se detallan las normas generales que rigen para el formato de otros objetos del entorno de desarrollo y que pueden formar parte de un programa ABAP.

3.5.1. Subrutinas ( FORMS )


Las subrutinas internas en el programa ABAP deben utilizarse en los siguientes casos: Para englobar partes de cdigo compleja y extensa. Para hacer ms legible el programa y brindar una mayor facilidad de mantenimiento.

Para definir un proceso una sola vez en el programa, el cual es llamado desde diferentes lugares dentro del mismo programa ABAP

Los FORMS deben respetar el siguiente formato: La cantidad de lneas de cdigo no debe tener ms de una pgina de longitud en promedio. Su nombre y el nombre de los parmetros deben respetar lo descripto anteriormente en Convencin para nombres internos ABAP/4 Debe incluir comentarios sobre su funcionalidad principal y parmetros de entrada y salida.

Pgina 13 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

3.5.2. Programas INCLUDE


Los programas INCLUDE ( tipo I en sus atributos ), pueden utilizarse en los siguientes casos: Para estructurar programas con muchas lneas de cdigo. Para generar cdigo re-utilizable en otros programas. Para definir FORMS utilizables por otros programas ( Ejemplo: Rutinas de programas BATCHINPUT ).

La codificacin de INCLUDE debe respetar los convenios de nombres internos y estndares de programacin descriptos en los puntos anteriores.

3.5.3. Cabeceras de listados.


Todos los programas ABAP desarrollados que emitan un reporte, deben mantener el siguiente formato de salida:

*----------------------------------------------------------------------XXXXXXXXXXXXXXXXXXXX (1) XXXXXXXXXXXXXXXXXXXXXXXXXX (2) 99/99/9999 (3) XXXXXXXX (4) XXXXXXXXXXXXXXXX (5) Pag.: 9999 (6) XXXXXXX (7) XXXXXXXXXXXXXXXXXX (7) XXXXXXXXX (7) XXXXXXXX (7) *-----------------------------------------------------------------------*

Donde: (1) (2) (3) (4) (5) (6) (7) Nombre de la sociedad. Corresponde al campo T001-BUKRS. Ttulo del reporte. Debe mostrarse en letra mayscula. Fecha de emisin del reporte. Mostrar en formato DD/MM/AAAA. Nombre del reporte. Corresponde al campo de sistema SY-REPID. Subttulo del listado. Es opcional y en caso de utilizarse debe ser mostrado en letra mayscula. Nmero de pgina. Cabeceras de columnas. Mostrar en letras maysculas.

Estos campos en la cabecera del reporte deben figurar siempre, independientemente de si se utilizan los ttulos standard de los elementos de texto o si se los codifica manualmente mediante el evento TOP-OF-PAGE.

Pgina 14 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

3.5.4. Textos de seleccin


Los textos de seleccin correspondientes a los PARAMETERS y SELECT-OPTIONS declarados en el programa deben ser incorporados en letra minscula.

3.5.5. Smbolos de texto.


Podrn utilizarse en letra minscula o mayscula dependiendo del lugar donde se mostrar, de acuerdo a las normas que figuran en este documento. Deben ser utilizados en todas las sentencias WRITE, evitando colocar en las mismas literales.

3.5.6. Pantallas
En el diseo de pantallas se debe tratar de mantener siempre los estndares de diseo empleados por SAP, para ello, se debe respetar lo siguiente: Todos los textos de los campos deben figurar en letras minsculas. Tratar de aprovechar las referencias a los campos del diccionario de datos. Utilizar FRAMES para enmarcar campos relacionados Ubicar los campos de tal manera que facilite su llenado por parte del usuario

3.5.7. Status GUI


En su diseo debe tenerse en cuenta lo siguiente: Utilizar hasta donde sea posible los defaults propuestos por SAP en lo que respecta a las funciones y mens. Los ttulos de la superficie deben ser completados en minscula y deben ser llamados igual que la superficie. En toda superficie debe asegurarse que figuren las funciones de BACK, CANCEL y EXIT El texto de los pulsadores creados debe estar en letra minscula.

4.

Modificacin del Standard


Si bien las modificaciones al standard SAP se debe tratar de no realizarlas, puede ocurrir que se haga necesaria su implementacin. Los distintos motivos por los que se pueda modificar el estndar, se detallan en los puntos siguientes. Es necesario documentar siempre y en forma detallada cualquier cambio en programas standard.

Pgina 15 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

4.1. Modificacin para adicionar funcionalidad.


Antes de hacer cualquier alteracin al cdigo standard SAP debe establecerse un Proceso para el cambio del Cdigo fuente, consensuado con cada cliente y para requerir la aprobacin de cada cambio. De esta manera solo las reparaciones autorizadas se efectuarn en el estndar. En la cabecera del programa debe completarse el LOG de modificacin como se indica en el punto Cabecera del programa de este mismo informe. *---------------------------------------------------------------------* LOG DE MODIFICACION: * FECHA PROGRAMADOR CORRECCION DESCRIPCION * ddmmmaaaa xxxxxxxxxxxxxx C11K906167 xxxxxxxxxxxxxxxxxxxxxxxx * (14DIC2004) xxxxxxxxxxxxxxxxxxxxxxxx * xxxxxxxxxxxxxxxxxxxxxxxx * * FECHA PROGRAMADOR CORRECCION DESCRIPCION * ddmmmaaaa xxxxxxxxxxxxxx C11K906200 xxxxxxxxxxxxxxxxxxxxxxxx * (14DIC2008) xxxxxxxxxxxxxxxxxxxxxxxx * xxxxxxxxxxxxxxxxxxxxxxxx *----------------------------------------------------------------------------------------------------------------------------- --

4.2. Modificacin por aplicacin de notas SAP


Esta modificacin al standard resulta de la aplicacin de notas del OSS. Debe respetarse el siguiente formato:

DESCRIBE TABLE T_XXXXXX LINES SY-INDEX. IF SY-INDEX IS INITIAL. *---------------------------------------------------------------------* BEGIN OF APLICATION NOTE SAP NRO. 6140808 DD/MM/AAAA * REPAIR NUMBER: R01K907858 BY Jos Perz *---------------------------------------------------------------------* MESSAGE S001(Z1). Delete * EXIT. Delete MESSAGE E030(Z1). Insert *---------------------------------------------------------------------* END OF APLICATION NOTE SAP NRO. 6140808 *---------------------------------------------------------------------ENDIF.

Donde: Cada reparacin por aplicacin de nota SAP debe respetar exactamente los cambios que se detallan en la misma. Cada reparacin efectuada debe estar acotada por un texto de cabecera y uno de fin el cual contenga los datos de la nota aplicada, la fecha de aplicacin, el nmero de reparacin propuesto por el sistema de transporte ( WORKBENCH ), y el responsable de la modificacin. No deben borrarse lneas de cdigo del estndar . Aquellas que la nota de SAP proponga borrar, deben ser comentadas mediante un asterisco e incluir el comentario : DELETE.

Pgina 16 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

Las lneas insertadas deben llevar el comentario: INSERT

Pgina 17 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

ANEXO
NOMENCLATURA STANDARD DE OBJETOS

PROGRAMAS: Los nombres de los programas se dividen en cuatro partes de la siguiente forma ZPPAAXXX donde: Z Por definicin SAP PP Describe el tipo de programa (ver tabla 1) AA Describe la aplicacin (ver tabla 2) XXX Secuencia numrica.

TABLAS: Los nombres de las tablas se dividen en cuatro partes de la siguiente forma ZTANNNNN donde. Z Por definicin SAP T Tipo de tabla (ver tabla 3) A Describe la aplicacin (ver tabla 2) NNNNN Descripcin literal CAMPOS: Los nombres de los campos dentro de las tablas sern de largo variable y descripcin literal alfabtica.

ELEMENTOS DE DATOS: Para los nombres de estos objetos se deber anteponer al nombre del campo una letra Z . DOMINIOS: Los nombres de los dominios se dividirn de la siguiente forma ZCCCCNNT donde: Z Por definicin SAP CCCC Tipo de formato del campo (ver tabla 4) NN Longitud del campo T Valor fijo para determinar si tiene tabla de valores TRANSACCIONES: Los cdigos de transaccin se debern codificar de la siguiente forma ZANN donde: Z Por definicin SAP A Descripcin de la aplicacin NN Secuencia numrica.

Pgina 18 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

MENES: Los mens se codificaran de la siguiente forma ZAMN donde: Z A M N Por definicin SAP Descripcin de la aplicacin Valor fijo que describe que es un men Secuencia numrica

FORMULARIOS: Los nombres de estos objetos se codificaran como ZF_A_XXXXXXXX donde: Z Por definicin SAP F Valor fijo A Aplicacin (ver tabla 2) X DDescripcinliteral FUNCIONES: Los nombres de las funciones debern codificarse de la siguiente forma ZAA_XX...X. Donde Z Por definicin de SAP AA Aplicacin (ver tabla 2) X...X Descripcin literal referente DOCUMENTOS: Los documentos Word que se creen para documentar el desarrollo debern respetar la nomenclatura siguiente: ZAA_CCNN donde: Z Por definicin SAP AA Aplicacin CC Tipo de documentacin NN Secuencia numrica TABLAS DE PARAMETROS

Tabla 1. Cdigo BI CI DI RP BT RI IN

Tipo de Programas Descripcin BATCH INPUT CARGA INICIAL DIALOGO REPORTE PROCESO BATCH REPORTE INTERACTIVO INCLUDE

Pgina 19 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

Tabla 2. Cdigo L K C J W G A B S F M Z V X O D I Q E Y H P T

Aplicaciones Cdigo ampliado AP AR CO CCA PC GL AM BC LC TR MM R3 SD GX OR DP PM QM SM PS HR PP Descripcin Cuentas a pagar Cuentas a cobrar Controlling Cost. Center Acc Product Costing Contabilidad general Activos Fijos Sistema Bsico Consolidacin Tesorera Gestin de materiales General de proyectos Ventas y Distribucin Cont. General extendida Ordenes internas CO Documentacin de proced. Mantenimiento de planta Gestin de Calidad Gestin de Servicios Gestin de Proyectos Recursos Humanos Production Planing Extranet

Tabla 3. Cdigo T E P C V M

Tipo de Tablas Descripcin Transparentes Estructuras Pool Cluster Vistas Match-code

Tabla 4. Cdigo CHAR DATS DEC

Tipo de Formato

Descripcin CARACTERES FORMATO FECHA AAAAMMDD CAMPO EMPAQUETADO CON COMA Y SIGNO NUMC CARACTER SOLO NUMEROS QUAN CAMPO PARA CANTIDADES

Pgina 20 de 21

Estndares ABAP.doc

LNEA DE NEGOCIO SAP Estndares de Programacin ABAP/4

Fecha: 24/07/a2007

TIMS UNIT FLTP Tabla 5. Cdigo DC DD GC GU MS TD OM TX IN TS AV

FORMATO HORA HHMMSS CLAVE DE UNIDADES PARA CAMPOS QUAN CIFRA DE COMA FLOTANTE Tipo de Documento Descripcin PROCESOS SEGUN SAP DOCUMENTACION DESARROLLOS MANUAL DE PARAMETRIZACION MANUAL DEL USUARIO MODIFICACIONES AL ESTANDAR ELEMENTOS DEL DICCIONARIO OBJETOS DE MATCHCODE TRANSACCIONES INTERFASES PRUEBAS INFORMES DE AVANCE

LOS OBJETOS CREADOS PARA PRUEBAS O PROCESOS COCINEROS QUE NO SON NECESARIOS PARA EL PRODUCTIVO, DEBEN SER CREADOS COMO OBJETOS LOCALES (SIN ORDEN DE TRANSPORTE) Y EL NOMBRE DEBE EMPEZAR CON Y.

Pgina 21 de 21

Potrebbero piacerti anche