You are on page 1of 42

Especificação Funcional e Definição de Solução

Projeto: LIGA - ERP


Assunto: Interface de Contabilização
Data: 20/10/2015
Local: Não se aplica

Informações Gerais

Definição do Gap

Nome da Frente Finanças


ID do GAP FIN_I_02.02.01

Tipo do GAP Report X Interface Conversion


Enhancement Form Workflow
Nome do GAP Interface de Contabilização
Descrição do GAP Interface dos lançamentos de “Contas a Pagar” referente a compra de direitos
Complexidade (baixa,
média, alta e muito Média
alta)

1
Processos Envolvidos

Referência dos Processos


FIN.02.03 – Contas a Pagar Contas a Pagar

Fluxo do Gap

2
O programa de interface inbound será único para todo o processo do Cenário IBMS, separada por tipo de
processamento.

1 - Novo Contrato
2 - Transferência
3 - Desbloqueio para Pagamento
4 - Alteração de Vencimento
5 - Renegociação
6 - Amortização
7 - Permuta
8 - Impostos
9 - Provisão

Este documento tratará, especificamente, dos processamentos 1, 5, 7 e 8.

3
CRIAÇÃO DAS PARTIDAS EM ABERTO
CESSÃO DE DIREITOS

Forma de Envio das Parcelas


O IBMS enviará as parcelas abertas por produto (Deal) e quem fará a gestão dos pagamentos será o SAP, não havendo
a necessidade de agrupar os lançamentos.

Adiantamento de Fornecedores de Direito


As faturas a pagar para o fornecedor de Direito, vindas do IBMS, serão lançadas no SAP como adiantamento a
fornecedor (RzE “A”). Desta forma, somente o fornecedor será contabilizado.

Momento 1 – Criação da fatura a pagar ao Fornecedor (Origem: IBMS)

Tipo de Documento CT/CV


Crédito Fornecedor Direito/Imposto (RzE “A”)

Momento 2 – Pagamento Fornecedor (Origem: SAP)

Tipo de Documento ZP
Crédito Banco
Débito Fornecedor Direito/Imposto (RzE “A”)

Momento 3 – Provisão (Origem: SCD)

Tipo de Documento CT
Crédito Fornecedor Direito + Centro de Lucro (Unidade de Negócio)
Débito Direito em Formação + Centro de Lucro (Unidade de Negócio)

Momento 4 – Transferência (Origem: SCD)

Tipo de Documento CT
Crédito Direito em Formação + Centro de Lucro (Unidade de Negócio)
Débito Direito a Apropriar + Centro de Lucro (Unidade de Negócio)

Momento 5 – Amortização (Origem: SCD)

Tipo de Documento CT
Crédito Direito a Apropriar + Centro de Lucro (Unidade de Negócio)
Débito Despesas de Amortização + Elemento PEP

4
Tipo de Documento
Será usado, para os lançamentos de Contas a Pagar vindos do IBMS, o tipo de documento “CT” para os títulos referente
a cessão de direitos valor principal e “CV” para os valores dos impostos.

Condição de Pagamento
Ficou definido que para todas as parcelas da Cessão de Direitos será fixada com a condição de pagamento “0001”
(Pagamento Imediato).

Bloqueio de Pagamento
Será necessário que os lançamentos cheguem no SAP bloqueados para pagamento, isto deverá ser de forma
automática. O código de bloqueio utilizado será o “I”.

Lançamentos em Moeda Estrangeira


Para o cálculo da taxa de cambio deveremos considerar a data de documento para determinar a taxa de câmbio. A
data enviada no campo Data da Emissão (campo 07) é a data que será considerada como data de lançamento.

PERMUTA
As informações referentes à permuta virão no mesmo formato de arquivo da cessão de direitos. O que identifica os
títulos de permuta é a Espécie ZY. Também deverá ser gerado um adiantamento (RzE “A”).

Tipo de Documento
Será usado, para os lançamentos de Contas a Pagar, referente à permuta, vindos do IBMS, o tipo de documento “ZY”.

Condição de Pagamento
Ficou definido que para todas as parcelas de permuta será fixada com a condição de pagamento “ZPER” (Pagamento
Permuta).

Bloqueio de Pagamento
Será necessário que os lançamentos cheguem no SAP bloqueados para pagamento, isto deverá ser de forma
automática. O código de bloqueio utilizado será o “P”. O código de bloqueio está vinculado à condição de pagamento.

5
RENEGOCIAÇÕES
Há casos em que já há um contrato no IBMS que o Master Deal já tenha sido aprovado e que as parcelas já tenham
sido carregadas no SAP, mas por algum motivo houve renegociação com o fornecedor.

Cancelamento de Contrato
Na necessidade de cancelar o contrato e, consequentemente suas parcelas, o IBMS irá enviar o arquivo, com o mesmo
layout da criação das parcelas, porém com a informação de alguns campos com valor zerado, assim será possível
determinar qual parcela do SAP deve ser estornada.

Alteração de Valor das Parcelas


Numa renegociação foi alterado o valor do contrato, com isso os valores das parcelas terão que ser alterados também.
Nestes casos o IBMS poderá enviar a mesma parcela, com o mesmo número do Deal e do ID da parcela, porém com o
valor da parcela alterado para o valor da renegociação. O SAP terá que estornar a parcela antiga e criar uma nova com
o mesmo valor.

Alteração na Quantidade de Parcelas


Nesta renegociação, o SAP terá que estornar as parcelas antigas e criar as novas parcelas, conforme a regra de
renegociação.

CONTABILIZAÇÃO DOS IMPOSTOS


Impostos na Entrada da Nota (Implementação)
Para os fornecedores internacionais, quando aplicável, será informado pelo IBMS, no campo referente ao CV, o valor
do imposto a pagar. Para este cenário, deverá ser criado um novo título a pagar, para o fornecedor Receita Federal,
com o valor do imposto e a mesma data de vencimento do valor principal (CT).

O fornecedor Receita Federal deverá estar cadastrado na mesma conta de reconciliação do fornecedor principal e ter
as mesmas funcionalidades de um título a pagar, como por exemplo, da variação cambial.

Para os fornecedores nacionais (clubes e não-clubes), o campo referente ao CV virá com valor zerado e não será gerado
um título a pagar para o fornecedor Receita Federal. A contabilização dos impostos retidos obedecerá ao cadastro do
fornecedor.

Regra Geral
Se, nos campos referente ao CV, vier informado algum valor, o programa da interface deverá verificar se
este fornecedor possui, em seu cadastro, os códigos de retenção IRF. Se existir, os valores deverão ser
zerados no SAP, para que não haja a contabilização dos impostos e será gerado um título a pagar para o
fornecedor Receita Federal.

Impostos no Pagamento
A gestão de pagamento dos títulos em aberto deverá verificar se o título, no momento do pagamento, é passível ou
não da retenção. Se não, deverão ser zerados, manualmente, os valores referentes ao imposto.

VARIAÇÃO CAMBIAL
A variação cambial dos documentos em moeda estrangeira será calculada e lançada manualmente, diretamente no
SAP.

6
Importante:
Haverá o middleware (PO) como camada intermediária entre os sistemas IBMS e SAP.

 Sistema de Origem: IBMS


 Sistema de Destino: SAP
 Direção: Inbound

Volume de Transação
Para esta interface está previsto a seguinte volumetria:
Um registro por processamento.
Volume diário: 40 arquivos por dia, com aproximadamente 50 registros em cada arquivo

Frequência
IBMS
A frequência desta interface será esporádica, sendo acionada, a cada aprovação de Master Deal, no IBMS.

PO
O PO deverá verificar, a cada 15 minutos, se existe arquivo disponibilizado na pasta para processamento e chamar a
função Z inbound.

SAP
Para o SAP, ao ser acionada a função Z inbound, deverá ser imediatamente contabilizado.

Dependências e Premissas
Para a contabilização das parcelas em aberto, é premissa desta interface:

1. O Master Deal esteja aprovado.


2. Arquivo disponibilizado no layout estabelecido.
3. A taxa de câmbio do IBMS deve estar sempre igual ao cadastrado no SAP.
4. A renegociação e o cancelamento somente podem ocorrer para as partidas em aberto.
5. O código do Master Deal esteja informado no campo Referência, no cabeçalho do documento SAP.
6. O documento contábil referente a este processo seja “CT”, “CV” ou “ZY”.
7. Os documentos para pagamento serão criados com o código de bloqueio “I”.
8. Para permuta, que a condição de pagamento seja “ZPER”.
9. A empresa esteja cadastrada no SAP.
10. As contas contábeis estejam cadastradas no SAP.
11. O período contábil, no SAP, esteja aberto para contabilização.
12. O programa deverá ser executado somente pelo usuário de interface.
13. O fornecedor Receita Federal deverá estar cadastrado na TVARV utilizando o parâmetro
IBMS_FORNEC_RECEITA

SM 166
14. Que as alçadas, valores e aprovadores estejam cadastrados nas tabelas de MM.
15. Somente para adiantamento a fornecedores do IBMS.
16. Todos os aprovadores deverão ter acesso ao SAP.
17. Os emails dos aprovadores estejam cadastrados no SAP.

