cancel
Showing results for 
Search instead for 
Did you mean: 

bloquear en Facturas de ventas clase: servicio

Former Member
0 Kudos

Compañeros del foro,

Alguien sabe como bloquear a los usuarios de Ventas la opcion de poder crear facturas de Servicio ?

Aclaro que ellos pueden hacer facturas de clase : articulo.

JAMS

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member188440
Active Contributor
0 Kudos

Mete un transaction asi



IF @Object_type='13' and @transaction_type = 'A' 
BEGIN 
declare @user as int
set @user =(select usersign from oinv where docentry =@list_of_cols_val_tab_del)
IF (SELECT T0.DocType FROM [dbo].[OINV] T0
WHERE T0.DocEntry = @list_of_cols_val_tab_del )='S' and @user in (2,5,3) -- tus usuarios restringidos

set @error=1
set @error_message= 'No puede crear facturas de servicio'

END

Former Member
0 Kudos

Hola Mauricio, gracias por responder

Efectivamente el SP bloquea la creacion de las facturas de servicio a los usuarios incluidos.

La necesidad que se presenta ahora es que los usuarios SI puedan crear las facturas de servicio con un proceso de autorizacion.

Ya tengo definido el modelo de autorizacion, pero el SP no me deja crear al documento autorizado. que debo modificar ?

JAMS

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola Jairo

Pruebalo asi


SELECT DISTINCT 'TRUE' 
FROM OINV
WHERE (SELECT $[OINV.DocType]) = 'S' AND (SELECT $[USER]/*$[OINV.UserSign]*/) IN ('1','3')

Si no funciona el USER, cambialo por el UserSign de al lado.

Atte

FALR

Former Member
0 Kudos

Hola Floyola,

Probe con tu query como recomiendas, pero al compilar presentar un error que no le encuentro sentido:

Mens 102, Nivel 15, Estado 1, Procedimiento SBO_SP_TransactionNotification, Línea 3100

Sintaxis incorrecta cerca de 'end'

JAMS

felipe_loyolarodriguez
Active Contributor
0 Kudos

Supongo que tienes el TN de Mauricio activado, si es asi desactivalo...y prueba el Procedimiento de autorizacion nuevamente.

Former Member
0 Kudos

Hola,

El asunto es que NO deja crear la factura, lo que se busca es que se presente el procedimiento de Autorizacion y que al estar autorizado se pueda crear la factura de clase servicio.

En el modelo de autorizacion tengo definido:

SELECT 'TRUE' WHERE $[OINV.U_MOLM_VTA_AUTO] = 'SI'

el cual exige que al selecionar SI en un campo de usuario del documento factura se presente la ventana de solicitud de autorizacion.

JAMS

Edited by: JAIROMARTINEZ on Dec 2, 2011 6:13 PM

former_member188440
Active Contributor
0 Kudos

Y porque no usas el Transaction que te pase pero que el mensaje de error indique algo como "Guarde el documento como preeliminar"

De forma que despues se autorice por el usuario indicado

Former Member
0 Kudos

Hola Mauirico,

Efectivamente lo probè, se genera el Doc. Preliminar, es autorizado pero al tratar de crear el documento definitivo NO lo permite y se presenta nuevamente el mensaje establecido.

JAMS

former_member188440
Active Contributor
0 Kudos

A ver intenta con este


IF @Object_type='13' and @transaction_type = 'A' 
BEGIN 
declare @user as int
declare @draft as nvarchar (8)
set @draft = (select draftKey  from OINV where docentry =@list_of_cols_val_tab_del)
set @user =(select usersign from oinv where docentry =@list_of_cols_val_tab_del)
IF (SELECT T0.DocType FROM [dbo].[OINV] T0
WHERE T0.DocEntry = @list_of_cols_val_tab_del )='S' and @user in (2,5,3) -- tus usuarios restringidos
and isnull(@draft ,0)=0
 
set @error=1
set @error_message= 'No puede crear facturas de servicio'
 
END
 

Former Member
0 Kudos

Hola Mauricio,

Me ocurre lo mismo que con el query inicial, se crea el preliminar, es autorizado, al intentar crear el documento definitivo, vuelve nuevamente a presentar el mensaje inicial y NO permite crear el documento.

JAMS