310 lines
8.3 KiB
ObjectPascal
310 lines
8.3 KiB
ObjectPascal
|
|
unit U_YGYPZZChkList_BGYPKC;
|
|||
|
|
|
|||
|
|
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, cxButtonEdit, cxDropDownEdit, cxPC, ActnMan, ActnColorMaps;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TfrmYGYPZZChkList_BGYPKC = class(TForm)
|
|||
|
|
ToolBar1: TToolBar;
|
|||
|
|
TBRafresh: TToolButton;
|
|||
|
|
TBFind: TToolButton;
|
|||
|
|
TBClose: TToolButton;
|
|||
|
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|||
|
|
ADOQueryCmd: TADOQuery;
|
|||
|
|
ADOQueryMain: TADOQuery;
|
|||
|
|
ADOQueryTemp: TADOQuery;
|
|||
|
|
DataSource1: TDataSource;
|
|||
|
|
TBExport: TToolButton;
|
|||
|
|
Order_Main: TClientDataSet;
|
|||
|
|
Panel1: TPanel;
|
|||
|
|
PopupMenu1: TPopupMenu;
|
|||
|
|
N2: TMenuItem;
|
|||
|
|
N1: TMenuItem;
|
|||
|
|
DataSource2: TDataSource;
|
|||
|
|
cxStyleRepository1: TcxStyleRepository;
|
|||
|
|
cxStyle1: TcxStyle;
|
|||
|
|
cxGrid1: TcxGrid;
|
|||
|
|
Tv1: TcxGridDBTableView;
|
|||
|
|
v1KCName: TcxGridDBColumn;
|
|||
|
|
v1KCPlace: TcxGridDBColumn;
|
|||
|
|
v1SumKCQty: TcxGridDBColumn;
|
|||
|
|
v1KCUnit: TcxGridDBColumn;
|
|||
|
|
cxGrid1Level1: TcxGridLevel;
|
|||
|
|
TSsel: TToolButton;
|
|||
|
|
v1Ssel: TcxGridDBColumn;
|
|||
|
|
Label1: TLabel;
|
|||
|
|
KCName: TEdit;
|
|||
|
|
Label2: TLabel;
|
|||
|
|
KCPlace: TEdit;
|
|||
|
|
cxStyle2: TcxStyle;
|
|||
|
|
v1SumRKQty: TcxGridDBColumn;
|
|||
|
|
v1SumCKQty: TcxGridDBColumn;
|
|||
|
|
cxStyle3: TcxStyle;
|
|||
|
|
v1DeptType: TcxGridDBColumn;
|
|||
|
|
Label3: TLabel;
|
|||
|
|
DeptType: TEdit;
|
|||
|
|
ADOQuery1: TADOQuery;
|
|||
|
|
procedure FormDestroy(Sender: TObject);
|
|||
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
procedure FormCreate(Sender: TObject);
|
|||
|
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
|
procedure TBFindClick(Sender: TObject);
|
|||
|
|
procedure TBExportClick(Sender: TObject);
|
|||
|
|
procedure TBRafreshClick(Sender: TObject);
|
|||
|
|
procedure FormShow(Sender: TObject);
|
|||
|
|
procedure CheckBox1Click(Sender: TObject);
|
|||
|
|
procedure CheckBox2Click(Sender: TObject);
|
|||
|
|
procedure CustomerNoNameChange(Sender: TObject);
|
|||
|
|
procedure TSselClick(Sender: TObject);
|
|||
|
|
procedure KCNameChange(Sender: TObject);
|
|||
|
|
procedure N2Click(Sender: TObject);
|
|||
|
|
procedure N1Click(Sender: TObject);
|
|||
|
|
private
|
|||
|
|
canshu1:string;
|
|||
|
|
DQdate:TDateTime;
|
|||
|
|
procedure InitGrid();
|
|||
|
|
procedure InitForm();
|
|||
|
|
function DelData():Boolean;
|
|||
|
|
procedure setstatus();
|
|||
|
|
{ Private declarations }
|
|||
|
|
public
|
|||
|
|
FFInt,FCloth:Integer;
|
|||
|
|
Fformid: string;
|
|||
|
|
{ Public declarations }
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
frmYGYPZZChkList_BGYPKC: TfrmYGYPZZChkList_BGYPKC;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
uses
|
|||
|
|
U_DataLink,U_RTFun,U_ZDYHelp, U_YGYPInPut,
|
|||
|
|
U_ZDYHelpSel,U_YGYPInput_BGYPKCDJ;
|
|||
|
|
|
|||
|
|
{$R *.dfm}
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.setstatus();
|
|||
|
|
begin
|
|||
|
|
Tssel.Visible:=False;
|
|||
|
|
v1Ssel.Visible:=False;
|
|||
|
|
if trim(Fformid)='1' then
|
|||
|
|
begin
|
|||
|
|
Tssel.Visible:=True;
|
|||
|
|
v1Ssel.Visible:=True;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.FormDestroy(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
frmYGYPZZChkList_BGYPKC:=nil;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.FormClose(Sender: TObject;
|
|||
|
|
var Action: TCloseAction);
|
|||
|
|
begin
|
|||
|
|
Action:=caFree;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.FormCreate(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
canshu1:=Trim(DParameters1);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.TBCloseClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
WriteCxGrid('Ա<><D4B1><EFBFBD>칫<EFBFBD><ECB9AB><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.InitGrid();
|
|||
|
|
var FKCPlace: string;
|
|||
|
|
begin
|
|||
|
|
try
|
|||
|
|
ADOQueryMain.DisableControls;
|
|||
|
|
with ADOQueryMain do
|
|||
|
|
begin
|
|||
|
|
Filtered:=False;
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add(' select AA.*,SumKCQty=AA.SumRKQty-AA.SumCKQty from ');
|
|||
|
|
sql.add('(select KCPlace=(select Top 1 KCPlace from OA_YG_DangAN_BGYPKC B where B.KCName=A.KCName and B.DeptType=A.DeptType and B.KCUnit=A.KCUnit order by B.KCID desc), ');
|
|||
|
|
sql.add('A.KCName,A.DeptTYpe,A.KCUnit,Sum(A.KCQty) SumRKQty, ');
|
|||
|
|
sql.add('SumCKQty=(select isnull(Sum(B.CKQty),0) from OA_YG_DangAN_BGYPCK B where ');
|
|||
|
|
sql.add('B.CKName=A.KCName And B.CKUnit=A.KCUnit and B.DeptType=A.DeptType) ');
|
|||
|
|
sql.add('from OA_YG_DangAN_BGYPKC A ');
|
|||
|
|
sql.add(' where A.DeptType=''<27>ܾ<EFBFBD><DCBE><EFBFBD>'' ');
|
|||
|
|
sql.add('group by A.KCName,A.DeptTYpe,A.KCUnit) AA');
|
|||
|
|
if trim(Fformid)='1' then
|
|||
|
|
sql.add('where (AA.SumRKQty-AA.SumCKQty)<>0');
|
|||
|
|
sql.add(' order by AA.KCName');
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
SCreateCDS20(ADOQueryMain,Order_Main);
|
|||
|
|
SInitCDSData20(ADOQueryMain,Order_Main);
|
|||
|
|
{with Order_Main do
|
|||
|
|
begin
|
|||
|
|
first;
|
|||
|
|
while not eof do
|
|||
|
|
begin
|
|||
|
|
FKCPlace:='';
|
|||
|
|
with ADOQuery1 do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add(' select distinct KCPlace from OA_YG_DangAN_BGYPKC ');
|
|||
|
|
sql.add(' where KCName='''+trim(Order_Main.fieldbyname('KCName').AsString)+''' ');
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
if ADOQuery1.RecordCount>1 then
|
|||
|
|
begin
|
|||
|
|
with ADOQuery1 do
|
|||
|
|
begin
|
|||
|
|
first;
|
|||
|
|
while not eof do
|
|||
|
|
begin
|
|||
|
|
if trim(FKCPlace)='' then
|
|||
|
|
FKCPlace:=fieldbyname('KCPlace').AsString
|
|||
|
|
else
|
|||
|
|
FKCPlace:=FKCPlace+','+fieldbyname('KCPlace').AsString;
|
|||
|
|
next;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
FKCPlace:=Order_Main.fieldbyname('KCPlace').AsString;
|
|||
|
|
with Order_Main do
|
|||
|
|
begin
|
|||
|
|
edit;
|
|||
|
|
fieldbyname('KCPlace').AsString:=trim(FKCPlace);
|
|||
|
|
end;
|
|||
|
|
next;
|
|||
|
|
end;
|
|||
|
|
end;}
|
|||
|
|
finally
|
|||
|
|
ADOQueryMain.EnableControls;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.InitForm();
|
|||
|
|
begin
|
|||
|
|
//EndDate.Date:=SGetServerDate(ADOQueryCmd);
|
|||
|
|
//BegDate.Date:=EndDate.Date-7;
|
|||
|
|
ReadCxGrid('Ա<><D4B1><EFBFBD>칫<EFBFBD><ECB9AB><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
|
|||
|
|
setstatus();
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.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;
|
|||
|
|
|
|||
|
|
function TfrmYGYPZZChkList_BGYPKC.DelData():Boolean;
|
|||
|
|
begin
|
|||
|
|
try
|
|||
|
|
Result:=false;
|
|||
|
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('Delete OA_YG_DangAn where YGId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+'''');
|
|||
|
|
ExecSQL;
|
|||
|
|
end;
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('Delete OA_YG_DangAn_Other where YGId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+'''');
|
|||
|
|
ExecSQL;
|
|||
|
|
end;
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('Delete TP_File where WBId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+'''');
|
|||
|
|
sql.Add(' and TFType=''YG'' ');
|
|||
|
|
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 TfrmYGYPZZChkList_BGYPKC.TBExportClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if ADOQueryMain.IsEmpty then Exit;
|
|||
|
|
TcxGridToExcel('Ա<><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid1);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.TBRafreshClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.FormShow(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
InitForm();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.CheckBox1Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
InitGrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.CheckBox2Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
TBRafresh.Click;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.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 TfrmYGYPZZChkList_BGYPKC.TSselClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if Order_Main.IsEmpty then exit;
|
|||
|
|
Modalresult:=1;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.KCNameChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
|||
|
|
SCreateCDS20(ADOQueryMain,Order_Main);
|
|||
|
|
SInitCDSData20(ADOQueryMain,Order_Main);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.N2Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SelOKNo(Order_Main,True);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmYGYPZZChkList_BGYPKC.N1Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SelOKNo(Order_Main,False);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|