7
Objetos de Autorização
O usuário da interface, que irá executar este programa, deverá ter permissão para os seguintes objetos de
autorização SAP:

1. Criação do documento contábil


2. O usuário específico de interface deverá ter o objeto EMPRESA no seu perfil de acesso. As empresas que este
usuário deverá ter acesso são, exclusivamente, as empresas do grupo. Sugere-se a criação da função
AUTHORITY-CHECK, para verificação de autorização.
3. Será criada uma transação para a atualização de uma tabela Z de parâmetros de interface. Esta tabela deverá
ser atualizada pelo time responsável por esta interface e a transação deverá ser atribuída a um perfil
especifico.

Documentos Relacionados (anexar nota SAP, emails, logotipos etc.)

Transações SAP envolvidas:

Transação Descrição
F-47 Criação da Solicitação de Adiantamento
FB03 Visualização de Documento Contábil

8
Detalhamento do GAP

Detalhamento da necessidade
Regras e Requerimentos de Negócio:
O programa da interface deverá ler o arquivo enviado pelo sistema legado, identificar o tipo de processamento e
realizar a contabilização utilizando a BAPI_ACC_DOCUMENT_POST:

Definições SAP:

Mapeamento de Campos IBMS x Middleware PO x SAP

LIGA_EF_FIN_I_02.02
.01 - Interface de Contabilização IBMS_v1.xlsx

Layout do Arquivo IBMS

# Campo Tam Observação


01 Identificador da parcela N (09) Chave única que identifica a parcela
02 Estabelecimento C (04) Empresa
03 Fornecedor C (10) Código do fornecedor
04 Station C (04) Não será utilizado
05 Título C (10) Nro Master Deal
06 Sequencial da parcela N (09) Nro sequencial da parcela
C (08) Data mais antiga entre Data da aprovação e Data do início da vigência
07 Data da Emissão
(YYYYMMDD)
08 Data de Pagamento C (08) Data de vencimento (YYYYMMDD)
09 Tipo de Fluxo C (10) Não será utilizado
10 Unidade de Negócio C (10) Código da unidade de negócio/centro de lucro
11 Moeda C (04) Código da moeda
12 Tipo de Imposto C (02) Não será utilizado
13 Alíquota do Imposto N (06) Não será utilizado
14 Espécie (CT) C (02) Tipo de documento (CT ou ZY)
15 Valor (CT) N (14) Valor líquido do pagamento na moeda do documento
16 Espécie (CV) C (02) Tipo de documento (CV)
17 Valor (CV) N (14) Valor líquido do pagamento do imposto
18 Deal C (06) Nro Deal
19 Invoice C (50) Nro da Invoice

9
Lógica do Programa


Nota:
Esta função inbound será utilizada pelos gaps:
FIN_I_02.01.01 / FIN_I_02.02.03

Tabela Parâmetros
Deverá ser criada no SAP uma tabela para parametrizar os tipos de documentos x as interfaces:

Campo Chv Referencia Observação


Interface X CHAR10 Código da interface
Tipo Processam. X CHAR02 Tipo de Processamento
Tp Doc T003-BLART Tipo documento SAP
Cond.Pagto T052-ZTERM Condição de pagamento
(*) Criar uma transação para manutenção desta tabela

Criar um elemento de dados/domínio para o campo Tipo de Processamento com os seguintes valores:

Chv Descrição
01 Criação das Partidas em Aberto
02 Transferência
03 Desbloqueio para Pagamento
04 Alteração de Vencimento
05 Renegociação
06 Amortização
07 Permuta
08 Lançamento de Imposto
09 Provisão
10
Identificar o Legado de Origem
Verificar se o sistema legado de origem (sourceApplicationName) é igual a “IBMS”.

Se for diferente, finalizar o processamento.


Se for igual, continuar o processamento.

Identificar o Tipo de Documento


Selecionar dados da tabela de parâmetros (Z) onde:
Interface = sourceApplicationName (IBMS) e
Tp Processamento = “01” e
Tp Processamento = “05” e
Tp Processamento = “07” e
Tp Processamento = “08”.

Verificar se o Master Deal informado foi criado no SAP


Selecionar dados da tabela BKPF onde:
Empresa (BUKRS) = companyCode (02.Entidade) e
Referência (XBLNR) = referenceDocumentNumber (05.Titulo) e
Doc. Estorno (STBLG) = vazio.

Se não encontrar, indica que é um Novo Contrato (Tipo 01 ou Tipo 07).


Se encontrar, verificar se é uma Renegociação (Tipo 05).

SM188 (20.10.2015)
Se o campo valor CT (campo 15), enviado pelo IBMS, estiver zerado, indica que o contrato será cancelado. Neste
caso, verificar se existe o documento na BKPF sem considerar a chave Empresa:

Verificar se o Master Deal informado foi criado no SAP para cancelamento


Selecionar dados da tabela BKPF onde:
Referência (XBLNR) = referenceDocumentNumber (05.Titulo) e
Doc. Estorno (STBLG) = vazio.

Selecionar a conta contábil da contrapartida


Utilizar a conta contábil cadastrada no parâmetro da TVARV “IBMS_CONTA_DF” para lançamento do documento.
Utilizar o fornecedor cadastrado no parâmetro da TVARV “IBMS_FORNEC_RECEITA” para lançamento do
documento dos impostos.

11
NOVO CONTRATO – CRIAÇÃO DO CONTAS A PAGAR
Se não encontrou o Master Deal (BKPF-XBLNR), indica que é um novo contrato e deverá ser criado um documento
contábil de contas a pagar.

Nº Parcelas
Conforme forem criadas as parcelas, deve-se contar a quantidade de registros no arquivo do IBMS com o mesmo
número de Master Deal e colocar o total destas parcelas no campo texto do cabeçalho (BAPIACHE09-HEADER_TXT)
nas parcelas a serem criadas no SAP, exemplo:

Nº DE PARCELA
MasterDeal Txt. Cabeçalho
# Valor
(BKPF-XBLNR) (BKPF-BKTXT)
1 ABCDF 15.220,00 6
2 ABCDF 2.000,00 6
3 ABCDF 50.124,00 6
4 ABCDF 85.000,00 6
5 ABCDF 85.000,00 6
6 ABCDF 65.000,00 6

Verificar se o lançamento é referente a Cessão de Direitos (Tipo de Processamento 01)


Se Espécie CT (campo 14) enviado pelo IBMS for igual a “CT” indica que o lançamento é referente ao novo contrato,
neste caso, será lançado um adiantamento ao Fornecedor de Direito, utilizando o tipo de documento e a condição
de pagamento cadastrada na tabela Z de Parâmetros (Tipo 01):

Campo Bapi Conteúdo


Tipo de Tipo de documento da tabela de
BAPIACHE09-DOC_TYPE
documento parâmetros (Tipo 01)
Condição de Condição de pagamento da tabela de
BAPIACAP09- PMNTTRMS
Pagamento parâmetros (Tipo 01)
BAPIACEXTC-FIELD1
Extension1 Lógica abaixo
BAPIACEXTC-FIELD2
Valor BAPIACCR09-AMT_DOCCUR Valor do campo Valor CT (campo 15)

Nota
Para criar um adiantamento utilizando a bapi é necessário preencher a estrutura EXTENSION1:

Se Fornecedor (campo 03) estiver preenchido:


EXTENSION1-FIELD1(3) = “001”

EXTENSION1-FIELD2(1) = “A”
EXTENSION1-FIELD2+1(1) = “F”
EXTENSION1-FIELD2+2(1) = “S”.
EXTENSION1-FIELD2+3(2) = “39”

12
Ativar a BTE RWBAPI01 (FIBF) com a seguinte codificação:
DOCUMENT_HEADER-GLVOR = “RFST”
Loop at IT_ACCIT onde POSNR = EXTENSION1-FIELD1(3)
IT_ACCIT-BSTAT = EXTENSION1-FIELD2+2(1)
IT_ACCIT-UMSKZ = EXTENSION1-FIELD2(1)
IT_ACCIT-ZUMSK = EXTENSION1-FIELD2+2(1)
IT_ACCIT-BSCHL = EXTENSION1-FIELD2+3(2)

Para maiores detalhes, pode-se utilizar o link abaixo para referência:


http://scn.sap.com/docs/DOC-53631

Verificar se existe lançamento de imposto (para Tipo Processamento 01 e 05)


Se Valor CV (campo 17) estiver diferente de 0, indica que o lançamento tem imposto, neste caso será lançada
um adiantamento ao Fornecedor Receita, utilizando o tipo de documento e a condição de pagamento
cadastrada na tabela Z de Parâmetros (Tipo 08) e o fornecedor cadastrado na TVARV:

Campo Bapi Conteúdo


Tipo de Tipo de documento da tabela de
BAPIACHE09-DOC_TYPE
documento parâmetros (Tipo 08)
Condição de Condição de pagamento da tabela de
BAPIACAP09- PMNTTRMS
Pagamento parâmetros (Tipo 08)
BAPIACEXTC-FIELD1
Extension1 Lógica abaixo
BAPIACEXTC-FIELD2
Valor BAPIACCR09-AMT_DOCCUR Valor do campo Valor CV (campo 17)

Verificar os impostos cadastrado no fornecedor


Selecionar dados da tabela LFBW onde:
Fornecedor (LIFNR) = Fornecedor (campo 03) e
Empresa (BUKRS) = Estabelecimento (campo 02).

Se encontrar, preencher a estrutura referente ao IRF (BAPIACWT09):

Campo Bapi Conteúdo


Ctg IRF BAPIACWT09-WT_TYPE LFBW-WITHT
Cod IRF BAPIACWT09-WT_CODE LFBW-WT_WITHCD
Indicador Manual BAPIACWT09-BAS_AMT_IND Fixo “X”
Montante Base BAPIACWT09-BAS_AMT_TC Fixo “0.00”
Montante Base BAPIACWT09-BAS_AMT_LC Fixo “0.00”
Indicador Manual BAPIACWT09-MAN_AMT_IND Fixo “X”
Valor Imposto BAPIACWT09-MAN_AMT_TC Fixo “0.00”
Valor Imposto BAPIACWT09-MAN_AMT_LC Fixo “0.00”

13
Verificar se o lançamento é referente a Permuta (Tipo de Processamento 07)
Se Espécie CT (campo 14) enviado pelo IBMS for igual a “ZY” indica que o lançamento é referente a permuta, neste
caso será lançada uma fatura ao Fornecedor, utilizando o tipo de documento e a condição de pagamento cadastrada
na tabela Z de Parâmetros (Tipo 07):

Campo Bapi Conteúdo


Tipo de Tipo de documento da tabela de
BAPIACHE09-DOC_TYPE
documento parâmetros (Tipo 07)
Condição de Condição de pagamento da tabela de
BAPIACAP09- PMNTTRMS
Pagamento parâmetros (Tipo 07)
BAPIACEXTC-FIELD1
Extension1 Lógica abaixo
BAPIACEXTC-FIELD2
Valor BAPIACCR09-AMT_DOCCUR Valor do campo Valor CV (campo 17)

Preenchimento da BAPI
Para cada linha, considerar um número sequencial, iniciando em 001 para determinar o número do item do
documento contábil.

Criar os documentos CT, CV e ZY (para cada parcela, um documento SAP), utilizando a bapi
BAPI_ACC_DOCUMENT_POST seguindo os campos abaixo mapeados:

SM188 (20.10.2015)
Verificar se o campo 19.Invoice está preenchido:
Se estiver preenchido, o campo Bloqueio de Pagamento (transactionBlockCode) deverá ficar vazio.
Se estiver vazio, o campo Bloqueio de Pagamento (transactionBlockCode) deverá ser “I”.

Campo IBMS/Conteúdo Middleware PO Estrutura de Destino


BAPIACHE09 (DOCUMENTHEADER) – Dados de Cabeçalho
Tabela de Parâmetros documentTypeCode BAPIACHE09 DOC_TYPE
Cálculo Qtde Parcela documentDescription BAPIACHE09 HEADER_TXT
07.Data Emissão documentCreationDate BAPIACHE09 DOC_DATE
07.Data Emissão documentPostingDate BAPIACHE09 PSTNG_DATE
05.Titulo referenceDocumentNumber BAPIACHE09 REF_DOC_NO
02.Estabelecimento companyCode BAPIACHE09 COMP_CODE
BAPIACAP09 (ACCOUNTPAYABLE) – Dados Fornecedor
Número sequencial
conforme qtde de linhas itemNumber BAPIACAP09 ITEMNO_ACC
(2)

03.Fornecedor vendorId BAPIACAP09 VENDOR_NO


19.Invoice itemDescription BAPIACAP09 ITEM_TEXT
Tabela de Parâmetros termOfPaymentId BAPIACAP09 PMNTTRMS
Logica transactionBlockCode BAPIACAP09 PMNT_BLOCK
08.Data Pagamento expirationDate BAPIACAP09 BLINE_DATE
01.Identificador Parcela allocationDocumentNumber BAPIACAP09 ALLOC_NMBR
18.Deal referenceKey3 BAPIACAP09 REF_KEY_3
BAPIACCR09 (CURRENCYAMOUNT) – Dados de Montante
Número sequencial
conforme qtde de linhas itemNumber BAPIACCR09 ITEMNO_ACC
(2)

Fixo “00” amountType BAPIACCR09 CURR_TYPE


15.Valor CT ou
amount (*) BAPIACCR09 AMT_DOCCUR
17. Valor CV
14
11.Moeda isoCurrencyCode BAPIACCR09 CURRENCY
Cálculo Taxa Câmbio currencyRateValue BAPIACCR09 EXCH_RATE
BAPIACWT09 (ACCOUNTWT) – Dados de Imposto IRF
LFBW-WITHT taxTypeCode BAPIACWT09 WT_TYPE
LFBW-WT_WITHCD taxCode BAPIACWT09 WT_CODE
Fixo “X” manualInput BAPIACWT09 BAS_AMT_IND
Fixo “0.00” documentCurrencyAmount BAPIACWT09 BAS_AMT_TC
Fixo “0.00” localCurrencyAmount BAPIACWT09 BAS_AMT_LC
Fixo “X” manualInput BAPIACWT09 MAN_AMT_IND
Fixo “0.00” documentCurrencyAmount BAPIACWT09 MAN_AMT_TC
Fixo “0.00” localCurrencyAmount BAPIACWT09 MAN_AMT_LC
BAPIACEXTC (EXTENSION1) – Dados Extension1
Lógica BAPIACEXTC FIELD1
Lógica BAPIACEXTC FIELD2
(*)
Para o montante de crédito, multiplicar o valor por -1.
(1)
Para a estrutura de montante (BAPIACCR09), o nro do item deve ser o mesmo atribuído na estrutura
BAPIACGL09.
(2)
Para a estrutura de montante (BAPIACCR09) e de imposto (BAPIACWT09), o nro do item deve ser o mesmo
atribuído na estrutura BAPIACAP09.

Se concluído com sucesso, emitir log de processamento: “Parcela <campo allocationDocumentNumber> criado com
sucesso. Doc SAP <BKPF-BUKRS>-<BKPF-BELNR>-<BKPF-GJAHR>”.

Se concluído com erro, emitir log de erro que retorna da bapi de criação de documento contábil.

15
RENEGOCIAÇÕES
Se encontrou o Master Deal (BKPF-XBLNR), indica que é um contrato já existente e nesse caso, deve-se verificar se
trata de um cancelamento ou de uma renegociação de parcelas:

CASO 1 - Cancelamento de Contrato


Se o campo valor CT (campo 15), enviado pelo IBMS, estiver zerado, indica que o contrato será cancelado. Neste
caso, verificar se a partida a ser cancelada ainda não foi paga:

Selecionar dados da tabela BSIK onde:


Empresa (BUKRS) = BKPF-BUKRS e
Documento (BELNR) = BKPF-BELNR e
Exercício (GJAHR) = BKPF-GJAHR.

Se não encontrar, continuar o processamento.


Se encontrar, verificar se o campo Atribuição (BSIK-ZUONR) é igual ao campo 01.Identificador da Parcela
(allocationDocumentNumber) enviado no arquivo.
Se for diferente, desprezar o registro.
Se for igual, continuar o processamento.

Deletar os registros onde o Tipo de Documento (BSIK-BLART) for diferente de “CT” ou “CV” (ou tipo de documento
cadastrado na Tabela de Parâmetros (Tipo Processamento 05 e 08) para o legado IBMS).

Efetuar o batch input na transação FB08 para estornar a partida:

Programa Tela Início Campo Conteúdo


T FB08
SAPMF05A 0105 X
BDC_OKCODE “=BU”
RF05A-BELNS BSIK-BELNR
BKPF-BUKRS BSIK-BUKRS
RF05A-GJAHS BSIK-GJAHR
UF05A-STGRD “01”

Se concluído com sucesso, emitir log de processamento: “Parcela <campo allocationDocumentNumber> estornado
com sucesso. Doc SAP <BSIK-BUKRS>-<BSIK-BELNR>-<BSIK-GJAHR>”.

Se concluído com erro, emitir log de erro: “Não foi possível estornar a parcela <campo allocationDocumentNumber>.
Doc SAP <BSIK-BUKRS>-<BSIK-BELNR>-<BSIK-GJAHR>”.

16
CASO 2 - Alteração no valor da parcela sem alteração na quantidade de parcelas
Se o campo Valor CT (campo 15), enviado no arquivo, estiver preenchido, será necessário identificar se o valor das
parcelas que já estavam criadas no SAP será alterado. Neste caso, verificar se a partida a ser cancelada ainda não foi
paga:

Selecionar dados da tabela BSIK onde:


Empresa (BUKRS) = BKPF-BUKRS e
Documento (BELNR) = BKPF-BELNR e
Exercício (GJAHR) = BKPF-GJAHR.

