Ir para conteúdo
  • Cadastre-se

FabianoCunha

Membros
  • Total de ítens

    158
  • Registro em

  • Última visita

  • Days Won

    2

Tudo que FabianoCunha postou

  1. Amigos, Apenas fiz a criação no meu sistema de uma tabela de cadastro de CEST e coloquei um campo no cadastro do Item para o usuário dizer qual o CEST. Não vou implementar a complexidade de relacionamento N para M entre NCM e CEST. Para auxiliar na carga inicial, vou pegar a relação de NCM dos itens do cliente e gerar em XLS para ajudar o contador a fazer a co-relação para mim.
  2. Antonio, Coloque aqui no forum todo o codigo que você esta usando para fazer a inclusão do SQL, inclusive com a linha do group by. Desconfio que o problema esteja no comando SQL e não nos componentes do Delphi.
  3. Alessandro, o meu executável saiu de quase 3 mega para uns 17 mega, também não deu diferença entre release e debug. Não sei o motivo de ter aumentado o tamanho. Vou testar ainda aqueles programas que tem na internet que dizem fazer a redução do exe. Amigo, no meu caso deu certo apenas a operação de localizar e substituir. Não precisei apagar os fields do objeto query e inseri-los novamente. Só porque eu utilizei o programa TextPad para fazer a substituição. Dentro do programa TextPad, existe uma opção de "localizar em arquivos" Find in Files. Procurei em todos os arquivos *.dfm e *.pas. Localizar a palavra TStringField. Quando listar todos os arquivos, é só pedir para o textPad abrir todos. E em seguida fazer a substituição em todos os documentos abertos. Salvar tudo e abrir o Delphi. Att, Fabiano Cunha
  4. Zildo, Boa noite, Eu comecei estudando o exemplo do caminho: ..\Exemplos\ACBrDFe\ACBrNFe\Delphi\ . Vai te ajudar muito a emitir uma NFCe.
  5. Migrei o meu sistema do Delphi 7 para Xe7, sem muita complicações. Em delphi 7 era zeoslib + Rxlib. Fiz a conversão para Xe7 para Zeoslib + JVCL. Para migrar do Rxlib para JVCL existe uma utilitário que faz a alteração do nome das classes no seu código fonte. Algumas classes ele não fez a mudança, neste caso utilizei o TextPad (localizar e substituir), pois encontrei na internet a referência entre as classes Rxlib e JVCL. Foi tranquilo. No delphi Xe7 ele vai reclamar do tipo dos campos Fields gerados pelo Zeoslib, Neste caso utilizei o localizar e substituir novamente e tudo certo. TstringFields para TwideStringFields. O que deu um pouco de trabalho, foi uns componentes meus. Tive que refazê-los. Os que utilizadam algoritmo de criptografia parou de funcionar, neste caso eu mudei para a lib DCPCrypt-master. Levei uma semana para fazer a migração, trabalhando só 3 horas por dia.
  6. Jean, uma opção criar o cadastro de PDV e associar a este o número da Serie que ele utilizará no Modelo 65. Lembrando aos colegas que dentro de cada serie quando chegar ao número 999.999.999, você poderia retornar para a nota 1, pois existe um campo chamado "giro", que deve ser incrementado. Podendo assim ser reiniciando a numeração da NF. Ou poderá criar uma nova série. Esta questão do giro é muito utilizada nas NF de conta de telefone/ água/ energia. E agora existe uma legislação especifica para empresas de telecom/provedores de internet. Onde poderá reiniciar a numeração das notas todo mês. Creio que deverá fazer isso, utilizando o "giro"
  7. Licerio, Bom dia! Dá uma olhada neste tópico:
  8. Everson Luis, Eu uso os componentes ZeosLib no Delhi 7. Usando apenas objetos DataSet (zquery) + DataSource padrão do delphi. + objeto ZupdateSQL (ZeosLib). Este desenho você terá os mesmo controle de uso que fazia quando usamos os objetos Table do Delphi. qryCliente (contendo o SQL que busca pela chave primaria da tabela todos os campos da mesma). Você deverá dizer no Zquery qual é o UpdateSQL. updCliente( clique duplo, ele abre o editor de Fields, só pedi gerar o sql dos comandos (INSERT, UPDATE e delete). O código poderá colocar no evento que você terá as informações para passar no parâmetro da query. qryCliente.close; qryCliente.Params[0].value:= 'valor'; qryCliente.open; if (qryCliente.RecordCount > 0 ) then begin qry.Cliente.edit; end else begin qryCliente.insert; end; Para salvar os dados: try if (dsCliente.State in [dsInsert, dsEdit]) then begin qryCliente.post; //salva as alterações. qryCliente.Connection.commit; //Apos a operação de POST, você faz o COMMIT da transação. end; except on ex:exception do begin qryCliente.Connection.Roolback; MessageBox(handle,PAnsiChar(ex.Message),'ERRO: Gravar dados',MB_OK); end; end; Espero que consiga de ajudar. Qualquer coisa me fala que preparo um exemplo para você.
×
×
  • 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.

The popup will be closed in 10 segundos...