起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: kd_xjx

【搞定】升级到2918后的错误**

[复制链接]
 楼主| 发表于 2008-1-2 17:33:15 | 显示全部楼层
第一个问题我们搭建环境也比较耗时,现场采用的高版本倒是问题不大,就是存在缺陷需要处理。我重现后另开新贴吧。第二个问题比较迫切!
回复 支持 反对

使用道具 举报

发表于 2008-1-3 10:49:26 | 显示全部楼层
把您完整的代码贴一下,我们重现一下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-3 16:29:18 | 显示全部楼层
{添加宏 按钮事件}
procedure TXJHTMBCT.Button_AddDocClick(Sender: TObject);
begin
    AddDot();
    //TUnStructureDocUtils.SetSecretLevel(FWordOleExtend,newWordName,newWordName);
end;
{添加宏 double click event}
procedure TXJHTMBCT.ListB_AttDblClick(Sender: TObject);
begin
    AddDot();
end;
{添加宏}
procedure TXJHTMBCT.AddDot();
var
    selectDesc : String;
    selectID : String;
begin
    selectDesc := TGJL.getListName(ListB_Att);
    selectID := getID(selectDesc);
    //************* 主要是这句 ***************************//
    TUnStructureDocUtils.AddWordField(FWordOleExtend, selectID, '');
end;

{得到宏ID}
function TXJHTMBCT.getID(selectDesc: String) : String;
var
    i : Integer;
    arr : array of String;
    arrV1 : String;
    arrV2 : String;
begin
    for i := Low(attValues) to High(attValues) do
    begin
        arr := attValues;

        arrV1 := arr[0];
        arrV2 := arr[1];

        if SysUtils.SameText(selectDesc , arrV1) then
            Result := arrV2;
    end;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-3 16:31:16 | 显示全部楼层
不太可能贴一个完整的代码,涉及的其他单元太多。基本上我觉得上面的代码能够表达清楚问题的原因。你们可以在给我们的2918上做一个例子,问题就出来了 ,谢谢支持!
回复 支持 反对

使用道具 举报

发表于 2008-1-4 09:00:41 | 显示全部楼层
好,我这里马上确认,有结果立刻反馈上来
回复 支持 反对

使用道具 举报

发表于 2008-1-4 10:25:05 | 显示全部楼层
楼主,
getListName(ListB_Att);是做什么的?
FWordOleExtend哪里来的?
attValues里存了什么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-4 10:59:46 | 显示全部楼层
整个单元的源代码,供参考

unitpas.rar

3.32 KB, 下载次数: 90

回复 支持 反对

使用道具 举报

发表于 2008-1-4 12:43:46 | 显示全部楼层
楼主,我用2918版本测试,没有问题。
你是不是版本不对啊。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-4 15:34:08 | 显示全部楼层
不太可能吧 我们的版本都是你们给发的呀,低版本的我们是可以的,即便版本错了 怎么个错法
回复 支持 反对

使用道具 举报

发表于 2008-1-4 15:44:14 | 显示全部楼层
我在2918的版本上执行下面代码是没有问题的。
var
  lWordOleExtend: TWordOleExtend;
begin
  if not (SysUtils.SameText(FileSys.FileUtils.GetFileExt(AOSFileName), '.doc')
       or SysUtils.SameText(FileSys.FileUtils.GetFileExt(AOSFileName), '.docx')) then
    exit;
  lWordOleExtend := TUnStructureDocUtils.CreateWordOleExtend('');
  try
    lWordOleExtend.EditWordFile(AOsFileName);
    FWordOleExtend.AddFieldValue('ContractID', 'field11234');
    TUnStructureDocUtils.AddWordFieldValue(FWordOleExtend, 'ContractName', 'field2:5678');
  finally
    result := lWordOleExtend;
  end;
end;

你说的不存在是什么现象?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-4 18:13 , Processed in 0.050526 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表