D7myYunxiang/样品新云翔(YPGLBOM.dll)/U_MLMangeXH.pas
DESKTOP-E401PHE\Administrator 1011cb7292 1
2025-01-20 13:04:03 +08:00

467 lines
13 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_MLMangeXH;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxTextEdit,
cxButtonEdit, Menus, cxLookAndFeelPainters, cxButtons, cxImage;
type
TfrmMLMangeXH = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
DataSource1: TDataSource;
ADOQueryTree: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
cxGridPopupMenu1: TcxGridPopupMenu;
Panel1: TPanel;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
DataSource2: TDataSource;
ADOQueryMain: TADOQuery;
CDS_Main: TClientDataSet;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
ODPat: TOpenDialog;
IdFTP1: TIdFTP;
SaveDialog1: TSaveDialog;
DataSource3: TDataSource;
cxGridPopupMenu2: TcxGridPopupMenu;
Order_GX: TClientDataSet;
DataSource4: TDataSource;
cxGridPopupMenu3: TcxGridPopupMenu;
ML_Col: TClientDataSet;
DataSource5: TDataSource;
cxGridPopupMenu4: TcxGridPopupMenu;
CDS_Sub: TClientDataSet;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxGridPopupMenu5: TcxGridPopupMenu;
DataSource6: TDataSource;
Ord_HX: TClientDataSet;
ADOQuery1: TADOQuery;
TCK: TToolButton;
ToolButton11: TToolButton;
Panel5: TPanel;
Label2: TLabel;
MLNo: TEdit;
Label1: TLabel;
Label4: TLabel;
MLName: TEdit;
GYLXName: TEdit;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1MLNo: TcxGridDBColumn;
v1MLName: TcxGridDBColumn;
v1MLMF: TcxGridDBColumn;
v1MLKZ: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1GYLXName: TcxGridDBColumn;
v1SKID: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
TPrint: TToolButton;
Label3: TLabel;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cxDBTreeList1DblClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure MLNoChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure ToolButton10Click(Sender: TObject);
procedure TV4CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure Tv1DblClick(Sender: TObject);
procedure TCKClick(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure TPrintClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
PState:Integer;
FCPID,FTopID:String;
procedure InitTree();
procedure InitGrid();
procedure ReadINIFile();
procedure ButtonColorCSH();
public
canshu1:string;
{ Public declarations }
end;
var
frmMLMangeXH: TfrmMLMangeXH;
implementation
uses
U_DataLink,U_Fun,U_CPAdd,U_FileUp,U_MLManage_LR,U_BPZdy_LR,U_BPZdy_SH,
U_MLManage_FHLR,U_MLManage_ZHLR,U_BPZdy_HXK,U_MLMange_CX,U_BPZdy_LRPB,U_BPZdy_LRGX,
U_CPManage_TP,U_BPZdy_LRSHK, U_BPZdy_PanelCX,U_BPZdy_Panel,U_MLManage_LRYH,U_MLManage_LRXH;
{$R *.dfm}
procedure TfrmMLMangeXH.InitTree();
begin
end;
procedure TfrmMLMangeXH.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
SQL.Add('select * ');
sql.Add(',SKID=isnull((select B.SKID from BP_ZDY B where B.BPID=A.MBPID),');
sql.Add('(select B.SKID from BP_ZDY B inner join ML_Manage C on C.MBPID=B.BPID ');
sql.Add('inner join ML_Manage_PB E on E.BPID=C.MLID where E.MLID=A.MLID))');
sql.Add(' from ML_Manage A ');
sql.Add(' where isnull(MLType,'''')=''<27>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmMLMangeXH.FormDestroy(Sender: TObject);
begin
frmMLMangeXH:=nil;
end;
procedure TfrmMLMangeXH.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmMLMangeXH.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(Self.Caption+'1',Tv1,'<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmMLMangeXH.TBDelClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
with ADOQueryCmd do
begin
close;
sql.Clear;
SQL.Add('select * from BP_DY ');
sql.Add('where MLID='''+trim(CDS_Main.fieldbyname('MLID').AsString)+'''');
Open;
end;
if ADOQueryCmd.IsEmpty=false then
begin
if Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>ӡȷ<D3A1><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>?','<27><>ʾ',32+4)<>IDYES then Exit;
exit;
end
else
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete ML_Manage where MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+'''');
sql.Add('delete ML_Manage_PB where MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+'''');
sql.Add('delete ML_Manage_GX where MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+'''');
ExecSQL;
end;
CDS_Main.Delete;
end;
procedure TfrmMLMangeXH.FormShow(Sender: TObject);
begin
if canshu1='<27><>Ȩ<EFBFBD><C8A8>' then
begin
toolbutton11.Visible:=True;
ToolButton3.Visible:=true;
TBDel.Visible:=true;
end
else
begin
if canshu1='<27><>ѯ' then
begin
toolbutton11.Visible:=false;
ToolButton3.Visible:=false;
TBDel.Visible:=false;
end
else
begin
toolbutton11.Visible:=false;
ToolButton3.Visible:=false;
TBDel.Visible:=false;
end;
end;
InitGrid();
ReadCxGrid(Self.Caption+'1',Tv1,'<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>');
end;
procedure TfrmMLMangeXH.cxDBTreeList1DblClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmMLMangeXH.TBRafreshClick(Sender: TObject);
begin
InitGrid();
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
end;
end;
procedure TfrmMLMangeXH.ToolButton3Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
try
frmMLManage_LRXH:=TfrmMLManage_LRXH.Create(Application);
with frmMLManage_LRXH do
begin
FCYID:=Trim(Self.CDS_Main.fieldbyname('MLID').AsString);
FGYName:='<27>廨';
if ShowModal=1 then
begin
Self.InitGrid();
end;
end;
finally
frmMLManage_LRXH.Free;
end;
end;
procedure TfrmMLMangeXH.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
end;
end;
procedure TfrmMLMangeXH.MLNoChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel5,1,2));
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
end;
end;
procedure TfrmMLMangeXH.ToolButton1Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
TcxGridToExcel('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>',cxGrid1);
end;
procedure TfrmMLMangeXH.ReadINIFile();
var
programIni:Tinifile; //<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
FileName:string;
begin
FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI';
programIni:=Tinifile.create(FileName);
server:=programIni.ReadString('SERVER','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ','127.0.0.1');
programIni.Free;
end;
procedure TfrmMLMangeXH.Tv1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add(' select A.*,isnull(B.BPCode,C.MLNo) BPCode,isnull(B.BPName,C.MLName) BPName');
sql.Add(' ,isnull(B.BPMF,C.MLMF) BPMF,isnull(B.BPKZ,C.MLKZ) BPKZ');
sql.Add(',B.BPJS,B.BPWS,B.BPMiDu,B.BPUnit,C.MLDLNo,C.DLHXK');
SQL.Add(' from ML_Manage_PB A left join BP_ZDY B on B.BPID=A.BPID ');
sql.Add(' left join ML_Manage C on C.MLID=A.BPID');
sql.Add(' where A.MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+'''');
//ShowMessage(sql.Text);
Open;
end;
SCreateCDS20(ADOQueryCmd,CDS_Sub);
SInitCDSData20(ADOQueryCmd,CDS_Sub);
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add(' select A.*,B.*,C.* from ML_Manage_GX A inner join BP_ZDY B on B.BPID=A.BPID ');
sql.Add('inner join BP_ZDY_Sub C on C.BPSubID=A.BPSubID');
sql.Add(' where A.MLID='''+Trim(CDS_Main.fieldbyname('MLID').AsString)+'''');
Open;
end;
SCreateCDS20(ADOQueryCmd,Order_GX);
SInitCDSData20(ADOQueryCmd,Order_GX);
//if CDS_Main.FieldByName('MLType').AsString<>'<27><><EFBFBD><EFBFBD>' then
begin
//if CDS_Main.FieldByName('MLType').AsString<>'<27><><EFBFBD><EFBFBD>' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from BP_ZDY_Sub ');
sql.Add('where BPCode='''+Trim(CDS_Main.fieldbyname('MLDLNo').AsString)+''' and BPflag=''SHK''');
Open;
end;
SCreateCDS20(ADOQueryCmd,ML_Col);
SInitCDSData20(ADOQueryCmd,ML_Col);
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select A.*,B.* from BP_ZDY_Sub A ');
Sql.Add('inner join KH_Zdy_Attachment B on A.HXATID=B.ATID and B.Type=''CPHX''');
sql.Add(' where A.BPCode='''+trim(CDS_Main.fieldbyname('DLHXK').AsString)+'''');
open;
end;
SCreateCDS20(ADOQueryCmd,Ord_HX);
SInitCDSData20(ADOQueryCmd,Ord_HX);
end;
end;
procedure TfrmMLMangeXH.ToolButton10Click(Sender: TObject);
begin
{if RadioGroup1.ItemIndex=-1 then
begin
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;}
end;
procedure TfrmMLMangeXH.TV4CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
//if CDS_Main.FieldByName('MLType').AsString='<27><><EFBFBD><EFBFBD>' then
begin
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add('select * from BP_ZDY_Sub ');
sql.Add('where BPCode='''+Trim(CDS_Sub.Fieldbyname('MLDLNo').AsString)+''' and BPflag=''SHK''');
Open;
end;
SCreateCDS20(ADOQuery1,ML_Col);
SInitCDSData20(ADOQuery1,ML_Col);
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add('select A.*,B.* from BP_ZDY_Sub A ');
Sql.Add('inner join KH_Zdy_Attachment B on A.HXATID=B.ATID and B.Type=''CPHX''');
sql.Add(' where A.BPCode='''+trim(CDS_Sub.Fieldbyname('DLHXK').AsString)+'''');
open;
end;
SCreateCDS20(ADOQuery1,Ord_HX);
SInitCDSData20(ADOQuery1,Ord_HX);
end;
end;
procedure TfrmMLMangeXH.Tv1DblClick(Sender: TObject);
begin
TCK.Click;
end;
procedure TfrmMLMangeXH.TCKClick(Sender: TObject);
begin
try
frmMLManage_LRXH:=TfrmMLManage_LRXH.Create(Application);
with frmMLManage_LRXH do
begin
FCYID:=Trim(Self.CDS_Main.fieldbyname('MLID').AsString);
FGYName:='<27>廨';
viewFlag:=True;
if ShowModal=1 then
begin
Self.InitGrid();
end;
end;
finally
frmMLManage_LRXH.Free;
end;
end;
procedure TfrmMLMangeXH.ToolButton11Click(Sender: TObject);
begin
try
frmMLManage_LRXH:=TfrmMLManage_LRXH.Create(Application);
with frmMLManage_LRXH do
begin
FCYID:='';
FGYName:='<27>廨';
if ShowModal=1 then
begin
Self.InitGrid();
end;
end;
finally
frmMLManage_LRXH.Free;
end;
end;
procedure TfrmMLMangeXH.ButtonColorCSH();
begin
end;
procedure TfrmMLMangeXH.TPrintClick(Sender: TObject);
var i,j,x:Integer;
begin
i:=0;
j:=0;
frmBPZDY_PanelCX:=TfrmBPZDY_PanelCX.create(self);
with frmBPZDY_PanelCX do
begin
FColorFlag:=Trim(self.CDS_Main.fieldbyname('SKID').asstring);
FBPID:=Trim(self.CDS_Main.fieldbyname('MBPID').asstring);
FMLID:=Trim(Self.CDS_Main.fieldbyname('MLID').AsString);
if ShowModal=1 then
begin
end;
free;
end;
end;
procedure TfrmMLMangeXH.FormCreate(Sender: TObject);
begin
canshu1:=Trim(DParameters1);
end;
end.