✒️ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE
ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE
SENTENCIA INSERT
INSERT INTO <tabla> VALUES <var_area>. "inserta un registro en una tabla
INSERT <tabla> FROM TABLE <ti_ntabla>. "inserta toda una tabla interna en otra
* si existe un registro en la BD con igual clave que un registro en la tabla interna se produce un error y SY-SUBRC es distinto de 0.
SENTENCIA UPDATE
Permite actualizar uno o varios registros de una tabla base de datos
- Para actualizar un registro
UPDATE <z_tabla> FROM <wa_tabla>
Ej:
CLEAR wa_usuarios
wa_usuarios-mandt = sy-mandt.
wa_usuarios-codigo = '123'
wa_usuarios-nombreape = 'Juan Perez'
UPDATE ztabla_usuarios FROM wa_usuarios.
- Para actualizar los registros de una tabla que cumplan una condición
UPDATE ztabla SET nombre_ape = 'Carlos Tapia' WHERE codigo = '123'.
- Para actualizar TODOS los registros de la tabla a partir de una tabla interna
UPDATE ztabla FROM TABLE ti_usuarios.
3. MODIFIY , permite modificar los registros de una tabla de base de datos
MODIFY <zTabla_usuario> FROM <wa_usuario> " Modifica el registro de una tabla de BD con los datos en una variable tipo estructura
MODIFY <zTabla_usuario> FROM <ti_usuario> "modifica los registros de una tabla de BD con una tabla interna
Si el registro que se intenta modificar no existe en la tabla, entonces se crea un nuevo registro.
Al momento de impactar en una tabla BD no es necesario especificar el Mandante, ya que esto lo controla SAP y siempre se procesa el mandante en uso. Si queremos controlar manualmente el mandante en una actualización utilizamos la cláusula CLIENT SPECIFIED
4. DELETE , permite borrar elcontenido de uno o varios registros de una tabla base de datos.
DELETE <ztabla_usuario> FROM <wa_usuario> " borra un registro el especificado en la variable tipo estructura
SY-DBCNT guarda la cantidad de registros borrados.
Para borrar los registros de una tabla que cumplan determinada condición usamos el WHERE
DELETE FROM <ztabla_usuario> WHERE codigo = '100345'.
Si queremos borrar los registros de una tabla BD a partir de una tabla interna :
DELETE <ztabla_usuario> FROM TABLE <ti_usuario>.
Las instrucciones INSERT, DELETE, MODIFY, UPDATE deben ser utilizadas lo menos posible, siempre intentar usar las transacciones estándar de SAP o mediante las batch input, o BAPIS , esto por la compleja estructura de la BD de SAP y para no producir inconsistencias en la base de datos.
5.ACTUALIZACION Y RECUPERACON DE UNA BD
LUW Logical Unit of Work , un conjunto de pasos dentro de una transacción, los cuales deben acabarse correctamente antes de continuar la lógica de la transacción.
Para finalizar una LUW se utiliza el comando COMMIT WORK que realiza el update físico de la base de datos y hace irrevocable cualquier modificación.
Si se desea deshacer las operaciones sobre la BD desde el último COMMIT WORK realizaremos un ROLLBACK WORK.
Luego de un INSERT, MODIFIY, UPDATE, DELETE realizar un COMMIT WORK Y ROLLBACK WORK
Para hacer cambios en una tabla base de datos se puede hacer desde
SE11: UTILIDADES / UTILIDADES DE BASES DE DATOS / AJUSTAR.
 
 
 
Sobre el autor
Publicación académica de Widen Boris Horacio Nogales, en su ámbito de estudios para la Carrera Consultor ABAP.
Widen Boris Horacio Nogales
Profesión: Ingeniero de Sistemas - Bolivia - Legajo: PQ81E
✒️Autor de: 26 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Ingeniero de sistemas con experiencia en implementación de sistemas erp, administración y soporte erps como sap bussines one, implementación soluciones bi , conocimientos de contabilidad .
Certificación Académica de Widen Horacio