Sentencias ABAP – Teoría – parte 2

Introducción

Al iniciar el programa, se carga el contexto del programa en una memoria del servidor de aplicación, y se pone la memoria a disposición de los objetos de datos definidos en el programa. Cada objeto de datos elemental se pre asigna al valor inicial específico del tipo, excepto si se ha fijado un valor distinto mediante el suplemento VALUE.

Puede utilizar el suplemento MOVE para transferir el contenido de un objeto de datos a otro objeto de datos. Las dos variantes de sintaxis siguientes tienen el mismo efecto:

  • MOVE gv_var1 TO gv_var2.
  • gv_var2 = gv_var1.

Si ambos objetos de datos, gv_var1 y gv_var2, son de tipos distintos, existe un conflicto de tipo. En este caso, si existe una regla de conversión, se realiza automáticamente una conversión de tipo de datos. Para obtener información detallada acerca de las copias y las reglas de conversión, consulte la documentación de palabras clave de la sentencia MOVE.

La sentencia CLEAR reinicializa el contenido de un objeto de datos al valor inicial ligado al tipo. Para obtener información detallada acerca de los valores iniciales de un tipo en particular, consulte la documentación de palabras clave de la sentencia CLEAR.

Cálculos y expresiones aritméticas

Veamos el siguiente ejemplo:

La palabra clave COMPUTE es opcional. En ABAP, puede programar expresiones aritméticas hasta cualquier nivel de anidamiento.

Las operaciones válidas incluyen:

Suma

Para sumar en ABAP podemos utilizar el carácter + o la palabra clave ADD. Con las dos posibilidades se obtiene el mismo resultado de la operación. Podemos sumar variables de tipo numéricos enteros o con decimales.

  • Suma un valor al contenido de un campo.
    • ADD <valor> TO <campo>.
  • También se puede utilizar el operador ‘+’.
    • <campo> = <campo> + <valor>.

Resta

Para restar en ABAP podemos utilizar el carácter o la palabra clave SUBTRACT. Con las dos posibilidades se obtiene el mismo resultado de la operación. Podemos utilizar variables de tipo numéricos enteros o con decimales.

  • Resta un valor al contenido de un campo:
    • SUBTRACT <valor> FROM <campo>.
  • También se puede utilizar el operador ‘-‘:
    • <campo> = <campo> – <valor>.

Multiplicación

Para multiplicar en ABAP podemos utilizar el carácter * o la palabra clave MULTIPLY. Con las dos posibilidades se obtiene el mismo resultado de la operación. Podemos utilizar variables de tipo numéricos enteros o con decimales.

  • Multiplica por un valor el contenido de un campo:
    • MULTIPLY <campo> BY <valor>.
  • También se puede utilizar el operador ‘*’:
    • <campo> = <campo> * <valor>.

División

Para dividir en ABAP podemos utilizar el carácter / o la palabra clave DIVIDE. Con las dos posibilidades se obtiene el mismo resultado de la operación. Podemos utilizar variables de tipo numéricos enteros o con decimales. La operación devuelve el cociente con decimales.

  • Divide por un valor el contenido de un campo:
    • DIVIDE <campo> BY <valor>.
  • También se puede utilizar el operador ‘/’:
    • <campo> = <valor1> / <valor2>.

División sin resto

La palabra clave DIV devuelve el cociente de una división entera.

  • <campo> = <valor1> DIV <valor2>.

Resto de la división

La palabra clave MOD devuelve el resto de una división entera.

  • <campo> = <valor1> MOD <valor2>.

Exponenciación

El operador ** aplicado sobre una base y un exponente devuelve el resultado de exponenciación. Ejemplos:

  • El cuadrado: <campo> = <valor1> ** 2.
  • El cubo: <campo> = <valor1> ** 3.

Sentencia SQRT

Devuelve la raíz cuadrada de un valor.

  • <campo> = SQRT( <valor> ).

Los paréntesis y los operadores son palabras claves ABAP y, por este motivo, se deben separar de otras palabras por un espacio.

Datos en ABAP – parte 1

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios .