D7myzhenyong/坯布码单待检(PBMDDJ.dll)/U_CPCKOutList.pas
DESKTOP-E401PHE\Administrator 237de1c308 0
2025-08-26 15:25:51 +08:00

1046 lines
30 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_CPCKOutList;
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,
RM_BarCode, cxMaskEdit, cxContainer, cxCurrencyEdit, cxPC, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu;
type
TfrmCPCKOutList = 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;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label12: TLabel;
Label6: TLabel;
Label7: TLabel;
SPName: TEdit;
FactoryName: TEdit;
SPID: TEdit;
SPSpec: TEdit;
CRType: TComboBox;
SPCF: TEdit;
QCorderNo: TEdit;
Label10: TLabel;
CKorderNo: TEdit;
Label11: TLabel;
FromFactoryName: TEdit;
Label13: TLabel;
ToFactoryName: TEdit;
Label9: TLabel;
Label14: TLabel;
RCGangNo: TEdit;
GangNo: TEdit;
v1Column15: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
ToolButton3: TToolButton;
ADOQueryPrint: TADOQuery;
v1Column21: TcxGridDBColumn;
Label15: TLabel;
SPColor: TEdit;
Label16: TLabel;
PRTColorNo: TEdit;
Label17: TLabel;
SPHX: TEdit;
RM1: TRMGridReport;
RMBarCodeObject1: TRMBarCodeObject;
v1Column22: TcxGridDBColumn;
v1Column23: TcxGridDBColumn;
v1Column24: TcxGridDBColumn;
Label18: TLabel;
CustomerNoName: TEdit;
N3: TMenuItem;
ToolButton1: TToolButton;
v1Column18: TcxGridDBColumn;
Label19: TLabel;
LBNO: TEdit;
Edit1: TEdit;
v1Column25: TcxGridDBColumn;
v1Column26: TcxGridDBColumn;
v1Column27: TcxGridDBColumn;
Label22: TLabel;
JYZT: TComboBox;
cxTabControl1: TcxTabControl;
v1Column28: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
ToolButton2: TToolButton;
ToolButton4: TToolButton;
Panel2: TPanel;
Label26: TLabel;
Button7: TButton;
Button6: TButton;
EDIT2: TcxButtonEdit;
Tv1Column7: TcxGridDBColumn;
Label20: TLabel;
spcode: TEdit;
Label21: TLabel;
CPYY: TEdit;
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 SPNameChange(Sender: TObject);
procedure SPIDKeyPress(Sender: TObject; var Key: Char);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure N3Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
procedure CKorderNoKeyPress(Sender: TObject; var Key: Char);
procedure CKorderNoChange(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure EDIT2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure Button7Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
private
canshu1, canshu2: string;
procedure InitGrid();
procedure setstatus();
{ Private declarations }
public
{ Public declarations }
end;
var
frmCPCKOutList: TfrmCPCKOutList;
implementation
uses
U_DataLink, U_RTFun, U_Fun, U_DJBCKOutPut, U_ZdyAttachGYS, U_ZDYHelp;
{$R *.dfm}
procedure TfrmCPCKOutList.FormDestroy(Sender: TObject);
begin
frmcpCKOutList := nil;
end;
procedure TfrmCPCKOutList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCPCKOutList.FormCreate(Sender: TObject);
begin
//cxGrid1.Align:=alClient;
canshu1 := Trim(DParameters1);
canshu2 := Trim(DParameters2);
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 7;
end;
procedure TfrmCPCKOutList.setstatus();
begin
ToolButton2.Visible := False;
ToolButton4.Visible := False;
if cxTabControl1.TabIndex = 0 then
begin
ToolButton2.Visible := True;
end
else if cxTabControl1.TabIndex = 1 then
begin
ToolButton4.Visible := True;
end;
end;
procedure TfrmCPCKOutList.InitGrid();
var
fwhere, Pwhere: string;
begin
Pwhere := SGetFilters(Panel1, 1, 2);
begin
if trim(Pwhere) <> '' then
fwhere := fwhere + ' and ' + trim(Pwhere);
end;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
// sql.Add('WITH JY AS (SELECT count(mjid)jyPS,SUM(MJLEN)JYCD,SUM(MJMAOZ)JYZL,apid FROM WFB_MJJY D GROUP BY apid)');
sql.Add(' select A.*,JYZT=(case when a.piqty<=(SELECT COUNT(*)FROM WFB_MJJY D WHERE A.SPID=D.APID) THEN ''<27>ɼ<EFBFBD><C9BC><EFBFBD><EFBFBD><EFBFBD>'' ');
SQL.Add('when a.piqty>(SELECT COUNT(*)FROM WFB_MJJY D WHERE A.SPID=D.APID) and exists(select * from WFB_MJJY where APID=A.SPID) then ''<27>ɼ<EFBFBD><C9BC><EFBFBD>'' else ''<27>ȴ<EFBFBD><C8B4>ɼ<EFBFBD>'' end) ');
SQL.Add(',JYPS=DJJS,JYZL=DJMZ,JYCD=DJLEN');
sql.Add(',PRTColorNo=(select PRTColorNo from JYOrder_sub C where A.ORDSubIdCK=C.SUBID )');
sql.Add(',DDYSS=(select PRTOrderQty from JYOrder_sub C where A.ORDSubIdCK=C.SUBID )');
sql.Add(',PRTHX1=(select PRTHX from JYOrder_sub C where A.ORDSubIdCK=C.SUBID )');
sql.Add(' from CK_SXPB_CR A ');
sql.add(' where A.CRTime>=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime))));
sql.add(' and A.CRTime<' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1))));
SQL.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
SQL.Add(' and isnull(CKName,'''')=''<27><><EFBFBD>첼'' and isnull(CPYY,'''')<>''''');
if CKorderNo.Text <> '' then
begin
sql.Add('and CKorderNo like' + quotedstr('%' + Trim(CKorderNo.TEXT)));
end;
if (QCorderNo.Text <> '') then
begin
sql.Add('and QCorderNo like' + quotedstr('%' + Trim(QCorderNo.Text) + '%'));
end;
if cxTabControl1.TabIndex = 0 then
begin
SQL.Add('AND isnull(CPFLAG,'''')=''''');
end
else if cxTabControl1.TabIndex = 1 then
begin
SQL.Add('AND isnull(CPFLAG,'''')=''1''');
end;
SQL.Add('order by CKorderNo,SPColor,[dbo].[getNum](GangNo) ');
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
TBFind.Click;
end;
procedure TfrmCPCKOutList.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmCPCKOutList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmCPCKOutList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmCPCKOutList.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
setstatus();
InitGrid();
end;
procedure TfrmCPCKOutList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmCPCKOutList.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 TfrmCPCKOutList.SPNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCPCKOutList.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(' 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 TfrmCPCKOutList.N1Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not eof do
begin
if Trim(CDS_Main.fieldbyname('CRType').AsString) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
Edit;
FieldByName('SSel').Value := True;
Post;
end;
Next;
end;
end;
CDS_Main.EnableControls;
end;
procedure TfrmCPCKOutList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmCPCKOutList.TBDelClick(Sender: TObject);
var
strsql: string;
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox('<27>Ѽ<EFBFBD><D1BC><EFBFBD><E9B2BB>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
while CDS_Main.Locate('SSel', True, []) do
begin
if Trim(CDS_Main.fieldbyname('SPID').AsString) <> '' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_MONEY_CR A inner join YF_MONEY_CR_sub B on A.YFID=B.YFID ');
sql.Add('where A.status=''1'' and B.YFPZNO=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>ϲ<EFBFBD><CFB2>ܲ<EFBFBD><DCB2><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1 * from WFB_MJJY where isnull(APID,'''')=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27>Ѽ<EFBFBD><D1BC><EFBFBD><E9B2BB>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
if Trim(CDS_Main.fieldbyname('CRType').AsString) = '<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where FZSPID=');
sql.Add('(select SPID from CK_SXPB_CR where PYID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
sql.Add(' and isnull(CRType,'''')=''ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'')');
sql.Add(' and CRQtyFlag=-1');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
Exit;
end;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('SELECT * FROM YF_MONEY_CR ');
sql.Add('where YFID=' + quotedstr(trim('D' + CDS_Main.fieldbyname('SPID').AsString)));
SQL.Add('AND STATUS=1');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
Exit;
end;
strsql := '<27><><EFBFBD>Լ<EFBFBD>¼<EFBFBD><C2BC>' + Trim(CDS_Main.fieldbyname('FZSPID').AsString) + ';<3B><>ǰ<EFBFBD><C7B0>¼:' + Trim(CDS_Main.fieldbyname('SPID').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete CK_SXPB_CR where SPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
sql.Add(' Update CK_SXPB_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(' where SPID=''' + Trim(CDS_Main.fieldbyname('FZSPID').AsString) + '''');
sql.Add(' exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
if Trim(CDS_Main.fieldbyname('CRType').AsString) = '<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>' then
begin
sql.Add(' delete CK_SXPB_CR where CRType=''ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and PYID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
end;
if Trim(CDS_Main.fieldbyname('CRType').AsString) = '<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
begin
sql.Add(' delete YF_MONEY_CR where YFID=' + quotedstr(trim('D' + CDS_Main.fieldbyname('SPID').AsString)));
sql.Add(' delete YF_MONEY_CR_SUB where YFID=' + quotedstr(trim('D' + CDS_Main.fieldbyname('SPID').AsString)));
end;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim(<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD>')));
sql.Add(',' + quotedstr(trim(strsql)));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
ExecSQL;
end;
end;
CDS_Main.Delete;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
end;
procedure TfrmCPCKOutList.TBAddClick(Sender: TObject);
begin
try
frmDJBCKOutPut := TfrmDJBCKOutPut.Create(Application);
with frmDJBCKOutPut do
begin
FBCId := '';
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmDJBCKOutPut.Free;
end;
end;
procedure TfrmCPCKOutList.TBEditClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_MONEY_CR A inner join YF_MONEY_CR_sub B on A.YFID=B.YFID ');
sql.Add('where A.status=''1'' and B.YFPZNO=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>ϲ<EFBFBD><CFB2>ܲ<EFBFBD><DCB2><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where FZSPID=');
sql.Add('(select SPID from CK_SXPB_CR where PYID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
sql.Add(' and isnull(CRType,'''')=''ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'')');
sql.Add(' and CRQtyFlag=-1');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
frmDJBCKOutPut := TfrmDJBCKOutPut.Create(Application);
with frmDJBCKOutPut 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
frmDJBCKOutPut.Free;
end;
end;
procedure TfrmCPCKOutList.ToolButton3Click(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if CDS_Main.IsEmpty then
Exit;
//if Trim(CDS_Main.fieldbyname('CRType').AsString)<>'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
ExportFtErpFile('<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩ.rmf', ADOQueryTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩ.rmf';
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while CDS_Main.Locate('SSel', True, []) do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' update CK_SXPB_CR set PrintCount=isnull(PrintCount,0)+1 ');
sql.Add(' where SPId=''' + Trim(CDS_Main.fieldbyname('SPId').AsString) + ''' ');
ExecSQL;
end;
with ADOQueryPrint do
begin
Close;
sql.Clear;
sql.Add(' select A.* ,B.SOrddefstr1,B.PRTColor,B.PRTHX,C.OrderNo,C.MPRTCodeName');
sql.Add(',C.CustomerNoName,C.ConNo,C.LYnoet');
sql.Add(',khCode=(select zdyNameZ from KH_Zdy_Attachment X where X.zdyname=C.CustomerNoName and X.Type=''KHName'') ');
sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=C.conNO) ');
sql.Add(' from CK_SXPB_CR A');
sql.Add(' left join JYOrder_Sub B on A.ORDSubIdCK=B.SubId');
sql.Add(' left join JYOrder_Main C on A.ORDMainIdCK=C.MainId');
sql.Add(' where A.SPId=''' + Trim(CDS_Main.fieldbyname('SPId').AsString) + '''');
if cxTabControl1.TabIndex = 0 then
begin
SQL.Add('AND PrintCount=0');
end
else if cxTabControl1.TabIndex = 1 then
begin
SQL.Add('AND PrintCount<>0');
end;
Open;
end;
SCreateCDS20(ADOQueryPrint, CDS_PRT);
SInitCDSData20(ADOQueryPrint, CDS_PRT);
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(CDS_PRT.fieldbyname('SPID').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
CDS_Main.EnableControls;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM1.LoadFromFile(fPrintFile);
//RM1.ShowReport;
RM1.PrintReport;
end
else
begin
CDS_Main.EnableControls;
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩ.rmf'), '<27><>ʾ', 0);
Exit;
end;
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
CDS_Main.EnableControls;
end;
procedure TfrmCPCKOutList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
// if CDS_Main.IsEmpty then Exit;
// if Trim(CDS_Main.fieldbyname('CRType').AsString)<>'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
// begin
// Tv1.OptionsSelection.CellSelect:=False;
// end else
// begin
// Tv1.OptionsSelection.CellSelect:=True;
// end;
end;
procedure TfrmCPCKOutList.N3Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not eof do
begin
Edit;
FieldByName('SSel').Value := True;
Post;
Next;
end;
end;
CDS_Main.EnableControls;
end;
procedure TfrmCPCKOutList.ToolButton1Click(Sender: TObject);
var
fPrintFile: string;
var
WSql, WSQL2: string;
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
ExportFtErpFile('<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩA4.rmf', ADOQueryTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩA4.rmf';
WSql := '';
WSQL2 := '';
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while CDS_Main.Locate('SSel', True, []) do
begin
if WSql <> '' then
begin
WSql := WSql + ',' + QuotedStr(Trim(CDS_Main.fieldbyname('SPId').AsString));
WSQL2 := WSQL2 + ',' + QuotedStr(Trim(CDS_Main.fieldbyname('SPId').AsString));
end
else
begin
WSql := 'where A.SPID in (' + QuotedStr(Trim(CDS_Main.fieldbyname('SPId').AsString));
WSQL2 := 'where SPID in (' + QuotedStr(Trim(CDS_Main.fieldbyname('SPId').AsString));
end;
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
CDS_Main.EnableControls;
WSql := WSql + ')';
WSQL2 := WSQL2 + ')';
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' update CK_SXPB_CR set PrintCount=isnull(PrintCount,0)+1 ');
sql.Add(WSQL2);
// ShowMessage(SQL.Text);
ExecSQL;
end;
with ADOQueryPrint do
begin
Close;
sql.Clear;
// sql.Add(' select A.*,D.* ');
// sql.Add(',KHConno=(select KHConno from JYOrder_Main X where X.MainId=A.ORDMainIdCK) ');
// sql.Add(',MPRTBZNote=(select MPRTBZNote from JYOrder_Main X where X.MainId=A.ORDMainIdCK) ');
// sql.Add(',PRTColorNo=(select PRTColorNo from JYOrder_Sub X where X.SubId=A.ORDSubIdCK) ');
// sql.Add(',PRTOrderQty=(select PRTOrderQty from JYOrder_Sub X where X.SubId=A.ORDSubIdCK) ');
// sql.Add(',PRTEColor=(select PRTEColor from JYOrder_Sub X where X.SubId=A.ORDSubIdCK) ');
// sql.Add(',LYnote=(select LYnote from JYOrder_Main X where X.MainId=A.ORDMainIdCK) ');
// sql.Add(' from CK_SXPB_CR A');
// sql.Add(' left join TP_File D on D.TFID=A.SPID ');
sql.Add(' EXEC P_Print_JYZSD @WSql=' + QuotedStr(WSql));
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryPrint, CDS_PRT);
SInitCDSData20(ADOQueryPrint, CDS_PRT);
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
RM1.DefaultCopies := StrToIntDef(Edit1.Text, 1);
RM1.ShowReport;
// RM1.PrintReport;
end
else
begin
CDS_Main.EnableControls;
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩA4.rmf'), '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmCPCKOutList.ToolButton7Click(Sender: TObject);
begin
try
ADOQueryCmd.Connection.BeginTrans;
while CDS_Main.Locate('SSel', True, []) do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' update CK_SXPB_CR set PrintCount=0 ');
sql.Add(' where SPId=''' + Trim(CDS_Main.fieldbyname('SPId').AsString) + ''' ');
ExecSQL;
end;
CDS_Main.Delete;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!', '<27><>ʾ', 0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
end;
procedure TfrmCPCKOutList.cxTabControl1Change(Sender: TObject);
begin
setstatus();
TBRafresh.Click();
end;
procedure TfrmCPCKOutList.Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
var
FValue: string;
FBounds: TRect;
begin
FBounds := AViewInfo.Bounds;
if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
begin
ACanvas.FillRect(FBounds);
ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1);
FValue := IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index + 1);
InflateRect(FBounds, -1, -1); //Platform specific. May not work on Linux.
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
procedure TfrmCPCKOutList.CKorderNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmCPCKOutList.CKorderNoChange(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCPCKOutList.ToolButton9Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not eof do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_UPdate_LCKJY ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
end;
CDS_Main.Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_Main.EnableControls;
except
ADOQueryCmd.Connection.RollbackTrans;
CDS_Main.EnableControls;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
InitGrid();
end;
procedure TfrmCPCKOutList.ToolButton2Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
Panel2.Visible := True;
end;
procedure TfrmCPCKOutList.ToolButton4Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update CK_SXPB_CR SET CPFLAG=NULL,CPCLNOTE=NULL ');
sql.Add('where SPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!', '<27><>ʾ', 0);
initgrid();
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!', '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmCPCKOutList.EDIT2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'CPCLNOTE';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
EDIT2.Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCPCKOutList.Button7Click(Sender: TObject);
begin
if EDIT2.Text = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9B2BB>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update CK_SXPB_CR SET CPFLAG=''1'',CPCLNOTE=' + QuotedStr(Trim(EDIT2.Text)));
sql.Add('where SPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!', '<27><>ʾ', 0);
initgrid();
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!', '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmCPCKOutList.Button6Click(Sender: TObject);
begin
Panel2.Visible := False;
end;
end.