Ir para conteúdo
Fórum Script Brasil

Jhonas

Monitores
  • Total de itens

    9.657
  • Registro em

Tudo que Jhonas postou

  1. voce quer fazer isso somente em um campo da coluna ou em todos os campos da coluna ?
  2. capability not supported Capacidade Não Suportada .. significa que não é possivel usar dessa maneira Poste o erro extamente como ele aparece na sua tela
  3. Jhonas

    ZConnection + DDNS

    Veja se a configuração está correta http://www.winco.com.br/ddns/interna.phtml?obj_id=367 abraço
  4. Clicar com o botão direito do mouse em INICIAR > Propriedades > Personalizar > Adicionar > Clicar no botão Procurar > ibguard.exe e a mesma coisa para o ibserver.exe abraço
  5. Jhonas

    Tamanho de banda

    Tente assim: var c : integer = 1; procedure Tfrm_gabarito_nf.frGabaritoNFNeedData(Sender: TObject; var MoreData: Boolean); begin MoreData := (c < qry_gabarito_itens.RecordCount ); if MoreData then begin if c > 15 then begin frGabaritoNF.PreviewModal; frGabaritoNF.NewPage; end; qry_gabarito_itens.Next; end else begin frGabaritoNF.PreviewModal; exit; end; inc(c); end; procedure Tfrm_gabarito_nf.frGabaritoNFAfterPrint(Sender: TObject); begin c := 1; end; abraço
  6. eu tenho 3 tabela TESTE -cod_teste DESC_TESTE - cod_teste - altura - vazao - corrente - entrada MOTIVO -cod_teste -motivo para cada teste podem existir N testes 6 por exemplo e para este mesmo teste pode existir 3 motivos entaum ficaria 1:6:3 como eu faria esse join acho que não é possivel Como não é possivel ? ... voce tem o campo comum ( cod_teste ) nas 3 tabelas é só fazer o Join Exemplo SELECT TESTE.cod_teste, DESC_TESTE.cod_teste, DESC_TESTE.altura, DESC_TESTE.vazao, DESC_TESTE.corrente, DESC_TESTE.entrada,MOTIVO.cod_teste, MOTIVO.motivo FROM TESTE INNER JOIN DESC_TESTE ON (TESTE.cod_teste = DESC_TESTE.cod_teste) INNER JOIN MOTIVO ON (TESTE.cod_teste = MOTIVO.cod_teste) OBS: Voce precisa ler mais sobre o delphi e sobre instruções SQL abraço
  7. Voce mesmo já respondeu mas não deu certo, pois minha query tem um relacionamento e aparece a mensagem capability not supported Capacidade Não Suportada .. significa que não é possivel usar dessa maneira OBS: Voce não poderá usar relacionamento entre tabelas para excutar um updatesql abraço
  8. Isso é bem simples.... use esta rotina para saber qual é a versão do delphi instalada na maquina, o resto voce já fez, é só modificar o seu código. Uses Registry; procedure TForm1.Button1Click(Sender: TObject); var Reg: Tregistry; S: string; begin Reg:=Tregistry.create; with Reg do begin rootkey := HKEY_CURRENT_USER; If Openkey('SOFTWARE\BORLAND\PACKAGE COLLECTION EDITOR\INSTALLED PROGRAMS\DELPHI\',false) then S := readstring('VERSION') else showmessage('Registro não encontrado'); closekey; end; showmessage('Versão do Delphi = ' + s); end; abraço
  9. mensagem EDataBaseError with message 'Duplicate entry '201-8/2009' for key 1. mensagem EDataBaseError with message 'Entrada Duplicada 201-8/2009' para chave 1 O erro está bem claro ... campos usados como chaves não podem ter valores duplicados Exemplo .... Seria algo assim: Uses DB; procedure TForm1.btnOkClick(Sender: TObject); var erro : boolean; begin erro := false; try DM.Cds_Inadimplente.Post; on EDatabaseError do Begin MessageDlg ('Erro! Valor Não Permitido!' + , mtError,[mbCancel],0); DM.Cds_Inadimplente.CancelUpdates; erro := true; end; end; //try if not erro then begin DM.Cds_Inadimplente.ApplyUpdates(-1); ShowMessage ('Foi gerada a tabela referente ao mês de ' + mes_ano + ' incluindo todos os inadimplentes'); end; abraço
  10. Jhonas

    AlphaSkin

    Já que não dá pra comprar, da outra pesquisada no forum http://scriptbrasil.com.br/forum/index.php...;highlite=skins abraço
  11. Veja se consegue tirar alguma idéia deste post http://scriptbrasil.com.br/forum/index.php?showtopic=139898 abraço
  12. Exemplo: procedure TFOrm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin DBGrid1.Columns[0].ReadOnly := true; // coluna 0 não editavel DBGrid1.Columns[4].ReadOnly := true; // coluna 4 não editavel DBGrid1.Columns[5].ReadOnly := true; // coluna 5 não editavel end; A maioria diria que Não por causa da violação de chaves, etc ..... Mas é possivel se voce souber como trabalhar com o ClientDataSet.Delta .... é um pouco trabalhoso mas dá pra ser feito http://www.ericksasse.com.br/applying-upda...le-transaction/ Mas usar as tabelas separadamente fica mais fácil abraço
  13. Douglas o programa esta muito bom... mas pense numa maneira e automatizar a escolha da versão do delphi, ou seja faça uma varredura no micro para saber qual é a versão que esta sendo utilizada e executar os procedimentos automaticamente. abraço
  14. exemplo para voce fazer as adaptações necessarias ao seu uso http://www.linhadecodigo.com.br/Dica.aspx?id=1072 abraço
  15. Não .... Amigo, a conexão da impressora é serial e paralela ( Interface de Comunicação Dual: Paralela DB25 e Serial (RS232C) DB9. ), possui as duas saídas. Para trabalhar com RJ45 você terá que utilizar um conversor serial/RJ45 ou paralela/RJ45. Funciona perfeitamente bem Para trabalhar com USB você terá que suar um conversor DB25/USB http://images.tigerdirect.ca/itemDetails/M...164-out3-hl.jpg ou Para trabalhar com USB você terá que usar um conversor DB9/DB25/USB http://media.digikey.com/photos/Assmann%20..._DA-70119-R.jpg abraço
  16. Vem a mensagem que não foi possível carregar "dbexpinf.dll" Significa que ele esta pedindo esta dl para poder se conectar ao banco de dados Isso é mais do que óbvio. Aplicações rodando em uma maquina cliente que não tenha o Firebird instalado e necessario copiar para a maquina cliente alguns arquivos do Firebird para que a aplicação possa ser executada Faça uma pesquisa no forum que voce vai achar quais são os arquivos necessarios http://scriptbrasil.com.br/forum/index.php...ghlite=firebird abraço
  17. Voce quer fazer Ctrl+c Ctrl+v dentro de um DBGrid ou um Ctrl+c do DBGrid para outro lugar ? Ainda não entedi que tipo de alteração está querendo ... Ctrl+c Ctrl+v não altera nada .. só copia o registro do jeito que está para outro lugar seja um pouco mais claro abraço
  18. sugiro que da mesma forma como esta passando os demais parametros, este tambem seja do mesmo modo experimente para ver se some o erro abraço
  19. voce deve usar JOIN nas tabelas e pode usar um ChildBand ... na banda de Detail tem uma opção chamada HasChield ... deixe como true e aparecerá esta banda filha de detail ..mas as tabelas deverão estar em uma unica consulta abraço
  20. Jhonas

    ZConnection + DDNS

    Banco de Dados = {endereço da base de dados} Host Name = {localhost ou o IP do servidor} OBS: seu servidor deve autorizar o acesso ao banco de dados abraço
  21. DataModule2.ADOQuery_inserir_prepedido.Parameters.ParamByName('cod').Value := DBEdit15.Text; Ao usar um componente DBEdit pressupõe que ele esteja linkado diretamente a um campo de sua tabela e que ela esta aberta Se a sua tabela estiver fechada no momento que que voce vai passar o valor como parametro voce receberá esta menssagem ADOQuery_inserir_prepedido : CommandText does not return a result set; portanto sugiro que da mesma forma como esta passando os demais parametros, este tambem seja do mesmo modo abraço
  22. Voce quer Script ou um código em delphi ? é para jogo ?
  23. Coloque este código no evento OnDrawColumnCell do DBGrid, assim o registro com cursor ficará marcado durante a navegação procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If odd(Query1.RecNo) then begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= cl3DLight; end else begin DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.Brush.Color:= clWhite; end; if (gdSelected in state) then DBGrid1.Canvas.Font.Color:= clred else DBGrid1.Canvas.Font.Color:= clBlack; DBGrid1.Canvas.FillRect(Rect); DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State); end; Isso porque ao deixar a opção dgRowselected como true, a opção dgEditing fica false automaticamente ... ou seja, se voce quiser a linha toda pintada, o foco não pode estar em um campo especifico abraço
  24. Jhonas

    Tamanho de banda

    procedure Tfrm_gabarito_nf.frGabaritoNFNeedData(Sender: TObject; var MoreData: Boolean); begin if qry_gabarito_itens.RecordCount > 15 then begin MoreData := not qry_gabarito_itens.RecordCount < 16; if MoreData = False then frGabaritoNF.NewPage; qry_gabarito_itens.Next; end; MoreData := not qry_gabarito_itens.Eof; qry_gabarito_itens.Next; end; if qry_gabarito_itens.RecordCount > 15 then Veja que se seu recordcount não for maior que 15 esta rotina não será executada Engraçado que eu tenho 3 registros e só está mostrando 2 ... Isso porque ele para no ultimo registro da tabela, então voce tem que fazer uma ultima leitura para este registro abraço
  25. Principais Exceções O Delphi define muitas exceções, para cada erro existe uma exceção correspondente. Classe Descrição Exception Exceção genérica, usada apenas como ancestral de todas as outras exceções EAbort Exceção silenciosa, pode ser gerada pelo procedimento Abort e não mostra nenhuma mensagem EAccessViolation Acesso inválido à memória, geralmente ocorre com objetos não inicializados EConvertError Erro de conversão de tipos EDivByZero Divisão de inteiro por zero EInOutError Erro de Entrada ou Saída reportado pelo sistema operacional EIntOverFlow Resultado de um cálculo inteiro excedeu o limite EInvalidCast TypeCast inválido com o operador as EInvalidOp Operação inválida com número de ponto flutuante EOutOfMemory Memória insuficiente EOverflow Resultado de um cálculo com número real excedeu o limite ERangeError Valor excede o limite do tipo inteiro ao qual foi atribuída EUnderflow Resultado de um cálculo com número real é menor que a faixa válida EVariantError Erro em operação com variant EZeroDivide Divisão de real por zero EDatabaseError Erro genérico de banco de dados, geralmente não é usado diretamente EDBEngineError Erro da BDE, descende de EDatabaseError e traz dados que podem identificar o erro try DM.Cds_Inadimplente.Post; DM.Cds_Inadimplente.ApplyUpdates(-1); [b]Except on E: Exception do[/b] begin MessageDlg('Erro ao salvar o registro.'+#13+#10+E.Message,mtError,[mbOk],0); DM.Cds_Inadimplente.CancelUpdates; end; end; DM.V_Morador.Next; end; ShowMessage ('Foi gerada a tabela referente ao mês de ' + mes_ano + ' incluindo todos os inadimplentes'); End; Veja que voce colocou a classe basica das Exceções e dela são derivadas todas as outras Primeiro veja que tipo de exceção esta sendo gerada para poder tratar esse erro try DM.Cds_Inadimplente.Post; DM.Cds_Inadimplente.ApplyUpdates(-1); [b]Except on E: Exception do[/b] begin ShowMessage('Exception class name = '+E.ClassName); ShowMessage('Exception message = '+E.Message); DM.Cds_Inadimplente.CancelUpdates; end; end; DM.V_Morador.Next; end; ShowMessage ('Foi gerada a tabela referente ao mês de ' + mes_ano + ' incluindo todos os inadimplentes'); End; http://scriptbrasil.com.br/forum/index.php...te=exce%E7%F5es abraço
×
×
  • Criar Novo...