Ir para o conteúdo principal

OS 102526 - OBRIGAÇÃO - RECEBIMENTO REVENDA - ADAPTAÇÃO RECEBIMENTO DECOR - REFORMA TRIBUTARIA - UTILIZAR RECEBIMENTO TRADICIONAL COMO MODELO

Objetivo:

A correção implementada visa garantir que,a após o ajuste de controle de concorrência na gravaçadaptação dedo anexosRecebimento Decor (modelo do Lançamentorecebimento Préviotradicional) de Nota Fiscal, o sistemapara impedeconsiderar queos umnovos mesmoimpostos código de arquivoIBSS/CBS seja atribuído aem requisiçõesduas simultâneasrotinas, garantindo que cada anexo permaneça vinculado exclusivamente à sua respectiva prévia, mesmo quando usuários distintos realizam o upload no mesmo instante.
:

Situação reportada.

    1. Recebimento via XML (Importar XML)

    2. Recebimento manual (Inserir)

    Confirmando que:

    • FoiOs identificadocampos/abas que,dos emnovos situaçõesimpostos específicasestão disponíveis na tela de consulta do item.

    • Os valores de concorrênciabase, alíquota e valor de usuáriosCBS / IBS UF / IBS Mun / IBS Total, o sistemalidos estavado atribuindoXML (quando informados) e ogravados mesmocorretamente.

      código
    • de
    • arquivo

      No arecebimento anexosmanual, enviadosos simultaneamentepercentuais em lançamentos prévios distintos, ocasionandoseguem a vinculaçparametrização incorretado demódulo documentosFiscal. e os valores são calculados/gravadados conforme a base informada.

    • NessesA casos,“situação umreportada” arquivo anexado por um usuário em determinada prévia de nota fiscal era indevidamente associado à prévia de outro usuário, inclusive(ex.: não pertencentetotalizar aona mesmonota fornecedor.
      A/ ocorrêinconsistência estava relacionada a, requisições de upload executadas no mesmo instante (mesmo milissegundo)gravação/tela, gerando sobreposição na numeração do arquivo e comprometendo a integridade referencial dos anexos.

      Para correção,) foi implementadoatendida umno controledesenvolvimento de concorrência na geração do código de anexo, garantindo que cada requisição receba uma numeração única, mesmo quando processada simultaneamente, evitando assim a mistura de anexos entre lançamentos prévios diferentes.final.

       

Premissas:

  • Necessário o ambiente estar atualizado com as versões:
    • Recebimento de número 129811XXXXX Genexus 17 ou superior;
    • Script com a versão de número 129812 ou superior.
  • Necessário ter a opção de lançamento prévio habilitado.

Teste realizado após a atualização

Cenário 01 — Recebimento via XML (Upload simultâneo+ deImportar anexosXML) emlendo/gravar préviasnovos diferentes (concorrência de usuários)impostos

Finalidade:Passo a passo
Validar

