Re: [delphi-br] Programa compilado no Windows 7 está lento

2010-02-24 Por tôpico Marcelo Luiz Onhate
Não funcionaria será, clicar com o direito do mouse no atalho ir em 
Compatibilidade e rodar como vista, xp?
Sei lá, pode ser...


Re: [delphi-br] Re: Formatar texto

2010-02-22 Por tôpico Marcelo Luiz Onhate
Use o comando Format, parece com o do C, C++... mas ainda não é bom como 
o deles... já dá para quebrar um galho...

http://www.delphibasics.co.uk/RTL.asp?Name=Format


Re: [delphi-br] [OFF] IBExpert para MySQL?

2010-02-12 Por tôpico Marcelo Luiz Onhate
Sugiro esta:

HeidiSQL:
http://www.heidisql.com/


Re: [delphi-br] Delete no Detail

2010-02-02 Por tôpico Marcelo Luiz Onhate
Não precisa dar o .Post para dar o .ApplyUpdates...
quando der o .ApplyUpdate ele já dá o .Post em tudo que for necessário...

e outra, se vc der um .ApplyUpdate e não alterou nada ele simplesmente 
não vai fazer nada...

Sabes a diferença do Post e ApplyUpdate?
Post confirma somente no Client, ou seja, na memória local... e o 
ApplyUpdate gera sql e envia as alterações para o Banco...

Em 02/02/2010 15:16, magnunoliveira escreveu:

 Fala galera ...

 Seguinte, to com um master/detail com DBX e CDS. Quando excluo um item 
 no detail, uso cds_Detail.Delete;

 porem pra gravar qualquer alteracao uso:

 if (cds_Master.State in [dsInsert, dsEdit]) then
 begin
 cds_Master.Post;
 cds_Master.ApplyUpdates(0);
 end;

 o que ocorre é que ao excluir um item do detail, o state do Master nao 
 entra em dsEdit, nem dsInsert;

 se eu chamar diretamente o applyupdates, da a mensagem que o 
 cds_Master nao está em modo de edicao.

 entao a duvida é: como fazer para comitar as exclusoes no detail ?

 vlw




Re: [delphi-br] Re: Perda de Herança no For mulário

2010-01-25 Por tôpico Marcelo Luiz Onhate
Vá até o formulário, clique com o direito e View As Text
com isso vai editar o .dfm...
remova todos os inherited que acha que estão atrapalhando...

Pressione Ctrl + F12 compile e responda oq aconteceu...


Vlw!


Re: [delphi-br] ApplyUpdates - Gravar por procedure no Banco

2010-01-22 Por tôpico Marcelo Luiz Onhate
Consegui!

No evento OnBeforeUpdateRecord do provider...
OnBeforeUpdateRecord(Sender: TObject; SourceDS: TDataSet; DeltaDS: 
TCustomClientDataSet; UpdateKind: TUpdateKind; var Applied: Boolean);

Ele envia o DeltaDS com as alterações feitas e o UpdateKind para saber 
se update, insert ou delete...
Então passo para a procedure no banco por meio de um TSqlQuery... seto 
True para o Applied, com isso o provider não gera sql para atualização 
no banco de dados... pois eu o fiz...

Valeu!

Em 20/01/2010 23:34, berdam escreveu:
 é possível através de procedures realizar a inserção no banco de dados,
 agora intereceptar o applyupdates, teria q ver no cds ou provider se
 existe essa possibilidade.

 Yahoo escreveu:

 Para interceptar a inserção, atualização ou exclusão em um banco de
 dados, você pode usar triggers. Só não estou entendendo o que você
 quer fazer, pois não faz sentido interceptar uma inclusão e fazer a
 gravação através de procedure.

 [As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




[delphi-br] ApplyUpdates - Gravar por procedure no Banco

2010-01-20 Por tôpico Marcelo Luiz Onhate
Bom dia,

 Tem algum jeito de quando executar um ApplyUpdates em um 
TClientDataSet ao invés dele gravar direto no banco com Insert, Update e 
Delete, eu interceptar isso e gravar por meio de uma procedure do banco?


Obrigado.


Re: [delphi-br] NFe c/ ACBR

2010-01-19 Por tôpico Marcelo Luiz Onhate
Chave:= Copy(NFe.NotasFiscais.Items[i].NFe.infNFe.ID, 4);
Numero:= NFe.NotasFiscais.Items[i].NFe.Ide.cNF;
Serie:= NFe.NotasFiscais.Items[i].NFe.Ide.serie;

Em 19/01/2010 08:20, Dimas Bolognani escreveu:
 Preciso capturar o numero da NFE e chave gerada. Como faço?


Re: [delphi-br] Erro com ApllyUpdate

2010-01-19 Por tôpico Marcelo Luiz Onhate
Tenta colocar um AS

order by c.data_cot desc) AS VALOR_MOEDA

e coloca no Provider para não utiliza QuotedChar... faz esse teste e 
responde oque ocorreu.

Em 19/01/2010 12:07, Huander escreveu:


 Pessoal tenho um sqldataset onde eu faço uma SQL do seguinte modelo:

 select R.RECEB_COD, P.RAZAO_PAR, R.COD_EMP, R.COD_PAR, R.TIPDOC_COD,
 T.TIPDC_DESC,

 R.COD_MOEDA, M.DESC_MOEDA, R.RECEB_SIT,

 (select first 1 c.vlor_cot

 from cotacoes c

 where c.data_cot = :DATA and c.cod_moeda = r.cod_moeda

 order by c.data_cot desc) VALOR_MOEDA

 from RECEBER R

 left join parceiros p on (P.COD_PAR = R.COD_PAR)

 left join moedas m on (M.COD_MOEDA = R.COD_MOEDA)

 left join tipdoc t on (T.TIPDC_COD = R.TIPDOC_COD)

 where R.RECEB_COD = :CODIGO and R.COD_EMP = :EMPRESA

 A SQL funciona tranquilamente, faz todos os campos sem nenhum erro!

 Fiz a associação de sqldataset com um clientdataset e seu respectivo
 datasource!

 Faço alterações no registro especifico realizo um post e tudo ok!

 Quando mando um apllyupdate o reconcileerror me retorna o seguinte erro:

 Column Unknown RECEB_SIT At line 1, column 20

 Mas não há dúvidas que o campo existe! O providersflags estão todos 
 setados
 corretamente, sendo true pra os chaves(e também where) e os demais 
 update e
 somente os campos de left join com outras tabelas setados tudo como false!

 Detalhe quando eu retiro o campo que denominei como VALOR_MOEDA que é
 retornado através de um select dentro do select a operação com o 
 apllyupdate
 funciona normamente!

 Estou usando Delphi 2010 com firebird...

 Alguem já passou por algo parecido?

 Agradeço qualquer opinião...




Re: [delphi-br] TSQLQuery - TClientDataSet - Casting

2010-01-18 Por tôpico Marcelo Luiz Onhate
Declara assim:
procedure AbaterValor(parcela: TDataSet; valor: Double)


Em 18/01/2010 08:05, pcedisi escreveu:

 Olá a todo!

 Por favor, preciso de ajuda pra resolver o problema abaixo.

 Tenho a seguinte procedure:
 - procedure AbaterValor(parcela: TSQLQuery; valor: Double)

 Até o momento tudo bem, mas surgiu a necessidade de enviar
 a parcela vinda de um ClientDataSet tambem.

 Há alguma forma de fazer isso através de casting ou outra
 forma comum a estes componentes, permitindo o mesmo código
 para manipulação?

 obrigado,

 Paulo

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Re: TSQLQuery - TClientDataSet - Casting

2010-01-18 Por tôpico Marcelo Luiz Onhate
Não precisa, passa o Próprio...

AbaterValor(cdsParcela, valor);
AbaterValor(qryParcela, valor);

assim funciona...

Pois, ambos, TClientDataSet e TQuery... descendem de TDataSet... então 
eles são TDataSet tbm..

Em 18/01/2010 14:41, pcedisi escreveu:



 Obrigado Marcelo!

 Como faço para passar o dataset usando o
 TClientDataSet e TSQLQuery?

 Pensei em usar DataSource.DataSet mas não funciona
 pois não estão ligados a nenhum DataSource.

 AbaterValor(cdsParcela.DataSource.DataSet, valor)
 AbaterValor(qryParcela.DataSource.DataSet, valor)

 obrigado,

 Paulo



Re: [delphi-br] Problema ao formatar

2010-01-12 Por tôpico Marcelo Luiz Onhate
Existem algumas variaveis no SysUtils que servem para isso...

   {separador de milhar }thousandseparator:='.';
   {separador de decimal}decimalseparator:=',';




Re: [delphi-br] [OFF] Novidade, programe sem digitar nada!!!

2009-12-23 Por tôpico Marcelo Luiz Onhate
Não é bem PROGRAMAR... é só fazer interfaces gráficas... mas já ajuda...

Em 23/12/2009 00:00, EmbarcaDelphi escreveu:

 Só a título de curiosidade.

 Deseja fazer um programa complexo sem precisar digitar nenhum linha de
 comando?
 É o que promete fazer este programa. Navegando pela internet eu
 encontrei

 E aí, pelo amor de Deus, é apenas uma curiosidade, não estou fazendo
 publicidade nem dizendo que você deve sair do Delphi. Ultimamente nesta
 lista, qualquer coisa é motivo para discussão. Ainda bem que o título
 está como [OFF].

 Veja no link:
 http://www.carettasoftware.com/guidesignstudio/ 
 http://www.carettasoftware.com/guidesignstudio/




Re: [delphi-br] Hint em StatusBar

2009-12-18 Por tôpico Marcelo Luiz Onhate
Application.ShowHint*:= False;*

Isso?



Re: [delphi-br] Limpar todos os e dits de uma só vez!

2009-12-17 Por tôpico Marcelo Luiz Onhate
procedure LimpaEdit(comp: TComponent);
var
   i: TComponent;
   c: TComponent;
begin
   for i:=0 to comp.ComponentCount - 1 do
   begin
 c:=comp.Components[i];
 if (c is TEdit) then
   (c as TEdit).Text:=''
 else begin
   LimpaEdit(c);
 end;
   end;
end;


Re: [delphi-br] Problema com ClientDataset

2009-12-16 Por tôpico Marcelo Luiz Onhate
Porque você não deixa a sql no TSQLDataSet e altera os Parâmetros no 
ClientDataSet?
Vai fucionar igual ao que está fazendo, só que a SQL ficaria no 
TSQLDataSet, e não precisa do parametro poAllowCommandText, que acho até 
que serve para outra coisa, e não isso...

Darkzad escreveu:
  

 Olá pessoal,

 No meu Data Module tenho TSQLDataSet, TDataSetProvider e um ClientDataset.

 O Meu TDataSetProvider a Options - poAllowCommandText := True; para o
 ClientDatase passar comandos SQL.
 O commandText do ClientDataset := select * from CONTAS Where COD_CONTA =
 :COD
 O Tipo do Parametro :COD já definir como Integer.

 Faço o seguinte commando

 DM_Cadastro.cdsContas.Close;
 DM_Cadastro.cdsContas.Params[0].AsInteger := DBGrid1.Fields[0].AsInteger;
 DM_Cadastro.cdsContas.Open;

 Ele insiste em dar o error 'Dynamic SQL Error SQL error code =-104
 Unexpected end of command - line1, column51'

 Devo confessar que sou novo usando ClientDataset.

 O que devo estar fazendo de errado.

 Desde já agradeço

 DarkZad




Re: [delphi-br] Problema com ClientDataset

2009-12-16 Por tôpico Marcelo Luiz Onhate
Isso não é seguro! NUNCA concatene na SQL... se ele estiver nulo o 
asstring dele vai trazer '' então token unknow =) ...
Continue usando os parametros. só troca a sql de lugar... como falei 
antes...

Alisson Yahoo escreveu:
  

 Verifique se DBGrid1.Fields[0].AsInteger não está nulo. Tente também :
 ClientDataset.CommandText := 'select * from CONTAS Where COD_CONTA = ' +
 DBGrid1.Fields[0].AsString.




Re: [delphi-br] Problema com ClientDataset

2009-12-16 Por tôpico Marcelo Luiz Onhate
sdsContas é o TSQLDataSet?
Se é está errado...
Isso:

sdsContas.Close;
sdsContas.Params[0].AsInteger := DBGrid1.Fields[0].AsInteger;
sdsContas.Open;


Deve ser feito com ClientDataSet... Você também verificou nos params do 
dataset e do client se os tipos deles estão corretos?

Darkzad escreveu:
 Não entendi muito bem, poderia dar um exemplo?

 Coloquei o SQL dentro do TSQLDataset quando executo o comando abaixo

 sdsContas.Close;
 sdsContas.Params[0].AsInteger := DBGrid1.Fields[0].AsInteger;
 sdsContas.Open;

 Não dá erro nenhum mas tbm não traz nenhum registro. E o 
 DBGrid1.Fields[0].AsInteger não está nulo e tem dado na tabela.

 Se eu adicionar o comando :
 ClientDataset.Close;
 ClientDataset.Open;

 Ele dá o erro 'Dynamic SQL Error SQL error code =-104 Unexpected end of 
 command - line1, column51'

 Muito estranho isso.

 Valeu

 Marcelo Luiz Onhate escreveu:
   
 Isso não é seguro! NUNCA concatene na SQL... se ele estiver nulo o
 asstring dele vai trazer '' então token unknow =) ...
 Continue usando os parametros. só troca a sql de lugar... como falei
 antes...

 Alisson Yahoo escreveu:
 
 Verifique se DBGrid1.Fields[0].AsInteger não está nulo. Tente também :
 ClientDataset.CommandText := 'select * from CONTAS Where COD_CONTA = ' +
 DBGrid1.Fields[0].AsString.
   





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] MariaDB SQL

2009-12-07 Por tôpico Marcelo Luiz Onhate
Pelo oque eu sei ele não trabalha com transações... Para trabalhar com 
transaçõesno MySql deve-se utilizar o InnoDB.

felipe govoni escreveu:
  

 boa tarde

 vi o post do colega silvio sobre esse bd mas nunca tinha ouvido falar, 
 li no
 site
 que ele é baseado no mysql, mas ele é confiavel? vale a pena?

 gostaria da opinião dos colegas




Re: [delphi-br] select em bancos de dados diferentes

2009-12-07 Por tôpico Marcelo Luiz Onhate
O delphi que está usando não interessa... interessa o banco, exemplo o 
mysql pode fazer select em outro banco mesmo quando estou conectado em 
outro... O firebird não garanto que faça isso...

Fios e Cabos escreveu:
  

 Estou tentando fazer um select em duas tabelas que salvei em bancos de 
 dados
 diferentes.

 Uso o Delphi 7

 Qdo vou ativar a query acusa erro dizendo q uma das tabelas não existe 
 ...

 Alguém tem alguma dica ...




Re: Res: [delphi-br] MariaDB SQL

2009-12-07 Por tôpico Marcelo Luiz Onhate
Nosa que troxa! É o nome dela!

EmbarcaDelphi escreveu:
  

 Que nome? Essa porcaria de nome não leva a nada, a não ser que você seja
 religioso! Maria tem muitas, tem até um nome de um demônio que se chama
 Maria...
 Não vamos colocar religião numa lista de programação, acho que até na
 regra fala sobre isso, portanto...




Re: [delphi-br] Problema com consul ta em caracter com acentuação

2009-12-03 Por tôpico Marcelo Luiz Onhate
Cara, só te dou uma dica, NUNCA concatene parametros em sql, faça o 
teste... aonde você concatena parametros
vá no componente que concatenou e digite ' e manda executar a sql... 
adivinha oque vai acontecer...

Sempre passe parâmetros... asssim:

dm.cdsCliente.CommandText:='Select * from CAD_CLIENTE where CLIENTE Like 
:cliente ||%)';
dm.cdsCliente.Params[0].AsString:=texto_pesquisa.Text;
dm.cdsCliente.Open;


Eduardo Melo escreveu:
  

 Ola Pessoal,

 Estou com um problema para realizar consulta em sql em campos que possuem
 caracteres com acentuação.

 Uso Delphi 7 e Firebird 1.5, para realizar consulta utilizo o seguinte
 comando: dm.cdsCliente.Close;
 dm.cdsCliente.CommandText:='Select * from CAD_CLIENTE where CLIENTE
 Like'+QuotedStr(texto_pesquisa.Text+'%');
 dm.cdsCliente.Open;

 Mas se tiver algum acento no texto ou para pesquisar apresenta seguinte
 erro:

 arithmetic exception, numeric overflow, or string truncation Cannot
 transliterate character between character sets

 O que posso fazer para fazer a consulta independente do acento.




Re: [delphi-br] Gravar Enter em campo do tipo String

2009-12-02 Por tôpico Marcelo Luiz Onhate
update produto set
desc=
'linha1
linha2'
where pro_cod=1

não precisa digitar o caracter de enter, basta somente abrir uma aspa 
digitar o texto com enter e tudo e só fim fechar a aspa...

Alisson Yahoo escreveu:
  

 Sílvio, acho que você não entendeu. Eu estou tentando fazer isso 
 diretamente
 no BD através de um Trigger, portanto não vou usar nenhum componente. Se
 fosse fazer no aplicativo não teria problema nenhum.




Re: [delphi-br] Pesquisa no Firebird

2009-12-02 Por tôpico Marcelo Luiz Onhate
Tenta AnsiiUpperCase


Re: Res: [delphi-br] Comando SQL formatando campo

2009-11-16 Por tôpico Marcelo Luiz Onhate
Tenta

sAux:=FormatFloat('0',1234);
ShowMessage(sAux);



Re: [delphi-br] Detalhe do processo em tempo real

2009-10-26 Por tôpico Marcelo Luiz Onhate
  {Classe para exibição de Mensagens Informativas durante a execução de algum 
processo.
   Exemplo:
   var fMsg: TInfoMessage;
   begin
fMsg:=TInfoMessage.Create(Self,'Primeira Mensagem...');
  ou
fMsg:=TInfoMessage.Create(Self);
...
fMesg.Text:='Segunda Mensagem...';
...
fMesg.Text:='Terceira Mensagem...';
...
fMsg.Free;
   end;}
  type TInfoMessage = class(TObject)
  private
FMemo: TMemo;
FText: String;
FForm: TForm;
procedure setText(const Value: String);
property Form: TForm read FForm write FForm;
property Memo: TMemo read FMemo write FMemo;
  public
property Text: String read FText write setText;
destructor Destroy; override;
constructor Create(AOwner: TComponent); overload;
constructor Create(AOwner: TComponent; sMsg: String); overload;
  end;




{ TInfoMessage }

constructor TInfoMessage.Create(AOwner: TComponent);
begin
  inherited Create;
  FForm:=TForm.Create(AOwner);
  if AOwnernil then
FForm.Position:=poOwnerFormCenter
  else begin
FForm.Position:=poScreenCenter;
  end;
  FForm.Height:=23;
  {$IFDEF MSWINDOWS}
FForm.BorderStyle:=bsNone;
  {$ENDIF}
  {$IFDEF LINUX}
FForm.BorderStyle:=fbsNone;
  {$ENDIF}
  FForm.BorderIcons:=[];
  Memo:=TMemo.Create(FForm);
  Memo.Parent:=FForm;
  Memo.Align:=alClient;
  Memo.Alignment:=taCenter;
  Memo.ReadOnly:=True;
  {$IFDEF MSWINDOWS}
Memo.Color:=$00985632;
Memo.Font.Color:=clWhite;
  {$ENDIF}
  {$IFDEF LINUX}
Memo.Color:=$00E3E0DF;
Memo.Font.Color:=clBlack;
  {$ENDIF}
  Memo.Font.Size:=10;
  Memo.Font.Style:=[fsBold];
  Application.ProcessMessages;
end;

constructor TInfoMessage.Create(AOwner: TComponent; sMsg: String);
begin
  Create(AOwner);
  Text:=sMsg;
end;

destructor TInfoMessage.Destroy;
begin
  if (Selfnil)then
  begin
if(Assigned(FForm))and(FForm.Showing)then
begin
  FForm.Close;
  Application.ProcessMessages;
end;
if(Assigned(FMemo))then FreeAndNil(FMemo);
if(Assigned(FForm))then FreeAndNil(FForm);
  end;
  inherited;
end;

