zoukankan      html  css  js  c++  java
  • OleVariant的本质

    OleVariant的本质

    OleVariant,COM的一种数据类型。MIDAS基于COM之上构建的,自然使用OleVariant作为数据序列格式。

    延续到现在最新的DATASNAP仍然支持它。

    TClientDataset.data,TClientDataset.delta,这俩个属性
    的类型都是OleVariant。

    OleVariant可以是string,integer,float...
    这个大家都知道,但它也可以是array of OleVariant,这个
    可能有人不知道了。明白了这点就是datasnap中间件主从表
    数据同步的关键。

    var
    a: TServerMethods1Client;
    V: OleVariant;
    i, iCount: Integer;
    begin
    Result := False;
    if not TryConnectAPPServer then
    Exit;
    a := TServerMethods1Client.Create(SQLConnection1.DBXConnection);
    try
    iCount := High(TClientDatasetArray);
    V := VarArrayCreate([0, iCount], varVariant);
    for i := 0 to iCount do
    begin
    V[i] := null;
    if Datasets[i] <> nil then
    begin
    if Datasets[i].State in [dsInsert, dsEdit] then
    Datasets[i].Post;
    if Datasets[i].ChangeCount > 0 then
    V[i] := CompressData(Datasets[i].Delta);
    end;
    end;
    Result := a.UploadPOSSalesData(V);

    http://www.cnblogs.com/hnxxcxg/archive/2013/01/30/2882721.html

  • 相关阅读:
    【BJOI2018】求和
    【洛谷P1613】跑路
    【NOI2001】食物链
    【NOI2002】银河英雄传说
    【POJ1456】Supermarket
    【NOIP2013】货车运输
    【CH#56C】异象石
    【POJ3417】Network
    【APIO2010】巡逻
    【CH6201】走廊泼水节
  • 原文地址:https://www.cnblogs.com/findumars/p/5627608.html
Copyright © 2011-2022 走看看