Ir para conteúdo
  • Cadastre-se

carlessoflu

Membros
  • Total de ítens

    223
  • Registro em

  • Última visita

Tudo que carlessoflu postou

  1. Bom dia! Estou com o mesmo problema do Dall'ara. Preciso importar as notas de serviço para meu sistema, mas na minha cidade (Linhares-ES) não existe essa opção. No site da prefeitura eu baixo um arquivo xml que vem com todas as notas do período. Como faço para importar essas notas para o meu sistema, uma por uma? Segue o xml em anexo. NotasFiscais.xml
  2. Bom dia Fagner. Cara, como já tem um tempo não lembro exatamente o que foi feito. Mas quem acertou foi o administrador da rede, ele alterou alguma coisa na impressora e acertou o problema. Mas infelizmente não sei dizer o que ele fez.
  3. Bom dia! Tenho um sistema em Delphi e estou enviando alguns dados para o banco de dados MySql para fazer uma sincronização de arquivos. Funciona da seguinte forma: Faço um cadastro/alteração no sistema Delphi, depois jogo para o MySql, no MySql tenho uma procedure que verifica se o arquivo já existe, se sim faz um UPDATE, se não existir faz um INSERT. O problema é o seguinte: tenho duas tabelas MESTRE/DETALHE, tabela FAZENDAS que são os dados da fazenda, e tabela FAZENDAS_MAPAS, que são os mapas de uma fazenda. na tabela FAZENDAS_MAPAS tem um campo COD_FAZENDA, que é o numero do registro da tabela FAZENDAS. Esse campo registro é autoincremento. Quero saber como faço para retornar o número do campo REGISTRO da tabela FAZENDAS quando faço um UPDATE. Quando faço um INSERT já consegui, usei o seguinte código no Delphi: function TForm1.mysql_insert_id(SQLConnection: TSQLConnection): Integer; var SqlDataSet: TSqlDataSet; begin result:= 0; SqlDataSet:= TSqlDataSet.Create(nil); try SqlDataSet.SQLConnection:= SQLConnection; SqlDataSet.CommandText:= 'select LAST_INSERT_ID()'; SqlDataSet.Open; result:= SqlDataSet.Fields[0].AsInteger; SqlDataSet.Close; finally SqlDataSet.Free; end; end; O código "select LAST_INSERT_ID()" retorna o número do ultimo registro inserido. Mas para retornar o ultimo registro alterado não consegui fazer. Abaixo segue a procedure de importar fazendas no MySql. Se dentro dessa procedure desse para retornar o numero do registro seria ótimo. CREATE DEFINER=`innetsistemas15`@`%%` PROCEDURE `ImportaFazendas`( PREGISTRO int(11), PCLIENTE int (11), PNOME_FAZENDA varchar(80), PENDERECO varchar(80), PNUMERO varchar(10), PBAIRRO varchar(60), PCIDADE varchar (60), PESTADO varchar (2), PCEP varchar(10), PRESPONSAVEL varchar(80), POBS varchar(250), PTEL_RESPONSAVEL varchar(16), PDATAMOD timestamp) BEGIN DECLARE cli int (11); declare nome varchar(80); Set cli = 0; set nome = '0'; SELECT cliente, nome_fazenda From FAZENDAS where cliente = PCLIENTE and nome_fazenda = PNOME_FAZENDA into cli, nome; if ((cli <> 0) and (nome <> '0')) then UPDATE `FAZENDAS` SET DATAMOD=PDATAMOD, CLIENTE = PCLIENTE, NOME_FAZENDA = PNOME_FAZENDA, ENDERECO = PENDERECO, NUMERO = PNUMERO, BAIRRO = PBAIRRO, CIDADE = PCIDADE, ESTADO = PESTADO, CEP = PCEP, RESPONSAVEL = PRESPONSAVEL, OBS = POBS, TEL_RESPONSAVEL = PTEL_RESPONSAVEL WHERE DATAMOD < PDATAMOD and cliente = cli and nome_fazenda = nome; else Insert into FAZENDAS (CLIENTE, NOME_FAZENDA, ENDERECO, NUMERO, BAIRRO, CIDADE, ESTADO, CEP, RESPONSAVEL, OBS, TEL_RESPONSAVEL, DATAMOD) values (PCLIENTE, PNOME_FAZENDA, PENDERECO, PNUMERO, PBAIRRO, PCIDADE, PESTADO, PCEP, PRESPONSAVEL, POBS, PTEL_RESPONSAVEL, PDATAMOD); end IF; END
  4. Aconteceu a mesma coisa comigo. Conseguiu resolver?
  5. É que um cliente quer que o sistema funcione dessa forma para ele, por isso estou fazendo essa modificação. Muito obrigado pela ajuda, consegui resolver pegando a base do que vcs me ajudaram. Vou postar o código da trigger na tabela de estoque de matéria prima, caso alguém tbm tenha essa dúvida. CREATE TRIGGER ESTOQUE_ATU_PROD FOR MATERIAPEST ACTIVE AFTER UPDATE POSITION 0 AS declare ASSOCIADO varchar(15); declare DESCRICAO varchar(120); declare ASSOC_LOJA integer; declare ASSOC_COR integer; declare ATU integer; begin --verificar se é para fazer ou não o código da trigger - se for 0 não faz se for 1 faz --essa verificação é feita para não entrar em looping, ex: atualiza estoque_prod ai a trigger atualiza o estoque_mat --e vice-versa e fica no looping Select atu from atu_estoque_pela_trigger into :ATU; if (coalesce(:atu,0) = 1) then begin --buscar dados da materia prima Select assoc_loja, assoc_cor, associado, descricao from cad_materia where referencia = new.referencia into :ASSOC_LOJA, :ASSOC_COR, :associado, :DESCRICAO; if ((:ASSOCIADO is not null) and (:ASSOCIADO <> '')) then begin --faz um update colocando o atu = 0 para não fazer o codigo da trigger na tabela de estoque (produtos) update atu_estoque_pela_trigger set atu = 0; --atualizar estoque do produto update estoque set q1 = new.quant, quant_total = new.quant where referencia = :ASSOCIADO and loja = :ASSOC_LOJA and cor = :ASSOC_COR; --faz um update colocando o atu = 1 para voltar ao normal update atu_estoque_pela_trigger set atu = 1; --inserir registro no kardex insert into kardex (data, referencia, descricao, operacao, QUANT, cor, loja, tam, registro) values (current_date, :ASSOCIADO, :DESCRICAO, 'Associação a matéria-prima', (new.quant-old.quant), :ASSOC_COR, :ASSOC_LOJA, 'U', GEN_ID(gen_kardex,1)); end end end
  6. Fica meio inviável pq são várias telas que fazem entrada/saída do estoque, se for colocar para fazer em cada tela vai ficar muito trabalhoso, e ainda posso esquecer de colocar em alguma né.
  7. Boa tarde Gr@c@, muito obrigado pela resposta, mas não entendi muito bem, poderia me explicar melhor por favor? - o que é esse campo Flag? - Esse campo Flag ficaria onde? nas tabelas de estoque ou na própria trigger? Muito obrigado por enquanto!
  8. Tenho a seguinte situação: tenho uma tabela de estoque de produtos (ESTOQUE_PROD) e uma tabela de estoque de matéria-prima (ESTOQUE_MAT), preciso que ao atualizar qualquer uma das tabelas a outra tbm atualize, ex: ao atualizar o estoque de um produto atualize tbm o estoque da matéria-prima referente ao produto e vice versa. Para isso criei uma trigger em cada tabela, quando atualizo a tabela ESTOQUE_PROD a trigger atualiza tbm a tabela ESTOQUE_MAT e vice versa, porém, isso faz com que o sistema fique em looping, um atualizando o outro sempre. Tive a ideia de desabilitar a trigger antes de fazer o update e habilitar depois do update, porem o firebird não aceita a palava chave ALTER dentro da trigger. Segue a trigger da tabela de ESTOQUE_PROD: #Código 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 CREATE TRIGGER ESTOQUE_ATU_MATP FOR ESTOQUE_PROD ACTIVE AFTER UPDATE POSITION 0 AS begin --desabilitar a trigger da tabela ESTOQUE_MAT para não entrar em looping alter trigger estoque_atu_prod inactive; --atualizar estoque de matéria-prima update ESTOQUE_MAT set quant = new.q1 where referencia = new.referencia; --habilitar a trigger da tabela materiapest alter trigger estoque_atu_prod active; end end Alguém sabe o que devo fazer?
  9. Descobri o problema. coloquei para abrir o sistema, o processo ficou aberto e o sistema não abriu, como vinha acontecendo, ai fui fechando os processos um por um, até que quando fechei o spoolsv.exe o sistema abriu na hora, fiz outros testes e percebi que quando fechava esse processo funcionava normalmente. Então descobri que o pessoal da rede instalou uma impressora HP LaserJet Pro MFP M127fn em rede, foi justamente a partir desse dia que começou o problema. O problema é que o spoolsv não pode ficar fechado, senão não vai dar para imprimir nada, alguém sabe o que pode ser feito?
  10. Bom dia Solivan! Sim, executo algumas funções, por exemplo: * acesso um arquivo .ini para verificar o local do banco de dados e o serial para entrar no sistema; * um código para alterar o formato da data no windows; * um código para verificar se a versão do exe é inferior a versão do exe que está no servidor, se for atualiza o exe; (não está fazendo esse código pq a versão é a mesma); * um código para buscar o serial no servidor ftp caso o serial do sistema esteja incorreto ou expirar; (tbm não está fazendo pq o serial está certo);
  11. Vou tentar entrar em contato com o suporte do Avast. Mas já até desinstalei o Avast e continuou o problema.
  12. Infelizmente não é o antivirus. Desabilitei o antivirus e continua a mesma coisa. O antivirus é o Avast.
  13. Bom dia! Peço desculpas pois sei que este fórum é para o componente ACBr, mas os membros deste são tão prestativos que vou escrever aqui o meu problema. Tenho um sistema feito em Delphi 7, o sistema funciona perfeitamente já tem 10 anos, porém, em alguns clientes não está mais querendo abrir. Acontece o seguinte: o processo abre mas o sistema não abre, aí se clico para abrir novamente abre outro processo, e o sistema não abre, e por ai vai. Algumas vezes, somente as vezes, acontece depois de um tempão abrir vários sistemas, de todos os processos que ficaram abertos. obs: quando reinicio o computador e tento da primeira vez o sistema abre, depois de um tempo ele trava e precisa ser fechado, ai já não abre mais, e tem que reiniciar o computador novamente. Já passei antivirus, antimalware, etc... por favor me ajudem. As máquinas são Windows xp, e algumas windows 7. Desde já agradeço!
  14. Não aparece nenhuma mensagem de erro. Como assim qual o nome do mapeamento? O redirecionamento na verdade quem fez foi uma empresa que administra a rede do meu cliente. Normalmente eu coloco no campo Porta o seguinte: \\IP_do_computador\nome_de_compartilhamento_da_impressora. Porém no windows server 2008 não dá para compartilhar o redirecionamento. Como eu deveria colocar no campo Porta do Acbr?
  15. Bom dia! Uso o AcbrEtq para fazer impressão em impressoras térmicas, Argox, Zebra... Até agora sempre deu tudo certo, porém, um cliente resolveu fazer uma mudança e agora não consigo mais imprimir. A situação é a seguinte: O cliente tem a fábrica e tem a loja, ficam em locais diferentes, para acessar o sistema na loja foi feito um acesso remoto (Conexão de Área de trabalho remota) onde a loja acessa a fabrica e usa o sistema. A impressora Argox OS 214-Plus PPLA está instalada no computador da loja, e o cliente precisa acessar o servidor e de lá mandar imprimir na impressora que está na loja. Para isso foi feito um redirecionamento da impressora, instalando o driver da impressora no servidor e de lá imprime na loja. Quando manda imprimir uma página de teste pelo próprio driver no servidor a impressão funciona, mas quando tento mandar imprimir pelo sistema não vai. Já tentei fazer o esquema da porta compartilhada: \\nome do computador\nome da impressora. Já tentei fazer o esquema de instalar uma impressora LPT1, marcar o spool de impressão e setar a porta da impressora. Ambos não funcionaram. máquina da loja: Windows 7. Servidor : Windows server 2008. Por favor me ajudem, não sei mais o que fazer. Talvez se desse para imprimir diretamente pelo driver da impressora funcione, mas não sei se tem como fazer isso pelo AcbrEtq.
  16. Era isso mesmo... Muito obrigado. RESOLVIDO.
  17. ok Rondinele Martins, muito obrigado! vou ligar para o sefaz.
  18. Bom dia a todos! Estou implementando o MDF-e, estou usando a versão 100a com os schemas novos, aparentemente está tudo certo, porém quando tento enviar em ambiente de homologação está dando o seguinte erro: Rejeição: Emissor não habilitado para emissão do MDF-e. o "Emissor" nesse caso é a minha empresa que está emitindo o MDF-e ou é o estado? Sou do Espírito Santo. Já pesquisei no fórum mas não encontrei nada a respeito. Desde já agradeço. [RESOLVIDO]
  19. Resolvido! a ordenação no delphi estava assim: indexfieldnames := 'T1;T2;T3;T4'; e no groupkey no rave eu estava colocando dessa mesma forma e não estava dando certo, então coloquei da seguinte maneira e funcionou: T1 + ; + T2 + ; T3 + ; T4. Tudo certo, Vlw!
  20. Não tem isso não Juliomar.
  21. Boa tarde pessoal! Peço desculpas pois sei que este forum não é sobre rave, mas como o pessoal daqui é bem prestativo espero que me ajudem, já pesquisei em vários lugares e não encontrei respostas. Estou criando um relatório em Rave 5.0, preciso fazer uma quebra de grupo, estou usando uma band Group Header, até ai tudo bem, porém no campo GroupKey preciso colocar mais de um campo da tabela. Gostaria de saber se é possível fazer um Group header com mais de uma group key? Ex: Estou fazendo uma listagem de itens de um pedido e quero agrupar pela grade de tamanhos, então no campo group key tenho que colocar “Tamanho1;Tamanho2;Tamanho3...Tamanho10” etc. Cada campo Tamanho é um campo na tabela, estou colocando o indexfieldnames para ordenar dessa mesma forma, porém não está funcionando. Alguém pode me ajudar por favor? Desde já agradeço.
  22. ok, obrigado!
  23. Uma dúvida... quando atualizo a pasta ACBr, é necessário compilar e instalar os componentes de novo?
×
×
  • 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.