D7myzhenyong/手机跟单管理(MobileTrack.dll)/U_PBRKList.pas
DESKTOP-E401PHE\Administrator 237de1c308 0
2025-08-26 15:25:51 +08:00

440 lines
11 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_PBRKList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset,
RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, cxPC,
IniFiles, jpeg, U_SLT, cxLookAndFeels, cxLookAndFeelPainters,
dxBarBuiltInMenu, cxNavigator;
type
TfrmPBRKList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
TBDel: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
TBEdit: TToolButton;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
CPName: TEdit;
SupplierName: TEdit;
SPID: TEdit;
BatchNo: TEdit;
cxTabControl1: TcxTabControl;
adoqueryPicture: TADOQuery;
PopupMenu2: TPopupMenu;
N3: TMenuItem;
N4: TMenuItem;
RMDBDataSet1: TRMDBDataSet;
ClientDataSet1: TClientDataSet;
ToolButton6: TToolButton;
RMGridReport1: TRMGridReport;
btn1: TToolButton;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1FactoryName: TcxGridDBColumn;
v2SPName: TcxGridDBColumn;
v1SPSpec: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1SPCF: TcxGridDBColumn;
v1BatchNo: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure SPIDKeyPress(Sender: TObject; var Key: Char);
procedure SPIDChange(Sender: TObject);
procedure BatchNoChange(Sender: TObject);
procedure SupplierNameChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure BatchNoKeyPress(Sender: TObject; var Key: Char);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
private
canshu1, canshu2, canshu3: string;
procedure InitGrid();
procedure ReadINIFile();
{ Private declarations }
public
{ Public declarations }
end;
//var
// frmShaRKList: TfrmShaRKList;
var
Mach: array of TfrmSlt;
implementation
uses
U_DataLink, U_RTFun, U_PBRKInPut, U_FileUp, U_WechatAuthority;
{$R *.dfm}
procedure TfrmPBRKList.FormDestroy(Sender: TObject);
begin
//frmShaRKList:=nil;
end;
procedure TfrmPBRKList.FormClose(Sender: TObject; var Action: TCloseAction);
var
i, j: integer;
begin
j := length(Mach);
if j > 0 then
begin
for i := 0 to j - 1 do
begin
Mach[i].free;
end;
end;
SetLength(Mach, 0);
Action := caFree;
end;
procedure TfrmPBRKList.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 TfrmPBRKList.FormCreate(Sender: TObject);
begin
//cxGrid1.Align:=alClient;
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
canshu1 := Trim(DParameters1);
canshu2 := Trim(DParameters2);
canshu3 := Trim(DParameters3);
end;
procedure TfrmPBRKList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' exec P_View_RCPBFH ');
sql.add(' ' + Quotedstr(Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime))));
sql.Add(' ,' + Quotedstr(Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1))));
sql.add(' ,' + Quotedstr(Trim(IntToStr(cxTabControl1.TabIndex))));
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmPBRKList.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmPBRKList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmPBRKList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(Trim(self.Caption), Tv1, <>ֿ߲<DFB2>');
Close;
end;
procedure TfrmPBRKList.FormShow(Sender: TObject);
begin
ReadCxGrid(Trim(self.Caption), Tv1, <>ֿ߲<DFB2>');
end;
procedure TfrmPBRKList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel(self.Caption, cxGrid2);
end;
procedure TfrmPBRKList.TBFindClick(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 TfrmPBRKList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmPBRKList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmPBRKList.TBDelClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if cxTabControl1.TabIndex <> 0 then
Exit;
if Trim(CDS_Main.fieldbyname('FHID').AsString) <> '' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete SupplierDeliver where FHId=''' + Trim(CDS_Main.fieldbyname('FHId').AsString) + '''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_Main.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
end
else
begin
CDS_Main.Delete;
end;
end;
procedure TfrmPBRKList.TBEditClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
try
frmPBRKInPut := TfrmPBRKInPut.Create(Application);
with frmPBRKInPut do
begin
FBCId := Trim(CDS_Main.fieldbyname('SPID').AsString);
TBDel.Visible := False;
TBAdd.Visible := False;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmPBRKInPut.Free;
end;
end;
procedure TfrmPBRKList.SPIDKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
{if Length(Trim(SPID.Text))<4 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(',ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId)');
//sql.Add(' ,ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId )');
sql.Add(' from CK_SXPB_CR A');
sql.add(' where SPID like :SXID');
Parameters.ParamByName('SXID').Value:='%'+Trim(SXID.Text)+'%';
Open;
//ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally
ADOQueryMain.EnableControls;
end; }
end;
end;
procedure TfrmPBRKList.SPIDChange(Sender: TObject);
begin
if Length(Trim(SPID.Text)) < 4 then
begin
if Trim(SPID.Text) <> '' then
Exit;
end;
TBFind.Click;
end;
procedure TfrmPBRKList.BatchNoChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmPBRKList.SupplierNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmPBRKList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmPBRKList.BatchNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key <> #13 then
Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from CK_SXPB_CR A');
sql.add(' where A.BatchNo=''' + Trim(BatchNo.Text) + '''');
sql.Add(' and isnull(CKName,'''')='<><C9B4>''');
SQL.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
{if Trim(canshu2)<>'' then
begin
SQL.Add(' and isnull(DeptName,'''')='''+Trim(canshu2)+'''');
end;}
if cxTabControl1.TabIndex = 0 then
begin
Sql.Add(' and ZFFlag=0 ');
end
else if cxTabControl1.TabIndex = 1 then
begin
Sql.Add(' and ZFFlag=1 ');
end;
SQL.Add(' order by CRTime desc');
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmPBRKList.ToolButton4Click(Sender: TObject);
var
fPrintFile: string;
begin
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Print_SXRK' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date))));
SQL.Add(',''<27><>'' ');
Open;
// ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet1);
SInitCDSData20(ADOQueryTemp, ClientDataSet1);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ɴ<><C9B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB1A8>.rmf';
if FileExists(fPrintFile) then
begin
// RMVariables['ConNo']:=Order_Main.fieldbyname('ConNo').Value;
RMGridReport1.LoadFromFile(fPrintFile);
RMGridReport1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\ɴ<><C9B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB1A8>.rmf'), '<27><>ʾ', 0);
end;
end;
procedure TfrmPBRKList.ToolButton6Click(Sender: TObject);
begin
try
frmPBRKInPut := TfrmPBRKInPut.Create(Application);
with frmPBRKInPut do
begin
FBCId := '';
ZHFlag := '1';
frmPBRKInPut.canshu3 := Trim(Self.canshu3);
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmPBRKInPut.Free;
end;
end;
end.