✒️ABAP El procesamiento de los datos
ABAP El procesamiento de los datos
Resumen
Unidad 2 lección 5 El procesamiento de datos
1.- La inicializacion de variables
Cuando en un programa ABAP, trabajamos con variables, lo primero es declararlas y lo segundo es inicializarlas o blanquearlas, esto se hace antes de utilizarlas y asegurar su contenedio vacio o limpias.
La sentencia es: CLEAR variable. Ej: CLEAR v_fecha.
otro ejemplo de inicializar todas la variables: CLEAR: variable1, variable2, variable3,....variablen.
otro ejemplo de inicializar
DATA: v_fecha TYPE d,
v_hora TYPE t,
v_cantiadd TYPE I,
v_titulo TYPE string,
......... .... .....,
......... .... ......
El contenido de la variable cuando la inicializamos con la sentencia CLEAR
v_fecha ='00000000'.
v_hora = '000000'.
v_cantidad = 0.
v_titulo = ''
Una sentencia xa consultar el contenido de las variables es IS INITIAL => si el contenido de la variable es inicial o no.
IF w_fecha IS INITIAL
write 'La fecha esta vacia'
ENDIF
La sentencia IS INITIAL es muy util cuando trabajamos con tabla internas (verlo mas adelante dice el profe).
2- La Asignación de valores a las variables
Ya declaramos las variables, luego las inicializamos y ahora sigue la asignacion de valores determinados y existen dos formas o alternativas y son:
Una | Dos |
Asignación Simple | Asignar valores utilizado MOVE |
v_cantidad2 = v_cantidad1 | MOVE v_cantidad1 TO v_cantidad2 |
Asignamos v_cantidad1 v_cantidad2 | Asignamos v_cantidad1 a v_cantidad2 |
En ABAP puede pasar esto: El contenido de una variable (i) integer a una variable de tip (c) char, son de diferente tipo de dato Ej: i integer => c caracter (Se produce error en el tiempo de ejecución? NO. ABAP va a convertir el contenido de tipo i a contenido de c, en el momento de la asignación.
3- Referencia de Utilización de las variables
Existe una funcionalidad q nos permite saber en q lugares de código se utiliza una variable y es la sgnte, REFERENCIA DE UTILIZACION:
Existen dos forma
1** Consiste en seleccionar la variable de la cual deseamos saber donde se utiliza y hacemos clic en el icono de la referencia de utilización de la barra de Tools. Se abre una ventana de dialogo y seleccionamos
== Programa (seleccionar) == Dynpros (seleccionar)
Final/ nos muestra el sist. una ventana de dialogo con el resultado
Programa | Lugares hallazgos / Descrip. breve |
Zpruebas_ABAP2_5 |
52 CLEAR v_fecha. 76 IF v_fecha IS INITIAL
|
2** Forma de acceder a la funcionalidad de referencia de utilizacion es hacer clic sobre el nombre de la variable a continuación el sist, nos lleva a la declaración de la variable en el programa y volvemos hacer doble clic sobre la declaración de variable v_fecha y luego tal como hicimos en la primera forma.
4- Las operaciones con los caracteres
Existen sentencias ABAP q se utilizan xa tratar caracteres y son:
** CONCATENATE: Se utiliza xa concatenar varios campos alfanuméricos.
CONCATENATE v_campo1 v_campo2 v_campo3 INTO v_campo SEPARATED BY '.'.
(CONCATENATE) V_dia v_mes v_anio SEPARATED BY ‘/’
Todos los campos son de tipo char con clausula SEPARATED BY (se puede especificar un campo alfanumérico.
es util cuando se trabajo un listado y se debe convertir en DD.MM.YYYY.
** TRANSLATE: convertir caracteres de mayúsculas a minúsculas o viceversa o xa realizar o xa realizar situaciones de caracteres a través de ciertas reglas.
TRANSLATE v_texto TO UPPER CASE. (convierte a mayúsculas el contenido de la variable v_texto.
** REPLACE: Esta sentencia reemplaza cierta parte de una cadena de caracteres o caracter.
REPLACE 'Hola' WITH 'Casa' INTO v_texto.
la sentencia REPLACE reemplaza el contenido de la variable v_texto q es 'Hola' x el texto 'Casa'.
Este se utiliza mucho cuando se trabaja con importes.
** SPLIT: Esta sentencia devide a un campo alfanumérico en varios campos x un separador.
SPLIT v_texto_largo AT ',' INTO v_campo1 v_campo2 v_campo3 v_campo4
Si todos los campos destino son suficiente/ grandes xa almacenar las partes del campo v_texto_lago, entocnes el SY-BUBRC valdra 0, caso contrario valdra 4.
** SHIFT: Esta sentencia se utiliza xa desplazar el contenido de un campo alfanumérico. Realiza el desplazamiento del contenido de un campo hasta un string dado.
SHIFT v_alfabeto BY 5 PLACES.
La sentencia SHIFT realiza el desplazamiento del campo v_alfabeto hasta la quinta posición, qdando el resto de caracteres q componen a v_alfabeto en la variable y eliminando los 5 primeros caracteres.
Esta sentencia es útil cuando trabajamos con # de documentos o cualquier otro # (con ceros a la izquierda).
** SEARCH: Esta sentencia se utiliza xa buscar un cadena de caractes dentro de un campo alfanumerico.
SEARCH v_alfabeto FOR 'ABC'.
Esta sentencia SEARCH busca en el campo v_alfabeto la secuencia de caracteres 'ABC'. como la secuencia existe devolverá SY-SUBRC igual a Cero (0). caso contrario el index es valor a 4.
Este se utiliza en tablas internas y se busca ocurrencia de una determinada cadena en un campo de la tabla.
** CONDENSE: se utiliza xa borrar espacios en blanco en campos alfanuméricos.
CONDENSE wa_doctor.
La salida en pantalla de la sentencia CONDENSE seria 'Dr Rafael Castro' con el agregado de la clausula NO- GAPS al final se las sentencia se elimina todos los espacios en blanco. ósea espacios existentes entre palabras.
Este se utiliza en reportes cuando queremos formatear la salida en pantalla de un campo determinado.
Reportes RCPSCAN1 (muestra en pantalla)
5- Las operaciones Aritmétricas
Las 4 operaciones básicas + - x y división, se puede implementar de 2 formas
La formula convencional de la suma y su asignaciÓn es:
v_campo1 = v_campo2 + v_campo3.
La otra opción es con la sentencia COMPUTE obteniendo el mismo resultado:
COMPUTE v_campo1 = v_campo2 + v_campo3.
Sentencias para operar aritmética/ con datos:
ADD 1 TO v_numero. "suma 1 a la variable v_numero
SUBTRACT 1 FROM v_numero. " resta 1 a la variable v_numero
MULTIPLY v_numero BY 2. "Multiplicar x 2 a la variable v_numero
DIVIDE v_numero BY 2 " Divide x 2 a la variable v_numero.
Operadores Relaciones ( con caracteres)
- CO ==> Contiene solo
- CN ==> Contiene no solo
- CA ==> Contiene al menos
- CS ==> Contiene String
- CP ==> Contiene Patron
Los negativos de los anteriores
- NA ==> No contiene al menos
- NS ==> No contiene string
- NP ==> No contiene patron
 
 
 
Sobre el autor
Publicación académica de Gustavo Betancur Guzmán, en su ámbito de estudios para la Carrera Consultor ABAP.
Gustavo Betancur Guzmán
Profesión: Ingeniero de Sistemas - Colombia - Legajo: WS86O
✒️Autor de: 164 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor en SAP MM Nivel Avanzado
- Carrera Consultor en SAP MM Nivel Inicial