Ir para conteúdo
  • Cadastre-se

Isaque Pinheiro

Membros
  • Total de ítens

    2.547
  • Registro em

  • Última visita

  • Days Won

    39

Tudo que Isaque Pinheiro postou

  1. Ei Claudio, filé, só faltou os metodos Create e Destroy, mas implementei em todos, já ta no SVN. Agora, assim que sobrar um tempo vou começar os Blocos_?_Class Abs
  2. Cláudio, subi suas implementações para o SVN, adicionei tb uma unit "ACBrEPCBlocos.pas", essa unit, será onde iremos implementar todos os tipos que for necessário para o SPED Pis/Cofins. Quero te agradecer, por sua imensa ajuda, não esta sobrando tempo, para mim produzir, final de ano vc sabe clientes novos, inventário, implantação de NFe, em vários clientes, pois aqui no ES não foi prorrogado para todos, enfim estou fazendo o que posso, e sua ajuda tem sido de grande valia. Vi que vai ser preciso, dar uma geral em todas as class, pois tem propriedades sem a declaração de sua variável, vc até comentou, ai eu retirei seu comentário, para gente ir acertando logo, assim agente vê os erros. Agora precisamos implementar a hierarquia, da class, o Bloco A, eu fiz e serve como exemplo, para quem puder ir ajudando, vou tentar explicar aqui como fazer a implementação, me baseando o Bloco A mesmo que já fiz: A001 - Nivel - 1 - Esse é Pai A010 - Nivel - 2 - Esse é filho do A001 A100 - Nivel - 3 - Esse é filho do A010 A110 - Nivel - 4 - Esse é filho do A100 A111 - Nivel - 4 - Esse é filho do A100 A120 - Nivel - 4 - Esse é filho do A100 A170 - Nivel - 4 - Esse é filho do A100 A990 - Nivel - 1 - Esse é Pai Exemplo: ... TRegistroA001 = class(TOpenBlocos) private FRegistroA010: TRegistroA010List; public constructor Create; virtual; /// Create destructor Destroy; override; /// Destroy property RegistroA010: TRegistroA010List read FRegistroA010 write FRegistroA010; end; ... { TRegistroA001 } constructor TRegistroA001.Create; begin FRegistroA010 := TRegistroA010List.Create; end; destructor TRegistroA001.Destroy; begin FRegistroA010.Free; inherited; end; [/code] Observer que quando o numero do nivel aumenta ele, passa a ser filho do numero menor a ele proprio. Abs
  3. Parabéns Fernando, vc faz parte tb desse sucesso que é o projeto ACBr, e fico feliz que fazer parte do seu sucesso, e dizer que não tem dinheiro nenhum que pague o reconhecimento que vc esta tendo ao ACBr. Abraço
  4. OK, amanhã vou dar uma geral e te dou um retorno. Abraço
  5. Ola Adriano, na unit ACBrEFDBlocos.pas tem o tipo TACBrVersaoLeiaute, onde podemos add, mais versões, o que temos que fazer é saber a diferença, do que já tem hoje para a nova versão e fazer um IF. vamos pegar o E113, como base então: /// Versão do leiaute do arquivo. if FBloco_0.Registro0000.COD_VER = vlVersao102 then begin Add( LFill('E113') + LFill( COD_PART ) + LFill( COD_MOD ) + LFill( SER ) + LFill( SUB ) + LFill( NUM_DOC ) + LFill( DT_DOC ) + LFill( CHV_NFE ) + LFill( COD_ITEM ) + LFill( VL_AJ_ITEM,0 )) ; end else if FBloco_0.Registro0000.COD_VER = vlVersao103 then begin Add( LFill('E113') + LFill( COD_PART ) + LFill( COD_MOD ) + LFill( SER ) + LFill( SUB ) + LFill( NUM_DOC ) + LFill( DT_DOC ) + LFill( COD_ITEM ) + LFill( VL_AJ_ITEM,0 )) ; end; end; [/code] Fiz um IF, completo, mas se alguem tiver uma idéia que de para simplificar a escrita, validando as versões, será bem vinda. Faça os ajusates e anexe as units, já com as modificações, que eu pego e subo para o SVN. Grande abraço
  6. Temos que ajustar, para que atenda as mudanças, mas que continue atendendo as versões anteriaores. Terei que fazer com tempo, se alguem se dispuser, agradeço, senão teremos que esperar eu terminar o ACBrPisCofins Desde já agradeço Abs
  7. Gutierres, obrigado pela contribuição, valeu mesmo. Abs
  8. Obrigado Elton
  9. Bem suvi para o SVN, todos os blocos, criados 0,1,A,C,D,F,M e 9. Agora gostaria de pedir a vc a ajudar para definir os registros que receberão LISTAS, para sabermos quais serão listas iremos olhar no manual e observarmos o seguinte: A coluna ocorrencia de todos os registros as seguintes opções 1 - esse não é uma lista 1:1 - esse não é lista V - esse é uma lista 1:N - esse é uma lista Blz, então os registros V e 1:N, temos que fazer a implementação deles para que sejam uma lista, vou dar um exemplo abaixo mostrando como foi implementado no RegistroA010, do bloco A: // REGISTRO A010: IDENTIFICAÇÃO DO ESTABELECIMENTO TRegistroA010 = class private fCNPJ:Integer; //02 Número de inscrição do estabelecimento no CNPJ. N 014* - public property CNPJ: Integer read FCNPJ write FCNPJ; end; /// Registro A010 - Lista TRegistroA010List = class(TObjectList) private function GetItem(Index: Integer): TRegistroA010; procedure SetItem(Index: Integer; const Value: TRegistroA010); public function New: TRegistroA010; property Items[Index]: TRegistroA010 read GetItem write SetItem; end; [/code] Simples assim, então para cada registro que a ocorrencia seja V ou 1:N, temos que fazer a implementação da lista como mostrado no RegistroA010 acima. Obs: o BLOCO A, eu já fiz Para realizar as implementações, baixem as Units dos blocos do SVN, ao implementar a lista em um bloco, reanexe-o aqui no forum que eu pego, e subo para o SVN. Após essas implementaçaões temos que implementar a hierarquia, passo seguinte do treinamento hehehehehe. Abs, e eu vou terminando o Bloco A, e implementando o componente. Abs
  10. Pessoal, vou baixar todos os blocos, e prometo que assim que puder dou um retorno, só peço por gentileza que não me cobrem isso hj, acabei de bater meu carro, nada sério, só danos materiais, o qual o seguro cobre, mas deixa agente chateado. Amanhã, volto a postar aqui alguam coisa até o final do dia. Abs Pessoal, estamos com todas as class criadas, estou dando uma lapidada, uma a uma, mas não estou conferindo se tem todos os campo ou não. Em seguida, vou passar para vcs, como implementar a hierarquia, assim que puder ir ajudando. Blocos criados: Bloco_0 Bloco_1 Bloco_A Bloco_C Bloco_D Bloco_F Bloco_M Bloco_9 Obrigado a todos
  11. Pessoal, vou baixar todos os blocos, e prometo que assim que puder dou um retorno, só peço por gentileza que não me cobrem isso hj, acabei de bater meu carro, nada sério, só danos materiais, o qual o seguro cobre, mas deixa agente chateado. Amanhã, volto a postar aqui alguam coisa até o final do dia. Abs
  12. Sim, sou muito grato Paulo pelo que já fez. Abs e boa viagem
  13. Paulo, mesmo assim temos que cria-lo, ele é um bloco de totalizações, deste componente. Abs Pela união de todos, esta saindo rapido o componente, e com varias pessoas cada um fazendo um, ficou pesado para mim, concluir sozinho todos de forma rápido, se alguem tiver interesse, posso explicar como implementar as hierarquias, vejo algo positivo nisso, pois assim vcs que estão ajudando, estão tendo uma visão geral de como funciona todos componentes SPED, e PAF, possibilitando a vcs o aprendizado de caso haja uma necessidae fazer as correções ou implementações necessárias. Se houver interesse, ao terminarmos todos os Blocos e seus registros, passo como implementar a hierarquia, fico no aguardo do retorno de interesse, em aprender. Abraço a todos a parabéns, aos que dispuseram, to seu tempo a ajudar, fiquei muito feliz com o retorno de vcs.
  14. Paulo, mesmo assim temos que cria-lo, ele é um bloco de totalizações, deste componente. Abs
  15. Opa, rapido heim, valeu. Blocos que ainda restam a ser feito: Bloco 0 (zero) Bloco D Bloco 1 Bloco 9
  16. OK, Blocos que ainda restam a ser feito: Bloco 0 (zero) Bloco D Bloco M Bloco 1 Bloco 9 Vou atualizando assim que forem, disponibilizados mais blocos.
  17. Tranquilo, vc já fez muito. Abs
  18. Opa, jóia, viu como acontece quando queremos, fico no aguardo. OBRIGADO e valeu mesmo. Abs
  19. Estou baixando agora, em seguida ao Bloco_A, irei pegar nesse. Abs
  20. Opa, MUITO BOM, parabéns, é disso que precisamos gente de iniciativa. Já baixei já estou fazendo os ajustes, em breve subo para o SVN, a class completa. VALEU Me passe seu nome para colocar na linha de crédito. Abs
  21. O Componente esta no inicio do inicio, então o que tiver ou puder me mandar já ajudar. o mais trabalhoso, porem mais facil são criar as class de cada bloco, como mostrei no ex acima. Vou dar os passos: 1o) Baixe o manual o link esta acima 2o) Crie uma Unit chamada "ACBrEPCBloco_A.pas" 3o) Vai olhando o manual os registros que o "Bloco A" tem e comece a criar as class, com as propriedades com o mesmo nome e tipo que pede o manual. O Bloco A tem os seguintes registros: A001 A010 A100 A111 A120 A170 A990 Exemplo prático, de como criar as class TRegistroA010 = class private fCNPJ: string; /// Número de inscrição do estabelecimento no CNPJ. public property CNPJ: string read FCNPJ write FCNPJ; end; [/code] Depois temos os Blocos 0, C, D, F, M, 1 e 9 Assim quando tiver alguma coisa pronta, anexe aqui, que eu pego e vou subindo para o SVN, assim todos já terão as units criadas sabendo até onde o que já foi feito. As Hierarquias, pode deixar que eu me preocupo, mas claro se alguem já mandar pronto melhor. Se cada um fizer, 1 registro de cada bloco, em uma semana já teremo o componente pronto, ou até menos. Grande Abraço
  22. Alterações : Mudanca na Estrutura para aceitar Crt. Adiconado - Nfe.Emit.CRT := crtRegimeNormal; // C21 - Código de Regime Tributário - case nfe.Emit.CRT of crtRegimeNormal, crtSimplesExcessoReceita : begin crtSimplesNacional : end; Anexo as alteracoes completas do case. Henrique, obrigado por sua colaboração, irei susbtituir a unit "pcnModeloNFe.pas", o qual se encontra na pasta PCN2, do projeto ACBr, por esta que vc nos enviou, assim todos, poderão baixa-la, e havendo alguma alteração possamos fazer nesta. Prontinho, a versão que esta no SVN, é a que vc nos enviou. Grande Abraço
  23. Para o pessoal que esteja começando, na pasta PCN e PCN2, tem um unit "pcnModeloNFe.pas", que orienta como preencher as informações das class, para gerar NFe. Como visto esta, se encontra na versão 1.0, mas que ajuda 90%, então se alguem se interessar em olhar e criar outra unit "pcnModeloNFe2.pas", seria de grande valia para todos que estão començando e até mesmo para aqueles que tenham alguma dúvida em como preencher determinada informação. Vamos la pessoal, a sua colaboração, faz a força, nós do projeto ACBr, estamos fazendo a nossa, e precisamos do apoio e força de vcs, para que a cada dia possamos ter mais qualidade a lhes oferecer. Abraço
  24. Dei inicio, ao desenvolvimento do ACBrPisCofins, meu tempos esta curso, então se alguem puder ou tiver algo já começado que possa ajudar agradeço, se cada um pegar uma class, e me mandar, rapidamente teremos o componente concluído. Ninguem precisa ter conhecimento suficiente para escrever uma class tipo isso (apenas exemplo que como pode ajudar) TRegistro0000 = class private fCOD_VER: TACBrVersaoLeiaute; /// Código da versão do leiaute: 100, 101, 102 fCOD_FIN: TACBrCodFinalidade; /// Código da finalidade do arquivo: 0 - Remessa do arquivo original / 1 - Remessa do arquivo substituto. fDT_INI: TDateTime; /// Data inicial das informações contidas no arquivo fDT_FIN: TDateTime; /// Data final das informações contidas no arquivo fNOME: String; /// Nome empresarial do contribuinte: fCNPJ: String; /// Número de inscrição do contribuinte: fCPF: String; /// Número de inscrição do contribuinte: fUF: String; /// Sigla da unidade da federação: fIE: String; /// Inscrição Estadual do contribuinte: fCOD_MUN: integer; /// Código do município do domicílio fiscal: fIM: String; /// Inscrição Municipal do contribuinte: fSUFRAMA: String; /// Número de inscrição do contribuinte: fIND_PERFIL: TACBrPerfil; /// Perfil de apresentação do arquivo fiscal: A - Perfil A / B - Perfil B / C - Perfil C fIND_ATIV: TACBrAtividade; /// Indicador de tipo de atividade: 0 - Industrial ou equiparado a industrial; 1 - Outros. public property COD_VER: TACBrVersaoLeiaute read FCOD_VER write FCOD_VER; property COD_FIN: TACBrCodFinalidade read FCOD_FIN write FCOD_FIN; property DT_INI: TDateTime read FDT_INI write FDT_INI; property DT_FIN: TDateTime read FDT_FIN write FDT_FIN; property NOME: String read FNOME write FNOME; property CNPJ: String read FCNPJ write FCNPJ; property CPF: String read FCPF write FCPF; property UF: String read FUF write FUF; property IE: String read FIE write FIE; property COD_MUN: integer read FCOD_MUN write FCOD_MUN; property IM: String read FIM write FIM; property SUFRAMA: String read FSUFRAMA write FSUFRAMA; property IND_PERFIL: TACBrPerfil read FIND_PERFIL write FIND_PERFIL; property IND_ATIV: TACBrAtividade read FIND_ATIV write FIND_ATIV; end; [/code] Já seria de grande valia, pois isso gasta tempo. Desculpem ai vai o link para baixar o manual http://www1.receita.fazenda.gov.br/sped-fiscal-pis-cofins/Minuta/ADE_Cofis_34_2010_Anexo_Unico_Minuta_Novo_Layout_EFD_PIS_COFINS_11112010.doc Abraço
  25. Olhe o fonte, procure a class C420, ela tem a propriedade de todos os seus filhos. Abs
×
×
  • 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.