客户提出的需求:
基于平台安全性考虑,远程接口要求不输出DataSetProvider界面,而是提供数据传输方法。这个是什么意思?高手来讲讲改怎么做!

解决方案 »

  1.   

    本来就可以阿,
    在midas平台上或者com+平台上,你都是在客户端针对中间层写调用,你只需要在中间层的接口中定义你要定义的方法就好了,
    但是随之而来的是数据封装的问题。dataprovider+ClientDataset就提供了数据封装的简单方式
      

  2.   

    远程接口要求不输出DataSetProvider界面,而是提供数据传输方法。
    我觉得就是你提供的接口不要从IAppServer继承,直接从IUnknown或是IDispatch继承
      

  3.   

    method?
    exmaple:function GetDepartrmentRecs(var vResult:OleVariant):Boolean;
      

  4.   

    同意,JavaD(一竿残照)意见!数据封装的问题确实比较烦一点!
      

  5.   

    有定义两个方法
      GetData:负责提取数据(TClientDataSet.Data)
      SetData: 负责提交数据(TClientDataSet.Delta)并返回更新失败的记录及原因,之后用以合并TClientDataSet日志(Delta)说白一点:就是将系统中用到的SQL语句放在后台数据库中(可扩充)  然在GetData中将客户端传递的请求与参数合成一个完整的SQL语句执行后将结果传回给客户端。 提交时根据提高的TClientDataSet.Delta进行解释并对数据进行有效性判断,或自行生成SQL语句或通过分解后使用存储过程进行更新,个人提倡使用存储过程(控制灵活,逻辑较好,更新容易)
      

  6.   

    提供你一个最简单的方法用SOCKET传输XML文件,格式和标准都是你自己定的所以,在传到客户端后调用也是可以变成数据集的。而且ADODATASET也支持SAVETOFILE,不是很方便么。
      

  7.   

    那也可以对数据库操作可就原始多了,用socket