✒️ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE
ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE
Las Sentencias:
INSERT: permite introducir nuevos registros en una base de datos. INSERT INTO ztabla VALUES wa_tabla. Siempre que se utilice esta sentencia se debe preguntar por el sy-subrc si es cero, si es asi, quiere decir que el registro se inserto correctamente, sino, es porque se produjo algun error. Si quisieramos introducir todos los registros de una Tabla Interna hariamos lo siguiente: INSERT ztabla FROM TABLE ti_usuarios.
UPDATE: permite actualizar el contenido de uno o varios registro de una tabla de base de datos. UPDATE ztabla FROM wa_tabla. Siempre que se utilice esta sentencia se debe preguntar por el sy-subrc si es cero, si es asi, quiere decir que el registro se inserto correctamente, sino, es porque se produjo algun error. Si quisieramos introducir datos que cumplan una determinada condicion se haria lo siguiente: UPDATE ztabla SET nombre = 'Juan Perez' WHERE dni = '3452185'. Si quisieramos introducir todos los registros de una Tabla Interna hariamos lo siguiente: UPDATE ztabla FROM TABLA ti_tabla.
MODIFY: utilizamos para modificar el contenido de uno o varios registros de una Tabla de Base de datos. MODIFY ztabla FROM wa_tabla. Siempre que se utilice esta sentencia se debe preguntar por el sy-subrc si es cero, si es asi, quiere decir que el registro se inserto correctamente, sino, es porque se produjo algun error. Si se desea modificar todos los registros de una tabla Z con el contenido de una Tabla Interna se haria lo siguiente: MODIFY ztabla FROM TABLE ti_tabla. Si el registro que se intenta modificar, no existe en la tabla, este se creara.
DELETE: permite borrar el contenido de uno o varios registros de una Tabla de Base de datos. DELETE ztabla FROM wa_tabla. Siempre que se utilice esta sentencia se debe preguntar por el sy-subrc si es cero, si es asi, quiere decir que el registro se inserto correctamente, sino, es porque se produjo algun error. La cantidad de registros borrados se guarda en SY-DBCNT. Si quisieramos eliminar datos que cumplan una determinada condicion se haria lo siguiente: DELETE FROM ztabla WHERE dni = '345214'. Si quisieramos borrar todos los registros de la Tabla Z a partir del contenido de una Tabla Interna se haria lo siguiente: DELETE ztabla FROM TABLE ti_tabla.
Estas sentencias se deben utilizar los menos posible, para no producir inconsistencia en la Base de datos, ya que es dificil conocer todas las estructuras de las Tablas de SAP.
Actualizacion y recuperacion de una Base de datos.
Para Finalizar una unidad de procesamiento logico de base de datos se utiliza un COMMIT WORK, esto se realiza para el update fisico de la BD, haciendo irrevocable cualquier modificacion.
Si deseamos deshacer todas las operaciones realizadas sobre la BD desde el ultimo commit work, se utiliza el ROLLBACK WORK. Por Ej:
INSERT INTO ztabla FRON TABLE ti_tabla
IF sy-subrc EQ 0.
COMMIT WORK.
ELSE.
ROLLBACK WORK.
ENDIF.
Es conveniente que despues de cada INSERT, MODIFY, DELETE, UPDATE, se utilice estas sentencias.
 
 
 
Sobre el autor
Publicación académica de Jessica Daiana Garcete Paez, en su ámbito de estudios para la Carrera Consultor ABAP.
Jessica Daiana Garcete Paez
Profesión: Residente Sap - Paraguay - Legajo: ER32H
✒️Autor de: 45 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: PartTime
Presentación:
Licenciada en análisis de sistemas de la universidad nacional del este, con experiencia en desarrollo de software, actualmente especializándome en programación abap.
Certificación Académica de Jessica Garcete