Ir para conteúdo
  • Cadastre-se

Gr@c@

Moderadores
  • Total de ítens

    2.175
  • Registro em

  • Última visita

  • Days Won

    27

Tudo que Gr@c@ postou

  1. Você está certo. No D200/D201/D205 entram somente documentos válidos.
  2. Acho que deveria ser como no registro D100 case COD_SIT of sdfRegular : strCOD_SIT := '00'; sdfExtRegular : strCOD_SIT := '01'; sdfCancelado : strCOD_SIT := '02'; sdfExtCancelado : strCOD_SIT := '03'; sdfComplementar : strCOD_SIT := '06'; sdfExtComplementar : strCOD_SIT := '07'; sdfInutilizado : strCOD_SIT := '08'; end;
  3. Quando o frete está cancelado, no registro D200 estou jogando cod_SIT = sdfCancelado, porém no arquivo texto está jogando COD_SIT = 00 quando deveria jogar 02. Analisando o registro D200 não encontrei o tratamento para sdfCancelado case COD_SIT of sdfRegular : strCOD_SIT := '00'; sdfExtRegular : strCOD_SIT := '01'; sdfComplementar : strCOD_SIT := '06'; sdfExtComplementar : strCOD_SIT := '07'; sdfInutilizado : strCOD_SIT := '08'; end; procedure TBloco_D.WriteRegistroD200(RegD010: TRegistroD010) ; var intFor : integer; strCOD_SIT : AnsiString; begin if Assigned(RegD010.RegistroD200) then begin for intFor := 0 to RegD010.RegistroD200.Count - 1 do begin with RegD010.RegistroD200.Items[intFor] do begin Check(Pos(COD_MOD, '07 08 8B 09 10 11 26 27 57') > 0, '(D-200) O Modelo do Documento "%s" é inválido!', [COD_MOD]); case COD_SIT of sdfRegular : strCOD_SIT := '00'; sdfExtRegular : strCOD_SIT := '01'; sdfComplementar : strCOD_SIT := '06'; sdfExtComplementar : strCOD_SIT := '07'; sdfInutilizado : strCOD_SIT := '08'; end; Add( LFill('D200') + LFill( COD_MOD ) + LFill( strCOD_SIT ) + LFill( SER ) + LFill( SUB ) + LFill( NUM_DOC_INI,9 ) + LFill( NUM_DOC_FIN,9 ) + LFill( CFOP,4 ) + LFill( DT_REF ) + LFill( VL_DOC,0,2 ) + LFill( VL_DESC,0,2 ) ) ; end; // Registros FILHOS WriteRegistroD201( RegD010.RegistroD200.Items[intFor] ); WriteRegistroD205( RegD010.RegistroD200.Items[intFor] ); WriteRegistroD209( RegD010.RegistroD200.Items[intFor] ); /// RegistroD990.QTD_LIN_D := RegistroD990.QTD_LIN_D + 1; end; /// Variavél para armazenar a quantidade de registro do tipo. FRegistroD200Count := FRegistroD200Count + RegD010.RegistroD200.Count; end; end;
  4. Uso: Delphi 7 Componente de conexão ADOConnection Banco de dados SQL Server 2000 ACBr versão 3593 média de CTRC ou CTe/Mes = 20.000, uma faixa de 500 a 700 fretes/dia (a partir de junho essa média vai aumentar muito porque atualmente só atendem a região de BH e Contagem, mas a empresa já fez contrato com a distribuidora para atender toda a região SUDESTE e CENTRO-OESTE Credo! )
  5. Sim, eu uso ADO com SQL Server. Ao ler os fretes, gravo uma tabela de totalização por CST/CFOP através de um componente ADOCommand. Só que esse erro só ocorre quando tenho uma movimentação muito grande de fretes. Fiz um teste, retirando essa parte da gravação da tabela. Daí passa a dar Out Of Memory. Então o problema não está no ADO, apenas ocorreu uma coincidencia de não conseguir executar o comando do ADO por já haver falta de memória. Não existe erro nos registros do banco de dados. Todos tem os mesmos campos informados, com CST / cfop válido, datas válidas e valores também válidos. Com essa mesma base de dados consigo gerar o SPED Fiscal, o que aparentemente significa que não há erro de trilha no base de dados. Percebi que os blocos C e A tem o Fechar Bloco e o D não tem. Fiz também outro teste com uma base de dados que eu mesma gerei. Também ocorre o erro. Deixando nessa base de dados uma faixa de 50 registros por dia, o erro deixa de ocorrer. ACBrSPEDPisCofins1.WriteBloco_C(True); ACBrSPEDPisCofins1.WriteBloco_A(True); A movimentação do Bloco D ( no caso da transportadora que estou tentando gerar o arquivo ) é muito grande. Poderia ser a falta do Fechar Bloco? Por que em alguns registros é usado esse parâmetro? Obs: estou gerando com concomitante e linhasbuffer = 1000. Também cheguei a pensar na possibilidade de ser o New dos registros D200/D201/D205 estou usando: With RegistroD200New do begin With RegistroD201New do begin .... end; With RegistroD205New do begin ... end; end;
  6. Ao gerar o bloco D (fretes CTRC) está dando essa exception: "O comando não está preparado" Já debuguei meu aplicativo e ele chega a gerar os registro D200,D201,D205 até o dia 21/01/2012 e depois não consegue mais. Os registros estão corretos na tabela e não estou encontrando motivo aparente para o erro. Pode ser um erro de memória ou algo parecido? Tem uma base de 500 fretes/por dia
  7. Quando dá o erro O numero de campos informado informado no registro difere do numero de campos especificado no layout o proprio PVA pede para alterar o registro através de algum editor de texto. Acho melhor deixar como está, com certeza, o PVA não está 100% pronto para Lucro Presumido já que ainda não estamos em julho. Somente fazendo esta alteração no registro 0110 eu consegui validar o arquivo com sucesso, embora seja um movimento do mês 04/2012. É uma base de dados bem completa e boa para teste, porque a empresa é um supermercado que possui lançamentos de notas de entrada diversificadas, notas de saida diversificadas, cupom fiscal (são 4 ECF´s). Também consegui validar o arquivo de uma transportadora que emite CT-e e NFeS. Na verdade, estou só fazendo uma prévia pra não deixar a coisa estourar de ultima hora. Creio que não teremos problemas com as empresas do Lucro Presumido.
  8. OK. Já detalhei lá no outro tópico. o campo IND_APRO_CRED só deve existir no Lucro real. No lucro presumido o registro 0110 é composto por 4 campos. |0110|2||1|1| ==> não valida no PVA = O numero de campos informado informado no registro difere do numero de campos especificado no layout |0110|2|1|1| ==> alterei via bloco de notas no arquivo e validou no PVA 2.0
  9. Já estou usando o PVA 2.0 para validar arquivos de Lucro Presumido. No caso, no registro 0110, o campo IND_APRO_CRED não existe (nem como vazio) Registro 0110 SPED Contribuições Lucro Presumido está gerando um campo a mais ref ao IND_APRO_CRED que só deve existir no Lucro real |0110|2||1|1| ==> não valida no PVA = O numero de campos informado informado no registro difere do numero de campos especificado no layout |0110|2|1|1| ==> alterei via bloco de notas e validou no PVA 2.0
  10. Registro 0110 SPED Contribuições Lucro Presumido está gerando um campo a mais ref ao IND_APRO_CRED que só deve existir no Lucro real |0110|2||1|1| ==> não valida no PVA = O numero de campos informado informado no registro difere do numero de campos especificado no layout |0110|2|1|1| ==> valida
  11. Conforme um assessor contabil, isso já era feito no livro de inventario manual, quando a apuração do inventario era feita em uma situação exepcional (que não fosse a declaração normal de fevereiro com referencia a dezembro do exercicio anterior). Segundo ele, deve-se considerar CST e aliquota padrão de venda estadual do produto. ( não concordei com isso não, porque assim não tenho a realidade da base de calculo e do valor do icms, nem mesmo uma previsão desses valores, já que tudo depende do tipo de venda (externa/interna), tipo de destinatario, cfop, etc...) Mas fiz assim e validou. if (MOT_INV <> miFinalPeriodo) then begin With RegistroH020New do begin CST_ICMS := CST (do produto); Case CST (do produto) of 00:begin BC_ICMS := VL_ITEM (do registro H010); VL_ICMS := ((VL_ITEM (do registro H010) * Aliquota do produto)*0.01); end; 10:begin BC_ICMS := VL_ITEM (do registro H010); VL_ICMS := ((VL_ITEM (do registro H010) * Aliquota do produto)*0.01); end; 20:begin BC_ICMS := VL_ITEM (do registro H010); VL_ICMS := ((VL_ITEM (do registro H010) * Aliquota do produto)*0.01); end; 30:begin BC_ICMS := 0; VL_ICMS := 0; end; 40:begin BC_ICMS := 0; VL_ICMS := 0; end; 41:begin BC_ICMS := 0; VL_ICMS := 0; end; 50:begin BC_ICMS := 0; VL_ICMS := 0; end; 51:begin BC_ICMS := 0; VL_ICMS := 0; end; 60:begin BC_ICMS := 0; VL_ICMS := 0; end; 70:begin BC_ICMS := VL_ITEM (do registro H010); VL_ICMS := ((VL_ITEM (do registro H010) * Aliquota do produto)*0.01); end; 90:begin BC_ICMS := VL_ITEM (do registro H010); VL_ICMS := ((VL_ITEM (do registro H010) * Aliquota do produto)*0.01); end; Else begin BC_ICMS := VL_ITEM (do registro H010); VL_ICMS := ((VL_ITEM (do registro H010) * Aliquota do produto)*0.01); end; End; end; end; Quem tiver + informações, por favor acrescente.
  12. Era falta de atualizar o componente. Fiz a atualização via SVN do componente agora (versão 3526) e recompilei meu aplicativo. Os registros C481 e C485 geraram corretamente. No caso, a alteração foi feita no C485. No lugar do zero, está jogando vazio. |C481|04|26,40|||||0,00|P0000000004|| |C485|04|26,40|||||0,00|P0000000004|| Validou com sucesso.
  13. Elton, vou reportar um problema que estou tendo aqui para gerar o mes 04/2012 de uma empresa, nos registro C481 e C485. A principio, achei que o validador do SPED Pis Cofins estava incorreto porque eu não havia feito nenhuma alteração nos registro C481 e C485, mas verifiquei que no meu arquivo txt estava errado. Veja bem: esses registros são referente a C481(PIS) e C485(COFINS) de cupom fiscal. No C481, estou jogando no CST = 04 : aliquotaPIS = 0, vlr base de calculo do pis = 0, vlr do pis = 0. No C485, estou jogando no CST = 04 : aliquotaCOFINS = 0, vlr base de calculo do pis = 0, vlr do pis = 0 No C481 está ficando: |C481|04|26,40|||||0,00|P0000000004|| No C485 está ficando: |C485|04|26,40|0,00|0,0000|||0,00|P0000000004|| Dai o validador acusa o erro. Note que esse erro começou recentemente, porque eu já havia gerado outros meses e ficaram corretos. Debuguei o meu aplicativo no delphi e os valores que estou lançando estão corretos. Fui no arquivo texto e coloquei o registro C481 = |C481|04|26,40|0,00|0,0000|||0,00|P0000000004|| Assim o validador aceitou. Nesse caso, a aliquota = 0 é permitida, mas não pode ser = vazio. Será que é o mesmo problema do colega Robson?
  14. Para atualizar o meu banco de dados com o numero do protocolo e chave de acesso uso assim: if bCTeNOSEFAZ then //se o CT-e está no SEFAZ begin DM.CMD.Parameters.ParamByName('ProtocDeAutorizacao').value:= ACBrCTe1.WebServices.Consulta.Protocolo; DM.CMD.Parameters.ParamByName('ChaveDeAcesso').value := ACBrCTe1.WebServices.Consulta.CTeChave; end else begin DM.CMD.Parameters.ParamByName('ProtocDeAutorizacao').value:= ACBrCTe1.WebServices.Retorno.Protocolo; DM.CMD.Parameters.ParamByName('ChaveDeAcesso').value := ACBrCTe1.WebServices.Retorno.ChaveCTe; end; porém, com a versão 1.04 schemas atualizados, são raros os CT-e (autorizados em MG) que consigo capturar a chave de acesso. Devo alterar o comando?
  15. Esqueci Fiz o update hoje do ACBrSPED e ele ainda não está tratando a alteração que virá a partir de julho/2012. Essa alteração já consta no PVA 2.0.25. Quero saber se é isso mesmo que tenho que colocar na unit ACBrEFDBloco_C_Class
  16. Gr@c@

    registro C100-IND_PGTO

    if DT_INI >= EncodeDate(2012,07,01) then begin case IND_PGTO of tpVista: strIND_PGTO := '0'; tpPrazo: strIND_PGTO := '1'; tpSemPagamento: strIND_PGTO := '2'; tpNenhum: strIND_PGTO := ''; end else case IND_PGTO of tpVista: strIND_PGTO := '0'; tpPrazo: strIND_PGTO := '1'; tpSemPagamento: strIND_PGTO := '9'; tpNenhum: strIND_PGTO := ''; end;
  17. Publicada nova versão do PVA - EFD ICMS/IPI - 2.0.25 Foi publicada a nova versão do PVA - EFD ICMS/IPI - 2.0.25. Principais Alterações: Registro H005 " Inclusão do campo MOT_INV e alteração da chave do registro para DT_INV + MOT_INV", Inclusão dos Registros H020, 1010, 1390, 1391, Registro D100 " Alteração da descrição do campo para o valor válido 9 - Sem cobrança de frete, Registro C100 " Alteração do campo IND_PGTO retirando o valor válido 9 e incluindo o valor 2 (implica em alteração da descrição do campo para a realização da mesma alteração); O validador 2.0.24 já foi substituido. Não consigo gerar o registro H020. Além disso, não sei como será o calculo do valor da base de calculo e do icms no caso do inventario, porque nunca ouvi falar disso. Alguém sabe mais detalhes de como será gerado o H020?
  18. Ontem meu cliente enviou 250 ct-e na versão 1.04, em tempo recorde, sem nenhum problema. Tava bom demais pra ser verdade
  19. Estou tentando gerar o Sped Fiscal com o registro 1010 mas não está dando certo: As dúvidas são: 1-Se no registro 1010 todos os campos forem = 'N' o registro 1001 será imComDados ou imSemDados? Tentei imComDados e declarei tudo N no registro 1010, mas dá rejeição dizendo que o arquivo não tem movimento declarado Tentei imSemDados e declarei tudo N no registro 1010, mas o registro 1010 não entra no somatorio de registros do registro 0990, dando rejeição de erro de total no registro 0990. Tentei imComDados e declarei N no registro 1010 exceto no campo de transações TEF (ind_CART) e declarei as transações TEF no registro 1600, mas o registro 1010 também não entra no somatorio de registros do registro 0990, dando rejeição de erro de total no registro 0990. A unica forma que encontrei de validar o arquivo foi 1001 com imSemDados e não declarar o registro 1010. Sendo assim, como fica nas UFs onde o bloco 1 é obrigatorio? Vejam: REGISTRO 1010: OBRIGATORIEDADE DE REGISTROS DO BLOCO 1 Este registro deverá ser apresentado por todos os contribuintes. Caso a resposta seja “S”, o contribuinte está obrigado à apresentação do registro respectivo. Se houver dispensa de apresentação do registro pela unidade federada a resposta para o campo específico do registro deverá ser “N”. Tá falando aí que tem quer ser apresentado por todos os contribuintes. Mas se não tenho movimento a declarar no bloco 1 (exceto o que deveria ir no 1010), não aceita declarar o registro. Como devo proceder no caso de: No registro 1001 IND_MOV será = imSemDados No registro 1010 todos os campos são = 'N' No registro 1001 IND_MOV será = imComDados No registro 1010 um ou mais campos será = 'S' e um ou mais campos será = 'N'
  20. Conforme informação do plantão fiscal de MG: Se foi feito o formulário PED (Processamento Eletronico de Dados) entre a sua empresa (TI) e a empresa Cliente, seu software tem que gerar todas as informações necessárias para abastecer os arquivos digitais: sintegra, sped fiscal, sped pis cofins. E você tem que ter em seu software, o gerador desses arquivos. Pelo menos tem que ter a tela para que o funcionário da empresa digite manualmente as notas. Se for PAF/ECF já está na legislação que todas as informações tem que ser capturadas online do ECF. Se for NF-e via seu software também tem que capturar. Se a empresa emite NF-e via programa gratuito SEFAZ, seu software tem que ter ou a tela para digitar a nf-e ou o importador do xml, para que tudo esteja no banco de dados. Notas de entrada a mesma coisa: ou tem que ter a tela para digitar a nota manualmente ou tem que ter o importador de xml em caso de NF-e.
  21. Segue comunicado SEFAZ ABRE ASPAS Prezado(a), Informamos que foi disponibilizada a Nota Técnica 2012.002 no Portal Nacional da NF-e - http://www.nfe.fazenda.gov.br/portal/ definindo o evento de “Manifestação do Destinatário” da NF-e. A partir de 01/07/2012 essa funcionalidade será disponibilizada no ambiente de homologação da NF-e (ambiente utilizado para testes), sendo liberada em produção (ambiente com validade jurídica) a partir de 01/08/2012. O destinatário da NF-e poderá confirmar a operação, informar se a operação não ocorreu ou se desconhecia a operação. Será necessária a certificação digital do CNPJ da empresa para registrar o evento da NF-e. A NF-e que tiver o evento de confirmação da operação não poderá ser cancelada. Será disponibilizado aplicativo público gratuito para que os destinatários possam utilizar essa funcionalidade. Isso trará maior transparência a todos – Contribuintes e fisco. Os detalhes sobre o evento assim como a especificação técnica para o desenvolvimento dos WebService estão disponíveis nessa Nota Técnica e no FAQ disponibilizados no Portal Nacional da NF-e. Atenciosamente, Equipe NF-e DED/DIEF/SAIF - SEF/MG Divisão de Escrituração Digital Diretoria de Informações Econômico Fiscais Superintendência de Arrecadação e Informações Fiscais Conheça a Cartilha NF-e: http://portalnfe.fazenda.mg.gov.br/down ... 011_05.pdf Informação da data de saída após emissão da NF-e - veja o Manual do "Registro de Saída" - http://portalnfe.fazenda.mg.gov.br/down ... _saida.pdf Para validação da NF-e conheça a RESOLUÇÃO CONJUNTA SEF/SEPLAG Nº 4.385, DE 29 DE DEZEMBRO DE 2011 Conheça o "Robô NF-e": http://robonfe.sefaz.rs.gov.br/ Conheça a Capa de Lote Eletrônica: http://nfe.sefaz.am.gov.br/cle/ Navegue nos Portais NF-e: SEF/MG: http://portalnfe.fazenda.mg.gov.br/ Nacional: http://www.nfe.fazenda.gov.br/portal/ Suporte: O atendimento ao público externo está sendo realizado apenas pelas AF’s e pela Central de Atendimento. Telefones Central de Atendimento: 155 para região metropolitana de Belo Horizonte e interior de Minas Gerais; (31)3303-7995 para outros estados e países e para ligação de celular Fale conosco: http://www4.fazenda.mg.gov.br/faleconoscoservico/ Correio Eletrônico [email protected] (somente para mensagens que incluam anexos) FECHA ASPAS
  22. O procedimento seria assim: Venda de balcão -> emite-se cupom fiscal ou NF Serie D (a nota de bloco preenchida manualmente, ainda permitida pelo SEFAZ em todas as UF´s. Essas notas são usadas em substituição ao cupom fiscal quando o ECF estiver inoperante, ou seja, em manutenção técnica. Nesse caso, a serie D não precisa ser emitida para um cliente especifico, pode-se informar "Consumidor Final", uma vez que essas notas são declaradas no Sintegra e Sped acumuladas por dia, ou seja , da nota inicial à nota final do dia) Em caso de o cliente exigir NF-e -> ele tem que fornecer todos os dados cadastrais para que a NF-e seja emitida no nome dele. Se ele quiser que seja emitida uma unica nota no final do mês, para substituir os cupons fiscais: -> serão emitidos os cupons fiscais para acompanhar as mercadorias no ato da venda -> no final do mês, poderá ser emitida uma NF-e referenciando todos os cupons fiscais, nesse caso a nota ficará com Valor de Base de Calculo de Icms = 0, vlr de icms = 0, valor de base de calculo ST = 0 e valor ST = 0, porque tudo isso já foi calculado nos cupons fiscais referenciados
  23. Se não fosse pelo 99-Outros que requer uma descrição especifica, poderia ficar como está (abreviado com 6 letras). Mas como tem que descrever o que seria o doc Outros (uma das descrições que cairia aqui seria "Inventario de Bens"), a sua sugestão seria ótima, ou seja: Declaração: Tipo = DECLAR CNPJCPF = Declaração / 00.000.000/0000-00 Documento = 0000 Dutoviário: Tipo = DUTO CNPJCPF = Dutoviário / 00.000.000/0000-00 Documento = 0000 Outros: Tipo = Outros CNPJCPF = copy(descrição, 1, 39) + ' / ' + 00.000.000/0000-00 Documento = 0000
  24. Oi Italo Obrigada pela correção Em TipoDoc agora está saindo a palavra 'declar'. Caso seja viável, ainda há espaço para a palavra completa 'declaracao'. Mas assim como está já resolveu 100%.
  25. No CT-e ref a mudança geralmente não existe NF. Geralmente é uma declaração ou inventário de bens em papel comum emitido pela transportadora. Nesse caso, a tag a ser preenchida é a No DACTe não está sendo impresso o TpDoc quando o tipo de documento é 00-Declaração
×
×
  • 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.