Dúvida
Como utilizar o modelo de aprovação nativo do SAP Business One nas medições de contrato de fornecedores do ContractPlus.
| Atenção | ||||||
| Este procedimento é exclusivo para aprovações através do ContractPlus Web. |
Procedimento
No momento que é feita a medição de fornecedores o ContractPlus gera um pedido de compra com status "Pendente de autorização", sendo possível aprovar a partir do processo de autorização nativo do SAP.
Criar Modelo de Autorização Padrão do SAP.
Acesse, no SAP, o módulo Administração → Processo de autorização → Modelos de autorização.
O modelo de autorização criado deve estar desmarcado a opção "Ativo", isso se faz necessário para evitar cair nos processos nativos do SAP.
Na aba "Condições", selecione a opção "Sempre".
Consultar o Id (Código) do modelo de autorização criado no SAP
Este código é necessário para a aplicação identificar em qual regra será atribuída o pedido de compra gerado pelo Add-On.
Criar regra de aprovação.
Iremos criar uma regra de aprovação por centro de custo e, a partir desta regra será definido o sistema no qual o modelo de autorização irá gerar o pedido de compra. Para criar essa regra é necessário acessar o banco de dados (SQL ou HANA) e alterar a Stored Procedure "IV_C1_ProcessAuthorizationAlternative".
| Atenção | ||||||
| Neste exemplo, a procedure foi criada para o ambiente SQL Server. Caso seja necessário implementá-la no ambiente HANA, será preciso adaptá-la ao modelo do HANA. |
Na procedure abaixo estamos definindo que toda vez que existir uma medição específica com o centro de custo "SUPRI", o pedido de compra será atribuído no modelo de autorização de código 1.
| ALTER PROCEDURE [dbo].[IV_C1_ProcessAuthorizationAlternative] (@ContractId int, @MeasurementId int, @InstallmentId int, @DownPaymentId int ) AS BEGIN Select (Case When T1.OcrCode='SUPRI' Then 1 Else 0 End ) as CodeAuthorization From IV_C1_Measurement T0 INNER JOIN IV_C1_MeasurementLine T1 ON T1.MeasurementId=T0.Id Where T0.ID =@MeasurementId; END |
Criar uma medição com centro de custo SUPRI - Suprimentos
Após gravada a medição, será gerado um pedido de compra pendente de autorização.
Pedido de compra gerado pelo SAP
Após o pedido aprovado pelo autorizador, o usuário solicitante vai receber um alerta nativo do SAP onde será necessário clicar para adicionar o pedido seguindo a regra padrão do SAP.
Após a inclusão do pedido de compra no SAP pelo usuário, o sistema altera o status do contrato através do processo abaixo, que deve ser adicionado à transactionNotice do SAP.
Procedure SAP: SBO_SP_POSTTRANSACTIONNOTICE
Código em HANA
-- ContractOne
SELECT CURRENT_SCHEMA INTO db_invname FROM DUMMY;
CALL "IV_C1_ProcessNoticeAuthorizationAlternative"(:db_invname, :object_type, :transaction_type, :num_of_cols_in_key, :list_of_key_cols_tab_del, :list_of_cols_val_tab_del);
-- end ContractOne
Código em SQL
-- ContractOne
declare @currDbNameForContractOne nvarchar(128)
SET @currDbNameForContractOne = db_Name()
EXECUTE [IV_C1_ProcessNoticeAuthorizationAlternative] @currDbNameForContractOne, @object_type, @transaction_type, @num_of_cols_in_key, @list_of_key_cols_tab_del, @list_of_cols_val_tab_del
-- end ContractOne