Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

INFORMAÇÕES DE BASE:

Versão Cliente:12.1.27Banco:
  •  PROGRESS 10
  •  PROGRESS 11
  •  ORACLE
  •  SQL
Versão Interna:

12.1.25


...


SITUAÇÃO

Temos o seguinte cenário:

Exemplo: Transportadora esta localizada na cidade de São Paulo, mas, coletou e entregou na cidade na cidade de Guarulhos, com isso, gerando  gerando uma nota fiscal de serviço para Guarulhos e um titulo a pagar de ISS para o fornecedor informado no parâmetro MV_MUNIC.

Problema: O Titulo a pagar de ISS foi gerado para o fornecedor informado no parâmetro MV_MUNIC, porem  porem este fornecedor é para o município de São Paulo (onde esta localizada a transportadora), o Sistema não esta acatando o fornecedor informado no campo A1_MUNC ou mesmo fornecedor informado no cadastro de alíquotas por município (FISA052).

RESULTADO ESPERADO

Gerar o titulo de ISS para o fornecedor informado no campo A1_MUNC .e/ou também conforme o fornecedor informado no cadastro de alíquotas por município (FISA052)


...


Procedimento/Programa de Acerto?
  •  Sim
  •  Não
<Descrever a necessidade do cliente>

...

SIMULAÇÃO
Cod ProgramaAção
Documentação

Encontramos nesta documentação, uma proposta de solução: https://tdn.totvs.com/pages/releaseview.action?pageId=6070579

..."Caso haja necessidade do pagamento a mais de um município por cliente ou fornecedor, deve-se utilizar o campo A1_MUNIC"....

1º ERRO: Esta solução não atende devido a regra definida no fonte FINXFIN de 29/04/21 - linha 9927 - If Empty(cMVMUNIC) .and. !Empty(SA1→A1_MUNC)

Solução proposta: O Sistema deveria considerar como prioridade para esta situação, o campo A1_MUNC, se ele estiver preenchido, acata ele, e desconsidera o MV_MUNIC. Não podemos deixar o parâmetro em branco, pois ele é utilizado em outras situações.

Obs: Na documentação citada, temos um erro de digitação. Não existe o campo A1_MUNIC, o correto é A1_MUNC.

FISA052

Cadastro de alíquotas por município - TABELA CE1
Esta solução também não atende devido a falha de posicionamento do Sistema na tabela SC5, onde estamos posicionando incorretamente no primeiro registro da tabela e acatando o código de município (C5_MUNPRES) e UF daquele registro que não tem nenhum vinculo com o processo aqui realizado, desta forma, não encontramos a regra cadastrada na CE1.

FINXFIN

Nos testes realizados em debugue, alteramos em tempo de execução o conteúdo da variável cMVMUNIC para vazio, desta forma, simulamos o cenário desejado para ser acatado o conteúdo do campo A1_MUNC na linha 9927 de 29/04/21.

Porem, ao continuar o processo, temos error de registro duplicado na tabela SA2. 

O error log ocorre devido ao If na linha 10767. Analisando o conteúdo das variáveis e campos, identificamos diferença de tamanho entre os campos A2_COD e A1_MUNC. Quando o conteúdo da variável vem do cMVMUNIC, não temos error log e também não entramos no If.

Vídeo do Debugue em base padrão

Debugue do FINXFIN

View file
nameFINXFIN.zip
height250

Vídeo e Replay na base do cliente

View file
nameReplay Cliente.zip
height250

Para mais detalhes: TDS Replay 1.0

Replay base padrão

Replay gerado em base padrão na reprodução do caso

View file
namereplay_20210707_150022_without_lib.trplay
height250

Vídeo de evidência

Vídeo realizado em base padrão evidenciando o caso do cliente

View file
nameCalculo.zip
height250

Tabelas TMS DoR:

SX6 -
DT6 -
SD2 -
SE1 -
SE2 -
SA2 -
SA1 -
DTC -
SF4 -
SED -
SB1 -
SC5 -
CE1 -
SF2 -

View file
nameTabelas ISS.zip
height250

Tabelas extraídas nos testes realizados no padrão

Passo a passo:

Para reproduzir o caso:

  • MV_TMSMFAT = 1
  • Importar ou realizar os cadastros de acordo com as Naturezas, produto, TES e as demais tabelas enviadas
  • Gerar uma nota fiscal de serviço
  • Validar o registro gerado na SE2


...


Informações para Situações não Simulada

...