📄 constb.pas
字号:
unit constb;
interface
uses Qrctrls, DB, DBTables, classes, messages, controls;
var
company: string;
logincd, loginnm, loginpass, loginrole: string;
loginflg, schflg, schpnoflg, schscgxflg: boolean;
kfjz, pno, scgx: string;
year1, month1: integer;
scprice: double;
function editpass(passstr: string): string;
function searchfield(tablenm, fieldnm, fieldnm1, fieldtxt: string): string;
//检查字段
function insertcombobox(tablenm, fieldnm: string): tstrings;
//combobox中加入items
function checkbobox(boxedit: string; boxstr: tstrings): boolean; //检查combobox
function searchfield1(tablenm, fieldnm, fieldtxt: string): boolean; //检查字段
function searchcombobox(tablenm, fieldnm, fieldnm1, fieldtxt: string): tstrings;
//combobox中加入items
function searchfieldgx(tablenm, fieldnm, fieldnm1,fieldnm2, fieldtxt,fieldtxt1: string): string;
function searchpno(fieldtxt:string):boolean; //检查批号
function inscprice(fieldtxt,fieldtxt1:string):double; //录入工序单价
implementation
function searchfield(tablenm, fieldnm, fieldnm1, fieldtxt: string): string;
//检查字段
var
schqy: tquery;
sqlstr: string;
begin
if fieldtxt <> '' then
begin
sqlstr := 'select ' + fieldnm1 + ' from ' + tablenm + ' where ' + fieldnm +
'=''' + fieldtxt + ''' or ';
sqlstr := sqlstr + fieldnm1 + ' like ''' + fieldtxt + '%''';
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
//schqy.ParamByName('staffid').asstring:=staffid;
schqy.Open;
if schqy.RecordCount > 0 then
result := schqy.fieldbyname(fieldnm1).AsString
else
result := '';
schqy.Free;
end
else
result := '';
end;
function searchfieldgx(tablenm, fieldnm, fieldnm1,fieldnm2, fieldtxt,fieldtxt1:string): string;
//检查字段
var
schqy: tquery;
sqlstr: string;
begin
if fieldtxt <> '' then
begin
// 'scgx', 'scgxno', 'scgx', 'dept', inmxqy.FieldByName('scgx').asstring, combobox3.text
sqlstr := 'select ' + fieldnm1 + ' from ' + tablenm + ' where (' + fieldnm +
'=''' + fieldtxt + ''' or ';
sqlstr := sqlstr + fieldnm1 + '=''' + fieldtxt+ ''')';
sqlstr := sqlstr + ' and '+fieldnm2 + ' =''' + fieldtxt1 + '''';
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
//schqy.ParamByName('staffid').asstring:=staffid;
schqy.Open;
if schqy.RecordCount > 0 then
result := schqy.fieldbyname(fieldnm1).AsString
else
result := '';
schqy.Free;
end
else
result := '';
end;
function inscprice(fieldtxt,fieldtxt1:string):double; //录入工序单价
var
schqy: tquery;
sqlstr: string;
begin
sqlstr := 'select scprice from scgx where scgx'+
'=''' + fieldtxt + ''' and dept='''+fieldtxt1+'''';
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
//schqy.ParamByName('staffid').asstring:=staffid;
//schqy.SQL.SaveToFile('c:\ff.txt');
schqy.Open;
result := schqy.FieldByName('scprice').AsFloat;
schqy.Free;
end;
function searchfield1(tablenm, fieldnm, fieldtxt: string): boolean; //检查字段1
var
schqy: tquery;
sqlstr: string;
begin
sqlstr := 'select ' + fieldnm + ' from ' + tablenm + ' where ' + fieldnm +
'=''' + fieldtxt + '''';
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
//schqy.ParamByName('staffid').asstring:=staffid;
schqy.Open;
result := boolean(schqy.RecordCount);
schqy.Free;
end;
function searchpno(fieldtxt:string):boolean; //检查批号
var
schqy: tquery;
sqlstr: string;
begin
sqlstr := 'select finishflg from scpno where pno=''' + fieldtxt + '''' ;
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
//schqy.ParamByName('staffid').asstring:=staffid;
schqy.Open;
result := schqy.fieldbyname('finishflg').AsBoolean;
schqy.Free;
end;
function insertcombobox(tablenm, fieldnm: string): tstrings;
//combobox中加入items
var
schqy: tquery;
sqlstr: string;
fieldtstr: tstrings;
begin
fieldtstr := tstringlist.Create;
try
sqlstr := 'select ' + fieldnm + ' from ' + tablenm + ' group by ' + fieldnm;
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
schqy.Open;
schqy.First;
while not schqy.eof do
begin
fieldtstr.Add(schqy.fields[0].AsString);
schqy.Next;
end;
result := fieldtstr;
schqy.Free;
finally
//fieldtstr.Free;
end;
end;
function searchcombobox(tablenm, fieldnm, fieldnm1, fieldtxt: string): tstrings;
//combobox中加入items
var
schqy: tquery;
sqlstr: string;
fieldtstr: tstrings;
begin
fieldtstr := tstringlist.Create;
try
sqlstr := 'select ' + fieldnm1 + ' from ' + tablenm + ' where ' + fieldnm +
'=:fieldtxt';
;
schqy := tquery.Create(nil);
schqy.DatabaseName := 're_data';
schqy.SQL.clear;
schqy.SQL.Add(sqlstr);
schqy.parambyname('fieldtxt').AsString := fieldtxt;
schqy.Open;
schqy.First;
while not schqy.eof do
begin
fieldtstr.Add(schqy.fields[0].AsString);
schqy.Next;
end;
result := fieldtstr;
schqy.Free;
finally
//fieldtstr.Free;
end;
end;
function checkbobox(boxedit: string; boxstr: tstrings): boolean; //检查combobox
var
i, len: integer;
begin
result := false;
len := boxstr.Count;
for i := 0 to len - 1 do
begin
if boxedit = boxstr[i] then
begin
result := true;
break;
end
end;
end;
function editpass(passstr: string): string;
var
i, plen: integer;
char1: char;
begin
result := '';
plen := length(passstr);
for i := 1 to plen do
begin
char1 := passstr[i];
asm
push ax
push bx
mov al,char1
mov ah,al
mov bl,al
mov bh,al
and al,$03
and ah,$0c
and bl,$c0
and bh,$30
shl al,4
shr bh,4
or ah,bh
or ah,al
or ah,bl
mov char1,ah
pop bx
pop ax
end;
result := result + char1;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -