起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 132|回复: 0

[分享]表格文档导出excel时进入死循环或者假死的问题

[复制链接]
发表于 2009-6-23 18:29:56 | 显示全部楼层 |阅读模式
docview 导出excel时合计值为负值的时候,进入递归出不来,造成程序假死。
解决方案:
业务模型\系统空间\系统功能\公共类库\表格文档库

找到上述路径修改
static procedure TSHEETDOCLIB.CopyArea(ASrcSheet, ADstSheet: TSheet; AArea:TSheetArea; ADstCol, ADstRow:Integer; var ATailCol, ATailRow:Integer);
var
    ……
begin
   ……
=====================================
       Dec(lOutRecCount);
        //计算汇总值, 注意需要在分组输出后计算,否则分组的汇总值会出错。
    if lOutRecCount >= 0 then
           lStatistician.ProcessRecord(AArea);
        if lOutRecCount > 0 then
           lDataSet.Next;
=====================================

以上部分修改成一下内容就OK了:


        //计算汇总值, 注意需要在分组输出后计算,否则分组的汇总值会出错。
  if  lOutRecCount>0 then
    begin
       Dec(lOutRecCount);
       if lOutRecCount >= 0 then
          lStatistician.ProcessRecord(AArea);
       if lOutRecCount > 0 then
          lDataSet.Next;
     end;
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-19 14:28 , Processed in 0.040619 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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