D7gmYushang/发货申请(ShipmentRequest.dll)/U_OrderInPut_TC.pas

1308 lines
35 KiB
ObjectPascal
Raw Normal View History

2025-09-24 13:13:14 +08:00
unit U_OrderInPut_TC;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo,
cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit,
StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils,
cxCurrencyEdit, cxPC, Menus, cxCheckBox, cxGridCustomPopupMenu,
cxGridPopupMenu, cxLookAndFeels, cxLookAndFeelPainters, dxBarBuiltInMenu,
cxNavigator, cxDropDownEdit;
type
TfrmOrderInPut_TC = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
DataSource1: TDataSource;
Order_Sub: TClientDataSet;
ADOQuery1: TADOQuery;
cxTabControl1: TcxTabControl;
PopupMenu1: TPopupMenu;
N3: TMenuItem;
CDS_CG: TClientDataSet;
DataSource2: TDataSource;
PopupMenu2: TPopupMenu;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
Panel1: TPanel;
Label1: TLabel;
Label39: TLabel;
Label10: TLabel;
Label14: TLabel;
Label19: TLabel;
Label2: TLabel;
Label4: TLabel;
TCNO: TEdit;
TCDate: TDateTimePicker;
CustomerNoName: TBtnEditC;
Note: TMemo;
conNO: TEdit;
orderNo: TBtnEditA;
OrdPerson1: TBtnEditC;
Label13: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
CustomerNoshortName: TEdit;
Label20: TLabel;
HCAdress: TBtnEditC;
Label3: TLabel;
OrderQty: TEdit;
Label7: TLabel;
PBQty: TEdit;
Label8: TLabel;
PBPrice: TEdit;
Label9: TLabel;
PBMoney: TEdit;
Label11: TLabel;
RSQty: TEdit;
Label12: TLabel;
RSPrice: TEdit;
Label15: TLabel;
RSMoney: TEdit;
Label16: TLabel;
YFMoney: TEdit;
Label17: TLabel;
OtherMoney: TEdit;
Label18: TLabel;
THKHName: TBtnEditC;
Label22: TLabel;
THAdress: TBtnEditC;
Label23: TLabel;
FROMFHSQ: TBtnEditA;
FROMSSID: TEdit;
ToolBar2: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ORDER_MX: TClientDataSet;
cxGrid2: TcxGrid;
TV1: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
v1PRTColor: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
v1OrderUnit: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Label5: TLabel;
YWY: TBtnEditC;
Label6: TLabel;
YWZB: TBtnEditC;
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure RanFactoryBtnUpClick(Sender: TObject);
procedure CustomerNoNameBtnUpClick(Sender: TObject);
procedure CustomerNoNameBtnDnClick(Sender: TObject);
procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure YCLFactoryBtnUpClick(Sender: TObject);
procedure MPRTSCTeBieNoteBtnUpClick(Sender: TObject);
procedure OtherNoteDblClick(Sender: TObject);
procedure NoteDblClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure conNoChange(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure orderNoBtnClick(Sender: TObject);
procedure OrdPerson1BtnUpClick(Sender: TObject);
procedure orddefstr4BtnClick(Sender: TObject);
procedure THKHNameBtnUpClick(Sender: TObject);
procedure PBQtyChange(Sender: TObject);
procedure PBQtyKeyPress(Sender: TObject; var Key: Char);
procedure RSQtyChange(Sender: TObject);
procedure FROMFHSQBtnClick(Sender: TObject);
procedure Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure cxGridDBColumn1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure YWYBtnUpClick(Sender: TObject);
procedure YWYBtnDnClick(Sender: TObject);
procedure YWZBBtnUpClick(Sender: TObject);
private
procedure InitData();
procedure ZDYHelp(FButn: TcxButtonEdit; LType: string);
function SaveData(): Boolean;
function YFData(): Boolean;
function getCYNo(fconNo: string): string;
{ Private declarations }
public
PState, CopyInt, PriceFlag: Integer;
FMainId, FFMainId, FOrderNo: string;
FXS: Integer;
{ Public declarations }
end;
var
frmOrderInPut_TC: TfrmOrderInPut_TC;
newh: hwnd;
implementation
uses
U_DataLink, U_ZDYHelp, U_Fun, U_ZDYHelpSel, U_ProductOrderListSel,
U_ZdyAttachment, U_ZdyAttachGYS, U_AllFHSQListSel, U_CPManageSel;
{$R *.dfm}
function TfrmOrderInPut_TC.getCYNo(fconNo: string): string;
var
str1: string;
i: integer;
begin
str1 := trim(fconNo) + '01';
with ADOTemp do
begin
close;
sql.Clear;
sql.Add('select MainID from JYOrderCY_Main01 where CYNO=' + quotedstr(trim(str1)));
open;
end;
if not ADOTemp.IsEmpty then
begin
for i := 1 to 99 do
begin
str1 := trim(fconNo) + rightstr(inttostr(100 + i), 2);
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('select MainID from JYOrderCY_Main01 where CYNO=' + quotedstr(trim(str1)));
open;
end;
if ADOCmd.IsEmpty then
break;
end;
end;
result := str1;
end;
function TfrmOrderInPut_TC.YFData(): Boolean;
var
CRID, OrdMainId, YFID, FComTaiTou, FCRID, FFactoryName: string;
begin
Result := False;
with ADOTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(CDS_CG.fieldbyname('custName').AsString) + '''');
Open;
end;
if ADOTemp.IsEmpty = False then
begin
CRID := ADOTemp.fieldbyname('CRID').AsString;
end
else
begin
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CRID set CRID=CRID+1');
sql.Add('select * from YF_Money_CRID ');
Open;
end;
CRID := ADOCmd.fieldbyname('CRID').AsString;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where 1<>1');
Open;
end;
with ADOCmd do
begin
Append;
FieldByName('CRID').Value := StrToInt(CRID);
FieldByName('FactoryName').Value := Trim(CDS_CG.fieldbyname('custName').AsString);
FieldByName('ZdyStr1').Value := <><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where FactoryName=''' + Trim(CDS_CG.fieldbyname('custName').AsString) + '''');
sql.Add(' and mainID=''' + Trim(CDS_CG.fieldbyname('CRNO').AsString) + '''');
// sql.Add(' and subID='''+Trim(ADOQuerySub.fieldbyname('subID').AsString)+'''');
Open;
end;
if ADOTemp.IsEmpty then
begin
if GetLSNo(ADOCmd, YFID, 'PF', 'YF_Money_CR', 3, 1) = False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
YFID := Trim(ADOTemp.fieldbyname('YFID').AsString);
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where YFID=''' + Trim(YFID) + '''');
Open;
end;
with ADOCmd do
begin
if ADOTemp.IsEmpty then
Append
else
Edit;
FieldByName('YFID').Value := Trim(YFID);
FieldByName('YFTypeId').Value := Trim(CDS_CG.fieldbyname('mainID').AsString);
FieldByName('CRID').Value := StrToInt(CRID);
FieldByName('Filler').Value := Trim(DName);
FieldByName('CRType').Value := <><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value := <><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value := 1;
FieldByName('FactoryName').Value := Trim(CDS_CG.fieldbyname('custName').AsString);
FieldByName('CRTime').Value := CDS_CG.fieldbyname('CRTime').AsDateTime;
FieldByName('Qty').Value := CDS_CG.fieldbyname('Qty').AsFloat;
FieldByName('PS').Value := 0;
FieldByName('YFType').Value := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Price').Value := CDS_CG.fieldbyname('Price').AsFloat;
FieldByName('money').Value := CDS_CG.fieldbyname('money').AsFloat;
FieldByName('BBmoney').Value := CDS_CG.fieldbyname('money').AsFloat;
FieldByName('HuiLv').Value := 1;
FieldByName('BZType').Value := 'RMB';
FieldByName('ComTaiTou').Value := Trim(CDS_CG.fieldbyname('custName').AsString);
FieldByName('QtyUnit').Value := Trim(CDS_CG.fieldbyname('QtyUnit').AsString);
FieldByName('YFName').Value := '<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('MainId').Value := Trim(CDS_CG.fieldbyname('CRNO').AsString);
FieldByName('subId').Value := Trim(CDS_CG.fieldbyname('CRID').AsString);
Post;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(' where CRID=' + CRID);
ExecSQL;
end;
Result := True;
end;
procedure TfrmOrderInPut_TC.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmOrderInPut_TC.InitData();
begin
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select * from Order_TC where MainId=''' + Trim(FMainId) + '''');
Open;
end;
SCSHDataNew(ADOQuery1, Panel1, 2);
with ADOTemp do
begin
Close;
SQL.Clear;
sql.Add(' select * from Order_TC_MX where 1=1 ');
if PState = 1 then
begin
sql.Add(' and MainId=''' + Trim(FMainId) + '''');
end;
if PState = 0 then
begin
sql.Add(' and 1<>1');
end;
Open;
end;
SCreateCDS20(ADOTemp, ORDER_MX);
SInitCDSData20(ADOTemp, ORDER_MX);
end;
procedure TfrmOrderInPut_TC.ZDYHelp(FButn: TcxButtonEdit; LType: string);
var
FType, ZDYName, FText: string;
begin
end;
procedure TfrmOrderInPut_TC.FormShow(Sender: TObject);
begin
InitData();
if PState = 0 then
begin
tcno.Text := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
OrdPerson1.Text := Trim(DName);
end;
end;
function TfrmOrderInPut_TC.SaveData(): Boolean;
var
maxno, Smaxno: string;
begin
try
ADOCmd.Connection.BeginTrans;
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if Trim(FMainId) = '' then
begin
if GetLSNo(ADOCmd, maxno, 'TC', 'Order_TC', 3, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
TCNO.Text := maxno;
end
else
begin
maxno := Trim(FMainId);
end;
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from Order_TC where MainId=''' + Trim(FMainId) + '''');
Open;
end;
with ADOCmd do
begin
if Trim(FMainId) = '' then
begin
Append;
end
else
begin
Edit;
end;
FieldByName('MainId').Value := Trim(maxno);
SSetsaveSqlNew(ADOCmd, 'Order_TC', Panel1, 2);
if Trim(FMainId) = '' then
begin
FieldByName('Filler').Value := Trim(DName);
FieldByName('FillTime').Value := SGetServerDateTime(ADOTemp);
FieldByName('status').Value := '1';
end
else
begin
FieldByName('Editer').Value := Trim(DName);
FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp);
end;
Post;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select * from Order_TC where TCNO=''' + Trim(TCNO.Text) + '''');
Open;
end;
if ADOCmd.RecordCount > 1 then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EBB5A5><EFBFBD>ظ<EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
//<2F><><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>ϸ
with Order_MX do
begin
First;
while not Eof do
begin
if Trim(Order_MX.fieldbyname('SubId').AsString) = '' then
begin
if GetLSNo(ADOCmd, Smaxno, 'TCX', 'ORDER_TC_MX', 4, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
Smaxno := Trim(Order_MX.fieldbyname('SubId').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from ORDER_TC_MX where MainId=''' + Trim(maxno) + '''');
sql.Add(' and SubId=''' + Trim(Smaxno) + '''');
Open;
end;
with ADOCmd do
begin
if Trim(Order_MX.fieldbyname('SubId').AsString) = '' then
Append
else
Edit;
FieldByName('MainId').Value := Trim(maxno);
FieldByName('SubId').Value := Trim(Smaxno);
RTSetSaveDataCDS(ADOCmd, Tv1, Order_MX, 'ORDER_TC_MX', 0);
FieldByName('ConSubId').Value := Trim(Order_MX.fieldbyname('ConSubId').AsString);
Post;
end;
Next;
end;
end;
ADOCmd.Connection.CommitTrans;
Result := True;
except
Result := False;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
end;
end;
procedure TfrmOrderInPut_TC.TBSaveClick(Sender: TObject);
var
FFreal: Double;
begin
TCDate.SetFocus;
if Trim(TCNO.Text) = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Trim(YWY.Text) = '' then
begin
Application.MessageBox(<><D2B5>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Trim(YWZB.Text) = '' then
begin
Application.MessageBox(<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if ORDER_MX.IsEmpty then
begin
Application.MessageBox('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
if ORDER_MX.Locate('PRTOrderQty', null, []) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
if ORDER_MX.Locate('PRTPS', null, []) then
begin
Application.MessageBox(<><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
if ORDER_MX.Locate('PRTCODE', null, []) then
begin
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
if ORDER_MX.Locate('OrderUnit', null, []) then
begin
Application.MessageBox('<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
// if TryStrToFloat(TCQty.Text, FFreal) = False then
// begin
//// ADOCmd.Connection.RollbackTrans;
// Application.MessageBox('<27>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
// Exit;
// end;
// if Trim(TCUNIT.Text) = '' then
// begin
// Application.MessageBox('<27>˲ֵ<CBB2>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
// Exit;
// end;
if Trim(HCAdress.Text) = '' then
begin
Application.MessageBox('<27>زֵ<D8B2>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Trim(Note.Text) = '' then
begin
Application.MessageBox('<27>˲<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ', 0);
ModalResult := 1;
end;
end;
procedure TfrmOrderInPut_TC.v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'OrdColor';
flagname := '<27><>ɫ';
V1Name.Caption := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
V1Note.Caption := <><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
// MainType:=Trim(DName);
fnote := True;
if ShowModal = 1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('PRTColor').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
Self.Order_Sub.FieldByName('SOrddefstr4').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.RanFactoryBtnUpClick(Sender: TObject);
begin
{try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='RKPlace';
flagname:=<><C8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
JGFactoryName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
JGFactoryName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
end;
finally
frmZDYHelp.Free;
end; }
end;
procedure TfrmOrderInPut_TC.CustomerNoNameBtnUpClick(Sender: TObject);
begin
try
frmZdyAttachment := TfrmZdyAttachment.Create(Application);
with frmZdyAttachment do
begin
if ShowModal = 1 then
begin
CustomerNoName.Text := Trim(CDS_HZ.fieldbyname('coName').AsString);
CustomerNoName.TxtCode := Trim(CDS_HZ.fieldbyname('coCode').AsString);
CustomerNoshortName.Text := Trim(CDS_HZ.fieldbyname('CoHRName').AsString);
end;
end;
finally
frmZdyAttachment.Free;
end;
end;
procedure TfrmOrderInPut_TC.CustomerNoNameBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text := '';
TBtnEditC(Sender).TxtCode := '';
end;
procedure TfrmOrderInPut_TC.v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'OrderUnit';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ';
if ShowModal = 1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('OrderUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'PriceUnit';
flagname := '<27>۸<EFBFBD><DBB8><EFBFBD>λ';
if Trim(DParameters1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
TBAdd.Visible := False;
TBEdit.Visible := False;
TBDel.Visible := False;
end;
if ShowModal = 1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('PriceUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.YCLFactoryBtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
MainType := TEdit(Sender).Name;
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.MPRTSCTeBieNoteBtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
TEdit(Sender).Text := ReturnStr;
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmOrderInPut_TC.OtherNoteDblClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
i: integer;
begin
fsj := Trim(TMemo(Sender).Hint);
FWZ := Pos('/', fsj);
i := 0;
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
Note.Lines.Clear;
with ClientDataSet1 do
begin
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean = True then
begin
i := i + 1;
Note.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString)
end;
Next;
end;
end;
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmOrderInPut_TC.NoteDblClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
i: integer;
begin
fsj := Trim(TMemo(Sender).Hint);
FWZ := Pos('/', fsj);
i := 0;
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
Note.Lines.Clear;
with ClientDataSet1 do
begin
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean = True then
begin
i := i + 1;
Note.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString)
end;
Next;
end;
end;
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmOrderInPut_TC.FormCreate(Sender: TObject);
begin
TCDate.DateTime := SGetServerDateTime(ADOTemp);
end;
procedure TfrmOrderInPut_TC.conNoChange(Sender: TObject);
var
ConMainId: string;
begin
end;
procedure TfrmOrderInPut_TC.ToolButton4Click(Sender: TObject);
begin
CDS_CG.Append;
CDS_CG.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', date());
CDS_CG.Post;
end;
procedure TfrmOrderInPut_TC.ToolButton5Click(Sender: TObject); //<2F>ĸ<EFBFBD><C4B8>¼<EFBFBD>û<EFBFBD>ҵ<EFBFBD>
begin
if CDS_CG.IsEmpty then
exit;
if CDS_CG.FieldByName('defBit1').AsBoolean then
begin
if Application.MessageBox('<27>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɲɹ<C9B2><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD><EFBFBD><EFBFBD>Ϣ', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete BP_InOut_CF where CRNO=''' + Trim(CDS_CG.fieldbyname('CRNO').AsString) + '''');
sql.Add('delete YF_Money_CR where mainID=''' + Trim(CDS_CG.fieldbyname('CRNO').AsString) + '''');
ExecSQL;
end;
CDS_CG.Delete;
end;
procedure TfrmOrderInPut_TC.ToolButton6Click(Sender: TObject); //<2F>ĸ<EFBFBD><C4B8>¼<EFBFBD>û<EFBFBD>ҵ<EFBFBD>
var
strlist: Tstringlist;
i: integer;
maxno: string;
begin
// strlist:=Tstringlist.Create;
if (CDS_CG.Locate('ssel', true, []) and CDS_CG.Locate('defbit1', true, [])) then
begin
if Application.MessageBox('<27><>ѡ<EFBFBD><D1A1>Ϣ<EFBFBD><CFA2><EFBFBD>вɹ<D0B2><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
exit;
end;
with CDS_CG do
begin
DisableControls;
first;
while not eof do
begin
if fieldbyname('ssel').AsBoolean then
begin
if trim(fieldbyname('custName').AsString) = '' then
begin
Application.MessageBox('<27><><EFBFBD>ɲɹ<C9B2><C9B9><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>Ӧ<EFBFBD>̲<EFBFBD><CCB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
EnableControls;
Exit;
end;
// IF strlist.IndexOf(trim(fieldbyname('custName').AsString))<0 then
// strlist.Add(trim(fieldbyname('custName').AsString));
end;
next;
end;
first;
EnableControls;
end;
ADOCmd.Connection.BeginTrans;
try
with CDS_CG do
begin
DisableControls;
first;
while not eof do
begin
if fieldbyname('ssel').AsBoolean then
begin
// maxNo:=trim(orderNo.Text)+'-'+CDS_CG.fieldbyname('ID').AsString;
// if trim(fieldbyname('custName').AsString)=trim(strlist.Strings[i]) then
// begin
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('update BP_InOut_CF SET defBit1=1');
// sql.Add('inoutNO='+quotedstr(trim(orderNo.Text)+'-'+trim(maxno)));
sql.Add('where CRNO=' + quotedstr(CDS_CG.fieldbyname('CRNO').AsString));
execsql;
end;
if pos('<27><><EFBFBD><EFBFBD>', trim(CDS_CG.fieldbyname('custName').AsString)) < 1 then
begin
if not YFData() then
begin
ADOCmd.Connection.RollbackTrans;
application.MessageBox(<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
end;
// end;
end;
next;
;
end;
first;
EnableControls;
end;
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('update BP_InOut_CF SET inoutNO=rtrim(B.orderNo)+''-''+cast(A.CRID as varchar) ');
sql.Add('from BP_InOut_CF A');
sql.Add('inner join JYOrder_main B on B.mainID=A.mainID');
sql.Add('where A.mainID=' + quotedstr(CDS_CG.fieldbyname('mainID').AsString));
execsql;
end;
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('update BP_InOut_CF SET inoutNO=(select min(inoutNO) from BP_InOut_CF X where X.mainID=BP_InOut_CF.mainID and X.custName=BP_InOut_CF.custName)');
sql.Add('where mainID=' + quotedstr(CDS_CG.fieldbyname('mainID').AsString));
execsql;
end;
{ for i:=0 to strlist.Count-1 do
begin
if GetLSNo(ADOCmd,maxno,'',trim(orderNO.Text),2,0)=False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
// i:=i+1;
end; }
ADOCmd.Connection.CommitTrans;
application.MessageBox('<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD>ɲɹ<C9B2><C9B9><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
InitData();
except
ADOCmd.Connection.RollbackTrans;
CDS_CG.EnableControls;
application.MessageBox('<27><><EFBFBD>ɲɹ<C9B2><C9B9><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
end;
end;
procedure TfrmOrderInPut_TC.orderNoBtnClick(Sender: TObject);
var
ConSubId: string;
begin
ConSubId := '';
frmProductOrderListSel := TfrmProductOrderListSel.create(self);
with frmProductOrderListSel do
begin
if showmodal = 1 then
begin
ConSubId := trim(Order_Main.fieldbyname('subid').asstring);
SELF.ConNo.Text := Trim(Order_Main.fieldbyname('ConNo').AsString);
SELF.OrderNo.Text := Trim(Order_Main.fieldbyname('orderNo').AsString);
Self.CustomerNoName.Text := Trim(Order_Main.fieldbyname('CustomerNoName').AsString);
OrdPerson1.Text := trim(Order_Main.fieldbyname('ywy').AsString);
OrderQty.Text := Trim(Order_Main.fieldbyname('PRTOrderQty').AsString);
// OrderUnit.Text := Trim(Order_Main.fieldbyname('OrderUnit').AsString);
while Order_Main.locate('SSel', true, []) do
begin
if orderNo.Text <> trim(frmProductOrderListSel.Order_Main.Fieldbyname('orderNo').AsString) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
break;
end;
with self.ORDER_MX do
begin
append;
// Fieldbyname('PrtKuanNO').value := trim(frmContractListSel.Order_Main.Fieldbyname('SCSKX').AsString);
Fieldbyname('PrtColor').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('PrtColor').AsString);
Fieldbyname('OrderUnit').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('OrderUnit').AsString);
Fieldbyname('Prtcode').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('MPRTCODE').AsString);
Fieldbyname('PRTMF').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('MPRTMF').AsString);
Fieldbyname('PrtKZ').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('MPRTKZ').AsString);
Fieldbyname('PRTOrderQty').value := 0;
Fieldbyname('PRTPs').value := 0;
end;
Order_Main.Edit;
Order_Main.fieldbyname('SSel').value := false;
end;
end;
free;
end;
if ConSubId = '' then
exit;
end;
procedure TfrmOrderInPut_TC.OrdPerson1BtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if Trim(flag) = 'OrdDefStr2' then
begin
//flag:='OrdDefStr2';
V1Name.Caption := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
V1Note.Caption := <><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
fnote := True;
end;
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
if Trim(flag) = 'MPRTCode' then
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1 * from JYOrder_Main where MPRTCode=''' + Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + '''');
sql.Add(' order by FillTime desc');
Open;
end;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.orddefstr4BtnClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if Trim(flag) = 'OrdDefStr2' then
begin
//flag:='OrdDefStr2';
V1Name.Caption := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
V1Note.Caption := <><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
fnote := True;
end;
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
if Trim(flag) = 'MPRTCode' then
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1 * from JYOrder_Main where MPRTCode=''' + Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + '''');
sql.Add(' order by FillTime desc');
Open;
end;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.THKHNameBtnUpClick(Sender: TObject);
begin
try
frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal = 1 then
begin
THKHName.Text := Trim(CDS_HZ.fieldbyname('coName').AsString);
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmOrderInPut_TC.PBQtyChange(Sender: TObject);
begin
if PBQty.Text = '' then
begin
PBMoney.Text := '';
Exit;
end;
if PBPrice.Text = '' then
begin
PBMoney.Text := '';
Exit;
end;
pbmoney.Text := FloatToStr(strtofloat(PBQty.Text) * strtofloat(pbprice.Text));
end;
procedure TfrmOrderInPut_TC.PBQtyKeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['0'..'9', '.', #8]) then
Key := #0;
end;
procedure TfrmOrderInPut_TC.RSQtyChange(Sender: TObject);
begin
if RSQty.Text = '' then
begin
RSMoney.Text := '';
Exit;
end;
if RSPrice.Text = '' then
begin
RSMoney.Text := '';
Exit;
end;
RSMoney.Text := FloatToStr(strtofloat(RSQty.Text) * strtofloat(RSPrice.Text));
end;
procedure TfrmOrderInPut_TC.FROMFHSQBtnClick(Sender: TObject);
begin
try
frmAllFHSQListSel := TfrmAllFHSQListSel.Create(self);
with frmAllFHSQListSel do
begin
// CANSHU3 := '<27>ֻ<EFBFBD>';
if ShowModal = 1 then
begin
FROMFHSQ.Text := Trim(Order_Main.fieldbyname('FSID').AsString);
FROMSSID.Text := Trim(ClientDataSet2.fieldbyname('SSID').AsString);
Self.CustomerNoName.Text := Trim(Order_Main.fieldbyname('CustomerNoName').AsString);
// CPName.Text := Trim(ClientDataSet2.fieldbyname('SPrtCodeName').AsString);
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from jyorder_main A INNER JOIN jyorder_SUB B on a.mainid=b.mainid where SUBID=' + quotedstr(Trim(ClientDataSet2.fieldbyname('SUBID').AsString)));
// sql.Add(' order by FillTime desc');
Open;
end;
if ADOTemp.IsEmpty = False then
begin
orderNo.Text := Trim(ADOTemp.fieldbyname('orderNo').AsString);
conNO.Text := Trim(ADOTemp.fieldbyname('conNO').AsString);
// ConSubId := trim(ADOTemp.fieldbyname('subid').asstring);
OrderQty.Text := Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString);
// OrderUnit.Text := Trim(ADOTemp.fieldbyname('OrderUnit').AsString);
// TCUnit.Text := Trim(ADOTemp.fieldbyname('OrderUnit').AsString);
end;
with self.ORDER_MX do
begin
append;
Fieldbyname('Prtcode').value := trim(frmAllFHSQListSel.ClientDataSet2.Fieldbyname('SPrtCodename').AsString);
Fieldbyname('PrtColor').value := trim(frmAllFHSQListSel.ClientDataSet2.Fieldbyname('PrtColor').AsString);
Fieldbyname('OrderUnit').value := trim(frmAllFHSQListSel.ClientDataSet2.Fieldbyname('OrderUnit').AsString);
// Fieldbyname('PRTMF').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('MPRTMF').AsString);
// Fieldbyname('PrtKZ').value := trim(frmProductOrderListSel.Order_Main.Fieldbyname('MPRTKZ').AsString);
Fieldbyname('PRTOrderQty').value := 0;
Fieldbyname('PRTPs').value := 0;
end;
end;
end;
finally
frmAllFHSQListSel.Free;
end;
end;
procedure TfrmOrderInPut_TC.Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
frmCPManageSel := TfrmCPManageSel.Create(self);
with frmCPManageSel do
begin
if showmodal = 1 then
begin
with ORDER_MX do
begin
Edit;
fieldbyname('PRTCODE').AsString := CDS_Main.fieldbyname('CYNo').asstring;
fieldbyname('PRTMF').AsString := CDS_Main.fieldbyname('CYYXMF').asstring;
fieldbyname('PRTKZ').AsString := CDS_Main.fieldbyname('CYkz').asstring;
end;
end;
free;
end;
end;
procedure TfrmOrderInPut_TC.ToolButton1Click(Sender: TObject);
begin
with ORDER_MX do
begin
APPEND;
FieldByName('PRTColor').Value := '';
FieldByName('PRTOrderQty').Value := 0;
FieldByName('PRTPs').Value := 0;
Post;
end;
end;
procedure TfrmOrderInPut_TC.ToolButton2Click(Sender: TObject);
begin
if ORDER_MX.IsEmpty then
Exit;
if Trim(ORDER_MX.fieldbyname('SubId').AsString) <> '' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete ORDER_TC_MX where SubId=''' + Trim(ORDER_MX.fieldbyname('SubId').AsString) + '''');
ExecSQL;
end;
end;
ORDER_MX.Delete;
end;
procedure TfrmOrderInPut_TC.cxGridDBColumn1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
frmCPManageSel := TfrmCPManageSel.Create(self);
with frmCPManageSel do
begin
if showmodal = 1 then
begin
with ORDER_MX do
begin
Edit;
FieldByName('PRTColor').Value := CDS_Main.fieldbyname('CYcolor').asstring;
FieldByName('PRTCODE').Value := CDS_Main.fieldbyname('CYNo').asstring;
FieldByName('PRTmf').Value := CDS_Main.fieldbyname('CYyxmf').asstring;
FieldByName('prtkz').Value := CDS_Main.fieldbyname('CYkz').asstring;
Post;
end;
end;
free;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmOrderInPut_TC.YWYBtnUpClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'YWY';
flagname := <><D2B5>Ա';
if ShowModal = 1 then
begin
Self.YWY.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut_TC.YWYBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text := '';
TBtnEditC(Sender).TxtCode := '';
end;
procedure TfrmOrderInPut_TC.YWZBBtnUpClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'SalesClass';
flagname := <><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
YWZB.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
end.