🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

ABAP Las sentencias INSERT, UPDATE, MODIFY y DELETE

Sentencia INSERT

Si quisieramos introducir un nuevo registro en la tabla ZTABLA_USUARIOS haríamos lo siguiente:

* 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.

Siempre después de un INSERT se debe preguntar por el SY-SUBRC.

Si es cero, el registro se insertó correctamente, caso contrario, se produjo un error y el registro no se insertó.

Si quisieramos introducir todos los registros de una tabla interna haríamos lo siguiente:

* Inserto en la ZTABLA_USUARIOS el contenido de TI_USUARIOS

INSERT ztabla_usuarios FROM TABLE ti_usuarios.

Sentencia UPDATE

Si quisieramos actualizar un registro de una tabla base de datos hariamos lo siguiente:

* 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.

Siempre despues de un UPDATE se debe preguntar por el SY-SUBRC.

Si es cero, el registro se actualizó correctamente, si no lo es, se produjo un error y el registro no se actualizó.

Si quisieramos actualizar los registros de la tabla ZTABLA_USUARIOS que cumplan determinada condición hariamos lo siguiente:

* Actualizo el nombre y apellido del usuarios con Dni 23547312

UPDATE ztabla_usuarios SET nombre_ape = ' Ezequiel Fernandez '

WHERE dni = ' 23547312 '.

Si quisieramos actualizar todos los registros de la tabla ZTABLA_USUARIOS a partir del contenido de una tabla interna hariamos lo siguiente:

* Actualizo ZTABLA_USUARIOS con la tabla interna TI_USUARIOS

UPDATE ztabla_usuarios FROM TABLE ti_usuarios.

Sentencia MODIFY

Esta sentencia permite modificar el contenido de uno o varios registros de una tabla base de datos. Por ejemplo, si quisieramos modificar un registro de una tabla base de datos hariamos lo siguiente:

* 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.

Siempre despues de un MODIFY se debe preguntar por el SY-SUBRC-

Si es cero, el registro se modificó correctamente, caso contrario, se produjo un error y el registro no se modificó.

Si quisieramos modificar todos los registros de la tabla ZTABLA_USUARIOS a partir del contenido de una tabla interna hariamos lo siguiente:

* Modifico los registros de ZTABLA_USUARIOS con TI_USUARIOS

MODIFY ztabla_usuarios FROM TABLE ti_usuarios.

Si el registro que se intenta modificar no existe en la tabla, este se creará.

Al momento de impactar sobre una tabla base de datos no es necesario especificar el mandante ya que ese control es realizado en forma automatica por SAP, siempre se procesará el mandante en uso.

Si quisieramos controlar manualmente el mandante en una actualizacion de una tabla base de datos utilizaremos la cláusula CLIENT SPECIFIED, es decir, si queremos obtener o modificar datos de un mandante diferente al que estamos procesando.

Sentencia DELETE

Si queremos borrar un registro de una tabla base de datos hacemos lo siguiente:

* Borro un registro de la tabla ZTABLA_USUARIOS

CLEAR wa_usuarios.

wa_usuarios-mandt = sy-mandt.

wa_usuarios-dni = ' 21786478 '.

wa_usuarios-nombre_ape = ' Juan Graco '.

wa_usuarios-estado_usu = ' N '.

DELETE ztabla_usuarios FROM wa_usuarios.

Siempre despues de un DELETE se debe preguntar por el SY-SUBRC.

Si es cero, el registro se ha borrado correctamente, si no, se produjo un error y el registro no se ha borrado.

La cantidad de registros borrados se guarda en SY-SUBRC.

Si quisieramos borrar los registros de la tabla ZTABLA_USUARIOS que cumplan determinada condición hariamos lo siguiente:

* Borro de ZTABLA_USUARIOS el registro con dni = ' 23547312 '

DELETE FROM ztabla_usuarios WHERE dni = ' 23547312 '.

Si quisieramos borrar todos los registros de la tabla ZTABLA_USUARIOS a partir del contenido de una tabla interna hariamos lo siguiente:

* Borro ZTABLA_USUARIOS con la tabla interna TI_USUARIOS

DELETE ztabla_usuarios FROM TABLE ti_usuarios.

Es importante tener en cuenta que las instrucciones INSERT, DELETE, MODIFY, UPDATE, deben ser utilizadas lo menos posible, siempre se debe intentar insertar o modificar datos mediante las transacciones estándar de SAP o mediante las tecnicas de BATCH INPUT o BADIs. Esto se debe a que no siempre es facil conocer la compleja estructura de toda la base de datos de SAP y asi nos aseguramos de no producir alguna inconsistencia en la base de datos.

