[delphi-br] Tipos de conexão com SQL SERVER

2008-12-17 Por tôpico Angelo Louzada
Moçada é o seguinte, gostaria de saber na opnião de vocês qual é a melhor forma 
de se conectar com o SQL Server utilizando o Delphi 7, qual os pós e os contras 
dos componentes ADO, BDE, OBDC e etc.

Muito obrigado pela atenção de todos.

Att,

Angelo Louzada


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

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



[delphi-br] Quando utilizo Rave não consigo encerrar o executável

2008-10-31 Por tôpico Angelo Louzada
Moçada estou com o seguinte problema, estou utilizando Delphi 7 + Rave + 
Interbase e toda vez que com a aplicação rodando eu chamo algum relatório 
desenvolvido no Rave eu não consigo encerrar a aplicação, visualizo o 
relatório, fecho o relatório, abro qualquer outro formulário ou relatório porém 
ao encerrar a aplicação o executável fica garrado na barra de tarefas do 
Windows e não encerra, se executar o sistema e abrir qualquer formulário sem 
executar nenhum relatório, ao encerrar a aplicação o executável fecha 
normalmente.


Alguém já viveu algo parecido?


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



Res: [delphi-br] Select especial

2008-10-30 Por tôpico Angelo Louzada
select nomeproduto, min(valor)
from produto
group by nomeproduto




De: Clovito [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 30 de Outubro de 2008 17:52:19
Assunto: [delphi-br] Select especial

Ola Pessoal
Saudações

Tenho um banco de dados em access, trbalho com D7 e tenho a seguinte situação; 
Tenho diversos produtos cadastrados, cada produto podera se repetir varias 
vezes e com preços diferentes. quero criar um filtro que me apresente somente o 
preço menor. Isto é um banco de dados de uma cotação para um supermercado, por 
exemplo:

arroz A12,00
arroz B12,50
Arroz C11,90  
Feijão A   5,00
Feijão C   5,89
Feijão C   4,89

Resultado  
Arroz C11,90
Feijão C  4,89

etc, etc
Obrigado
Clovito



CLOVIS MACHADO FERREIRA
  QUE A PAZ DO GRANDE ARQUITETO
 DO UNIVERSO NOS AMPARE
MSN- [EMAIL PROTECTED]

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




-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 



  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



[delphi-br] Quando utilizo Rave não consigo encerrar o executável

2008-10-30 Por tôpico Angelo Louzada
Moçada estou com o seguinte problema, estou utilizando Delphi 7 + Rave + 
Interbase e toda vez que com a aplicação rodando eu chamo algum relatório 
desenvolvido no Rave eu não consigo encerrar a aplicação, visualizo o 
relatório, fecho o relatório, abro qualquer outro formulário ou relatório porém 
ao encerrar a aplicação o executável fica garrado na barra de tarefas do 
Windows e não encerra, se executar o sistema e abrir qualquer formulário sem 
executar nenhum relatório, ao encerrar a aplicação o executável fecha 
normalmente.
 
Alguém já viveu algo parecido?
 
 

Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara 
@ymail.com ou @rocketmail.com.


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



[delphi-br] Quando utilizo Rave não consigo encerrar o executável

2008-10-29 Por tôpico Angelo Louzada
Moçada estou com o seguinte problema, estou utilizando Delphi 7 + Rave + 
Interbase e toda vez que com a aplicação rodando eu chamo algum relatório 
desenvolvido no Rave eu não consigo encerrar a aplicação, visualizo o 
relatório, fecho o relatório, abro qualquer outro formulário ou relatório porém 
ao encerrar a aplicação o executável fica garrado na barra de tarefas do 
Windows e não encerra, se executar o sistema e abrir qualquer formulário sem 
executar nenhum relatório, ao encerrar a aplicação o executável fecha 
normalmente. 

Alguém já viveu algo parecido?


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



[delphi-br] Substituição de caracter INTERBASE

2008-07-30 Por tôpico Angelo Louzada
Olá pessoal, conseguir uma base de dados de CEP que possui uma tabela chamada 
ENDERECO, nessa tabela possui um campo chamado ENDERECO_LOGRADOURO que possui o 
nome da rua, avenida e etc, porém o conteúdo começa sempre com o nome RUA  
ou AVENIDA  e em minha base de dados eu possuo um campo chamado TIPO_RUA e 
outro chamado ENDERECO que armazena somente o nome da rua ou avenida sem o tipo.
Pergunta, tem como realizar um update na tabela ENDERECO excluindo somente a 
palavra RUA ou AVENIDA do campo ENDERECO_LOGRADOURO? O banco de dados utilizado 
é o Interbase.
Obrigado pela atenção,
Angelo Louzada


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



[delphi-br] Controle de pagamento com Cartões de Créditos e Débi tos

2008-07-29 Por tôpico Angelo Louzada
Prezados, estou querendo criar um módulo em meus sistemas que irá permitir os 
pagamentos utilizando cartões de créditos ou débitos, alguém da lista possui 
algum sistema exemplo ou tutorial contemplando o assunto?
Att,
Angelo Louzada


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



[delphi-br] Sistema para administrar parque infantil em shopping

2008-02-14 Por tôpico Angelo Louzada
Olá companheiros, alguém conhece um sistema (free ou pago) ou empresa que vende 
um sistema de administração de parque infantil que geralmente são encontrados 
em shopping?


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Como montar uma pesquisa por aproximação

2008-02-08 Por tôpico Angelo Louzada
Amigos, estou utilizando um IBQuery trazendo os dados da tabela de clientes e 
mostrando em um DBGrid gostaria que meu usuário digitasse em um Edit o nome do 
cliente e a medida que ele fosse digitando o nome do cliente o DBGrid fosse 
realizando o filtro palavra por palavra, alguém sabe como posso implementar 
isso?


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: [delphi-br] Como montar uma pesquisa por aproxi mação

2008-02-08 Por tôpico Angelo Louzada
Opa, já tentei com o operador like porém o que eu estava querendo era o 
seguinte:

A medida que o usuário fosse digitando fosse mostrando no grid o resultado 
palavra o palavra ou seja, tenho no grid no campo nome os seguintes registros:

Ana Cecília
Ana Maria
Angela Silva
Anderson Vieira

A medida que o usuário fosse digitando em um Edit os caracteres Ang o cursor do 
grid já iria se posicionando, através do seu exemplo o usuário digita o nome ou 
parte do nome e manda fazer a pesquisa e eu queria que isso acontecesse a 
medida que o usuário fosse digitando caractér por caractér parecido com o 
comportamento do DBLookupComboBox.

- Mensagem original 
De: Claudiney Cogo [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 8 de Fevereiro de 2008 9:25:52
Assunto: Re: [delphi-br] Como montar uma pesquisa por aproximação

Olá Angelo.

É tranquilo... Já que você tá usando o IBQuery é melhor trabalhar direto com o 
SQL que passa pra ele.
Na entrada do form você, se preferir, carrega tudo.. (cuidado com tabelas muito 
grandes).. usando um comando como esse:

IBQryTabela. SQL.Clear;
IBQryTabela. Sql.Add(' Select * from SuaTabela');
IBQryTabela. Active := True;

Depois no evento CHANGE do edit você altera o comando incluindo a opção like:

IBQryTabela. SQL.Clear;
IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' +
QuotedStr(Edit1. Text + '%') +
' order by CampoTabela' );
IBQryTabela. Active := True;

Isso supondo que você esteja fazendo a pesquisa por um campo string, como nome 
ou descrição. 
Aqui o comando procura o que você digita no início do campo. Caso queira 
procurar em qualquer posição coloque um % antes do Edit1.Text também 

IBQryTabela. SQL.Clear;
IBQryTabela. Sql.Add(' Select * from SuaTabela where CampoTabela like ' +
QuotedStr('% ' + Edit1.Text + '%') +
' order by CampoTabela' );
IBQryTabela. Active := True;

Porém, tome um certo cuidado com bases muito grandes. Esse tipo de consulta 
pode causar um pouco de perda de performance. Nesse caso é melhor não abrir a 
tabela toda na entrada e digitar tudo o que deseja buscar primeiro, para depois 
fazer a busca e selecionar só o que interessa. Isso reduz muito o tamanho do 
dataset que será retornado.

Espero que seja isso.

Abraço.

 _ _ ___
Claudiney Cogo
N2 Sistemas e Soluções em Informática
Av. São Paulo, 172 - 15º Andar - Sala 1505
Maringá - Paraná
www.n2solutions. com.br
www.studion2. com.br
- Original Message - 
From: Angelo Louzada 
To: [EMAIL PROTECTED] os.com.br 
Sent: Friday, February 08, 2008 7:30 AM
Subject: [delphi-br] Como montar uma pesquisa por aproximação

Amigos, estou utilizando um IBQuery trazendo os dados da tabela de clientes e 
mostrando em um DBGrid gostaria que meu usuário digitasse em um Edit o nome do 
cliente e a medida que ele fosse digitando o nome do cliente o DBGrid fosse 
realizando o filtro palavra por palavra, alguém sabe como posso implementar 
isso?

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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

__ NOD32 2857 (20080207) Information __

This message was checked by NOD32 antivirus system.
http://www.eset. com

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Pesquisa por aproximação

2008-02-07 Por tôpico Angelo Louzada
Amigos, estou utilizando um IBQuery trazendo os dados da tabela de clientes e 
mostrando em um DBGrid gostaria que meu usuário digitasse em um Edit o nome do 
cliente e a medida que ele fosse digitando o nome do cliente o DBGrid fosse 
realizando o filtro palavra por palavra, alguém sabe como posso implementar 
isso?


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Pegar o número da coluna de um DBGrid

2008-02-01 Por tôpico Angelo Louzada
Olá amigos alguém sabe me dizer como pegar o numero da coluna clicada no DBGrid?

Estou tentando alterar a cor do título quando o usuário clica no título da 
coluna mais não estou conseguindo obter o index dela, estou tentando o seguinte:

  DBGrid1.Tag := Column.Index;
  DBGrid1.Columns[DBGrid1.Tag].Title.Color := $00BE7C7C;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Color := clWhite;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Style := [fsBold];


Mais não está dando certo.


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: RES: [delphi-br] Pegar o número da coluna d e um DBGrid

2008-02-01 Por tôpico Angelo Louzada
Amigo Davi, pelo que estou lendo no help do delphi para mudar a cor do TÍTULO 
do Grid eu preciso informar o número da coluna, exemplo: 

DBGrid1.Columns[0]...
DBGrid1.Columns[1]...
DBGrid1.Columns[2]...

o que eu preciso fazer é pegar esse número do indice quando o usuário clica no 
título, implementando o exemplo que você acho no google consegui no máximo 
fazer isso:

procedure TFormPadrao1.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
var
  Grid: TDBGrid;
begin
//Coloca o Grid zebrado
  if odd(IBDataSet1.RecNo) then
begin
  DBGrid1.Canvas.Brush.Color := clCream;
  DBGrid1.Canvas.FillRect(Rect);
  DBGrid1.DefaultDrawDataCell(Rect, Column.Field,State);
end;
//Muda a cor da célula selecionada
  Grid := TDBGrid(Sender) ;
  if gdSelected in State then
begin
  Grid.Canvas.Brush.Color := clYellow;
  Grid.Canvas.Font.Color := clRed;
  Grid.Canvas.Pen.Color := clRed;
  Grid.Canvas.FillRect(Rect);
  Grid.Canvas.TextOut(Rect.Left+2, Rect.Top+2, 
Grid.DataSource.DataSet.Fields[DataCol].AsString);
end;
end;

Estava tentando alguma coisa no evento OnTitleClick

procedure TFormPadrao1.DBGrid1TitleClick(Column: TColumn);
begin
if ControlGrid = 1 then
begin
try
  strSql := 'SELECT * FROM ' + nomeTabela + ' ORDER BY ' + Column.FieldName;
  With IBDataSet1 Do
begin
  Close;
  SelectSQL.Clear;
  SelectSQL.Add(strSql);
  Open;
end;
  if IBDataSet1.RecordCount = 0 then
begin
mensagem := 'Não foi encontrado nenhum registro que ' + #13 + 
'satisfaça a sua pesquisa. ';
Application.MessageBox(PChar(mensagem), 'Informação', mb_Ok + 
mb_IconInformation);
Abort;
end;
  strSql := 'SELECT * FROM ' + nomeTabela;
  DBGrid1.Tag := Column.ID;
  DBGrid1.Columns[DBGrid1.Tag].Title.Color := $00BE7C7C;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Color := clWhite;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Style := [fsBold]; }
  ControlGrid := 2;
