✒️ABAP / Las sentencias INSERT, UPDATE, MODIFY y DELETE Por Gustavo Bolivar
ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

LECCIÓN 7 SENTENCIAS: INSERT – UPDATE – MODIFY – DELETE y ACTUALIZACIÓN Y RECUPERACIÓN DE LA BD.
7. 1 INSERT: permite el ingreso de registros a la BD.
Caso 1. Inserto un registro.
* Inserto 1 registro en ZTABLA_USUARIOS
CLEAR wa_usuarios.
wa_usuarios-mandt = sy-mandt.
wa_usuarios-dni = '21727679'.
wa_usuarios-nombre_ape = 'Juan Graco'.
wa_usuarios-estado_usu = 'A'.
INSERT into ztabla_usuarios values wa_usuarios.
Caso 2. Inserto todos los registros de una tabla.
* Inserto en la ZTABLA_USUARIOS le contenido de TI_USUARIOS
INSERT ztabla_usuarios FROM TABLE ti_usuarios.
Si existe 1 registro con igual clave en la tabla interna al de la tabla BD (destino) se produce un error y SY-SUBRC será <> 0.
7.2 UPDATE: Permite actualizar el contenido de uno o varios registros de una tabla BD.
Caso 1. Actualizo un registro.
* Actualizo un registro de la tabla ZTABLA_USUARIOS
CLEAR wa_usuarios.
wa_usuarios-mandt = sy-mandt.
wa_usuarios-dni = '21727679'.
wa_usuarios-nombre_ape = 'Juan Graco'.
wa_usuarios-estado_usu = 'I'.
UPDATE ztabla_usuarios FROM wa_usuarios.
Caso 2. Actualizo un registro que cumpla cierta condición (UPDATE …. SET)
* Actualizo el nombre y apellido del usuario con Dni 23547312
UPDATE ztabla_usuarios SET nombre_ape = 'Ezequiel Fernandez'
WHERE dni = '23547312'.
Se debe utilizar el campo clave para la condición caso contrario la actualización podrá demorarse considerablemente.
Caso 3. Actualizo la Tabla BD con todos los registros de una Tabla Interna.
* Actualizo ZTABLA_USUARIOS con la tabla interna TI_USUARIOS
UPDATE ztabla_usuarios FROM TABLE ti_usuarios.
7.3 MODIFY: permite modificar el contenido de uno o varios registros de la BD.
Caso 1. Modifico un registro.
* Modifico un registro en ZTABLA_USUARIOS
CLEAR wa_usuarios.
wa_usuarios-mandt = sy-mandt.
wa_usuarios-dni = '21727679'.
wa_usuarios-nombre_ape = 'Juan Graco'.
wa_usuarios-estado_usu = 'N'.
MODIFY ztabla_usuarios FROM wa_usuarios.
Caso 3. Modifico todos los registros de una Tabla BD a partir de una Tabla Interna
* Modifico los registros de ZTABLA_USUARIOS con TI_USUARIOS
MODIFY ztabla_usuarios FROM TABLE ti_usuarios.
Si el registro no existe se crea.
7.4 DELETE: permite ELIMINARr el contenido de uno o varios registros de la BD.
Caso 1. Elimino un registro.
* Borro un registro de la tabla ZTABLA_USUARIOS
CLEAR wa_usuarios.
wa_usuarios-mandt = sy-mandt.
wa_usuarios-dni = '21727679'.
wa_usuarios-nombre_ape = 'Juan Graco'.
wa_usuarios-estado_usu = 'N'.
DELETE ztabla_usuarios FROM wa_usuarios.
La cantidad de registros borrados se guarda en SY-DBCNT
Caso 2. Elimino un registro que cumpla cierta condición.
* Borro de ZTABLA_USUARIOS el registro con dni = '23547312'
DELETE FROM ztabla_usuarios WHERE dni = '23547312'.
Caso 3. Elimino todos los registros de una Tabla BD a partir de una Tabla Interna
* Borro ZTABLA_USUARIOS con la tabla interna TI_USUARIOS
DELETE ztabla_usuarios FROM TABLE ti_usuarios.
7.4 ACTUALIZACIÓN – RECUPERACIÓN DE LA BD.
· La sentencia ABAP COMMIT WORK se utiliza para confirmar los cambios realizados sobre una base de datos.
· Si se le agrega la cláusula AND WAIT el programa se para hasta que la tarea de actualización termina.
· Después de cada INSERT, MODIFY, UPDATE, DELETE debe realizarse un COMMIT WORK.
· Se debe tener en cuenta que si no se utiliza la sentencia COMMIT en el programa, el programa de todas formas va a realizar los cambios permanentes en la base de datos, la sentencia COMMIT se utiliza mas que todo para asegurar que se guarden los datos.
Código Ejemplo:
* Inserto en la ZTABLA_USUARIOS le contenido de TI_USUARIOS
INSERT into ztabla_usuarios values wa_usuarios.
IF sy-subrc EQ 0.
COMMIT WORK.
ELSE.
ROLLBACK WORK.
ENDIF.
 
 
 
Sobre el autor
Publicación académica de Gustavo Bolivar, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.
Gustavo Bolivar
Profesión: Ing Sistemas - Chile - Legajo: EU47Z
✒️Autor de: 45 Publicaciones Académicas
🎓Egresado del módulo:
Presentación:
Enfocado en programación sap abap.
Certificación Académica de Gustavo Bolivar






Disponibilidad Laboral: FullTime


















