Professional Documents
Culture Documents
Ef - Revisão J1btax - Cálculo Difal v5 - Ajuste Erro PRD 22012021
Ef - Revisão J1btax - Cálculo Difal v5 - Ajuste Erro PRD 22012021
Projeto
EF_Demandas R2P –
REVISÃO J1BTAX –
CALCULO DIFAL
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 2
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
SPECIFICATION
General Information
Specification Code
Specification Description EF_Demandas R2P – Revisão J1BTAX – Cálculo DIFAL
Creation Date
Process MM – Criação/Modificação de Documentos de Compras
Process Responsible
Functional Responsible MM Team
Technical Responsible ABAP Team
Priority Média
Complexity Média
Effort Estimation
Activity Time Estimation (hours)
Functional Specification
Technical Documentation
ABAP Development
Testing Components
User Manual
Total excluding Functional
Specification
Development Approval
User: Signature: Date:
Modification Log
Date Change Version Requested By Modified By Time Estimation
(hs)
Operational Considerations
Transaction Code
Program Type
Program Name
Process Type
Frequency
Estimate Volume
Functional Specification
1. Objetivo
2. Process Flow
N/A
A SAP para atender esse item Legal disponibilizou métodos técnicos que foram
entregues pelas notas SAP:
2394557 – DIFAL: BAdI for Recalculation of Base Value in Incoming Process for
Consumption Goods or Assets
2408576 – DIFAL: BAdI for Recalculation – TAXBRA Calculation Procedure
2408577 – DIFAL: BAdI for Recalculation – TAXBRJ Calculation Procedure
2414116 – DIFAL: ICMS DIFAL Tax Rate Is Being Calculated Wrongly
As condições dentro do esquema que serão afetadas serão BX30, BX31 e BX32 essas
são condições que estão ligadas diretamente com o DIFAL (Base, Valor ..etc. ), essas
por sim desdobram os valores para as condições de impostos usadas pelo modelo
standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P, YCOP,ICOT, IC1X).
Será criada uma transação Z onde serão carregados parâmetros usados para o cálculo
do novo modelo de DIFAL, essa transação deverá ser de uso do time fiscal LDC.
CONSTRUÇÃO
Deverão ser criadas tabelas de parâmetros por ambiente e acessadas por transação Z
que deverão ser ajustados os perfis de acesso para inserir esses novos acessos ao time
de recebimento fiscal/ tributário, onde todas deverão ter log de registros
(usuário/data/hora):
A – Cadastro de NBM:
(Z_NBM)
Para essa tabela deverá existir a verificação de sobre gravação de registros, não
permitindo assim também a exclusão e sim a alteração e inclusão
(Z_EXCEC_CALC)
Lógica de Exceções:
Apesar de existir uma ordem na sequência de acesso, ou seja, como o sistema começa
a fazer a leitura para cálculo, ele sempre lerá todas e se encontrado o mesmo registro
em mais de um anexo, e fará o cálculo pelo primeiro registro encontrado, porém no
momento da Fatura (MIRO) e MIGO para situações onde hajam registro de remessa
com registro de nota fiscal e IVA (exemplo Entrega Futura) ao gravar o registro será
gerada uma mensagem de informação (Warning – NCM encontrado em mais de
um anexo).
CONTROLE DA SOLUÇÃO:
A solução deverá ser executada sempre sobre parâmetros de controle pela TVARVC
(ZMM_LDC_R2P_DIFAL_BUKRS: 1001,1034, 1037) – verificação na empresa e
(ZMM_LDC_R2P_TIPDOC: ZNB, ZS, NB) – verificação do tipo de pedido de compra.
Este parâmetro estando vazio “em branco” os cálculos não devem acontecer, apenas o
modelo atual (standard) deve acontecer.
PEDIDO:
EKKO – BUKRS – EMPRESA;
FATURA:
RBKP – BUKRS - EMPRESA;
EKKN-EBELN = EKPO-EBELN;
EKKN-EBELP = EKPO-EBELP;
Recuperar o campo EKKN-AUFNR se iniciar com “6” então não permitir o cálculo
do DIFAL.
EKPO – J_1BNBM – NCM.
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor ..etc. ), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP,ICOT, IC1X).
EF_Demandas R2P 1
last updated:
0
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 11
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor ..etc. ), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP,ICOT, IC1X).
Cálculo:
EF_Demandas R2P 1
last updated:
1
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 12
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 1
last updated:
2
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 13
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Exemplo: R$ 88,00
Valor de Redução de Base de Cálculo de Origem (D) * Alíquota Interestadual
(KOMV-KBERT (BICO) (B) /100.
Observações:
Se o valor acima for igual a 0 (zero) ou negativo, então não preencher o valor da
condição BX32, apagar o valor da BX31 e apagar o valor da BX30.
EF_Demandas R2P 1
last updated:
3
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 14
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Nesse modelo será tratado de forma standard SAP, ou seja, como é feito atualmente a
diferença entre Alíquota interna de ICMS contra Alíquota Interestadual.
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor, etc.), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP, ICOT, IC1X).
Cálculo:
EF_Demandas R2P 1
last updated:
5
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 16
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Observações:
Se o valor acima for igual a 0 (zero) ou negativo, então não preencher o valor da
condição BX32, apagar o valor da BX31 e apagar o valor da BX30.
Será tratada da mesma forma que a Base Dupla, porém por se tratar de uma operação
específica do Mato Grosso, então na tabela Z_SEQ_ACESSO_CALC, estará com essa
código e descrição, e também na tabela Z_CARGA_TRIBUT o campo Alíquota estará
vazio sendo um indicador para esse Estado que será feito o cálculo com a Base Dupla.
EF_Demandas R2P 1
last updated:
6
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 17
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor ..etc. ), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP,ICOT, IC1X).
Cálculo:
EF_Demandas R2P 1
last updated:
8
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 19
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 1
last updated:
9
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 20
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Observações:
Se o valor acima for igual a 0 (zero) ou negativo, então não preencher o valor da
condição BX32, apagar o valor da BX31 e apagar o valor da BX30.
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor ..etc. ), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP,ICOT, IC1X).
Cálculo:
100 – (D%)
EF_Demandas R2P 2
last updated:
1
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 22
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Observações:
Se o valor acima for igual a 0 (zero) ou negativo, então não preencher o valor da
condição BX32, apagar o valor da BX31 e apagar o valor da BX30.
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor ..etc. ), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP,ICOT, IC1X).
Cálculo:
EF_Demandas R2P 2
last updated:
3
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 24
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Observações:
EF_Demandas R2P 2
last updated:
4
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 25
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Se o valor acima for igual a 0 (zero) ou negativo, então não preencher o valor da
condição BX32, apagar o valor da BX31 e apagar o valor da BX30.
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor ..etc. ), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP,ICOT, IC1X).
Verificações:
– Valor do Frete – Estrutura INVFO-WBBTR
- Emissor de Fatura – Estrutura INVFO-LIFRE;
EF_Demandas R2P 2
last updated:
5
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 26
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
BX30, BX31 e BX32 essas são condições que estão ligadas diretamente com o DIFAL
(Base, Valor, etc.), essas por sim desdobram os valores para as condições de impostos
usadas pelo modelo standard de processamento SAP (ICOP, ICOX, ZCOP, ZCOX, ZC1P,
YCOP, ICOT, IC1X).
Cálculo:
Observações:
Se o valor acima for igual a 0 (zero) ou negativo, então não preencher o valor da
condição BX32, apagar o valor da BX31 e apagar o valor da BX30.
CONTABILIZAÇÃO:
Não está sendo prevista nenhum tipo de adaptação para contabilização ou manutenção
no que já existe.
4. Pre-Requirements
N/A
5. Translation Table
N/A
EF_Demandas R2P 2
last updated:
7
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 28
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Responsible:
Date:
Approved by
Technical Specification
1. Objective
Adequar o cálculo do DIFAL (Diferencial de Alíquota) devido a mudanças na legislação
foi criada uma nova forma de realizar o cálculo.
2. Restriction
N/A.
EF_Demandas R2P 2
last updated:
8
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 29
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
3. Observations
N/A.
4. Generated Objects
Tables : ZBRMMT005 – cadastro NBM
EF_Demandas R2P 2
last updated:
9
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 30
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Função : ZBRMMF063
Transaction :
EF_Demandas R2P 3
last updated:
0
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 31
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
5. Class Parameters
Output Parameters
5.2
Tables
N/A.
6. Transparent Tables
Tables Description
EF_Demandas R2P 3
last updated:
1
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 32
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
7. Internal Tables
8. Used Objects
Tables :
Grupo de Função:
Função :
Programa :
Transaction :
9. Processing Logic
EF_Demandas R2P 3
last updated:
2
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 33
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Método IF_EX_BADI_J1B_DIFAL_RECALC~RECALCULATE.
EF_Demandas R2P 3
last updated:
3
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 34
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 3
last updated:
4
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 35
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 3
last updated:
5
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 36
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
da tabela zbrmmt012
onde regio igual a IS_DIFAL_RECALCULATION-shIp_to
e NFTYPE igual a <fs_rbkpv>-j_1bNFTYPE.
Se sy-subrc igual a 0.
Selecionar o(s) campo(s) (apenas o 1º registro) regio gravando em VL_shIp_from
da tabela LFA1
onde LIFNR igual a <fs_rbkpv>-LIFNR.
Fim do Se.
Fim do Se.
Checar se wa_zbrmmt012-zformula é diferente de "002".
Atribuir ("(SAPLV61A)xkomv[]") para <fs_komv>.
Atribuir ("(SAPLV61A)komp") para <fs_komP>.
Limpar wa_aufnr.
Selecionar o(s) campo(s) aufnr apenas o 1º registro gravando em wa_aufnr
da tabela ekkn
onde ebeln igual a <fs_komP>-evrtn
e ebelp igual a <fs_komP>-evrtp.
EF_Demandas R2P 3
last updated:
6
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 37
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim da seleção.
Se não wa_aufnr é inicial (=0).
Selecionar o(s) campo(s) (apenas o 1º registro) * gravando em wa_aufk
da tabela aufk
onde aufnr igual a wa_aufnr.
Fim do Se.
************************************************
Selecionar o(s) campo(s) (apenas o 1º registro) * gravando em wa_zbrmmt007
da tabela zbrmmt007
onde werks igual a wa_ekpo-werks
e knttp igual a wa_ekpo-knttp.
Se sy-subrc igual a 0.
Se wa_ekpo-knttp é diferente de "N".
Ler a tabela it_tpordem gravando em wa_tpordem com chave LOW igual a wa_aufk-
AUART com busca binária.
Se sy-subrc igual a 0.
Deslocar wa_aufnr à esquerda excluindo iniciais "0".
Ler a tabela it_rgordem gravando em wa_rgordem com chave low igual a wa_aufnr(1)
com busca binária.
Se sy-subrc igual a 0.
Limpar: CV_DIFAL_VALUE,
CV_DESTINATION_BASE_VALUE,
CV_DIFAL_RATE.
Senão.
EF_Demandas R2P 3
last updated:
7
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 38
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 3
last updated:
8
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 39
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Senão.
EF_Demandas R2P 3
last updated:
9
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 40
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do Se.
Senão.
EF_Demandas R2P 4
last updated:
0
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 41
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 4
last updated:
1
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 42
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
da tabela zbrmmt009
onde ZANEXO igual a WA_ZBRMMT005-ZANEXO
e REGIO igual a wa_zbrmmt006-REGIO.
Fim da seleção.
Fim do Se.
Se wa_zbrmmt009-zformula é diferente de "002" e
wa_zbrmmt012-zformula é diferente de "002".
Fim do Se.
EF_Demandas R2P 4
last updated:
2
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 43
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Senão.
EF_Demandas R2P 4
last updated:
3
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 44
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do Se.
Fim do Se.
Fim do Se.
Fim do Se.
Senão.
Limpar: CV_DIFAL_VALUE,
CV_DESTINATION_BASE_VALUE,
CV_DIFAL_RATE.
Fim do Se.
Senão.
Selecionar o(s) campo(s) * gravando em tabela it_ZBRMMT005
da tabela ZBRMMT005
onde steuc igual a wa_ekpo-J_1BNBM.
Se SY-SUBRC igual a 0.
EF_Demandas R2P 4
last updated:
4
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 45
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Se SY-SUBRC igual a 0.
Selecionar o(s) campo(s) * apenas o 1º registro gravando em wa_zbrmmt009
da tabela zbrmmt009
onde ZANEXO igual a WA_ZBRMMT005-ZANEXO
e REGIO igual a wa_zbrmmt006-REGIO.
Fim da seleção.
Se wa_zbrmmt009-zformula é diferente de "002" e
wa_zbrmmt012-zformula é diferente de "002".
EF_Demandas R2P 4
last updated:
5
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 46
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Se SY-SUBRC é diferente de 0.
* Implement suitable error handling here
Fim do Se.
Fim do Se.
Fim do Se.
Senão.
EF_Demandas R2P 4
last updated:
6
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 47
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
mudando
XK_VALOR igual a CV_DIFAL_VALUE
XK_BASE_DEST igual a CV_DESTINATION_BASE_VALUE
XK_DIFAL_RATE igual a CV_DIFAL_RATE
.
Se SY-SUBRC é diferente de 0.
* Implement suitable error handling here
Fim do Se.
Fim do Se.
Fim do Se.
Senão.
Se não wa_zbrmmt012-zformula é inicial (=0) e wa_zbrmmt012-zformula é diferente de
"002".
EF_Demandas R2P 4
last updated:
7
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 48
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
* EXCEPTIONS
* NOT_FOUND =1
* OTHERS =2
.
Se SY-SUBRC é diferente de 0.
* Implement suitable error handling here
Fim do Se.
Senão se wa_zbrmmt012-zformula é inicial (=0).
Se sy-subrc igual a 0.
Se wa_zbrmmt009-zformula é diferente de "002".
EF_Demandas R2P 4
last updated:
8
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 49
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do Se.
Fim do Se.
Senão.
Senão.
* nao esta na tabela de exceções
Limpar wa_ZBRMMT005.
EF_Demandas R2P 4
last updated:
9
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 50
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Se SY-SUBRC igual a 0.
Selecionar o(s) campo(s) * apenas o 1º registro gravando em wa_zbrmmt009
da tabela zbrmmt009
onde ZANEXO igual a WA_ZBRMMT005-ZANEXO
e REGIO igual a wa_zbrmmt006-REGIO.
Fim da seleção.
Se sy-subrc igual a 0.
Se wa_zbrmmt009-zformula é diferente de "002".
Chamar função "ZBRMMF063"
Exportando
XK_EKKO igual a wa_ekko
EF_Demandas R2P 5
last updated:
0
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 51
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do Se.
Senão.
EF_Demandas R2P 5
last updated:
1
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 52
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 5
last updated:
2
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 53
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Senão.
Selecionar o(s) campo(s) * apenas o 1º registro gravando em wa_zbrmmt009
da tabela zbrmmt009
onde Zanexo igual a " "
e REGIO igual a IS_DIFAL_RECALCULATION-shIp_TO.
Fim da seleção.
Se sy-subrc igual a 0.
Se wa_zbrmmt009-zformula é diferente de "002".
EF_Demandas R2P 5
last updated:
3
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 54
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do Se.
Fim do Se.
Fim do Se.
Fim do Se.
EF_Demandas R2P 5
last updated:
4
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 55
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do método.
Função ZBRMMF063
*----------------------------------------------------------------------*
* Histórico das modificações *
*----------------------------------------------------------------------*
função ZBRMMF063.
*"----------------------------------------------------------------------
*"*"Interface local:
*" IMPORTING
*" REFERENCE(XK_EKKO) TYPE EKKO
*" REFERENCE(XK_EKPO) TYPE EKPO
*" REFERENCE(XK_KOMV) TYPE TAX_XKOMV_TAB
*" REFERENCE(XK_FROM) TYPE CHAR03
*" REFERENCE(XK_TO) TYPE CHAR03
*" REFERENCE(XK_ZBRMMT005) TYPE ZBRMMT005
*" REFERENCE(XK_ZBRMMT012) TYPE ZBRMMT012
*" REFERENCE(XK_BASE) TYPE CL_J_1B_DIFAL_RECALCULATION=>MTY_TAX
*" REFERENCE(XK_TAXES) TYPE CL_J_1B_DIFAL_RECALCULATION=>MTY_TAX
*" CHANGING
*" VALUE(XK_VALOR) TYPE CL_J_1B_DIFAL_RECALCULATION=>MTY_TAX
*" VALUE(XK_BASE_DEST) TYPE CL_J_1B_DIFAL_RECALCULATION=>MTY_TAX
*" VALUE(XK_DIFAL_RATE) TYPE CL_J_1B_DIFAL_RECALCULATION=>MTY_TAX
*" EXCEPTIONS
*" NOT_FOUND
*"----------------------------------------------------------------------
Tipos : ty_komv tipo tabela padrão de komv_index."komv.
Variáveis: wa_to tipo string,
wa_zbrmmt006 tipo zbrmmt006,
wa_zbrmmt009 tipo zbrmmt009,
IT_j_1btxic1 tipo tabela de j_1btxic1,
WA_j_1btxic1 tipo j_1btxic1,
IT_j_1btxic2 tipo tabela de j_1btxic2,
WA_j_1btxic2 tipo j_1btxic2,
IT_j_1btxic3 tipo tabela de j_1btxic3,
EF_Demandas R2P 5
last updated:
5
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 56
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 5
last updated:
6
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 57
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 5
last updated:
7
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 58
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Ler a tabela it_komv gravando em wa_KOMV com chave KSCHL igual a C_Bx23 com busca
binária.
VL_OPERACAO igual a vl_operacao + WA_komv-kwert.
EF_Demandas R2P 5
last updated:
8
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 59
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Ler a tabela it_komv gravando em wa_KOMV com chave KSCHL igual a C_Bx41 com busca
binária.
VL_OPERACAO igual a vl_operacao + WA_komv-kwert.
Ler a tabela it_komv gravando em wa_KOMV com chave KSCHL igual a C_Bxpa com busca
binária.
VL_OPERACAO igual a vl_operacao + WA_komv-kwert.
*aliquota interestadual(b)
Ler a tabela it_komv gravando em wa_KOMV com chave KSCHL igual a C_Bico com busca
binária.
* if wa_komv-kawrt > 0.
* Vl_aliqinter = WA_KOMV-KBETR / wa_komv-kawrt.
* else.
Vl_aliqinter igual a WA_KOMV-KBETR.
* endif.
Senão.
Ler a tabela IT_j_1btxic3 gravando em wa_j_1btxic3 com chave land1 igual a c_BR
shipfrom igual a XK_to
shipto igual a XK_TO
GRUOP igual a C_71
com o valor igual a WA_EKPO-MATNR
com busca binária.
Se sy-subrc igual a 0.
vl_aliq_estadual igual a wa_j_1btxic3-rate.
Senão.
Ler a tabela IT_j_1btxic3 gravando em wa_j_1btxic3 com chave land1 igual a c_BR
shipfrom igual a XK_to
shipto igual a XK_TO
GRUOP igual a C_77
com o valor igual a WA_EKKO-LIFNR
com busca binária.
Se sy-subrc igual a 0.
vl_aliq_estadual igual a wa_j_1btxic3-rate.
Senão.
Ler a tabela IT_j_1btxic3 gravando em wa_j_1btxic3 com chave land1 igual a c_BR
shipfrom igual a XK_to
shipto igual a XK_TO
GRUOP igual a C_80
com o valor igual a WA_EKPO-MWSKZ
com busca binária.
Se sy-subrc igual a 0.
vl_aliq_estadual igual a wa_j_1btxic3-rate.
Senão.
Ler a tabela IT_j_1btxic2 gravando em wa_j_1btxic2 com chave land1 igual a c_BR
shipfrom igual a XK_to
EF_Demandas R2P 6
last updated:
0
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 61
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Fim do Se.
Fim do Se.
Fim do Se.
Fim do Se.
***********************************************************************************
* verificar a formula
Se XK_ZBRMMT005-ZANEXO é diferente de "X".
Se sy-tcode igual a c_miro e não XK_ZBRMMT012-ZFORMULA é inicial (=0).
wa_zbrmmt009-zformula igual a XK_ZBRMMT012-ZFORMULA.
Senão.
EF_Demandas R2P 6
last updated:
1
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 62
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Senão.
WA_ZBRMMT009-ZFORMULA igual a "003X".
Fim do Se.
Se sy-subrc igual a 0.
Caso wa_zbrmmt009-zformula.
Quando "001".
* Redução de Base de Cálculo de Origem(d)
Selecionar o(s) campo(s) (apenas o 1º registro) * gravando em wa_zbrmmt006
da tabela zbrmmt006
onde zanexo igual a XK_ZBRMMT005-zanexo
e REGIO igual a XK_from.
Se sy-subrc igual a 00.
vl_aliqinter igual a Vl_aliqinter / 10.
vl_reducbase igual a XK_BASE_DEST * ( wa_zbrmmt006-base / Vl_aliqinter ).
* vl_reducbase = vl_operacao * ( wa_zbrmmt006-base / ( Vl_aliqinter / 100 ).
Fim do Se.
* ICMS Operação Interestadual (E):
EF_Demandas R2P 6
last updated:
2
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 63
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Fim do Se.
Quando "003" ou "003X".
*ICMS Operação Interestadual (D)
* fazer alteração conforme planilha
Ler a tabela it_komv gravando em wa_KOMV com chave KSCHL igual a C_Bx13 com busca
binária.
vl_icminter igual a wa_komv-kwert.
*Valor do Custo da Operação Líquido (E):
* read table it_komv into wa_KOMV WITH KEY KSCHL = C_Basb binary search.
* vl_custliq = wa_komv-kwert.
vl_custliq igual a xk_base - xk_taxes.
* vl_custliq = VL_OPERACAO - VL_ICMINTER.
*Alíquota Interna "por dentro" (F):
EF_Demandas R2P 6
last updated:
3
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 64
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Quando "004".
* Redução de Base de Cálculo de Origem (D):
vl_operacao igual a XK_BASE_DEST.
EF_Demandas R2P 6
last updated:
4
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 65
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 6
last updated:
5
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 66
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
Quando "005".
* Diferença entre Alíquotas (D):
vl_difaliq igual a vl_aliq_estadual - ( Vl_aliqinter / 10 ).
* vl_difaliq = vl_aliq_estadual - vl_operacao.
*Carga Tributária (E):
vl_cargatrib igual a 100 - vl_difaliq.
vl_cargatrib igual a vl_cargatrib / 100.
* BC Diferencial de Alíquota (F):
vl_operacao igual a XK_BASE_DEST.
Se não vl_cargatrib é inicial (=0).
vl_bcdifaliq igual a vl_operacao / vl_cargatrib .
Senão.
vl_bcdifaliq igual a vl_operacao .
Fim do Se.
* Valor Diferencial de Alíquota (G):
vl_result igual a vl_bcdifaliq * ( vl_difaliq / 100 ).
Se vl_result é menor ou igual que 0.
XK_VALOR igual a 0. "BX31
XK_DIFAL_RATE igual a 0. "BX32"
XK_BASE_DEST igual a 0. "BX30
Senão.
xk_valor igual a vl_result.
* xk_DIFAL_RATE = vl_result.
Fim do Se.
Quando "006".
* Redução de Base de Cálculo de Origem (D):
vl_operacao igual a XK_BASE_DEST.
EF_Demandas R2P 6
last updated:
6
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 67
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
EF_Demandas R2P 6
last updated:
7
Module: Project: MM_Projeto R2P Date: 09/10/2020
MM
Autor: EF_MM Projeto R2P – Revisão Page: 68
Alexandre J1BTAX – Cálculo DIFAL
Rodrigues
ENDFUNCTION.
EF_Demandas R2P 6
last updated:
8
Module: Project: PROJECT SYNERGY Date: 12/03/2012
MM/SD
Autor: 021_ET_BR_MM_Stock Transfer Page: 69
Raquel Nieman
Request Check
Created Object Type Object Reque Dependi Description Transport Transport Transport Transport
By: st ng: to QAS Date to PRD Date
EF_Demandas R2P 6
last updated:
9
Module: Project: R2P Date: 14/09/2020
MM
Autor: Bloqueio de Documentos de Compras Page: 71
Alexandre Para Fornecedores Não Habilitados
Rodrigues
Request Check
Created Object Type Object Reque Dependi Description Transport Transport Transport Transport
By: st ng: to QAS Date to PRD Date
Attachment
1. Item
N/A.
N/A.
Quality Assurance
Responsible:
Date: 10/11/2014
Approved by SAPCC