D7gmYongjin/发货申请(ShipmentRequest.dll)/U_FHSQList.pas
DESKTOP-E401PHE\Administrator 8452f471f5 新建3-04
2026-03-04 09:51:44 +08:00

913 lines
25 KiB
ObjectPascal
Raw Permalink 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_FHSQList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System,
RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxPC, cxButtonEdit,
RM_E_llPDF, cxDropDownEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters,
cxNavigator, dxBarBuiltInMenu, dxSkinsCore, dxSkinBlack, dxSkinBlue,
dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom,
dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle,
dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary,
dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin,
dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins,
dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,
dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,
dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin,
dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine,
dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter;
type
TfrmFHSQList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
TBDel: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
TBExport: TToolButton;
v1OrdDate: TcxGridDBColumn;
v1OrdPerson1: TcxGridDBColumn;
Order_Main: TClientDataSet;
RMDBDataSet1: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
v1CustomerNoName: TcxGridDBColumn;
ToolButton1: TToolButton;
ADOQueryPrint: TADOQuery;
CDS_Print: TClientDataSet;
v1Column4: TcxGridDBColumn;
Panel1: TPanel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label9: TLabel;
Label12: TLabel;
Label13: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CustomerNoName: TEdit;
ConPerson1: TEdit;
MPRTCodeName: TEdit;
ConNo: TEdit;
MPRTKZ: TEdit;
MPRTMF: TEdit;
cxTabControl1: TcxTabControl;
tchk: TToolButton;
Tnochk: TToolButton;
cxSplitter1: TcxSplitter;
ADOQuerySub: TADOQuery;
DataSource2: TDataSource;
v1Column8: TcxGridDBColumn;
Label2: TLabel;
//RMllPDFExport1: TRMllPDFExport;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
CDS_Note: TClientDataSet;
v2Column2: TcxGridDBColumn;
RM1: TRMGridReport;
v1Column3: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
Label7: TLabel;
Label10: TLabel;
PrtCode: TEdit;
PrtCodeName: TEdit;
v1Column15: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
Label3: TLabel;
SQBatchNoHZ: TEdit;
Label6: TLabel;
SQGCCode: TEdit;
v1Column22: TcxGridDBColumn;
v1Column23: TcxGridDBColumn;
v1Column26: TcxGridDBColumn;
ToolButton2: TToolButton;
Panel5: TPanel;
Label28: TLabel;
Button5: TButton;
Button6: TButton;
DateTimePicker1: TDateTimePicker;
Label11: TLabel;
lblFSID: TLabel;
v1Column27: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
ToolButton3: TToolButton;
Panel2: TPanel;
cxGrid3: TcxGrid;
Tv33: TcxGridDBTableView;
cxGridDBColumn2: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
cxGrid4: TcxGrid;
Tv44: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridLevel3: TcxGridLevel;
ClientDataSet33: TClientDataSet;
DataSource33: TDataSource;
ClientDataSet44: TClientDataSet;
DataSource44: TDataSource;
ToolBar2: TToolBar;
ToolButton16: TToolButton;
Panel3: TPanel;
Label16: TLabel;
Label17: TLabel;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
cbbdate: TComboBox;
//RMllPDFExport1: TRMllPDFExport;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure tchkClick(Sender: TObject);
procedure TnochkClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure ToolButton2Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure Tv33DblClick(Sender: TObject);
procedure Tv44DblClick(Sender: TObject);
procedure ToolButton16Click(Sender: TObject);
private
procedure InitGrid();
procedure InitSubGrid();
procedure InitForm();
procedure SetStatus();
function DelData(): Boolean;
{ Private declarations }
public
FFInt: Integer;
canshu1: string;
{ Public declarations }
end;
//var
//frmContractListNX: TfrmContractListNX;
implementation
uses
U_DataLink, U_FHSQInPut, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmFHSQList.SetStatus();
begin
tchk.Visible := False;
Tnochk.Visible := False;
// if canshu1 = '<27><><EFBFBD><EFBFBD>' then
// begin
// case cxTabControl1.TabIndex of
// 0:
// begin
// tchk.Visible := true;
//
// end;
// 1:
// begin
// Tnochk.Visible := true;
// end;
// 2:
// begin
//
// end;
// end;
// end
// else if canshu1 = '<27><>Ȩ<EFBFBD><C8A8>' then
// begin
// case cxTabControl1.TabIndex of
// 0:
// begin
// tchk.Visible := true;
//
// end;
// 1:
// begin
// Tnochk.Visible := true;
// end;
// 2:
// begin
//
// end;
// end;
// end
// else
// begin
// end;
if Trim(canshu1) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
tchk.Visible := True;
Tnochk.Visible := True;
cxTabControl1.Visible := True;
end;
end;
procedure TfrmFHSQList.FormDestroy(Sender: TObject);
begin
//frmFHSQList:=nil;
end;
procedure TfrmFHSQList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmFHSQList.FormCreate(Sender: TObject);
begin
cxgrid1.Align := alClient;
end;
procedure TfrmFHSQList.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmFHSQList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
Sql.Add(' select A.* ');
sql.Add(' from FHSQ_Main A');
sql.Add(' where 1=1');
if cbbdate.Text = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
sql.Add(' and SQDate>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and SQDate<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
end
else
begin
sql.Add(' and fhDate>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and fhDate<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
end;
if cxTabControl1.TabIndex = 0 then
begin
SQL.Add(' and isnull(A.Chker,'''')='''' ');
end
else if cxTabControl1.TabIndex = 1 then
begin
SQL.Add(' and isnull(A.Chker,'''')<>'''' ');
end;
if Trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if Trim(canshu1) <> '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
sql.Add(' and isnull(A.Filler,'''')=''' + Trim(DName) + '''');
end;
end;
if Trim(canshu1) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
sql.Add(' and isnull(A.CRType,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
end;
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmFHSQList.InitForm();
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 60;
InitGrid();
end;
procedure TfrmFHSQList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
procedure TfrmFHSQList.TBEditClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
//if cxTabControl1.TabIndex <> 0 then
//Exit;
if Trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select * from FHSQ_Main ');
sql.add(' where ChkStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' and FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
exit;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from FHSQ_Main');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('YSID').AsString) <> '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˿<CBBF><EEB2BB><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
frmFHSQInPut := TfrmFHSQInPut.Create(Application);
with frmFHSQInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('FSID').AsString);
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmFHSQInPut.Free;
end;
end;
procedure TfrmFHSQList.TBDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
// if cxTabControl1.TabIndex <> 0 then
// Exit;
if canshu1 <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select * from FHSQ_Main ');
sql.add(' where ChkStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' and FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select * from CK_PBCP_CR where CRFlag=''<27><><EFBFBD><EFBFBD>''');
sql.add(' and CKOrdNo=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27>ѷ<EFBFBD><D1B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from FHSQ_Main');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('YSID').AsString) <> '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˿<CBBF><EEB2BB>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
Exit;
end;
if ADOQueryTemp.FieldByName('FHPSHZ').AsInteger > 0 then
begin
Application.MessageBox('<27>ѷ<EFBFBD><D1B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
if DelData() then
begin
Order_Main.Delete;
InitSubGrid();
end;
end;
function TfrmFHSQList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Sub where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Main where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
ADOQueryCmd.Connection.RollbackTrans;
Result := False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
end;
procedure TfrmFHSQList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
SelExportData(Tv1, ADOQueryMain, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>');
end;
procedure TfrmFHSQList.TBPrintClick(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if Order_Main.IsEmpty then
Exit;
// if cxTabControl1.TabIndex <> 1 then
// Exit;
if Trim(Order_Main.fieldbyname('CRType').AsString) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
if Trim(Order_Main.fieldbyname('Chker').AsString) = '' then
begin
Application.MessageBox(<><CEB4><EFBFBD>˲<EFBFBD><CBB2>ܴ<EFBFBD>ӡ!', '<27><>ʾ', 0);
Exit;
end;
end;
ExportFtErpFile('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뵥.rmf', ADOQueryTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뵥.rmf';
with ADOQueryPrint do
begin
Close;
sql.Clear;
Sql.Add(' select A.*,B.* ');
sql.Add(' from FHSQ_Main A left join FHSQ_Sub B on A.FSId=B.FSId ');
sql.Add(' where A.FSID=' + quotedstr(Trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if FileExists(fPrintFile) then
begin
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(Order_Main.fieldbyname('FSID').AsString);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
RMVariables['QRBARCODE'] := fImagePath;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
procedure TfrmFHSQList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
TBFind.Click;
InitSubGrid();
end;
procedure TfrmFHSQList.TBAddClick(Sender: TObject);
var
maxno: string;
begin
try
frmFHSQInPut := TfrmFHSQInPut.Create(Application);
with frmFHSQInPut do
begin
PState := 0;
FMainId := '';
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmFHSQInPut.Free;
end;
end;
procedure TfrmFHSQList.FormShow(Sender: TObject);
begin
InitForm();
SetStatus();
end;
procedure TfrmFHSQList.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmFHSQList.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmFHSQList.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmFHSQInPut := TfrmFHSQInPut.Create(Application);
with frmFHSQInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('FSID').AsString);
ToolBar2.Visible := False;
TBSave.Visible := False;
ScrollBox1.Enabled := False;
Tv1.OptionsSelection.CellSelect := False;
if ShowModal = 1 then
begin
end;
end;
finally
frmFHSQInPut.Free;
end;
end;
procedure TfrmFHSQList.CustomerNoNameChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
procedure TfrmFHSQList.tchkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
if cxTabControl1.TabIndex <> 0 then
exit;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main SET Chker=''' + Trim(DName) + ''',ChkTime=getdate(),ChkStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
execsql;
end;
Order_Main.Delete;
InitSubGrid();
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmFHSQList.InitSubGrid();
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
sql.Add('select * from FHSQ_Sub A where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''')
else
sql.Add('select * from FHSQ_Sub A where 1=2');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmFHSQList.TnochkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
if cxTabControl1.TabIndex <> 1 then
exit;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from FHSQ_Main');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('HDPerson').AsString) <> '' then
begin
Application.MessageBox('<27>Ѻ˶Բ<CBB6><D4B2>ܳ<EFBFBD><DCB3><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main SET Chker=Null,ChkTime=Null,ChkStatus=Null ');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
execsql;
end;
Order_Main.Delete;
InitSubGrid();
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmFHSQList.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
SetStatus();
end;
procedure TfrmFHSQList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
begin
sql.Add('select A.*,B.BatchNoHZ,C.GCCode from FHSQ_Sub A ');
sql.Add(' inner join CLoth_Sub B on A.SubId=B.SubId');
sql.Add(' inner join CLoth_Main C on B.MainId=C.MainId');
sql.Add(' where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
end
else
begin
sql.Add('select A.*,B.BatchNoHZ,C.GCCode from FHSQ_Sub A ');
sql.Add(' inner join CLoth_Sub B on A.SubId=B.SubId');
sql.Add(' inner join CLoth_Main C on B.MainId=C.MainId');
sql.Add(' where 1=2');
end;
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmFHSQList.ToolButton2Click(Sender: TObject);
begin
if Trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from FHSQ_Main');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('YSID').AsString) <> '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˿<CBBF><EEB2BB><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
lblFSID.Caption := Order_Main.fieldbyname('FSID').AsString;
DateTimePicker1.DateTime := SGetServerDate10(ADOQueryTemp);
Panel5.Left := (self.Width - Panel5.Width) div 2;
Panel5.Visible := true;
end;
procedure TfrmFHSQList.Button6Click(Sender: TObject);
begin
Panel5.Visible := false;
end;
procedure TfrmFHSQList.Button5Click(Sender: TObject);
begin
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main SET fhDate=' + QuotedStr(Trim(FormatDateTime('yyyy-MM-dd', DateTimePicker1.Date))));
sql.Add('where FSID=' + quotedstr(trim(lblFSID.Caption)));
execsql;
end;
InitGrid();
Order_Main.Locate('FSID', lblFSID.Caption, []);
Panel5.Visible := false;
application.MessageBox('<27>޸ijɹ<C4B3><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
application.MessageBox('<27>޸<EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmFHSQList.ToolButton3Click(Sender: TObject);
begin
Panel2.Visible := True;
Panel2.Refresh;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select BatchNo=A.APBatchNo,B.ConNo from JYCon_Sub_AnPai A inner join Cloth_Main B on A.MainId=B.MainId');
sql.Add(' where B.ConNO=''' + Trim(Order_Main.fieldbyname('ConNO').AsString) + '''');
sql.Add(' and not exists(select * from PB_BatchNO C where C.ConNO=B.ConNo and C.BatchNo=A.APBatchNo)');
sql.Add(' Group by A.APBatchNo,B.ConNo');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet33);
SInitCDSData20(ADOQueryTemp, ClientDataSet33);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select ConNo,BatchNo from PB_BatchNO A ');
sql.Add(' where ConNO=''' + Trim(Order_Main.fieldbyname('ConNO').AsString) + '''');
sql.Add(' Group by BatchNo,ConNo');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet44);
SInitCDSData20(ADOQueryTemp, ClientDataSet44);
end;
procedure TfrmFHSQList.Tv33DblClick(Sender: TObject);
begin
if ClientDataSet33.IsEmpty then
Exit;
//if Application.MessageBox('ȷ<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into PB_BatchNo');
sql.Add('select ''' + Trim(ClientDataSet33.fieldbyname('ConNo').AsString) + ''',');
sql.Add('''' + Trim(ClientDataSet33.fieldbyname('BatchNo').AsString) + '''');
ExecSQL;
end;
with ClientDataSet44 do
begin
Append;
FieldByName('ConNo').Value := Trim(ClientDataSet33.fieldbyname('ConNo').AsString);
FieldByName('BatchNo').Value := Trim(ClientDataSet33.fieldbyname('BatchNo').AsString);
Post;
end;
ClientDataSet33.Delete;
end;
procedure TfrmFHSQList.Tv44DblClick(Sender: TObject);
begin
if ClientDataSet44.IsEmpty then
Exit;
// if Application.MessageBox('ȷ<><C8B7>Ҫ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete PB_BatchNo where ConNo=:ConNo and BatchNo=:BatchNo');
Parameters.ParamByName('ConNo').Value := Trim(ClientDataSet44.fieldbyname('ConNo').AsString);
Parameters.ParamByName('BatchNo').Value := Trim(ClientDataSet44.fieldbyname('BatchNo').AsString);
ExecSQL;
end;
with ClientDataSet33 do
begin
Append;
FieldByName('ConNo').Value := Trim(ClientDataSet44.fieldbyname('ConNo').AsString);
FieldByName('BatchNo').Value := Trim(ClientDataSet44.fieldbyname('BatchNo').AsString);
Post;
end;
ClientDataSet44.Delete;
end;
procedure TfrmFHSQList.ToolButton16Click(Sender: TObject);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select BatchNo=A.APBatchNo,B.ConNo from JYCon_Sub_AnPai A inner join Cloth_Main B on A.MainId=B.MainId');
sql.Add(' where 1=2');
sql.Add(' Group by A.APBatchNo,B.ConNo');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet33);
SInitCDSData20(ADOQueryTemp, ClientDataSet33);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select ConNo,BatchNo from PB_BatchNO A ');
sql.Add(' where 1=2');
sql.Add(' Group by BatchNo,ConNo');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet44);
SInitCDSData20(ADOQueryTemp, ClientDataSet44);
Panel2.Visible := False;
end;
end.