on 01-04-2012 11:52 PM
Estimados,
Tengo la siguiente situacion:
Se creo (2) SP transaction en documento entrada de mcias. (inventario/operaciones de stock) para validar que se complete el campo de numero de referencia (OING, Ref2) y que se coloquen 2 caracteres especificos como parte de la referencia, tambien se tiene creado un procedimiento de Autorizacion donde el modelo està basado en un query que valida el numero de serie del documento Entrada de Macia.
El asunto està que los SP SOLO se disparan cuando el documento se ha autorizado, es decir se presenta la solicitud de autorizacion sin validar si el campo referencia quedo bien elaborado, el usuario autorizador puede autorizar y cuando el documento preliminar se va a crear como definitivo se presentan los SP, demasiado tarde por que autorizado NO se puden ahcer cambios.
No he podido detectar donde esta el error, o como se debe manejar esta situacion para que los SP se presenten al momento de crear el Preliminar antes de la solicitude Autorizacion...
Cualquier comentario que me oriente sera altamente agradecido.
JAMS
El codigo que tienes actualmente funcionando pruebalo pero en
if @object_type in ('112') and @transaction_type in ('A')
BEGIN
.
.
.
.
.
END
El no 112 es de los DRAFTS
Cambia las tablas que tienes actualmente por la ODRF (para drafts) Y muy importante agrega un
AND ODRF.ObjType ='el numero que corresponde al object type de tu documento preeliminar (por ejemplo 67 para traspasos)'
De esta forma es como si le dijeras al transaction que valide cuando se este creando un DRAFT de un Traspaso
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hola Mauricio,
Validando tu post y dando seguimiento a los pasos que indicas te comento que tengo un caso similar tengo un procedimiento de autorización de ofertas de compras por el total del documento y dos transaction notification que validan los artículos y el centro de costos permitido por usuario.
Este es mi código, si observas sigue la linea que comentas sin embargo no se ejecutan los transaction al crear el archivo Draft.
IF @object_type = '540000006' AND @transaction_type IN ('A','U')
Begin
Declare @userIT int
Declare @typeIT varchar(255)
set @userIT = (select T0.UserSign from ODRF T0 WHERE T0.DocEntry = @list_of_cols_val_tab_del)
DECLARE cItems CURSOR FOR
SELECT T1.OcrCode FROM ODRF T0 INNER JOIN DRF1 T1 ON T0.[DocEntry] = T1.[DocEntry] WHERE T0.DocEntry = @list_of_cols_val_tab_del
OPEN cItems
FETCH cItems INTO @typeIT
WHILE (@@FETCH_STATUS=0)
BEGIN
IF ((@userIT=170) and @typeIT not in ('x', 'x1', 'x2'))
BEGIN
SET @error = -3000
SET @error_message = 'Centro de costos ' + CAST(@typeIT as nvarchar) + ' no autorizado - Utilice un centro de costos permitido'
BREAK;
END
FETCH cItems INTO @typeIT
END
CLOSE cItems
DEALLOCATE cItems
END
Ojala puedas orientarme al respecto, gracias.
Quedo pendiente.
Saludos.
User | Count |
---|---|
110 | |
12 | |
11 | |
6 | |
5 | |
4 | |
4 | |
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.