Ir para conteúdo
  • Cadastre-se

dev botao

Mês e Ano de Competência - AssessorPublico


Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 149 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Não está sendo possível enviar NF com data retroativa para o Provedor AssessorPublico, nesse caso município de Agudos/SP. Isso ocorre porque mesmo informado a data de emissão retroativa (ex. 30/04/2024) nas Tags MESCOM e ANOCOMP na unit AssessorPublico.Provider.Pas na procedure abaixo, esta fixo para informar o mês e ano atual e não o informado na Data de Emissão. Que gera o erro de retorno "A data de emissão da nota está fora da competência informada." Pois a emissão fica a informada (ex. 30/04/2024) e as Tags MesCom e AnoComp 05 e 2024 respectivamente. A sugestão seria utilizar  NFSe.DataEmissao ou NFSe.Competencia para preencher as Tags MESCOMP e ANOCOMP ano invés de deixar fixo a data do sistema.

Tentei implementar isso mas ao instanciar TNFSe e recompilar o componente dá erro de compilação por não entender a referência a TNFSe, tentei também Instanciar    NotaFiscalDados := TACBrNFSeX(FAOwner).NotasFiscais.New.NFSe e assim acessar a DataEmissa e Competencia, compila corretamente mas as Tags    '<MESCOMP>' + FormatDateTime('MM', NotaFiscalDados.Emissao)  /  '<ANOCOMP>' + FormatDateTime('yyyy', NotaFiscalDados.Emissao) ficam com o padrão 30/12/1899 como se estivesse vazia.

Se alguém puder me passar como acessar essas duas propriedades DataEmissao e Competencia, eu altero o .pas.

Grato

Obs.: Modifiquei a data do sistema para 30/04/2024 (para as Tags mencionadas serem preenchidas de acordo com a data que eu queria, retroativa) e fiz a emissão, a NF foi gerada em maio/2024 corretamente com data retroativa para 04/2024, com esse teste ficou possível determinar que a alteração em AssessorPublico.Provider.Pas será eficaz.

 

Procedure em AssessorPublico.Provider.Pas

procedure TACBrNFSeProviderAssessorPublico.GerarMsgDadosEmitir(
  Response: TNFSeEmiteResponse; Params: TNFSeParamsResponse);
var
  Emitente: TEmitenteConfNFSe;
begin
  Emitente := TACBrNFSeX(FAOwner).Configuracoes.Geral.Emitente;

  with Params do
  begin
    Response.ArquivoEnvio := '<NFSE>' +
                             '<IDENTIFICACAO>' +
                             '<MESCOMP>' + FormatDateTime('MM', Now) +
                             '</MESCOMP>' +
                             '<ANOCOMP>' + FormatDateTime('yyyy', Now) +
                             '</ANOCOMP>' +
                             '<INSCRICAO>' +
                                Emitente.InscMun +
                             '</INSCRICAO>' +
                             '<VERSAO>1.00</VERSAO>' +
                           '</IDENTIFICACAO>' +
                           '<NOTAS>' +
                             Xml +
                           '</NOTAS>' +
                         '</NFSE>';
  end;
end;
 

Editado por Heber Germano
Link para o comentário
Compartilhar em outros sites

Bom dia Juliomar,

Não havia anexado os fontes pois como eu comentei não obtive sucesso em fazer funcionar, mas devia tê-los anexado assim mesmo, segue aqui, se puder dar um auxílio de como eu posso obter nessa unuit os valores das propriedades DataEmissao e Competencia seria muito útil.

Deixei os código que inclui (mas não são eficazes) comentados.

Obrigado.

AssessorPublico.Provider.pas

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

Bom dia @Heber Germano

Favor atualizar todos os fontes de todas as pastas, reinstale o ACBr e faça novos testes.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 149 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.