Ir para o conteúdo principal

Bloquear alteração de pedidos no CRM One

No CRM One, você pode evitar que os vendedores editem pedidos já adicionados utilizando uma Transaction Notification padrão do SAP Business One.

Cenário

Você deseja bloquear a edição de pedidos por usuários do CRM One após o pedido ter sido salvo.

Como fazer

Utilize a seguinte transaction em SQL para verificar se o usuário que está tentando editar o pedido faz parte dos usuários licenciados no CRM One:

IF ( @object_type = '17' AND @transaction_type IN ('U'))
BEGIN
    DECLARE @EmailUsuarioLogado AS VARCHAR(100) = 
      (SELECT E_Mail FROM OUSR 
       WHERE USERID = (SELECT UserSign2 FROM ORDR WHERE DocEntry = @list_of_cols_val_tab_del))

    IF (SELECT COUNT(0) FROM [@DWU_USR_WEB] WHERE U_Email = @EmailUsuarioLogado) > 0
    BEGIN
        Set @error = 1099
        set @error_message = 'TRANSACTION - Você não tem permissão para alterar pedidos já adicionados.'
    END
END

Resultado

Quando o usuário tentar editar um pedido salvo no CRM One, verá a seguinte mensagem de erro:

image.png

Dessa forma, a edição por parte de usuários web será bloqueada automaticamente.