que,
  1. Acessar: Corporativo > Configuração empresa > Parâmetro recebimento (editar na UOP que fará o recebimento).

    • Na aba orçamento/diretório, informar o diretório para arquivos XML.

    Resultado esperado: diretório salvo e válido.

  2. Acessar: Recebimento Revenda > Upload de XML.

    • Clicar em situaçãAdicionar arquivos, selecionar o XML e Confirmar.

    Resultado esperado: upload concluído com sucesso e arquivo copiado para a pasta parametrizada.

  3. Editar o XML e incluir/ajustar o bloco IBSCBS (conforme dados de concorrênciateste acima).

    Resultado esperado: XML consistente e pronto para importação.

  4. Acessar: Recebimento > Nota fiscal: Revenda (requisiçõesImportar simultâneas),XML).

    o
      sistema
    • gera

      Informar a numeraçãochave únicae depressionar arquivoTAB para cadacarregar.

      anexo
    • Preencher campos obrigatórios.

    • Garantir que a nota esteja vinculada a uma OC compatível (tipo de pagamento igual ao da OC).

    Resultado esperado: itens do XML são carregados e mantémaparecem apara integridadeseleção.

    entre
  5. prévia
  6. Selecionar o item do XML e documentoclicar anexadoem Próxima.

    Pré-requisitos:Resultado esperado: item relacionado com sucesso e avanço para rateio.

  7. Informar/editar o Rateio do item (base de cálculo e confirmar).

    Resultado esperado (ponto principal):

    • AmbienteOs devalores testeslidos atualizadodo comXML opara ajustevBC, final.pCBS, vCBS, pIBSUF/vIBSUF, pIBSMun/vIBSMun e vIBS aparecem corretamente no rateio/aba correspondente.

    • DoisNão usuáriosocorre distintoserro (Usuáriode Avalidação.

  8. Clicar em Próxima e UsuárioFinalizar B).o recebimento.

    Resultado esperado: NF gerada com sucesso.

  9. AcessoConsultar aoa módulonota e Recebimentoconsultar >o Lançamento Prévio Nota Fiscalitem.

    image.png

    Resultado

    image.pngesperado: existe nova aba no item exibindo os novos impostos (IBS/CBS) com os mesmos valores do XML.

  10. DuasValidar préviasno distintas,banco:

    preferencialmente
    • Executar:

      • Select * from NOTRATT where NfeNro = <numero_da_nota>

    Resultado esperado: registros gravados para a NF, contendo os valores de IBS/CBS de acordo com o XML.


fornecedoresCenário diferentes02 — Recebimento manual (Inserir) calculando novos impostos pela parametrização Fiscal.

Evidências esperadas

  • Print Inserir NF e confirmação

  • UsoPrint/SQL deda umOC mecanismoencontrada

    de
  • interceptaç
  • Print geração de requisiçõesetiquetas para(quando liberaçnecessário)

  • Print Rateio com base informada

  • Print Aba novos impostos e totalização

    simultânea.
  • SQL NOTRATT com valores calculados/gravadados

Passo a passo:passo

  1. Acessar o móduloAcessar: LançamentoRecebimento Prévio> Nota Fiscalfiscal: Revenda (Inserir).

    • Preencher campos obrigatórios e clicar em Confirmar.

    Resultado esperado: NF em edição criada com sucesso.

  2. Localizar OC (script informado):


    Select B.CloDsc as 'Coleção', A.PedNro as 'Ordem de compra', A.PedUopCod as 'UOP', A.PedPagCod as 'Condição Usuáriode pagamento' from pedcabe A join colecao B on B.CloCod = A.PedCloCod where PedDtaEmi >= '2025-12-01 00:00:00.000' and PedStsCod = 'A' order by B.CloCod

    Resultado esperado: OC elegível encontrada (anotar PedNro e condição de pagamento).

  3. EmSe outraos sessãitens o (guiacarregarem:

    anônima
      ou
    • navegador

      Acessar: separado),Compras acessarRevenda > Gerar etiquetas a partir da OC

    • Filtrar pela OC e clicar em Gerar etiquetas.

    Resultado esperado: etiquetas geradas e, ao retornar/atualizar o mesmorecebimento, móduloitens compassam a carregar.

  4. Voltar ao recebimento e atualizar a tela.

    • Informar quantidade entregue, selecionar o item e clicar em Próxima.

    Resultado esperado: item relacionado e segue para rateio.

  5. Editar o UsuárioRateio Bpendente:

    • Informar o código da base de cálculo

    • Informar o valor base para cálculo dos novos impostos

    • Confirmar

    Resultado esperado (ponto principal):

    • As alíquotas aplicadas para IBS/CBS seguem a parametrização do Fiscal (regra informada).

    • PeloOs Usuáriovalores A,calculados selecionarsão consistentes com a préviabase informada.

  6. Avançar para a próxima etapa onde existe a aba dos novos impostos.

    • Validar se a nota Xtotaliza automaticamente os novos impostos.

    • Caso o sistema exija preenchimento manual do total, informar o valor solicitado e abrirfinalizar.

    Resultado esperado (verificação da situação reportada):

    • Se a telacorreção foi entregue: a aba deve totalizar corretamente e a NF deve finalizar sem ajustes manuais indevidos.

    • Se ainda existir regra de digitação total: o sistema deve ao menos Anexosvalidar e gravar corretamente o que foi informado, sem divergência na consulta e no banco.

  7. Finalizar o recebimento.

    Resultado esperado: NF gerada com sucesso.

  8. Consultar NF e item (nova aba).

    Resultado esperado: valores dos novos impostos exibidos na aba do item e coerentes com cálculo.

  9. Validar no banco:

    • Select * from NOTRATT where NfeNro = <numero_da_nota>

    Resultado esperado: valores IBS/CBS gravados para a NF manual, conforme base e parametrização.