Actualización y recuperación de una base de datos

Al finalizar una unidad de procesamiento lógico LUW de base de datos se usa un COMMIT WORK, que se realiza mediante un update fisico en la base de datos, haciendo irrevocable cualquier modificacion en la base de datos.

Si deseamos deshacer todas las operaciones realizadas sobre la base de datos desde el ultimo COMMIT WORK realizaremos un ROLLBACK WORK.

Ejemplo al insertar registros en la base de datos ZTABLA_USUARIOS:

INSERT into ztabla_usuarios values wa_usuarios.

IF sy-subrc EQ 0.

COMMIT WORK.

ELSE.

ROLLBACK WORK.

ENDIF.

Es conveniente, después de un INSERT, MODIFY, UPDATE o DELETE realizar un COMMIT WORK y ROLLBACK WORK.


 

 

 


Sobre el autor

Publicación académica de Manuel Antonio Moncada Vera, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior

Manuel Antonio Moncada Vera

Profesión: Ingeniero en Informatica - Colombia - Legajo: JT58S

✒️Autor de: 68 Publicaciones Académicas

🎓Egresado del módulo:

Certificación Académica de Manuel Moncada

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las sentencias INSERT, UPDATE, MODIFY y DELETE" de la mano de nuestros alumnos.

SAP Master

Sentencia INSERT sentencia para insertar registros en una tabla interna o base de datos en SAP INSERT INTO VALUES siempre despues de un insert se debe preguntar por el sy-subrc si es cero el registro se inserto sino hay error . INSERT FROM TABLE SENTENCIA UPDATE para actualizar registros de una tabla base de datos SAP UPDATE FROM SIEMPRE DE UN UPDATE SE DEBE PREGUNTAR EL SY-SUBRC UPDATE FROM TABLE SENTENCIA MODIFY para modificar datos en tablas internas o tablas base de datos en SAP MODIFY FROM siempre despues de un MODIFY se debe preguntar por sy-subrc. MODIFY FROM TABLE SI EL REGISTRO NO EXISTE EN LA TABLA ESTE SE CREA AUTOMATICAMENTE SENTENCIA DELETE permite borrar el contenido de uno o varios registros de una tabla base de datos DELETE...

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

LA SENTENCIA INSERT: Introduce nuevos registros a una tabla. INSERT INTO ztabla_usuarios VALUES wa_usuarios. (pasa los valores de la estructura wa_usuarios a ztabla_usuarios, se entiende que solo es un registro a la vez). Para insertar toda la tabla (muchos registros) se usa: INSERT ztabla_usuarios FROM TABLE ti_usuarios. LA SENTENCIA UPDATE: Actualiza el contenido de los registros. UPDATE ztabla_usuarios FROM w_usuarios. UPDATE ztabla_usuarios SET nombre_ape = 'Pedro' WHERE dni = '3243'. para actualizar toda una tabla a partir de otra: UPDATE ztabla_usuarios FROM TABLE ti_usuarios. LA SENTENCIA MODIFY: Modifica el contenido de los registros de una base de datos. MODIFY ztabla:usuarios FROM wa. usuarios. para modificar el contenido a partir...

Acceder a esta publicación

Creado y Compartido por: Gerardo De La Rosa Rivera

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Sentencias INSERT, UPDATE, MODIFY, DELETE: INSERT: Permite introducir nuevos registros. UPDATE: Permite actualizar registros, si el registro que se quiere actualizar no existe, manda error. MODIFY: Permite modificar registros, si el registro que se quiere modificar no existe, este se creará. DELETE: Permite borrar registros. TIPS: Cuando actualizamos una base de datos, no es necesario especificar mandante, ya que SAP controla que siempre se procese el mandante en uso. Si queremos actualizar datos de otro mandante, utilizamos clausula CLIENT ESPECIFY. IMPORTANTE: Las instrucciones INSERT, DELETE, MOFIFY y UPDATE deben ser utilizadas lo menos posible, ya que siempre se deben modificar los datos mediante las transacciones...

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

1- La sentencia INSERT INSERT INTO ztabla_usuarios VALUES wa_usuarios. (Inserta 1 registro) INSERT ztabla_usuarios FROM TABLE ti_usuarios. (Inserta toda una Tabla Interna) NOTAS: El registro que se insertará debe tener como primer campo el MANDT (= sy-mandt). Se debe consultar por sy-subrc para saber si la inserción fue exitosa. Una clave igual daría error. 2- La sentencia UPDATE UPDATE ztabla_usuarios FROM wa_usuarios. (actualiza un registro) UPDATE ztabla_usuarios SET nombre_ape = 'Ezequiel Fernandez' WHERE dni = '23547312'. (actualiza los registros que cumplen la condición). UPDATE ztabla_usuarios FROM TABLE...

Acceder a esta publicación

Creado y Compartido por: Victor Norberto Levi

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

sentencia INSERT, UPDATE, MODIFY, DELETE, ACTUALIZACION Y RECUPERACION DE UNA BASE DE DATOS CON LAS SENTENCIAS COMMIT WORK Y ROLLBACK WORK

Acceder a esta publicación

Creado y Compartido por: Rainer Diaz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

INSERT UPDATE MODIFY DELETE

Acceder a esta publicación

Creado y Compartido por: Christian Camilo Alzate Duque

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


INSERT UPDATE MODIFY DELETE ACTUALIZACION Y RECUPERACION DE LA BD INSERT: introducir nuevos registros a la base de datos. clear wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni = '212727679'. wa_usuarios = 'Juan Graco. wa_usuarios-estado_usu = 'A'. INSERT INTO ztabla_usuarios VALUES wa_usuarios. despues preguntar por SY-SUBRC si es igual a cero esta bien se inserto correctamente. para introducir todos los registros de una tabla interna INSERT ztabla_usuarios FROM TABLE ti_usuarios. ----------------------------------------------------------------------------------------- UPDATE: actualiza el contenido de uno o varoiso registros de una tabla base de datos clear wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni =...

Acceder a esta publicación

Creado y Compartido por: Oscar Guillermo Rodriguez Villate / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1. INSERT CLEAR wa_usuarios. wa_usuarios-mandt = sy-mandt. wa_usuarios-dni = '21122'. wa_usuarios-nombre_ape = 'Juan Graco'. wa_usuarios-estado_usu = 'A'. INSERT INTO ztabla_usuarios values wa_usuarios. Todos los registro de una tabla interna. INSERT ztabla_usuarios FROM TABLE ti_usuarios. 2. UPDATE UPDATE INTO ztabla_usuarios values wa_usuarios. Con condicion. UPDATE ztabla_usuarios SET nombre_ape = 'Nuevo nombre' WHERE dni = '123'. Actualizar todos los registros a partir de una tabla interna. UPDATE ztabla_usuarios FROM TABLE ti_usuarios. 3. MODIFY MODIFY ztabla_usuarios FROM wa_usuarios. Todos los registros MODIFY ztabla_usuarios FROM TABLE ti_usuarios. 4. DELETE DELETE ztabla_usuarios FROM wa_usuarios....

Acceder a esta publicación

Creado y Compartido por: Calixto Saldarriaga

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

INSERT: permite introducir nuevos registros a una base de datos. Después de un iNSERT se debe preguntar por el SY-SUBRC. UPDATE: permite actualizar el contenido de uno o varios registros de una tabla base de datos. MODIFY: permite modificar el contenido de uno ovarios registros de una tabla base de datos. Si el registro que se intentó modificar no existe en la tabla, este se creará. DELETE: permite borrar el contenido de uno o varios registros de una tabla base de datos. SY-DBCNT: guarda la cantidad de registros...

Acceder a esta publicación

Creado y Compartido por: Roxana Solis Ramirez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Lección: INSERT, UPDATE, MODIFY, DELETE y actualización y recuperación de la BD 1. La sentencia INSERT La sentencia INSERT permite introducir nuevos registros a una base de datos. Ej. INSERT into ztabla_usuarios values wa_usuarios. Siempre después de un INSERT se debe preguntar por el SY-SUBRC, si es cero. el registro se insertó correctamente, caso contrario, se produjo un error y el registro no se insertó. Si quisiéramos introducir los registros de una tabla interna haríamos lo siguiente: INSERT ztabla_usuarios FROM TABLE ti_usuarios. Si existe algún registro con igual clave se producirá un error. 2. La sentencia UPDATE Permite actualizar el contenido de una tabla . UPDATE...

Acceder a esta publicación

Creado y Compartido por: Pedro Alejandro Arroyo Gutierrez

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!