Se não encontrar, continuar o processamento.


Se encontrar, verificar se o campo Atribuição (BSIK-ZUONR) é igual ao campo 01.Identificador da Parcela
(allocationDocumentNumber) enviado no arquivo.
Se for diferente, desprezar o registro.
Se for igual, continuar o processamento.

Deletar os registros onde o Tipo de Documento (BSIK-BLART) for diferente de “CT” e de “CV” (ou tipo de documento
cadastrado na Tabela de Parâmetros (Tipo Processamento 05 e 08) para o legado IBMS).

Verificar se o valor da parcela enviado pelo IBMS (campo 15) é igual ao valor do documento SAP (BSIK-WRBTR).
Se for igual, continuar o processamento.
Se for diferente, efetuar o batch input na transação FB08 para estornar a partida:

Programa TelaInício Campo Conteúdo


T FB08
SAPMF05A 0105 X
BDC_OKCODE “=BU”
RF05A-BELNS BSIK-BELNR
BKPF-BUKRS BSIK-BUKRS
RF05A-GJAHS BSIK-GJAHR
UF05A-STGRD “01”

Se concluído com sucesso, emitir log de processamento: “Parcela <campo allocationDocumentNumber> estornado
com sucesso. Doc SAP <BSIK-BUKRS>-<BSIK-BELNR>-<BSIK-GJAHR>”.

Se concluído com erro, emitir log de erro: “Não foi possível estornar a parcela <campo allocationDocumentNumber>.
Doc SAP <BSIK-BUKRS>-<BSIK-BELNR>-<BSIK-GJAHR>”.

17
Verificar o tipo de documento referente a Renegociação (Tipo de Processamento 05)

Campo Bapi Conteúdo


Tipo de Tipo de documento da tabela de
BAPIACHE09-DOC_TYPE
documento parâmetros (Tipo 05)
Condição de Condição de pagamento da tabela de
BAPIACAP09- PMNTTRMS
Pagamento parâmetros (Tipo 05)
Parâmetro da TVARV
Conta Contábil BAPIACGL09-GL_ACCOUNT
“IBMS_CONTA_DF”


Nota:
Fazer a mesma checagem dos impostos descritos no tópico Novo Contrato.

Preenchimento da BAPI
Após estornar a parcela, deverá criar a nova parcela, com o novo valor.
Para cada linha, considerar um número sequencial, iniciando em 001 para determinar o número do item do
documento contábil.


Nota:
Utilizar o mesmo mapeamento para preenchimento da bapi descritos no
tópico Novo Contrato.

18
CASO 3 - Alteração no Valor e/ou no Número de Parcelas do Contrato
Verificar a quantidade de linhas do arquivo que possuem o mesmo número do Master Deal (campo Título) e comparar
essa quantidade de parcelas com a quantidade de parcelas criadas no SAP:

Com os dados selecionados da BKPF, verificar a qtde de parcelas dos documentos já criados.
Se encontrar o mesmo número de parcelas (BKPF-BKTXT) nos documentos selecionados, descaracteriza alteração no
número de parcelas

Nº DE PARCELA
MasterDeal Txt. Cabeçalho
# Valor
(BKPF-XBLNR) (BKPF-BKTXT)
1 ABCDF 15.220,00 6
2 ABCDF 2.000,00 6
3 ABCDF 50.124,00 6
4 ABCDF 85.000,00 6
5 ABCDF 85.000,00 6
6 ABCDF 65.000,00 6

Se encontrar uma quantidade diferente de parcelas entre IBMS x SAP, verificar se algumas dessas parcelas já tenha
sido paga:

Para cada registro encontrado na BKPF, selecionar dados da tabela BSIK onde:
Empresa (BUKRS) = BKPF-BUKRS e
Documento (BELNR) = BKPF-BELNR e
Exercício (GJAHR) = BKPF-GJAHR.

Se não encontrar, continuar o processamento.


Se encontrar, verificar se o campo Atribuição (BSIK-ZUONR) é igual ao campo 01.Identificador da Parcela
(allocationDocumentNumber) enviado no arquivo.
Se for diferente, desprezar o registro.
Se for igual, efetuar o batch input na transação FB08 para estornar a partida:

Programa TelaInício Campo Conteúdo


T FB08
SAPMF05A 0105 X
BDC_OKCODE =BU
RF05A-BELNS BSIK-BELNR
BKPF-BUKRS BSIK-BUKRS
RF05A-GJAHS BSIK-GJAHR
UF05A-STGRD 01

Se concluído com sucesso, emitir log de processamento: “Parcela <campo allocationDocumentNumber> estornado
com sucesso. Doc SAP <BSIK-BUKRS>-<BSIK-BELNR>-<BSIK-GJAHR>”.

Se concluído com erro, emitir log de erro: “Não foi possível estornar a parcela <campo allocationDocumentNumber>.
Doc SAP <BSIK-BUKRS>-<BSIK-BELNR>-<BSIK-GJAHR>”.

19
Verificar o tipo de documento referente a Renegociação (Tipo de Processamento 05)

Campo Bapi Conteúdo


Tipo de Tipo de documento da tabela de
BAPIACHE09-DOC_TYPE
documento parâmetros (Tipo 05)
Condição de Condição de pagamento da tabela de
BAPIACAP09- PMNTTRMS
Pagamento parâmetros (Tipo 05)
Parâmetro da TVARV
Conta Contábil BAPIACGL09-GL_ACCOUNT
“IBMS_CONTA_DF”


Nota:
Fazer a mesma checagem dos impostos descritos no tópico Novo Contrato.

Preenchimento da BAPI
Após estornar a parcela, deverá criar a nova parcela, com o novo valor.
Para cada linha, considerar um número sequencial, iniciando em 001 para determinar o número do item do
documento contábil.


Nota:
Utilizar o mesmo mapeamento para preenchimento da bapi descritos no
tópico Novo Contrato.

Tratamento de Erros
Todos os logs de processamento (Erro e Sucesso) encontrados durante a execução deste programa deverão ser
enviados para o tratamento dos logs de processamento do PO.

20
Definições PO:
Após receber os dados do IBMS, o PO deverá mapear os campos conforme o layout IBMS x PO x SAP e chamar a
função SAP.

O PO deverá identificar qual o legado que está enviado o arquivo e informar no campo sourceApplicationName da
função inbound “IBMS”.

Layout do Arquivo IBMS

# Campo Tam Observação


01 Identificador da parcela N (09) Chave única que identifica a parcela
02 Estabelecimento C (04) Empresa
03 Fornecedor C (10) Código do fornecedor
04 Station C (04) Não será utilizado
05 Título C (10) Nro Master Deal
06 Sequencial da parcela N (09) Nro sequencial da parcela
C (08) Data mais antiga entre Data da aprovação e Data do início da vigência
07 Data da Emissão
(YYYYMMDD)
08 Data de Pagamento C (08) Data de vencimento (YYYYMMDD)
09 Tipo de Fluxo C (10) Não será utilizado
10 Unidade de Negócio C (10) Código da unidade de negócio/centro de lucro
11 Moeda C (04) Código da moeda
12 Tipo de Imposto C (02) Não será utilizado
13 Alíquota do Imposto N (06) Não será utilizado
14 Espécie (CT) C (02) Tipo de documento (CT ou ZY)
15 Valor (CT) N (14) Valor líquido do pagamento na moeda do documento
16 Espécie (CV) C (02) Tipo de documento (CV)
17 Valor (CV) N (14) Valor líquido do pagamento do imposto
18 Deal C (06) Nro Deal
19 Invoice C (50) Nro da Invoice

Nomenclatura do Arquivo
O arquivo gerado pelo IBMS será em formato TXT, com a seguinte nomenclatura:
EXPPAYMNTAAAAMMDD_ HHMMSSS<Nro Master Deal>.txt

Diretório
Arquivo Inbound
O arquivo TXT será disponibilizado pelo IBMS no diretório:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\processar
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\processar

Arquivo Processado
Após o processamento do arquivo, o PO deverá transferir o arquivo da pasta “processar” para a pasta “processado”:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\processado
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\ processado

Log de Processamento
Os logs de processamento retornados pela função inbound SAP, deverão ser gravados no diretório:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\logs
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\logs

21
Log de Erro
Havendo erro no retorno do processamento da função inbound SAP, o log deverá ser gravado no diretório:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\erro
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\erro

O mapeamento dos campos SAP x PO estão no anexando na planilha excel, no tópico Mapeamento de Campos
IBMS x Middleware PO x SAP.

22
A partir deste ponto, as informações referem-se à solicitação da SM 166 (03.11.2015)

Desenvolver a lógica do workflow para aprovação dos documentos originados do IBMS antes de serem criados no
SAP.

Atualmente, ao ser autorizado o envio das parcelas, renegociações e cancelamentos no IBMS, a informação é
interfaceada para o SAP e cria os documentos de adiantamento bloqueados para pagamento (interface FIN_I_006).

Nem a criação nem a liberação do documento para pagamento levam em consideração as alçadas de aprovação.

