on 07-02-2014 5:07 PM
Buen dia compañeros por este medio solicito de sus buenos oficios para que me puedan asesorar con un transaction que desean implementar, el cual conciste que al momento de efectuar cualquier operacion que utilice cualquier cuenta de gasto, obligue al usuario a ingresar el centro de costo que aqui esta por Departamento, el problema que tengo es que logro bloquear ingresan el departamento y sigue pidiendo el ingreso y ya todas la linea o las lineas ya lo tienen ingresado. Si me pudieran ayudar de antemano muchas gracias.
saludos cordiales
IF @object_type in ('30') and @transaction_type in ('A')
begin
If (Select Count(1)
From OJDT T0 INNER JOIN JDT1 T1 ON T0.TransId = T1.TransId
inner join OACT T2 on T1.Account=T2.AcctCode
Where T0.TransId = @DocEntry And T2.groupmask in ('5','6','7','8')
And ( T1.ProfitCode IS NULL and T1.ProfitCode = space(8)) ) > 0 Begin
Set @error = 1
Set @error_message = 'Debe Ingresar Departamento OBLIGATORIAMENTE para realizar el Asiento'
End
end
Armando este es para el asiento contable
----------------------------------------------------------------------------------------------
----------Valida Norma de Reparto en Asientos Contables---------------------------------------
----------------------------------------------------------------------------------------------
IF @object_type in ('30') and @transaction_type in ('A')
begin
If (Select Count(isnull(T1.ProfitCode,1))
From OJDT T0 INNER JOIN JDT1 T1 ON T0.TransId = T1.TransId
inner join OACT T2 on T1.Account=T2.AcctCode
Where T0.TransId = @list_of_cols_val_tab_del And T2.groupmask in ('5','6','7','8')
And ( T1.ProfitCode = ' ' OR T1.ProfitCode IS NULL) ) > 0 Begin
Set @error = 1
Set @error_message = 'Debe Ingresar Departamento OBLIGATORIAMENTE para realizar el Asiento'
End
end
y si lo necesitas en el documento marketing este es para un documento marketing que es factura de proveedores
----------------------------------------------------------
-------CENTROS DE COSTOS FACTURAS DE COMPRA -------------
-----------------------------------------------------------
IF @object_type In ('18') and @transaction_type in (N'A')
Begin
IF (SELECT Count(isnull(OcrCode,1)) FROM PCH1 WHERE (OcrCode=' ' or OcrCode is NULL) and DocEntry = @list_of_cols_val_tab_del) > 0 Begin
Select @error = 1
Select @error_message = 'RV.Falta ingresar el Centro de Costo'
END
End
quedo atento
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Gracias por tu valiosa ayuda , voy a probarlos para cerrar el caso, una ultima pregunta como le haria para que esta restriccion no me afecte los pagos efectuados? porque el departamento ya se ingreso en documentos preliminares y luego lo vuelve a pedir en los pagos efectuados.
saludos cordiales
El primero que ten envié esta sobre el asiento contable directo sin ningún documento de origen y el segundo es un ejemplo para ejecutarlo sobre la factura de proveedores, este es para que lo modifique y los adaptes al documento en el cual quieres ejercer el bloqueo por ejemplo una entrega entonces el object_type seria 15 y la tabla DLN1
Cordial saludo Armando, Tengo una consulta la cuentas de gasto no las mueven por documento Marketing ?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
100 | |
11 | |
11 | |
6 | |
6 | |
5 | |
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.