Criando novas restrições de acesso no SAP Business One
Prezados, gostaria de compartilhar…
O SAP Business One possui recursos para bloquear acesso a telas que não possuem esta restrição por standard.
O mesmo vale para criar autorizações a telas criadas pelo usuário (UDO).
Situação exemplo:
O cliente gostaria que usuários específicos, não tenham autorização para apropriar/sacar um adiantamento em uma nota fiscal de saída e para liberar chamar um usuário com a devida autorização.
Passo 1:
No local do SAP Business One onde é necessário implementar o “bloqueio”, verifique o número do formulário.
Para obter esta informação, ative no menu: Visão => Informação do Sistema
Acesse a transação e a tela que deseja-se implementar a restrição, posicione o mouse sobre a tela e visualize no rodapé o número do formulário.
Neste exemplo 60511
Passo 2:
Acessar Administração => Inicialização do Sistema => Autorizações => Autorização adicional do criador
Passo 3:
Clicar no botão “Inserir mesmo nível” para criar uma nova linha de autorização
No campo “ID da autorização” informar um código para identificar a autorização criada, no exemplo foi informado: “AUT-001”
No campo “Nome” informar o nome que deverá ser visível na tela de “Autorizações Gerais”
No campo “Opção” definir as opções de autorização: “Completo/Lido/Nenhum” ou “Completo/Nenhum”
Depois clicar no botão processar
Será carregada uma nova tela, onde deverá ser informado o número do formulário que deseja-se implementar a autorização:
Informar o código do formulário, onde neste exemplo é 60511
Clicar em atualizar em todas as telas.
Passo 4:
Acessar Administração => Inicialização do sistema => Autorizações => Autorizações gerais
Selecionar o usuário
Localizar o assunto “Autorização do usuário” abrir a árvore e localizar a nova autorização.
Neste caso é possível visualizar a opção “Documento marketing – Adiantamento” onde deverá ser definida a autorização para o usuário selecionado.
Para o exemplo configurado: “Sem autorização”
Atualizar as novas autorizações definidas.
Passo 5:
Verificando a funcionalidade…
Acessar a nota fiscal de saída, lançar todos os dados pertinentes ao documento.
Ao clicar no […] Adiantamento total
Será exibida a tela informando que o usuário não possui autorização, onde em negrito é informado o nome da restrição criada.
Nesta situação o usuário tem a opção de solicitar ao seu supervisor a liberação. Clicando no botão “Autorizado por um outro usuário”, será solicitado o login de liberação.
Obs.: Para esta liberação o outro usuário precisa possuir a respectiva autorização, em “Autorizações gerais”
O supervisor informa seu usuário e senha.
Clicando em ok, a tela é liberada.
Ao final da sua leitura, registre seu feedback, possibilitando a melhoria do documento.
Obrigado.
Abraços,
Rodrigo da Costa Feula
#SBOBR #B1BR
Muito útil seu roteiro para novas Permissões.
Obrigado Augustus!
Espero colaborar com outros conteúdos.
Muito bom o conteúdo Rodrigo, parabéns!
Obrigado.
Parabens ótimas colaborações para o grupo.
Obrigado Jean.
Parabéns...
Obrigado Marcos
Obrigado Rodrigo
Bom dia Rodrigo!
Otima documentação! fiquei apenas com a dúvida se é possível fazer isso pra um campo de usuário especifico criado dentro do formulário. fiz alguns testes e não obtive sucesso, conhece alguma forma de fazer?
Olá Rebecka.
Fico muito feliz que tenha gostado. Obrigado!
No SAP Business One 9.1 é possível restringir o acesso a campos de determinados formulários. Escrevi um outro artigo sobre isto: SAP Business One - Funcionalidade de Configuração/Personalização da UI (interface do usuário) dá uma olhada, quem sabe atende sua necessidade.
Em último caso, se a sua versão do SAP Business One for inferior a 9.1 é possível fazer através de uma customização (addon).
Espero ter colaborado.
Att,
Rodrigo da Costa Feula
Obrigada Rodrigo!
Conheci esse recurso na 9.1 mas ainda não atualizei minha base, queria resolver sem customização. Vou tentar atualizar logo será melhor!
Att,
Rebecka
Muito bom Rodrigo. Parabéns !!!
O B1 tem muitos recursos interessantes que nos permite usa-los sem precisar de customização. Obrigado por mostrar mais esse.
Att,
Jair Oliveira
Obrigado Rodrigo.
Seu post foi de grande valia.
Att.
Paulo
Obrigado Rodrigo!
Seu artigo foi uma luz.
Feula, excelente material como sempre! Existe uma forma de criar restrições especificas a campos, por exemplo, o comercial cria o cadastro do PN e somente o financeiro teria autorização para incluir ou modificar o limite de crédito. É possível?
Olá Andrea.
Para este seu caso, tratamos com Transaction.
Você pode bloquear a alteração dos campos específicos diretamente no banco de dados.
Atte.,
Paulo Dias
Oi Paulo! Tem esta transaction para me passar? Obrigada!!!
Andrea.
A transaction você encontra na listagem de Procedures do Banco de dados.
O nome dela é SBO_SP_TransactionNotification.
Não tenho uma regra criada especificamente para o campo que você deseja.
Mas o código ficaria mais ou menos desta forma. Não testei, só escrevi para lhe auxiliar ok?
Para saber os códigos dos usuários, você pode pesquisar na tabela OUSR
Você pode evoluir isso com um campo de usuário "Permissão financeira" por exemplo na tela de Cadastro de Usuários e alterar a transaction para bloquear usuários que não estejam com Y neste campo invés de colocar cada código que pode alterar.
Desta forma não teria mais necessidade de ir até a transaction para liberar.
Esta é minha sugestão. Criamos vários bloqueios na transaction.
Obrigada por compartilhar! Fico a disposição para qualquer coisa também.
Não tem de quê. Espero que a ajude.
Olá Andrea, a partir de agora é possível você implementar esta restrição.
SAP Business One - Funcionalidade de Configuração/Personalização da UI (interface do usuário)
Como vai funcionar:
- Você define um template para o cadastro de PN por exemplo, onde o campo do limite de crédito não esteja editável.
- Vincula os usuários que não podem editar aquele campo.
Espero ter ajudado.
Abraços,
Rodrigo da Costa Feula
Excelente informação. Muito obrigada por compartilhar.