Será necessário ajustar a interface dos documentos do IBMS para não criar o documento contábil se estes não forem
previamente aprovados conforme política de alçada definida na empresa.

As alçadas estão determinadas da seguinte forma, conforme política publicada na intranet:

Diretoria Geral – aprova acima de R$ 350.000,01;


Diretoria de Gestão – aprova de R$ 150.000,01 até R$ 350.000,00;
Diretores – aprovam de R$ 50.000,01 até R$ 150.000,00;
Gerentes – aprovam até R$ 50.000,00.

O workflow de aprovação dos documentos originados no IBMS será iniciado através do envio das informações através
da interface atual (FIN_I_006). Porém os documentos deverão ser armazenados em uma tabela temporária e
submetidos à aprovação. A alçada da aprovação deverá seguir a mesma alçada definida em MM (Estratégia de
Liberação).

Se aprovado, deverá gerar a solicitação de adiantamento, conforme já é efetuado pelo programa da interface.
Se reprovado, deverá retornar ao legado IBMS, as informações com status de reprovado. O registro continuará
armazenado na tabela temporária para consultas.

Regras para Aprovação

 O centro de custo aprovador deverá ser obtido através de uma conexão com o sistema IBMS.
 Será permitido somente um centro de custo por MasterDeal.
 Verificar se o centro de custo informado é um centro de custo válido.
 A solicitação de adiantamento nascerá bloqueada para pagamento (cod bloqueio “I”).
 O valor a ser considerado para aprovação é o total das parcelas enviadas, por MasterDeal.
 Com base no centro de custo aprovador e o valor das parcelas enviadas, será verificado nas tabelas de MM
as alçadas e os aprovadores.
 Se o documento for aprovado, será criado o documento de solicitação de adiantamento no SAP.
 Se reprovado, a informação ficará pendente, com status recusado e irá retornar para o legado.
 Para valores em moeda estrangeira, o valor a ser considerado para aprovação será o montante em Reais,
convertido pela data do dia do processamento.
 Enviar email para os aprovadores, solicitando a aprovação do documento.
 Enviar email para o solicitante, informando a aprovação/reprovação do documento.
 Enviar o log de processamento (aprovado ou reprovado) para o IBMS.

23
Alçadas de Aprovação (Estratégia de Liberação)
Serão utilizadas as mesmas alçadas de aprovação definidas na Estratégia de Liberação, em MM:

No caso de não ser possível identificar um dos níveis de aprovação, o WF irá encaminhar o Master Deal para o
próximo nível de aprovação.

Sempre que o Master Deal for encaminhado para aprovação, será enviado um email ao aprovador. Este email deverá
estar cadastrado no login do aprovador.

Macro Fluxo do Processo de Aprovação do Master Deal

24
Regras e Requerimentos de Negócio:

Para atender a solução será necessário:

a. Alterar a interface FIN_I_006 (função ZFIFUN0006) para gravar os dados recebidos do legado em uma tabela
Z (se necessário, criar nova função).
b. Criar uma tabela Z e gravar os dados enviados na interface nesta tabela.
c. Efetuar uma conexão com o sistema IBMS para obter o centro de custo aprovador e email do solicitante.
d. Criar um workflow para aprovar estes documentos da tabela Z, conforme as alçadas cadastradas no MM
(descrito na EF FIN_W_002).
e. Enviar email aos aprovadores e solicitantes, com as informações de aprovação ou reprovação do documento.
f. Se aprovado, gerar o documento de solicitação de adiantamento e atualizar o status na tabela Z.
g. Se reprovado, atualizar o status na tabela Z.
h. Retornar mensagem ao legado, com as informações de aprovação ou reprovação do documento.
i. Criar um monitor que controle os registros recebidos do legado, o que foi aprovado, o documento contábil
gerado e o que foi reprovado (descrito na EF FIN_R_003).
j. Manter a lógica da criação, renegociação, cancelamento, permuta, alteração do vencimento e desbloqueio
para pagamento da interface atual (FIN_I_006) dos documentos aprovados da tabela Z.

Layout do Arquivo IBMS

# Campo Tam Observação


01 Identificador da parcela N (09) Chave única que identifica a parcela
02 Estabelecimento C (04) Empresa
03 Fornecedor C (10) Código do fornecedor
04 Station C (04) Station
05 Título C (10) Nro Master Deal
06 Sequencial da parcela N (09) Nro sequencial da parcela
C (08) Data mais antiga entre Data da aprovação e Data do início da vigência
07 Data da Emissão
(YYYYMMDD)
08 Data de Pagamento C (08) Data de vencimento (YYYYMMDD)
09 Tipo de Fluxo C (10) Tipo de fluxo
10 Unidade de Negócio C (10) Código da unidade de negócio/centro de lucro
11 Moeda C (04) Código da moeda
12 Tipo de Imposto C (02) Tipo de imposto
13 Alíquota do Imposto N (06) Alíquota do imposto
14 Espécie (CT) C (02) Tipo de documento (CT ou ZY)
15 Valor (CT) N (14) Valor líquido do pagamento na moeda do documento
16 Espécie (CV) C (02) Tipo de documento (CV)
17 Valor (CV) N (14) Valor líquido do pagamento do imposto
18 Deal C (06) Nro Deal
19 Invoice C (50) Nro da Invoice

SM 256 – 09.12.2015:
Inclusão do campo Elemento PEP no layout do arquivo IBMS

20 Elemento PEP C (50) Código SAP do Elemento PEP

25
Tabela Temporária
Criar uma tabela com os seguintes campos:

Campo Chv Refer. Observação


Sistema Origem X C (10) IBMS
Título X C (10) Nro Master Deal
Identificador da parcela N (09) Chave única que identifica a parcela
Estabelecimento C (04) Empresa
Fornecedor C (10) Código do fornecedor
Station C (04) Station
Sequencial da parcela N (09) Nro sequencial da parcela
Data da Emissão C (08) Data da emissão do documento
Data de Pagamento C (08) Data de vencimento (YYYYMMDD)
Tipo de Fluxo C (10) Código que identifica a natureza da despesa
Unidade de Negócio C (10) Código da unidade de negócio/centro de lucro
Moeda C (04) Código da moeda
Tipo de Imposto C (02) Tipo de imposto
Alíquota do Imposto N (06) Alíquota do imposto
Espécie (CT) C (02) Tipo de documento (CT ou ZY)
Valor (CT) N (14) Valor líquido do pagamento na moeda do documento
Espécie (CV) C (02) Tipo de documento (CV)
Valor (CV) N (14) Valor líquido do pagamento do imposto
Deal C (06) Nro Deal
Invoice C (50) Nro da Invoice
Elemento PEP C (50) Código Elemento PEP
Status C (02) Ver códigos dos status (1)
Centro de Custo Aprovador C (10) Centro de custo aprovador
Aprovador C (12) Usuário SAP do Aprovador
Valor MD N (14) Valor, em Reais, para identificação da alçada
Email Solicitante C (50) Email do solicitante
Empresa SAP C (04) Empresa do documento
Doc SAP C (10) Documento contábil
Exercício SAP C (04) Exercício do documento
Tipo de Processamento (2) C (02) Tipo de Processamento
Mensagem C (500) Mensagem do log de processamento
Data Atualização D (08) Data da última atualização
Hora Atualização D (08) Hora da última atualização

SM 256 – 09.12.2015:
Inclusão do campo Elemento PEP, enviado no arquivo IBMS, na tabela temporária.

26
(1)
Códigos dos Status
Criar as identificações para os códigos de status:

Status Descrição
01 Em Aprovação
02 Aprovado
03 Reprovado
04 Finalizado
05 Sem WF
09 Erro

(2)
Utilizar o domínio ZFIDOM_PROCES

Domínio ZFIDOM_PROCES
Alterar o domínio ZFIDOM_PROCES para incluir o valor “10 – Cancelamento”.

Mapeamento Legado x PO x Tabela Temporária


(O mapeamento atual deverá ser revisto)

Legado PO Tabela Z
SOURCE_APPLICATION_NAME Sistema Origem
Título REFERENCE_DOCUMENT_NUMBER Título
Identificador da parcela ALLOC_NMBR Identificador da parcela
Estabelecimento COMPANY_CODE Estabelecimento
Fornecedor VENDOR Fornecedor
Station STATION Station
Sequencial da parcela NUMBER_ID Sequencial da parcela
Data da Emissão DOCUMENT_CREATION_DATE Data da Emissão
Data de Pagamento BLINE_DATE Data de Pagamento
Tipo de Fluxo FLOW_TYPE Tipo de Fluxo
Unidade de Negócio PROFIT_CTR Unidade de Negócio
Moeda CURRENCY Moeda
Tipo de Imposto TAX_TYPE Tipo de Imposto
Alíquota do Imposto TAX_PERC Alíquota do Imposto
Espécie (CT) DOCUMENT_TYPE_CODE Espécie (CT)
Valor (CT) AMT_DOCCUR Valor (CT)
Espécie (CV) ESPECIE_CV Espécie (CV)

