服务器代码:function TdtmdlDbfun.GetDataByfield(iTableCode: Integer;
  sFields, sWhere: string; var sOutstr: string): TDataSet;
begin
  with sqlqrySvr do
  begin
    Close;
    SQLConnection := dtmdlSvrCon.conPublink;
    SQL.Text := 'select ' + sFields + ' from ' + f_GetTableNameByCode
      (TBL_T_880SysUser) + ' where (1=1) ' + sWhere;
    try
      Open;
      sOutstr := 'OK';
    except
      on e: exception do
        sOutstr := '打开数据集错误,SQL:' + SQL.Text + ',错误信息:' + e.Message;
    end;
  end;
  Result := sqlqrySvr;
end;
客户端代码:
然后我从客户端调用procedure TfrmLinktoCom.btn1Click(Sender: TObject);
var
  sSvrReturn: string;
begin
  svrmSubCompany.SQLConnection := PUB_conLinkYolo;
  svrmSubCompany.ServerMethodName := 'TdtmdlDbfun.GetDataByfield';
  svrmSubCompany.Params.ParamByName('iTableCode').AsInteger := TBL_T_880SysUser;
  svrmSubCompany.Params.ParamByName('sFields').AsString :=
    'F_MSCOMPANY,F_ComKey,F_ComName,F_ComAdd,F_ComTel,F_DbServer,' +
    'F_DbName,F_DbUser,F_DbPass,F_880SysVer,F_NeiIp,F_InternetIp,' +
    'F_AreaCountry,F_AreaLocal';
  svrmSubCompany.Params.ParamByName('sWhere').AsString := 'and (1=1)';
  svrmSubCompany.Open;
  sSvrReturn := svrmSubCompany.Params.ParamByName('sOutstr').AsString;
end;
打开后竟然grid里面显示的中文部分全部为乱码??有哪位大侠碰到过?