except
  mensagem := 'Não existe registros na tabela.';
  Application.MessageBox(PChar(mensagem), 'Informação', mb_Ok + 
mb_IconInformation);
end;
end
else if ControlGrid = 2 then
begin
try
  strSql := 'SELECT * FROM ' + nomeTabela + ' ORDER BY ' + Column.FieldName + ' 
DESC';
  With IBDataSet1 Do
begin
  Close;
  SelectSQL.Clear;
  SelectSQL.Add(strSql);
  Open;
end;
  if IBDataSet1.RecordCount = 0 then
begin
mensagem := 'Não foi encontrado nenhum registro que ' + #13 + 
'satisfaça a sua pesquisa. ';
Application.MessageBox(PChar(mensagem), 'Informação', mb_Ok + 
mb_IconInformation);
Abort;
end;
  strSql := 'SELECT * FROM ' + nomeTabela;
  ControlGrid := 1;
except
  mensagem := 'Não existe registros na tabela.';
  Application.MessageBox(PChar(mensagem), 'Informação', mb_Ok + 
mb_IconInformation);
end;
end;
{// restaurando a cor do título
  DBGrid1.Columns[DBGrid1.Tag].Title.Color := clBtnFace;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Color := clWindowText;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Style := [];
// guarda a coluna selecionada
  DBGrid1.Tag := Column.Index;
// alterando a cor do título do campo ordenado
  DBGrid1.Columns[DBGrid1.Tag].Title.Color := $00BE7C7C;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Color := clWhite;
  DBGrid1.Columns[DBGrid1.Tag].Title.Font.Style := [fsBold];}
end;



- Mensagem original 
De: Davi Eduardo Borges Wall [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 1 de Fevereiro de 2008 8:16:13
Assunto: RES: [delphi-br] Pegar o número da coluna de um DBGrid

Ah! Esqueci de falar, tenho certeza que vais me perguntar!

É só alterar a pintura para o title!

De: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] Em nome de 
Davi Eduardo Borges Wall
Enviada em: sexta-feira, 1 de fevereiro de 2008 09:12
Para: [EMAIL PROTECTED] os.com.br
Assunto: RES: [delphi-br] Pegar o número da coluna de um DBGrid

procedure TForm1.DBGrid1DrawC olumnCell( Sender: TObject; const Rect: 
TRect; 
DataCol: Integer; Column: TColumn; State: TGridDrawState) ; 
var 
Grid: TDBGrid; 
begin 
Grid := TDBGrid(Sender) ; 
if gdSelected in State then 
begin 
Grid.Canvas. Brush.Color := clYellow; 
Grid.Canvas. Font.Color := clRed; 
Grid.Canvas. Pen.Color := clRed; 
Grid.Canvas. FillRect( Rect); 
// Will need to handle right aligned fields yourself!!! 
Grid.Canvas. TextOut(Rect. Left+2, Rect.Top+2, 
Grid.DataSource. DataSet.Fields[ DataCol]. AsString) ; 
end; 
end; 

Nada que um Google não resolva..

De: [EMAIL PROTECTED] os.com.br mailto:delphi- br%40yahoogrupos .com.br 
[mailto:[EMAIL PROTECTED] os.com.br mailto:delphi- br%40yahoogrupos .com.br ] 
Em nome de Angelo Louzada
Enviada em: sexta-feira, 1 de fevereiro de 2008 09:05
Para: [EMAIL PROTECTED] os.com.br mailto:delphi- br%40yahoogrupos .com.br 
Assunto: [delphi-br] Pegar o número da coluna de um DBGrid

Olá amigos alguém sabe me dizer como pegar o numero da coluna

[delphi-br] Problema ao encerrar a aplicação

2008-02-01 Por tôpico Angelo Louzada
Amigos, 

Tenho notado que minha aplicação está lenta quando encerro e às vezes quando 
encerro o formulário principal é fechado porém meu executável fica garrado e só 
consigo encerrá-lo finalizo seu processo no Windows.

Todos os meus formulários da aplicação são encerrados apenas com o comando 
Close. Tenho que executar algum outro comando de encerramento?


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: [delphi-br] SOLUÇÃO para distribuição d e aplicativo com BD - Criação de arquivo INI

2008-01-28 Por tôpico Angelo Louzada
Blz, não descobrir o fogo mais apaguei um fogo, se a mensagem não serviu para 
você e nem para o Sr. Davi apenas ignore.