27
Valor (CV) VALOR_CV Valor (CV)
Deal DEAL Deal
Invoice INVOICE Invoice
Elemento PEP WBS_ELEMENT Elemento PEP

SM 256 – 09.12.2015:
Inclusão do campo Elemento PEP no mapeamento IBMS x PO x SAP

Lógica do Programa
O atual programa da interface (FIN_I_006) deverá ser alterado:

- Não gerar mais os documentos de solicitação de adiantamento antes da aprovação.


- Verificar se os dados enviados são válidos.
- Gravar os dados recebidos em uma tabela Z.
- Buscar o centro de custo aprovador e o email do solicitante no sistema IBMS.
- Submeter o registro para aprovação via workflow.
- Gerar os documentos de solicitação de adiantamento que foram aprovados pelo WF.
- Devolver o log de processamento (aprovado ou reprovado) para o legado.

Macro Fluxo do Programa

28
SM 256 – 09.12.2015:
Inclusão da verificação do Master Deal de Corte:

Criar um parâmetro na TVARV para informar o Master Deal de Corte.


Se o Master Deal enviado no arquivo (campo Titulo) for menor do que o Master Deal cadastrado na TVARV, não
deverá ser considerado. Se for maior ou igual, continuar o processamento.

Verificar se o registro já existe no sistema


Para cada registro enviado no arquivo, selecionar dados da tabela temporária onde:
Sistema Origem = “IBMS” e
Título = campo Título.

Se não encontrar, indica que é um documento novo.

Campo Conteúdo
Status “01” (Enviado para aprovação)
Tipo de Processamento Vazio
Mensagem “Enviado para aprovação”

Neste caso, efetuar a verificação dos dados:

Selecionar o centro de custo aprovador


Para identificar o centro de custo aprovador, a função deverá realizar uma conexão, via proxy, com o IBMS:

Dados para Conexão Owner: remote_sap


Senha: sap_rem0t3
Instância: SLAVE
Tabela: VW_MASTER_DEAL
Parâmetros de Importação Master Deal (campo Título)
Centro de Custo Aprovador (REQUEST_ORDER_REF)
Parâmetros de Exportação
Email Solicitante

Exemplo para seleção do centro de custo na view do IBMS:

select REQUEST_ORDER_REF from MASTER_DEAL where MASTER_DEAL_CODE = '<codigo do master deal>'

Verificar se o centro de custo aprovador é válido


Se campo Centro de Custo Aprovador não puder ser determinado, gravar os dados na tabela temporária:

Campo Conteúdo
Status “09” (Erro)
Tipo de Processamento Vazio
Mensagem “Centro de Custo Aprovador não identificado”

Se estiver preenchido, verificar se o centro de custo informado é válido.


Selecionar o centro de custo (KOSTL) da tabela CSKS onde:
Centro de Custo (KOSTL) = campo Centro de Custo Aprovador(10).
Se não encontrar, gravar os dados na tabela temporária:

29
Campo Conteúdo
Status “09” (Erro)
Tipo de Processamento Vazio
Mensagem “Centro de Custo Aprovador inválido”

Se encontrar, continuar o processamento.

Verificar se a empresa informada é válida


Selecionar a empresa (BUKRS) e moeda (WAERS) da tabela T001 onde:
Empresa (BUKRS) = campo Empreendimento(04).

Se não encontrar, gravar os dados na tabela temporária:

Campo Conteúdo
Status “09” (Erro)
Tipo de Processamento Vazio
Mensagem “Empresa não cadastrada”

Se encontrar, continuar o processamento.

Verificar se a fornecedor informado é válido


Selecionar o fornecedor (LIFNR) da tabela LFB1 onde:
Fornecedor (LIFNR) = campo Fornecedor e
Empresa (BUKRS) = campo Empreendimento (04).

Se não encontrar, gravar os dados na tabela temporária:

Campo Conteúdo
Status “09” (Erro)
Tipo de Processamento Vazio
Mensagem “Fornecedor não cadastrado”

Se encontrar, continuar o processamento.

Verificar se a moeda informada é válida


Selecionar a moeda (WAERS) da tabela TCURC onde:
Moeda (WAERS) = campo Moeda.

Se não encontrar, gravar os dados na tabela temporária:

Campo Conteúdo
Status “09” (Erro)
Tipo de Processamento Vazio
Mensagem “Moeda não cadastrada”

Se encontrar, continuar o processamento.

Efetuar a conversão, no caso de moeda estrangeira


Se o campo Moeda for diferente da moeda cadastrada na empresa, deverá ser efetuada a conversão para a moeda
interna para identificação dos aprovadores.
30
Se campo Moeda for diferente da moeda da empresa (T001-WAERS), efetuar a conversão da moeda estrangeira
para a moeda interna, utilizando a função CONVERT_FOREIGN_TO_FOREIGN_CUR, com os seguintes parâmetros:

DATE: data do dia do processamento


TYPE_OF_RATE: “M”
FROM_AMOUNT: campo Valor CT + Valor CV
FROM_CURRENCY: campo Moeda
TO_CURRENCY: T001-WAERS
LOCAL_CURRENCY: T001-WAERS

Gravar o valor convertido no campo Valor MD da tabela temporária.

Importante:
O valor a ser considerando para a conversão é a soma dos campos Valor (CT) e Valor (CV) de todos os registros
com o mesmo nro de Master Deal (campo Título).

Se encontrar o documento na tabela temporária, indica que pode ser uma modificação de vencimento, desbloqueio
da parcela, renegociação ou vencimento, neste caso, os dados da tabela precisam ser atualizados.

O campo-chave que identifica as parcelas é o campo Identificador da Parcela. Para cada Identificador da Parcela
enviado no arquivo, verificar se existe o registro na tabela temporária.

Verificar se houve alteração dos seguintes dados:


 Data de Pagamento/Data de Vencimento
 Valor CT e/ou Valor CV
 Qtde de Parcelas

Cancelamento
Os documentos de cancelamento não devem ser submetidos ao WF.
Se o campo Valor (CT) estiver zerado, indica que o registro é um registro de cancelamento. Neste caso, gravar os
dados na tabela temporária:

Campo Conteúdo
Status “05” (Sem WF)
Tipo de Processamento “10” (Cancelamento)
Mensagem “Documento de cancelamento”

Se possuir valor, continuar o processamento.

Alteração do Valor e/ou Qtde de Parcela


Se os campos Valor CT ou Valor CV sofrerem alteração, deverão ser submetidos ao WF. Neste caso, gravar os
dados na tabela temporária:

Campo Conteúdo
Status “01” (Enviado para Aprovação)
Tipo de Processamento “05” (Renegociação)
Mensagem “Documento enviado para aprovação”

31
Se a quantidade de parcelas foi alterada para maior (a chave para identificação é o campo Identificador da
Parcela), o programa deverá alterar as parcelas existentes e criar o registro da nova parcela. Neste caso, gravar
os dados na tabela temporária:

Campo Conteúdo
Status “01” (Enviado para Aprovação)
Tipo de Processamento “05” (Renegociação)
Mensagem “Documento enviado para aprovação”
Se a qtde de parcelas foi alterada para menor (a chave para identificação é o campo Identificador da Parcela), o
programa deverá alterar as parcelas existentes (alterando o campo Status da tabela temporária das parcelas para
“01”) e alterar o status da parcela remanescente para “05”.

Campo Conteúdo
Status “01” (Enviado para Aprovação) ou “05” (Sem WF)
Tipo de Processamento “05” (Renegociação) ou “10” (Cancelamento)
Mensagem “Documento enviado para aprovação”
Data Atualização Data da atualização
Hora Atualização Hora da atualização

Senão, continuar o processamento.

Alteração do Vencimento e Desbloqueio de Pagamento


A alteração da data de vencimento e o desbloqueio do pagamento não devem ser submetidos ao WF.
Se o campo Data de Vencimento enviado pelo legado for diferente da data de vencimento da tabela, o campo
Status receberá o valor “05” e o campo Tipo de Processamento receberá o valor “04”.

Campo Conteúdo
Status “05” (Sem WF)
Tipo de Processamento “04” (Alteração do Vencimento)
Mensagem “Alteração do documento”

Se for igual, verificar se o campo Invoice estiver preenchido, o campo Status receberá o valor “05” e o campo Tipo
de Processamento receberá o valor “03”.

Campo Conteúdo
Status “05” (Sem WF)
Tipo de Processamento “03” (Desbloqueio para Pagamento)
Mensagem “Alteração do documento”

Importante:
Os documentos de permuta (ZY) não devem ter o código de bloqueio alterado.

Senão, continuar o processamento.

32
Para os registros com erros (Status 09), deverá ser enviado um email para o solicitante, informando que o registro
apresentou inconsistência:

Conteúdo do email do solicitante

Sr. Solicitante

Foram encontradas inconsistências durante o processamento do Master Deal <MASTERDEAL>


no SAP. Favor analisar para providências de correção e reenvio.

<Conteúdo do campo Mensagem da tabela temporária>

O email do solicitante está cadastrado na tabela temporária (EMAIL SOLICITANTE).


Gravar os dados na tabela temporária (para os registros com status 01 e 09):

