on 09-11-2014 11:54 PM
Como puedo hacer para poner inactiva o des-habilitar la fecha de la orden de venta en sap, para que no pueda ser modificado ya que esto se genera automáticamente........
Javier
gracias por tu ayuda, Transaction Notification puedo bloquear el campo que quiero, por necesito que este no pueda ser modificado.....
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hola Alexander
Creo que no te he entendido bien entonces. Te refieres a que lo que necesitas es impedir que se modifique la fecha de una orden de venta ya creada, que esté aún abierta ¿no?.
Entonces la solución también pasaría por construir una query de validación en el Transaction Notification, pero controlando solamente la modificación del documento (@transaction_type = N'U').
Luego, en vez de comparar la fecha del documento modificado con la fecha del día actual, tendrás que controlar que no se genera ninguna entrada en la tabla ADOC (Histórico de los documentos de marketing) para órdenes de venta en la que el campo ADOC.DocDate sea distinto del campo su campo equivalente en la tabla de órdenes de venta ORDR.DocDate.
La consulta quedaría así:
IF @object_type = '17' AND @transaction_type = N'U'
BEGIN
IF((SELECT COUNT(1) FROM [ORDR] T0 INNER JOIN [ADOC] T1 ON T0.[DocNum] = T1.[DocNum]
WHERE (T0.[DocEntry] = @list_of_cols_val_tab_del) AND (T0.[DocDate] <> T1.[DocDate]))!=0)
BEGIN
SELECT @error = 1
SELECT @error_message = 'Mensaje sistema!: No puede modificar la fecha contable de un pedido de ventas'
END
END
Ya la he probado en mi sistema y bloquea correctamente cuando se va a modificar una fecha contable, pero permite las modificaciones de los otros campos. Debería servirte.
Un saludo
muchas gracias Javier...
todo funciona bien .....
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Javier
Si yo quisiera bloquear el campo fecha TaxDate y no el DocDate de la tabla ORDR seria la misma sintaxis o no y también veo que en la tabla Adoc no se muestran todas las ordenes de venta, ¿ que tipo de ordenes de ventas se almacenan en esta tabla? .....
gracias por tu apoyo......
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
De nada Alexander
Si quieres bloquear la fecha de documento en vez de la contable, la sintaxis de la consulta seria efectivamente igual que la que te he puesto, solo que cambiando los campos DocDate por TaxDate como tu bien has dicho.
En cuanto al contenido de la tabla ADOC. Esa tabla almacena todas las entradas antiguas de todo aquel documento de marketing que haya sido alguna vez modificado. Es por ello por lo que no ves en ella todas las Ordenes de ventas, sino solamente aquellas que han sido alguna vez modificadas. Pero esto tambien significa que una orden de venta que ha sido odificada m'as de una vez aparecer'a en la tabla tantas veces como modificaciones haya sufrido.
Un saludo
Hola Alexander
Las fechas en los documentos de marketing no son campos que se puedan ocultar o desactivar mediante las parametrizaciones de formulario.
Con lo cual para conseguir lo que te propones, que entiendo que consiste en evitar que se contabilicen ordenes de venta con una fecha distinta a la del día en el que nos encontremos, tendrías que crear una consulta de validación en el Transaction Notification utilizando la función GETDATE() para obtener la fecha del día y compararla contra la del documento que se esté intentando contabilizar. Con el fin de que en caso de que sea distinta se bloquee la contabilización.
Un saludo
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
98 | |
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.