[firebase-br] 1/2 Off.. para quem utiliza MDO

Fausto fausto.s.a em uol.com.br
Ter Mar 21 20:20:39 -03 2006


Boa noite pessoal antes de tudo me desculpem pelo off..e se puderem me 
responder em PVT, para não congerstionarmos a lista eu agradeceria
Atualmente eu utilizo o DBExpress e estou querendo mudar para o MDO, 
devido ao acesso nativo, hoje faço uso constante do ClientDataSet e 
minha conexão se resume da seguinte forma:
*SQLConnection*<-*SQLDataSet*<-*DataSetProvider*<-*ClienteDataSet*<-*DataSource*.
Como ficaria a substituição dos componentes acima com o MDO?
Vejo muito o pessoal falando sobre o CommitRetain, como ele deve ser setado?
Hoje para recuperar o código de um generator e mostra-lo na hora do Post 
eu utilizo o seguinte codigo:
*procedure* TDMServer.DSPEmpresaBeforeUpdateRecord(Sender: TObject;
  SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
  UpdateKind: TUpdateKind; var Applied: Boolean);
*begin*
 *if* UpdateKind in [ukInsert]* then*
    DeltaDS.FieldByName('EMPCOD').NewValue := NewGen('GEN_EMPRESAS');
*end*;

A função NewGen:
*function *TDMServer.NewGen(GenName: *String*): integer;
*var*
  ResultSet: TCustomSQLDataSet;
  SQLstmt:* string*;
*begin*
  SQLStmt := 'SELECT CAST(gen_id(' + GenName + ',1)as integer) as valor 
from RDB$DATABASE;';
  ResultSet :=* nil*;
*  try*
    PharmaCon.Execute(SQLstmt, nil, @ResultSet);
 *   if *Assigned(ResultSet) *then*
    *begin*
      *Result* := ResultSet.FieldByName('valor').AsInteger;
    *end;*
 * finally*
    ResultSet.Free;
 * end;*
*end;*

Utilizando o MDO teria como eu me livrar desta parafernália de código? 
Pois somente o tenho para o usuário ver o código no form logo após 
confirmar uma inclusão.
Se algum amigo, pude me dar estas dicas desde já serei muito grato, mais 
uma coisa como vc´s trabalham os campos de lookup, exemplo:
Estou no cadastro de pedidos e lá dentre outras FK´s tenho o codigo do 
cliente que preciso mostrar no form o nome associado ao cliente mais ou 
menos assim :
*Cliente:* 1876 JOAO DA SILVA CARVALHO NETO, como voces trabalham isto?
Grato
Fausto
faustoalves em com4.com.br
fausto.s.a em uol.com.br




Mais detalhes sobre a lista de discussão lista