Parâmetros no VCL DataSnap CLIENTE

Delphi

28/12/2012

Olá a todos,

Eu criei um simples VCL DataSnap SERVIDOR utilizando os seguintes componentes para se comunicar com banco de dados MS SQL Server 2008:
ADOConnection1 => ADOTable1 => DataSetProvider1
Fiz os testes com a conexão de banco de dados e tudo funciona perfeitamente.
Então eu criei um simples VCL DataSnap CLIENTE utilizando os seguintes componentes para se comunicar com VCL DataSnap SERVIDOR:
SQLConnection1 => DSProviderConnection1 => ClientDataSet1
Fiz os testes com a conexão com DATASNAP e tudo funciona perfeitamente.
Mas quando eu faço a inclusão de um parâmetro na consulta SQL no servidor, por exemplo:
SELECT * FROM Tabela WHERE idCodigo = :Codigo
A aplicação cliente não consegue obter o parâmetro usando o FETCH PARAMS.
Ocorre o seguinte erro:
=================================== FETCH PARAMS =====================================================
Remote error: Access violation at address 0040C44C in module 'DSServer.exe'. Write of address 0000000B.
[5099D232]{dsnap170.bpl} Datasnap.DBClient.TCustomClientDataSet.FetchParams (Line 1246, "Datasnap.DBClient.pas" + 2) + $35
[5004668C]{rtl170.bpl } System.@CheckAutoResult (Line 34424, "System.pas" + 4) + $6
[5099D232]{dsnap170.bpl} Datasnap.DBClient.TCustomClientDataSet.FetchParams (Line 1246, "Datasnap.DBClient.pas" + 2) + $35
[22ED74B5]{dclmid170.bpl} LMidReg.TClientDataSetEditor.ExecuteVerb (Line 259, "LMidReg.pas" + 10) + $2
[51ECDF42]{vcldesigner170.bpl} VCLSurface.TVclDesignSurface.ComponentVerb (Line 2781, "VCLSurface.pas" + 3) + $B
[50512666]{vcl170.bpl } Vcl.Menus.TMenuItem.Click (Line 2523, "Vcl.Menus.pas" + 19) + $8
[50513C5F]{vcl170.bpl } Vcl.Menus.TMenu.DispatchCommand (Line 3436, "Vcl.Menus.pas" + 5) + $2
[50514ECE]{vcl170.bpl } Vcl.Menus.TPopupList.WndProc (Line 4597, "Vcl.Menus.pas" + 4) + $E
[50514E1D]{vcl170.bpl } Vcl.Menus.TPopupList.MainWndProc (Line 4572, "Vcl.Menus.pas" + 2) + $5
[5013BDC4]{rtl170.bpl } System.Classes.StdWndProc (Line 16891, "System.Classes.pas" + 8) + $0
[5052ED30]{vcl170.bpl } Vcl.Forms.TApplication.CancelHint (Line 11037, "Vcl.Forms.pas" + 6) + $7
[5052D9AF]{vcl170.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 10208, "Vcl.Forms.pas" + 23) + $1
[5052D9F2]{vcl170.bpl } Vcl.Forms.TApplication.HandleMessage (Line 10238, "Vcl.Forms.pas" + 1) + $4
[5052DD2D]{vcl170.bpl } Vcl.Forms.TApplication.Run (Line 10376, "Vcl.Forms.pas" + 26) + $3
======================================================================================================
Importante: A consulta SQL quando executada com parâmetro no servidor funciona perfeitamente!
Existe alguma restrição para usar parâmetros em VCL DataSnap CLIENTE?

Alexandre Xavier

Zoe Tecnologia

Zoe Tecnologia

Curtidas 0
POSTAR