Campo Conteúdo
Sistema Origem “IBMS”
Título (Conteúdo enviado no arquivo)
Identificador da parcela (Conteúdo enviado no arquivo)
Estabelecimento (Conteúdo enviado no arquivo)
Fornecedor (Conteúdo enviado no arquivo)
Station (Conteúdo enviado no arquivo)
Sequencial da parcela (Conteúdo enviado no arquivo)
Data da Emissão (Conteúdo enviado no arquivo)
Data de Pagamento (Conteúdo enviado no arquivo)
Tipo de Fluxo (Conteúdo enviado no arquivo)
Unidade de Negócio (Conteúdo enviado no arquivo)
Moeda (Conteúdo enviado no arquivo)
Tipo de Imposto (Conteúdo enviado no arquivo)
Alíquota do Imposto (Conteúdo enviado no arquivo)
Espécie (CT) (Conteúdo enviado no arquivo)
Valor (CT) (Conteúdo enviado no arquivo)
Espécie (CV) (Conteúdo enviado no arquivo)
Valor (CV) (Conteúdo enviado no arquivo)
Deal (Conteúdo enviado no arquivo)
Invoice (Conteúdo enviado no arquivo)
Elemento PEP (Conteúdo enviado no arquivo)
Status Lógica do Status
Centro de Custo Aprovador Obtido na conexão IBMS
Aprovador Branco
Empresa SAP Branco
Doc SAP Branco
Exercício SAP Branco
Tipo Processamento Lógica do Tipo de Processamento
Mensagem Lógica do Tipo de Processamento
Data Atualização SY-DATUM
Hora Atualização SY-UZEIT

33
Criação da solicitação de adiantamento após aprovação via workflow
O programa deverá criar os documentos de solicitação de adiantamento somente dos registros que possuírem status
“02” (Aprovado). A criação da solicitação de adiantamento deverá seguir a lógica atualmente definida na interface
FIN_I_006 (função ZFIFUN0006):

Criação
Verifica se o MasterDeal já foi criado. O MasterDeal fica gravado no campo Referência.

Renegociação
Verifica se existe modificação da quantidade de parcelas ou dos valores. Sendo diferentes, o documento anterior
é estornado e criado um novo.

Lógica para Determinar Cod. Razão Especial


Selecionar o Cod RzE (LOW) da TVARVC onde:
Tipo de Fluxo (NAME) = Tipo de Fluxo enviado na interface.

Para criar um adiantamento utilizando a bapi é necessário preencher a estrutura EXTENSION1:

Se Fornecedor (campo 03) estiver preenchido:


EXTENSION1-FIELD1(3) = “001”

EXTENSION1-FIELD2(1) = TVARVC-LOW
EXTENSION1-FIELD2+1(1) = “F”
EXTENSION1-FIELD2+2(1) = “S”.
EXTENSION1-FIELD2+3(2) = “39”

SM 256 – 09.12.2015:
Inclusão do campo Elemento PEP no layout do arquivo IBMS

Lógica para incluir Elemento PEP na linha do fornecedor


Para incluir o Elemento PEP utilizando a bapi é necessário preencher a estrutura EXTENSION1:

Utilizar a função CONVERSION_EXIT_ABPSP_INPUT para obter o código interno do Elemento PEP

CALL FUNCTION 'CONVERSION_EXIT_ABPSP_INPUT'


EXPORTING
input = Elemento PEP enviado no arquivo
IMPORTING
output = v_pspnr.

EXTENSION1-FIELD1(3) = “001”

EXTENSION1-FIELD2(15) = v_pspnr

Ajustar a BTE RWBAPI01 (função ZSAMPLE_INTERFACE_RWBAPI01):

MAC_ASSIGN_VALUE ' PS_PSP_PNR ' WS_EXTENSION-FIELD IT_ACCIT-PS_PSP_PNR LV_ PS_PSP_PNR.

34
No preenchimento da bapi, para criação da solicitação de adiantamento, incluir os campos Deal e Tipo de Fluxo
no mapeamento (rever o mapeamento):

Tabela Temporária Estrutura de Destino


BAPIACHE09 (DOCUMENTHEADER) – Dados de Cabeçalho
Tabela de Parâmetros BAPIACHE09 DOC_TYPE
Cálculo Qtde Parcela BAPIACHE09 HEADER_TXT
07.Data Emissão BAPIACHE09 DOC_DATE
07.Data Emissão BAPIACHE09 PSTNG_DATE
05.Titulo BAPIACHE09 REF_DOC_NO
02.Estabelecimento BAPIACHE09 COMP_CODE
BAPIACAP09 (ACCOUNTPAYABLE) – Dados Fornecedor
Nro seq. conforme qtde de linhas BAPIACAP09 ITEMNO_ACC
03.Fornecedor BAPIACAP09 VENDOR_NO
18.Deal BAPIACAP09 ITEM_TEXT
Fixo “I” BAPIACAP09 PMNTTRMS
Logica BAPIACAP09 PMNT_BLOCK
08.Data Pagamento BAPIACAP09 BLINE_DATE
01.Identificador Parcela BAPIACAP09 ALLOC_NMBR
19.Invoice BAPIACAP09 REF_KEY_3
09.Tipo de Fluxo BAPIACAP09 REF_KEY_2
10.Unidade de Negócio BAPIACAP09 PROFIT_CTR
BAPIACCR09 (CURRENCYAMOUNT) – Dados de Montante
Nro seq. conforme qtde de linhas BAPIACCR09 ITEMNO_ACC
Fixo “00” BAPIACCR09 CURR_TYPE
15.Valor CT ou
BAPIACCR09 AMT_DOCCUR
17. Valor CV
11.Moeda BAPIACCR09 CURRENCY
Cálculo Taxa Câmbio BAPIACCR09 EXCH_RATE
BAPIACWT09 (ACCOUNTWT) – Dados de Imposto IRF
LFBW-WITHT BAPIACWT09 WT_TYPE
LFBW-WT_WITHCD BAPIACWT09 WT_CODE
Fixo “X” BAPIACWT09 BAS_AMT_IND
Fixo “0.00” BAPIACWT09 BAS_AMT_TC
Fixo “0.00” BAPIACWT09 BAS_AMT_LC
Fixo “X” BAPIACWT09 MAN_AMT_IND
Fixo “0.00” BAPIACWT09 MAN_AMT_TC
Fixo “0.00” BAPIACWT09 MAN_AMT_LC
BAPIACEXTC (EXTENSION1) – Dados Extension1
Lógica BAPIACEXTC FIELD1
Lógica BAPIACEXTC FIELD2

Cancelamento
O programa deverá estornar os documentos de solicitação de adiantamento somente dos registros que possuírem
Status “05” e Tipo de Processamento “10”. O estorno dos documentos cancelados deverá seguir a lógica atualmente
definida na interface FIN_I_006 (função ZFIFUN0006):

Cancelamento
Verifica se o Valor está zerado. Se estiver, estorna os documentos criados no SAP, via batch input na transação
FB08.

35
Alteração da data de vencimento ou desbloqueio para pagamento
O programa deverá alterar a data de vencimento ou código do bloqueio somente dos registros que possuírem Status
“05” e Tipo de Processamento “03” ou “04”. A alteração do vencimento ou do bloqueio deverá seguir a lógica
atualmente definida na interface FIN_I_006 (função ZFIFUN0006):

Alteração do Vencimento
Verifica se a data de vencimento enviada é diferente da data de vencimento do documento. Sendo diferente, o
documento SAP é atualizado, via batch input na transação FB09.

Desbloqueio
Verifica se a parcela foi liberada, através do campo Invoice. Se liberado, é retirado o código de bloqueio do
documento, via batch input na transação FB09.

Após a criação e/ou alteração dos documentos, atualizar o status da tabela temporária e enviar o log de
processamento com êxito:

Campo Conteúdo
Status “04” (Finalizado)
Empresa SAP Empresa do documento SAP
Doc SAP Nro do documento SAP
Exercício SAP Exercício do documento SAP
Mensagem “Documento SAP criado/atualizado com sucesso”

Se apresentou erro na criação, alteração ou estorno dos documentos SAP, atualizar o status da tabela temporária e
enviar o log de processamento de erro. No caso de apresentar mais de um erro, concatenar as mensagens para gravar
na tabela temporária, separados por “;”:

Campo Conteúdo
Status “09” (Erro)
Empresa SAP Branco ou com o nro do documento SAP, se houver
Doc SAP Branco ou com o nro do documento SAP, se houver
Exercício SAP Branco ou com o nro do documento SAP, se houver
Mensagem Mensagem de erro

Tratamento de Erros e Log de Processamento


Deverão ser enviados para o legado IBMS, o arquivo com o log de processamento (Aprovado ou Reprovado)
encontrados durante a execução desta interface.

Documentos concluídos com sucesso (Status 04) – Gravar na pasta Log de Processamento
Gerar um arquivo .txt, separado por tabulador (TAB), com o seguinte layout:

Nomenclatura: Aprovacao MD <Master Deal>_AAAAMMDDHHMMSSS.txt