procedure TInfoMessage.setText(const Value: String);
var iLen: Integer;
begin
  FText := StringReplace(StringReplace(Value,#13,'',[]),#10,'',[]);
  iLen:=Length(FText);
  Memo.Lines.Clear;
  Memo.Lines.Add(FText);
  FForm.Width:=iLen*8;
  if FForm.Ownernil then
FForm.Position:=poOwnerFormCenter
  else begin
FForm.Position:=poScreenCenter;
  end;
  if FText'' then
FForm.Show
  else if FForm.Showing then begin
FForm.Close;
  end;
  Application.ProcessMessages;
end;

[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: Res: RES: [delphi-br] Matriz em Delphi

2009-10-26 Por tôpico Marcelo Luiz Onhate
é igual:

SETLENGTH(vetor, 20,20,40...);

Rodrigo Bevilacqua Marcondes escreveu:
  

 Olá Rubem,

 Eu sei criar um vetor dinâmico assim :

 e alocar dinâmico
 usando
 SETLENGTH(vetor, 20);

 mas para matriz não consegui fazer dinâmico.




Re: [delphi-br] Detalhe do processo em tempo real

2009-10-26 Por tôpico Marcelo Luiz Onhate
Não consigo enviar arquivo...
então segue o código direto mesmo... aheuaheua

Tenta usar esta classe que fiz para exibir mensagens durante processos 
longos...


  {Classe para exibição de Mensagens Informativas durante a execução de 
algum processo.
   Exemplo:
   var fMsg: TInfoMessage;
   begin
fMsg:=TInfoMessage.Create(Self,'Primeira Mensagem...');
  ou
fMsg:=TInfoMessage.Create(Self);
...
fMesg.Text:='Segunda Mensagem...';
...
fMesg.Text:='Terceira Mensagem...';
...
fMsg.Free;
   end;}
  type TInfoMessage = class(TObject)
  private
FMemo: TMemo;
FText: String;
FForm: TForm;
procedure setText(const Value: String);
property Form: TForm read FForm write FForm;
property Memo: TMemo read FMemo write FMemo;
  public
property Text: String read FText write setText;
destructor Destroy; override;
constructor Create(AOwner: TComponent); overload;
constructor Create(AOwner: TComponent; sMsg: String); overload;
  end;




{ TInfoMessage }

constructor TInfoMessage.Create(AOwner: TComponent);
begin
  inherited Create;
  FForm:=TForm.Create(AOwner);
  if AOwnernil then
FForm.Position:=poOwnerFormCenter
  else begin
FForm.Position:=poScreenCenter;
  end;
  FForm.Height:=23;
  {$IFDEF MSWINDOWS}
FForm.BorderStyle:=bsNone;
  {$ENDIF}
  {$IFDEF LINUX}
FForm.BorderStyle:=fbsNone;
  {$ENDIF}
  FForm.BorderIcons:=[];
  Memo:=TMemo.Create(FForm);
  Memo.Parent:=FForm;
  Memo.Align:=alClient;
  Memo.Alignment:=taCenter;
  Memo.ReadOnly:=True;
  {$IFDEF MSWINDOWS}
Memo.Color:=$00985632;
Memo.Font.Color:=clWhite;
  {$ENDIF}
  {$IFDEF LINUX}
Memo.Color:=$00E3E0DF;
Memo.Font.Color:=clBlack;
  {$ENDIF}
  Memo.Font.Size:=10;
  Memo.Font.Style:=[fsBold];
  Application.ProcessMessages;
end;

constructor TInfoMessage.Create(AOwner: TComponent; sMsg: String);
begin
  Create(AOwner);
  Text:=sMsg;
end;

destructor TInfoMessage.Destroy;
begin
  if (Selfnil)then
  begin
if(Assigned(FForm))and(FForm.Showing)then
begin
  FForm.Close;
  Application.ProcessMessages;
end;
if(Assigned(FMemo))then FreeAndNil(FMemo);
if(Assigned(FForm))then FreeAndNil(FForm);
  end;
  inherited;
end;

procedure TInfoMessage.setText(const Value: String);
var iLen: Integer;
begin
  FText := StringReplace(StringReplace(Value,#13,'',[]),#10,'',[]);
  iLen:=Length(FText);
  Memo.Lines.Clear;
  Memo.Lines.Add(FText);
  FForm.Width:=iLen*8;
  if FForm.Ownernil then
FForm.Position:=poOwnerFormCenter
  else begin
FForm.Position:=poScreenCenter;
  end;
  if FText'' then
FForm.Show
  else if FForm.Showing then begin
FForm.Close;
  end;
  Application.ProcessMessages;
end;


Re: [delphi-br] Evento do grid OnCellclick (herança)

2009-10-22 Por tôpico Marcelo Luiz Onhate
Basicamente
Você precisa armarzenar oque já existe no OnCellClick em uma variável do 
tipo TDBGridClickEvent e depois quando for executar o seu cell click
teste se existe algo nesta variável, se existe executa ela...

var AntigoCellClick: TDBGridClickEvent;

procedure Inicializa;
begin
AntigoCellClick:=grid.OnCellClick;
grid.OnCellClick:=MeuCellClick;
end;

procedure MeuCellClick(Column: TColumn);
begin
if Assigned(AntigoCellClick) then begin
AntigoCellClick(Column);
end;
//faz o resto do rolo...
end;


ajama_1 escreveu:

 Pessoal, será que alguém sabe me informar como eu faço para atribuir 
 um evento a um evento já existente sem alterar o evendo que já existe ?

 procedure TLib_SkinFrm.CClick_Ex(Column: TColumn);
 begin
 Lib_CellClick_ExC(Column);
 end;

 procedure TMainForm.StGridCellClick(Column: TColumn);
 begin
 ShowMessage('teste');
 end;


 Mais eu queria manter o evento que já exite em StGridCellClick, 
 quando efaço assim:

 StGrid.OnCellClick := CClick_Ex;

 ele apaga o evento anterior.

 Desde já agradeço

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] ###Muito Obri gado### Evento do grid OnCellclick (h erança)

2009-10-22 Por tôpico Marcelo Luiz Onhate
Valeu!  =)

ajama_1 escreveu:
 Muito Obrigado Marcelo, deu certo, parabéns, solução simples e criativa.





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Variavel

2009-10-16 Por tôpico Marcelo Luiz Onhate
Assim você guarda a referência de todos os objetos criados em uma lista...

var list: TList;
begin
list:=TList.Create;
//N Vezes...
   list.add(TeuObjeto.Create);
end;

André escreveu:
  

 Boa tarde.

 Existe alguma forma de por exemplo.

 Em tempo de execução, criar uma variável com a hora do computador.

 Uma variável ter o nome que seja a hora do sistema, e não uma variável
 receber a hora do sistema

 O motivo é que gostaria de instanciar uma nova variável para uma mesma
 classe, N vezes durante a execução do sistema.




Re: [delphi-br] Erro - no corresponding master record found

2009-10-13 Por tôpico Marcelo Luiz Onhate
Como estão os seus ProviderFlags?

Marcelo Moacir Florindo escreveu:
  

 Colegas,

 Eu tenho na query master:

 select * from funcionario
 where codigo=:codigo

 no detalhe:

 SELECT f.*,d.nome
 FROM funcionario_professor f
 INNER JOIN disciplina d ON (d.codigo=f.codigoMateria)
 where f.codigoFuncionario=:codigo

 Porém ao dar o post está dando o erro:

 no corresponding master record found

 O que poderia estar ocorrendo, se a correspondência, acho eu, está 
 correta?

 Obrigado a todos,




Re: [delphi-br] Pesquiza com SQLQue ry - Ajuda TCC Último Ano!!!!!!!

2009-10-08 Por tôpico Marcelo Luiz Onhate
Usa o containing que é mais fácil.
a não ser que seja um like assim algumacoisa%ou %algumacoisa 
porque se for %algumacoisa% usa containing e não se stressa com upper.


  sql :='select * from TB_PRODUTO where NOME_PROD containing'+edtBusca.Text;
  DMBusca.qVenda.Close;
  DMBusca.qVenda.SQL.Clear;
  DMBusca.qVenda.SQL.Add(sql);
  DMBusca.qVenda.Open;


Re: [delphi-br] Pesquiza com SQLQue ry - Ajuda TCC Último Ano!!!!!!!

2009-10-08 Por tôpico Marcelo Luiz Onhate
Usa o containing que é mais fácil.
a não ser que seja um like assim algumacoisa%ou %algumacoisa 
porque se for %algumacoisa% usa containing e não se stressa com upper. 

sql :='select * from TB_PRODUTO where NOME_PROD containing'+edtBusca.Text; 
DMBusca.qVenda.Close; 
DMBusca.qVenda.SQL.Clear; 
DMBusca.qVenda.SQL.Add(sql); 
DMBusca.qVenda.Open;


Re: [delphi-br] Agrupar dados de um SQL por uma determinada string

2009-10-01 Por tôpico Marcelo Luiz Onhate
Bom dia,

Amigo, esta pergunta vai muito do projeto do seu banco, como ele está 
modelado...
Mas respondendo sobre o GROUP BY, faz assim exemplo.

select substring(CNPJ from 1 for 8) as cnpj from Clientes c group by 1

Faça um group by no índice da coluna selecionada.

Leandro - Grupos escreveu:

 E ai pessoal, tudo bem...

 Preciso montar um relatório para um cliente, onde ele trará as vendas 
 em um
 determinado período. Porém, existem clientes que possuem diversas 
 filiais, e
 ele gostaria que o relatório agrupasse os dados desses clientes que tem
 varias filiais em um item só. Minha idéia foi a seguinte, agrupar os dados
 pela raiz do CNPJ que independente de ser matriz ou filial a raiz dele vai
 ser a mesma. Alguem sabe se em como que fazer isso via SQL? Por exemplo um
 GROUP BY LIKE ‘CNPJ%’






-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Gravar uma data em branco no firebird

2009-09-28 Por tôpico Marcelo Luiz Onhate
/dm.qyrecbto.FieldByName('UPGTO').Clear;/

auriston.delphi escreveu:
  

 Salve Delphianos.
 No comando dm.qyrecbto.FieldByName('UPGTO').AsDateTime := Date, 
 preciso trocar a funcao Date por uma data em branco, é possivel 
 efetuar este processo ?

 Uso D7+Firebird+IBX




[delphi-br] packed record com case

2009-09-22 Por tôpico Marcelo Luiz Onhate
oq seria isso, não o record em si, mas para que serve e como funciona 
aquele case dentro do record...

  XXX = packed record
case Integer of
  0: (A, B: Byte);
  1: (Bytes: array [0..1] of Byte);
  end;


Re: [delphi-br] Update de tabela atraves de query

2009-09-22 Por tôpico Marcelo Luiz Onhate
Está dando .Open ou .ExecSQL?


[delphi-br] packed record com case

2009-09-22 Por tôpico Marcelo Luiz Onhate
oq seria isso, não o record em si, mas para que serve e como funciona 
aquele case dentro do record...

 XXX = packed record
   case Integer of
 0: (A, B: Byte);
 1: (Bytes: array [0..1] of Byte);
 end;


Re: FW: [delphi-br] Contagem de Componentes

2009-09-18 Por tôpico Marcelo Luiz Onhate
Assim não precisa nem verifica o aowner e não passa TODOS os componentes 
do formulário.
Só troca o CHKGROPU pelo teu GroupBox.


var c,i: integer;
begin
c:= 0;
for i:= 0 to CHKGROUP.ComponentCount-1 do
if (CHKGROUP.Components[i] is TCheckbox) and 
TCheckBox(CHKGROUP.Components[i]).Checked then
Inc(c);
ShowMessage(IntToStr(c));
end;

Wilson, Stephen escreveu:

 Jose

 A solucao de Luciano e melhor que a minha. Eu nao verifiquei que os 
 Checkboxes estavam dentro do GroupBox, Luciano verificou.

 Cuprimentos

 Steve

 -Original Message-
 From: Wilson, Stephen
 Sent: 18 September 2009 15:22
 To: 'delphi-br@yahoogrupos.com.br 
 mailto:%27delphi-br%40yahoogrupos.com.br'
 Subject: RE: [delphi-br] Contagem de Componentes

 Ola Jose

 procedure TForm1.Button1Click(Sender: TObject);
 var c,i: integer;
 begin
 c:= 0;
 for i:= 0 to ComponentCount-1 do
 if (Components[i] is TCheckbox) and TCheckBox(Components[i]).Checked then
 inc(c);
 showmessage(inttostr(c));
 end;

 Att

 Steve

 -Original Message-
 From: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 [mailto:delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br]On Behalf Of Jose Newton Araujo
 Sent: 18 September 2009 14:49
 To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 Subject: [delphi-br] Contagem de Componentes

 Senhores:

 Estando com um pepino para resolver, preciso de uma colher de chá dos
 companheiros.

 Tenho um grupo Box contendo 7 CheckBox(s). Preciso saber quantos estão
 Checked(s).

 E agora?

 Sds corinthianas a todos,

 Jose Newton

 ***
 This e-mail and any files transmitted with it are confidential. If you 
 are not the intended recipient, any reading, printing, storage, 
 disclosure, copying or any other action taken in respect of this 
 e-mail is prohibited and may be unlawful. If you are not the intended 
 recipient, please notify the sender immediately by using the reply 
 function and then permanently delete what you have received.
 Content of emails received by this Trust will be subject to disclosure 
 under the Freedom of Information Act 2000, subject to the specified 
 exemptions, including the Data Protection Act 1998 and Caldicott 
 Guardian principles.
 This footnote also confirms that, unless otherwise stated, this email 
 message has been swept by Sophos Anti-virus for the presence of 
 computer viruses.
 ***

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Abrir o mesmo Form várias vez es

2009-09-17 Por tôpico Marcelo Luiz Onhate
with TNomeDaClasse.Create(nil) do
begin
Show;
end;


ou aind

var
form: TNomeDaClasse;
begin
form := TNomeDaClasse.Create(nil);
form.Show;
end;

Aquele nil pode ser o form pai, ou qualquer outro que possa ser o 
Owner (proprietário) desse form que vai abrir, ou nil mesmo se ele é 
orfão...

Alessandro Araujo escreveu:
  

 Amigos,

 Sou novo na lista e tenho uma dúvida. Gostaria de saber como faço para 
 abrir várias instancias do mesmo form. Tenho uma janela que precisa 
 abrir um número indeterminado de uma janela filha. Agradeço a ajuda 
 antecipadamente.

 Valeu




Re: [delphi-br] NF-E

2009-09-16 Por tôpico Marcelo Luiz Onhate
http://acbr.sourceforge.net/drupal/?q=node/36

Filippe Info escreveu:
  

 Bom dia a todos,

 Hoje a empresa que trabalho ainda não esta enquadrada para envio da NFe.
 Porem estou recebendo todas de meus fornecedores o arquivos XML.

 Eu gostaria de montar um programa para abrir o XML da NFe, pois a 
 pessoa que recebe as mercadorias aqui na empresa não tem acesso a 
 internet.

 E como meus fornecedores a maioria manda o XML, ele poderia abrir via 
 software, mais não conseguir ainda fazer um sistema para abrir o XML.

 obrigado,

 Filippe Maymone




Re: [delphi-br] Erro sinistro

2009-09-16 Por tôpico Marcelo Luiz Onhate
Se você não utilizar a variavel após a atribuição ela será ignorada. 
Acho que isso é feito durante a compilação ainda...

Alisson Yahoo escreveu:
  

 Pessoal, tenho uma rotina onde atribuo valores a variáveis do tipo Real:

 Linha 1: rValItem := QualquerCoisa;
 Linha 2: rPercICMS := OutraCoisaQualquer;
 Linha 3: rVlrICMS := rValItem * rPercICMS;
 Linha 4: //ShowMessage(FormatFloat('#0.00', rVlrICMS);

 Se eu colocar um breakpoint na linha 3 eu verifico que variável rVlrICMS
 está com o valor = 0, mas as variáveis rValItem e rPercICMS estão com 
 valor
 diferente de 0. Se eu habilitar a linha 4, a variável rVlrICMS recebe o
 valor corretamente. Alguém pode me ajudar a exorcizar esse espírito? 
 Estou
 usando Delphi 7.




Re: Res: [delphi-br] Join

2009-09-15 Por tôpico Marcelo Luiz Onhate
Tem que mudar os providers do clientdataset também, deixar igual ao da 
query.

Eny Urias escreveu:

 Gente?! Ninguém teve esse problema? Ninguem usa isso?

 --
 Eny Trova Urias

 Somos o que repetitivamente fazemos, portanto, a excelência não é um 
 feito, mas um hábito- Aristóteles

 
 De: Eny Urias enyur...@yahoo.com.br mailto:enyurias%40yahoo.com.br
 Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 Enviadas: Segunda-feira, 14 de Setembro de 2009 14:53:04
 Assunto: [delphi-br] Join

 Gente,

 Instalei o D2009 e um projeto começou a dar pau. Eu tenho o conjunto 
 Query + DataSetProvider + ClientDataSet + DataSource. A Query tem um 
 sql com join e os campos da segunda tabela estao com os providerflags 
 tudo false MAS... na hora de dar um update ele me dá o erro coluna 
 errada... eu verifiquei com o oracle trace e ele ta usando os campos 
 do join no update... Putz eu uso demais isso e se alguem souber 
 como revolver isso agradeço de coração!

 Ahh... eu criei um projeto novinho e fiz um teste... deu pau também

 --
 Eny Trova Urias

 Somos o que repetitivamente fazemos, portanto, a excelência não é um 
 feito, mas um hábito- Aristóteles

  _ _ _ _ _ _
 Veja quais são os assuntos do momento no Yahoo! +Buscados
 http://br.maisbusca dos.yahoo. com

 __
 Veja quais são os assuntos do momento no Yahoo! +Buscados
 http://br.maisbuscados.yahoo.com http://br.maisbuscados.yahoo.com

 [As partes desta mensagem que não continham texto foram removidas]

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Hierarquia de Classes

2009-09-15 Por tôpico Marcelo Luiz Onhate
Declara esta função:

procedure ShowClass(obj: TObject);
var s: String;
classe: TClass;
begin
if not Assigned(obj) then Exit;
classe:=obj.ClassType;
while Assigned(classe) do
begin
s:=s+classe.ClassName+#13;
classe:=classe.ClassParent;
end;
ShowMessage(s);
end;

e no debug chama ela assim ShowClass(xxx).
Vai aparecer em modo visual, na tua aplicação a lista de descendencia 
das classes...

José Mário Silva Guedes escreveu:

 Olá amigos.

 Uso Delphi 2007 e estou com dificuldades em um pacote de componentes, 
 o KBM.

 Preciso, em tempo de debug, verificar a hierarquia de uma classe. Existe
 alguma ferramenta no Delphi para isso?

 -- 
 José Mário Silva Guedes
 Analista Programador Delphi

 [As partes desta mensagem que não continham texto foram removidas]

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] MySql

2009-09-14 Por tôpico Marcelo Luiz Onhate
Tenta isso:

procedure DefineVarAmbiente;
begin
{separador de data }dateseparator:='/';
{formatação de data }shortdateformat:='dd/mm/';
{separador de milhar }thousandseparator:='.';
{separador de decimal}decimalseparator:=',';
end;

dionatanhenrique escreveu:

 Pessoal,

 To com um problemao..
 tenho banco mysql+d7+dbexpress
 mas o clientdataset nao salva decimal... decobri q e por causa do ponto..

 bom entao fiz uam gambi...

 os db das tabelas que sao do tipo decimal eu nao salvo e sim conservo 
 elas em variasveis para fazer um update via sql...

 dai coloco decimalseparator:='.';
 qy.add('Update tabela set campo = '+dbvalor.text+ ' where codigo = '+ 
 dbcdigo.text);
 execsql;

 dai salva tranquilo...

 Se vou fazer com clientdataset da incorret decimal value..
 mas e muito trabalhoso

 Nao tem uma outra forma desalvar direto no client numeo decimal... uma 
 opçao foi trocar as configurações regionais do windows mas eu nao 
 queria fazer isso...

 Aguardo...

 Flw..

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] aspas no firebird

2009-09-14 Por tôpico Marcelo Luiz Onhate
  Porque tem que usar aspas simples, ou apóstrofo se preferir.

 qryConsultas.Close;
 qryConsultas.Sql.Clear;
 qryConsultas.Sql.Add('select * from clientes where cliente= 
 '+QuotedStr('sim'));
 qryConsultas.Open;

 felipe govoni escreveu:

 bom dia

 estou com um problema no firebird 2.1

 ao realizar uma consulta simples:

 qryConsultas.close;
 qryConsultas.sql.clear;
 qryConsultas.sql.add('select * from clientes where cliente= sim');
 qryConsultas.open;

 gera um erro dizendo que o campo 'sim' nao foi encontrado, para 
 resolver o
 problema
 preciso usar com parametro:

 qryConsultas.close;
 qryConsultas.sql.clear;
 qryConsultas.sql.add('select * from clientes where cliente= :tipo');
 qryConsultas.parambyname('tipo').value := 'sim';
 qryConsultas.open;

 desta maneira funciona mas gostaria de saber por que isso aconteceu.

 -- 
 Felipe Govoni
 -
 GOVONI Sistemas
 Fone 8472-8718
 www.govoni.com.br

 [As partes desta mensagem que não continham texto foram removidas]

 

 -- 

 */System – Soluções em Sistemas de Informação
 /*/Marcelo Luiz Onhate
 Departamento de Desenvolvimento/
 marc...@systempro.com.br mailto:marc...@systempro.com.br
 www.systempro.com.br
 http://www.systempro.com.br/(54) 3321-5888


-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] PROVIDER FALGS

2009-09-14 Por tôpico Marcelo Luiz Onhate
Sim.
Atribui...
Field.ProviderFlags:=[pfInKey,pfInUpdate,pfInWhere];
Limpa...
Field.ProviderFlags:=[];

Lembrando que se ele está ligado a um TSqlDataSet tem que troca dele 
também, é do mesmo jeito...

v.silva31 escreveu:

 Pessoal
 é possivel configurar provider falgs em tempo de execução em um 
 clientdataset?

 grata.

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Extrair campo de um DBDataEdit

2009-09-10 Por tôpico Marcelo Luiz Onhate
procedure Teste;
var sData: AnsiString;
dtData: TDateTime;
iMes, iAno: Integer
begin
// Se esse DBDataEdit tiver uma proprietade tipo .Text ou .Caption é só 
atribuir para sData e ta feito.
// Tem que usar DateUtils, mas é só ir em cima de MonthOf ou YearOf e 
teclar Ctrl+Shift+A...  
//  sData='09/09/2009';
  dtData:=StrToDate(sData);
  iMes:=MonthOf(dtData);
  iAno:YearOf(dtData);
end;

suelio Santos escreveu:
  

 Boa tarde galera..,
 É o seguinte queria saber se alguem sabe como eu pego só um campo de 
 um TDBDataEdit, tipo no display eu tenho 09/09/2009, tem como eu pegar 
 só o dia ou so o mês, direto do edit para passar como parametro?

 Desde já agradeço aos que por ventura me ajudar

 Suélio Santos
 Analista de Sistemas
 Focus Automação

 __
 Veja quais são os assuntos do momento no Yahoo! +Buscados
 http://br.maisbuscados.yahoo.com http://br.maisbuscados.yahoo.com

 [As partes desta mensagem que não continham texto foram removidas]

 
 Mensagens neste tópico 
 http://br.groups.yahoo.com/group/delphi-br/message/204310;_ylc=X3oDMTM4cXFmMmgwBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BG1zZ0lkAzIwNDMxMARzZWMDZnRyBHNsawN2dHBjBHN0aW1lAzEyNTI1MzQ4NjYEdHBjSWQDMjA0MzEw
  
 (1) Responder (através da web) 
 http://br.groups.yahoo.com/group/delphi-br/post;_ylc=X3oDMTJyOGJoZzdoBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BG1zZ0lkAzIwNDMxMARzZWMDZnRyBHNsawNycGx5BHN0aW1lAzEyNTI1MzQ4NjY-?act=replymessageNum=204310
  
 | Adicionar um novo tópico 
 http://br.groups.yahoo.com/group/delphi-br/post;_ylc=X3oDMTJlaGhhcmI5BF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA250cGMEc3RpbWUDMTI1MjUzNDg2Ng--
  

 Mensagens 
 http://br.groups.yahoo.com/group/delphi-br/messages;_ylc=X3oDMTJlajc3cG01BF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA21zZ3MEc3RpbWUDMTI1MjUzNDg2Ng--
  
 | Arquivos 
 http://br.groups.yahoo.com/group/delphi-br/files;_ylc=X3oDMTJmb2h0cmx2BF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA2ZpbGVzBHN0aW1lAzEyNTI1MzQ4NjY-
  
 | Fotos 
 http://br.groups.yahoo.com/group/delphi-br/photos;_ylc=X3oDMTJlY29xMW90BF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA3Bob3QEc3RpbWUDMTI1MjUzNDg2Ng--
  
 | Links 
 http://br.groups.yahoo.com/group/delphi-br/links;_ylc=X3oDMTJmbjIxdGU1BF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA2xpbmtzBHN0aW1lAzEyNTI1MzQ4NjY-
  
 | Banco de dados 
 http://br.groups.yahoo.com/group/delphi-br/database;_ylc=X3oDMTJjMjc3czBkBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA2RiBHN0aW1lAzEyNTI1MzQ4NjY-
  

 -- 
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

 http://br.groups.yahoo.com/;_ylc=X3oDMTJkM3NkNjgzBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA2dmcARzdGltZQMxMjUyNTM0ODY2
  

 Alterar configurações via web 
 http://br.groups.yahoo.com/group/delphi-br/join;_ylc=X3oDMTJmYm5wbXZpBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA3N0bmdzBHN0aW1lAzEyNTI1MzQ4NjY-
  
 (Requer Yahoo! ID)
 Alterar configurações via e-mail: Alterar recebimento para lista 
 diária de mensagens 
 mailto:delphi-br-dig...@yahoogrupos.com.br?subject=%20recebimento%20de%20e-mail:%20Lista%20de%20mensagens
  
 | Alterar formato para o tradicional 
 mailto:delphi-br-traditio...@yahoogrupos.com.br?subject=alterar+formato+de+distribui%e7%e3o:+Tradicional
  

 Visite seu Grupo 
 http://br.groups.yahoo.com/group/delphi-br;_ylc=X3oDMTJkMHUwY2EyBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwNmdHIEc2xrA2hwZgRzdGltZQMxMjUyNTM0ODY2
  
 | Termos de uso do Yahoo! Grupos http://br.yahoo.com/info/utos.html 
 | Sair do grupo 
 mailto:delphi-br-unsubscr...@yahoogrupos.com.br?subject=
 Atividade nos últimos dias

*
7
   Novos usuários
   
 http://br.groups.yahoo.com/group/delphi-br/members;_ylc=X3oDMTJmbHJhOTcyBF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwN2dGwEc2xrA3ZtYnJzBHN0aW1lAzEyNTI1MzQ4NjY-

 Visite seu Grupo 
 http://br.groups.yahoo.com/group/delphi-br;_ylc=X3oDMTJlcmd2NDJ2BF9TAzk3NDkwNDM3BGdycElkAzEwNTg3NzgEZ3Jwc3BJZAMyMTM3MTExMjY0BHNlYwN2dGwEc2xrA3ZnaHAEc3RpbWUDMTI1MjUzNDg2Ng--
  

 Yahoo! Mail

 Conecte-se ao mundo 
 http://us.lrd.yahoo.com/_ylc=X3oDMTJsdnFya3AwBF9TAzk3NDkwNDM3BF9wAzEEZ3JwSWQDMTA1ODc3OARncnBzcElkAzIxMzcxMTEyNjQEc2VjA25jbW9kBHNsawNtYWlsBHN0aW1lAzEyNTI1MzQ4NjY-;_ylg=1/SIG=10ujd6ds6/**http%3A//mail.yahoo.com.br/

 Proteção anti-spam

 Muito mais espaço

 Yahoo! Barra

 Instale grátis 
 http://us.lrd.yahoo.com/_ylc=X3oDMTJvYWlkdGNnBF9TAzk3NDkwNDM3BF9wAzIEZ3JwSWQDMTA1ODc3OARncnBzcElkAzIxMzcxMTEyNjQEc2VjA25jbW9kBHNsawN0b29sYmFyBHN0aW1lAzEyNTI1MzQ4NjY-;_ylg=1/SIG=111ngvtas/**http%3A//br.toolbar.yahoo.com/

 Buscar sites na web

 Checar seus e-mails .

 Yahoo! Grupos

 Crie seu próprio grupo 
 

Re: [delphi-br] Verificação de datas no firebord

2009-09-08 Por tôpico Marcelo Luiz Onhate
Primeira coisa que pensei... pode ser melhorado...

select *
from feriados F
where
(EXTRACT(MONTH FROM F.data) BETWEEN :MES1 and :MES2
AND
EXTRACT(YEAR FROM F.data) BETWEEN :ANO1 and :ANO2)

suelio Santos escreveu:

 Boa tarde galera...,
 Alguem poderia me informar como faço para recuperar um intervalo de 
 datas no firebird?
 Exemplo:
 tenho uma tabela de feriados em meu sistema que foi gravada em 2007 e 
 gostaria de fazer uma comparação so com o mês. Tipo na tabela tem o 
 feriado 07.09.2007 queria comparar só o dia e o mês, to fazendo assim:
 select *
 from feriados F
 where TO_DATE(F.data, 'DD.MM') between '07.09' AND '12.09'
 Mas não roda da erro, Aguém poderia me ajudar??? Desde já agradeço

 Suélio Santos
 Analista de Sistemas
 Focus Automação

 __
 Veja quais são os assuntos do momento no Yahoo! +Buscados
 http://br.maisbuscados.yahoo.com http://br.maisbuscados.yahoo.com

 [As partes desta mensagem que não continham texto foram removidas]

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Chamada de form

2009-09-08 Por tôpico Marcelo Luiz Onhate
O parâmetro tem que ser *var
* metodo_novo( var nome_form : TForm );

procedure metodo_novo( var nome_form : TForm )
begin
if nome_form = nil then
Application.CreateForm(Tnome_form, nome_form);
nome_form.Show;
end;


ott...@ymail.com escreveu:


 Boa tarde pessoal,

 Como faço para criar um método para chamar o formulario passado por 
 parametro ?

 Deste já agradeço a ajuda.

 Ex. do método: metodo_novo( nome_form : TForm );

 procedure metodo_novo( nome_form : TForm )
 begin
 if nome_form = nil then
 Application.CreateForm(Tnome_form, nome_form)
 else
 nome_form.Show;
 end

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: RES: [delphi-br] Componente - Formulário

2009-09-04 Por tôpico Marcelo Luiz Onhate
Ah, mas então seria melhor criar um Form que descende de TForm e 
sobrescrever os métodos que deseja que sejam fixos.
Exemplo:

TXForm = class(TForm)
private
//sobrescreve o setter da propriedade width
// property Width: Integer read FWidth write SetWidth;
procedure SetWidth(const Value: Integer);
end;

framosip escreveu:

 boa noite.

 Ajudou bastante.

 Conforme outro amigo no grupo, funcionou bem.

 Porém se eu alterar manualmente estas propriedades o form assume as 
 configurações manuais. Eu queria que forçasse para pegar os valores 
 que estão nos componentes.

 abraços!

 --- Em delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br, Cristiano R F Maciel 
 cristianorfmac...@... escreveu
 
  Boa tarde,
 
  Não sou bom em componentes, mas como você não teve resposta melhor, 
 fiz um
  pequeno exemplo que talvez te ajude:
 
  Qualquer dúvida de um grito!
 
  Cristiano R F Maciel
 
  /
 
  unit FormDefault;
 
  interface
 
  uses
  Classes, Forms;
 
  type
  TFormDefault = class(TComponent)
  public
  procedure FormClose(Sender: TObject; var Action: TCloseAction);
  constructor Create(AOwner: TComponent); override;
  end;
 
  procedure Register;
 
  implementation
 
  procedure Register;
  begin
  RegisterComponents('Ramos', [TFormDefault]);
  end;
 
  procedure TFormDefault.FormClose(Sender: TObject; var Action: 
 TCloseAction);
  begin
  // liberar o formulário da memória
  Action:= CAFree;
  end;
 
  constructor TFormDefault.Create(AOwner: TComponent);
  begin
  // criar o componente
  inherited Create(AOwner);
 
  // se o AOwner for um formulário (por regra deve ser)
  if (AOwner is TForm) then
  begin
  // propriedades
  TForm(AOwner).BorderStyle:= bsDialog;
  TForm(AOwner).Caption:= 'Este é apenas um pequeno exemplo...';
  // posição
  TForm(AOwner).Top:= 0;
  TForm(AOwner).Left:= 0;
  TForm(AOwner).Height:= 300;
  TForm(AOwner).Width:= 300;
  // eventos
  TForm(AOwner).OnClose:= FormClose;
  end;
  end;
 
  end.
 
  /
 
 
  De: delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br 
 [mailto:delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br] Em
  nome de framosip
  Enviada em: quarta-feira, 2 de setembro de 2009 14:06
  Para: delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br
  Assunto: [delphi-br] Componente - Formulário
 
 
  Amigos,
  Boa tarde.
 
  Estou tentando criar um componente que ao arrastá-lo para o Form, 
 algumas
  propriedades do form se alterem em tempo de execução.
 
  Em pesquisa pela internet, vi muitas informações de criação de 
 componentes
  onde
  extendemos algumas opções de componentes já existentes como o TEdit. A
  princípio
  não é o meu caso.
 
  Criei apenas o básico e gostaria da ajuda de vocês para tentar alterar
  algumas
  propriedades do Form.
 
  O que fiz foi:
 
  unit FormDefault;
 
  interface
 
  uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, 
 Forms,
  Dialogs;
 
  type
  TFormDefault = class(TComponent)
  private
  { Private declarations }
  protected
  { Protected declarations }
  public
  { Public declarations }
  constructor Create(AOwner: TComponent); override;
  destructor Destroy; override;
  published
  { Published declarations }
  end;
 
  procedure Register;
 
  implementation
 
  { TFormDefault }
 
  procedure Register;
  begin
  RegisterComponents('Ramos', [TFormDefault]);
  end;
 

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




[delphi-br] TFrame Transparente

2009-09-03 Por tôpico Marcelo Luiz Onhate
Alguém sabe como fazer um TFrame ficar com o fundo transparente?
Obs.: Tem rodar em Kylix também.


[delphi-br] TFrame Transparente

2009-09-03 Por tôpico Marcelo Luiz Onhate
Como faço para um TFrame ficar com o fundo Transparente?
Obs.: Tem que rodar em Windows(Delphi) e Linux(Kylix).


Re: RES: [delphi-br] TFrame Transparente

2009-09-03 Por tôpico Marcelo Luiz Onhate
Até agora só achei para Windows...

http://andrey.mikhalchuk.com/2008/10/04/how-to-make-delphi-tframe-background-transparent.html/comment-page-1#comment-751

Rubem Rocha escreveu:

 Se tem que rodar nos dois, então você tem que usar CLX e não VCL. E ainda,
 tens que estudar a fundo a biblioteca gráfica multiplataforma QT, que é a
 base da CLX pra saber como fazer isso. Tentou pesquisar no Google pra 
 saber
 se alguém já não fez isso?

 Sds.

 De: delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br 
 [mailto:delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br] Em
 nome de Marcelo Luiz Onhate
 Enviada em: quinta-feira, 3 de setembro de 2009 13:00
 Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 Assunto: [delphi-br] TFrame Transparente

 Como faço para um TFrame ficar com o fundo Transparente?
 Obs.: Tem que rodar em Windows(Delphi) e Linux(Kylix).

 [As partes desta mensagem que não continham texto foram removidas]

 

-- 

*/System – Soluções em Sistemas de Informação
/*/Marcelo Luiz Onhate
Departamento de Desenvolvimento/
marc...@systempro.com.br mailto:marc...@systempro.com.br
www.systempro.com.br
http://www.systempro.com.br/(54) 3321-5888





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Componente - Formulário

2009-09-02 Por tôpico Marcelo Luiz Onhate
Trabalha no Create dele.
*
constructor Create(AOwner: TComponent); override;

*Provavelmente se arrastou para um form o AOwner que vai vir é o próprio 
form, então:

constructor Create(AOwner: TComponent);
begin
if AOwner is TForm then
begin
   with AOwner as TForm  do
   begin
  //configura oq quiser aqui...
   end;
end else
   Raise Exception.Create('Este componente só poder ter um Owner do 
tipo TForm ou descente do mesmo.');
end;

framosip escreveu:
  

 Amigos,
 Boa tarde.

 Estou tentando criar um componente que ao arrastá-lo para o Form, algumas
 propriedades do form se alterem em tempo de execução.

 Em pesquisa pela internet, vi muitas informações de criação de 
 componentes onde
 extendemos algumas opções de componentes já existentes como o TEdit. A 
 princípio
 não é o meu caso.

 Criei apenas o básico e gostaria da ajuda de vocês para tentar alterar 
 algumas
 propriedades do Form.

 O que fiz foi:

 unit FormDefault;

 interface

 uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

 type
 TFormDefault = class(TComponent)
 private
 { Private declarations }
 protected
 { Protected declarations }
 public
 { Public declarations }
 constructor Create(AOwner: TComponent); override;
 destructor Destroy; override;
 published
 { Published declarations }
 end;

 procedure Register;

 implementation

 { TFormDefault }

 procedure Register;
 begin
 RegisterComponents('Ramos', [TFormDefault]);
 end;

 



Re: [delphi-br] TList, memoria ut ilizada e 'descarga' rápida

2009-09-01 Por tôpico Marcelo Luiz Onhate
Quando da um Free um TList ele já faz o loop fazendo o free nos itens.




[delphi-br] Sql usando union e order by

2009-08-20 Por tôpico Marcelo Luiz Onhate
Para fazer um GROUP BY... nos campos que vai fazer beleza, mas nos 
outros vc vai ter que fazer algo do tipo SUM(), AVG()... Senão não vai 
rolar.
E outra dos unions teem que ser igual.

Exemplo:
SELECT CONTRATO,
   ALBUM,
   avg(DATA),
   VENCIMENTO,
   sum(VALOR,)
   sum(COALESCE(PCOMISSAO,0)) AS PCOMISSAO,
   TIPO,
   sum(COALESCE(VALOR,0) * (COALESCE(PCOMISSAO,0)/100) )AS 
COMISSAO,
avg(VENCIMENTO-DATA) AS DIAS
FROM CTRECEBER
GROUP BY 1,2,4,7
UNION
SELECT
A.CONTRATO,
A.ALBUM ,
avg(A.VNDDATA AS DATA),
A.VNDDATA AS VENCIMENTO,
sum(A.VNDDINHEIRO) AS VALOR,
sum(COALESCE(A.PCOMISSDIN,0))AS PCOMISSAO,
 'I'AS TIPO,
sum(COALESCE(A.VNDDINHEIRO,0) * 
(COALESCE(A.PCOMISSDIN,0)/100))AS COMISSAO,
avg(0) AS DIAS
FROM ALBUNS A WHERE A.VNDDINHEIRO  0
GROPU BY 1,2,4,7

Até isso vai ter que fazer avg(0) AS DIAS;