[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