Manual de Sap _Lenguaje de programación Abap4 Parte 1_

download Manual de Sap _Lenguaje de programación Abap4 Parte 1_

of 187

Transcript of Manual de Sap _Lenguaje de programación Abap4 Parte 1_

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    1/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    MENU PRINCIPAL ... ......................................................... ........................................................... ...........5

    MENU SISTEMA ... ................................................... ........................................................... ................... ..8

    ABAP/4 DEVELOPMENT WORKBENCH ............................................................................................9

    PANTALLA DEL DICCIONARIO ........................................................................................................10

    COMO CREAR UNA TABLA ... ..............................................................................................................12CREAR, MODIFICAR O VISUALIZAR UN DOMINIO ........................................................................12CREAR, MODIFICAR O VISUALIZAR UN ELEMENTO DE DATOS...............................................15CREAR, MODIFICAR O VISUALIZAR UNA TABLA ... .....................................................................17

    MANDANTE......................................................................................................................................................... .18TABLA DE VERIFICACION ............................................................................................................................18INDICES .................................................................................................................................................... ...18CLAVES FORANEAS ............................................................................................................................................................18TABLA SIN ELEMENTOS DE DATOS NI DOMINIOS ..............................................................................18OTROS ... ............................................................................................................................................................ ...19POR ULTIMO ...............................................................................................................................................20

    VISTAS ....................................................................................................................................................................................................21COMO CREAR INDICES EN UNA TABLA ..................................................................................................24COMO HACER CLAVES FORANEAS Y TABLAS DE VERIFICACION ..............................................26

    TABVERIF SIN *... ........................................................................................................................................ ..26TABVERIF CON *... ..................................................................................................................................... ...29TABLAS MAS USADAS EN LA TABLA DE VERIFICACION ... ............................................................. ..31

    VER EL CONTENIDO, AADIR O MODIFICAR DATOS DE UNA TABLA .....................................31TABLAS DEL SISTEMA ..........................................................................................................................34

    SCREEN ... ..............................................................................................................................................................34SYST ... .......................................................................................................................................................................................................34

    OBJETOS MATCHCODE .........................................................................................................................35CREAR UN MATCHCODE ... ..................................................................................................................35OBJETOS DE BLOQUEO .........................................................................................................................40

    DATA BROWSER...................................................................................................................................42

    OBJECT BROWSER ... ....................................................... ........................................................... .........45

    BASES DE DATOS RELACIONALES..................................................................................................47

    VER LA ESTRUCTURA DE UNA BDD RELACIONAL... ...................................................................49

    EDITOR ABAP/4.................................................................................................................................... .51

    ATRIBUTOS ... ...........................................................................................................................................51COMO CREAR UNA ORDEN DE TRANSPORTE .....................................................................................55

    VARIANTES ......................................................................................................................................................55DOCUMENTACION .................................................................................................................................55

    ELEMENTOS DE TEXTO.........................................................................................................................56SIMBOLOS DE TEXTO ... ..................................................................................................................................56TITULOS/CABECERAS ... ..................................................................................................................................57TEXTO DE SELECCION ... ...............................................................................................................................58

    TEXTO FUENTE ... ....................................................................................................................................60MENUS DEL TEXTO FUENTE ... ....................................................................................................................61BOTONES DEL TEXTO FUENTE......................................................................................................... ...61

    MODELO ......................................................................................................................................................................61COMANDOS DE LINEA... ...................................................................................................................... ...64

    COMANDOS DE UNA SOLA LNEA .............................................................................................................64COMANDOS DE BLOQUE DE LNEA. ..........................................................................................................65

    MOVER ... .................................................................................................................................................... ..65COPIAR ...................................................................................................................................................................65

    BORRAR ... ................................................................................................................................................. ...65INSERTAR UN TROZO DE PROGRAMA EN OTRO ...................................................................................65COMANDOS GENERALES ... ...........................................................................................................................66

    Autor: Ivn Rodrigo 1

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    2/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    MENS DEL EDITOR ABAP/4................................................................................................................66

    TRANSPORTE ....................................................................................................................................... .70

    COMO VER NUESTROS OBJETOS TRANSPORTADOS ...................................................................73BUSCAR OBJETOS... ................................................................................................................................73

    BIBLIOTECAS DE FUNCION...............................................................................................................76

    PARAMETROS DE IMPORT/EXPORT ..................................................................................................78PARAMETROS TABLA/EXCEPCIONES ..............................................................................................80

    LENGUAJE ABAP/4... ........................................................ ........................................................... ........ .81

    ESTRUCTURACIN... ..............................................................................................................................81REPORT ..............................................................................................................................................................81MODUL -POOL ................................................................................................................................. .82DECLARACIN DE TABLAS DICCIONARIO .....................................................................................82DECLARACIN DE TABLAS INTERNAS............................................................................................82

    OPCION 1 ......................................................................................................................................................83OPCION 2 ......................................................................................................................................................84COMO FUNCIONAN...................................................................................................................................84

    DECLARACIN DE VARIABLES ... ......................................................................................................84ASIGNAR LOS ATRIBUTOS DEL CAMPO DE UNA TABLA DE DICCIONARIO CON UNAVARIABLE..............................................................................................................................................................................................84

    DECLARAR UNA VARIABLE DEL TIPO QUE QUERAMOS ... ............................................................. ...85UNA VARIABLE CON LA ESTRUCTURA DE OTRA ... ............................................................................. .85

    FIELD-GROUPS ... .....................................................................................................................................86FIELD_GROUPS:... ...............................................................................................................................86

    INSTRUCCIONES DE ENTRADAS DE DATOS ... ...............................................................................86SET PARAMETER................................................................................................................................................88PARAMETERS ... .............................................................................................................................................. ...89RANGES ..................................................................................................................................................................................................90SELECT-OPTIONS ... ................................................................................................................................ ..90

    EVENTOS ...................................................................................................................................................91

    INITIALIZATION .............................................................................................................................................. ..91START-OF-SELECTION ................................................................................................................................ ...92END-OF-SELECTION ............................................................................................................................. ...92TOP-OF-PAGE ......................................................................................................................................92END-OF-PAGE.................................................................................................................................... ..92AT LINE-SELECTION .................................................................................................................................... ...92AT PFn ... .................................................................................................................................................... ...93AT USER-COMMAND ................................................................................................................................... ...93AT SELECTION-SCREEN ............................................................................................................................. ...93

    LLAMADA A OTROS PROGRAMAS ... .................................................................................................93SUBRUTINAS O PROGRAMAS INTERNOS ... ............................................................................................93PROGRAMAS EXTERNOS ... ......................................................................................................................... ..94FUNCIONES ... .................................................................................................................................................. ...95

    EJEMPLOS DE FUNCIONES ... ..................................................................................................................... ...96DOWNLOAD ................................................................................................................................................96UPLOAD... .................................................................................................................................................... .98

    IMPRESIN DESDE UN ABAP ... ...........................................................................................................99DESPUES DE HABERLO EJECUTADO .................................................................................................99MIENTRAS SE EJECUTA ............................................................................................................................. ..100

    LLAMANDO A UN REPORT... ..................................................................................................................... .101EJECUTAR E IMPRIMIR ... ........................................................................................................................... .103IMPRIMIR DIRECTAMENTE ........................................................................................................................105

    GRAFICOS EN SAP ... .............................................................................................................................105GRAFICOS EN DOS DIMENSIONES ... ............................................................................................... .105GRAFICOS EN TRES DIMENSIONES ........................................................................................................108GRAFICOS EN 2D, 3D Y 4D. .........................................................................................................................111

    INSTRUCCIONES ...................................................................................................................................118INSTRUCCIONES DE CONTROL DE FLUJO ................................................................................... ..118

    IF ... ............................................................................................................................................................................. .118

    Autor: Ivn Rodrigo 2

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    3/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    DO ... .......................................................................................................................................................................... ..119WHILE ... ................................................................................................................................................................... .119CASE ... ...................................................................................................................................................................................120CHECK ..............................................................................................................................................................120

    INSTRUCCIONES DE RUPTURA DE UN CONTROL DE FLUJO... ...............................................121EXIT ... ................................................................................................................................................................................. ..121CONTINUE........................................................................................................................................................121

    LECTURA DE TABLAS DE DICCIONARIO .......................................................................................122CONSEJOS .............................................................................................................................................. ...123

    LECTURA DE TABLAS INTERNAS ....................................................................................................123INSTRUCCIONES DE RUPTURA... ...................................................................................................... .124

    AT FIRST ................................................................................................................................................................ ...124AT NEW.............................................................................................................................................................124AT END OF ... ................................................................................................................................................. ..124AT LAST....................................................................................................................................................124CONSEJOS ........................................................................................................................................................125

    INSTRUCCIONES DE ORDENACION ............................................................................................... ..126OPERACIONES CON LAS TABLAS INTERNAS ... ...........................................................................127

    AADIR............................................................................................................................................................ ...127MODIFICAR ... .................................................................................................................................................. .127

    BORRAR............................................................................................................................................................ ..127COLLECT ................................................................................................................................................. ..127COMIC WORK Y ROLLBACK... ...................................................................................................................128REFRESH... ..........................................................................................................................................128CLEAR ... ............................................................................................................................................................ .128FREE ... ................................................................................................................................................................ .128

    OPERACIN CON LAS TABLAS DE DICCIONARIO .......................................................................128AADIR............................................................................................................................................................ ...128

    REGISTRO A REGISTRO ...............................................................................................................................128A TRAVES DE UNA TABLA INTERNA ......................................................................................................129

    MODIFICAR ... .................................................................................................................................................. .130UN SOLO REGISTRO......................................................................................................................................130VARIOS CAMPOS A LA VEZ ........................................................................................................................130DE UNA TABLA INTERNA............................................................................................................................131

    MODIFICAR Y AADIR ................................................................................................................................ .132UN SOLO REGISTRO......................................................................................................................................132POR UNA TABLA INTERNA .........................................................................................................................133

    BORRAR............................................................................................................................................................ ..133UN SOLO REGISTRO......................................................................................................................................133VARIOS REGISTROS......................................................................................................................................134A TRAVS DE UNA TABLA INTERNA ......................................................................................................134

    CONFIRMACION O NO DE LOS CAMBIOS ... .................................................................................. .135ATRIBUTOS DE UNA TABLA ..................................................................................................................... .135

    FICHEROS EN SAP... ..............................................................................................................................136SECUENCIALES....................................................................................................................................... .136

    CMO ABRIRLOS? .......................................................................................................................................136CMO LEERLOS? .........................................................................................................................................136

    CMO ESCRIBIR EN ELLOS? ....................................................................................................................137CMO BORRARLOS? ... .............................................................................................................................. .137CMO CERRALOS? ......................................................................................................................................137OTRAS COSAS.................................................................................................................................................137

    TRATAMIENTO DE CADENAS............................................................................................................138CONCATENATE .............................................................................................................................................. .138CONDENSE ... .................................................................................................................................................. ..139TRANSALATE ..................................................................................................................................................................................139REPLACE................................................................................................................................................. ...139OVERLAY...........................................................................................................................................................................................140SEARCH ..................................................................................................................................................................................141SHIFT ...................................................................................................................................................................144STRLEN... ......................................................................................................................................................... ...145*... .................................................. ............................................................ ................................. ...145 ... ............................................................................................................................................... ..145

    TRATAMIENTO DE CAMPOS EN DYNPROS ... ...............................................................................145

    Autor: Ivn Rodrigo 3

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    4/187

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    5/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    MENU PRINCIPAL

    Fig. Men principal.

    Este es el men principal de SAP, desde aqu puede acceder a cualquier sitio de SAP.

    Para el programador el men ms importante ser el de Herramientas, dentro deherramientas tenemos los siguientes submens:

    Workbench ABAP/4 -> Desde aqu podemos ir las herramientas de programacin deSAP.

    Gestin -> Esta opcin solo es apta para administradores de SAP, desde aqu puedecontrolar todos los parmetros de SAP. Digo que es solo para administradores porque soloellos tienen autorizacin para poder acceder a las opciones que tiene. La pantalla

    principal sera la siguiente:

    Fig. Gestin.

    Hay veces que un programa se queda bloqueado, es decir, cuando intentamos modificarunprograma y nos sale el siguiente mensaje: El usuario PROGRM ya esta tratando

    ZZII5, donde PROGRM es el nombre del usuario y ZZII5 es el nombre del programa alque intentamos acceder.

    Para poderlo desbloquear hay dos formas:La primera es ir al men Monitor, Entradas bloqueo y nos saldr la siguiente

    pantalla:

    Autor: Ivn Rodrigo 5Lista de programas bloqueados

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    6/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Para saber qu tabla y qu argumento de bloqueo hemos de poner hemos de pulsar elbotn que pone lista y nos saldr la siguiente lista de programas bloqueados:

    Eliminar bloqueo

    Como vemos, sale la lista de programas bloqueados. Para poder desbloquearlos se pulsasobre el programa que deseamos desbloquear y pulsamos a la papelera, si no, vamos almen Entrada bloqueo, Borrar SHIFT+F2 y se quita el bloqueo (siempre y cuandotengamos la autorizacin pertinente).

    Para borrar todas las entradas de bloqueo que tengamos vamos al mismo men de antes(Entrada bloqueo) y pulsamos sobre borrar todos y se quitarn las entradas de

    bloqueo, siempre que tengamos autorizacin.

    Tambin hay una forma ms fcil de hacerlo sin necesidad de ser el administrador, esto sehace tomando la sesin. Para hacerlo, desde la pantalla de gestin (Vase Fig.Gestin) vamos al men Monitor, Supervisar sistema, usuarios (todos). Entoncesnos saldrn los usuarios conectados y los que estn bloqueados. La pantalla que sale es lasiguiente (en la pgina siguiente):

    Autor: Ivn Rodrigo 6

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    7/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En esta imagen solo hay dos usuarios conectados (formacin03 y el ltimo forman09), elforman09 que est al principio es el que est bloqueado.

    S que est bloqueado porque el ordenador donde trabajo es el forman09 y he entrado alas 9:15, por lo tanto el anterior a m, es decir, el que ha entrado a las 9:10 estbloqueado. El bloqueo lo he hecho expresamente apagando el ordenador cuando estabaconectado.

    Para desbloquearlo hacemos clic sobre el usuario que queremos desbloquear,seguidamente vamos al men tratar, tomar sesin y entonces tomaremos la sesin

    bloqueada y podremos utilizar nuevamente los programas.

    Tambin desde aqu podremos ver qu usuarios estn conectados y tambin podremostomar la sesin de otros usuarios, se hace de la misma forma que para desbloquear el

    programa.

    En la pantalla principal de gestin (vase fig. gestin) podemos controlar las colas deimpresin y muchas cosas ms.

    Volviendo al men de herramientas (Vase Fig. Men principal) tenemos mssubmens de los cuales no puedo decir gran cosa ya que desconozco su funcionamiento.

    Autor: Ivn Rodrigo 7

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    8/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    MENU SISTEMA

    El men Sistema siempre aparece, estemos donde estemos y hagamos lo quehagamos. Dentro del men aparece una serie de opciones que tampoco varan mucho yalguna son de bastante utilidad. Explicar de una forma rpida algunas de la opciones

    ms importantes, alguna de ellas se explicarn ms ampliamente en este manual.

    - Para ver los valores fijos de cada usuario, o sea, impresora, idioma, etc.. que tienepor defecto. Tenemos que ir al men Sistema, Valores prefijados y Val.fijosusuario.

    - Para informacin referente a nuestro usuario como puede ser telefonos, direcciones,etc.. tenemos que ir al men Sistema, Valores prefijados y Direccin usuario.

    Autor: Ivn Rodrigo 8

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    9/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    ABAP/4 DEVELOPMENT WORKBENCH

    Editor de programas

    Aqu estn todas las tablas de SAP, es decir, es

    donde se almacenan todos los datos con queSAP trabaja

    Desde aqu podemos crear, Aqu tenemos laborrar, modificar o visualizar posibilidad de crear,todos los objetos que se borrar, modificar o

    pueden crear en SAP. visualizar todas lasfunciones del sistema

    Autor: Ivn Rodrigo 9

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    10/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    PANTALLA DEL DICCIONARIO

    BorrarActivar

    Verificar

    Nombre objeto

    En objeto introduciremos el nombre que deseamos crear, borrar, modificar ovisualizar.

    Los tipos de objetos son:

    - Tablas

    - Estructuras- Vistas- Elementos de datos- Dominios- Objeto bloqueo- Objeto matchcode- Grupos tipo

    Despus hay tres botones que son: Visualizar (icono de gafas), Modificar (icono delpiz) y crear (icono objeto en blanco).

    Para ver todos los objetos del SAP, vamos al men Entorno, Sistema Info. Ah nossaldr una pantalla:

    Autor: Ivn Rodrigo 10

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    11/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Buscar

    Haciendo doble clic en un campo (ej. : Dominio) podremos buscar los dominios quehaya en el SAP. Esta es la pantalla de bsqueda:

    En las bsquedas se pueden utilizar caracteres comodn, ej: *.Con el botn de Opciones de seleccin podemos poner condiciones de bsqueda.

    Pulsando F8 realizaremos la bsqueda.

    Autor: Ivn Rodrigo 11

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    12/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    COMO CREAR UNA TABLA

    Para crear una tabla primero hemos de crear un dominio, seguidamente un elemento dedatos para ese dominio u otro que exista y por ltimo la tabla que tendrn una serie deelementos ya existente o que los hayamos creado antes.

    Adems de explicar como se realiza un dominio, un elemento de datos y una tabla,tambin explicar como las podemos visualizar, modificar y otras operaciones diversas.

    CREAR, MODIFICAR O VISUALIZAR UN DOMINIO

    Hemos de ir a la pantalla de DICTIONARY. Despus:

    Introducir el nombre del Dominio de datos que vamos a crear, visualizar, modificar obuscar.Pulsar el botn Objeto Dictionary llamado Dominio.

    Pulsar el botn que deseamos (est abajo del todo) o ir al men Objeto DD donde sepuede escoger lo que vayamos a hacer.

    Y nos saldr la pantalla siguiente:

    Valores fijos

    En esta pantalla introduciremos los valores que le daremos al dominio.

    Hay que poner una descripcin breve de lo que hace o para qu sirve ese dominio.

    En Formato: en tipo de datos, haciendo doble clic nos saldrn los tipos de datosdisponibles. Y longitud ser la longitud que le demos.

    Autor: Ivn Rodrigo 12

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    13/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Valores permitidos: ser la tabla de verificacin. La tabla de verificacin es una tabla enla que hay unos valores. Cada vez que entramos un dato en un campo que tenga una tablade verificacin ir a esa tabla para comprobar su validez.Tambin podemos introducir lmites para un campo.Para introducir valores fijos vamos al recuadro de valores permitidos y pulsamos al

    botn de valores fijos o hacemos doble clic en el campo. Otra forma de llegar es en elmen Pasar a (o F8), Valores fijos. Entonces saldr esta pantalla:

    Como vemos, podemos introducir valores fijos (tantos como queramos) o lmitesinferior o superior (tantos como queramos).

    De vuelta a la pantalla principal de dominios:

    En Propiedades de salida, Longitud de campo: qu longitud saldr cuandovisualicemos el contenido del campo.

    En un dominio tambin podemos poner valores fijos. Cuando introduzcamos algnvalor en un campo y no concuerde con los valores preestablecidos el sistema avisar que eldato introducido no es correcto.

    Para Grabar se utiliza este botn:

    Botn para grabar sin verificar o F11

    Cuando grabemos por primera vez nos preguntar por la Clase de desarrollo. Esta clase

    nos la da la empresa donde estemos y sirve para el transporte a produccin. Parapracticar se deja en blanco.

    Autor: Ivn Rodrigo 13

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    14/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Para practicar la grabaremos como Objeto local (Botn que est abajo) nos pondrcomo clase de desarrollo $TMP.

    Una vez creado hemos de verificar la consistencia de la tabla, lo haremos con el botn:

    Verificar o Ctrl+F2

    Despus, para poderlo utilizar hay que activarlo, que lo haremos con el siguiente botn:

    Activar CTRL+F3

    Autor: Ivn Rodrigo 14

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    15/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    CREAR, MODIFICAR O VISUALIZAR UN ELEMENTO DE DATOS

    Hemos de ir a la pantalla de DICTIONARY. Despus:

    - Introducir el nombre del Elemento de datos que vamos a crear, visualizar o

    modificar.- Pulsar el botn de Objeto Dictionary llamado Elemento de datos.- Pulsar el botn que deseamos (est abajo del todo) o ir al men Objeto DD

    donde se puede escoger lo que vayamos a hacer.

    Y nos saldr la pantalla siguiente:

    Como ya hemos dicho los Elementos de datos es informacin semntica o tcnica de uncampo. Tambin un elemento puede estar en ms de un campo (distinto o igual).

    Hay que introducir una descripcin para ese Elemento de datos.

    En Dominio introduciremos el dominio que tendr (es un campo obligatorio), si no losabemos, ponemos el cursor en el campo y pulsando F4 podremos buscar el dominio que

    queramos utilizar.

    Autor: Ivn Rodrigo 15

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    16/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Despus pondremos la descripcin breve, media o larga del campo

    Para Grabar se utiliza este botn:

    Botn para grabar sin verificar o F11

    Cuando grabemos por primera vez nos preguntar por la Clase de desarrollo. Esta clasenos la da la empresa donde estemos y sirve para el transporte a produccin. Para

    practicar se deja en blanco.

    Para practicar la grabaremos como Objeto local (Botn que esta abajo) y nos pondrcomo clase de desarrollo $TMP.

    Una vez creado hemos de verificar la consistencia de la tabla, lo haremos con el botn:

    Verificar o Ctrl+F2

    Despus para poderlo utilizar hay que activarlo, que lo haremos con el siguiente botn:

    Activar CTRL+F3

    Autor: Ivn Rodrigo 16

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    17/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    CREAR, MODIFICAR O VISUALIZAR UNA TABLA

    Hemos de ir a la pantalla de DICTIONARY. Despus:

    - Introducir el nombre de la tabla que vamos a crear, visualizar o modificar.

    - Pulsar el botn de Objeto Dictionary llamado Tabla.- Pulsar el botn de lo que deseamos hacer (est abajo del todo) o ir al menObjeto DD donde se puede escoger lo que vayamos a hacer.

    Y nos saldr la pantalla siguiente:

    Permite introducir eltipo de dato sin hacer elelemento de datos

    Check button, en que indicamos que ser un campo

    Fig. Tabla. clave

    Los campos que tengan fondo blanco y el carcter ? son de obligada introduccin. En

    la clase de entrega haremos clic y le daremos al botn o F4:

    Seleccionar valores de un campo

    Y seleccionaremos el tipo de clase de entrega.

    Tambin activaremos el Check Box que pone Perm.actual.tablas para que se puedanintroducir datos y modificar estos.

    Debajo de la pantalla, en campos, introduciremos el nombre del campo. Hay queintroducir uno obligatoriamente. Y uno ha de ser el campo clave. Se activa pulsando en el

    check-button que est debajo de la palabra Clv.

    Autor: Ivn Rodrigo 17

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    18/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Despus aparecen los Elementos de datos que a su vez tienen Dominios (Estos dominios seasignan automticamente al crear el elemento de datos).En Elementos de datos podemos introducir un campo que ya sepamos o

    posicionandonos sobre el campo y pulsando F4 podemos realizar una bsqueda de todos loselementos que haya o una condicin de bsqueda. Cuando lo hayamos puesto

    pulsaremos ENTER para que SAP coga ese elemento de datos. S despus de eso enTabVerif. nos aparece un * SAP nos dice que ese campo se puede relacionar conotro campo de una tabla, o sea, una tabla de verificacin.

    MANDANTE

    En el primer campo se suele poner, por no decir siempre, el campo Mandt. Estecampo sirve restringir el acceso de un usuario o usuarios a una determinada tabla otablas. En una empresa puede haber ms de una mandante. Para poder declararlo donde

    pone nombre de campo pondremos Mandt, en elementos de datos tambinescribiremos Mandt, pulsaremos ENTER para que lo coga y tambin le diremos que

    es un campo clave.

    TABLA DE VERIFICACION

    La tabla de verificacin son tablas en las que hay unos valores. Cada vez que entramos undato en un campo que tenga una tabla de verificacin ir a esa tabla para comprobarsuvalidez. Cuando en el campo que pone Tab Verif. sale un * indica que puede haberun campo de verificacin. Para poder asociar un campo a una tabla deverificacin hay que realizar una clave fornea. Ms adelante veremos un ejemplo decmo se asocia a un campo una tabla de verificacin y cmo se hace una clave fornea.

    INDICES

    Los ndices sirven para crear campos claves en nuestra tabla. Lo que se consigue esmejorar la velocidad cuando buscamos por el campo clave de la tabla. Ms adelanteveremos un ejemplo completo de cmo se hace un pequeo ndice.

    CLAVES FORANEAS

    Las claves forneas nos permiten relacionar una o varias tablas a travs de un campoclave. Ms adelante veremos un ejemplo completo de cmo crear una clave fornea yuna tabla de verificacin.

    TABLA SIN ELEMENTOS DE DATOS NI DOMINIOS

    En una tabla podremos crear nuestros propios campos sin tener que realizar nielementos de datos ni dominios. Esto es bueno cuando queremos declarar campos a

    pelo, es decir, solo poniendo el tipo de campo y su longitud. Para poder activarlotenemos que ir al men Tratar, entradas tipo directo. Para poder quitar esa opcin

    vamos al men Tratar, Ref. elementos.datos.

    Autor: Ivn Rodrigo 18

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    19/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En la imagen de la tabla (Vase Fig. Tabla.) podemos comprobar que no est activada laopcin de entradas de tipo directo

    Si pulsamos el botn que pone Entrada tipo directo o a travs del men (como ya heexplicado antes) nos saldr la siguiente pantalla:

    Insertarcampo Campos de entrada para el usuario

    Para volver aintroducir elementos

    Claves forneas o externas

    Como vemos, en este ejemplo hay campos que tienen elementos de datos y otroscampos en los que podemos poner el tipo, la longitud y la descripcin breve.

    Si pulsamos sobre el botn Referir elem. Datos o a travs del men Tratar,Referir elem. Datos volveremos a poder introducir elementos de datos.

    OTROS

    Para insertar nuevos campos utilizaremos el botn Campos nuevos o tambin a travsdel men: Tratar, campos nuevos o CTRL+F9. Con esta opcin se insertan

    bastantes campos, si solo queremos insertar nuevos campos vamos al men: Tratar,insertar campos.

    Para borrar un campo utilizaremos el men: Tratar, borrar campo.

    Autor: Ivn Rodrigo 19

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    20/187

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    21/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Grabar

    Los campos que faltan son los Cl. Datos y Categora tam.Si pulsamos F4 en los dos campos nos saldrn los datos disponibles a introducir,ponemos cualquiera o los que nos diga el cliente, y a continuacin lo grabamos para queSAP los acepte.Despus volvemos pulsando F3 o la tecla de volver. Y automticamente se activar,sino encuentra ningn otro error.

    VISTAS

    Para poder introducir datos o asociar una tabla a un grupo de funcin para poder trabajar

    en ella tenemos que crear una vista. No es necesario crear una vista para poderintroducir datos como veremos ms adelante pero si que es til para realizar otro tipo detareas.

    Para crear una vista la tabla ha de estar activada con anterioridad.

    La vista se crea en el men Entorno, Gener.Actual.Tablas. y saldr la siguientepantalla:

    Autor: Ivn Rodrigo 21

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    22/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Crear vista

    En el grupo de funciones podemos seleccionar los que hay pulsando la tecla F4 (para verlas existentes).

    El grupo de funciones se utiliza para asociar diversos objetos (tablas, dynpros,programas, etc.) entre s. Se utiliza para el transporte, quiero decir, cuando vamos atransportar nuestro proyecto (programas, tablas, etc.). Solo diciendo que transporte elgrupo de funciones, se transportarn automticamente todos los objetos que estnrelacionados con este grupo de funcin.

    Inconvenientes: si utilizamos un grupo de funcin ya existente puede ser que alguientransporte ese grupo de funcin (porque ya ha acabado su proyecto) y por la tantotambin se transporten nuestros programas. Y no hay forma posible (seguramente SAPla tendr escondida por ah) de recuperar el programa o grupos de funciones que

    hayamos enviado. Por ello es aconsejable que creemos nuestro propio grupo defuncin.

    Ventajas: podemos hacer que el programa cree una o varias dynpros, dependiendo de losobjetos relacionados al grupo de funciones, de forma automtica y sin tener queintervenir.

    En este caso en particular hemos puesto el cdigo de funcin ZZJ1.En grupo de autorizaciones, haciendo clic en el campo y otro clic en el matchcode oF4:

    Seleccionar valores de un campo

    Autor: Ivn Rodrigo 22

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    23/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Indicaremos el grupo de autorizaciones, que depende del usuario o usuarios a que vayadirigido o del departamento donde estemos.

    En tipo actualizacin se le suele poner un nivel.

    En imgenes de actualizaciones:en imagen resumen se pone un nmero que no ha de estar repetido, este nmerodigamos que es el nmero de dynpro (explicada ms adelante en el manual), se ponecuando queramos utilizar esa tabla en una dynpro, solo nos referiremos al nmero de laimagen sencilla.

    Para saber que imgenes estn ocupadas o si queremos que SAP nos asigne unaautomticamente, pulsaremos el botn que pone: N(s) imgenes. Aparecer la

    pantalla donde podremos elegir que nos asigne una dynpro o mirar las que estnocupadas. La pantalla que veremos es la siguiente:

    Yo suelo elegir la primera opcin, ya que SAP mira la primera disponible y la asigna.

    Despus de introducir todos los datos pertinentes pulsaremos el botn de crear (es elicono que contiene una hoja en blanco)Pulsamos ese icono para crearla y a continuacin la grabamos

    Autor: Ivn Rodrigo 23

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    24/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    COMO CREAR INDICES EN UNA TABLA

    En una tabla tambin podemos crear ndices. Para crearlos podemos pulsar CTRL+F5 o iral men: Pasar A, Indices. Si no hay ninguno creado nos preguntar si lo

    deseamos crear. Si le decimos que s nos pedir la identificacin del ndice, la pantalla quesaldr ser la siguiente:

    Si ya existe uno nos aparece esta pantalla:

    Seleccionar un ndice ya existente

    Crear uno de nuevo

    Fig. Ind.

    En esta pantalla podemos seleccionar un ndice para modificarlo o borrarlo, o crear unonuevo en el botn en que aparece una hoja en blanco.

    Tanto si lo creamos como si lo modificamos aparecer esta pantalla:

    Autor: Ivn Rodrigo 24

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    25/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Primero escribiremos una descripcin breve sobre la utilidad del ndice.

    En el ndice unique le indicaremos si el ndice es nico o no. Si solo hay un campoclave en la tabla lo podemos poner, si no, es mejor no hacerlo.En NomCampo pondremos los campos que formarn el ndice. Se puede poner amano o con el botn Seleccionar campo que est en el Men Painter.En el men Pasar A podemos insertar un nuevo campo o borrarlo.

    Despus de crearlo lo grabaremos

    Botn para grabar sin verificar.

    Una vez creado hemos de verificar la consistencia del ndice, lo haremos con el botn:

    Verificar o Ctrl+F2

    Despus se ha de activar para poderlo utilizar. Se activa con el botn:

    Activar CTRL+F3Recordar que para activar un ndice la tabla ha de estar activada antes.

    Autor: Ivn Rodrigo 25

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    26/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Cuando est todo correcto y volvamos a la pantalla anterior nos saldr una pantalla conlos ndices de la tabla. La pantalla es la Fig Ind..

    Recordar que realizar muchos ndices en una tabla repercute en el rendimiento.

    Por qu repercute?, Pues porque cuando aadimos, modificamos o borramos unregistro en la tabla, el sistema ha de actualizar todos los ndices de la tabla. Si hay pocosdatos no ocurre nada, pero si hay muchos el sistema se ralentiza mucho.

    COMO HACER CLAVES FORANEAS Y TABLAS DE VERIFICACION

    Para hacerlas hemos de estar en la pantalla de modificacin de tablas, o sea, en lasiguiente pantalla:

    Fig. Tabla Claves forneas o F8l * puede tener tablade verificacin

    Cuando sale un * en TabVerif SAP avisa que puede haber una o ms de una tabla deverificacin. Para poder asociar ese campo a esa tabla de verificacin hay que realizarclaves forneas, tambin se puede hacer de un campo que no tiene un *.

    Primero lo haremos de un campo que no tiene * y seguidamente lo haremos de uncampo que tiene un *.

    TABVERIF SIN *

    Autor: Ivn Rodrigo 26

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    27/187

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    28/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En este caso solo nos salen dos. Vemos que la primera tabla que sale es la nuestra y lasegunda la que he creado con un campo que tiene el mismo dominio que el campo quequeremos relacionar.

    Ya que SAP mira y visualiza las tablas que tengan algn campo con las mismascaractersticas que nuestro campo, cuando ponemos un elemento de datos, le damosENTER y nos aparece un * en TabVerif es que SAP ha encontrada alguna tabla con elmismo elemento de datos.

    Si hacemos doble clic en la tabla que queramos o hacemos el clic en la tabla y despuspulsamos el botn de seleccionar nos aparecer, la siguiente pantalla:

    Aqu pulsaremos el botn para que nos muestre los campos que tiene la tabla que hemosescogido, para ver si nos interesa o no.En la pantalla de claves forneas (Vase Fig. Claves forneas) nos aparecer la tablaque hemos seleccionado con sus campos, ya que en la pantalla anterior le hemos dichoque s a la propuesta de asignacin de campo, si le decimos que no, no nos saldrn loscampos de la tabla.

    Autor: Ivn Rodrigo 28

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    29/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Despus de elegir la tabla, es la hora de tomar la tabla que hemos escogido. Paratomarla le damos al botn que pone Tomar, y l automticamente nos pondr la tabla enel campo TabVerif (Vase Fig. Tabla).

    TABVERIF CON *

    Si en TabVerif sale un *, SAP nos dice que hay una tabla de verificacin. Los pasos sonlos mismos que en el anterior, nos posicionamos con el cursor y pulsamos F8 o el botnde claves forneas, y a continuacin nos saldr la siguiente pantalla:

    En esta pantalla, nos dice si queremos que SAP nos saque la tabla ms conveniente anuestro campo. Yo suelo poner que s para que me ponga la tabla de forma automtica, sile decimos que no, la tendremos que buscar por nuestra cuenta (y por desgracia hay un

    montn de tablas). Si le decimos que s, nos saldr la siguiente pantalla (en lasiguiente pgina):

    Autor: Ivn Rodrigo 29

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    30/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Como vemos la tabla T000 es la ms adecuada en este caso, ahora, si pulsamos el botnTomar nos tomar automticamente la tabla. Si vemos que no nos interesa esta tabla

    podemos buscar la que queramos (como en el ejemplo anterior, o sea, pulsando F4 en elcampo de tabla de verificacin).

    El resultado, si hacemos los dos ejemplos anteriores, sera este:

    Autor: Ivn Rodrigo 30

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    31/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En la imagen se nos ha olvidado poner una tabla de verificacin, pero como ejerciciopodis hacerlo vosotros.

    TABLAS MAS USADAS EN LA TABLA DE VERIFICACION

    Dependiendo del elemento de datos que hayamos puesto, nos puede salir una tabla deverificacin u otro.

    Ahora pondr un ejemplo de elementos de datos con su tabla de verificacin:

    ELEMENTOS DE DATOS TABLA DE VERIFICACION

    MANDT (Mandante) T000BC_COUNTRY (Pas) T005WAERS (Moneda) TCURC

    Como vemos estos 3 elementos de datos son internos del sistema, por lo tanto enTabVerif se pone automticamente un *, y las tablas de verificacin son las queSAP aconseja para ese elemento de datos (que se asignan haciendo claves forneas,como hemos explicado antes).

    Un consejo, todas las tablas que empiezan por T son tablas de verificacin. Si queremosver las que hay desde la pantalla del Dictionary, en el campo Tabla se introduce T* y si

    pulsamos F4, nos muestra todas las tablas disponibles.

    VER EL CONTENIDO, AADIR O MODIFICAR DATOS DE UNA TABLA

    Podemos ver el contenido de una tabla, aadir datos o modificar datos de una tabla. Sepuede hacer de dos formas muy sencillas: desde la pantalla de ABAP/4 DevelopmentWorkbench vamos al men Resumen, Data browser, o en la pantalla dondetratamos una tabla (Vase Fig. Tabla) vamos al men utilidades, contenido tabla. Enlos dos casos vamos al Data Browser que ser explicado ms adelante.

    Tambin tenemos otra forma de introducir datos que es a travs de las vistas que

    hayamos creado.Para ello tenemos que ir al men Sistema, servicios, actualizar tablas. Esta

    pantalla la podemos llamar desde cualquier punto de SAP, la pantalla que sale es lasiguiente:

    Autor: Ivn Rodrigo 31

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    32/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En tabla pondremos el nombre de la tabla que queramos visualizar, actualizar,customizing o act. Vistas.

    Tanto en visualizar, actualizar iremos a la siguiente pantalla (En la pginasiguiente):

    Autor: Ivn Rodrigo 32

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    33/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Esta pantalla es idntica a la vista anteriormente (Vase Fig. Resumen)

    Con este icono:

    Cambiar el modo de visualizacin/modificacin

    Se podrn modificar o visualizar los datos de la tabla.

    Con este icono:

    Borrar entrada o entradas

    podremos borrar una entrada o varias dependiendo de cuantas seleccionemos

    Para poder seleccionar varias entradas pulsamos el botn de seleccin.

    Con el botn de entradas nuevas podremos introducir nuevos datos a la tabla, parapoderlos grabar se utiliza el botn de la carpeta abierta (con el que siempre grabamos).

    Autor: Ivn Rodrigo 33

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    34/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    TABLAS DEL SISTEMA

    SAP tiene una serie de tablas de utilizacin diversas. Las variables del sistema o laspropiedades de una pantalla estn almacenadas en una tabla. A continuacin explicare lastablas ms usadas en SAP.

    SCREEN

    SAP coge cualquier pantalla como si fuera una tabla de diccionario, es decir, que paraacceder a cualquier objeto hemos de hacer un loop, lo que quiere decir que cadaobjeto es un registro y la pantalla una tabla. Los campos de esta tabla ya fueronexplicados en el tema de tablas del sistema. Y la tabla donde se guarda todo esta sellama SCREEN que tiene la siguiente estructura:

    Campo Longitud DescripcinNAME 30 Nombre del campo o del objeto

    GROUP1 3 Grupo 1 al cual perteneceGROUP2 3 Grupo 2 al cual perteneceGROUP3 3 Grupo 3 al cual perteneceGROUP4 3 Grupo 4 al cual perteneceACTIVE 1 Si esta activado. se puede ver e introducir datosREQUIRED 1 Si se ha de introducir obligatoriamenteINPUT 1 Si se puede introducir datos en lOUTPUT 1 Si se puede visualizar datos en lINTENSIFIED 1 Los datos se visualizan con un color intensificado o noINVISIBLE 1 Si es visible o invisible

    LENGTH 1 Para acotar la longitud de salida de un campoDISPLAY_3D 1 Si se visualiza con una frame de 3DVALUE_HELP 1 Si se visualiza con un valor de ayuda

    Todos los campos son tipo carcter o CHAR.

    Los atributos que se pueden modificar en tiempo de diseo son lo siguientes:

    SCREEN-REQUIRED.SCREEN-INPUT.SCREEN-OUTPUT.

    SCREEN-INTENSIFIED.SCREEN-INVISIBLE.SCREEN-ACTIVE.SCREEN-LENGHT.

    Los valores que pueden coger estos campos son: 0->Desactivado o 1->Activado.

    SYST

    Posiblemente sea la tabla ms importante de SAP, en esta tabla se guardan todas lasvariables del sistema. Solo mostrar las que utilizo ms a menudo:

    Campo Longitud Descripcin

    Autor: Ivn Rodrigo 34

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    35/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    SUBRC Devuelve un valor cuando se produce un error0 -> No hay errores4 y 8 -> Se ha producido algn error.

    REPID Nombre del programaDATUM Fecha de hoy

    UZEIT Hora del sistemaPAGNO N de pgina del listadoTABIX Indice de tablasMANDT MandanteOPSYS ProgramaUCOMM Botn o tecla pulsadaLSIND Nmero de ventana, creada a travs de la orden

    WINDOWUNAME Nombre del usuarioFDPOS Posicin donde se encuentra el string a buscar de la

    orden SEARCHPara poder utilizar estas variables se ha de poner delante de ellas: SY-variable, ejemplo:

    SY-UCOMM.

    OBJETOS MATCHCODE

    Un objeto matchcode es este icono: sale en aquellos campos donde podemosseleccionar un valor o varios valores.

    CREAR UN MATCHCODE

    Para crearlo tenemos que ir al Dictionary y ah seleccionar objetos matchcode,despus escribiremos el nombre que le daremos (mximo de 4 letras), despus

    pulsaremos el botn crear y nos saldr la siguiente pantalla:

    Vista o ID del

    matchcode

    Seleccionarcampos

    Tabla en la que buscaremos

    Fig. Matchcode.

    Autor: Ivn Rodrigo 35

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    36/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Antes de todo hemos de poner la descripcin breve y la tabla primaria en esta tabladonde se van a coger los campos a utilizar en el matchcode.Cuando hayamos introducido estos campos obligatorios es la hora de escoger quecampos vamos a utilizar. La parte de seleccin de campos la llamaremos: vista standard.

    Pulsamos el botn campos y nos saldr la siguiente pantalla:

    Campos de otras tablas

    Campos de nuestra tabla

    Fig. Campos.

    Al principio de todo nos coge los campos clave de nuestra tabla, para coger los camposque no son claves tenemos que pulsar el botn Seleccionar campos y nos saldr lasiguiente pantalla:

    Autor: Ivn Rodrigo 36

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    37/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Campos de la tabla

    Tomar loscamposseleccionados Borrar campo

    seleccionado

    Los campos que tienen un fondo gris es que estn seleccionados (los campos clavesiempre estn seleccionados) y los que estn en blanco son los que podemosseleccionar, los podemos seleccionar haciendo clic o doble clic y cuando hayamosseleccionado los campos que queramos pulsamos el botn tomar.

    Cuando hayamos tomado los campos nos volver a la pantalla de campos (Vase Fig.Campos), lo grabaremos para que nos tom los campos seleccionados y seguidamentevolveremos a la pantalla principal de objeto macthcode (Vase Fig. Matchcode)lo generaremos.

    Ahora solo nos falta crear la vista/ID o vistas/IDs. Estas vistas o IDs sirven para indicar quecampos se realizarn el matchcode, la seleccin de campos que hemos hecho antes es solo

    para decir a SAP de que campos se pueden realizar las vistas.

    Para realizar la vista pulsamos el botn IDs matchcode y nos saldr la siguientepantalla:

    Esta pantalla nos informa de que nos hay ninguna vista/ID creada y si la queremos

    crear, esta pantalla solo aparecer si no tenemos ninguna vista creada. Le diremos queS y nos saldr esta otra pantalla:

    Autor: Ivn Rodrigo 37

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    38/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Aqu le indicaremos el nmero de ID o vista por defecto nos sale la primera libre pero siqueremos ver las que hay creadas le damos al botn de mathcode o F4, cuando hayamospuesto el nmero de ID pulsaremos enter o el botn de confirmar y nos saldr lasiguiente pantalla:

    Fig. ID.

    Aqu primero le pondremos la descripcin breve y despus los campos a utilizar. Paraescoger que campos vamos a utilizar pulsamos el botn campos y nos saldr esta

    pantalla (en la pgina siguiente):

    Autor: Ivn Rodrigo 38

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    39/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Fig. ID campos.Tambin aqu nos ha cogido el mandante pero no el resto de campos claves y los que nolo son, que los tenemos que escoger. Para escogerlos pulsamos el botn seleccionarcampos y nos saldr esta otra pantalla:

    En este caso ya he seleccionado los campo a utilizar, que son todos pero podemosescoger los que queramos. Despus de haberlos escogidos pulsamos el botn Tomar.

    Autor: Ivn Rodrigo 39

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    40/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Si aqu seleccionamos un campo que no hemos seleccionado en la vista standard (laseleccin de campos que hemos hecho antes) despus en el programa no podremosguardar los valores, como veremos ms adelante.

    Cuando tomemos los campos nos volver a la pantalla de crear ID (Vase Fig. ID

    campos) grabaremos los campos y pulsaremos F3 o el botn Volver para volver a lapantalla inicial (Vase Fig. Matchcode) y ah de nuevo lo volveremos a generar. Cuando logeneremos es posible que nos d un Warning pero no pasa nada.

    Despus de todos estos pasos ya tenemos el matchcode listo para ser utilizado. Msadelante veremos como utilizar el matchcode en un ABAP.

    OBJETOS DE BLOQUEO

    Los objetos de bloqueo solo los podemos ver ya que modificar o crear uno de nuevosolo lo pueden hacer los consultores de SAP.

    Para ver los objetos de bloqueo o desbloqueo desde la pantalla de Biblioteca defunciones seleccionamos el radiobutton de donde queramos sacar la funcin y en elcampo Modulo de funciones escribimos *queue* (Bloquear) o *dequeu* (paradesbloquear) pulsamos F4 y nos saldr la siguiente pantalla con las funciones de

    bloqueo:

    Si hacemos doble clic sobre una funcin en el campo Modulo de funcin de lapantalla de Biblioteca de funciones nos saldr la funcin escogida y pulsamos elbotn de visualizar nos saldr la pantalla de informacin de esa funcin:

    Autor: Ivn Rodrigo 40

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    41/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Referencia de utilizacin

    Si pulsamos sobre referencia de utilizacin veremos que programas utilizan esa funcin ycomo la utilizan.

    Autor: Ivn Rodrigo 41

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    42/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    DATA BROWSER

    Podemos ver el contenido de una tabla, aadir datos o modificar datos de una tabla. Sepuede hacer de dos formas muy sencillas: desde la pantalla de ABAP/4 DevelopmentWorkbench vamos al men Resumen, Data browser, o en la pantalla donde

    tratamos una tabla (Vase Fig. Tabla) vamos al men utilidades, contenido tabla. Enlos dos casos nos saldr la siguiente pantalla:

    Introducir o modificar datos

    Ver el contenido de una tabla

    Fig. Data Browser.

    Desde aqu podemos aadir datos a la tabla o tambin podemos ver su contenido.

    Para ver el contenido introducimos el nombre de la tabla, despus pulsamos ENTER o ledamos al icono de las gafas o en el men tabla, contenido tabla. Al pulsar nossaldr la siguiente pantalla:

    Ver el contenido

    Desde aqu podemos realizar los criterios de bsqueda, si queremos hacerlo.Para ver el contenido de la tabla, con o sin criterios de bsqueda pulsamos al botn deejecutar bsqueda y nos saldr la siguiente pantalla con el listado de campos, en lasiguiente pantalla:

    Autor: Ivn Rodrigo 42

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    43/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Seleccin de registros Ver registros seleccionados

    Si por ejemplo la tabla tiene muchos campos y deseamos verla de una forma apaisada,podemos hacerlo de dos formas diferentes: la primera es haciendo doble clic en unregistro y automticamente nos saldrn los datos del registro seleccionado uno detrs deotro.La segunda permite ver un registro o varios registros (a travs de una paginacin). Parahacerlo tenemos que seleccionar el registro o registros que deseamos ver (con el checkbox que hay a la izquierda de los registros), despus pulsamos sobre el icono de lasgafas y nos saldr una pantalla con el registro o registros seleccionados.

    Si queremos aadir o modificar datos en la tabla, desde la pantalla del Data Browser(Vase Fig. Data Browser) pulsamos el botn de la hoja en blanco y nos sale lasiguiente pantalla para poder introducir datos:

    Autor: Ivn Rodrigo 43

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    44/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Fig. Resumen.Seleccionador de registros

    Cambiar de modovisualizacin/modificacin

    Un nuevo registro Borrar un registro

    Autor: Ivn Rodrigo 44

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    45/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    OBJECT BROWSER

    Con el Object browser podemos crear, modificar, borrar, etc. cualquier objeto deSAP. Para poder acceder a el vamos a la pantalla de ABAP/4 Development

    WorkBench y ah pulsamos el botn Object Browser o en el men Resumen,Object browser o F5. Y nos saldr la siguiente pantalla:

    Fig. Object Browser.

    En Lista de objetos podemos visualizar las clases de desarrollos, programa,grupo funciones, objeto privado local.

    En Objecto individual ya podemos crear, borrar, modifcar, etc los Programa,

    Grupo de funciones, Dictionary, Engineering y otros objetos.

    Como ejemplo de lista de objetos, listar los programas que empiezan por zz,para hacerlo escribiremos en el campo programa zz* y pulsaremos F4 o almatchcode y nos saldr la siguiente lista de programas:

    Autor: Ivn Rodrigo 45

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    46/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Ahora seleccionaremos el programa ZZACME20 haciendo doble clic o un clic ypulsando el botn de confirmar cuando lo hagamos en la pantalla del Object browser(Vase Fig. Objct browser) nos pondr el nombre del programa y si pulsamos el botnVisualizar nos saldr el programa.

    Como ejemplo de objeto individual mostrar que podemos hacer en programa, parahacerlo seleccionamos el radiobutton programa y pulsamos el botn tratar y nossaldr esta pantalla:

    Como vemos podremos hacer cualquiera con los objetos relacionados con el programa, si

    queremos buscar algn objeto lo tenemos que hacer con el matchcode.

    Autor: Ivn Rodrigo 46

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    47/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    BASES DE DATOS RELACIONALES

    Las BDD Relacionales son un conjunto de tablas relacionadas por un campo comn atodas ellas.

    Antes hemos visto como relacionarlas (a travs de claves forneas), ahora aprenderemoscomo utilizarlas en un programa.

    Para utilizar una BDD Relacional, primero hemos de indicarle al programa que vamos autilizar una BDD Relacional.

    Para indicarle al programa que vamos a utilizar una BDD relacional, tenemos que ir alos atributos del programa, e introducir una serie de datos como en la siguiente imagen:

    Campo para la BDD Relacional

    Como vemos en aplicacin le pondremos el valor K, si queremos ver los que hayutilizaremos el matchcode o pulsando F4. Cuando hallamos seleccionado laaplicacin pulsaremos ENTER y nos saldrn 3 campos para la BDD Relacional.

    Para seleccionar la BDD, nos posicionaremos el campo Base datos lgica ypulsaremos F4 o al matchcode y nos saldr una ventana con las BDD Relacionales quetiene SAP. Como en la siguiente imagen:

    Autor: Ivn Rodrigo 47

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    48/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En nuestro caso seleccionaremos la BDD KDF, despus de seleccionada nos volver ala pantalla de atributos y otra vez pulsaremos ENTER, y nos tiene que aparecer esta

    pantalla:

    Despus lo grabaremos y ya podremos utilizar nuestra BDD Relacionar en nuestroprograma

    Autor: Ivn Rodrigo 48

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    49/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    VER LA ESTRUCTURA DE UNA BDD RELACIONAL

    Para ver la estructura de una BDD Relacional, o sea, ver las que tablas estnrelacionadas entre s. Tenemos que ir a la pantalla de ABAP/4 Development

    Workbench y ah al men herramientas, entorno de programacin, bases de datoslgicas y nos saldr la siguiente pantalla:

    En el campo BD lgica escribiremos el nombre de la BDD Relacional, si no sabemos elnombre podemos buscarlos a travs del matchcode o pulsando F4. En nuestro caso laBDD sera KDF a continuacin pulsamos visualizar para ver su estructura y nosaparecer la siguiente imagen:

    Autor: Ivn Rodrigo 49

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    50/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En esta pantalla salen todas las tablas que estn relacionadas entre s.

    Por cada registro de LFA1 habr 1 o ms registros a LFB1 y por cada LFB1 habr 1 oms registros a LFC1, esto es una estructura jerrquica. Como vemos en la pantallaanterior.

    Las lecturas de estas tablas se hace con el GET.

    En el programa la parte de tablas, en este caso, se habrn de definir las 3 tablas queforman la parte de BDD lgica que usamos.

    Un ejemplo de codificacin de lectura:

    START-OF-SELECTIONGET LFA1.CHECK. Seleccin (opcional, no leer todos)

    GET LFB1.GET LFC1. Opcional: GET lfb1 late, coge l ultimo registro de nivel superior

    porque lo continua leyendo.END-OF-SELECTION.

    Esto ahorra llenar las llaves de cada acceso del GET.Hay que tener mucho CUIDADO! Que si los GETS no se ponen por orden de

    jerarqua, no peta pero hace lee de forma incorrecta.

    El hecho de definir una bases de datos lgica los atributos, hace que cuando se ejecute elPGM, nos pida los inputs de todos los campos de clave en las tablas ligadas a laBDD. Lgica.

    En el ejemplo anterior he creado el programa ZZIVAN01 y en los atributos le hepuesto que lea la BDD lgica KDF, ahora en el texto fuente escribir lo siguiente:

    REPORT ZZIVAN01TABLES: LFA1.GET LFA1.

    Si lo ejecutamos nos saldr la siguiente pantalla:

    Como vemos SAP ya nos lo hace todo.

    Autor: Ivn Rodrigo 50

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    51/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    EDITOR ABAP/4

    Este es el editor de programas, se activa pulsando el botn de Editor ABAP/4 en lapantalla principal de ABAP/4.

    Fig. ABAP/4 Acceso.

    En programa pondremos el programa que queramos crear, modificar o visualizar. En

    objetos parciales estn los tipos de objetos que tiene un programa:

    ATRIBUTOS

    En atributos sale la informacin referente al programa, la pantalla sera la siguiente:

    Autor: Ivn Rodrigo 51

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    52/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    En Tipo podremos cambiar el tipo de programa.Si nos posicionamos en el campo y pulsando F4 o el botn que saldr a la derecha, nossaldr el tipo de programas, en esta pantalla:

    Los de tipo Report s utilizan para realizar informes, presentaciones, entrada de datos,etc.

    Los de tipo Modulpool son aquellos en que antes de ejecutarse una pantalla se ejecuta unmdulo (llamado PBO->Program before output) y despus de ejecutarse, cuandoconfirmemos un dato o pulsemos un botn se ejecuta otro mdulo (llamadoPAI>program after input). Este tipo de programa puede llamar a otro programa del mismotipo que tenga PBO y PAI.

    Autor: Ivn Rodrigo 52

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    53/187

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    54/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Si pulsamos el botn que pone Objeto local nos grabar el programa de forma local ypor lo tanto no se podr transportar a produccin. Si pulsamos el botn de grabar nos lograbar con la clase de desarrollo que hemos puesto. Si la clase que hemos puesto noempieza por $ (Objeto local) nos saldr la siguiente pantalla:

    Numero de orden

    Confirmar orden

    Fig. Orden.

    Atributos delobjeto

    Donde pone N de orden le pondremos la orden de transporte.

    Tambin podremos crear una orden nueva (siempre y cuando tengamos autorizacin) omirar las rdenes que hay con el botn: Ordenes propias. Cuando hayamos puesto laorden que queramos pulsamos al botn Ordenes propias.

    Si le damos al icono del puzzle nos saldr una pantalla con los atributos del objeto, lapantalla que sale es la siguiente:

    Autor: Ivn Rodrigo 54

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    55/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Cuando hayamos introducido la orden, pulsamos el botn de confirmar orden. El

    transporte del objeto que hemos creado se explicar ms adelante.

    COMO CREAR UNA ORDEN DE TRANSPORTE

    Para crear una orden de transporte hemos de estar en la pantalla Consulta ordenmodificacin (Vase Fig. Orden) y desde ah hemos de pulsar el botn crear orden ynos saldr la siguiente pantalla:

    Nombre del usuario

    Grabar orden

    En descripcin escribiremos un texto breve, por ejemplo, en BASF siempre se pone alprincipio E_030_ FI nombre_objeto donde nombre de objeto es el nombre de unatabla, ABAP, etc. es muy recomendable utilizar una orden de transporte por cada objetoque tengamos creado, ya que es ms claro a la hora de transportarlo.

    Cuando lo hayamos creado pulsamos el botn de grabar y nos volver a la pantallaConsulta orden modificacin (Vase Fig. Orden) ah confirmamos la orden y

    podremos transportar el objeto.

    Como transportarlo se ver ms adelante.

    VARIANTESVolviendo a la pantalla del editor ABAP/4 tenemos variantes. Cuando en un programaqueremos que se introduzcan unos valores predeterminados y no los que el usuarioquiera, se utilizarn variantes. Las variantes tendrn los valores que se puedenintroducir. Ms adelante veremos un ejemplo completo de variantes.

    DOCUMENTACION

    Despus est la documentacin que como su nombre indica se refiere a ladocumentacin del programa.

    Autor: Ivn Rodrigo 55

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    56/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    ELEMENTOS DE TEXTO

    Los elementos de texto son textos que podemos incluir en el programa de una formaabreviada. Para acceder a ellos desde la pantalla principal (Vase Fig. ABAP/4 Acceso.)

    pulsamos sobre el botn de elementos de textos. Tambin lo podemos hacer desde el

    editor de programas, yendo al men Pasar a, elementos de texto. Si accedemos poresos dos sitios o por alguno ms (hay alguno ms) sale la siguiente pantalla:Fig. Elementos de texto.

    SIMBOLOS DE TEXTO

    Las lneas del editor de programas tienen una anchura determinada, por ello paravisualizar mensajes largos o mensajes que queramos repetir varias veces utilizamos lossmbolos de texto.Los smbolos de texto se pueden crear cuando escribimos el programa o en la pantalla

    principal pulsando el botn de elementos de texto y escribiendo el nombre delprograma.Si estamos escribiendo el programa, para crearlo o modificarlo escribiramos TEXT-001(donde 001 es l numero del elemento de texto asociado al texto) y si sobre TEXThacemos doble clic nos saldr la pantalla de creacin o modificacin (s ya existiera) de unelemento de texto. Un ejemplo sera:

    WRITE: / TEXT-001 CENTERED

    N de elemento de texto

    Escribira lo que valiera TEXT-001 centrado y despus hara un salto de lnea.

    Autor: Ivn Rodrigo 56

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    57/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Desde el editor de programas tambin se puede hacer a travs de los mens Pasar a,elementos de texto o tambin desde la pantalla de elementos de datos (Vase Fig.Elementos de datos) seleccionando smbolos de texto.

    La pantalla que saldr cuando lo creemos o modifiquemos (no importa desde donde lo

    hagamos) ser la siguiente:

    No hay que olvidarse de grabarlo para poder asociarlo al programa.

    Los elementos de texto son muy tiles ya que nos permiten escribir textos largos sinimportarnos la anchura del editor de programas y tambin cuando queramos traducirnuestro programa a otros idiomas, ya que slo se traducen los elementos de texto.

    TITULOS/CABECERAS

    Volviendo al editor ABAP/4, tenemos Ttulos/Cabeceras. Es til cuando hagamos

    listados por impresora o por pantalla. Nos saldrn las cabeceras, ttulos, etc. quenosotros queramos. La pantalla de Ttulos/Cabeceras es la siguiente (En la pginasiguiente):

    Ttulo de la pantalla

    Autor: Ivn Rodrigo 57

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    58/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Recordar que si al principio del programa no ponemos la siguiente lnea en el Report,NO STANDARD PAGE HEADING, no nos saldrn los ttulos y cabeceras quehayamos puesto. Esta parte se explicar ms adelante.

    TEXTO DE SELECCION

    El texto de seleccin es lo mismo que los elementos de texto pero en este caso referido acampos de un programa.Se pueden crear o modificar desde cualquier punto del editor ABAP/4, escribiendo elnombre del programa y activando el push botton de texto seleccin, desde los mens

    Autor: Ivn Rodrigo 58

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    59/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Pasar a, Texto seleccin, pero la forma ms cmoda es desde el editor de programas (deigual forma que en los elementos de texto).Escribimos PA-001 (donde 001 ser l nmero de texto seleccin asociado al texto) yhacemos doble clic en PA y ya podemos crearlo o modificarlo si ya existiera.

    Si no existe nos saldr una pantalla con los objetos que podemos crear:

    Despus de escoger el objeto nos saldr la pantalla siguiente:

    No hay que olvidarse de grabarlo para poder asociarlo al programa.

    Autor: Ivn Rodrigo 59

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    60/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    TEXTO FUENTE

    Por ltimo en el editor ABAP/4 est el texto fuente (yo lo llamo editor de programas), quees donde se escriben los programas en si, para crear un programa o modificar uno ya

    existente:

    - Escribimos el nombre del programa en la etiqueta donde pone programa acrear o modificar

    - Activamos el push button de texto fuente y le damos al botn de crear omodificar.

    Despus nos aparecer la misma pantalla que aparece en Atributos donde nos pedir elmensaje breve del programa, tipo de programa, aplicacin. Cuando hayamosintroducido estos datos lo grabaremos, y nos saldr la pantalla comn cuando se graba unobjeto nuevo y despus pulsaremos el botn de texto fuente que est en el men

    painter y nos iremos al editor de programas.Y nos aparecer el editor de programas que es el siguiente:

    Compila el programa

    Cambia de modovisualizacin/modificacin

    Inserta una lnea Imprimirlo

    Insertar unpatrn en el

    Graba el programa programa

    Y ya podemos escribir nuestro programa. Como en cualquier lenguaje el programa se hade compilar con este botn:

    COMPILA UN PROGRAMA

    Autor: Ivn Rodrigo 60

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    61/187

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    62/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Fig. Modelo.

    Como vemos podemos insertar casi cualquier cosa. Para ver como funciona vamos ainsertar una subrutina externa al programa.

    Para hacerlo primero hemos de posicionar el cursor en el campo que pone perform,despus le damos al matchcode o pulsamos F4, entonces nos puede salir una pantalla uotra dependiendo si nuestro programa ya tiene alguna subrutina asociada. Si tienealguna subrutina nos saldr la siguiente pantalla:

    En esta pantalla nos saldran las subrutinas que tiene nuestro programa, por si queremosinsertar alguna en nuestro programa.

    Autor: Ivn Rodrigo 62

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    63/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Ahora si le damos al botn Nueva seleccin nos saldr la pantalla siguiente. Estapantalla tambin saldr cuando no tengamos ninguna subrutina en el programa.

    Subrutina a buscar

    Programa donde buscaremos las subrutinas.

    En programa pondremos el nombre del programa donde queremos buscar lassubrutinas (por defecto sale el programa donde estamos) y en qu subrutina queremos

    buscar. Ejemplo: yo en programa escribir ZZACME31 (que s que tiene subrutinas,vosotros poned un programa que tambin las tenga). En subrutina, como no s como sellaman, ni cuantas hay pondr un * y pulsar F8 (o el botn de bsqueda) y en mi casome saldr esta ventana con las subrutinas encontradas:

    Autor: Ivn Rodrigo 63

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    64/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Ahora, haciendo clic en una subrutina y pulsando sobre el icono de confirmar (abajo a laizquierda) o directamente haciendo doble clic sobre la rutina deseada y en la pantalla demodelo (Vase Fig. Modelo) nos saldr la subrutina escogida. Ahora le damos al botn(tambin abajo a la izquierda) y SAP nos insertar automticamente la subrutina. En

    nuestro caso sera esta:

    Nombre de la Nombre del programasubrutina

    COMANDOS DE LINEA

    Los comandos de lnea, como bien dice su nombre, se escriben en el nmero de lnea de unprograma.

    Lugar donde se escriben los comandos de lnea

    Los comandos de lnea se pueden dividir en: comandos de una sola lnea, comandos debloques de lnea e insertar un trozo de programa en otro.

    COMANDOS DE UNA SOLA LNEA

    Autor: Ivn Rodrigo 64

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    65/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Los comandos de una sola lnea son los siguientes:

    - J -> Juntar lnea.- In -> Insertar lnea(s), donde n es el nmero de lneas a insertar.- R -> Repetir lnea.

    - C -> Copiar lnea.- M -> Mover lnea.- D -> Borrar lnea.- S -> Partir lnea.- O -> Overwrite, machaca los espacios en blancos de la lnea.- * -> Posiciona la lnea en la primera posicin de la pgina, o doble clic del

    ratn.

    COMANDOS DE BLOQUE DE LNEA.

    Las instrucciones para manipular son parecidas a las anteriores. Explicar como:

    mover, copiar y borrar un bloque de lneas.

    MOVER

    Para mover se utiliza dos veces la orden MM, una para indicarle el inicio del bloque y lasegunda para indicar el final del bloque. Pulsaremos ENTER, cuando lo hagamosveremos como ese bloque cambia de color, para mover el bloque al lugar deseado, nosposicionamos con el curso en la lnea que queramos movernos y ah tenemos dosordenes para colocarlo que son:

    A -> Despus de la lnea donde estemos.B -> Antes de la lnea donde estemos.

    COPIAR

    Para copiar tenemos la orden CC, y como en la instruccin para mover, la primera va enla lnea de comienzo del bloque y la segunda en la lnea de final de bloque.Pulsaremos ENTER tambin cambia de color, y para colocar el bloque tambintenemos la orden A (Antes) y B (Despus) de igual funcionamiento que las explicadasanteriormente.

    BORRAR

    Para borrar es la orden DD, y como en las dos anteriores la primera es para el inicio debloque y la segunda para el final de bloque. Cuando pulsemos ENTER se borrarn laslneas que tenga el bloque.

    INSERTAR UN TROZO DE PROGRAMA EN OTRO

    Para hacerlo tenemos la orden XX, que su utilizacin es la misma que copiar, mover oborrar un bloque, es decir, primero indicamos el inicio del bloque seguidamente

    indicaremos el final del bloque. Cuando pulsemos ENTER veremos como el bloquecambia de color, para colocar el bloque marcado solo tenemos que escribir la X en la

    Autor: Ivn Rodrigo 65

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    66/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    lnea del programa que deseamos copiar el bloque, y el bloque se insertar una lneadespus de donde hayamos hecho la X.

    COMANDOS GENERALES

    Los comandos generales nos permiten compilar un programa, visualizar la estructura deuna tabla, ayudas, etc.

    Lugar donde se escriben los comandos generales

    Tenemos las siguientes instrucciones:

    - CHECK -> Verificar un programa.- HELP instruccin -> Ayuda sobre la instruccin especificada.- SHOW SY -> Ensea las variables del sistema.- SHOW tabla -> Muestra la estructura de la tabla escrita.- INSERT -> Inserta lneas.- T TOP -> 1 lnea del programa.- B BOTTOM -> ltima lnea de programa.- IC instruccin -> Coloca la estructura en el lugar del cursor.

    Ejemplo: IC IF IC SELECT.- REPLACE valor_inicial valor_final -> Sustituye los valores.- PP -> Pretty Printer estructura el programa.- FIND palabra -> Busca la palabra.- NEXT -> Continua la bsqueda realizada por el FIND.

    MENS DEL EDITOR ABAP/4

    La pantalla del editor de ABAP/4 (vase fig. ABAP/4 Acceso) tiene unos mens que nospueden ayudar a realizar las tareas ms comunes.

    En el men programa podemos:Crear F5 -> Un programa nuevo.Modificar F6 -> Un programa ya existente.Visualizar F7 -> Un programa ya existente.

    Tambin podemos verificar de forma simple o de una forma ms compleja, generarlo(CTRL + F3) y ejecutarlo con las siguientes opciones:

    - Forma directa F8.- Fondo, debugging SHIFT+F5.- Anlisis de tiempo de ejecucin, con variante SHIFT+F6 y de resumen de

    variante.

    Imprimir SHIFT+F1 -> Imprimir un programa que tengamos.

    Autor: Ivn Rodrigo 66

  • 7/31/2019 Manual de Sap _Lenguaje de programacin Abap4 Parte 1_

    67/187

    MANUAL DE SAP. LENGUAJE DE PROGRAMACIN ABAP/4.

    Activar versin -> esto pone una versin al programa, por ejemplo el SAP que utiliza laempresa en que trabajo tiene la versin 3.1

    Pretty Printer -> Nos estructura el programa de forma adecuada y adems nos separa los

    procediemientos y mdulos que tengamos en el programa y con la posibilidad de poderinsertar un comentario, sobre lo que hace ese procedimiento o formulario.

    Copiar CTRL+F5 -> Esta utilidad la utilic una vez y me gust bastante comofuncionaba. Esta utilidad permite copiar un programa co