Ir para conteúdo
  • Cadastre-se

Andre Rosa

Membros
  • Total de ítens

    283
  • Registro em

  • Última visita

Tudo que Andre Rosa postou

  1. Olá, Após atualizar o ACBr pelo SVN, fui tentar compilar meu projeto e recebi o erro: Unit ACBrPAF was compiled with a different version of ACBrAAC.TACBrAAC Vocês podem me informar como posso resolver? Obrigado.
  2. Vou dar uma olhada sim. Eu estava assinando perfeitamente com a DLL da Bematech (sign_bema.dll), e, inclusive, passava no validador da própria DLL. Ontem, realizando os testes, não consegui validar através do eECFc. Segui todos os procedimentos documentados neste, mas mesmo assim nada. Tentei também pelo ACBr, no entanto, também não valida. Será que o problema é com minhas chaves privada e publica? Obg.
  3. Use arquivos de configuração (arquivos INI), contendo o endereço de IP e o caminho do arquivo FDB.
  4. Caro Isaque, Já consegui validar meu arquivo sem erros. Bom, só pra concluir, eu não queria ter de usar DLL para assinar este arquivo. Teria como assina-lo com o ACBrEAD, assim como os arquivos do ACBrECF e do ACBrPAF? Obrigado, André.
  5. Peguei o exemplo do ACBr. Bem, a estrutura dele está correta, no entanto, há vários erros nas informações. Os erros: http://i51.tinypic.com/wv375s.jpg Estou gerando os blocos 0, C, H e 1. Alguém pode me ajudar? Só falta esse arquivo para eu terminar o meu menu fiscal. Obrigado.
  6. Aqui está: GerarDadosBloco('0'); GerarDadosBloco('C'); GerarDadosBloco('G'); GerarDadosBloco('H'); GerarDadosBloco('9'); Obrigado.
  7. Elton, Adicionei o registro G na rotina: else if pBloco = 'G' then begin with ACBrSpedFiscal.Bloco_G do begin with RegistroG001New do begin IND_MOV:= imSemDados; end; with RegistroG990 do QTD_LIN_G:= 0; AcbrSpedFiscal.WriteBloco_G; end; end E o chamei na hora de gerar, conforme estou fazendo com os outros blocos, no entanto, exatamente o mesmo erro persiste. Obrigado.
  8. Essas atualizações já foram incorporadas nos repositórios do SVN do ACBr? Se eu atualizar via SVN já as terei? Obrigado.
  9. Poderia nos informar que parâmetros eram esses? Obrigado.
  10. Boa tarde! Estou com uma rotina de teste para gerar o arquivo SPED para o item "Vendas do Período", do PAF-ECF. Mas a estrutura deste sequer passa pelo validador. O validador emite a seguinte mensagem: Mensagem: Registro encontrado é diferente do registro esperado. Campo: 1 - REG Valor Calculado: G001 Conteúdo do Campo: H001 Registro: H001 e pelo exemplo do ACBr eu consigo ter a estrutura do arquivo validada, no entanto, tenho problemas com a UNIDADE. A minha rotina é essa: procedure TfrmMenuFiscal.GerarDadosBloco(pBloco: String); var Int1, Int2, Notas : Integer; aTotalICMS : Double; begin aTotalICMS := 0; if pBloco = '0' then begin with ACBrSpedFiscal.Bloco_0 do begin // informações da Empresa with Registro0000New do begin DT_INI:= edtDe.Date; DT_FIN:= edtAte.Date; COD_VER := vlVersao103; COD_FIN := raOriginal; NOME := 'RAZAO SOCIAL DO INFORMANTE'; CNPJ := ''; CPF := '12345678901'; // Deve ser uma informação valida UF := 'RJ'; IE := '0000000000'; COD_MUN := 12345678; IM := ''; SUFRAMA := ''; IND_PERFIL := pfPerfilA; IND_ATIV := atOutros; ACBrSpedFiscal.IniciaGeracao; end; with Registro0001New do begin IND_MOV := imComDados; // informações complementares da Empresa with Registro0005New do begin FANTASIA := 'NOME FANTASSIA DA EMPRESA'; CEP := '21000000'; ENDERECO := 'RUA PRINCIPAL'; NUM := 'S/N'; COMPL := ''; BAIRRO := 'CENTRO'; FONE := ''; FAX := ''; EMAIL := '[email protected]'; end; // informações da contabilidade. with Registro0100New do begin NOME := 'NOME DO CONTADOR'; CPF := '12345678900'; // Deve ser uma informação valida CRC := '123456'; CNPJ := ''; CEP := ''; ENDERECO := ''; NUM := ''; COMPL := ''; BAIRRO := ''; FONE := ''; FAX := ''; EMAIL := ''; COD_MUN := 3200607; end; // Clientes with Registro0150New do begin COD_PART := '000001'; NOME := 'RAZAO SOCIAL DO CLIENTE'; COD_PAIS := '001'; CNPJ := '12345678000123'; CPF := ''; IE := ''; COD_MUN := 1; SUFRAMA := ''; ENDERECO := 'ENDERECO'; NUM := ''; COMPL := 'COMPL'; BAIRRO := 'BAIRRO'; end; with Registro0190New do begin UNID := 'UN'; DESCR := 'Descricao unidade'; end; for Int1 := 1 to 6 do begin if not Registro0200.LocalizaRegistro(IntToStrZero(Int1,6)) then begin with Registro0200New do begin COD_ITEM := IntToStrZero(Int1,6); DESCR_ITEM := 'DESCRIÇÃO DO ITEM '+IntToStrZero(Int1,6); COD_BARRA := IntToStrZero(Int1,13); COD_ANT_ITEM := ''; UNID_INV := 'UN'; TIPO_ITEM := tiMercadoriaRevenda; COD_NCM := ''; EX_IPI := ''; COD_GEN := ''; COD_LST := ''; ALIQ_ICMS := 18; end; end; end; end; end; end else if pBloco = 'C' then begin Notas := StrToInt64Def('123',1); with ACBrSpedFiscal.Bloco_C do begin with RegistroC001New do begin IND_MOV := imComDados; // for Int1 := 1 to Notas do begin with RegistroC100New do begin COD_PART := '000001'; IND_EMIT := edEmissaoPropria; IND_OPER := tpEntradaAquisicao; COD_MOD := '01'; COD_SIT := sdRegular; SER := ''; NUM_DOC := IntToStrZero(Int1,6); CHV_NFE := ''; DT_DOC := Date(); DT_E_S := Date(); VL_DOC := 0; IND_PGTO := tpSemPagamento; VL_DESC := 0; VL_ABAT_NT := 0; VL_MERC := 0; IND_FRT := tfSemCobrancaFrete; VL_SEG := 0; VL_OUT_DA := 0; VL_BC_ICMS := 0; VL_ICMS := 0; VL_BC_ICMS_ST := 0; VL_ICMS_ST := 0; VL_IPI := 0; VL_PIS := 0; VL_COFINS := 0; VL_PIS_ST := 0; VL_COFINS_ST := 0; //c170 for Int2 := 1 to 6 do begin with RegistroC170New do //Inicio Adicionar os Itens: begin NUM_ITEM := IntToStrZero(Int2,3); COD_ITEM := IntToStrZero(Int2,6); DESCR_COMPL := 'Descricao do item '+IntToStrZero(Int2,6); QTD := 1; UNID := 'UN'; VL_ITEM := 10; VL_DESC := 0; IND_MOV := mfNao; CST_ICMS := '000'; CFOP := '5102'; COD_NAT := ''; VL_BC_ICMS := 10; ALIQ_ICMS := 18; VL_ICMS := 1.8; VL_BC_ICMS_ST := 0; ALIQ_ST := 0; VL_ICMS_ST := 0; IND_APUR := iaMensal; CST_IPI := ipiEntradaIsenta; COD_ENQ := ''; VL_BC_IPI := 0; ALIQ_IPI := 0; VL_IPI := 0; CST_PIS := pisOutrasOperacoes; VL_BC_PIS := 0; ALIQ_PIS_PERC := 0; QUANT_BC_PIS := 0; ALIQ_PIS_R := 0; VL_PIS := 0; CST_COFINS := cofinsOutrasOperacoes; VL_BC_COFINS := 0; ALIQ_COFINS_PERC := 0; QUANT_BC_COFINS := 0; ALIQ_COFINS_R := 0; VL_COFINS := 0; COD_CTA := '000'; end; end; //c190 with RegistroC190New do begin CST_ICMS := '000'; CFOP := '5102'; ALIQ_ICMS := 18; VL_OPR := 60; VL_BC_ICMS := 60; VL_ICMS := 10.8; VL_BC_ICMS_ST := 0; VL_ICMS_ST := 0; VL_RED_BC := 0; VL_IPI := 0; COD_OBS := ''; end; aTotalICMS := aTotalICMS + 10.8; end; end; end; end; end else if pBloco = 'D' then begin with ACBrSpedFiscal.Bloco_D do begin with RegistroD001New do begin IND_MOV := imSemDados; end; end; end else if pBloco = 'E' then begin with ACBrSpedFiscal.Bloco_E do begin with RegistroE001New do begin IND_MOV := imComDados; with RegistroE100New do begin DT_INI := edtDe.Date; DT_FIN := edtAte.Date; AcbrSpedFiscal.IniciaGeracao; end; with RegistroE110New do begin VL_TOT_DEBITOS := aTotalICMS; VL_AJ_DEBITOS := 0; VL_TOT_AJ_DEBITOS := 0; VL_ESTORNOS_CRED := 0; VL_TOT_CREDITOS := 0; VL_AJ_CREDITOS := 0; VL_TOT_AJ_CREDITOS := 0; VL_ESTORNOS_DEB := 0; VL_SLD_CREDOR_ANT := 0; VL_SLD_APURADO := aTotalICMS; VL_TOT_DED := 0; VL_ICMS_RECOLHER := aTotalICMS; VL_SLD_CREDOR_TRANSPORTAR := 0; DEB_ESP := 0; end; end; end; end else if pBloco = 'H' then begin with ACBrSpedFiscal.Bloco_H do begin with RegistroH001New do begin IND_MOV := imComDados; // with RegistroH005New do begin DT_INV := Date; VL_INV := 1000; // FILHO for Int1 := 1 to 6 do begin with RegistroH010New do begin COD_ITEM := IntToStrZero(Int1,6); UNID := 'UN'; QTD := 1; VL_UNIT := 100; VL_ITEM := 100; IND_PROP := piInformante; COD_PART := ''; TXT_COMPL := ''; COD_CTA := '123'; end; end; end; end; end; end else if pBloco = '1' then begin with ACBrSpedFiscal.Bloco_1 do begin with Registro1001New do begin IND_MOV := imSemDados; end; end; end else if pBloco = '9' then begin ACBrSPEDFiscal.WriteBloco_9; end end; Alguém, por favor, poderia me ajudar a concluir esse requisito? Obrigado, André Rosa. []'s
  11. segui à risca o exemplo do ACBr, e consegui validar.
  12. Olá, Eu estou fazendo o seguinte: with ACBrPAF.PAF_D do begin RegistroD1.UF := RegEmpresa.Estado; RegistroD1.CNPJ := RegEmpresa.CGC; RegistroD1.IE := RegEmpresa.InscEstadual; RegistroD1.IM := InscMuni; RegistroD1.RAZAOSOCIAL := RegEmpresa.Nm_Empresa; while not Query.Eof do begin with RegistroD2.New do begin CPF_CNPJ := '17337047000148'; NUM_FAB := '12345'; //CompletaEspacos(FieldByName('ECF_NUMERO_FABRICACAO').AsString, 20); MF_ADICIONAL:= 'a'; //FieldByName('MF_ADICIONAL').AsString; TIPO_ECF := 'xxxx';//FieldByName('').AsString; MARCA_ECF := 'xxxx';//FieldByName('').AsString; MODELO_ECF := 'xxxx';//FieldByName('MODELO_ECF').AsString; COO := '000365';//FieldByName('COO').AsString; NUM_DAV := 'xxxx';//FieldByName('NUM_DAV').AsString; DT_DAV := StrToDateTime('10/10/10');//FieldByName('DATAHORA').AsDateTime; TIT_DAV := 'Orçamento';//FieldByName('PED_ORC_VENDA').AsString; VLT_DAV := StrToCurr('123,45');//FieldByName('').AsCurrency; COO_DFV := '000365';//FieldByName('').AsString; NUMERO_ECF := '321';//FieldByName('NUM_DAV').AsString;; NOME_CLIENTE:= 'ANDRE';//FieldByName('NM_CLIENTE').AsString; Next; end; end; with RegistroD2.New.RegistroD3.New do begin DT_INCLUSAO:= StrToDateTime('10/10/2010');//FieldByName('DATAHORA').AsDateTime; NUM_ITEM := 321; COD_ITEM := 'xx'; DESC_ITEM:= 'xx'; QTDE_ITEM:= 1234567; UNI_ITEM := '123'; VL_UNIT := 12345678; VL_ACRES := 12345678; VL_TOTAL := StrToCurr('123,45'); IND_CANC := 'S'; VL_DESCTO:= StrToCurr('123,45'); end; with RegistroD9 do begin TOT_REG_D2:= 0; TOT_REG_D3:= 0; end; end; E estou recebendo um erro do validador que diz o seguinte: Validando Arquivo... ERRO 001: LIN 2 [Comprimento de Linha inválido] | Esperado 212 | Encontrado: 204 O arquivo é esse: ALLguém poderia me ajudar, por favor? Obrigado! Ah, e não há nenhum DAV em meu banco da dados.
  13. Olá, Eu ainda não possuo nenhum DAV no banco de dados, mas, no entanto, quero deixar a rotina pronta, para poder homolagar. Estou recebendo dois erros ao validar. São eles: Bem, estou utilizando o ACBr, e a minha rotina é esta: with Query do begin Active:= False; SQL.Clear; SQL.Add('Select a.*, b.* from PEDIDO a'); SQL.Add('join ECF_EMITIDO b on a.id_local = b.id_pedido'); SQL.Add('where b.DATAHORA between :de and :ate'); SQL.Add('and PED_ORC_VENDA = ''O'''); ParamByName('de').AsDate := edtDe.Date; ParamByName('ate').AsDate := edtAte.Date; if not Prepared then Prepare; Active:= True; First; if RecordCount < 1 then begin Informa('Sem operação no período.'); // Exit; end; if not Prepared then Prepare; Active:= True; with ACBrPAF.PAF_D do begin RegistroD1.UF := RegEmpresa.Estado; RegistroD1.CNPJ := CompletaEspacos(RegEmpresa.CGC, 14); RegistroD1.IE := CompletaEspacos(RegEmpresa.InscEstadual, 14); RegistroD1.IM := CompletaEspacos(InscMuni, 14); RegistroD1.RAZAOSOCIAL := CompletaEspacos(RegEmpresa.Nm_Empresa, 50); while not Query.Eof do begin with RegistroD2.New do begin CPF_CNPJ := '17337047000148'; NUM_FAB := CompletaEspacos('12345', 20); MF_ADICIONAL:= 'a'; TIPO_ECF := CompletaEspacos('xxxx', 7); MARCA_ECF := CompletaEspacos('xxxx', 20); MODELO_ECF := CompletaEspacos('xxxx', 20); COO := CompletaEspacos('000365', 6); NUM_DAV := CompletaEspacos('xxxx', 13); DT_DAV := StrToDateTime('10/10/10'); TIT_DAV := CompletaEspacos('xxxx', 20); VLT_DAV := StrToCurr('12345678'); COO_DFV := CompletaEspacos('000365', 6); NUMERO_ECF := '321'; NOME_CLIENTE:= CompletaEspacos('ANDRE', 40); CPF_CNPJ := '17337047000148'; Next; end; end; with RegistroD2.New.RegistroD3.New do begin DT_INCLUSAO:= StrToDateTime('10/10/10'); NUM_ITEM:= 321; COD_ITEM:= CompletaEspacos('xx', 14); DESC_ITEM:= CompletaEspacos ('xx', 100); QTDE_ITEM:= 1234567; UNI_ITEM:= '123'; VL_UNIT:= 12345678; VL_ACRES:= 12345678; VL_TOTAL:= 11111111111111; end; with RegistroD9 do begin TOT_REG_D2:= 0; TOT_REG_D3:= 0; end; end; end; O arquivo gerado é este: Alguém, por favor, pode me dizer onde estou errando? Ah, já removi também as funções CompletaEspacos(), mas o erro é o mesmo. Obrigado.
  14. Muito obrigado, Ramon. Dúvida esclarecida.
  15. Sim, existem validadores para os arquivos, no entanto, os que pude encontrar são feitos por terceiros, e estão sujeitos a esterem desatualizados, com relação ao roteiro. Para o Sintegra e o SPED (Vendas do Período) você encontra os validadores legimos nos seus respectivos sites oficiais.
  16. Olá, eu estava analisando o ATO COTEPE, anexo III (DAVs Emitidos), e, de acordo com o que é pedido, notei que o ACBr não abrange todos os campos do mesmo. No Registro D9, por exemplo, falta o campo referente ao CNPJ/MF. No Registro D2, falta o campo referente ao número do DAV. Bem, atualizei o ACBr hoje, e continua faltando. Estes dados podem interferir na homologação? Alguém tem o código fonte alterado? Obg, André.
  17. Olá, No menu fiscal do PAF-ECF, estou a utilizar os seguintes botões, de acordo com o Roteiro Versão 1.6 – junho/2011 Aplicável à versão 01.08 da ER-PAF-ECF (Aprovado pela COTEPE/ICMS em junho/2011). Estes botões são: - Leitura X - L. Mem. Fisc. Comp. - L. Mem. Fisc. Simp. - Espelho MFD - Arquivo MFD - Tabela de Produtos - Identificação do PAF-ECF - Estoque - Movimento por ECF - Meios de Pagamento - Vendas no Período - DAV Emitidos - Tab. Indíce Tec. Prod. - Parâmetros de Configuração Enfim, são so esses, ou há mais? Abs.
  18. De acordo com o roteiro, me deparei com estes dois campos: O que são "Tipos de Documento"; E quando um meio de pagamento pode ser não fiscal. O que vêm a ser cada um destes? Obrigado, André Rosa.
  19. Então, eu estou - ainda - trabalhando no arq. do DAV EMITIDOS, e estou com uma certa dúvida. O que seria o campo TIPO_ECF ? NUM_FAB := FieldByName('ECF_NUMSERIE').AsString; TIPO_ECF := '...'; //O que seria este campo? MODELO_ECF := FieldByName('ECF_MODELO').AsString; COO := FieldByName('ECF_COO').AsInteger; NUM_DAV := FieldByName('DAV').AsInteger; NUMERO_ECF := FieldByName('NUM_DOCUMENTO').AsInteger; NOME_CLIENTE := FieldByName('NM_CLIENTE').AsString; CPF_CNPJ := FieldByName('CPF').AsString; Obg, André Rosa.
  20. Olá, markapollo. Ele continuou obedecendo as propriedades gráficas. Mais alguma sugestão? Obg.
  21. Olá, Eu estou tentando definir via código o path e o nome do arquivo a ser gerado através do componente ACBrSPED. No entanto, não funciona. Só funciona os parâmetros definidos visualmente pela paleta de propriedades. Faço dessa forma: AcbrSpedFiscal.Path:= DiretorioDoExecutavel; ACBrSpedFiscal.Arquivo:= 'meuArquivo.txt'; Mas ele obedece a propriedade visual. Alguém têm esse mesmo problema? Já reenstalei o componente e nada. Obg.
  22. Li e reli o trecho no roteiro que se refere à Identificação do PAF-ECF. Parece estar tudo certo. Alguém poderia confirmar, por gentileza? Obg.
  23. Pronto! Acho que consegui. Alguém poderia dizer se meu arquivo está 100%, por favor? XXXXXXXXXXX XXXXXXXXXXXX RUA TAL TAL,NUMERO CIDADE T 19/07/2011 15:37:33 GNF:000056 GRG: 000052 CER: ------------------------------------------------ NÃO É DOCUMENTO FISCAL RELATÓRIO GERENCIAL Gerencial X ================================================ LAUDO NÚMERO: UFG0002011 ================================================ EMPRESA DESENVOLVEDORA ------------------------------------------------ CNPJ........: 00.000.000/0000-00 Razao Social: RozaoSocialOk Endereco....: Rua tal tal Cidade/UF...: São José do vale do Rio Preto/RJ CEP:........: 25780-000 Telefone....: 2222-0000 Contato.....: NomeDoContato (já foi corrigido) IDENTIFICACAO DO PAF-ECF ------------------------------------------------ Nome Comerc.: PDV Versao......: 10.12.3 Princ. Exec.: PDV.exe MD5.........: d167mddev9b3a0s1e9839eeec7dc29ca OUTROS AQUIVOS UTILIZADOS ------------------------------------------------ sign_bema.dll: MD5: 1fbbfbf2bec44924b44d9b29274dd3d1 fbclient.dll: MD5: 56872b7ae8ceb607b17e5a6e76b47cd9 ARQ. LISTA AUTENTICADOS: Autenticados.txt MD5: 9860FE278186117120CB99798847311D Relação de número de fabricação dos ECF autorizados para funcionar com este PAF-ECF: DR0610BR000000205507 VERSÃO DA ER PAF-ECF ------------------------------------------------ Versão da ER PAF-ECF: 1.6 - Junho/2011 Nº Fabricação ECFs Autorizados: ------------------------------------------------ Daruma FS-700M ECF-IF Versão: 010100 ECF: 001 LJ: 001 EEEEEEEEEDFDGDHB 19/07/2011 15:15:39 FAB: DR0610BR000000205507 É isso mesmo?
  24. Mas qual deve ser o conteúdo deste arquivo? Digo, o que seriam estes arquivos autenticados? Vou ter que gera-lo também? Pode me explicar melhor o que deve ser feito? Obrigado a todos. André, o ACBr já esta bem automatizado para isso, basta alimentar as informações, olhe o Demo e estude os seguintes componentes: ACBrAAC Requisito IX, será gerado através do ACBrPAF_N Menu Fiscal "Identificação do Paf", use ACBrECF.PafMF_RelIdentificacaoPafECF(ACBrAAC.IdentPAF); A união desse conjunto, lhe dará a maior automatização e controle, que o ACBr pode lhe oferecer até o momento. Abs Oi, Izaque. Então, mas com o: ACBrECF.PafMF_RelIdentificacaoPafECF(ACBrAAC.IdentPAF); ele imprime direto na impressora Fiscal. A questão é ao gerar o arquivo. Alguém poderia me ajudar, por favor? Abs, André.
×
×
  • 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.