cancel
Showing results for 
Search instead for 
Did you mean: 

restricciones de clientes

Former Member
0 Kudos

hola a todos !!! existe la forma de que se restrinja que los usuarios solo puedan ver el saldo de cuenta y facturarle solo a los clientes que tienen a su nombre??? y como se tienen varias bodegas, restringirla a que factura solo de la bodega asignada????

Accepted Solutions (0)

Answers (7)

Answers (7)

Former Member
0 Kudos

el problema con esto es que solamente podra facturarse a nombre de el pero podra ver los datos de los demas clientes y podra recorrer todas las facturas con las flechas de registro anterior y posterior, me dijeron que trabajara las autorizaciones de propiedad de datos y armara grupos, pero la verdad nunca he trabajado esto y estoy algo confundida

Former Member
0 Kudos

Mauricio intente con tu TN pero hice una pequeña modificacion...te explico

la idea es darle a los clientes especiales la forma de que ellos mismos se facturen, claro teniendo cuenta las seguridades pertinentes.

para esto cree un usuario invitado y asigne en un campo llamado responsable en el dato maestro del Socio de Negocio uno nuevo que se llama invitado

IF @transaction_type in ('A') AND @object_type IN ('13')
begin
declare @uservalido nvarchar (8)
set @uservalido=(select b.user_code from oinv a join ousr b on a.usersign=b.userid 
	where a.docentry=@list_of_cols_val_tab_del)--Obtenemos el usuario que esta creando la factura en SBO
if (select b.AgentCode from oinv a join OCRD b on a.CardCode=b.CardCode
	where a.docentry=@list_of_cols_val_tab_del)!=(select U_NAME from ousr where user_code=@uservalido)
begin
set @error=1
set @error_message='No esta autorizado para este procedimiento'
end
end

pero me esta dejando crearlas y la idea es q no deje...que tendre mal???

former_member188440
Active Contributor
0 Kudos

Pues es que tendrias que revisar que informacion traes en el AgentCode y el resto de los valores que estas comparando

El primer codigo que te puse era para que compararas valores como "Juan Perez" vs "Juan Perez", suponiendo que ambos valores son el nombre de usuario vs el empleado de ventas respectivamente

Revisa si esa comparacion es posible con los campos que metiste

angeles804
Active Contributor
0 Kudos

sabes que pienso, que para eso de almacenes puedes generar un proceso de autorización por líneas, por ahi hay un documento interesante con respecto a eso, para que valides los almacenes, yo tengo un problema parecido pero yo manejo porusuario un virtual y un almacen principal...

Former Member
0 Kudos

y como puedo hacer para que facture a un determinado cliente, recuerda que no la restriccion no es solo por el empleado sino por el usuario

former_member188440
Active Contributor
0 Kudos

Intenta con este codigo


IF @transaction_type in ('A') AND @object_type IN ('13')
begin
declare @uservalido nvarchar (8)
set @uservalido=(select b.user_code from oinv a join ousr b on a.usersign=b.userid 
	where a.docentry=@list_of_cols_val_tab_del)--Obtenemos el usuario que esta creando la factura en SBO
if (select b.slpname from oinv a join OSLP b on a.SlpCode=b.SlpCode
	where a.docentry=@list_of_cols_val_tab_del)!=(select U_NAME from ousr where user_code=@uservalido)
begin
set @error=1
set @error_message='Error'
end
end

La idea es que el nombre del empleado del departamento de ventas, sea el mismo nombre que tienes en la ventana de Definicion de usuarios, prueba a ver si te sirve

felipe_loyolarodriguez
Active Contributor
0 Kudos

Carolina

Creo que deberias explorar las opciones internas que trae SAP para esto, asi no metes tanto codigo en el TN.

1) Ve a Gestion ---> Definiciones ---> General ---> Opciones de Usuario y crea por ejemplo en codigo VTerr-01 (vendedor en terreno 01).

2) En la pestaña Valores propuesto, asigna el almacen y empleado de ventas por defecto.

3) Luego en Gestion ---> Definiciones ---> General ---> Usuarios, ve al usuario y en el campo Valores propuestos, seleccionas la recien creada para ese usuario, en este caso por ejemplo Vterr-01

Entonces lo valores por defecto de ese usuario seran los que tengas definidos en ese grupo, eso no quiere decir que no lo puedan modificar.

4) Luego, puedes validar los clientes

Espero te sirva

Slds

Edited by: Floyola on Aug 23, 2011 8:59 PM

Former Member
0 Kudos

pero tambien tendria que hacerse una relacion entre el usuario y el nombre del empleado porque debe ser el mismo...bueno la idea es para unos vendedores que van a trabajar remotamente....

ellos solo deberan tener acceso a facturar a sus clientes y solo mirar la cartera de esos clientes y el inventario de los almacenes de donde puedan facturar

pero no a todos se les quiere aplicar esta restriccion solo a los remotos

former_member188440
Active Contributor
0 Kudos

No veo posible lo de evitar que se vean las carteras de otros, lo del empleado que solo facture a un determinado cliente, no le veo mayor problema

Former Member
0 Kudos

Buenas,

Se me ocurre que podrias hacer algo con el transaction Notification por ejemplo

IF @ObjectType='13'

BEGIN

SET @DocEntry=@List_of_cols_val_tab_del

IF @transactiontype='A'

IF (

SELECT COUNT(*)

FROM OINV T0 INNER JOIN T1 INNER JOIN OCRD T2 ON T0.CardCode=T2.CardCode

WHERE T2.SlpCode<> T0.SlpCode AND T0.DocEntry=@DocEntry

)>0

BEGIN

SET @error=1

SET @error_message=@list_of_cols_val_tab_del+'El empleado de venta de la factura no es el mismo que el empleado de venta del SN'

END

prueba algo asi para validar que el vendedor sea el mismo

former_member188440
Active Contributor
0 Kudos

Cual es el escenario?

Necesitas usar el Transaction o autorizaciones o quizas autorizaciones adicionales y busquedas formateadas

Como es el requerimiento?