- Mensagem original 
De: Leonardo Quinino [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 25 de Janeiro de 2008 13:58:21
Assunto: Re: [delphi-br] SOLUÇÃO para distribuição de aplicativo com BD - 
Criação de arquivo INI

Nem sabia que vc tinha essa dificuldade. 
até parece que vc descobriu o fogo , mas valeu a sua intenção é boa
mesmo

Em 25/01/08, Davi Eduardo Borges Wall [EMAIL PROTECTED] com.br escreveu:

 Tamanha dificuldade? ? Vc ta brincando!

 Tem exemplos de como criar arquivo INI no Help do Delphi!

 Basta apertar F1, agora se a tecla F1 ta com problema, aconselho vc a ir
 no menu HELP do Delphi! RS...

 De: [EMAIL PROTECTED] os.com.br delphi-br%40yahoog rupos.com. br [mailto:
 [EMAIL PROTECTED] os.com.br delphi-br%40yahoog rupos.com. br] Em nome de
 Angelo Louzada
 Enviada em: sexta-feira, 25 de janeiro de 2008 11:12
 Para: [EMAIL PROTECTED] os.com.br delphi-br%40yahoog rupos.com. br
 Assunto: [delphi-br] SOLUÇÃO para distribuição de aplicativo com BD -
 Criação de arquivo INI


 Amigos, pela tamanha dificuldade que tive em achar artigos explicando como
 criar instaladores já levando Banco de Dados no cliente resolvi optar pela
 distribuição através de arquivo .INI e pela dificuldade em achar artigos
 explicando como criar arquivo .INI venho compartilhar com vocês a solução
 que arrumei para minha aplicação.

 Primeiro criei um arquivo .INI no mesmo diretório dos fontes da aplicação.

 nome_do_arquivo. ini - Em nome_do_arquivo utilizei o mesmo nome do
 executável e dentro do arquivo criado coloquei os seguintes parametros:

 [BD]
 DATABASENAME= C:\Aplicacao\ database\ BANCO_DE_ DADOS.GDB
 USERNAME=SYSDBA
 PASSWORD=masterkey

 Na unit do DataModule ficou da seguinte maneira:

 unit frmDM;
 interface
 uses
 SysUtils, Classes, IBDatabase, DB, IBCustomDataSet, IBQuery, RpBase,
 RpSystem, RpCon, RpConDS, RpDefine, RpRave, IniFiles, Forms;
 type
 TDM = class(TDataModule)
 IBDatabase1: TIBDatabase;
 Trans: TIBTransaction;
 procedure DataModuleCreate( Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 procedure Configura;
 end;
 var
 DM: TDM;
 implementation
 uses
 Windows;
 {$R *.dfm}
 { TDM }
 procedure TDM.Configura;
 var
 stAplicacao : String;
 Ini : TIniFile;
 IniDBName : String;
 IniUserName : String;
 IniPassword : String;
 begin
 stAplicacao := ChangeFileExt( Application. ExeName, '.INI');
 Ini := TIniFile.Create( ChangeFileExt( Application. ExeName, '.INI'));
 try
 iniDBName := Ini.ReadString( 'BD', 'DATABASENAME' , '');
 iniUserName := Ini.ReadString( 'BD', 'USERNAME', '');
 iniPassword := Ini.ReadString( 'BD', 'PASSWORD', '');
 finally
 Ini.Free;
 end;
 iniUserName := 'user_name=' + IniUserName;
 iniPassword := 'password=' + iniPassword;
 With IBDatabase1 do
 begin
 DatabaseName := iniDBName;
 Params.Append( iniUserName) ;
 Params.Append( iniPassword) ;
 end;
 end;
 //Evento criado ao dar duplo clique no DataModule
 procedure TDM.DataModuleCreat e(Sender: TObject);
 begin
 DM.Configura;
 end;
 end.

 No meu caso o Banco utilizado foi o Interbase e o componente de conexão
 foi o IBDatabase.

 No cliente eu instalei manualmente o Interbase e registrei o banco de
 dados da aplicação, levei o executável junto com o arquivo .ini e só.

 Grande abraço a todos.

 Angelo Louzada

 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
 armazenamento!
 http://br.mail. yahoo.com/

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

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

 


-- 
Leonardo Quinino

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: RES: [delphi-br] SOLUÇÃO para distribui ção de aplicativo com BD - Criação de arquivo INI

2008-01-28 Por tôpico Angelo Louzada
Blz, parabéns para você.


- Mensagem original 
De: Davi Eduardo Borges Wall [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 25 de Janeiro de 2008 10:20:17
Assunto: RES: [delphi-br] SOLUÇÃO para distribuição de aplicativo com BD - 
Criação de arquivo INI

Tamanha dificuldade? ? Vc ta brincando!

Tem exemplos de como criar arquivo INI no Help do Delphi!

Basta apertar F1, agora se a tecla F1 ta com problema, aconselho vc a ir no 
menu HELP do Delphi! RS...

De: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] Em nome de 
Angelo Louzada
Enviada em: sexta-feira, 25 de janeiro de 2008 11:12
Para: [EMAIL PROTECTED] os.com.br
Assunto: [delphi-br] SOLUÇÃO para distribuição de aplicativo com BD - Criação 
de arquivo INI

Amigos, pela tamanha dificuldade que tive em achar artigos explicando como 
criar instaladores já levando Banco de Dados no cliente resolvi optar pela 
distribuição através de arquivo .INI e pela dificuldade em achar artigos 
explicando como criar arquivo .INI venho compartilhar com vocês a solução que 
arrumei para minha aplicação.

Primeiro criei um arquivo .INI no mesmo diretório dos fontes da aplicação.

nome_do_arquivo. ini - Em nome_do_arquivo utilizei o mesmo nome do executável e 
dentro do arquivo criado coloquei os seguintes parametros:

[BD]
DATABASENAME= C:\Aplicacao\ database\ BANCO_DE_ DADOS.GDB
USERNAME=SYSDBA
PASSWORD=masterkey

Na unit do DataModule ficou da seguinte maneira:

unit frmDM;
interface
uses
SysUtils, Classes, IBDatabase, DB, IBCustomDataSet, IBQuery, RpBase,
RpSystem, RpCon, RpConDS, RpDefine, RpRave, IniFiles, Forms;
type
TDM = class(TDataModule)
IBDatabase1: TIBDatabase;
Trans: TIBTransaction;
procedure DataModuleCreate( Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure Configura;
end;
var
DM: TDM;
implementation
uses
Windows;
{$R *.dfm}
{ TDM }
procedure TDM.Configura;
var
stAplicacao : String;
Ini : TIniFile;
IniDBName : String;
IniUserName : String;
IniPassword : String;
begin
stAplicacao := ChangeFileExt( Application. ExeName, '.INI');
Ini := TIniFile.Create( ChangeFileExt( Application. ExeName, '.INI'));
try
iniDBName := Ini.ReadString( 'BD', 'DATABASENAME' , '');
iniUserName := Ini.ReadString( 'BD', 'USERNAME', '');
iniPassword := Ini.ReadString( 'BD', 'PASSWORD', '');
finally
Ini.Free;
end;
iniUserName := 'user_name=' + IniUserName;
iniPassword := 'password=' + iniPassword;
With IBDatabase1 do
begin
DatabaseName := iniDBName;
Params.Append( iniUserName) ;
Params.Append( iniPassword) ;
end;
end;
//Evento criado ao dar duplo clique no DataModule
procedure TDM.DataModuleCreat e(Sender: TObject);
begin
DM.Configura;
end;
end.

No meu caso o Banco utilizado foi o Interbase e o componente de conexão foi o 
IBDatabase.

No cliente eu instalei manualmente o Interbase e registrei o banco de dados da 
aplicação, levei o executável junto com o arquivo .ini e só.

Grande abraço a todos.

Angelo Louzada

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Impressão em Etiqueta e Cupon Fiscal

2008-01-28 Por tôpico Angelo Louzada
Bom dia a todos,

Alguém tem um exemplo de impressão em Etiqueta e Cupon Fiscal?


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] SOLUÇÃO para distribuição de aplicativo com BD - C riação de arquivo INI

2008-01-25 Por tôpico Angelo Louzada
Amigos, pela tamanha dificuldade que tive em achar artigos explicando como 
criar instaladores já levando Banco de Dados no cliente resolvi optar pela 
distribuição através de arquivo .INI e pela dificuldade em achar artigos 
explicando como criar arquivo .INI venho compartilhar com vocês a solução que 
arrumei para minha aplicação.

Primeiro criei um arquivo .INI no mesmo diretório dos fontes da aplicação.

nome_do_arquivo.ini - Em nome_do_arquivo utilizei o mesmo nome do executável e 
dentro do arquivo criado coloquei os seguintes parametros:

[BD]
DATABASENAME=C:\Aplicacao\database\BANCO_DE_DADOS.GDB
USERNAME=SYSDBA
PASSWORD=masterkey

Na unit do DataModule ficou da seguinte maneira:

unit frmDM;
interface
uses
  SysUtils, Classes, IBDatabase, DB, IBCustomDataSet, IBQuery, RpBase,
  RpSystem, RpCon, RpConDS, RpDefine, RpRave, IniFiles, Forms;
type
  TDM = class(TDataModule)
IBDatabase1: TIBDatabase;
Trans: TIBTransaction;
procedure DataModuleCreate(Sender: TObject);
  private
{ Private declarations }
  public
{ Public declarations }
procedure Configura;
  end;
var
  DM: TDM;
implementation
uses
  Windows;
{$R *.dfm}
{ TDM }
procedure TDM.Configura;
var
  stAplicacao : String;
  Ini : TIniFile;
  IniDBName : String;
  IniUserName : String;
  IniPassword : String;
begin
  stAplicacao := ChangeFileExt(Application.ExeName, '.INI');
  Ini := TIniFile.Create(ChangeFileExt(Application.ExeName, '.INI'));
  try
iniDBName := Ini.ReadString('BD', 'DATABASENAME', '');
iniUserName := Ini.ReadString('BD', 'USERNAME', '');
iniPassword := Ini.ReadString('BD', 'PASSWORD', '');
  finally
Ini.Free;
  end;
  iniUserName := 'user_name=' + IniUserName;
  iniPassword := 'password=' + iniPassword;
  With IBDatabase1 do
begin
  DatabaseName := iniDBName;
  Params.Append(iniUserName);
  Params.Append(iniPassword);
end;
end;
//Evento criado ao dar duplo clique no DataModule
procedure TDM.DataModuleCreate(Sender: TObject);
begin
  DM.Configura;
end;
end.

No meu caso o Banco utilizado foi o Interbase e o componente de conexão foi o 
IBDatabase.

No cliente eu instalei manualmente o Interbase e registrei o banco de dados da 
aplicação, levei o executável junto com o arquivo .ini e só.

Grande abraço a todos.

Angelo Louzada


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Multiplicando colunas no Rave Reports

2008-01-24 Por tôpico Angelo Louzada
Amigos seguinte, tenho uma band de detalhe no Rave e nessa band tenho dois 
DataText o primeiro DataText tem a propriedade DATAFIELD lincado ao campo 
QUANTIDADE de minha tabela e o outro está lincado ao campo PRECOUNITARIO, 
gostaria de saber como faço para que logo ao lado do campo PRECOUNITARIO eu 
crio um TOTALITEM por exemplo, ou seja, preciso multiplicar a quantidade * 
precounitario e mostrar o resultado em uma nova coluna. 

Mais uma vez, valeu pela atenção.

Att,

Angelo Louzada

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: [delphi-br] Multiplicando colunas no Rave Reports

2008-01-24 Por tôpico Angelo Louzada
Achei algo que possa me ajudar, caso alguém precise estou postando os passos:

a) declare as variaveis usadas no relatorio, 
no treeview do lado direito, mainpage, 
na propriedade: parameters. 
Coloque Total e Sub_Total 
b) coloque o componente CalcOp no DataView.DataBand. 
Este componente soma dois campos ou duas variaves e guarda o 
resultado em uma variavel daquelas que foram declaradas no item a. 
Na propriedade DestParam coloque Sub_Total. 
Para Multiplicar assinale a propriedade coMul do componente. 
c) coloque um componente DataText no DataView.DataBand. 
Assinale a propriedade Data Field Param.Sub_Total 
Este componente vai mostrar a variavel que foi multiplicada pelo 
componente CalcOp, item B. 
d) coloque um componente CalcTotal no DataView.DataBand. 
Assinale as propriedades CalcVar para CalcOp e 
Controller para o DataView.DataBand, assinale tambem a 
propriedade DestParam para Total (variavel declarada no item a) 
Assinale a propriedade RunningTotal para True. 
Este componente ira somar os resultados calculados pelo componente 
CalcOp e ira armazenar na variavel Total. 
e) Coloque um Band para sumarizar e neste band coloque um componente 
DataText e assinale a propriedade DataField Param.Total 


