Ir para conteúdo
  • Cadastre-se

dev botao

Função Registro0150: Localizaregistro


  • Este tópico foi criado há 4076 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Isaque, boa tarde.

 

Depois de algum tempo sem participar do fórum, venho antes
de tudo agradecer a toda comunidade que participa deste belíssimo projeto, principalmente
a você que o idealizou bem como o disponibilizou. Parabéns!

 

Durante meus testes e desenvolvimento, tive a seguinte
necessidade. Dentro do registro0150, tabela de participantes, no SPED há a função
LocalizaRegistro(pCod_part). Função extremamente útil em meu dia-a-dia. Senti
falta da mesma no SPED PIS/COFINS, implementei-a, de maneira que, ao invés do código
do participante, a busca é feira pelo CNPJ ou CPF, alterei então a função do
SPED Fiscal, para também buscar este documento, no caso pCGCJ_CPF.

 

Esta idéia surgiu quando em alguns testes, observei
participantes duplicados no EFD, tendo em vista que uso duas tabelas, clientes
e fornecedores, o código obviamente irá repetir.

 

Então, com todo respeito e reverencia ao projeto, o que você
acha desta busca ser pelo numero do documento do participante?


Segue:

 

 

function TRegistro0150List.LocalizaRegistro(pCGC_CPF: String): boolean;
var
intFor: integer;
begin
   Result := false;
   for intFor := 0 to Self.Count - 1 do
   begin
      IF Length(pCGC_CPF)>11 then begin
         if Self.Items[intFor].CNPJ = pCGC_CPF then begin
            Result := true;
            Break;
         end;
      End else begin
         if Self.Items[intFor].CPF = pCGC_CPF then begin
            Result := true;
            Break;
         end;
      End;
 
   end;
end;
 

 


Abraço.

_____________

Prates, Agnaldo

Link para o comentário
Compartilhar em outros sites

Olá Agnaldo, obrigado pelas palavras de intensivo, vou analisar sua sugestão, se ela não afetar nenhum código interno de sistemas dos usuário, não vejo problema em ser por docto, até acho que é o ideal.

 

Anexe aqui o código alterado por você, para que eu analise.

 

Abraço

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

Agnaldo, fiz umas pequenas mudanças para que não venha eventualmente atrapalhar o código de algum usuário qye tb use essa função, beixe e veja como ficou, qualquer dúvida me fale.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...
  • Consultores

Olá Waldir,

 

  Subi sua sugestão para o Bloco H, a saber LocalizaRegistro para o registro H010. Revisão 4921.

  Mas não subi a sua sugestão para o LocalizaRegistro do registro 0150. O motivo é que o código é ambíguo. Nada me impede de ter um pCOD_PART de tamanho 11 ou 14. Por exemplo, se eu passar 12345678909 para a função, você não pode dizer que é um CPF só porque tem 11 dígitos.

  Contudo, se quiser, poderíamos criar outros métodos como LocalizaRegistroCPFCNPJ, e aí sim poderia fazer a diferenciação pelo tamanho. Mas se desejar, crie um outro tópico por favor.

  Sem mais, obrigado pela contribuição. :)

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 4076 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.