DataSnap projesinde FireDAC için definition bulunamadı remote hatası

Yapmak istediğiniz işle ilgili doğru bileşeni bulmak için burayı kullanabilirsiniz. Sadece bulmak için, diğer sorular Programlama forumuna lütfen.
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Cevapla
emarti
Üye
Mesajlar: 3
Kayıt: 28 Mar 2016 01:21

DataSnap projesinde FireDAC için definition bulunamadı remote hatası

Mesaj gönderen emarti » 28 Mar 2016 02:34

Merhaba,
Yaptığım projeden kısaca bahsetmek isterim; sorunu anlamanıza yardımcı olacağını düşünüyorum.

Yerel ağda çalışmak üzere windows tabanlılarda VCL üzerine kurulu sunucu ve istemci uygulamalar ile Android üzerinden sadece istemci olmak üzere FMX kullanarak uygulama geliştirdim. Veritabanım ise windows kurulu ve sürekli yerel ağda online windows tabanlı pc ve tabiiki sunucu programı burada çalışıyor ve veritabanı da burada saklı. İstemciler buradan verileri işliyor vb.

Evde geliştirme kısmını tamamlayıp işyerinde denemeleri yapıyorum. Evde hiç bir problem yok. sunucu istemci ilişkisi sorunsuz. İşyerinde sunucu ayarlarını yani local ip ve veritabanı yolunu ayarlıyorum. İstemci sunucuya bağlanıyor; fakat veritabanı işlemine geçemeden şu hatayı veriyor:

Remote error: [FireDAC][Stan][Def]-254. Definition [dental] is not found in [c:\users\public\documents.......\Firdac\fdconnectiondefs.ini].

Bu dental definition rad studio açıkken data explorerda kendi tanımladığım sqlite veritabanı bağlantı adı. Evde tamam işyerinde bu sorunla karşılaşmamak için ne bu durumdan nasıl kurtulurum. ini dosyası mı tanımlamak gerekli yada eksik yaptığım birşey mi var anlamadım.

Yardımcı olursanız sevinirim. Kolay gelsin.
Delphi hakkında bazen ufak tefek karalama yaptığım link
http://dxdelphi.blogspot.com.tr

emarti
Üye
Mesajlar: 3
Kayıt: 28 Mar 2016 01:21

Re: DataSnap projesinde FireDAC için definition bulunamadı remote hatası

Mesaj gönderen emarti » 29 Mar 2016 10:37

Çözümü buldum arkadaşlar. Çok basit dikkatsizliğimin kurbanı olmuşum.

Sunucu olarak oluşturmak istenilen projenin servermethods olarak tanımlanan unitteki connection bileşeninin (ben de FDConnection) propertieslerindeki yapılan değişiklik ile sorun çözüldü.

Önceki tanımı:
object DentalConnection: TFDConnection
Params.Strings = (
'ConnectionDef=dental'
'DriverID=SQLite')
LoginPrompt = False
end

Düzeltilen Durum:
ConnectionDef özelliği silinip boş bırakılmalı ve

object DentalConnection: TFDConnection
Params.Strings = (
'Database=[VeritabanıYolu]'
'DriverID=SQLite')
LoginPrompt = False
end

olarak tanımlanmalıdır.
Kısaca Data Explorer ile belirlenen definition yerine kendi ayarımızı yapmalıyız. Client içindeki algoritmalara dalınca server ayarları unutuluyor onu öğrendim :)
Delphi hakkında bazen ufak tefek karalama yaptığım link
http://dxdelphi.blogspot.com.tr

Cevapla