起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 327|回复: 17

【结贴】版本升级后出现的问题 急!!!**

[复制链接]
发表于 2008-4-3 11:49:13 | 显示全部楼层 |阅读模式
从3000 升级都3012版本后 出现一个问题 运行功能后报错 换回3000版本问题就不出现了

1.jpg

12.87 KB, 下载次数: 191

回复

使用道具 举报

发表于 2008-4-3 13:20:28 | 显示全部楼层
在studio调试运行,看错误出在哪里!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-3 14:32:27 | 显示全部楼层
只要一运行就报错
回复 支持 反对

使用道具 举报

发表于 2008-4-3 14:59:25 | 显示全部楼层
从studio中初始化运行就报错么?还是初始化运行后运行功能报错?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-3 15:01:53 | 显示全部楼层
初始化运行后 打开功能后进行操作的时候报错 是一个查询功能 按查询按钮时就报错
回复 支持 反对

使用道具 举报

发表于 2008-4-3 15:30:04 | 显示全部楼层
跟踪进去了么?该按钮里有什么处理?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-3 15:48:27 | 显示全部楼层
原来版本 是没有问题的 现在的版本就不行了 是这样的 我已经还原过原来版本测试了 就好用 现在代码跟不进去 只能跟一步启动 然后就出错了
回复 支持 反对

使用道具 举报

发表于 2008-4-3 15:59:40 | 显示全部楼层
出错代码呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-3 16:35:41 | 显示全部楼层
unit TEAMSOBSERVEDESKACCOUNTINFO;

interface

uses
  Business.System, Business.Model, Business.Data,Business.Forms;

type
  TTEAMSOBSERVEDESKACCOUNTINFO = class(TInfo)
    DataSetTEAMSDESKACCOUNT: TSQLDataSet;
    DataSetPECCANCYMANANGE: TSQLDataSet;
    DataSetNOTFINISHMANAGE: TSQLDataSet;
    DataSetSKILLMANAGE: TSQLDataSet;
    DataSetTEAMSWOKRMAIN: TSQLDataSet;
    DataSetTEAMSWOKRPROBLEM: TSQLDataSet;
    DataSetTeams: TSQLDataSet;
    DataSetQueryScale: TUserDataSet;
    FIELD_QueryScale_StartDate: TUserDataField;
    FIELD_QueryScale_EndDate: TUserDataField;
    FIELD_QueryScale_teams: TUserDataField;
    FIELD_QueryScale_PowerSystem: TUserDataField;
    FIELD_TEAMSDESKACCOUNT_Recnum: TCalcField;
    FIELD_PECCANCYMANANGE_Recnum: TCalcField;
    FIELD_NOTFINISHMANAGE_Recnum: TCalcField;
    FIELD_SKILLMANAGE_Recnum: TCalcField;
    DataSetAccident: TSQLDataSet;
    FIELD_Accident_Recnum: TCalcField;
    procedure InfoCreate(Sender: TObject);
    procedure FIELD_TEAMSDESKACCOUNT_RecnumCalcField(Field: TBizField; var Value: Variant);
    procedure FIELD_PECCANCYMANANGE_RecnumCalcField(Field: TBizField; var Value: Variant);
    procedure FIELD_NOTFINISHMANAGE_RecnumCalcField(Field: TBizField; var Value: Variant);
    procedure FIELD_SKILLMANAGE_RecnumCalcField(Field: TBizField; var Value: Variant);
    procedure FIELD_Accident_RecnumCalcField(Field: TBizField; var Value: Variant);
  private
    procedure OpenTeamsWorkTable(ADataSet : TBizDataSet;AMemberAction : string);
    procedure ImportTeamsWorkData;  //导入班组现场工作观察数据到工作观察台账
    procedure ImportDeskAccountData(AMemberAction : string);  //导入班组台账数据到违章等台账

  public
    procedure GetSYSRUNSECMODELData; //导入班组现场工作观察数据到工作观察台账
    procedure GetManageAccount(AMemberAction : string); //导入班组台账数据到违章等台账

  end;

implementation

procedure TTEAMSOBSERVEDESKACCOUNTINFO.OpenTeamsWorkTable(ADataSet : TBizDataSet;AMemberAction : string);
var
  lTeams : string;
  lStart : TDatetime;
  lEnd : TDatetime;
  lCondition : string;
begin
  lTeams :=  DataSetQueryScale.FieldByName('Teams').AsString;
  lStart :=  DataSetQueryScale.FieldByName('StartDate').AsDateTime;
  lEnd :=  DataSetQueryScale.FieldByName('EndDate').AsDateTime;
  lCondition := '1=1';
  if lTeams <> '' then
    lCondition := lCondition + ' and Teams = '''+ lTeams + '''';
  if AMemberAction <> '' then
    lCondition := lCondition + ' and MemberAction = '''+ AMemberAction + '''';
  if lStart > 0 then
    lCondition := lCondition + ' and  To_Char(ObserveTime,''yyyymmdd'') >= '+SysUtils.FormatDateTime('yyyymmdd',lStart)+' and To_Char(ObserveTime,''yyyymmdd'') <= '+SysUtils.FormatDateTime('yyyymmdd',lEnd);
  ADataSet.Close;
  ADataSet.SqlFilter := lCondition;
  ADataSet.SqlFiltered := True;
  ADataSet.Open;
end;


procedure TTEAMSOBSERVEDESKACCOUNTINFO.ImportTeamsWorkData;
var
  lTeams : string;
begin
  if not DataSetTEAMSWOKRPROBLEM.Active then DataSetTEAMSWOKRPROBLEM.Open;
  DataSetTEAMSWOKRMAIN.First;
  while not  DataSetTEAMSWOKRMAIN.Eof do
  begin
    DataSetTEAMSWOKRPROBLEM.First;
    while not  DataSetTEAMSWOKRPROBLEM.Eof do
    begin
      lTeams := DataSetTEAMSWOKRPROBLEM.FieldByName('ID').AsString;
      if not DataSetTEAMSDESKACCOUNT.Locate('TeamsWorkID',[lTeams],[TLOcateOption.loCaseInsensitive]) then
      begin
        DataSetTEAMSDESKACCOUNT.Append;
        DataSetTEAMSDESKACCOUNT.FieldByName('Teams').Assign(DataSetTEAMSWOKRMAIN.FieldByName('Teams'));
        DataSetTEAMSDESKACCOUNT.FieldByName('PowerSystem').Assign(DataSetTEAMSWOKRMAIN.FieldByName('PowerSystem'));
        DataSetTEAMSDESKACCOUNT.FieldByName('ByObserve').Assign(DataSetTEAMSWOKRMAIN.FieldByName('ByObserve'));
        DataSetTEAMSDESKACCOUNT.FieldByName('ObserveMember').Assign(DataSetTEAMSWOKRMAIN.FieldByName('ObserveMember'));
        DataSetTEAMSDESKACCOUNT.FieldByName('ObserveTime').Assign(DataSetTEAMSWOKRMAIN.FieldByName('ObserveTime'));
        DataSetTEAMSDESKACCOUNT.FieldByName('YesNo').Assign(DataSetTEAMSWOKRMAIN.FieldByName('YesNo'));
        DataSetTEAMSDESKACCOUNT.FieldByName('WorkContent').Assign(DataSetTEAMSWOKRMAIN.FieldByName('WorkContent'));
        DataSetTEAMSDESKACCOUNT.FieldByName('Problem').Assign(DataSetTEAMSWOKRPROBLEM.FieldByName('Problem'));
        DataSetTEAMSDESKACCOUNT.FieldByName('Speciality').Assign(DataSetTEAMSWOKRPROBLEM.FieldByName('Speciality'));
        DataSetTEAMSDESKACCOUNT.FieldByName('TeamsWorkID').Assign(DataSetTEAMSWOKRPROBLEM.FieldByName('ID'));

        ///////////
        DataSetTEAMSDESKACCOUNT.Post;
      end;
      DataSetTEAMSWOKRPROBLEM.Next;
    end;
    DataSetTEAMSWOKRMAIN.Next;
  end;

end;


procedure TTEAMSOBSERVEDESKACCOUNTINFO.GetSYSRUNSECMODELData;
begin
  OpenTeamsWorkTable(DataSetTEAMSWOKRMAIN,'');
  OpenTeamsWorkTable(DataSetTEAMSDESKACCOUNT,'');
  ImportTeamsWorkData;
end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.ImportDeskAccountData(AMemberAction : string);  //导入班组现场工作观察数据到工作观察台账
var
  lTeams : string;
  lSqlDataSet : TsqlDataSet;
begin
  if AMemberAction='01' then
     lSqlDataSet := DataSetPECCANCYMANANGE;
  if AMemberAction='02' then
     lSqlDataSet := DataSetNOTFINISHMANAGE;
  if AMemberAction='03' then
     lSqlDataSet := DataSetAccident;
  if AMemberAction='04' then
     lSqlDataSet := DataSetSKILLMANAGE;
   lSqlDataSet.Open;
  if not DataSetTEAMSDESKACCOUNT.Active then DataSetTEAMSDESKACCOUNT.Open;
  DataSetTEAMSDESKACCOUNT.First;
  while not  DataSetTEAMSDESKACCOUNT.Eof do
  begin
    lTeams := DataSetTEAMSDESKACCOUNT.FieldByName('ID').AsString;
   // lTime := DataSetTEAMSDESKACCOUNT.FieldByName('ObserveTime').AsDateTime;
    if not DataSetTEAMSDESKACCOUNT.Locate('TeamsWorkID',[lTeams],[TLOcateOption.loCaseInsensitive]) then
    begin
      lSqlDataSet.Append;
      lSqlDataSet.FieldByName('Teams').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('Teams'));(停在这里了)
      lSqlDataSet.FieldByName('PowerSystem').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('PowerSystem'));
      lSqlDataSet.FieldByName('ByObserve').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('ByObserve'));
     // DataSetPECCANCYMANANGE.FieldByName('ObserveMember').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('ObserveMember'));
      lSqlDataSet.FieldByName('ObserveTime').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('ObserveTime'));
     // DataSetPECCANCYMANANGE.FieldByName('YesNo').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('YesNo'));
     // DataSetPECCANCYMANANGE.FieldByName('WorkContent').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('WorkContent'));
      lSqlDataSet.FieldByName('Problem').Assign(DataSetTEAMSDESKACCOUNT.FieldByName('Problem'));
      ///////////
      lSqlDataSet.Post;
    end;
    DataSetTEAMSDESKACCOUNT.Next;
  end;

end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.GetManageAccount(AMemberAction : string); //导入班组台账数据到违章等台账
begin
  OpenTeamsWorkTable(DataSetTEAMSDESKACCOUNT,AMemberAction);
  ImportDeskAccountData(AMemberAction);
end;


procedure TTEAMSOBSERVEDESKACCOUNTINFO.InfoCreate(Sender: TObject);
begin
  DataSetQueryScale.Open;
end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.FIELD_TEAMSDESKACCOUNT_RecnumCalcField(Field: TBizField; var Value: Variant);
begin
  Value:=Field.DataSet.RecNo;
end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.FIELD_PECCANCYMANANGE_RecnumCalcField(Field: TBizField; var Value: Variant);
begin
Value:=Field.DataSet.RecNo;
end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.FIELD_NOTFINISHMANAGE_RecnumCalcField(Field: TBizField; var Value: Variant);
begin
Value:=Field.DataSet.RecNo;
end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.FIELD_SKILLMANAGE_RecnumCalcField(Field: TBizField; var Value: Variant);
begin
  Value:=Field.DataSet.RecNo;
end;

procedure TTEAMSOBSERVEDESKACCOUNTINFO.FIELD_Accident_RecnumCalcField(Field: TBizField; var Value: Variant);
begin
    Value:=Field.DataSet.RecNo;
end;

end.


(InfoBroker.Info as TTEAMSOBSERVEDESKACCOUNTINFO).GetSYSRUNSECMODELData; (用这句调用)
回复 支持 反对

使用道具 举报

发表于 2008-4-7 08:41:00 | 显示全部楼层
调试跟踪了吗?出错停在哪里呢?
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-13 19:19 , Processed in 0.044486 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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