Cenário 03 — Regressão: Recebimento via XML sem bloco IBSCBS (compatibilidade)

Passo a passo (alto nível)

  1. Usar um XML válido sem o bloco IBSCBS.

  2. PeloImportar Usuário B, selecionar a prévia Y (diferente da X)normalmente e abrirfinalizar a tela de Anexos.

    image.png

  3. Em ambas as sessões, clicar em Upload e selecionar arquivos distintos para cada prévia.

  4. Ajustar o tipo do anexo (quando aplicável), sem confirmar em nenhuma das telas.

    image.png

  5. Clicar em Confirmar no ambiente do Usuário A e, em seguida, em Confirmar no ambiente do Usuário B simultaneamente.
  6. Retornar à tela de anexos da prévia X.
  7. Retornar à tela de anexos da prévia Y.

    image.pngNF.

Resultado esperado:

  • A prévia X apresenta somente Importação arquivoe anexadorecebimento peloocorrem Usuáriosem A.erro.

  • AAba prévianova (se exibida) deve mostrar Yzeros/vazio apresentaou somentecomportamento padrão arquivo anexado pelo Usuário B.definido.

  • Não ocorredeve misturagravar ou duplicidade de anexos entre prévias.

  • Cada anexo recebe numeração distinta, mesmolixo/inconsistência em concorrência.

  • O sistema não apresenta erro de integridade ou inconsistência de dados.NOTRATT.


Cenário 0204Upload simultâneo por fluxos diferentes (Anexos da NF × Edição do Lançamento Prévio)

Finalidade:
Garantir que o controle de concorrência funcione corretamente independente do fluxo de anexação utilizado.

Pré-requisitos:

  • Mesmo ambiente e usuários do Cenário 01.

  • Duas prévias distintas disponíveis para teste.

  • Uso de mecanismo de interceptaçValidação de requisiçõesconsistência: paradivergência simulaçãointencional deentre concorrência.

    base
  • e
valores (XML)

Passo a passo:passo (alto nível)

  1. ComNo oXML, Usuárioinformar A,vBC=7405,00 acessarmas acolocar préviavCBS Xincoerente ecom abrirpCBS os(ex.: anexos5% peloporém popup/lista de anexos da Nota FiscalvCBS=100,00).

  2. Com o Usuário B, acessar a prévia YImportar e abriravançar osaté anexos pela tela de edição do lançamento prévio.

  3. Selecionar arquivos diferentes em cada fluxo e deixar ambos prontos para confirmação.

    image.png

  4. Clicar em Confirmar no fluxo do Usuário A e Clicar em Confirmar no fluxo do Usuário B simultaneamte.

    image.png


  5. Aguardar o processamento e retornar às telas do sistema.
  6. Validar os anexos da prévia X.

  7. Validar os anexos da prévia Y.

    image.pngrateio.

Resultado esperado:

  • CadaSistema préviadeve mantémalertar/validar apenasdivergência os(se anexosexistir inseridosregra), em seu respectivo fluxo.ou

  • NãoPermitir ocorreseguir reaproveitamentomas demanter código/numeração de arquivo.

  • Os dois fluxos concluemconsistência com sucesso, sem erro ou sobreposição deque dados.

    o
  • XML
  • trouxe

    O(e comportamentogravar atendeigual), aoconforme ajusteregra implementadofuncional definida para controlea de concorrência.rotina.

Este cenário serve para confirmar “o que prevalece”: valores do XML ou recalcular — e garantir que a implementação esteja estável.

4.png

ATENÇÃO: As informações neste documento são meramente ilustrativas e utilizadas apenas para fins de teste.