GARANTIR DESCONTO

Fórum ClientDataSet com FireDAC #518934

05/05/2015

0

Estou migrando do DBExpress para o Firedac ( Delphi XE7), a ideia é usar no inicio o TFDQuery + TDataSetProvider + TClientDataSet, alguém sabe como funciona?

Consigo visualizar os dados mas não consigo gravar alterações no Banco ( Firebird), quando dou clientedataset.applyupdates não retorna erro mas não grava no banco.
A alteração grava no ClientDataSet mas não no banco.
Roberto Rodrigues

Roberto Rodrigues

Responder

Post mais votado

13/05/2015

Eu pensei que você estava usando o FDTable.

Com o FDQuery, você tem que utilizar o ApplyUpDate, pois o Query, "gera" uma tabela temporária na memoria, ai para alterar o na base, tem que usar o código.




Nesse caso, você pode usar o FDTable, que usa a tabela em tempo real.






Att

Mateus Carvalho

Mateus Carvalho
Responder

Gostei + 1

Mais Posts

11/05/2015

Mateus Carvalho

Roberto, para conectar, eu uso as seguintes ferramentas:

1 FDConnection
1 FDtransaction
1 FDTable


No Connection, eu configuro os dados de acesso, usuário, senha e etc.
Na Table, eu seleciono a tabela que eu quero, e para salvar, apenas utilizo o comando POST, quem faz essa transação, é o componente Transaction.
Responder

Gostei + 0

11/05/2015

Aislan Sousa

ei será que pode me ajudar

Ola boa tarde tou com um problema talvez seja bem simples de resolver mais não tou conseguindo.

Tou desenvolvendo um sistema de cadastro para apresentar como trabalho da universidade é só cadastro de alunos
e é o seguinte:

Estou fazendo no Rad Studio XE6 com o firebird onde criei uma tabela de Alunos a conexão é o dbExpress + data Snap é que estamos estudando conexão com o fireDac e dbExpress , fizemos o sistema e ele roda na maquina que fizemos, mais para nossa surpresa quando fomos mostra para a professora só rodou o Servidor, a parte do lado do Cliente deu o seguinte erro,

Erro Socket

Exemplo: Onde nos fizemos colocamos o caminho para o banco de dados assim: 192.168.1.2:C:\Arquivos de programas\Banco\Alunos.FDB

Trocamos o o IP do pc da Universidade mais a professora desse que assim não tínhamos que desenvolver um arquivo "INI" desenvolvemos mais continua dando o mesmo erro e quando mudamos o IP da maquina onde ele foi feito também da erro. se alguém poder nos ajudar ficamos grato.
Responder

Gostei + 0

11/05/2015

Mateus Carvalho

Aislan Rafael Rodrigues de Sousa, cara, normalmente, esse erro apresenta quando o data snap não está ativo ou não consegue conectar no ip especificado. Isso pode ser causado por bloqueio do firewall ou do antivírus.

De uma verificada, e post os resultados.
Responder

Gostei + 0

11/05/2015

Roberto Rodrigues

O FDTransaction substitui o DataSetProvider?
Responder

Gostei + 0

11/05/2015

Mateus Carvalho

A grosso modo sim, Roberto.
Responder

Gostei + 0

11/05/2015

Roberto Rodrigues

Mac,

Você poderia me explicar melhor como você usa o FDTransaction?

Ele fica ligado ao FDConection ou na propriedade Transaction da FDTable?

Não estou utilizando FDConection e para salvar utilizo FDTable.ApplyUpdates(0) esta salvando normalmente.

Um problema que tive é não poder utilizar o dbNavigator, criei o meus próprios botões.

Tem algum artigo de como utilizar o FDTransaction?
Responder

Gostei + 0

11/05/2015

Mateus Carvalho

Roberto,

Para funções básica, como adicionar, editar, deletar, etc, não se programa nenhuma linha no transaction. Basta vincula-lo na propriedade Transaction. Eu coloco ele vinculado no FDconnection, pois assim, consigo acessar varias tabelas em apenas uma conexão, mais se você colocar na table, também funciona. Não é necessário utilizar o "ApplyUpdates(0)", pois o Transaction faz isso para você.



O melhor artigo dele encontra-se na ajuda do Delphi!
Responder

Gostei + 0

11/05/2015

Roberto Rodrigues

Mac,

Então com um FDTransaction ligado no FDConnection é suficiente?
Responder

Gostei + 0

11/05/2015

Mateus Carvalho

Sim, ele consegue dar conta tranquilo!
Responder

Gostei + 0

12/05/2015

Roberto Rodrigues

MAC,

Com POST no FDTable ( FDQuery) não esta salvando tenho que dar o ApplyUpDate.
Estou inserindo um registro e não grava no banco com POST.
Responder

Gostei + 0

12/05/2015

Mateus Carvalho

Faz um favor então.... Coloque os parâmetros de configuração que você esta usando no fdconnection e no fdtable.

Assim facilita pra mim.
Responder

Gostei + 0

12/05/2015

Roberto Rodrigues

MAC

Anexo o Object Inspector dos componentes.

[img:descricao=FDConnection]http://arquivo.devmedia.com.br/forum/imagem/30047-20150512-182837.png[/img]
[img:descricao=FDQuery 1]http://arquivo.devmedia.com.br/forum/imagem/30047-20150512-182921.png[/img]
[img:descricao=FDQuery 2]http://arquivo.devmedia.com.br/forum/imagem/30047-20150512-182942.png[/img]
Responder

Gostei + 0

13/05/2015

Roberto Rodrigues

MAC,

O FDTable não fica pesado, não gera muito trafego na rede?
Responder

Gostei + 0

18/05/2015

Mateus Carvalho

Ele consome mais que o Query, entretanto, nunca pesou nos meus sistemas, e olha que eu tenho sistemas com várias tabelas ativas ao mesmo tempo.
Responder

Gostei + 0

23/07/2016

Gilberto Moura

Tenta usar ele com FdtMemtable
Responder

Gostei + 0

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

Aceitar