Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ABAP/4
Programacin en dilogo
ABAP/4
Batch Input
Creando programas
Especificar atributos: Clase de desarrollo ($TMP, ZGTO)
Modo comando
Sintaxis ABAP/4
DATA CONTADOR TYPE I. DATA NOMBRE(20). MOVE 2 TO CONTADOR. MOVE ABC TO NOMBRE. . . .
Encadenamientos de estatutos
WRITE XYZ. WRITE NOMBRE. WRITE CONTADOR. WRITE: XYZ, NOMBRE, CONTADOR.
Comentarios
DATA: TOTAL TYPE P, CONTADOR TYPE P. * Limpia la variable total. CLEAR TOTAL. Totales por campo
Estatuto Select
Descripcin de la tabla en el Diccionario de datos Tabla SBOOK
CARRID MXC CONNID 7475 FLDATE 24/12/99 BOOKID 56845698
SBOOK-CARRID SBOOK-CONNID SBOOK-FLDATE SBOOK-BOOKID CHAR NUM DATE NUMC C N D N 3 4 8 8
Formato
REPORT ZPRUEBA. WRITE: / 5 **************************************. WRITE: / 5 FECHA: , 40 SY-DATUM, / 5 HORA: , 40 SY-UZEIT, / 5 **************************************. ULINE / 5 ( 50 ). SKIP 2. ULINE. PRUEBA *********************************************** FECHA: 21.12.1999 HORA: 16:30:33 ********************************************** ______________________________________________ _____________________________________________________ 1
Columna 5
Columna 40
Cules son los atributos que se deben de especificar al crear un programa ABAP?
Para qu se utiliza el estatuto SELECT? Cmo se puede filtrar la seleccin de datos en un programa ABAP?
DICCIONARIO ABAP/4
Relacin entre programas ABAP/4 y el Diccionario de Datos
Objetos bsicos del Diccionario de Datos Tablas Transparentes Estructuras
ABAP/4
DATA MODELER
SCREEN PAINTER
ABAP/4 Dictionary
ABAP/4 INTERPRETER
DIALOG CONTROL
INTERFACE PROGRAM
SCREEN INTERPRETER
campo
Tabla SFLIGHT
PRECIO
Domain S_PRECIO
Tablas Transparentes
DICCIONARIO ABAP/4 Definicin lgica de la tabla
Campo1 Campo2 Campo3 Campo4
Estructuras
ABAP/4 Diccionario Definicin lgica de la tabla
Qu es el Diccionario de Datos?
Qu es una estructura?
Asignacin de valores
Expresiones aritmticas Operaciones con string Declaracin de Parmetros Estatutos de Control
Declaracin
TYPES: NOMBRES LIKE SCUSTOM-NAME. DATA: NOMBRE1 TYPE NOMBRES, SUMA(5) TYPE P DECIMALS 2, FECHA TYPE D.
Asignacin de valores
MOVE SAP TO NOMBRE1. MOVE 1 TO PRIMER_LINEA. NOMBRE2 = NOMBRE1. COMPUTE SIGUIENTE_LINEA = PRIMER_LINEA + 1. ADD 1 TO SIGUIENTE_LINEA.
Expresiones aritmticas
PROGRAM ZEJERCICIO. DATA: CONTADOR TYPE I, CANTIDAD TYPE P VALUE 1000, SUMA TYPE P, RESULTADO TYPE P, NUMERO TYPE I VALUE 10, RAIZ_CUADRADA TYPE F. COMPUTE: CONTADOR = CONTADOR + 2, RESULTADO = CANTIDAD * CONTADOR. SUMA = RESULTADO + NUMERO - CONTADOR. RAIZ_CUADRADA = SQRT( NUMERO + CONTADOR ).
Subcampos
DATA: FECHA LIKE SY-DATUM, MES(2) TYPE C, DIA(2) TYPE C, ANIO(4) TYPE C.
F1
F2
F3
F1
F2
F3
Declaracin de Parmetros
PARAMETERS: PARAMETRO1 TYPE P, PARAMETRO2 DEFAULT X. MOVE PARAMETRO1 TO .. WRITE: PARAMETRO1, PARAMETRO2.
Selection Screen
Estatutos de Control
Operadores Relacionales
IF
ENDIF
CASE ENDCASE
CHECK
EXIT
DO
ENDDO
WHILE ENDWHILE
Operador EQ = NE <> >< GT > GE >= => LT < LE <= =< BETWEEN IS INITIAL
Significado Igual Diferente Mayor que Mayor que o igual Menor que Menor que o igual Rangos Valor inicial
Estatuto IF
IF <expresin lgica>. ----------------------ENDIF. IF <expresin lgica>. -----------ELSE. -----------ENDIF.
Estatuto CASE
CASE <campo> WHEN <valor1>. --------------------------------WHEN <valor2>. ---------------------------------
Ciclo DO
ENDDO.
SY-INDEX
Ciclo WHILE
Estatuto CHECK
CHECK <expresin lgica>.
Estatuto EXIT
EXIT.
TABLAS INTERNAS
Campo String Tabla Interna Procesamiento de Tablas Internas con lnea de encabezado Procesamiento de Tablas Internas sin lnea de encabezado
A diferencia de las tablas transparentes, las tablas internas slo existen durante la ejecucin del programa en donde fueron declaradas.
campo1 campo2 campo3 campo4 campo5
c c c
i i i
d d d
p p p
c c c
Tabla Interna
LISTA DE VUELOS
Header Line
SFLIGHT
FLDATE 29111999
PRICE
INFO_VUELO
PRICE
C C N D
3 3 4 8
CARRID
CONNID
PRICE
CARRID
CONNID
PRICE
CC
AA AA DL LH LH UA
4521
64 64 1975 400 425 589
7500
12300 3450 6721 10000 5600 4856
CC
4521
7500
AA AA DL LH LH UA
O R D E N A R
REPORT SUMA. TABLES: SFLIGHT. DATA: BEGIN OF LISTA_VUELO OCCURS 10, CARRID LIKE SFLIGHT-CARRID, CONNID LIKE SFLIGHT-CONNID, PRICE LIKE SFLIGHT-PRICE, 250 END OF LISTA_VUELO.
SELECT * FROM SFLIGHT. MOVE-CORRESPONDING SFLIGHT TO LISTA_VUELO. APPEND LISTA_VUELO. ENDSELECT. LOOP AT LISTA_VUELO. WRITE: / LISTA_VUELO-CARRID, LISTA_VUELO-CONNID ENDLOOP. LOOP AT LISTA_VUELO WHERE CARRID = LH. WRITE: / LISTA_VUELO-CARRID, LISTA_VUELO-CONNID ENDLOOP. IF SY-SUBRC NE 0. ------------ENDIF.
DATA:
SELECT * FROM SFLIGHT. MOVE-CORRESPONDING SFLIGHT TO LISTA_VUELO. APPEND LISTA_VUELO. ENDSELECT. READ TABLE LISTA_VUELO WITH KEY LH 0400. READ TABLE LISTA_VUELO INDEX INDICE.
DATA:
READ TABLE LISTA_VUELO WITH KEY LH 0400. MOVE 122.5 TO INFO_VEULO-PRICE. MODIFY INFO_VUELO INDEX SY-TABIX. INSERT INFO_VUELO INDEX 1.
REFRESH <itab>.
Borra todos los registros El espacio en memoria permanece
FREE <itab>.
Borra todos los registros El espacio en memoria es liberado
DATA:
BEGIN OF LISTA_VUELO OCCURS 10, --------------, END OF LISTA_VUELO, LINE_COUNT TYPE I, OCCURS_COUNT TYPE I.
REPORT ZEJERCICIO. TYPES: BEGIN OF TIPO_VUELO, CARRID LIKE SFLIGHT-CARRID, FLDATE LIKE SFLIGHT-FLDATE, PRICE LIKE SFLIGHT-PRICE, END OF TIPO_VUELO. DATA: LISTA_VUELO TYPE TIPO_VUELO OCCURS 4.
CARRID CONNID FLDATE PRICE
CARRID
CONNID
PRICE
AA
AA AA DL LH LH UA
64
64 64 1975 400 425 589
8900
12300 3450 6721 10000 5600 4856
WORK AREA
Funciones agregadas
Leyendo componente por componente Seleccin con Rango
Acceso individual
Obtener registro
Conocer llave
SELECT SINGLE * FROM SPFLI WHERE CARRID EQ LH AND CONNID EQ 0400. IF SY-SUBRC = 0. WRITE: / SPFLI-CARRID, SPFLI-CONNID, SPFLI-CITYFROM, SPFLI-CITYTO. ENDIF.
SELECT * FROM SPFLI WHERE CITYFROM EQ MEXICO. WRITE: / SPFLI-CARRID, SPFLI-CONNID, SPFLI-CITYFROM. ENDSELECT.
Operador EQ = NE <> >< GT > GE >= => LT < LE <= =< BETWEEN IS INITIAL Significado Igual Diferente Mayor que Mayor que o igual Menor que Menor que o igual Rangos Valor inicial
DATA: ZDEST LIKE SPFLI-CITYTO, ZORIGEN LIKE SPFLI-CITYFROM. SELECT CITYTO CITYFROM INTO ( ZDEST, ZORIGEN ) FROM SPFLI WHERE CARRID = LH. WRITE: / ZDEST, ZORIGEN. ENDSELECT.
MIN( DISTANCE ).
COUNT( * ).
VERIFICACIN DE AUTORIZACIN
Autorizacin
Principios de Autorizacin Verificacin de autorizacin en programas
Sintaxis de Authority-Check
Autorizacin
Todos los datos en el Sistema R/3 deben de ser protegidos contra accesos no autorizados.
Mediante los objetos de autorizacin es posible determinar explcitamente qu datos puede un usuario accesar y qu tipo de acceso es posible.
Principios de Autorizacin
Seleccin
SELECT
Authority Check
SY-SUBRC =0
NO
SI
Mensaje
SELECT
OBJECT S_CARRID
ACTVT
03 02 01
CARRID
AA DA DL LH UA
Sintaxis de Authority-Check
AUTHORITY-CHECK OBJECT <objeto> ID <campo1> FIELD <valor requerido> ID <campo2> FIELD <valor requerido> ID <campo3> FIELD <valor requerido> --------ID <campoN> DUMMY. IF SY-SUBRC NE 0. -----ENDIF.
MODULARIZACIN
Modularizacin Definicin y llamadas a Subrutinas Datos Globales y Locales Call Function
Definicin de Modularidad
Dividir lgicamente el programa en pequeas unidades o mdulos independientes cuya funcionalidad sea nica y precisa. La modularidad facilita la comprensin y lectura de un programa.
Modularizacin
CALL: CALCULA_PERDIDA
PERFORM
FORM
Declaracin de Subrutina
Call Function
REPORT ZEJERCICIO. TABLES: ----DATA: -----
CALL FUNCTION --------- EXPORTING f1 = a1 IMPORTING f2 = a2 CHANGING f3 = a3 TABLES f4 = a4 EXCEPTIONS not_found = 01.
CASE SY-SUBRC. WHEN 01. -----ENDCASE.