Ir para conteúdo
  • Cadastre-se

Mauricio Elias

Membros Pro
  • Total de ítens

    275
  • Registro em

  • Última visita

Posts postados por Mauricio Elias

  1. Olá Tudo Bem!

    Estou tentando autorizar um manifesto de uma transportadora. Os campos relacionados grupo seg no manual página 110. Estou preenchendo todas infos relacionadas ao seguro, mas uma em questão me gerou dúvida pois no manual diz que se o Responsável pelo seguro for opção 1 - Emitente do MDF-e que o meu caso não é Obrigatório informar o cnpj da seguradora. Segue na imagem em anexo regra_cnpj_seg. Senão informa o cnpj da seguradora ocorre a rejeição de falha na validação do manifesto mostrada na imagem em anexo(rejeicao_quando_nao_poe_cnpjseguradora). Mas se informa o cnpj da seguradora essa rejeição não acontece. Mas não sei se por informar o cnpj da seguradora que pelo manual so seria obrigado a por se caso  o Responsável pelo seguro for a opção 2 - Responsável pela contratação do serviço de transporte (contratante)  será que por essa informação está gerando a rejeição 578 Informação dos Tomadores é Obrigatória pra essa Operação(imagem anexo rejeicao_578) que no caso e pela falta das infos do ciot e cnpj do gerador do ciot, se eu colocar essas infos mais o cnpj da seguradora eu consegui autorizar o manifesto em modo homologação.

    Mas segundo o contador desse cliente eles não são obrigados a gerar o ciot ae vem as dúvidas:

    Sendo o Responsável pelo seguro for opção 1 - Emitente do MDF-e como no manual diz que não precisa informar o cnpj da seguradora ae se não informa da rejeição, então to informando mas será que estou fazendo de forma errada por isso gera a rejeição que precisa do ciot? Por min não tem problema informar o cnpj a dúvida se ao informa-lo leva a outra rejeição.

    with seg.Add do
                  begin
                        if(IBQmanifestos.fieldbyname('MANIRESPSEG').asstring = '1') //1- Emitente do MDF-e;
                        then respSeg:=rsEmitente
                        else if(IBQmanifestos.fieldbyname('MANIRESPSEG').asstring = '2') //2 - Responsável pela contratação do serviço de transporte (contratante)
                             then respSeg:=rsTomadorServico;
                        if(trim(iBQmanifestos.fieldbyname('MANIRESPSEGCNPJCPF').asstring) <> '')
                        then begin
                                  Vqtdnumcpfcnpj:=length(IBQmanifestos.fieldbyname('MANIRESPSEGCNPJCPF').asstring);
                                  if(Vqtdnumcpfcnpj=14) //se=11 então CPF
                                  then cnpjcpf:=trim(IBQmanifestos.fieldbyname('MANIRESPSEGCNPJCPF').asstring)
                                  else if(Vqtdnumcpfcnpj=18) //se=14 então CNPJ
                                       then cnpjcpf:=trim(IBQmanifestos.fieldbyname('MANIRESPSEGCNPJCPF').asstring);
                             end;
                        if(trim(iBQmanifestos.fieldbyname('MANINOMESEGURADORA').asstring) <> '')
                        then xSeg:= trim(iBQmanifestos.fieldbyname('MANINOMESEGURADORA').asstring);
                        if(trim(iBQmanifestos.fieldbyname('MANICNPJSEGURADORA').asstring) <> '')
                        then cnpj:=trim(iBQmanifestos.fieldbyname('MANICNPJSEGURADORA').asstring);
                        if(trim(iBQmanifestos.fieldbyname('MANINUMAPOLICE').asstring) <> '')
                        then nApol:=trim(iBQmanifestos.fieldbyname('MANINUMAPOLICE').asstring);
                        if(trim(iBQmanifestos.fieldbyname('MANINUMAVERBACAO').asstring) <> '')
                        then begin
                                  with Aver.add do
                                  begin
                                         nAver := iBQmanifestos.fieldbyname('MANINUMAVERBACAO').asstring;
                                  end;
                             end;
                  end;

    Se sim ao informar o cnpj da seguradora, estaria forçando eu informar o ciot? Que segundo o contador do cliente eles não são Obrigados a informar, mas eu lendo vários sites eu entendo que sim eles tem rsrs complicado. 

    Em tempo Não sei dizer se tem relação com a rejeição da falta do ciot, mas nesse manifesto que autorizei em modo homologação, o campo Tipo de Transportador deixe como Ide.tpTransp:=ttNenhum, será quem tem alguma relação com a exigência do ciot?

    Desculpa se o post começa com um erro e tem dúvida de um outro também, e que a dúvida e sem relação entre eles. 

    Desde já Muito Obrigado pela Atenção!

    regra_cnpj_seg.jpg

    rejeicao_quando_nao_poe_cnpjseguradora.png

    rejeicao_578.jpg

  2. 1 hora atrás, Italo Jurisato Junior disse:

    Boa tarde Mauricio,

    Mesmo que você faça as alterações necessárias no componente para que ele gere os dois grupos <infNFe> e <infCTe> ele vai ser rejeitado pela SEFAZ.

    Veja estas duas regras de validação da SEFAZ que se encontra no manual - Visão Geral - página 62:

    RegraMDF-e.jpg

    Resumindo:

    Transportadora (Prestador de Serviço de Transporte) só pode informar no MDF-e os CT-e

    Transportador de Carga Própria só pode informar no MDF-e as NF-e.

    O erro do seu cliente foi emitir (não sei como) o CT-e pelo programa gratuito da SEFAZ.

    Boa Tarde Italo Muito Obrigado por sua Ajuda!

    Na correria de tentar resolver o problema as pressas(caminhão parado) baseado no que o cliente falou acabei nem vendo as regras no manual direito me concentrei na parte do manual da infnfe e infcte, e também como você não entendi como ele gerou esse CT-e e isso acabou me confundindo ainda mais. 

     Mas agora entendi corretamente essa parte e já sei como proceder caso acontecer novamente, e explicar para o cliente como funciona e como proceder.

    Mais uma vez Muito Obrigado pela Ajuda e Atenção!

    Dúvida respondida!!👏👏

    Obrigado!!

  3. Olá Tudo Tudo Bem!

    Estou com dúvida sobre a geração do Manifesto devido a um fiscal. Tive um caso em que o cliente que o tipo de emitente dele é o Transportador Carga Própria, ele gerou o manifesto com a NF-e da empresa sem problemas. Mas esse mesmo cliente  emitiu um CT-e via emissor gratuito pra o mesmo veículo, chegando na barreria o fiscal de posse do manifesto disse que o mesmo estava errado pois faltava nele informar o CT-e, e deixou o caminhão parado no posto fiscal, então o cliente me pediu pra alterar o sistema para que o mesmo emiti-se um manifesto informando nele um NF-e e um CT-e (até onde eu sei isso não é possível mas como fiscal disse)então fiz a modificação pois o caminhão estava parado, depois de feita a modificação ao tentar autorizar esse manifesto deu rejeição 667 - Quantidade informada no grupo de totalizadores não confere com a quantidade de documentos relacionada. Fui ver o que seria e descobri que nesse caso, como o emitente é Transportador de Carga Própria então a tag referente a informação do CT-e não é gerada. E se for um emitente  Prestador de Serviço de Transporte na mesma situação sai tag da CT-e e não sai a da NF-e. Estranho que quando informo as duas no espelho do mdf-e até mostra os dois mas na hora de gerar e autorizar ou um outro.

    Minha dúvida é possível gerar um manifesto nessa situação de o emitente ser Transportador Carga Própria gerar um manifesto com NF-e e CT-e no mesmo manifesto?

    Segue o código:

    with infDoc.infMunDescarga.Add do
        begin
              IBQdesca.close;
              IBQdesca.sql.clear;
              IBQdesca.sql.add('select * from descarregamentos where MANIFID = :vMANIFID');
              IBQdesca.parambyname('vMANIFID').value:=IBQmanifestos.fieldbyname('MANIFID').asinteger;
              IBQdesca.open;
              if not(IBQdesca.isempty)
              then begin
                       IBQdesca.first;
                       while not(IBQdesca.eof) do
                       begin
                             QmunicDESCA.close;
                             QmunicDESCA.sql.clear;
                             QmunicDESCA.sql.add('select muncod,munnome,munibge from munic where muncod = :vmuncod');
                             QmunicDESCA.parambyname('vmuncod').value:=IBQdesca.fieldbyname('muncod').asinteger;
                             QmunicDESCA.open;
                             if not(QmunicDESCA.isempty)
                             then begin
                                        cMunDescarga :=QmunicDESCA.fieldbyname('MUNIBGE').asinteger;//3550308
                                        xMunDescarga :=copy(QmunicDESCA.fieldbyname('munnome').asstring,1,60); //'SAO PAULO'
                                  end;
                             if(trim(IBQdesca.fieldbyname('DESCTIPODOC').asstring) = 'N')//N = NF-e
                             then begin //NF-E
                                       with infNFe.add do
                                       begin
                                            if(IBQdesca.fieldbyname('NOTID').asinteger > 0)
                                            then begin
                                                      IBQnotas.close;
                                                      IBQnotas.sql.clear;
                                                      IBQnotas.sql.add('select notid,NOTNFE_CHAVE from notas where notid = :vnotid');
                                                      IBQnotas.parambyname('vnotid').value:=IBQdesca.fieldbyname('NOTID').asinteger;
                                                      IBQnotas.open;
                                                      if not(IBQnotas.isempty)
                                                      then begin
                                                               chNFe:=IBQnotas.fieldbyname('NOTNFE_CHAVE').asstring;
                                                               SegCodBarra:='';
                                                               indReentrega:='';
                                                               vqtdnfe:=vqtdnfe+1;
                                                           end;
                                                 end
                                            else if(trim(IBQdesca.fieldbyname('DESCNFECHAVE').asstring) <> '')
                                                 then begin
                                                           chNFe:=trim(IBQdesca.fieldbyname('DESCNFECHAVE').asstring);
                                                           SegCodBarra:='';
                                                           indReentrega:='';
                                                           vqtdnfe:=vqtdnfe+1;
                                                      end;
                                       end;
                                  end;//NF-e
                             if(trim(IBQdesca.fieldbyname('DESCTIPODOC').asstring) = 'C')//C = CT-e
                             then begin //CT-e
                                       with infCTe.Add do
                                       begin
                                             chCTe:=trim(IBQdesca.fieldbyname('DESCNFECHAVE').asstring);
                                             SegCodBarra:='';
                                             indReentrega:='';
                                             vqtdCTe:=vqtdCTe+1;
                                       end;
                                  end;//CT-e
                             IBQdesca.next;
                       end;
             end;
        end;  

    tot.qCTe:= vqtdCTe;
    tot.qNFe:= vqtdnfe;

    Se é possível no que estou errando? 

    Segue em anexo o xml só com a tag de NF-e gerada.

    Senão for possível eu teria que emitir um manifesto som com a nota sendo Transportador de Carga Própria e um Manifesto com o CT-e mas nesse caso o emitente do CT-e  ser a transportadora com isso o motorista mostra os dois manifestos na barreira? Nesse caso pode emitir dois manifestos pra mesma placa só que um pra NF-e e outro pra CT-e é possível?

    Estou em contato com os contadores e cada pra variar fala uma coisa um diz que pode outro que não.

    Por fim o fiscal depois de segurar o caminhão por 6 horas, o fiscal liberou a passagem mas avisou na próxima vez não vai liberar.

    Não sei o que fazer, acho que o fiscal está enganado mas vai saber.

    Desde já Muito Obrigado pela Atenção! 

    espelho_sem_autorizar.jpg

    35200631405527000200580010000000131000000131-mdfe.xml

  4. Olá Tudo Bem!!
    Tenho um relatório que mostra todos os recebimentos em um caixa, nesse caixa trabalham 2 funcionários, então o relatório tem que mostrar todos recebimentos do caixa separados por funcionário pra exibir os recebimentos feitos por cada caixa.
    No final do relatório tem que exibir dois resumos, que seriam o valor total recebido no caixa, mas separado por cada tipo de documento exemplo: quanto em dinheiro,cheque e cartão...
    E depois do resumo mostrando o valor por cada forma de pagamento tenho um outro resumo só que esse mostra o valor separado pelo tipo de divida exemplo: recebeu tanto de conta de água, de conta luz e de telefone.
    Tentei estruturar o relatório da seguinte forma:
    btTitle
    RLGroup
             btHeader
             btDetail
             btSummary
    ///fora do rlgroup os subdetails vem depois dele
    Subdetail1(resumo tipo forma de pagamento exe: dinheiro,cheque..)
    Subdetail2(resumo tipo divida exe: conta água,conta energia, conta telefone ...)
    btFooter
    obs: em anexo o relatório em pdf gerado estruturado dessa forma acima nome do arquivo é: relatorio_com_estrutura_duvida_mas_nao_funciona6pag.pdf
    Montei dessa forma o relatório mas não da certo, pois ao invés de mostrar os resumos só depois de exibidos os recebimentos de cada funcionário, ele ta exibindo os resumos(com os valores corretos) mas depois que termina as infos de cada funcionário.
    No meu entender só deveria exibir os resumos depois de cada funcionário se os subdetails estivessem dentro do rlgroup ae faria sentido, mas os subdetails estão fora do rlgroup, ele estão depois do rlgroup, mas o fortes entende que estão dentro.
    Por Favor alguém tem alguma ideia o porque do fortes fazer isso? Seria alguma propriedade do rlgroup? Bug do Fortesreport?
    Tentei fazer de outras formas como colocando outro Rlgroup pra cada resumo mas piorou o resultado.
    Tentei colocar um btdetail depois do rlgroup e dentro dele os Subdetail mas também não deu certo.
    Ae fiz uma solução temporaria para o cliente usar que a seguinte:
    btTitle
    RLGroup
             btHeader
             btDetail
             btSummary
    btSummary
    btFooter

    Onde na banda sumario eu coloquei um TRLmemo onde nele adiciono os dados dos meu resumo linha por linha, quando o resumo tem poucas formas de pagamento e poucos tipos de divida fica certo o relatório, o problema é quando tem bastante dividas e formas ae estoura o tamanho do relatório ae no fim não mostra todas as informações com aquela aparencia que foi cortado.
    obs: em anexo o relatório de forma temporaria com problema na ultima folha com o nome: relatorio_solucao_palhativa_problema_fim do relatorio.pdf
    Por Favor alguém já fez algum relatório parecido? Se sim como?
    Desde já Muito Obrigado pela Ajuda!

    Obrigado!
     

    relatorio_solucao_palhativa_problema_fim do relatorio.pdf relatorio_com_estrutura_duvida_mas_nao_funciona6pag.pdf

  5. Olá pessoal boa tarde a todos.

    Meu vendas usava o EscPos para impressão do Sat, mas o cupom sat estava saindo muito grande.
    Mudei para o Fortes, ai passou a imprimir um cupom bem mais compacto. Cliente adorou a economia de papel kkk.
    Só que ele passou a abrir a gaveta sozinho ao final da venda. O que não acontece usando EscPos.
    AcbrMonitorPlus 1.3.0.183
    Impress Tanca TP-650

    Achei uma configuração no Propriedades dela sobre gaveta e desabilitei, mas continuou o problema.

    Alguém já passou por isso?

    Abraços e obrigado.

    image.png.44292befbe410246a658fe0423d67eaf.png

  6. Olá Tudo Bem!

    Estou precisando gerar o pdf das vendas NFC-e, usando o ACBrNFeDANFCeFortes pra gerar o DANFE NFC-e consigo gerar o pdf usando o evento ImprimirPDF, mas só uso a versão do fortes no retaguarda na hora de autorizar vendas que não foram autorizadas por algum motivo.

     O problema é gerar nos caixas pois neles uso o ACBrNFeDANFeESCPOS pra gerar o DANFE NFC-e e imprimi-lo na impressora.

    Gostaria de saber se é possível gerar o pdf usando o  ACBrNFeDANFeESCPOS?

    Pesquisei aqui no fórum do ACBr e encontrei esse tópico falando sobre isso 

     

    nele em uma das respostas disseram que poderia usar NFe.ImprimirDanfePDF ou NFe.ImprimirEventoPDF. O NFe.ImprimirDanfePDF não tem usando o ACBrnfe, ae então tentei ACBrNFe.ImprimirEventoPDF, ele gerou o pdf do evento o problema foi que gerou um pdf de cancelamento, mas eu fiz uma venda normal não fiz cancelamento. 

    O componente ACBrNFeDANFeESCPOS tem uma propriedade ArquivoPDF, tenho que carregar o xml nela?

    Senão for possível então vou tentar mudar em tempo de execução pra ACBrNFeDANFCeFortes pra poder gerar o pdf e depois volta pra ACBrNFeDANFeESCPOS, pra ve se consigo depois de imprimir consigo gerar o pdf.

    Desde já Muito Obrigado pela Ajuda e Atenção de Todos!

    Obrigado!

  7. Realmente, no Fortes, o driver da Tanca TP-650 tem uma configuração, em Preferência de Impressão, e em Avançados:
    [ X ]  No Cash Drawer.
    Que deveria funcionar, mas não funcionou... rs. Suporte tb não soube explicar o por que!

    Pelo EscPos isso não aconteceu, funcionou perfeitamente.

    Muito obrigado.
     

    • Curtir 2
  8. Opa, valew Daniel, deu certinho dessa forma.
    Configurei o PosPrinter cfe vc falou, na opção RAW.
    Muito obrigado viu. Vcs são os caras mesmo. 

    Só ficou meio estranho, que no final da impressão do Sat a gaveta abre sozinha, sem eu mandar. Mas deve ser alguma configuração da Tanca, vou ligar pra eles na segunda pra ver.

    Abraço.

    • Curtir 1
  9. Olá bom dia pessoal. Tô tentando aprender os comandos de Gaveta.
    Tenho uma situação com uma gaveta Bema nova e uma Impress não Fiscal Tanca TS1000.
    Windows 7. AcbrMonitorPlus 1.2.0.84


    Tentei recuperar a string dessa gaveta pelo comando:

    GAV.StrComando
    Mas no SAI.TXT só me retornou :
    OK: 

     

    Se eu bem entendi, teria que me retornar uma string, para eu utilizar em:
    GAV.SetStrComando( cComando )

    Depois disso, tentei usar tb:

    GAV.AbreGaveta

    Mas não abriu.

    Aonde será que estou errando ?
    Muito obrigado. 

     


     

  10. Olá Tudo Bem!

    Em 23/10/2019 at 09:49, Claudemir F. Laureano disse:

    RicardoVoigt [...]"ExibeDadosDocReferenciados" [...] automatica da(s) chave(s) referenciada(s) no refNFeno campo de informações complementares...... Repito ela em infCpl pois o usuário pode ter a necessidade a cada chNFe subsequentemente vincular alguma informação do   ANEXO DE RISCMS ...

     

    Em 23/10/2019 at 08:30, RicardoVoigt disse:

    Não há necessidade de repetir a chave de acesso no infCpl... no componente de impressão do DANFE tem uma propriedade "ExibeDadosDocReferenciados" que vc indica se quer a impressão automatica da(s) chave(s) referenciada(s) no refNFe, no campo de informações complementares...

    Att

    Ricardo

     

    Em 23/10/2019 at 08:06, Claudemir F. Laureano disse:

    <refNFe>CHAVEACESSO</refNFe> Repito ela em -<infCpl>

     

    Em 22/10/2019 at 08:12, RicardoVoigt disse:

    Bom dia,

    como o @gss200610 disse... use a tag RefNFe informando a Chave de Acesso da NFC-e...

    Att

    Ricardo

     

    Em 21/10/2019 at 15:01, Juliana Tamizou disse:

    Boa tarde.

    Segue link com tabelas de regras de validação disponibilizado pelo ENCAT.

    http://nfce.encat.org/desenvolvedor/regras-de-validacao/

    Att. 

     

    Em 21/10/2019 at 10:43, gss200610 disse:

    Eu usava assim tambem, mais muitos estados mudaram as regras, agora deve se referenciar na RefNFe  como se tivesse referenciando uma NFE de devolucao e no MODELO = 65

     

    Muito Obrigado á Todos!!!

    Graças a vocês consegui resolver o problema! Eu estava informando o número da NFC-e como se fosse ECF.

    E ae agora estou informando a(s) chave(s) no campo refNFe, e exibindo as chaves no infcpl.

    Agora ficou certo Graças a Ajuda de Todos Vocês!

    Problema Resolvido! 

    Muito Obrigado!! Deus Abençoe á Todos!!

    • Curtir 2
  11. Olá Tudo Bem!

    Estou em dúvida de como referenciar os números de NFC-e(s) na NF-e.

    Hoje eu referencio informando o número da NFC-e no ACBrNFe  como se fosse o número do cupom fiscal:

    with Ide.NFref.Add do
    begin
                RefECF.modelo  := ECFModRef2D; // |
                RefECF.nECF    := '1';          // |- Cupom Fiscal
                RefECF.nCOO    := numnfce;    
    end;

    Tenho utilizado dessa forma, nós dados adicionais é informado pelo próprio ACBrNFe.

    No caso faço NFC-e no estado do Paraná que permiti usar o cfop 5929.

    Mas o escritório está questionando que sai nos dados adicionais exemplo ecf:1 e assim por diante, vocês recomendam eu continuar a usar dessa forma informando o número do NFC-e no componente ACBrNFe como se fosse ECF  ou deixo de usar, e informo eu mesmo nos dados adicionais os números(ex: NFC-e(s): 0001/0002)?  

    Já procurei nas Norma técnicas algo a respeito e no manual da NF-e, mas não achei nada específico de como referenciar as NFC-e(s) na NF-e.

    Desde já Muito Obrigado pela Atenção e Ajuda!

  12. 2 horas atrás, EMBarbosa disse:

    No evento onBeforePrint de um "band", (por exemplo o band que deve ser impresso na outra página), ele faz a validação da condição que quer. Daí seta a propriedade para True. O resultado é o band ser impresso em outra página.

    Obrigado EMBarbosa, por me ajudar vou tentar dessa forma como você falou, Muito Obrigado pela Ajuda!!

     

    • Curtir 1
  13. Olá Paulo Roberto_12414 Tudo bem estou com essa mesma dúvida:

    Em 05/08/2016 at 13:25, Paulo Roberto_12414 disse:

    Boa tarde senhores,

    gostaria de imrpimir os dados em outra pagina quando mudasse o cliente no Fortes Report, tem como ?

    Você postou o seguinte comando como solução:

    Em 08/08/2016 at 11:37, Paulo Roberto_12414 disse:

    Descobrir, bem simples:

    RLReport.NewPageNeeded

    Mas como e onde você usou este comando?

    Desde já Muito Obrigado pela Atenção!

  14. Boa noite. Estou desinformado !!!

    Se eu bem entendi, a partir de 02/09 entra em produção a obrigação do Código do Benefício Fiscal (cBenef) em PR, PJ e RS.
     

    Imagino que temos que observar estes Estados como Emitente, certo ?

    Baixei a Tabela cBenef.XLS da Sefaz com os Códigos dos 3 estados. Mas eu não entendi, como saber o Código Benef correto de cada determinado item?
    Seria pelo NCM ? Mas a tabela não fala nada de NCM. 

    Como saber o correto para vários itens cadastrados de cada CST ?

    Grato pessoal.

  15. Bom dia 

    16 horas atrás, Rafael Moreira Neves disse:

    Olá Maurício,

    No IBExpert vai em Services, Database Shutdown. Em seguida em Services, Database Online.

     

    Obrigado Rafael Moreira Neves, segui o que você sugeriu e deu certo Muito Obrigado!!

    2 horas atrás, BigWings disse:

    Isso pode ter sido causado por problemas na restauração.

    Quando há problemas e o FB não consegue criar os índices, por exemplo, quando há registros faltando, ele deixa o banco de dados em modo "shutdown" que é de manutenção, por isso apenas uma conexão pode ser feita nele.

    Essa situação é informada no log da restauração, se você não marcou a opção "verbose" na restauração não conseguiu ver essa mensagem.

    Antes de retornar o banco para "online" como sugerido pelo Rafael você deve verificar os problemas.

    Para verificar índices inativos:

    
    C:\Temp>"c:\Program Files (x86)\Firebird\Firebird_2_5\bin\isql.exe" banco.fdb -user sysdba -pass masterkey
    Database:  banco.fdb, User: sysdba
    SQL> select rdb$index_name from rdb$indices where rdb$index_inactive = 3;

    Caso retorne algo você pode tentar reativar cada índice, desta forma:

    
    SQL> alter index idx_meu_indice active;

    O mais provável é que ainda ocorra erro por ser um índice de chave estrangeira onde está faltando registros, então para ativar o índice você vai precisar restaurar o registro com problema, ou se não for possível, apagar os registros que referenciam o mesmo. Após isso tentar ativar o índice novamente.

    Depois de ativar todos os índices você pode colocar o banco em modo "online" novamente.

    
    C:\Temp>"c:\Program Files (x86)\Firebird\Firebird_2_5\bin\gfix.exe" -online banco.fdb -user sysdba -pass masterkey

     

    BigWings Obrigado pela explicação, não sabia desse modo shutdown, ae fiz o procedimento de novo ae observei a questão do verbose, e depois segui a suas instruções antes de deixar online e deu tudo certo certo Muito Obrigado!! 

    Obrigado Rafael e Big Wings vocês me ajudaram Muito!! Muito Obrigado!!

    Problema Resolvido!!

    Obrigado a Todos!!

    • Curtir 3
  16. Olá Tudo Bem!

    Desde já Obrigado pela Atenção!!

    Atualmente nas minha aplicações uso a versão Firebird-2.0.0.12710-0-Win32.

    Em um dos meus clientes estava com uma lentidão muito grande devido ao elevado número de registros, o banco já ultrapassava os 300mb de tamanho.

    Então baseado em informações de usuários de firebird, fiz estas checagem pra identificar problemas de índice, além do lixo acumulado depois de tantos anos(esse cliente usa o banco de dados desde 2006) , fiz todos os procedimentos listados abaixo inclusive o backup e restore utilizando a ferramenta Ibexpert.

    1 - Abrir o Ibexpert, na aba Services - Database Validation.

    - Selecionar apenas as opções Validate Database e Validate Full, rodar e 
    verificar se apresenta mensagem de erro.
    - Em seguida, selecionar apenas a opção Sweep Database, rodar e verificar se 
    apresenta mensagem de erro.
    - Em seguida, selecionar apenas a opção Mend Database, rodar e verificar se 
    apresenta mensagem de erro.
    - Em seguida, selecionar apenas a opção Kill Shadows, rodar e verificar se 
    apresenta mensagem de erro.
    - Em seguida, selecionar apenas a opção Ignore Checksum, rodar e verificar 
    se apresenta mensagem de erro.
    - Em seguida, selecionar apenas as opções Check Database, Validate Database 
    e Validate Full, rodar e verificar se apresenta mensagem de erro.
    - Em seguida, selecionar apenas a opção Limbo Transactions, rodar e 
    verificar se apresenta mensagem de erro.

    2 - Caso apresente erros os passos 3 e 4 abaixo são imprescindíveis, porém 
    mesmo que não apresente erros e o banco de dados esteja aprensentando 
    lentidão, o erro pode ser indices desordenados e os passos 3 e 4 é um 
    procedimento recomendado.

    3 - Esta Parte segue como fazer o backup pelo Ibexpert, uma das melhores 
    formas de fazer o backup onde o próprio software já analisa o banco para 
    encontrar erros que não foi passado pela processo acima.
    No Ibexpert, na aba Services - Backup Database.
    Selecionar as duas opções Ignore Check Sum e Ignore Transaction in Limbo, 
    mantendo as opções defaut como: Garbage collection marcada.
    File Name : deixar como esta, pois será o diretório onde será salvo, sempre 
    cria na mesma pasta onde esta o banco de dados, no caso mais comum na pasta 
    c:\minha pasta\database - onde fica o banco de dados do lojafacil.
    Clicar em Start Backup e aguardar a msg : "IBE: Backup completed. Current 
    time: DATA. Elapsed time: HORA"
    Clicar em Close para sair.

    3.1 - Apos fazer o backup, feche o IBExpert e renomeie o banco de dados.

    4 - A restauração do banco de dados, finaliza a analise 100%
    No Ibexpert, na aba Services - Restore Database.
    Selecionar a opção de Replace Existing database, esta opção substitui o 
    banco de dados com o mesmo nome no mesmo diretório.
    Em File Name - selecionar a opção c:\minha pasta\database e selecionar o 
    DB.fbk pois e o backup do banco de dados pelo ibexpert.
    Clicar em Start Restore e aguardar o término.
    Caso ao término do procedimento de restore, apresente uma mensagem diferente 
    do exemplo abaixo, problemas no banco.
    gbak: committing metadata
    gbak:finishing, closing, and going home
    IBE: Restore completed. Current time: DATA. Elapsed time: HORA "

    Depois de feito o restore o tamanho do banco reduziu consideravelmente de 300 mb para 35 mb, além de aumentar muito a velocidade na troca de informações.

    Atualizei o banco depois de feito o backup/restore no Ibexpert no cliente, só que surgiu um problema que não havia antes de fazer o backup / restore, no cliente existe o servidor e mais dois terminais que usam este mesmo banco de dados, o problema é é que só um terminal pode conectar ao banco de dados(o terminal que conectar primeiro acessa o Sistema  sem problemas, mas se um segundo terminal tenta conectar no sistema enquanto outro está também está dando o erro 'database shutdown'(está em anexo na primeira imagem),. Já procurei este erro e não acho nada sobre a possível causa, sei que antes do backup / restore esse erro não ocorria, e todos os terminais conseguiam acessar ao mesmo tempo o banco de dados, então o problema surgiu ao realizar o backup /restore.

    Como a versão do firebird que utilizo já antiga, então resolve fazer um teste e desinstalei o Firebird-2.0.0.12710-0-Win32 e instalei a versão Firebird-2.5.9.27139_0_Win32 mais atual e fiz os mesmos procedimentos descritos acima usando o banco de dados que estava grande e lento, mas que permitia a conexão de todos os terminais. Depois de feito o backup / restore com essa versão mais nova, o banco ficou mais rápido, menor mas o problema de só um terminal conseguir conectar no banco e quando outro tenta conectar não consegue, mas mudou a mensagem do erro para 'connection lost to database' segunda imagem em anexo.

    Alguém já passou por isso? Se sim como conseguiu resolver esse problema?

    Estou errando no processo de backup / restore(via Ibexpert)? Qual o jeito correto?

    É bug do Firebird? Ou o problema é no Ibexpert?

    Muito Obrigado pela Atenção!  E desculpa pelo longo texto a seguir.

    erro_banco_1.jpgerro_banco_2_firebird_2_5_9.jpg

     

  17. Olá bom dia pessoal.

    Eu consigo mudar algumas configurações do Plus via minha aplicação ?

    No caso, eu queria configurar a impressão do Danfe com duas Unidades para cada item (Unidade Comercial e Tributável) para uma determinada NF apenas, depois voltaria para uma unidade (Unidade Comercial).

    Abraços.

  18. Olá boa tarde pessoal. Nunca tinha visto um Danfe assim:

    Em anexo, um danfe com 2 unidades (PC e KG). Cada uma com seus valores Unitários e Totais.
    No XML estão nas Tags uCom e uTrib, assim como qCom e vCom, qTrib e vTrib.

    Segui o modelo diferenciando tb nestas tags, usando o Plus 1.2.0.56. 

    Não saiu o Danfe nesse formato, saiu apenas com 1 unidade mesmo, a uCom. Apesar de no XML estas tags saírem diferentes.

    Isso tem jeito ?

    Abraços.....

    NOTA EXEMPLO.PDF 42190500374121000101550010008443771486474087- exemplo.xml

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