PDA

Ver la Versión Completa : delete a tabla z


romario2
16/12/08, 08:15:24
Hola ,

he intentado hacer DELETE una tabla Z normal con todas las combinaciones
posibles y no lo he conseguido. Es de clase A con mantenimiento permitido.
Es una Z que alimenta un table control de una dynpro.

¿Alguien me puede ayudar?

francesc
16/12/08, 09:04:38
Tiene la tabla algún campo con un elemento de datos con un dominio que contenga alguna rutina de conversión, p. ejemple la ALPHA?. Dicho en otras palabras que al campo en cuestión, si es que existiera, hay que añadirle ceros a la izquierda al acceder a la tabla

bisonye
16/12/08, 09:43:10
Hola ,

he intentado hacer DELETE una tabla Z normal con todas las combinaciones
posibles y no lo he conseguido. Es de clase A con mantenimiento permitido.
Es una Z que alimenta un table control de una dynpro.

¿Alguien me puede ayudar?

¿Y que error tienes? ¿Cómo haces el delete? En teoría es Delete from tabla where condición.

Danos más detalles

romario2
16/12/08, 10:17:59
Hola,

como dije anteriormente he probado muchas combinaciones.

DELETE Z

DELETE Z FROM itab.

También probé con select....endselect.

No me da ningún mensaje de error, simplemente no borra ningún registro de la tabla z.
Pasó con 1 select...endselect que borró algunos registros pero no todos.

Muchas gracias por tu interés.

romario2
16/12/08, 10:25:43
Tiene la tabla algún campo con un elemento de datos con un dominio que contenga alguna rutina de conversión, p. ejemple la ALPHA?. Dicho en otras palabras que al campo en cuestión, si es que existiera, hay que añadirle ceros a la izquierda al acceder a la tabla



Hola,

no se si te comprendo bien. El hecho de que hay una rutina de conversión puede hacer que no pueda borrar la tabla Z?

Saludos, voy a mirar lo que dices

bisonye
16/12/08, 10:34:34
Tiene la tabla algún campo con un elemento de datos con un dominio que contenga alguna rutina de conversión, p. ejemple la ALPHA?. Dicho en otras palabras que al campo en cuestión, si es que existiera, hay que añadirle ceros a la izquierda al acceder a la tabla



Hola,

no se si te comprendo bien. El hecho de que hay una rutina de conversión puede hacer que no pueda borrar la tabla Z?

Saludos, voy a mirar lo que dices

Si que puede si tienes una condición en el borrado (que es lo más normal) Si el campo es, por ejemplo de cinco dígitos y le pasas 5 deberías pasarle 00005 para que la condición sea correcta.

Si lo has probado con select endselect no creo que sea tu error pero revisalo.

La sintaxis según la ayuda de sap es esta:
DELETE FROM sflight
WHERE carrid = p_carrid AND
fldate = sy-datum AND
seatsocc = 0.
o esta:
DELETE sflight FROM TABLE sflight_key_tab.

Saludos

chivi82
16/12/08, 10:38:27
Después de realizar un operación sobre una tabla del diccionario (INSERT, UPDATE, DELETE, etc...) es necesario realizar sentencia COMMIT_WORK para que los cambios tenga efecto.

bisonye
16/12/08, 10:44:02
Después de realizar un operación sobre una tabla del diccionario (INSERT, UPDATE, DELETE, etc...) es necesario realizar sentencia COMMIT_WORK para que los cambios tenga efecto.

Esto no siempre es necesario.
En teoría la finalización de un report lleva implicito un commit a la BD pero como norma para evitar posibles errores es muy buena.

Saludos

felipe.carrales
26/08/10, 20:40:15
Si lo que quieres es borrar la tabla interna pueba asi.

Delete from zitab.

saludos.

cosagaucha
01/08/11, 13:14:14
hola a todos, una pregunta con relacion a este tema, si yo deseo borrar una tabla TRANSPARENTE, con un cierto filtro -que puede NO ser un campo clave- tengo que hacerle un "sort" a la bd o no es necesario?

El codigo que ejecutaria seria algo asi:

loop at gt_tabla assigning <fs_tabla>.

write: /'nombre: ', <fs_tabla>-nombretabla.

delete from (<fs_tabla>-nombretabla) where campo = 'fecha'.

endloop.

gracias por la ayuda!

kibo
01/08/11, 13:36:03
No creo que tenga nada que ver el Sort con el Delete Where... en realidad no se como se te llego a ocurrir eso... sea clave o no, la sentencia filtrara por la condicion del Where y los borra... si esta ordenado o no, o si es clave o no... creo que lo hace "torta" igual

DCErick
01/08/11, 13:45:32
No creo que tenga nada que ver el Sort con el Delete Where... en realidad no se como se te llego a ocurrir eso... sea clave o no, la sentencia filtrara por la condicion del Where y los borra... si esta ordenado o no, o si es clave o no... creo que lo hace "torta" igual

Concuerdo contigo.