- Mensagem original 
De: Angelo Louzada [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 24 de Janeiro de 2008 7:30:20
Assunto: [delphi-br] Multiplicando colunas no Rave Reports

Amigos seguinte, tenho uma band de detalhe no Rave e nessa band tenho dois 
DataText o primeiro DataText tem a propriedade DATAFIELD lincado ao campo 
QUANTIDADE de minha tabela e o outro está lincado ao campo PRECOUNITARIO, 
gostaria de saber como faço para que logo ao lado do campo PRECOUNITARIO eu 
crio um TOTALITEM por exemplo, ou seja, preciso multiplicar a quantidade * 
precounitario e mostrar o resultado em uma nova coluna. 

Mais uma vez, valeu pela atenção.

Att,

Angelo Louzada

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] COMO INSTALAR A APLICAÇÃO NO CLIENTE???

2008-01-24 Por tôpico Angelo Louzada
Amigos, desenvolvir uma aplicação utilizando Delphi 7 + Interbase 6.5 + Rave 
Reports 5.0

Gostaria de saber como faço para instalar a aplicação no cliente, alguém 
saberia me dizer um passo à passo?


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Dúvida SQL

2008-01-23 Por tôpico Angelo Louzada
Amigos, estou com uma dúvida de relacionamento que é o seguinte, tenho a 
seguinte sentença:

