Ir para conteúdo
  • Cadastre-se

Otavio Benini

Membros
  • Total de ítens

    131
  • Registro em

  • Última visita

Posts postados por Otavio Benini

  1. obrigado por seu comentário, Juliomar
    mas não pode ser retro compatibilidade pq esses tipos nem existem nesse banco de dados

    o campo gerado "come" uma casa decimal quando é 3, ou seja, deforma o conteúdo

    CAST deveria ser respeitado na condição especificada mas não é em alguma situações

    me parece muito mais que pegaram o driver de outro banco e começaram a adapta-lo para o Firebird e não concluiram, não testaram

    o problema é contornável, mas "contornar", neste caso, não deveria ser uma preocupação

    vou aguardar outros comentários

    obrigado mais uma vez

    Otavio Benini

  2. prezados, boa tarde

    hoje em dia uso Delphi 2010, Firebird 2.52, DBX (dbExpress) e tudo certo
    estou migrando p/ Delphi 10.4, Firebird 3.0 e FireDAC e resolvi fazer a migração "no braço", entre outras razões para aprender sobre o novo ambiente

    topei com uma situação incomum, procurei informações e não encontrei

    antes de reportar o problema à Embarcadero resolvei consulta-los, até mesmo para confirmar tratar-se efetivamente de um problema

    num SELECT usando o FDQuery um campo tipo Numeric(7,3) ou Numeric(9,3) gera campo Currency com Precision 15 - para manutenção da configuração original só usando CAST as Numeric(18,3)

    esse mesmo campo se utilizo MAX ou MIN num SELECT gera campo BCD e aqui não adiantou o CAST

    e esse problema ocorre em qq tabela em campos com essa configuração (inteiros menor que 10 e decimal maior que 2) - inteiro maior que 10 está ok, ao menos até onde pude ver

    então, usando Delphi 10.4 esse problema inicialmente identificado c/ Firebird 3 também se repetiu com 2.52 usando o FireDAC, mas não usando o DBX - aparentemente o problema é do FireDAC

    configurando o "Data Mapping Rules" no FDConnection ou em FDQuery e mapeando esses tipos estranhos ao Firebird para FmtBCD (como é originalmente gerado) aí tudo funciona legal

    pelo que sei esse mapeamento de conversão de tipo de campo seria aplicável apenas para equalizar tipos de bancos distintos usados na aplicação e compartilhando o mesmo código - foi o que vi numa apresentação do Fernando Rizzato

    no caso presente o que está ocorrendo é atribuição de tipo estranho ao banco de dados - Currency e BCD não existem no Firebird

    a principio o problema está resolvido mas estou agora com "a pulga atrás da orelha" pq não sei se pode haver outras implicações, se o driver do Firebird está devidamente incorporado pelo FireDAC, se não terei problemas outros em decorrência desse...

    obrigado por seus comentários ou sugestão

  3. boas tardes, pessoal

    hoje um cliente me pediu para gerar um Evento 111500 (Pedido de Prorrogação da Suspensão do ICMS), objeto da NT 2015/001. para uma nfe de remessa para industrialização

    eu nem sabia dessa possibilidade, até então, e raras vezes, uma nfe com prazo à expirar tinha uma nfe de retorno (simulado) e outra de remessa (simulada) e então o prazo se renovava

    então, também não sei por onde começar...

    por favor, preciso de orientação, de algum xml preenchido, o que tiver

    eu já trato eventos como Cancelamento da NFe, Inutilização de Numeração e Carta de Correção e até hoje ninguém havia solicitado esse Evento

    obrigado

    Otavio Benini

  4. obrigado por responder, BigWings

    essas 2 tags foram um exemplo, dado que topei com elas na primeira investida

    então, para os itens da nota fiscal tem-se TDetCollectionItem

    mas e para grupos como:

    • Emit (emitente)
    • Dest (destinatário)
    • Retirada
    • Entrega
    • Impostos.ICMS
    • Impostos.IPI
    • Impostos.PIS
    • Impostos.COFINS
    • Transporte

    existe Collection para cada um desses ?

    a idéia e ter a procedure de geração do xml limpa e curta, com chamadas diretas ou alguns if's, especialmente para impostos

    com impostos a clareza de definição dos campos e códigos é importante na manutenção do programa

    é essa a idéia e agradeço por suas informações

    obrigado

    Otavio Benini

  5. Italo,

    tá claro prá mim como fazer seguindo o modelo "linguiça", onde tenho uma sequencia "with componente.add.nfe do" e com if's vou montando cada trecho das informações

    as questão é: eu quero poder montar determinados grupos de informações fora da "linguinça", com procedures ou functions, e comecei pela contingência

    de cara faltaram então o "endereço completo" dessas propriedades para que possa fazer implementar numa procedure

    por endereço completo entenda a referencia direta da propriedade dentro do componente, como em 

    • ACBrNFe1.Configuracoes.WebServices.UFCodigo ou
    • ACBrNFe1.Configuracoes.Geral.FormaEmissao

    são propriedades dentro do componente, sendo a primeira uma informação da nota fiscal que se pretende e a outra uma informação relativa à forma de apresentação do xml ao fisco

    ambas as propriedades determinam e/ou vinculam outras propriedades, como a UF definirá o SVC e a forma de emissão determinará a necessidade de informações adicionais e obrigatórias como dhCont e xJust, além de alteração na formação da chave, etc.

    penso que, talvez, nestes casos, faltou exibir essas propriedades no componente de forma a poder referencia-los diretamente

    será que desta vez me fiz entender ?

    obrigado

    Otavio Benini

  6. obrigado por me atender, Italo

    em minha rotina eu gero o xml e só altero ambiente ou tipo de emissão no final

    então, quando estou gerando o xml informo as propriedades "defaults" como no prog exemplo:

            with ACBrNFe1.NotasFiscais.Add.NFe do begin

              . . .

              Ide.tpEmis := teNormal;

              Ide.tpAmb := taProducao

              . . .

            end;

    ao final tenho opção para alterar e se houver alteração faço, como no prog exemplo:

    ACBrNFe1.Configuracoes.Geral.FormaEmissao   := StrToTpEmis(Ok,IntToStr(selFormaEmissao.ItemIndex+1));

    ACBrNFe1.Configuracoes.WebServices.Ambiente := StrToTpAmb(Ok,IntToStr(selAmbiente.ItemIndex+1));

    a forma de referenciar cada propriedade é diferente pq no primeiro caso usa-se .Add.NFe  numa "linguiça" e no segundo caso a referencia é direta e completa para a propriedade

    se tenho referencias diretas para as propriedades posso "quebrar" em diversas partes a rotina

    mas nos casos de Ide.dhCont e Ide.xJust, que não são referenciados na rotina com .Add.NFe, não encontro a referencia direta como nos casos que mencionei acima

    teoricamente deveria encontra-las em ACBrNFe1.Configuracoes.Geral juntamente com FormaEmissao

    espero ter sido mais esclarecedor em minha pergunta

    obrigado

    Otavio Benini

  7. prezados,

    tentei agora mesmo (06/05/19 19:40), em ambiente de homologação, emitir nota fiscal, SEFAZ-SP

    foram observadas as tags tpEmis = 6 = SVCAN, dhCont e xJust

    houve rejeição conforme anexo

    ignorando a condição de contingencia a nota é emitida normalmente, tpEmis = 1 = Normal

    alguma luz ?

    Otavio Benini

    xml.png

    rejeicao.png

  8. "Correto. Também precisa informar na geração do XML as tags Ide.dhCont e Ide.xJust com a data e hora de entrada em contingência e a justificativa, respectivamente."

    não ter a informação acima na sexta-feira quando procurei por orientação sobre os procedimentos para operação em contingência está fazendo agora toda diferença, segunda-feira menos de 5 minutos antes do SVCAN entrar em serviço

    Otavio Benini

     

  9. prezados, bom dia

    se o SEFAZ-SP estará em Contingência Agendada, o contribuinte poderá emitir em modo SCAN  (teSCAN) ?

    o que isso implica ?

    alguma recomendação especial ?

    que outras providencias deverão ser adotadas ?

    tem algum vídeo ou outro material sobre o processo ?

    obrigado

    Otavio Benini

  10. bons dias, pessoal

    apenas o ambiente de homologação está apresentando essa "não conformidade"

    o fato é que se perderam nessa tentativa de controle sobre pagamentos

    vejam, por exemplo, que o campo n. da duplicata pode ter 60 dígitos (leiauteNFe_v4.00.xsd)  mas não é mais o n. da duplicata, como antes, que se aponta ali, agora é apenas o n. da parcela, com 3 casas

    Otavio Benini

     

  11. bom dia, pessoal

    por segurança, o diretório do executável foi protegido contra gravação

    meu aplicativo usa o ACBrMail para enviar o xml e o pdf para o destinatário da nfe

    nesse processo está ocorrendo acesso negado ao gravar temp.xml e o processo interrompido

    como direcionar esse temp.xml para outro diretório ?

    obrigado

    Otavio Benini

  12. prezados, boa tarde

    testei o aplicativo em ambiente de homologação e ok

    entrou em produção e na primeira nota houve rejeição indicando não informar transportador e reboque

    no teste não havia placa e estado do transportador

    então fiz a mesma coisa com a nota real

    depois disso, ao processar, o lote é recebido (msg) e depois Lote em processamento fica em loop

    e meu cliente pressionando !!

     

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