Campo Conteúdo
Código Master Deal Campo Titulo
ERP Status Fixo “1” (Aprovado)

36
Reprovação do Master Deal (Status 03) – Gravar na pasta Log de Erro
Gerar um arquivo .txt, separado por tabulador (TAB), com o seguinte layout:

Nomenclatura: Reprovacao MD <Master Deal>_AAAAMMDDHHMMSSS.txt


Campo Conteúdo
Código Master Deal Campo Titulo
ERP Status Fixo “0” (Reprovado)

Erros encontrados (Status 09) – Gravar na pasta Log de Erro


Gerar um arquivo .txt, separado por tabulador (TAB), com o seguinte layout:

Nomenclatura: Reprovacao MD <Master Deal>_AAAAMMDDHHMMSSS.txt


Campo Conteúdo
Código Master Deal Campo Titulo
ERP Status Fixo “0” (Reprovado)

Definições PO:
As definições de PO serão as mesmas definidas no documento FIN_I_006.

Após receber os dados do IBMS, o PO deverá mapear os campos conforme o layout IBMS x PO x SAP e gravar os
dados na tabela temporária.

O PO deverá identificar qual o legado que está enviado o arquivo e informar no campo sourceApplicationName da
função inbound “IBMS”.

Ao receber o log de processamento, retornar ao legado IBMS, conforme diretórios abaixo (estes não foram
alterados):

Nomenclatura do Arquivo
O arquivo gerado pelo IBMS será em formato TXT, com a seguinte nomenclatura:
EXPPAYMNTAAAAMMDD_ HHMMSSS<Nro Master Deal>.txt

Diretório
Arquivo Inbound
O arquivo TXT será disponibilizado pelo IBMS no diretório:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\processar
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\processar

Arquivo Processado
Após o processamento do arquivo, o PO deverá transferir o arquivo da pasta “processar” para a pasta “processado”:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\processado
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\ processado

Log de Processamento
Os logs de processamento retornados pela função inbound SAP, deverão ser gravados no diretório:
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\logs
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\logs

Log de Erro
Havendo erro no retorno do processamento, o log deverá ser gravado no diretório:
37
QAS: \\globosat.net.bf\dfs\Prod\IBMS\HOMOLOGACAO\SAP\Inbound\Exportpagamento\erro
PRD: \\globosat.net.bf\dfs\Prod\IBMS\INTERFACE\ SAP\Inbound\Exportpagamento\erro

Informações Adicionais (DEVEM SER PREENCHIDOS PARA O CORRETO FUNCIONAMENTO DA INTERFACE):

Parâmetros da TVARV (Transação STVARV):

P/S Parâmetro Conteúdo


P ZFI_IBMS_MDCUTOVER MD de Corte
P ACCOUNTING_CONTA_TRANS 0091300002
P IBMS_FORNEC_RECEITA 1400007161
P ZIBMS_DIRETORIO_ERRO /dev/IBMS/Inbound/FIN_I_006/erro
P ZIBMS_DIRETORIO_LOG /dev/IBMS/Inbound/FIN_I_006/logs
S ZFI_IBMS_WITHT Z1
P ZFI_CONTABIL_ADTO_BSART ZMED
P ZFI_CONTABIL_ADTO_EKGRP COG
P 2020.201 O
P 2020.202 N
P 2021.203 Q
P 2021.204 R
P 2021.205 S
P 2021.206 T
P ZFI_IBMS_EMAIL

Tabela ZFITAB0005 (Transação

Interface Tp Processamento Tp Doc Cond. Pagto


IBMS 01 – Criação da Partida CT 0001
IBMS 05 – Renegociação CT 0001
IBMS 07 – Permuta ZY ZPER
IBMS 08 – Lançamento de Impostos CV 0001
SCD 02 – Transferência CT 0001
SCD 06 – Amortização CT 0001
SCD 09 – Provisão CT 0001

38
EVENTOS (WORKFLOW)
Não se aplica.

TELA DE SELEÇÃO (RELATÓRIO)


Não se aplica.

LAYOUT SAÍDA (Relatório)

Título do Relatório
Não se aplica.

LAYOUT SAÍDA (Formulário)

Título do Formulário
Não se aplica.

LAYOUT SAÍDA (Arquivos)

Título do Arquivo
Não se aplica.

39
Condições de Teste

Informações para Teste

Cenário Critério de Seleção Resultado Esperado


1 Criar adiantamento a fornecedor Documento contabilizado com sucesso
Transação F-47
Empresa 1000
Fornecedor: 300010
Data do documento: 11.06.2015
Data do lançamento: 11.06.2015
Tipo de documento: CT
Moeda: BRL
Razão Especial (RzE): A
Montante: 2000,00
Bloqueio de Pagamento: I
Vencimento: 30.07.2015
Atribuição: 1234444
Texto do Item: adto IBMS
2 Criar fatura de fornecedor Documento contabilizado com sucesso
Transação FB60
Empresa 1000
Fornecedor: 300010
Data do documento: 11.06.2015
Data do lançamento: 11.06.2015
Tipo de documento: CT
Bloqueio de Pagamento: I
Moeda: BRL
Conta contábil: 11601005
Montante: 2000,00
Vencimento: 30.07.2015
Atribuição: 1234444
Texto do Item: fatura IBMS
3 Exibir documento Documento exibido com sucesso
Transação FB03
Nº do documento: 1900000001
Empresa: 1000
Exercício: 2015
4 Estorno de documento contábil Documento estornado com sucesso
Transação FB08
Nº do documento: 1900000001
Empresa: 1000
Exercício: 2015
Motivo estorno: 01

40
Informações para Teste – Interface (SM 166)

Cenário Critério de Seleção Resultado Esperado


SOURCE_APPLICATION_NAME IBMS
ALLOC_NMBR 000249994
COMP_CODE 1000
VENDOR 1400009999
REF_DOC_NO 33999
ALLOC_NMBR2 000000002
DOC_DATE 20150911
BLINE_DATE 20150925
1
PROFIT_CTR 01CL.00024
CURRENCY USD
DOC_TYPE CT
AMT_DOCCUR 00000005000.00
INVOICE teste notificacao invoice
ESPECIE_CV CV
VALOR_CV 00000000882.35
DEAL 080489
SOURCE_APPLICATION_NAME IBMS
ALLOC_NMBR 000249995
COMP_CODE 1000
VENDOR 1400009999
REF_DOC_NO 33888
ALLOC_NMBR2 000000002
DOC_DATE 20150911
BLINE_DATE 20150925
2
PROFIT_CTR 01CL.00024
CURRENCY USD
DOC_TYPE CT
AMT_DOCCUR 00000005000.00
INVOICE teste notificacao invoice
ESPECIE_CV CV
VALOR_CV 00000000882.35
DEAL 080489

Informações para Teste – Workflow (SM 166)

Cenário Critério de Seleção Resultado Esperado


Criar Adiantamento (Aprovação)
Transação: SBWP Solicitação de Adiantamento criada e bloqueada para
pagamento (código de bloqueio I).
1
MasterDeal: 33999 Envio do log de processamento com o documento criado.
Aprovar Envio do email ao solicitante informando a aprovação.

Criar Adiantamento (Reprovação)


Transação: SBWP
Solicitação de Adiantamento não criada.
2 Envio do log de processamento com a reprovação.
MasterDeal: 33888
Envio do email ao solicitante informando a reprovação.
Reprovar

41
Histórico do Documento

Autor e Participantes
Nome Função

Validação da Fábrica
Nome Função
Leonardo Barbosa Líder ABAP

Histórico de Revisão
Data Versão Descrição da revisão Autor

19/06/2015 1.0 Criação do Documento Leandro Bessa


Ajuste no fluxo IBMS, tamanho dos campos do
22/06/2015 2.0 Fabiana Nakanishi
layout e inclusão do cenário de permuta
25/06/2015 3.0 Ajuste para contabilização do imposto (CT) Fabiana Nakanishi
20/07/2015 4.0 Ajuste para inclusão do adiantamento Fabiana Nakanishi
20/10/2015 5.0 Ajuste para tratamento do cancelamento (SM 188) Fabiana Nakanishi
03/11/2015 6.0 Alteração para WF Aprovação Master Deal (SM166) Fabiana Nakanishi
09/11/2015 7.0 Inclusão do Elemento PEP na interface (SM 256) Fabiana Nakanishi

Revisado e Aprovado por


Nome Função Data Assinatura

Leonardo Barbosa Líder ABAP


Fabiana Nakanishi Consultor FI
Ricardo Benedette Líder Finanças e Contabilidade
Jefferson Barbosa Key-User
Paulo Machado Key-User
Aníbal Souza Key-User
Eduardo Pinheiro Key-User
Erika Leon Líder IBMS
Fernanda Athayde Líder IBMS
Raquel Nery Líder Globosat
Suely Proença Gerente SAP
Davi Campos Gerente Globosat

Versão Elaborado por Data Revisado por Data

1.0 Leandro Bessa 19/06/2015 Jefferson Barbosa 26/06/2015

42

You might also like