SELECT TCLIENTE.NOMECLIENTE, TMOV.DATAENTRADA, TMOV.HORAENTRADA, TMOV.HORASAIDA,
TMOV.ID, TPRECO.DESCRICAO, TPRECO.VALOR, TMOV.VALORTOTAL, TPRODUTO.DESCRICAO,
TITMOV.QUANTIDADE, TITMOV.PRECOUNITARIO
FROM TMOV, TITMOV, TCLIENTE, TPRODUTO, TPRECO
WHERE TMOV.ID = TITMOV.IDMOV
AND TMOV.IDCLIENTE = TCLIENTE.ID
AND TMOV.IDPRECO = TPRECO.ID
AND TITMOV.IDPRODUTO = TPRODUTO.ID
AND TMOV.POSICAO = 'F'
AND TMOV.DATA_INC = :Data_Inc
ORDER BY TMOV.ID

Nessa sentença eu tenho uma tabela de movimento (TMOV) que relaciona com a 
tabela de cliente (TCLIENTE), preço (TPRECO) e itens do movimento (TITMOV), e a 
tabela (TITMOV) relaciona com a tabela de produto (TPRODUTO), porém nem sempre 
todo movimento terá itens consumidos, mais eu preciso que mostre os demais 
campos (NOMECLIENTE, DATAENTRADA, HORAENTRADA...). Quando eu executo esse 
script no Interbase ele só me traz os registros que além de atender minhas 
excessões da where tem que conter registros em todas as tabelas.

Como eu contorno isso, ou seja, como faço para me retornar dados mesmo quando 
meu movimento não tiver itens? Só para esclarecer, minha tabela de movimento 
registra a entrada e saída de clientes e quando um cliente entra ele pode 
consumir determinados produtos ou não que são controlados pela tabela de itens 
(TITMOV).

Grande abraço,

Angelo Louzada


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: [delphi-br] Dúvida SQL

2008-01-23 Por tôpico Angelo Louzada
Opa, montei o relacionamento da seguinte forma

SELECT TCLIENTE.NOMECLIENTE, TMOV.DATAENTRADA, TMOV.HORAENTRADA, TMOV.HORASAIDA,
TMOV.ID, TPRECO.DESCRICAO, TPRECO.VALOR, TMOV.VALORTOTAL, TPRODUTO.DESCRICAO,
TITMOV.QUANTIDADE, TITMOV.PRECOUNITARIO
FROM TMOV FULL OUTER JOIN TITMOV
ON TMOV.ID = TITMOV.IDMOV
FULL OUTER JOIN TCLIENTE
ON TMOV.IDCLIENTE = TCLIENTE.ID
FULL OUTER JOIN TPRODUTO
ON TITMOV.IDPRODUTO = TPRODUTO.ID
FULL OUTER JOIN TPRECO
ON TMOV.IDPRECO = TPRECO.ID
WHERE TMOV.POSICAO = 'F'
AND TMOV.DATA_INC = '01/23/2008'
ORDER BY TMOV.ID

mais será que essa é a melhor forma de resolver isso? Utilizando o OUTER JOIN?


- Mensagem original 
De: Angelo Louzada [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quarta-feira, 23 de Janeiro de 2008 14:37:46
Assunto: [delphi-br] Dúvida SQL

Amigos, estou com uma dúvida de relacionamento que é o seguinte, tenho a 
seguinte sentença:

SELECT TCLIENTE.NOMECLIENT E, TMOV.DATAENTRADA, TMOV.HORAENTRADA, 
TMOV.HORASAIDA,
TMOV.ID, TPRECO.DESCRICAO, TPRECO.VALOR, TMOV.VALORTOTAL, TPRODUTO.DESCRICAO,
TITMOV.QUANTIDADE, TITMOV.PRECOUNITARI O
FROM TMOV, TITMOV, TCLIENTE, TPRODUTO, TPRECO
WHERE TMOV.ID = TITMOV.IDMOV
AND TMOV.IDCLIENTE = TCLIENTE.ID
AND TMOV.IDPRECO = TPRECO.ID
AND TITMOV.IDPRODUTO = TPRODUTO.ID
AND TMOV.POSICAO = 'F'
AND TMOV.DATA_INC = :Data_Inc
ORDER BY TMOV.ID

Nessa sentença eu tenho uma tabela de movimento (TMOV) que relaciona com a 
tabela de cliente (TCLIENTE), preço (TPRECO) e itens do movimento (TITMOV), e a 
tabela (TITMOV) relaciona com a tabela de produto (TPRODUTO), porém nem sempre 
todo movimento terá itens consumidos, mais eu preciso que mostre os demais 
campos (NOMECLIENTE, DATAENTRADA, HORAENTRADA. ..). Quando eu executo esse 
script no Interbase ele só me traz os registros que além de atender minhas 
excessões da where tem que conter registros em todas as tabelas.

Como eu contorno isso, ou seja, como faço para me retornar dados mesmo quando 
meu movimento não tiver itens? Só para esclarecer, minha tabela de movimento 
registra a entrada e saída de clientes e quando um cliente entra ele pode 
consumir determinados produtos ou não que são controlados pela tabela de itens 
(TITMOV).

Grande abraço,

Angelo Louzada

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Multiplicando colunas no Rave Reports

2008-01-23 Por tôpico Angelo Louzada
Amigos seguinte, tenho uma band de detalhe no Rave e nessa band tenho dois 
DataText o primeiro DataText tem a propriedade DATAFIELD lincado ao campo 
QUANTIDADE de minha tabela e o outro está lincado ao campo PRECOUNITARIO, 
gostaria de saber como faço para que logo ao lado do campo PRECOUNITARIO eu 
crio um TOTALITEM por exemplo, ou seja, preciso multiplicar a quantidade * 
precounitario e mostrar o resultado em uma nova coluna. 

Mais uma vez, valeu pela atenção.

Att,

Angelo Louzada


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Dúvida na utilização do IBQuery - URGENTE

2008-01-16 Por tôpico Angelo Louzada
Amigo, ESTOQUE dentro do select está apenas como alias do campo 
TPRODUTO.QUANTIDADE mais só por curiosidade eu já tirei o alias fazendo 
referencia apenas no campo QUANTIDADE e mesmo assim me retorna 0, ficando da 
seguinte forma:

strSql := 'SELECT TPRODUTO.ID, TPRODUTO.DESCRICAO, TPRODUTO.QUANTIDADE ';
strSql := strSql + 'FROM TMOV, TITMOV, TPRODUTO ';
strSql := strSql + 'WHERE TMOV.ID = TITMOV.IDMOV ';
strSql := strSql + 'AND TITMOV.IDPRODUTO = TPRODUTO.ID ';
strSql := strSql + 'AND TPRODUTO.ID = ' + IntToStr(IdProduto) ;
With IBQueryEstoque do
begin
Close;
SQL.Clear;
SQL.Add(strSql) ;
Open;
end;
EstoqueAtual := IBQueryEstoque. FieldByName( 'QUANTIDADE' ).AsFloat;

- Mensagem original 
De: Ricardo LG linogonzalez@ gmail.com
Para: [EMAIL PROTECTED] os.com.br
Enviadas: Terça-feira, 15 de Janeiro de 2008 15:35:36
Assunto: Re: [delphi-br] Dúvida na utilização do IBQuery

Desculpe Angelo
Dentro do seu select você não tem um campo ESTOQUE apenas a quantidade.
Por isso o valor 0.

nesse caso acredito que você deveria fazer ou um select sum(Quantidade) as
estoque, em outra query.

Em 15/01/08, Angelo Louzada angelolouzada@ yahoo.com. br escreveu:

 Amigos, estou utilizando Delphi 7 + Interbase 6 e estou com uma dúvida:

 No Interbase quando eu executo o script abaixo me retorna o resultado
 correto.

 SELECT TPRODUTO.ID http://tproduto. id/, TPRODUTO.DESCRICAO,
 TPRODUTO.QUANTIDADE
 FROM TMOV, TITMOV, TPRODUTO
 WHERE TMOV.ID http://tmov. id/ = TITMOV.IDMOV
 AND TITMOV.IDPRODUTO = TPRODUTO.ID http://tproduto. id/
 AND TPRODUTO.ID http://tproduto. id/ = 13

 Eu preciso acessar o valor do campo tproduto.quantidade no delphi e para
 isso estou fazendo da seguinte maneira:

 strSql := 'SELECT TPRODUTO.ID http://tproduto. id/, TPRODUTO.DESCRICAO,
 TPRODUTO.QUANTIDADE ';
 strSql := strSql + 'FROM TMOV, TITMOV, TPRODUTO ';
 strSql := strSql + 'WHERE TMOV.ID http://tmov. id/ = TITMOV.IDMOV ';
 strSql := strSql + 'AND TITMOV.IDPRODUTO = TPRODUTO.IDhttp://tproduto. id/';
 strSql := strSql + 'AND TPRODUTO.ID http://tproduto. id/ = ' +
 IntToStr(IdProduto) ;
 With IBQueryEstoque do
 begin
 Close;
 SQL.Clear;
 SQL.Add(strSql) ;
 Open;
 end;

 strSql é uma variável do tipo String, IdProduto é uma variável que possui
 o ID do produto que selecionei em um grid.

 IdProduto := IBQueryMovimento. FieldByName( 'CODPRODUTO' ).AsInteger;

 Em modo de depuração eu passo o mouse em cima da variável strSql após o
 recebimento de todo o sql e certifico que o mesmo recebeu de forma correta o
 valor do id do produto ficando exatamente igual ao script que testei no
 Interbase.

 A grande questão: Declarei uma variável do tipo Double chamada
 EstoqueAtual para receber o valor do campo TPRODUTO.QUANTIDADE da seguinte
 forma:

 EstoqueAtual := IBQueryEstoque. FieldByName( 'ESTOQUE' ).AsFloat;

 Só que o valor retornado é sempre 0 e quando rodo o script no Interbase
 tenho a absoluta certeza que possuo valor no campo, nesse exemplo era para
 obter o valor 78.

 Alguém sabe me dizer aonde estou errando?

 Abraço a todos.

 Angelo Louzada

 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
 armazenamento!
 http://br.mail. yahoo.com/

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

 


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

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: [delphi-br] Procedimentos de outro form

2008-01-15 Por tôpico Angelo Louzada
Tem sim amigo e é bem simples, primeiro você adiciona a unit do formulário 
principal no form que você está trabalhando, ALT + F11, depois é só fazer 
referêcia do form principal e de seus objetos. Ex. 
FormPrincipal.QualquerCoisaQueEstiverNoFormPrincipal.


- Mensagem original 
De: Thiago Pereira Menzani [EMAIL PROTECTED]
Para: [EMAIL PROTECTED]
Enviadas: Segunda-feira, 14 de Janeiro de 2008 18:59:18
Assunto: [delphi-br] Procedimentos de outro form

Ola,
Tenho varios forms e um principal, como faço para utilizar procedures do 
form(unit) principal nos outros forms??

Exemplo: Em vários forms, quero utilizar no evento onEnter de um edit um 
procedimento que esta no form principal ??? Tem como

Grato

 - - ---
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



[delphi-br] Dúvida na utilização do IBQuery

2008-01-15 Por tôpico Angelo Louzada
Amigos, estou utilizando Delphi 7 + Interbase 6 e estou com uma dúvida:

No Interbase quando eu executo o script abaixo me retorna o resultado correto.

SELECT TPRODUTO.ID, TPRODUTO.DESCRICAO, TPRODUTO.QUANTIDADE
FROM TMOV, TITMOV, TPRODUTO
WHERE TMOV.ID = TITMOV.IDMOV
AND TITMOV.IDPRODUTO = TPRODUTO.ID
AND TPRODUTO.ID = 13

Eu preciso acessar o valor do campo tproduto.quantidade no delphi e para isso 
estou fazendo da seguinte maneira:

  strSql := 'SELECT TPRODUTO.ID, TPRODUTO.DESCRICAO, TPRODUTO.QUANTIDADE ';
  strSql := strSql + 'FROM TMOV, TITMOV, TPRODUTO ';
  strSql := strSql + 'WHERE TMOV.ID = TITMOV.IDMOV ';
  strSql := strSql + 'AND TITMOV.IDPRODUTO = TPRODUTO.ID ';
  strSql := strSql + 'AND TPRODUTO.ID = ' + IntToStr(IdProduto);
  With IBQueryEstoque do
begin
  Close;
  SQL.Clear;
  SQL.Add(strSql);
  Open;
end;

strSql é uma variável do tipo String, IdProduto é uma variável que possui o ID 
do produto que selecionei em um grid.

IdProduto := IBQueryMovimento.FieldByName('CODPRODUTO').AsInteger;

Em modo de depuração eu passo o mouse em cima da variável strSql após o 
recebimento de todo o sql e certifico que o mesmo recebeu de forma correta o 
valor do id do produto ficando exatamente igual ao script que testei no 
Interbase.

A grande questão: Declarei uma variável do tipo Double chamada EstoqueAtual 
para receber o valor do campo TPRODUTO.QUANTIDADE da seguinte forma:

EstoqueAtual := IBQueryEstoque.FieldByName('ESTOQUE').AsFloat;

Só que o valor retornado é sempre 0 e quando rodo o script no Interbase tenho a 
absoluta certeza que possuo valor no campo, nesse exemplo era para obter o 
valor 78.

Alguém sabe me dizer aonde estou errando?

Abraço a todos.

Angelo Louzada


  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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



Res: [delphi-br] Dúvida na utilização do IBQue ry

2008-01-15 Por tôpico Angelo Louzada
Amigo, ESTOQUE dentro do select está apenas como alias do campo 
TPRODUTO.QUANTIDADE mais só por curiosidade eu já tirei o alias fazendo 
referencia apenas no campo QUANTIDADE e mesmo assim me retorna 0, ficando da 
seguinte forma:

  strSql := 'SELECT TPRODUTO.ID, TPRODUTO.DESCRICAO, TPRODUTO.QUANTIDADE ';
  strSql := strSql + 'FROM TMOV, TITMOV, TPRODUTO ';
  strSql := strSql + 'WHERE TMOV.ID = TITMOV.IDMOV ';
  strSql := strSql + 'AND TITMOV.IDPRODUTO = TPRODUTO.ID ';
  strSql := strSql + 'AND TPRODUTO.ID = ' + IntToStr(IdProduto);
  With IBQueryEstoque do
begin
  Close;
  SQL.Clear;
  SQL.Add(strSql);
  Open;
end;
  EstoqueAtual := IBQueryEstoque.FieldByName('QUANTIDADE').AsFloat;



- Mensagem original 
De: Ricardo LG [EMAIL PROTECTED]
Para: delphi-br@yahoogrupos.com.br
Enviadas: Terça-feira, 15 de Janeiro de 2008 15:35:36
Assunto: Re: [delphi-br] Dúvida na utilização do IBQuery

Desculpe Angelo
Dentro do seu select você não tem um campo ESTOQUE apenas a quantidade.
Por isso o valor 0.

nesse caso acredito que você deveria fazer ou um select sum(Quantidade) as
estoque, em outra query.

Em 15/01/08, Angelo Louzada angelolouzada@ yahoo.com. br escreveu:

 Amigos, estou utilizando Delphi 7 + Interbase 6 e estou com uma dúvida:

 No Interbase quando eu executo o script abaixo me retorna o resultado
 correto.

 SELECT TPRODUTO.ID http://tproduto. id/, TPRODUTO.DESCRICAO,
 TPRODUTO.QUANTIDADE
 FROM TMOV, TITMOV, TPRODUTO
 WHERE TMOV.ID http://tmov. id/ = TITMOV.IDMOV
 AND TITMOV.IDPRODUTO = TPRODUTO.ID http://tproduto. id/
 AND TPRODUTO.ID http://tproduto. id/ = 13

 Eu preciso acessar o valor do campo tproduto.quantidade no delphi e para
 isso estou fazendo da seguinte maneira:

 strSql := 'SELECT TPRODUTO.ID http://tproduto. id/, TPRODUTO.DESCRICAO,
 TPRODUTO.QUANTIDADE ';
 strSql := strSql + 'FROM TMOV, TITMOV, TPRODUTO ';
 strSql := strSql + 'WHERE TMOV.ID http://tmov. id/ = TITMOV.IDMOV ';
 strSql := strSql + 'AND TITMOV.IDPRODUTO = TPRODUTO.IDhttp://tproduto. id/';
 strSql := strSql + 'AND TPRODUTO.ID http://tproduto. id/ = ' +
 IntToStr(IdProduto) ;
 With IBQueryEstoque do
 begin
 Close;
 SQL.Clear;
 SQL.Add(strSql) ;
 Open;
 end;

 strSql é uma variável do tipo String, IdProduto é uma variável que possui
 o ID do produto que selecionei em um grid.

 IdProduto := IBQueryMovimento. FieldByName( 'CODPRODUTO' ).AsInteger;

 Em modo de depuração eu passo o mouse em cima da variável strSql após o
 recebimento de todo o sql e certifico que o mesmo recebeu de forma correta o
 valor do id do produto ficando exatamente igual ao script que testei no
 Interbase.

 A grande questão: Declarei uma variável do tipo Double chamada
 EstoqueAtual para receber o valor do campo TPRODUTO.QUANTIDADE da seguinte
 forma:

 EstoqueAtual := IBQueryEstoque. FieldByName( 'ESTOQUE' ).AsFloat;

 Só que o valor retornado é sempre 0 e quando rodo o script no Interbase
 tenho a absoluta certeza que possuo valor no campo, nesse exemplo era para
 obter o valor 78.

 Alguém sabe me dizer aonde estou errando?

 Abraço a todos.

 Angelo Louzada

 Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
 armazenamento!
 http://br.mail. yahoo.com/

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

 


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





  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

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