Problema de lógica

27/02/2003

0

Estou desenvolvendo um aplicativo que fará a leitura de um banco de dados. Este BD , além de outras informações possui um campo de ´tipo´.
Se o tipo contiver por exemplo o código ´a´ deverá ser executada uma procedure e se for do tipo ´b´ será executada outra procedure.
Como fazer isto?
Obrigado,
Helcio


Anonymous

Anonymous

Responder

Posts

27/02/2003

Aroldo Zanela

Estou desenvolvendo um aplicativo que fará a leitura de um banco de dados. Este BD , além de outras informações possui um campo de ´tipo´. Se o tipo contiver por exemplo o código ´a´ deverá ser executada uma procedure e se for do tipo ´b´ será executada outra procedure. Como fazer isto? Obrigado, Helcio


Query.Open;
while not Query.Eof do
begin
  if Query.FieldByName(´Tipo´).Value = ´a´ then
    ProcedureX else
  if Query.FieldByName(´Tipo´).Value = ´b´ then
    ProcedureY else
    ProcedureZ;
  Query.Next;
end;



Responder

27/02/2003

Anonymous

Query.Open;
while not Query.Eof do
begin
if Query.FieldByName(´Tipo´).Value = ´a´ then
ProcedureX else
if Query.FieldByName(´Tipo´).Value = ´b´ then
ProcedureY else
ProcedureZ;
Query.Next;
end;


suponha que o banco de dados tenha 100 tipos diferentes para o campo tipo como você irá decidir que procedimento executar.

Ou seja, é melhor tratar o problema registro a registro e não para todos os registros ao mesmo tempo ( not Query.Eof do ... ) .


Responder

27/02/2003

Anonymous

Não consegui. O que pretendo fazer é o seguinte:

Após ser feita a seleção deve ir para uma de duas procedures, uma delas é um timer, como segue:
procedure TForm1.Timer1Timer(Sender: TObject);
E a outra um componente Flash:
procedure TForm1.ShockwaveFlash1FSCommand(ASender: TObject; const command,
args: WideString);

Ao terminar a execução, deve ler o próximo registro do BD e recomeçar o processo.
Quando coloquei o nome da procedure conforme indicado, gera um erro de compilação.


Responder

28/02/2003

Anonymous

vc precisa colocar, entre parenteses, os parametros.


Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar