Asignacion de valores.
=====================
Hay dos tipos:
1)Asignacion simple: num1 = num2. (Los num deben ser del mismo tipo)
2)Usando la sentnecia MOVE: MOVE num1 TO num2.
Inicializacion de variables.
===========================
Para el borrado se usa la sentnecia CLEAR: CLEAR num1.
Sentencia IS INITIAL.
====================
La expresión lógica comprueba si el operando operando es inicial. La expresión es verdadera, si el operando contiene su valor inicial de tipo específico. Para operando, puede especificar los objetos de datos, funciones integradas (desde el lanzamiento 6,10) y los métodos funcionales. Este último utiliza el valor de retorno como operando. Con el NOT (IS NOT INITIAL), además, la expresión es verdadera si el operando contiene un valor diferente a su valor inicial de tipo específico.
Operaciones con caracteres.
==========================
-CONCATENATE: Se usa para ligar varios campos alfanumericos en uno solo.
CONCATENATE txt_1 txt_2 txt_3 INTO txt_union SEPARATED BY '.'.
-TRANSLATE: Se utiliza para convertir caracteres de mayuscula o minuscula o viceversa, o para realizar sustituciones de caracteres siguiendo ciertas reglas.
FUNCION: TRANSLATE text {TO {UPPER|LOWER} CASE} | {USING pattern}.
Ejemplo: TRASNLATE txt_1 TO UPPER CASE.
-REPLACE: Reemplaza cierta parte de una cadena de caracteres por otra cadena de caracteres o caracter.
Ejemplo: REPLACE 'Hola' WITH 'Casa' INTO texto
-SPLIT : Divide un campo alfanumerico en varios campos por un separador. Si todos los campos destino son lo suficientemente grandes para almacena las partes del campo dividido, SY-SUBRC valdra 0, en caso contrario valdra 4.
Ejemplo: SPLIT texto_largo AT ' ' INTO txt1 txt2 txt3 txt4.
-SHIFT : Se utiliza para desplazar el contenido de un campo alfanumerico. Realiza el desplazamiento de un campo hasta un string dado.
Ejemplo: SHIFT texto_largo BY 5 places.
-SEARCH : Se utilza para buscar una cadena de caracteres dentro de un campo alfanumerico.
Ejemplo: SEARCH letra FOR 'ABC'.
El ejemplo busca la secuencia de letra en la cadena 'ABC', si la encuentra SY-SUBRC devolvera 0, de lo contrario devolvera 4.
-CONDENSE: Se usa para borra espacios en blanco en campos alfanumericos.
Ejemplo: CONDENSE tetxo_largo.
Operaciones aritmeticas.
=======================
Se pueden realizar de dos maneras:
1) resultado = num1 num2.
2) COMPUTE resultado = num1 num2.
Tambien se puede usar:
ADD 1 TO num1.
SUBSTRACT 1 FROM resultado.
MULTIPLY num2 BY 3.
DIVIDE resultado BY 2.
Ejercicio Resuelto.
*&---------------------------------------------------------------------*
*& Report ZABAP_FECHA_ACTUAL_ESTMO99K
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
*dada la fecha del día contenida en la variable del sistema SY-DATUM, se solicita
*imprimirla en pantalla con el siguiente formato: DD/MM/AAAA.
REPORT ZABAP_FECHA_ACTUAL_ESTMO99K.
DATA: fecha(8) TYPE c,
fecha_dia(2) TYPE c,
fecha_mes(2) TYPE c,
fecha_anio(4) TYPE c,
fecha_actual(10) TYPE c.
INITIALIZATION.
fecha = SY-DATUM.
START-OF-SELECTION.
fecha_dia = fecha 6(2).
fecha_mes = fecha 4(2).
fecha_anio = fecha 0(4).
CONCATENATE fecha_dia fecha_mes fecha_anio INTO fecha_actual SEPARATED BY '/'.
WRITE fecha_actual.
"OTRA FORMA
"CONCATENATE fecha 6(2) fecha 4(2) fecha 0(4) INTO fecha_actual SEPARATED BY '/'.
"WRITE fecha_mes.
END-OF-SELECTION.