D10myYicheng/发货申请(ShipmentRequest.dll)/U_SMPK.pas
2025-05-27 14:08:09 +08:00

346 lines
12 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_SMPK;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView,
cxGrid, MovePanel, cxCheckBox, Menus, ComCtrls, BtnEdit, ShellAPI, cxTextEdit,
RM_Common, RM_Class, RM_GridReport, RM_System, RM_Dataset, RM_e_Xls;
type
TfrmSMPK = class(TForm)
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DS_MainSel: TDataSource;
CDS_MainSel: TClientDataSet;
cxGridPopupMenu4: TcxGridPopupMenu;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
v3Column1: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
v3Column2: TcxGridDBColumn;
Panel2: TPanel;
Label5: TLabel;
KuWei: TEdit;
BaoID: TEdit;
Button2: TButton;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
Label12: TLabel;
CDS_Main: TClientDataSet;
CRType: TEdit;
v3Column4: TcxGridDBColumn;
RMXLSExport1: TRMXLSExport;
RMDBMX: TRMDBDataSet;
RM1: TRMGridReport;
CDS_JuanPRT: TClientDataSet;
v3Column3: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BaoIDKeyPress(Sender: TObject; var Key: Char);
procedure Button2Click(Sender: TObject);
function YSData(Order_Main10: TClientDataSet): Boolean;
private
{ Private declarations }
FCKOrdNo, FSMStr, JXFlag: string;
public
{ Public declarations }
end;
var
frmSMPK: TfrmSMPK;
implementation
uses
U_DataLink, U_RTFun, MMSystem, U_FHSQListSel;
{$R *.dfm}
function TfrmSMPK.YSData(Order_Main10: TClientDataSet): Boolean;
var
CRID, YFID, PriceUnit, OrderUnit, FComTaiTou, FromSubID: string;
fprice, huilv: double;
begin
// Result:=False;
// fprice:=0;
// huilv:=0;
// PriceUnit:='RMB';
// with Order_Main10 do
// begin
// begin
// with ADOQueryTemp do
// begin
// Close;
// SQL.Clear;
// sql.Add('select *,fPrice=dbo.F_Get_Order_Price(MainID,subID) from JYOrder_Sub Where subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+'''');
// Open;
// end;
// IF not ADOQueryTemp.IsEmpty then
// begin
// PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString);
// OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
// fPrice:= ADOQueryTemp.fieldbyname('fPrice').AsFloat;
// huilv:= ADOQueryTemp.fieldbyname('huilv').AsFloat;
// end;
// IF huilv=0 then huilv:=1;
// CRID:='0';
// with ADOQueryTemp do
// begin
// Close;
// sql.Clear;
// sql.Add(' select * from YF_Money_CR ');
// sql.Add(' where mainID='''+Trim(Order_Main10.fieldbyname('mainID').AsString)+'''');
// sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+'''');
// sql.Add(' and CRTime='''+FormatDateTime('yyyy-MM-dd',CRTime.Date)+'''') ;
// sql.Add(' and YFName=''<27><><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>'' ');
// Open;
// end;
// if ADOQueryTemp.IsEmpty then
// begin
// if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then
// begin
// Application.MessageBox('ȡ<><C8A1>ƷӦ<C6B7><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
// Exit;
// end;
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('select * from YF_Money_CR where 1<>1');
// Open;
// end;
// with ADOQueryCmd do
// begin
// Append;
// FieldByName('YFID').Value:=Trim(YFID);
// FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('mainID').AsString);
// FieldByName('CRID').Value:=StrToInt(CRID);
// FieldByName('Filler').Value:=Trim(DName);
// FieldByName('CRType').Value:='Ӧ<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
// FieldByName('CRFlag').Value:='Ӧ<><D3A6><EFBFBD><EFBFBD>';
// FieldByName('QtyFlag').Value:=1;
// FieldByName('FactoryName').Value:=Trim(TocustName.Text);
// FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date));
// FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
// FieldByName('Price').Value:=fprice;
// FieldByName('HuiLv').Value:=huilv;
// FieldByName('BZType').Value:=Trim(PriceUnit);
// FieldByName('QtyUnit').Value:=Trim(OrderUnit);
// FieldByName('ComTaiTou').Value:=Trim(FComTaiTou);
// FieldByName('YFName').Value:='<27><><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>';
// FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString);
// FieldByName('subID').Value:=Trim(Order_Main10.fieldbyname('subID').AsString);
// FieldByName('OrderNO').Value:=Trim(Order_Main10.fieldbyname('OrderNO').AsString);
// FieldByName('P_CodeName').Value:=Trim(Order_Main10.fieldbyname('MprtCodeName').AsString);
// FieldByName('P_Spec').Value:=Trim(Order_Main10.fieldbyname('MprtSpec').AsString);
// FieldByName('P_color').Value:=Trim(Order_Main10.fieldbyname('PRTColor').AsString);
// FieldByName('status').Value:='0';
// Post;
// end;
// end
// else
// begin
// YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString);
// end;
// IF uppercase(OrderUnit)='KG' then
// begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(B.MJQty4),0) from CK_BanCP_CR A,WFB_MJJY B where A.MJID=B.MJID and A.MainID=YF_Money_CR.MainID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(',PS=(select isnull(count(A.mainID),0) from CK_BanCP_CR A where A.maiNID=YF_Money_CR.maiNID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(' where YFID='''+Trim(YFID)+'''');
// ExecSQL;
// end;
// end
// else
// IF (uppercase(OrderUnit)='Y') and (uppercase(Trim(Order_Main10.fieldbyname('QtyUnit').AsString))='M') then
// begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('update YF_Money_CR Set Qty=(select cast(isnull(Sum(A.Qty),0)/0.9144 as decimal(18,1)) from CK_BanCP_CR A where A.MainID=YF_Money_CR.MainID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(',PS=(select isnull(count(A.mainID),0) from CK_BanCP_CR A where A.maiNID=YF_Money_CR.maiNID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(' where YFID='''+Trim(YFID)+'''');
// ExecSQL;
// end;
// end
// else
// IF (uppercase(OrderUnit)='M') and (uppercase(Trim(Order_Main10.fieldbyname('QtyUnit').AsString))='Y') then
// begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('update YF_Money_CR Set Qty=(select cast(isnull(Sum(A.Qty),0)*0.9144 as decimal(18,1)) from CK_BanCP_CR A where A.MainID=YF_Money_CR.MainID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(',PS=(select isnull(count(A.mainID),0) from CK_BanCP_CR A where A.maiNID=YF_Money_CR.maiNID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(' where YFID='''+Trim(YFID)+'''');
// ExecSQL;
// end;
// end
// else
// begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(A.Qty),0) from CK_BanCP_CR A where A.MainID=YF_Money_CR.MainID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(',PS=(select isnull(count(A.mainID),0) from CK_BanCP_CR A where A.maiNID=YF_Money_CR.maiNID and A.subID=YF_Money_CR.subID and A.CRtime=YF_Money_CR.CRTime and A.CRType=''<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'') ');
// sql.Add(' where YFID='''+Trim(YFID)+'''');
// ExecSQL;
// end;
// end;
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv');
// sql.Add(' where YFID='''+Trim(YFID)+'''');
// ExecSQL;
// end;
// with ADOQueryTemp do
// begin
// Close;
// sql.Clear;
// sql.Add('select * from YF_Money_CR where YFId='''+Trim(YFID)+'''');
// Open;
// end;
// if ADOQueryTemp.FieldByName('Qty').Value=0 then
// begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('delete from YF_Money_CR where YFID='''+Trim(YFID)+'''');
// ExecSQL;
// end;
// end;
// //Next;
// end;
// end;
// Result:=True;
end;
procedure TfrmSMPK.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmSMPK.FormDestroy(Sender: TObject);
begin
frmSMPK := nil;
end;
procedure TfrmSMPK.FormShow(Sender: TObject);
begin
BaoID.SetFocus;
ReadCxGrid(<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv3, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select A.kuwei,B.* ');
sql.Add(' from CK_PBCP_CR A');
sql.Add(' inner join WFB_MJJY_PB B on A.MJID=B.MJID');
sql.Add(' where 1=2');
Open;
end;
SCreateCDS(ADOQueryTemp, CDS_MainSel);
end;
procedure TfrmSMPK.BaoIDKeyPress(Sender: TObject; var Key: Char);
var
maxno, SMFlag, KYCKFlag, FMainId: string;
FFQty: Integer;
begin
if Key = #13 then
begin
if trim(KuWei.Text) = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add(' select A.*,B.CRID ');
sql.Add(' from WFB_MJJY_PB A');
sql.Add(' inner join CK_PBCP_CR B on A.MJID=B.MJID and B.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' where A. MJID=''' + Trim(BaoID.Text) + '''');
// showmessage(SQL.Text);
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
PlaySound('wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav', 0, SND_FILENAME or SND_ASYNC);
BaoID.Text := '';
Exit;
end
else
begin
SCreateCDS(ADOQueryTemp, CDS_Main);
SInitCDSData(ADOQueryTemp, CDS_Main);
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('update CK_PBCP_CR set KuWei =' + quotedstr(trim(KuWei.Text)));
sql.Add(' where MJID=''' + Trim(BaoID.Text) + '''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
with CDS_MainSel do
begin
Append;
FieldByName('Mainid').Value := Self.CDS_Main.fieldbyname('Mainid').Value;
FieldByName('SubID').Value := Self.CDS_Main.fieldbyname('SubID').Value;
FieldByName('MJMaoZ').Value := Self.CDS_Main.fieldbyname('MJMaoZ').Value;
FieldByName('MJId').Value := Self.CDS_Main.fieldbyname('MJId').Value;
FieldByName('APXH').Value := Self.CDS_Main.fieldbyname('APXH').Value;
FieldByName('CarNo').Value := Self.CDS_Main.fieldbyname('CarNo').Value;
FieldByName('KuWei').Value := trim(KuWei.Text);
FieldByName('APBatchNo').Value := Self.CDS_Main.fieldbyname('APBatchNo').Value;
Post;
end;
BaoID.Text := '';
PlaySound('wav\<5C><>ȷ.wav', 0, SND_FILENAME or SND_ASYNC);
Exit;
except
BaoID.Text := '';
PlaySound('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>.wav', 0, SND_FILENAME or SND_ASYNC);
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>̿<EFBFBD><CCBF><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
end;
end;
procedure TfrmSMPK.Button2Click(Sender: TObject);
begin
Close;
WriteCxGrid(<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv3, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
end;
end.