起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 379|回复: 15

【结贴】登陆系统后的默认功能**

[复制链接]
发表于 2009-6-18 10:49:27 | 显示全部楼层 |阅读模式
系统登陆后要运行一个默认功能,并且根据岗位的不同,运行不同的功能。
现在是通过显示标准主窗体的时候判断岗位,然后运行相应的功能。
但是存在问题,这样运行的功能能在主界面上关闭掉,想要的效果是类似于默认的工作台那样不能关闭的,该怎么实现啊
回复

使用道具 举报

发表于 2009-6-18 10:51:50 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-18 11:21:56 | 显示全部楼层
static function TSystemConsts.DefaultFuncs: TStringArray;
begin
  Result := ['Biz:\COLLABORATION\DesktopFunc.Func',
    CustomDesktopFunc,
…………

是指这个函数吗?我的是3088版本

我要根据不同的岗位,来指定不同的默认功能,应该怎么做啊?
回复 支持 反对

使用道具 举报

发表于 2009-6-18 13:49:39 | 显示全部楼层
在这个函数代码里面去判断,然后赋值。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-18 14:08:45 | 显示全部楼层
不理解这个函数,这是默认分配的功能,还是默认运行的功能啊,在函数里就已经有很多功能,在实际上系统登录时都没有运行这些 啊
static function TSystemConsts.DefaultFuncs: TStringArray;
begin
  Result := ['Biz:\COLLABORATION\DesktopFunc.Func',
    CustomDesktopFunc,
    'Biz:\COLLABORATION\SchedulerFunc.Func',
    'Biz:\COLLABORATION\TaskCenterFunc.Func',
    'Biz:\COLLABORATION\PlanCenterFunc.Func',
    'Biz:\COLLABORATION\JustepMail.Func',

    'Biz:\COLLABORATION\MyTaskFunc.Func',
    'Biz:\COLLABORATION\TaskRelationViewFunc.Func',
    'Biz:\COLLABORATION\PlanBrowseFunc.Func',

    'Biz:\COLLABORATION\WorkRecordFunc.Func',
    'Biz:\COLLABORATION\WORKTASKFUNC.Func',
//    'Biz:\COLLABORATION\WorkRemindFunc.Func',
    'Biz:\COLLABORATION\WorkLogFunc.Func',
    'Biz:\COLLABORATION\WorkAdviceFunc.Func',
    'Biz:\COLLABORATION\WorkWeekPlanFunc.Func',
    'Biz:\COLLABORATION\CalendarFunc.Func',
    'Biz:\COLLABORATION\CalendarTempletMngFunc.Func',

    'Biz:\COLLABORATION\WorkCalendarFunc.Func',
    'Biz:\COLLABORATION\UserPanelSettingFunc.Func',
    'Biz:\COLLABORATION\WEBVIEWFUNC.Func',

    'Biz:\COLLABORATION\WorkAdviceDealFunc.Func',
    'Biz:\COLLABORATION\WorkLogDealFunc.Func',
    'Biz:\COLLABORATION\WorkRecordDealFunc.Func',
//    'Biz:\COLLABORATION\WorkRemindDealFunc.Func',
    'Biz:\COLLABORATION\WorkTaskDealFunc.Func',
    'Biz:\COLLABORATION\WorkWeekPlanDealFunc.Func',
    'Biz:\COLLABORATION\ShowDetails.Func',
    'Biz:\COLLABORATION\PanelDefineFunc.Func',
    'Biz:\COLLABORATION\CalendarDealFunc.Func',

    'Biz:\COLLABORATION\AddressListFunc.Func',
    'Biz:\COLLABORATION\JUSTEPMEMO.Func',
    'Biz:\COLLABORATION\JUSTEPNOTEBOOK.Func',

    'Biz:\OPERATION\CRMSPACE\UserMngFunc.Func',
    'Biz:\OPERATION\CRMSPACE\CstmCommRecordFunc.Func',
    'Biz:\OPERATION\CRMSPACE\CSTMTRACKTFUNC.Func',
    'Biz:\OPERATION\CRMSPACE\PresaleWorkTaskFunc.Func',
    'Biz:\OPERATION\CRMSPACE\CustomerMngFunc.Func',
    'Biz:\OPERATION\CRMSPACE\UserCommRecordFunc.Func',
    'Biz:\OPERATION\CRMSPACE\UserTrackRecordFunc.Func',
    'Biz:\OPERATION\CRMSPACE\CHIEFMEETINGRECFUNC.Func',
    'Biz:\OPERATION\CRMSPACE\WORKWEEKREPORTFunc.Func',
    'Biz:\OPERATION\CRMSPACE\ProductDemandFUNC.Func',
    'Biz:\OPERATION\CRMSPACE\ProductQuestionFunc.Func',
    'Biz:\OPERATION\CRMSPACE\ProductQuestionFunc.Func',
    'Biz:\OPERATION\CRMSPACE\DATEAPPLICATIONFunc.Func',

    'Biz:\OPERATION\CRMSPACE\CstmCommRecordDealFunc.Func',
    'Biz:\OPERATION\CRMSPACE\CSTMTRACKDEALFUNC.Func',
    'Biz:\OPERATION\CRMSPACE\PresaleWorkTaskDealFunc.Func',
    'Biz:\OPERATION\CRMSPACE\UserCommRecordDealFunc.Func',
    'Biz:\OPERATION\CRMSPACE\UserTrackRecordDealFunc.Func',
    'Biz:\OPERATION\CRMSPACE\CHIEFMEETINGRECDEALFUNC.Func',
    'Biz:\OPERATION\CRMSPACE\WORKWEEKREPORTDEALfunc.Func',
    'Biz:\OPERATION\CRMSPACE\ProductDemandDealFunc.Func',
    'Biz:\OPERATION\CRMSPACE\ProductQuestionDealFunc.Func',
    'Biz:\OPERATION\CRMSPACE\DATEAPPLICATIONDEALFUNC.Func'
    ];

  if TSystemConsts.HasProjectSystem then
  begin
    SetLength(Result, High(Result) - Low(Result) + 1 + 1);
    Result[High(Result)] := 'Biz:\OPERATION\PROJECTSPACE\ProjectRelationBrowseFunc.Func';
  end;

  if TSystemConsts.HasDocSystem then
  begin
    SetLength(Result, High(Result) - Low(Result) + 1 + 1);
    Result[High(Result)] := TSystemConsts.DocCenterURL;
  end;

  if TSystemConsts.HasDecisionSystem then
  begin
    SetLength(Result, High(Result) - Low(Result) + 1  + 1);
    Result[High(Result)] := TSystemConsts.DecisionCenterURL;
  end;

  if TSystemConsts.HasOASystem then
  begin
    SetLength(Result, High(Result) - Low(Result) + 1  + 5);
    Result[High(Result) - 4] := TSystemConsts.NewsCenterURL;
    Result[High(Result) - 3] := 'Biz:\OPERATION\OASPACE\LetterVisitDealFunc.Func';
    Result[High(Result) - 2] := 'Biz:\OPERATION\OASPACE\LetterDisposalDealFunc.Func';
    Result[High(Result) - 1] := 'Biz:\OPERATION\OASPACE\DailyChargeBxDealFunc.Func';
    Result[High(Result)] := 'Biz:\OPERATION\OASPACE\EvectionChargeBxDealFunc.Func';
  end;
end;
回复 支持 反对

使用道具 举报

发表于 2009-6-18 14:39:15 | 显示全部楼层
回错了,是在这个单元的另一个函数
static function TSystemConsts.AutoRunFuncs: TStringArray;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-18 15:36:45 | 显示全部楼层
修改这个函数也不起作用……
用system登录,在系统配置中的工作台增加功能,这个功能就会在系统登录时就运行,并且不能关闭,只是我现在需要根据不同岗位来确定功能
到底怎么改?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-19 11:35:55 | 显示全部楼层
怎么没人回答了呢
比较急啊…………
回复 支持 反对

使用道具 举报

发表于 2009-6-19 13:46:39 | 显示全部楼层
你在配置库搜索
  { 系统运行后在主窗体调用自动运行的功能 }
  AutoRunFuncs := IniFile.ReadString(GetSection, 'AutoRunFuncs', AutoRunFuncs);
把这个从inifile读的过程,换成你的判断过程。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-19 16:09:50 | 显示全部楼层
在SETTINGLIB里没法获取登录的岗位名称,因为没法调用systemcore,一引用就是循环引用了

怎么获取岗位????
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 04:18 , Processed in 0.048083 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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