📄 main.~pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, Menus, ComCtrls, jpeg, Buttons, ToolWin, StdCtrls;
type
TFMMAIN = class(TForm)
MainMenu1 : TMainMenu;
N1 : TMenuItem;
M_B : TMenuItem;
SYSQUIT : TMenuItem;
BMAN : TMenuItem;
SYSSET: TMenuItem;
SYSLOG: TMenuItem;
Timer1: TTimer;
StatusBar: TStatusBar;
BMEM: TMenuItem;
N44: TMenuItem;
N48: TMenuItem;
M_INVT: TMenuItem;
N8: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
ACLEVER: TMenuItem;
AARGOX: TMenuItem;
N64: TMenuItem;
N78: TMenuItem;
N79: TMenuItem;
N80: TMenuItem;
N81: TMenuItem;
N82: TMenuItem;
N83: TMenuItem;
BCST: TMenuItem;
N12: TMenuItem;
M_FMRCINB: TMenuItem;
M_FMRCIN: TMenuItem;
M_FMRCON: TMenuItem;
M_FMRCONB: TMenuItem;
N23: TMenuItem;
W1: TMenuItem;
N26: TMenuItem;
N212311: TMenuItem;
N33: TMenuItem;
N86: TMenuItem;
ToolBar1: TToolBar;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
ToolButton1: TToolButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton9: TSpeedButton;
BTNQUT: TSpeedButton;
Image_BG: TImage;
INVOICE: TMenuItem;
DCOLLECT: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Timer1Timer(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SYSQUITClick(Sender: TObject);
procedure SYSSETClick(Sender: TObject);
procedure BMEMClick(Sender: TObject);
procedure BCSTClick(Sender: TObject);
procedure BMANClick(Sender: TObject);
procedure M_FMRCINClick(Sender: TObject);
procedure M_INVTClick(Sender: TObject);
procedure SYSABOUTClick(Sender: TObject);
procedure N19Click(Sender: TObject);
procedure N67Click(Sender: TObject);
procedure ACLEVERClick(Sender: TObject);
procedure N83Click(Sender: TObject);
procedure M_FMPOSMClick(Sender: TObject);
procedure M_FMPOSNClick(Sender: TObject);
procedure N78Click(Sender: TObject);
procedure N81Click(Sender: TObject);
procedure M_RPPOS3Click(Sender: TObject);
procedure M_RPPOS5Click(Sender: TObject);
procedure M_RPPOS6Click(Sender: TObject);
procedure M_RPPOS7Click(Sender: TObject);
procedure N39Click(Sender: TObject);
procedure N40Click(Sender: TObject);
procedure N211Click(Sender: TObject);
procedure M_FMRCINBClick(Sender: TObject);
procedure INVOICEClick(Sender: TObject);
procedure AARGOXClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SYSLOGClick(Sender: TObject);
procedure BTNQUTClick(Sender: TObject);
procedure N76Click(Sender: TObject);
procedure DCOLLECTClick(Sender: TObject);
procedure BTNRPTClick(Sender: TObject);
private
{ Private declarations }
CREATE_LOGIN : BOOLEAN;
public
{ Public declarations }
PROCEDURE CREATE_LBDS(T_FILENAME:STRING);
end;
var
FMMAIN: TFMMAIN;
implementation
uses INIFILES, FILECTRL, UN_UTL, FM_UTL, DB_UTL, SYSINI,
Mapi,
UNBMAN, UNBMAND, //人事模块
UNBMEM, UNBMEMD, //会员模块
UNBCST, UNBCSTD, //客户模块
UNPOSM, UNPOSMD, //特价模块
UNPOSN, UNPOSND, //组合模块
UNRCIN, UNRCIND, //进货模块
UNRCJN, UNRCJND, //进货退货模块
UNRPTX, //报表主选单模块
RPPOS3F, //会员消费记录明细表
// RPPOS4F, RPPOS4P, //仓库销售计算报表
RPPOS5F, //会员消费计算报表
RPPOS6F, //产品销售计算报表
RPPOS7F, //礼券刷卡明细表
RPTOP1F, // 产品销售排行搒
RPTOP2F, // 会员销售排行搒
RPTOP3F, // 客户销售排行搒
RPLOGF, // 使用者登录表
UNIVTX, //盘点主选单模块
UNCCAW, //模彩抽奖
UNKCLR, //历史资料清除
UNLBDS, //标签排版程序
UNREP1, //报表排版程序
URCOLLECT, // 设置 资料收集器
URCLEVER, // 设置 CLEVER
URARGOX, // 设置 ARGOX
URINVOICE, // 设置 发票机
UNABOUT,
LOGO,
SYSLOG, // LOGIN
UNEMAIL, // 问题响应栏
MAIND,
MAINS,
MAINR, //登录程序
MAINU;
{$R *.DFM}
PROCEDURE TFMMAIN.CREATE_LBDS(T_FILENAME:STRING);
begin
//设置档案 //打印标签
IF FormExists('FRARGOX') =FALSE THEN Application.CreateForm(TFRARGOX, FRARGOX );
IF FormExists('FRCLEVER') =FALSE THEN Application.CreateForm(TFRCLEVER, FRCLEVER );
IF FormExists('FMLBDS') =FALSE THEN Application.CreateForm(TFMLBDS, FMLBDS );
FMLBDS.HIDE;
FMLBDS.QR_NAME := T_FILENAME;
FMLBDS.LOAD_INI;
end;
procedure TFMMAIN.SYSQUITClick(Sender: TObject);
begin
CLOSE;
end;
procedure TFMMAIN.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Timer1.Enabled := False;
FMMAIN.RELEASE;
end;
procedure TFMMAIN.Timer1Timer(Sender: TObject);
begin
IF _USER_ID = '' THEN StatusBar.Panels.Items[0].Text := '目前没有使用者登入';
IF _USER_ID <> '' THEN
StatusBar.Panels.Items[0].Text :=
'使用者 '+_USER_ID+' '+_USER_NAME+' 登入时间:'+DATETIMETOSTR(_USER_LOGINDATETIME);
StatusBar.Panels.Items[1].Text := '系统日期: '+DATETOSTR(DATE)+' 系统时间: '+ TIMETOSTR(NOW);
end;
procedure TFMMAIN.SYSABOUTClick(Sender: TObject);
begin
IF FormExists('FMABOUT' )=FALSE THEN Application.CreateForm(TFMABOUT, FMABOUT );
Form_NORMAL_SHOW(FMABOUT,-1,-1);
end;
procedure TFMMAIN.SYSSETClick(Sender: TObject);
VAR I : REAL;
begin
//检查权限============================================
IF PERMISSION_CHECK(_USER_ID,'SET_MAINS') = FALSE THEN EXIT;
IF FormExists('FMMAINS')=FALSE THEN Application.CreateForm(TFMMAINS, FMMAINS);
Form_NORMAL_SHOWMODAL(FMMAINS,-1,-1);
end;
procedure TFMMAIN.SYSLOGClick(Sender: TObject);
begin
IF FormExists('FMLOG')=FALSE THEN Application.CreateForm(TFMLOG, FMLOG);
Form_NORMAL_SHOWMODAL(FMLOG,-1,-1);
end;
procedure TFMMAIN.BMANClick(Sender: TObject);
begin
//检查权限============================================
IF PERMISSION_CHECK(_USER_ID,'BMAN_OPEN') = FALSE THEN EXIT;
IF FormExists('FMBMAN' )=FALSE THEN Application.CreateForm(TFMBMAN , FMBMAN );
Form_NORMAL_SHOW(FMBMAN,-1,-1);
end;
procedure TFMMAIN.BMEMClick(Sender: TObject);
begin
//检查权限============================================
IF PERMISSION_CHECK(_USER_ID,'BMEM_OPEN') = FALSE THEN EXIT;
IF FormExists('FMBMEM' )=FALSE THEN Application.CreateForm(TFMBMEM , FMBMEM );
Form_NORMAL_SHOW(FMBMEM,-1,-1);
end;
procedure TFMMAIN.FormCreate(Sender: TObject);
VAR T : Tinifile; // LOG FILE
INIFILENAME: STRING;
PATHNAME , T_PATH: STRING;
SERVER_KIND : STRING;
I : INTEGER;
begin
VAR_DECLARE_INI; //设置系统变量
VAR_DECLARE_ODBC; //调用SYSINI单元函数自动设置ODBC,在ODBC中创建需要用到得数据库别名
//INIFILENAME := _SYS_PATH_INI + 'MAIN.INI';
//IF FileExists(INIFILENAME) = FALSE THEN FILE_CREATE(INIFILENAME);
//第一次激活系统
INIFILENAME := _SYS_PATH_INI + 'START.INI';
IF FileExists(INIFILENAME) = FALSE THEN
BEGIN
FILE_CREATE(INIFILENAME);
//检查目录是否存在
T_PATH := ExtractFilePath(Application.EXEName)+ 'DATAIN';
IF NOT DirectoryExists(T_PATH) THEN CreateDir(T_PATH);
T_PATH := ExtractFilePath(Application.EXEName)+ 'DATAOUT';
IF NOT DirectoryExists(T_PATH) THEN CreateDir(T_PATH);
T_PATH := ExtractFilePath(Application.EXEName)+ 'INI';
IF NOT DirectoryExists(T_PATH) THEN CreateDir(T_PATH);
T_PATH := ExtractFilePath(Application.EXEName)+ 'LOG';
IF NOT DirectoryExists(T_PATH) THEN CreateDir(T_PATH);
END;
TRY
FMMAIND.Database.Connected := TRUE; // 连接数据库
EXCEPT
SHOWMESSAGE('数据库无法连接, 请设置好数据库再重新激活!');
CLOSE;
END;
//资料设置 //系统默认值 ============================================
_SYS_CFG_DBKIND := UNSET_READ_SIN ('_SYS_CFG_DBKIND' ); // 数据库种类
_SYS_CFG_BARPRN := UNSET_READ_SIN ('_SYS_CFG_BARPRN' ); // 条形码机,预设机型
//日期值(ACCESS和SQL SEVER替换)
IF (_SYS_CFG_DBKIND <> 1) THEN
BEGIN
_DBKIND := 'ACCESS'; // SERVER KIND (ACCESS和SQL SEVER替换)
_DT := '#';
END ELSE BEGIN
_DBKIND := 'SQLSERVER'; // SERVER KIND (ACCESS和SQL SEVER替换)
_DT := '''';
END;
//使用者资料
_USER_CORP_RBPST := UNSET_READ_SME ('_SYS_CORP_RBPST' );
_USER_CORP_NAME := UNSET_READ_SME ('_SYS_CORP_NAME' );
_USER_CORP_NO := UNSET_READ_SME ('_SYS_CORP_NO' );
_USER_CORP_TEL := UNSET_READ_SME ('_SYS_CORP_TEL' );
_USER_CORP_FAX := UNSET_READ_SME ('_SYS_CORP_FAX' );
_USER_CORP_ADDR := UNSET_READ_SME ('_SYS_CORP_ADDR' );
_USER_CORP_EMAIL := UNSET_READ_SME ('_SYS_CORP_EMAIL' );
_USER_CORP_WWW := UNSET_READ_SME ('_SYS_CORP_WWW' );
//检查试用期//==========================================================
IF IsCPUID_Available = FALSE THEN BEGIN SHOWMESSAGE('对不起, 此软件不适用于您的计算机!'); CLOSE; EXIT; END;
IF REGISTER_KEY_CHECK('\Software\WEB')= FALSE THEN REGISTER_POS_CREATE('\Software\WEB');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -