D10DJkaimengwenshang/项目代码/wenshangkm/G03贸易布匹检验/U_iniParam.pas
DESKTOP-E401PHE\Administrator 74d01e92e1 ~
2025-09-27 14:24:10 +08:00

166 lines
6.5 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_iniParam;
interface
uses
IniFiles, SysUtils;
var
Filename: string; //文件名
iParam2: integer;
bParam1: Boolean;
bParam2: Boolean;
SCXFlag: string; //生产线 根据此标志获取卷条码前缀 不能包含字母 1,2
SCXCount: string; //机台个数
PortNoStr: string; //端口号
DllName: string; //端口Dll文件
DZCDYDllName: string; //电子秤调用Dll文件
IsDZCDYDll: string; //启用电子秤调用Dll文件
MBDYDllName: string; // 码表调用Dll文件
IsMBDYDll: string; // 启用码表调用Dll文件
IsMBDYDllUnit: string; // 启用码表调用Dll文件单位
LabQty: string; // 标签份数
FMinLen, FMaxLen, FMinWeight, FMaxWeight: string;
FMPlace, FYPlace, FKgPlace: string;
gPresentNumFlag:integer; //0不变1减去
gMachOperators:string;//机台操作员
fCanInputFs:String;
gDefaultLableFile:String;
gDefaultPackLableFile:String;
gzdykey1,gZdyKey2,gZdyKey3:string ;
gBcSpeedSize:Integer;
gRowSpeedNumber:Integer;
gScanBarcodeMaxLen:integer; //扫描条码最大位数
gAutoPost:boolean; //清0自动提交
gAutoCheckBadNum:boolean; //自动选择
gMbLenMiToMa:boolean; //码表过来的数据强制米转码
gZhxsReadonly:boolean; //转换系数只读
gTareReadonly:boolean; //只读
gPrintMdAutoOut:boolean; //打印码单自动出库
gAutoPostClear:boolean;//码表提交后清零
gEnterAutoPost:boolean;//启用回车提交
function IsINIFile(): Boolean; //判断InI配置文件是否存在
procedure ReadINIFile();
procedure WriteINIFile();
implementation
///////////////////////////////////////////////////////////////////
//读取ini文件设置参数
//参数:
////////////////////////////////////////////////////////////////////
procedure ReadINIFile();
var
programIni: Tinifile; //配置文件名
begin
FileName := ExtractFilePath(Paramstr(0)) + 'TradeInspFile.INI';
programIni := Tinifile.create(FileName);
SCXFlag := programIni.ReadString('生产车间配置', '卷条码机台标志', '1');
SCXCount := programIni.ReadString('生产车间配置', '机台个数', '1');
DZCDYDllName := programIni.ReadString('生产车间配置', '电子秤调用Dll文件', '');
IsDZCDYDll := programIni.ReadString('生产车间配置', '启用电子秤Dll文件', '1');
MBDYDllName := programIni.ReadString('生产车间配置', '码表调用Dll文件', '');
IsMBDYDll := programIni.ReadString('生产车间配置', '启用码表Dll文件', '1');
IsMBDYDllUnit := programIni.ReadString('生产车间配置', '启用码表单位', '1');
LabQty := programIni.ReadString('生产车间配置', '标签份数', '2');
FMinLen := programIni.ReadString('生产车间配置', '米数下限', '0');
FMaxLen := programIni.ReadString('生产车间配置', '米数上限', '100');
FMinWeight := programIni.ReadString('生产车间配置', '重量下限', '0');
FMaxWeight := programIni.ReadString('生产车间配置', '重量上限', '50');
FMPlace := programIni.ReadString('生产车间配置', '米数小数位', '1');
FYPlace := programIni.ReadString('生产车间配置', '码数小数位', '0');
FKgPlace := programIni.ReadString('生产车间配置', '重量小数位', '1');
gZdyKey1 := programIni.ReadString('生产车间配置', '自定义字母键1', '');
gZdyKey2 := programIni.ReadString('生产车间配置', '自定义字母键2', '');
//gZdyKey3 := programIni.ReadString('生产车间配置', '自定义字母键3', '');
gBcSpeedSize:= programIni.ReadInteger('生产车间配置', '病疵按钮大小', 60);
gRowSpeedNumber := programIni.ReadInteger('生产车间配置', '每行病疵按钮个数', 5);
gPresentNumFlag:=programIni.ReadInteger('生产车间配置', '赠送数计算规则', 0);
gScanBarcodeMaxLen:=programIni.ReadInteger('生产车间配置', '扫描条码位数', 0);
fCanInputFs:= programIni.ReadString('生产车间配置', '输入负数', '');
gMachOperators:=programIni.ReadString('生产车间配置', '机台操作员', '');
gDefaultLableFile:=programIni.ReadString('生产车间配置', '默认标签文件', '');
gDefaultPackLableFile:=programIni.ReadString('生产车间配置', '默认包标签文件', '');
gAutoPost:= programIni.ReadBool('生产车间配置', '码表清零自动提交', false);
gAutoCheckBadNum:=programIni.ReadBool('生产车间配置', '自动选择长度', false);
gMbLenMiToMa:= programIni.ReadBool('生产车间配置', '码表米数强转码数', false);
gZhxsReadonly:= programIni.ReadBool('生产车间配置', '转换系数禁止输入', false);
gTareReadonly:= programIni.ReadBool('生产车间配置', '皮重禁止输入', false);
gPrintMdAutoOut:=programIni.ReadBool('生产车间配置', '打印码单自动出库', false);
gAutoPostClear:=programIni.ReadBool('生产车间配置', '码表提交后清零', false);
gEnterAutoPost:=programIni.ReadBool('生产车间配置', '长度重量回车自动提交', false);
programIni.Free;
end;
//////////////////////////////////////////////////////////////////
//写设置信息到INI文件
//参数
//////////////////////////////////////////////////////////////////
procedure WriteINIFile();
var
programIni: Tinifile; //配置文件名
begin
if StrToIntDef(FMaxLen,0)=0 then FMaxLen:='100';
if StrToIntDef(FMaxWeight,0)=0 then FMaxWeight:='50';
FileName := ExtractFilePath(Paramstr(0)) + 'TradeInspFile.INI';
programIni := Tinifile.create(FileName);
programIni.WriteString('生产车间配置', '卷条码机台标志', SCXFlag);
programIni.WriteString('生产车间配置', '机台个数', SCXCount);
programIni.WriteString('生产车间配置', '端口号', PortNoStr);
programIni.WriteString('生产车间配置', '电子秤调用Dll文件', DZCDYDllName);
programIni.WriteString('生产车间配置', '启用电子秤Dll文件', IsDZCDYDll);
programIni.WriteString('生产车间配置', '码表调用Dll文件', MBDYDllName);
programIni.WriteString('生产车间配置', '启用码表Dll文件', IsMBDYDll);
programIni.WriteString('生产车间配置', '启用码表单位', IsMBDYDllUnit);
programIni.WriteString('生产车间配置', '标签份数', LabQty);
programIni.WriteString('生产车间配置', '米数下限', FMinLen);
programIni.WriteString('生产车间配置', '米数上限', FMaxLen);
programIni.WriteString('生产车间配置', '重量下限', FMinWeight);
programIni.WriteString('生产车间配置', '重量上限', FMaxWeight);
programIni.WriteString('生产车间配置', '米数小数位', FMPlace);
programIni.WriteString('生产车间配置', '码数小数位', FYPlace);
programIni.WriteString('生产车间配置', '重量小数位', FKgPlace);
programIni.ReadString('生产车间配置', '自定义字母键1',gZdyKey1 );
programIni.ReadString('生产车间配置', '自定义字母键2', gZdyKey2); //不知道这里为什么要写readstring可能写错了
programIni.WriteInteger('生产车间配置', '赠送数计算规则', gPresentNumFlag);
programIni.Free;
end;
//////////////////////////////////////////////////////////////////
//判断InI文件是否存在
//////////////////////////////////////////////////////////////////
function IsINIFile(): Boolean;
begin
FileName := ExtractFilePath(Paramstr(0)) + 'TradeInspFile.INI';
if FileExists(FileName) then
Result := true
else
Result := false;
end;
end.