📄 main.pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus, ComCtrls, ToolWin, ExtCtrls, StdCtrls, Buttons, shellapi,
OleCtrls, ImgList, Db, DBTables, jpeg, Mask, Grids, XPMenu,Registry, IniFiles;
type
TFormMain = class(TForm)
ImageListStatus: TImageList;
ImageBkGd: TImage;
StatusBarMain: TStatusBar;
ToolbarImages: TImageList;
XPMenuMain: TXPMenu;
Query1: TQuery;
MainMenu: TMainMenu;
System: TMenuItem;
SystemLogin: TMenuItem;
SystemExit: TMenuItem;
System_SpitOne: TMenuItem;
SystemWake: TMenuItem;
SystemIssueInfo: TMenuItem;
SystemAffiche: TMenuItem;
System_SpitTwo: TMenuItem;
SystemClose: TMenuItem;
Archives: TMenuItem;
ArchivesCustInfo: TMenuItem;
ArchivesGroupInfo: TMenuItem;
ArchivesCompete: TMenuItem;
ValidateCust: TMenuItem;
Service: TMenuItem;
ServiceCust: TMenuItem;
ServiceGroup: TMenuItem;
ServiceBarterCard: TMenuItem;
ServiceEconBuyCard: TMenuItem;
ServiceAppeal: TMenuItem;
Manager: TMenuItem;
ManagerAchives: TMenuItem;
ManagerDistribute: TMenuItem;
ManagerAdmination: TMenuItem;
ManagerLog: TMenuItem;
ManagerSMSSend: TMenuItem;
Query: TMenuItem;
QueryStru: TMenuItem;
QueryReckoning: TMenuItem;
QueryCapture: TMenuItem;
QueryOperationUse: TMenuItem;
QueryArrearage: TMenuItem;
QueryCustHistory: TMenuItem;
QueryEnjoyService: TMenuItem;
QueryIntegral: TMenuItem;
QueryBirthday: TMenuItem;
QueryAppeal: TMenuItem;
Analyze: TMenuItem;
AnalyzeFancy: TMenuItem;
AnalyzeGroupComp: TMenuItem;
AnalyzeCustComp: TMenuItem;
AnalyzeOpertion: TMenuItem;
Setup: TMenuItem;
SetupFeast: TMenuItem;
SetupCalling: TMenuItem;
SetupDiploma: TMenuItem;
SetupAppeal: TMenuItem;
SetupSMS: TMenuItem;
Setupservmode: TMenuItem;
Setupservtype: TMenuItem;
Setupservquality: TMenuItem;
SetupGrade: TMenuItem;
SetupPara: TMenuItem;
SetupPerview: TMenuItem;
SetupUserLog: TMenuItem;
Windows: TMenuItem;
Help: TMenuItem;
HelpAbout: TMenuItem;
Windows_MinAll: TMenuItem;
AnalyzeIntegral: TMenuItem;
QueryGradeOrder: TMenuItem;
AnalyzeAppeal: TMenuItem;
QueryReckoningM: TMenuItem;
AnalyzeGradeStru: TMenuItem;
Windows_MaxAll: TMenuItem;
Windows_CloseAll: TMenuItem;
Windows_RestoreAll: TMenuItem;
Windows_AutoArr: TMenuItem;
MenuItemHelpContent: TMenuItem;
OpenDialogHelpFile: TOpenDialog;
HelpVersionUpdate: TMenuItem;
N1: TMenuItem;
SetupPurManager: TMenuItem;
N2: TMenuItem;
Setupinditop: TMenuItem;
Setupindititle: TMenuItem;
ManagerOperate: TMenuItem;
setupservicetopic: TMenuItem;
QueryACTFEE: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure SystemCloseClick(Sender: TObject);
procedure SpeedButtonLogoutClick(Sender: TObject);
procedure StatusBarMainDrawPanel(StatusBar: TStatusBar;Panel: TStatusPanel; const Rect: TRect);
procedure FormShow(Sender: TObject);
procedure MenuItemRestoreAllClick(Sender: TObject);
procedure MenuItemMinimizeAllClick(Sender: TObject);
procedure MenuItemHelpContentClick(Sender: TObject);
procedure SpeedButtonloginClick(Sender: TObject);
procedure SpeedButtonlockClick(Sender: TObject);
procedure SystemExitClick(Sender: TObject);
procedure SystemWakeClick(Sender: TObject);
procedure SystemAfficheClick(Sender: TObject);
procedure SystemIssueInfoClick(Sender: TObject);
procedure SetupPerviewClick(Sender: TObject);
procedure ValidateCustClick(Sender: TObject);
procedure ManagerSMSSendClick(Sender: TObject);
procedure ManagerDistributeClick(Sender: TObject);
procedure QueryStruClick(Sender: TObject);
procedure ArchivesCustInfoClick(Sender: TObject);
procedure AnalyzeCustCompClick(Sender: TObject);
procedure AnalyzeGroupCompClick(Sender: TObject);
procedure QueryReckoningClick(Sender: TObject);
procedure QueryCaptureClick(Sender: TObject);
procedure QueryOperationUseClick(Sender: TObject);
procedure QueryArrearageClick(Sender: TObject);
procedure QueryCustHistoryClick(Sender: TObject);
procedure QueryEnjoyServiceClick(Sender: TObject);
procedure QueryIntegralClick(Sender: TObject);
procedure QueryBirthdayClick(Sender: TObject);
procedure QueryAppealClick(Sender: TObject);
procedure QureyOperationClick(Sender: TObject);
procedure QueryParticularClick(Sender: TObject);
procedure QueryNoEnjoyServiceClick(Sender: TObject);
procedure QueryInterestClick(Sender: TObject);
procedure QueryReplaceGatheringClick(Sender: TObject);
procedure QueryAccountBalanceClick(Sender: TObject);
procedure ArchivesGroupInfoClick(Sender: TObject);
procedure AnalyzeFancyClick(Sender: TObject);
procedure ArchivesCompeteClick(Sender: TObject);
procedure ServiceBarterCardClick(Sender: TObject);
procedure ServiceEconBuyCardClick(Sender: TObject);
procedure AnalyzeOpertionClick(Sender: TObject);
procedure ManagerAdminationClick(Sender: TObject);
procedure SetupFeastClick(Sender: TObject);
procedure SetupCallingClick(Sender: TObject);
procedure SetupDiplomaClick(Sender: TObject);
procedure SetupAppealClick(Sender: TObject);
procedure SetupSMSClick(Sender: TObject);
procedure SetupAccessingClick(Sender: TObject);
procedure SetupGradeClick(Sender: TObject);
procedure SetupParaClick(Sender: TObject);
procedure SetupUserLogClick(Sender: TObject);
procedure SetupservqualityClick(Sender: TObject);
procedure SetupservtypeClick(Sender: TObject);
procedure SetupservmodeClick(Sender: TObject);
procedure HelpAboutClick(Sender: TObject);
procedure AnalyzeIntegralClick(Sender: TObject);
procedure ManagerLogClick(Sender: TObject);
procedure ServiceCustClick(Sender: TObject);
procedure ManagerAchivesClick(Sender: TObject);
procedure ServiceGroupClick(Sender: TObject);
procedure QueryGradeOrderClick(Sender: TObject);
procedure ServiceAppealClick(Sender: TObject);
procedure QueryReckoningMClick(Sender: TObject);
procedure AnalyzeAppealClick(Sender: TObject);
procedure AnalyzeGradeStruClick(Sender: TObject);
procedure Windows_AutoArrClick(Sender: TObject);
procedure Windows_MinAllClick(Sender: TObject);
procedure Windows_MaxAllClick(Sender: TObject);
procedure Windows_CloseAllClick(Sender: TObject);
procedure Windows_RestoreAllClick(Sender: TObject);
procedure HelpVersionUpdateClick(Sender: TObject);
procedure SetupPurManagerClick(Sender: TObject);
procedure SetupinditopClick(Sender: TObject);
procedure SetupindititleClick(Sender: TObject);
procedure ManagerOperateClick(Sender: TObject);
procedure setupservicetopicClick(Sender: TObject);
procedure QueryACTFEEClick(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
private
{ Private declarations }
FClientInstance,
FPrevClientProc : TFarProc;
procedure ClientWndProc(VAR Message: TMessage);
public
{ Public declarations }
AppVersion: String;
V_gl_str_xdwjbh,v_gl_str_jhbh :string;
procedure ShowHint(Sender: TObject);
procedure MyHandleException(Sender: TObject;E: Exception);
function ExistMDIChild(ChildForm: TForm): Boolean;
procedure InitiateControl(Connected: Boolean);
Procedure GongGaoXinXi;
procedure Pro_OpenForm(FormClass: TFormClass; var fm; AOwner:TComponent);
procedure GP_SetButtonPos(Aname:TWincontrol);//自动设置按钮的位置
procedure InitiateMenu;
end;
var
FormMain: TFormMain;
//定义全局变量
JX: integer; //当前操作员所属局向
GH: string; //当前操作员工号
ManagerName:String;
JBDM: integer; //操作员级别代码
roomid: integer;
PS_HomeName : String;//局向名称
PS_CityNo : String; //地市代码
PS_CityName : String;//地市名称
PS_ConnStr : string;//全局连接符
DHHM: string; //当前处理欠费号码
LstJX: TStringList; //局向列表
IdxJX: integer; //初始局向列表序号
LstValue: array[0..255] of string; //列表值数组,最大256元素
LogTry:integer; //登录失败次数
sele_nbr:integer;
//用来做线程防止多线程共同申请资源时出现死锁
ZqsMutex:THandle=0;
ID:String; //记录用户日志ID
RegCity:String; //注册地市
const
{Declare constants we're interested in}
eKeyViol = 9729;
eRequiredFieldMissing = 9732;
eForeignKey = 9733;
eDetailsExist = 9734;
eNotNull = 13059;
MyKEY = 12345;
implementation
{$R *.DFM}
uses
dmmain,//数据模块
login,//登录窗体
crypt,
FunctionP,
ProcedureP,
unit_ArchivesCustInfo,//个人客户档案
Unit_CompMana,//竞争对手档案
unit_ValidateCust,//大客户验证管理
//大客户分配管理
Unit_ManagerSMSSend,//短信发送
Unit_QueryStru,//大客户构成查询
Unit_QueryCapture,//大客户缴费销账查询
Unit_QueryOperationUse,//大客户业务使用查询
unit_QueryArrearage,//大客户欠费信息查询
unit_QueryCustHistory,//个人历史资料查询
unit_queryindiservice,//大客户服务查询
unit_QueryIntegral,//大客户积分查询
Unit_QueryReckoning,//大客户话费查询
unit_QueryBirthday,//大客户生日查询
Unit_QueryAppeal,//大客户投诉查询
Unit_AnalyzeGroupComp,//集团客户构成分析
Unit_AnalyzeCustComp,//个人客户构成分析
Unit_AnalyzeCustFancy,//个人大客户喜好构成
rygl,//人员管理模块
Unit_SystemAffiche,//公告栏
Unit_SystemIssueInfo,//信息发布
Unit_ManagerDistribute,
Unit_ServiceBarterCard,//免费换卡
Unit_ServiceEconBuyCard,//优惠购卡
// Unit_QureyOperation,
Unit_ManagerAdmination, //消费用户及集团数量统计
Unit_AnalyzeOpertion, //新业务使用构成
Unit_ArchivesGroupInfo, //集团用户管理
Unit_ManagerAchives,//大客户经理档案管理
Unit_SetupFeast, //节日配置
Unit_SetupCalling, // 行业配置
Unit_SetupDiploma, //学历配置
Unit_SetupAppeal, //投诉配置
Unit_SetupSMS, //短信息配置
Unit_Setupservtype, //大客户访问设置
Unit_SetupGrade, //大客户登记配置
Unit_about,//关于
Unit_SetupPara,
Unit_UserLog,
Unit_Setupservquality,
Unit_Setupservmode,
Unit_AnalyzeIntegral, //系统参数配置
Unit_Serverlog, //服务日志
Unit_CustIndiServ,
Unit_SystemWake,
Unit_GroupIndiServ,
Unit_QueryGradeOrder,
Unit_ServiceAppeal,
Unit_QueryReckoningM,
Unit_SetupServiceTopic, //个性化服务标题设置
Unit_ManagerOperate, //大客户业务处理
Unit_AnalyzeAppeal, //投诉分析
Unit_Setupindititle, //客户喜好小标题
Unit_SetupIndiTop, //客户喜好大标题
Unit_HelpVersionUpdate, //版本更新说明
Unit_SetupPurManager, //级别权限设置
Unit_QueryActFee, //客户现金余额
Unit_AnalyzeGradeStru, Unit_ImportData, xt_bffa_frm_main,
xt_sjbf_frm_main, xt_sjhf_frm_main, RgtFunctionMaintainFrmMain, RgtRole,
RgtRoleFunction
// Unit_QueryAppeal//个人个性化服务
;
{
*****************************************************************
* *
* 编写作者:黄志文 编写时间:2002-06-28 *
* *
* 函数名称:Pro_OpenForm *
* 内容版本:V1.0.0.0 *
* 函数功能:判断将要打开的窗体是否已经打开,如果打开则显示在 *
* 最前面,否则建立该窗体并打开 *
* 传入参数:pFormClass、pFormName *
* 参数说明: *
* pFormClass 窗体的类 *
* pFormName 窗体名称 (字符串) *
* 返 回 值:无 *
* *
* 基本要求: *
* 注意事项: *
* *
*****************************************************************
}
procedure TFormMain.Pro_OpenForm(FormClass: TFormClass; var fm; AOwner:TComponent);
var
i : integer;
Child : TForm;
begin
try
for i := 0 to Screen.FormCount -1 do
if Screen.Forms[i].ClassType=FormClass then
begin
Child:=Screen.Forms[i];
if Child.WindowState=wsMinimized then
ShowWindow(Child.handle,SW_SHOWNA)
else
ShowWindow(Child.handle,SW_SHOWNA);
if (not Child.Visible) then Child.Visible:=True;
Child.BringToFront;
Child.Setfocus;
Child.Position := poMainFormCenter;
TForm(fm) := Child;
exit;
end;
Child := TForm(FormClass.NewInstance);
TForm(fm) := Child;
Child.Create(AOwner);
except
end;
end;
procedure TFormMain.GP_SetButtonPos(Aname:TWincontrol);//自动设置按钮的位置
var
i,j,num,v_left:integer;
v_button:array of Tbutton;
begin
with Aname do
begin
num:=0;
for i:=0 to ControlCount-1 do
begin
if controls[i] is Tbutton then
begin
inc(num);
end;
end;
if num<>0 then
begin
setlength(v_button,num);
for i:=0 to ControlCount-1 do
begin
num:=0;
if controls[i] is Tbutton then
begin
for j:=0 to ControlCount-1 do
begin
if controls[j] is Tbutton then
begin
if Tbutton(controls[i]).Left>Tbutton(controls[j]).left then
inc(num);
end;
end;
v_button[num]:=Tbutton(controls[i]);
end;
end;
v_left:=v_button[high(v_button)].Left+v_button[high(v_button)].width;
for i:=high(v_button) downto 0 do
begin
if v_button[i].visible=true then
begin
v_button[i].Left:=v_left-v_button[i].width;
v_left:=v_button[i].Left;
end;
end;
end;
end;
end;
procedure TFormMain.InitiateControl(Connected: Boolean);
var
i : Integer;
begin
if not Connected then
begin
StatusBarMain.Panels[1].Text := '';
StatusBarMain.Panels[3].Text := '';
StatusBarMain.Panels[5].Text := '';
StatusBarMain.Panels[7].Text := '';
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -