não usar auto gravar no firedac com master detail
Pessoal estou com a seguinte estrutura no meu projeto
tenho uma tabela mestre com o nome de entidades e tenho uma tabela filho com o nome entidades_bloqueios onde faço a ligação com master detail através das propriedades mastersouce, masterfiled, IdexFieldNames e DetailFields até ta tudo bem , tudo funciona perfeito , minha estrutura de gravação e cancelamento claro que está na tabela principal que é a FDQueryEntidades, então quando dou um append ou um edit na tabela FDQueryEntidades ele logo deixa eu fazer a operação na tabela FDQueryEntidadesBloqueios beleza agora é o seguinte quando eu insiro ou altero um registro na tabela FDQueryEntidadesBloqueios e depois clico em cancelar da FDQueryEntidades era pra desfazer a operação na tabela FDQueryEntidadesBloqueios e isso não ta acontecendo eu faço dessa forma
na tabela filho era para desfazer e não está desfazendo como fazer isso já fiz váiros teste como FDQuery1.CancelUpdates e nada
veja o que já tentei
Código:
with FDQueryEntidades do
begin
Cancel;
dm.fdConPrin.RollbackRetaining;
end;
era para cancelar a operação realizada FDQueryEntidadesBloqueios
tenho uma tabela mestre com o nome de entidades e tenho uma tabela filho com o nome entidades_bloqueios onde faço a ligação com master detail através das propriedades mastersouce, masterfiled, IdexFieldNames e DetailFields até ta tudo bem , tudo funciona perfeito , minha estrutura de gravação e cancelamento claro que está na tabela principal que é a FDQueryEntidades, então quando dou um append ou um edit na tabela FDQueryEntidades ele logo deixa eu fazer a operação na tabela FDQueryEntidadesBloqueios beleza agora é o seguinte quando eu insiro ou altero um registro na tabela FDQueryEntidadesBloqueios e depois clico em cancelar da FDQueryEntidades era pra desfazer a operação na tabela FDQueryEntidadesBloqueios e isso não ta acontecendo eu faço dessa forma
na tabela filho era para desfazer e não está desfazendo como fazer isso já fiz váiros teste como FDQuery1.CancelUpdates e nada
veja o que já tentei
Código:
with FDQueryEntidades do
begin
Cancel;
dm.fdConPrin.RollbackRetaining;
end;
era para cancelar a operação realizada FDQueryEntidadesBloqueios
Nildglan Sousa
Curtidas 0
Respostas
Valquiria Silva
15/07/2014
Nildglan, boa tarde.
na pasta de instalação existem exemplos que talvez possam te ajudar ..FireDAC\Samples\Comp Layer\TADQuery
Se você cancelar as alterações na tabela FDQueryEntidadesBloqueios da certo?
tipo:
FDQueryEntidades.CancelUpdates();
FDQueryEntidadesBloqueios.CancelUpdates();
Abs.
na pasta de instalação existem exemplos que talvez possam te ajudar ..FireDAC\Samples\Comp Layer\TADQuery
Se você cancelar as alterações na tabela FDQueryEntidadesBloqueios da certo?
tipo:
FDQueryEntidades.CancelUpdates();
FDQueryEntidadesBloqueios.CancelUpdates();
Abs.
GOSTEI 0
Nildglan Sousa
15/07/2014
se eu fizer direto na tabela FDQueryEntidadesBloqueios ai sim cancelar mais seria fora de lógica não é?
GOSTEI 0
Nildglan Sousa
15/07/2014
não encontrei essa pasta FireDAC\Samples\Comp Layer\TADQuery me passa o caminho correto estou no windows 8
GOSTEI 0
Valquiria Silva
15/07/2014
Nildglan, bom dia.
Eu também acredito que seria fora de lógica.
Essa Pasta é a de instalação do Componente FireDac, a localização depende do que você escolheu na hora da instalação, se você não mudou
C:\Program Files (x86)\Embarcadero\FireDAC.
boa sorte.
Eu também acredito que seria fora de lógica.
Essa Pasta é a de instalação do Componente FireDac, a localização depende do que você escolheu na hora da instalação, se você não mudou
C:\Program Files (x86)\Embarcadero\FireDAC.
boa sorte.
GOSTEI 0