Fórum Atualizar Texto do DBEdit sem Atualizar o Campo #275215
02/04/2005
0
Olá amigos.
Tendo uma consulta com subselect ( Select E.EMP_NO, E.FIRST_NAME,(SELECT D.DEPARTMENT FROM DEPARTMENT D where D.DEPT_NO=E.DEPT_NO ) as NOME_DEPT
from EMPLOYEE E
onde o retorno inclui um campo read-only ( o NOME_DEPT ) foi descrito na revista clube delphi 61 uma tecnica de utilizacao de pesquisa onde uma tela auxiliar pesquisaria o departamento e retornaria o valor para a
consulta principal ( dm.CDSEmployee.Edit;
dm.CDSEmployeeDEPT_NO.AsInteger:=
dm.Busca.Fields[0].AsInteger;
dm.CDSEmployeeNOME_DEPT.AsString:=
dm.Busca.Fields[1].AsString; )
Bom , parece que no exemplo deles funciona usando o DBExpress.
Na minha aplicacao a técnica funciona ( Atualiza o Texto do DBEdit ) mas quando posto as informações ( post ) recebo o erro que o campo é read-only e da pau.
Utilizo o trio IBX+DSP+CDS , será que alguem tem uma solução , ou seja , atualizar o texto e não modificar o estado do TField em questão.
PS. Para usar esta tecnica o DSP deve ser ajustado especificamente para isto ( opção upWhereKeyOnly e o TField da subselect deve ficar com o ProviderFlag pflnUpdate em false )
Tendo uma consulta com subselect ( Select E.EMP_NO, E.FIRST_NAME,(SELECT D.DEPARTMENT FROM DEPARTMENT D where D.DEPT_NO=E.DEPT_NO ) as NOME_DEPT
from EMPLOYEE E
onde o retorno inclui um campo read-only ( o NOME_DEPT ) foi descrito na revista clube delphi 61 uma tecnica de utilizacao de pesquisa onde uma tela auxiliar pesquisaria o departamento e retornaria o valor para a
consulta principal ( dm.CDSEmployee.Edit;
dm.CDSEmployeeDEPT_NO.AsInteger:=
dm.Busca.Fields[0].AsInteger;
dm.CDSEmployeeNOME_DEPT.AsString:=
dm.Busca.Fields[1].AsString; )
Bom , parece que no exemplo deles funciona usando o DBExpress.
Na minha aplicacao a técnica funciona ( Atualiza o Texto do DBEdit ) mas quando posto as informações ( post ) recebo o erro que o campo é read-only e da pau.
Utilizo o trio IBX+DSP+CDS , será que alguem tem uma solução , ou seja , atualizar o texto e não modificar o estado do TField em questão.
PS. Para usar esta tecnica o DSP deve ser ajustado especificamente para isto ( opção upWhereKeyOnly e o TField da subselect deve ficar com o ProviderFlag pflnUpdate em false )
Emerson Azevedo
Curtir tópico
+ 0
Responder
Posts
02/04/2005
Edilcimar
troque os DBEdit´s por Edit´s
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)