📄 craftcheck.pas
字号:
unit CraftCheck;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BasicFind, Menus, ActnList, ImgList, StdCtrls, RzLstBox,
RzBckgnd, RzButton, RzEdit, RzLabel, Mask, RzRadChk, RzPanel, ExtCtrls,
Grids, DBGridEh, RzTabs, RzDBEdit, TeEngine, Series, TeeProcs, Chart,
DBChart, DB, DBCtrls, RzDBCmbo, RzCmboBx, ppDB, ppBands, ppCache,
ppClass, ppProd, ppReport, ppRelatv, ppDBPipe, ppComm, ppEndUsr, RzDBLbl,
RzStatus, RzDBStat, RzGrids;
type
TfrmCraftCheck = class(TfrmBasicFind)
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
RzPanel8: TRzPanel;
Splitter1: TSplitter;
RzPanel9: TRzPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
RzSeparator2: TRzSeparator;
RzSeparator4: TRzSeparator;
RzSeparator5: TRzSeparator;
RzSeparator6: TRzSeparator;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
RzSeparator7: TRzSeparator;
RzSeparator8: TRzSeparator;
RzSeparator9: TRzSeparator;
RzSeparator10: TRzSeparator;
RzSeparator11: TRzSeparator;
RzSeparator12: TRzSeparator;
RzSeparator13: TRzSeparator;
RzSeparator14: TRzSeparator;
Shape1: TShape;
Bevel1: TBevel;
sgPrice: TRzStringGrid;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
RzSeparator15: TRzSeparator;
Label26: TLabel;
Label27: TLabel;
Shape2: TShape;
lbPTPrice: TLabel;
lbTSPrice: TLabel;
RzSeparator1: TRzSeparator;
RzSeparator16: TRzSeparator;
RzSeparator17: TRzSeparator;
lbHcljg1: TLabel;
lbHcljg2: TLabel;
lbHcljg3: TLabel;
lbHcljg4: TLabel;
lbGG: TLabel;
lbZZ: TLabel;
lbCpfk: TLabel;
lbSxfk: TLabel;
lbZwm: TLabel;
RzSeparator18: TRzSeparator;
RzLabel9: TRzLabel;
lbCpmc: TRzLabel;
lbZjl: TLabel;
lbWxys: TLabel;
lbSxzl: TLabel;
lbCpzl: TLabel;
lbZsl: TLabel;
lbHclsl: TLabel;
lbShl: TLabel;
lbWc: TLabel;
lbWs: TLabel;
Label42: TLabel;
Label43: TLabel;
lbBz: TLabel;
lbHcl1: TLabel;
lbHcl2: TLabel;
lbHcl3: TLabel;
lbHcl4: TLabel;
dbgridList: TDBGridEh;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
edtFk1: TRzEdit;
edtBcgf: TRzEdit;
edtQtfy: TRzEdit;
Label31: TLabel;
btnOK: TRzBitBtn;
lbFkfw: TLabel;
lbBcgf: TLabel;
lbQtfy: TLabel;
edtFk2: TRzEdit;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure actExcelFindExecute(Sender: TObject);
procedure dbgridListTitleBtnClick(Sender: TObject; ACol: Integer; Column: TColumnEh);
procedure dbgridListDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
procedure sgPriceDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
procedure btnOKClick(Sender: TObject);
private
{ Private declarations }
procedure doMyOpen(Sender: TObject; var _EventNote, _State: String); override;
procedure doAfterScroll(DataSet: TDataSet);
procedure ShowPrice(DataSet: TDataSet; FK_Test: Double); //显示价格
procedure ClearShow; //清理界面显示
procedure ButtonState(_IsActive, _IsEmpty, _IsModify, _IsCheck :Boolean); override;
public
{ Public declarations }
end;
var
frmCraftCheck: TfrmCraftCheck;
implementation
uses dm32, MyPublic, dmc32;
{$R *.dfm}
procedure TfrmCraftCheck.ClearShow;
var i: integer;
begin
//清理界面
for i:=0 to self.ComponentCount-1 do
if Self.Components[i] is TLabel then
if Pos('Label', Self.Components[i].Name) = 0 then
(Self.Components[i] as TLabel).Caption := '';
sgPrice.RowCount := 2;
for i:= 1 to sgPrice.ColCount -1 do
sgPrice.Cells[i, 1] := '';
end;
procedure TfrmCraftCheck.actExcelFindExecute(Sender: TObject);
begin
RzEdit1.SetFocus;
end;
procedure TfrmCraftCheck.FormCreate(Sender: TObject);
begin
inherited;
FindFields[1] := 'CPMC LIKE ''%'+REPLACEKEY+'%''';
FindFields[2] := 'CPYS='''+REPLACEKEY+'''';
FindFields[3] := 'CPZZ='''+REPLACEKEY+'''';
FindFields[4] := 'BZ LIKE ''%'+REPLACEKEY+'%''';
FindFields[5] := 'SZBS='''+REPLACEKEY+'''';
FindFields[6] := 'SZYM='''+REPLACEKEY+'''';
FindFields[7] := 'KH='+REPLACEKEY;
FindFields[8] := 'CPGG LIKE ''%'+REPLACEKEY+'%''';
FindFields[13] :='SRRQ';
FindSQL[2] := 'SELECT CODE +'' = ''+ NAME AS LISTFIELD FROM CODER WHERE ISOK ='+ IntToStr(SHBZ_OK) +' AND FZLX=''BASE_YSMC''';
FindSQL[3] := 'SELECT CODE +'' = ''+ NAME AS LISTFIELD FROM CODER WHERE ISOK ='+ IntToStr(SHBZ_OK) +' AND FZLX=''BASE_CPZZ''';
UseDataset := dm.qryCraft;
with dm.qryCraft do
begin
AfterScroll := doAfterScroll;
end;
//打开数据集
dmc.OpenCpys(True);
dmc.OpenCpzz(True);
dmc.OpenHcllx(True);
//处理界面
ClearShow;
with sgPrice do
begin
Cells[1,0] := '经纬类型';
Cells[2,0] := '原料名称';
Cells[3,0] := '头份';
Cells[4,0] := '损耗';
Cells[5,0] := '百码耗纱';
Cells[6,0] := '纱价';
Cells[7,0] := '百码价格';
end;
dm.qryCraft.Close;
dm.qryCraftXB.Close;
end;
procedure TfrmCraftCheck.dbgridListTitleBtnClick(Sender: TObject; ACol: Integer;
Column: TColumnEh);
begin
DBGridTitleBtnClick(Sender, ACol, Column);
end;
procedure TfrmCraftCheck.ButtonState(_IsActive, _IsEmpty, _IsModify, _IsCheck: Boolean);
begin
if _IsActive and not _IsEmpty then
_IsCheck := UseDataSet.FieldByName('SHBZ').AsInteger = SHBZ_OK;
inherited;
dbgridList.Enabled := not actSave.Enabled;
actOther1.Enabled := _IsActive and not _IsEmpty and not _IsModify;
//TabSheet1.Enabled := not _IsCheck;
end;
procedure TfrmCraftCheck.doMyOpen(Sender: TObject; var _EventNote, _State: String);
var ls_SQL, ls_Err, ls_where: String;
begin
ls_where := WhereSQL;
if ls_where = '' then Exit;
_EventNote := '打开工艺资料:'+ls_where;
_State := EV_OK;
ls_SQL := 'SELECT * FROM CRAFT WHERE '+ ls_where;
ls_Err := OpenDataSet(dm.qryCraft, ls_SQL);
if ls_err <> '' then
begin
ShowMess('系统错误','打开工艺资料失败,具体为:'+ls_Err, MB_ICONERROR);
_State := EV_FAIL;
end;
edtFk1.SetFocus;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -