Cambiar valor campo en tabla por debug

sap-abap
Etiquetas: #<Tag:0x00007fb8e16b8c20>

#1

Hola,

A veces necesitamos cambiar un valor en un campo de una tabla que no tiene vista de actualización, para realizar alguna que otra prueba en desarrollo.

MUCHO CUIDADO CON ESTO, YA QUE HACERLO EN UNA TABLA STANDARD PUEDE TRAER PROBLEMAS. Consultoría-SAP.com ni el autor de este tutorial se hacen responsables por el mal uso del conocimiento.

Si tenemos permisos para debuguear y cambiar valores en el debug, podemos realizar los siguientes pasos (dejo un ejemplo de como cambiar un valor en la VBAK pero es válido para cualquier tabla).

1 - Vamos a la transacción SE16 (tambien se puede desde la SE11 o similares)

2 - Ingresamos la tabla y Enter

3 - Llenamos los criterios de selección y F8

4 - Una vez que vemos el/los registro/s nos aseguramos que la vista sea Lista stándard SE16. Para eso vamos a opciones --> param. Usuario:

5 - Hacemos doble click al registro a modificar, queda de la siguiente manera:

6 - En este punto, ponemos ‘/H’ arriba y damos enter. Luego, damos enter de nuevo.

7 - Se nos abre el debug, y en la lista de variables, ponemos ‘CODE’. Va a tener el valor ‘SHOW’.

8 - Lo cambiamos a ‘EDIT’.

9 - Apretamos F8 y ya podemos modificar, cambiamos el valor y guardamos:

10 - Verificamos que el valor se haya guardado:

Adicionalmente, también se puede borrar un registro, en lugar de cambiar el valor de SHOW a EDIT, se lo cambia a DELE. Y también, insertar, con INSR.

Bueno, de más está decir que tengan cuidado con esto, de no arruinarle el caso de prueba a algún compañero o no intentar hacer esto en producción, aparte de que está mal, veo casi imposible que tengan los permisos.

Espero que les sirva!
Saludos,
Sebastián


#2

No se si estás de acuerdo Sebastian, pero yo agregaría un “WARNING” de aviso al principio del tema, pues editar tablas estándares no está permitido por SAP. Ya que podrías estropear todo el sistema, y generar inconsistencias con todos los módulos del ERP por un valor que modifiques en una tabla que usa todo el sistema. :stuck_out_tongue:

En el Warning habría que aclarar que Consultoría-SAP.com ni el autor de este tutorial se hacen responsables por el mal uso del conocimiento :thumbsup:

Tú como ABAP seguro sabes qué tocar y qué no tocar… pero darle este tipo de conocimientos a usuarios inexpertos podría traer consecuencias devastadoras. :blush: (exagerando).


#3

Listo, ahi lo modifiqué un poco. Gracias!


#4

Creo que este articulo podria pertenecer a #vip:tips-tricks.


#5

El cambiar el valor te refieres al modificarlo en la base de datos, cierto? yo pensé que solo cambiabas en tiempo de ejecución.


#6

Si, queda cambiado en la tabla


#7

Gracias por compartir, revisare la seguridad para validar que eso no sea posible en producción.

Saludos.


#8

#9

Yo por lo menos estuve en muchos proyectos en mi empresa, y en ninguno tuve permisos para cambiar el valor del debug en producción, veo muy díficil que alguien tenga permisos para hacer eso en productivo.