on 11-09-2012 6:01 AM
Estimados Amigos:
Espero me puedan ayudar tengo el siguiente caso, para anular una factura de ventas hacemos un nota de credito con un campo de usuario que tienes estos dos valores:
AD - Anulacion
07 - Nota de credito
Entonces cuando queremos anular una factura de manera interna seleccionamos AD.
Nuestro proceso de ventas es el siguiente:
Orden de Venta --> Entrega --> Factura de Venta
Lo que quiero es crear una Validacion la cual me actulize un campo de usuario en la Entrega osea que cuando genera la nota de credito de tipo AD en la Entrega se actualice un campo de usuario el cual tendra los siguientes valores: A = Anulado / V = Vigente.
En conclusion lo que quisiera como dije al generar una nota de credito de tipo AD el campo de usuario de la Entrega se actualize a "A" de Anulada.
Cabe resaltar que paso de la factura a la no la nota de credito.
Espero me puedan ayudar.
Saludos,
No puedes hacer un UPDATE (SQL) al campo de usuario, solo por SDK puedes hacerlo.
Atte.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Me da que pensar tu respuesa estiamdo Felipe pero hay varios temas con esta consulta
aqui hay uno donde le dan solucion
http://scn.sap.com/thread/2074355
Es mas hace poco me ayudaron con uno bien simple,
Jesus, con el mismo hilo que referenciaste respondes a tu consulta.
Respecto a lo que dice Felipe, yo tengo entendido que la manipulación de datos via SQL sólo afecta a objetos y elementos estándar y no a ampliaciones. Por lo que no deberias tener problemas de licenciamiento en hacer el UPDATE a ese campo que indicas es de usuario.
Por otro lado, existe un tema sobre el TN y es que cuando los codigos customizados, depositados en este degradan el rendimiento del sistema deben ser autorizados por SAP.
slds.
Existe un pequeño vacío al respecto sobre el update a campos de usuarios que pertenecen a tablas del sistema.
Esto se debe a:
1.- La nota 896891 dice que SAP no dará soporte ante cualquier inconsistencia en la base de datos que sea causada por algún insert, delete o update realizados desde SQL-Server o Query manager de SAP.
2.- Julio habla de esto aplica a elementos y objetos nativos de SAP, no a ampliaciones. Lo cual es correcto, sin embargo cuando realizas el update al campo de usuario, la sintax es esta:
UPDATE ODLN Set U_UDF1 = 'SP_TN'
En donde el update lo realizas a la tabla del sistema, la cual pertenece al estandar y tiene un objeto en SAP.
Por lo que al final queda a criterio del cliente y del partner la utilizacion de updates a campos de usuarios dentro de las tablas del sistema.
Saludos
Eso no es tan exacto Felipe, ya queel comando UPDATE es parte de los DML (Data manipulation Languaje), y las tablas y modificación de tablas esta dentro de las DDL (Data Definition Languaje). En este caso especifico la tabla esta actuando sólo como contenedor o enrutador y no como Objeto. Eso seria como decir que cambiar el contenido de un archivo dentro de una carpeta es manipular la carpeta.
Además la filosofia del SDK, es que te permite hacer todo lo que la aplicación cliente te permite hacer y en este caso la aplicación te permite modificar los campos de usuario sin problema, incluso con el documento cerrado.
Ahora si existe un problema al hacer este tipo de cambios y que como bien dices, debe evaluar el cliente y es que los cambios via SQL injector no se reflejan en el log de modificaciones de la tabla, por lo que generaría inconsistencias en el histórico.
Al menos en algo estamos de acuerdo y es que, cuando se deseen modificar datos sean del lugar, origen u objeto que sea. la mejor y primera alternativa es por la misma aplicación de SAP, la segunda por SDK o DTW y como última instancia SQL injector
slds.
Alguien me puede dar el dato de como poder hacer esto por favor?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.