Configurando procedimentos de autorização
O CRM One permite que você configure procedimentos de autorização para adição de documentos com ou sem consulta formatada.
PREMISSAS:
a. Todos os documentos que “caírem” no procedimento de autorização, devem ser aprovados e adicionados dentro do SAP Business One na tela padrão de “Relatório de decisão de autorização”.
b. O usuário configurado no procedimento não pode se repetir nas abas AUTOR e APROVADOR, ou seja, ele NÃO pode ser autor e autorizador do mesmo procedimento.
c. É necessário ativar a configuração de “Ativar processo de aprovação em DI” conforme caminho do print abaixo:
ATENÇÃO: a configuração de “Adicionar documento ao aprovar (PV e CV)” é válida SOMENTE para adição de um novo documento. Procedimentos de autorização relacionados a atualizações de documentos NÃO são comtempladas nesta funcionalidade, devendo a operação relacionada a atualização ser operacionalizada 100% de forma padrão e manual dentro do SAP Business One, por um usuário com a licença pertinente e permissões no client do SAP Business One.
Na WEB e no MOBILE, é possível acompanhar através de relatório de esboços, os documentos que estão aguardando aprovação. Print abaixo:
1- Procedimento de autorização SEM consulta formatada
Para utilizar procedimentos de autorização, com condições padrão, ou seja, SEM consulta formatada, não é necessário nenhuma configuração específica para funcionamento no CRM One. As condições consideradas padrões são as ilustradas no print abaixo:
Utilizando estas condições, o CRM One irá respeitar a regra e encaminhar os documentos para o respectivo procedimento de autorização.
2- Procedimento de autorização COM consulta formatada
Para utilizar procedimentos de autorização com condições via consulta formatada, siga os passos abaixo para o correto funcionamento do CRM One.
2.1 – Utilize o cadastro de “Modelo de autorização” padrão do SAP Business One com o add-on CRM One INICIADO.
2.2 – Crie a sua consulta formatada utilizando as variáveis abaixo (se necessário):
Documento – Cabeçalho – Código cliente: $[$4.0.0]
Documento – Cabeçalho – Data do documento: $[$10.0.0]
Documento – Cabeçalho – Data de vencimento: $[$12.0.0]
Documento – Cabeçalho – Desconto em %: $[$24.0.0] ou $[$24.0.number]
Documento – Cabeçalho – Campo de usuário ‘DWU – Proc. auto.’: $[$U_DWUProcAut.0.0]
Documento – Rodapé – Vendedor: $[$20.0.0]
Documento – Rodapé – Desconto total: $[$42.0.0] ou $[$42.0.number]
Documento – Rodapé – Uso principal $[$1720002171.0.0]
Documento – Rodapé – Total antes do desconto: $[$22.1.0] ou $[$22.1.number]
Documento – Rodapé – Total a pagar: $[$29.0.0] ou $[$29.0.number]
Documento – Aba Logística – Tipo de envio: $[$121.0.0]
Documento – Aba Contabilidade – Condições de pagamento: $[$47.0.0]
Documento – Aba Contabilidade – Forma de pagamento: $[$148.0.0]
Documento – Aba Imposto – Cód. Transportadora: $[$2022.0.0]
Documento – Aba Imposto – Incoterms: $[$2018.0.0]
Documento – Aba Imposto – Peso líquido: $[$2033.0.0]
Documento – Aba Imposto – Peso bruto: $[$2034.0.0]
Documento – Linhas – Quantidade da linha: $[$38.11.0] ou $[$38.11.0]
Documento – Linhas – Utilização da linha: $[$38.2011.0] ou $[$38.2011.number]
Documento – Linhas – Cód. Item linha: $[$38.1.0]
Documento – Linhas – Preço unitário: $[$38.14.number]
Documento – Linhas – Total linha: $[$38.21.number]
Documento – Linhas – % de desconto da linha: $[$38.15.0] ou $[$38.15.number]
Se a sua variável não for utilizada no padrão acima, incluindo maiúsculas e minúsculas, o CRM One não irá considerar e o procedimento pode não funcionar.
Vamos chamar esse procedimento de “principal”.
Exemplo 1 – Query para validar se o PN do documento possui algum título vencido no SAP:
Query utilizada:
SELECT CASE WHEN EXISTS(
SELECT
CASE
WHEN T1.[DueDate] < GETDATE() THEN 'Vencido'
ELSE 'Dentro do prazo'
END,
CASE T0.[TransType]
WHEN '13' THEN 'NF Saída'
WHEN '14' THEN 'Dev. NF Saída'
WHEN '203' THEN 'Adiantamento'
WHEN '30' THEN 'LCM'
WHEN '46' THEN 'Contas a Pagar'
ELSE T0.[TransType]
END,
CASE T0.[TransType]
WHEN '13' THEN (SELECT ISNULL(C1.[NfmName],'Sem modelo')+' Nº: '+CAST(C0.[Serial] AS nvarchar)
FROM OINV C0
INNER JOIN ONFM C1 ON C0.[Model] = C1.[AbsEntry]
WHERE C0.[DocEntry] = T0.[BaseRef]
)
WHEN '14' THEN (SELECT ISNULL(C1.[NfmName],'Sem modelo')+' Nº: '+CAST(C0.[Serial] AS nvarchar)
FROM ORIN C0
INNER JOIN ONFM C1 ON C0.[Model] = C1.[AbsEntry]
WHERE C0.[DocEntry] = T0.[BaseRef]
)
WHEN '203' THEN T0.[BaseRef]
WHEN '30' THEN 'LCM: '+CAST(T0.[BaseRef] AS NVARCHAR(20))
ELSE ''
END,
CASE T0.[TransType]
WHEN '13' THEN CAST((SELECT I6.[InstlmntID]
FROM INV6 I6
WHERE I6.[DocEntry] = T0.[BaseRef]
AND I6.[InstlmntID] = T1.[SourceLine]
) as NVARCHAR(20))
WHEN '14' THEN CAST((SELECT R6.[InstlmntID]
FROM RIN6 R6
WHERE R6.[DocEntry] = T0.[BaseRef]
AND R6.[InstlmntID] = T1.[SourceLine]
) as NVARCHAR(20))
WHEN '203' THEN CAST((SELECT D6.[InstlmntID]
FROM DPI6 D6
WHERE D6.[DocEntry] = T0.[BaseRef]
AND D6.[InstlmntID] = T1.[SourceLine]
) AS NVARCHAR(20))
WHEN '30' THEN 'Linha: '+ CAST((T1.Line_ID + 1) AS NVARCHAR(20))
WHEN '46' THEN ''
ELSE T0.[TransType]
END,
T0.[RefDate],
T1.[DueDate],
(DATEDIFF(d, GETDATE(), T1.[DueDate])*-1),
(T1.[BalDueDeb] - T1.[BalDueCred])
FROM OJDT T0
INNER JOIN JDT1 T1 ON T0.[TransId] = T1.[TransId]
INNER JOIN OACT T2 ON T1.[Account] = T2.[AcctCode]
LEFT JOIN OCRD T3 ON T3.[CardCode] = T1.[ShortName]
WHERE T2.[LocManTran] = 'Y'
AND T1.[BalDueDeb] <> 0
AND T1.[ShortName] = $[$4.0.0]
AND (DATEDIFF(d, GETDATE(), T1.[DueDate])*-1) >= 1 -- SOMENTE VENCIDO A MAIS DE 1 DIA
)
THEN 'TRUE' ELSE 'FALSE' END
Exemplo 2 – Query que valida se há desconto em alguma linha do documento:
Query utilizada:
SELECT
CASE WHEN $[$38.15.number] > 0
THEN 'TRUE'
ELSE 'FALSE' END
2.3 – Valide sua consulta para garantir que ela funciona no padrão do SAP Business One
Faça o lançamento de um documento fazendo com que o mesmo passe no procedimento de autorização criado. Se funcionar, continue seguindo os passos abaixo.
2.4 – Agora, vamos configurar o procedimento de autorização para o CRM One
Crie um novo procedimento de autorização com os mesmos autores, documentos e etapas do procedimento “principal.
Vamos chamar esse novo procedimento de “secundário”.
Para este procedimento, vamos fazer o seguinte:
1- Deixar ele DESATIVADO
2- Na aba condições, marcar a opção SEMPRE
Continuação do exemplo 1
Continuação do exemplo 2
IMPORTANTE: Lembre-se que a aba AUTORES, DOCUMENTOS e ETAPAS devem estar iguais ao primeiro procedimento já criado e validado no SAP.
2.5 – Após criar o novo procedimento com condição SEMPRE, vamos vincular os procedimentos criados
Feche todas as telas de modelo de autorização que estiverem abertas.
Abra novamente a tela de “Modelo de autorização”. Lembre-se que o add-on CRM One deve estar em execução.
Acesse o procedimento de autorização ATIVO, ou seja, o que foi validado no SAP e acesse a aba “Autorização CRM One WEB”. Nesta aba, você vai marcar a opção “Ativo WEB” e no campo “Modelo de autorização para o CRM”, selecione o modelo de autorização criado com a condição SEMPRE.
Continuação exemplo 1:
Continuação exemplo 2:
Pronto!
Agora o procedimento de autorização está configurado para uso na WEB e no MOBILE.
Para documentos inseridos pelo SAP Business One, o procedimento utilizado será o “principal”.
Para documentos inseridos pelo CRM One, o procedimento utilizado será o “secundário”.