D10myYicheng/财务管理(Financial.dll)/U_CWYSList.pas
2025-05-27 14:08:09 +08:00

966 lines
29 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_CWYSList;
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, cxCalendar, cxButtonEdit,
cxTextEdit, cxPC, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters,
cxNavigator, dxBarBuiltInMenu, dxSkinsCore, dxSkinsDefaultPainters,
dxDateRanges, U_BaseList, Vcl.Menus;
type
TfrmCWYSList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ADOQueryMain: TADOQuery;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
FactoryName: TEdit;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v2CRTime: TcxGridDBColumn;
v2Qty: TcxGridDBColumn;
v2QtyUnit: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
GPM_1: TcxGridPopupMenu;
DS_1: TDataSource;
CDS_1: TClientDataSet;
ToolButton3: TToolButton;
v2Column1: TcxGridDBColumn;
VYB: TcxGridDBColumn;
v2FactoryName: TcxGridDBColumn;
v2CKNO: TcxGridDBColumn;
v2Note: TcxGridDBColumn;
v2P_CodeName: TcxGridDBColumn;
v2ps: TcxGridDBColumn;
v2P_Color: TcxGridDBColumn;
P_CodeName: TEdit;
Label4: TLabel;
Label8: TLabel;
P_Color: TEdit;
v2P_Code: TcxGridDBColumn;
CheckBox1: TCheckBox;
Label6: TLabel;
P_Code: TEdit;
v2ConNo: TcxGridDBColumn;
v2OrderNo: TcxGridDBColumn;
v2Column14: TcxGridDBColumn;
v2P_HX: TcxGridDBColumn;
Label1: TLabel;
P_HX: TEdit;
cxTabControl1: TcxTabControl;
Label10: TLabel;
ConNo: TEdit;
Label11: TLabel;
OrderNo: TEdit;
v2BZType: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
VC_SSel: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
Tv1Column7: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
ToolButton4: TToolButton;
Tv1Column9: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column12: TcxGridDBColumn;
Tv1Column13: TcxGridDBColumn;
Tv1Column14: TcxGridDBColumn;
Label2: TLabel;
guino: TEdit;
Tv1Column11: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure FactoryNameKeyPress(Sender: TObject; var Key: Char);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure cxTabControl1Change(Sender: TObject);
procedure v2Column3PropertiesEditValueChanged(Sender: TObject);
procedure v2ConNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure v2OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure v2FactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure ButtonEdit(Sender: TObject; AButtonIndex: Integer);
procedure ToolButton4Click(Sender: TObject);
procedure Tv1Column10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure v2CRTimeCompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
private
{ Private declarations }
procedure InitGrid();
public
fFlag: integer;
{ Public declarations }
RKFlag, FCYID, fmanage, FZKType: string;
end;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_KHSel, U_ProductOrderSel,
U_ProductOrderListSel3, U_ZDYHelpSel;
{$R *.dfm}
procedure TfrmCWYSList.InitGrid();
var
WSql: string;
begin
WSql := SGetFilters(Panel1, 1, 2);
if Trim(WSql) <> '' then
WSql := ' and ' + WSql;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
Filtered := False;
sql.Add(' select A.* ');
sql.Add(' from CW_Money_CR A ');
sql.Add(' where A.CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ');
case cxTabControl1.TabIndex of
0:
begin
sql.Add(' and isnull(BZType,'''')=''$'' ');
end;
1:
begin
sql.Add(' and isnull(BZType,'''')=''<27><>'' ');
end;
2:
begin
sql.Add(' and isnull(BZType,'''')=''<27>'' ');
end;
end;
if CheckBox1.Checked then
begin
sql.Add(' and A.CRTime>=''' + FormatDateTime('yyyy-MM-dd', begdate.DateTime) + ''' ');
sql.Add(' and CRTime<''' + FormatDateTime('yyyy-MM-dd', Enddate.DateTime + 1) + ''' ');
end;
sql.Add(WSql);
SQL.Add('ORDER BY CRTime DESC ,GUINO,FactoryName');
Open;
end;
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCWYSList.N1Click(Sender: TObject);
var
FValue, FFValue, FColumn, FFColumn, FCWID: string;
begin
FCWID := CDS_1.FieldByName('CWID').AsString;
FColumn := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
FValue := Trim(CDS_1.fieldbyname(FColumn).AsString);
if FColumn <> 'IVNo' then
begin
Application.MessageBox('Ŀǰֻ<C7B0><D6BB><EFBFBD><EFBFBD><E6BBBB>Ʊ<EFBFBD><C6B1>!', '<27><>ʾ', 0);
Exit;
end;
with CDS_1 do
begin
DisableControls;
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean and (FieldByName('status').AsString = '0') then
begin
Edit;
if FValue = '' then
begin
CDS_1.FieldByName(FColumn).Value := null;
end
else
begin
CDS_1.FieldByName(FColumn).Value := FValue;
end;
Post;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set ' + FColumn + '=' + quotedstr(Trim(FValue)));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end;
Next;
end;
CDS_1.Locate('CWID', FCWID, []);
EnableControls;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmCWYSList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmCWYSList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>');
Close;
end;
procedure TfrmCWYSList.TBDelClick(Sender: TObject);
begin
if CDS_1.IsEmpty then
Exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' select * from CW_Money_CR');
sql.Add(' where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
SQL.Add(' and status=''1''');
Open;
end;
if ADOQueryCmd.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
Exit;
end;
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(' insert into ZDel_CW_Money_CR ');
sql.Add(' select * from CW_Money_CR where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
sql.Add(' Update ZDel_CW_Money_CR Set DelTime=getdate(),DelName=''' + Trim(DName) + ''',DelCode=''' + Trim(DCode) + '''');
sql.Add(' where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
sql.Add(' delete CW_Money_CR where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
execsql;
end;
ADOQueryCmd.Connection.CommitTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_DZ_IN_CPCK ');
sql.Add(' @DataID=' + QuotedStr(Trim(CDS_1.fieldbyname('IVNO').AsString)));
open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryCmd.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
CDS_1.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmCWYSList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>');
Enddate.DateTime := SGetServerDate(ADOQueryTemp);
begdate.DateTime := Enddate.DateTime;
InitGrid();
end;
procedure TfrmCWYSList.TBRafreshClick(Sender: TObject);
begin
begdate.SetFocus;
InitGrid();
end;
procedure TfrmCWYSList.cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
FPS, FQty, FPrice, FBZFee, FMoney: Double;
begin
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
with CDS_1 do
begin
Edit;
FieldByName(FFieldName).Value := Trim(mvalue);
Post;
FPS := CDS_1.fieldbyname('PS').AsFloat;
FQty := CDS_1.fieldbyname('Qty').AsFloat;
FBZFee := CDS_1.fieldbyname('QTFee').AsFloat;
FPrice := CDS_1.fieldbyname('Price').AsFloat;
FMoney := CDS_1.fieldbyname('Money').AsFloat;
end;
if Trim(FFieldName) <> 'Money' then
begin
FMoney := FQty * FPrice + FBZFee;
end;
with CDS_1 do
begin
Edit;
FieldByName('Money').Value := FMoney;
Post;
end;
if Trim(FFieldName) <> 'Money' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set ' + FFieldName + '=' + Trim(mvalue));
sql.Add(' ,Money=' + FloatToStr(FMoney));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end
else
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set ' + FFieldName + '=' + Trim(mvalue));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end;
Tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmCWYSList.ToolButton1Click(Sender: TObject);
begin
if CDS_1.IsEmpty then
exit;
try
with CDS_1 do
begin
DisableControls;
First;
while not Eof do
begin
if CDS_1.fieldbyname('SSel').AsBoolean then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' select * from CW_Money_CR');
sql.Add(' where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
SQL.Add(' and status=''1'' ');
Open;
end;
if ADOQueryCmd.IsEmpty = False then
begin
CDS_1.EnableControls;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.add('update CW_Money_CR set Chker=''' + trim(DName) + ''',Chktime=getdate(),status=''1'' ');
sql.add('where CWID=''' + trim(CDS_1.fieldbyname('CWID').asstring) + ''' ');
execsql;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_DZ_IN_CPCK ');
sql.Add(' @DataID=' + QuotedStr(Trim(CDS_1.fieldbyname('IVNO').AsString)));
open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
begin
CDS_1.EnableControls;
Application.MessageBox(PChar(ADOQueryCmd.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
CDS_1.Edit;
CDS_1.FieldByName('status').Value := '1';
CDS_1.FieldByName('Chker').Value := DName;
CDS_1.Post;
end;
Next;
end;
EnableControls;
end;
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>', '<27><>ʾ');
except
CDS_1.EnableControls;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>', '<27><>ʾ');
end;
end;
procedure TfrmCWYSList.ToolButton2Click(Sender: TObject);
begin
if CDS_1.IsEmpty then
exit;
try
with CDS_1 do
begin
DisableControls;
First;
while not Eof do
begin
if CDS_1.fieldbyname('SSel').AsBoolean then
begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add(' select * from CW_Money_CR');
// sql.Add(' where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
// SQL.Add(' and Chker=' + QuotedStr(trim(DName)));
// Open;
// end;
//
// if ADOQueryCmd.IsEmpty then
// begin
// CDS_1.EnableControls;
// Application.MessageBox('<27><><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD>!', '<27><>ʾ', 0);
// Exit;
// end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.add('update CW_Money_CR set Chker=null,Chktime=null,status=''0'' ');
sql.add('where CWID=''' + trim(CDS_1.fieldbyname('CWID').asstring) + ''' ');
execsql;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_DZ_IN_CPCK ');
sql.Add(' @DataID=' + QuotedStr(Trim(CDS_1.fieldbyname('IVNO').AsString)));
open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
begin
CDS_1.EnableControls;
Application.MessageBox(PChar(ADOQueryCmd.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
CDS_1.Edit;
CDS_1.FieldByName('status').Value := '0';
CDS_1.FieldByName('Chker').Value := '';
CDS_1.Post;
end;
Next;
end;
end;
CDS_1.EnableControls;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳ɹ<CBB3>', '<27><>ʾ');
except
CDS_1.EnableControls;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>', '<27><>ʾ');
end;
end;
procedure TfrmCWYSList.ToolButton3Click(Sender: TObject);
var
MFactoryNo, MFactoryName, MBZType, maxId: string;
begin
if GetLSNo(ADOQueryCmd, maxId, 'YS', 'CW_Money_CR', 4, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
case cxTabControl1.TabIndex of
0:
begin
MBZType := '$';
end;
1:
begin
MBZType := '<27><>';
end;
2:
begin
MBZType := '<27>';
end;
end;
// try
// frmKHSel := TfrmKHSel.Create(Application);
// with frmKHSel do
// begin
// if ShowModal = 1 then
// begin
// MFactoryNo := Trim(Order_Main.fieldbyname('CoCode').AsString);
// MFactoryName := Trim(Order_Main.fieldbyname('CoHRName').AsString);
// end;
// end;
// finally
// frmKHSel.Free;
// end;
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'KHNAME';
flagname := '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
with ClientDataSet1 do
begin
// MFactoryNo := Trim(Order_Main.fieldbyname('CoCode').AsString);
MFactoryName := FieldByName('ZDYName').AsString;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
if trim(MFactoryName) = '' then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from CW_Money_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('CWID').Value := Trim(maxId);
FieldByName('Filler').Value := Trim(DName);
FieldByName('CRType').Value := <>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value := <><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value := 1;
FieldByName('FactoryNo').Value := MFactoryNo;
FieldByName('FactoryName').Value := MFactoryName;
FieldByName('HZFactoryNo').Value := MFactoryNo;
FieldByName('HZFactoryName').Value := MFactoryName;
FieldByName('CRTime').Value := formatdateTIme('yyyy-MM-dd', SGetServerDate(ADOQueryTemp));
FieldByName('BZType').Value := MBZType;
Post;
end;
with Self.CDS_1 do
begin
Append;
FieldByName('CWID').Value := Trim(maxId);
FieldByName('FactoryNo').Value := MFactoryNo;
FieldByName('FactoryName').Value := MFactoryName;
FieldByName('HZFactoryNo').Value := MFactoryNo;
FieldByName('HZFactoryName').Value := MFactoryName;
FieldByName('CRTime').Value := SGetServerDate(ADOQueryTemp);
FieldByName('BZType').Value := MBZType;
Post;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmCWYSList.ToolButton4Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmCWYSList.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
var
MOrderUnit: string;
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'OrderUnit';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ';
if ShowModal = 1 then
begin
MOrderUnit := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
with CDS_1 do
begin
Edit;
FieldByName('QtyUnit').Value := MOrderUnit;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set QtyUnit=' + quotedstr(Trim(MOrderUnit)));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmCWYSList.FactoryNameKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmCWYSList.ButtonEdit(Sender: TObject; AButtonIndex: Integer);
var
FComTaiTou: string;
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'GSTTDZ';
flagname := '<27><>˾̧ͷ';
if ShowModal = 1 then
begin
FComTaiTou := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
with Self.CDS_1 do
begin
Edit;
FieldByName('ComTaiTou').Value := Trim(FComTaiTou);
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set ComTaiTou=' + quotedstr(Trim(FComTaiTou)));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end;
procedure TfrmCWYSList.Tv1Column10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
var
MFactoryNo, MFactoryName: string;
begin
try
frmKHSel := TfrmKHSel.Create(Application);
with frmKHSel do
begin
if ShowModal = 1 then
begin
MFactoryNo := Trim(Order_Main.fieldbyname('CoCode').AsString);
MFactoryName := Trim(Order_Main.fieldbyname('CoHRName').AsString);
end;
end;
finally
frmKHSel.Free;
end;
with CDS_1 do
begin
Edit;
FieldByName('MiddleNo').Value := MFactoryNo;
FieldByName('MiddleName').Value := MFactoryName;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set MiddleNo=' + quotedstr(Trim(MFactoryNo)));
sql.Add(',MiddleName=' + quotedstr(Trim(MFactoryName)));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmCWYSList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select * from CW_Money_CR');
sql.Add(' where CWID=''' + Trim(CDS_1.fieldbyname('CWID').AsString) + '''');
SQL.Add(' and status=''1'' ');
Open;
end;
if not ADOQueryTemp.IsEmpty then
begin
TV1.OptionsData.Editing := False;
end
else
begin
TV1.OptionsData.Editing := True;
end;
if Trim(CDS_1.fieldbyname('FromDataID1').AsString) <> '' then
begin
v2CRTime.Options.Editing := False;
v2FactoryName.Options.Editing := False;
v2OrderNo.Options.Editing := False;
v2ConNo.Options.Editing := False;
v2CKNO.Options.Editing := False;
v2P_Code.Options.Editing := False;
v2P_CodeName.Options.Editing := False;
v2P_Color.Options.Editing := False;
v2P_HX.Options.Editing := False;
v2ps.Options.Editing := False;
v2Qty.Options.Editing := False;
v2QtyUnit.Options.Editing := False;
v2BZType.Options.Editing := False;
end
else
begin
v2CRTime.Options.Editing := True;
v2FactoryName.Options.Editing := True;
v2OrderNo.Options.Editing := True;
v2ConNo.Options.Editing := True;
v2CKNO.Options.Editing := True;
v2P_Code.Options.Editing := True;
v2P_CodeName.Options.Editing := True;
v2P_Color.Options.Editing := True;
v2P_HX.Options.Editing := True;
v2ps.Options.Editing := True;
v2Qty.Options.Editing := True;
v2QtyUnit.Options.Editing := True;
v2BZType.Options.Editing := True;
end;
end;
procedure TfrmCWYSList.v2Column3PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_1 do
begin
Edit;
FieldByName(FFieldName).Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set ' + FFieldName + '=' + quotedstr(Trim(mvalue)));
sql.Add('where CWID=' + quotedstr(Trim(CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmCWYSList.v2ConNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmProductOrderSel := TfrmProductOrderSel.Create(Application);
with frmProductOrderSel do
begin
// Forderno := Self.CDS_1.fieldbyname('QCOrderNo').AsString;
if ShowModal = 1 then
begin
with Self.CDS_1 do //ҳ<><D2B3><EFBFBD><EFBFBD>ʾ
begin
Edit;
FieldByName('ConMainId').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('MainId').AsString);
FieldByName('ConSubId').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SubId').AsString);
FieldByName('ConNo').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('ConNo').AsString);
FieldByName('P_Color').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSColor').AsString);
FieldByName('P_HX').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSHX').AsString);
FieldByName('P_CodeName').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSName').AsString);
FieldByName('P_Code').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSCode').AsString);
FieldByName('Price').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSPrice').AsString);
FieldByName('QtyUnit').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSUnit').AsString);
FieldByName('Qty').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSQty').AsString);
FieldByName('Note').Value := Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSNote').AsString);
post
end;
with self.ADOQueryCmd do //<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set ConMainId=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('MainId').AsString)));
sql.Add(',ConSubId=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SubId').AsString)));
sql.Add(',ConNo=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('ConNo').AsString)));
sql.Add(',P_Color=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSColor').AsString)));
sql.Add(',P_HX=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSHX').AsString)));
sql.Add(',P_CodeName=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSName').AsString)));
sql.Add(',P_Code=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSCode').AsString)));
sql.Add(',Price=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSPrice').AsString)));
sql.Add(',QtyUnit=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSUnit').AsString)));
sql.Add(',Qty=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSQty').AsString)));
sql.Add(',Note=' + quotedstr(Trim(frmProductOrderSel.Order_Main.fieldbyname('SCSNote').AsString)));
sql.Add('where CWID=' + quotedstr(Trim(Self.CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end;
end;
finally
frmProductOrderSel.Free;
end;
end;
procedure TfrmCWYSList.v2CRTimeCompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
begin
inherited;
if (ARow1.Values[tV1Column11.Index] = ARow2.Values[tV1Column11.Index]) and (ARow1.Values[v2FactoryName.Index] = ARow2.Values[v2FactoryName.Index]) then
AAreEqual := True
else
AAreEqual := False;
end;
procedure TfrmCWYSList.v2FactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
frmKHSel := TfrmKHSel.Create(Application);
with frmKHSel do
begin
if ShowModal = 1 then
begin
with Self.CDS_1 do
begin
Edit;
FieldByName('FactoryNo').Value := Trim(frmKHSel.Order_Main.fieldbyname('CoCode').AsString);
FieldByName('FactoryName').Value := Trim(frmKHSel.Order_Main.fieldbyname('KHName').AsString);
post
end;
with self.ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set FactoryNo=' + quotedstr(Trim(frmKHSel.Order_Main.fieldbyname('CoCode').AsString)));
sql.Add(',FactoryName=' + quotedstr(Trim(frmKHSel.Order_Main.fieldbyname('KHName').AsString)));
sql.Add('where CWID=' + quotedstr(Trim(Self.CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end;
end;
end;
procedure TfrmCWYSList.v2OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmProductOrderListSel3 := TfrmProductOrderListSel3.Create(Application);
with frmProductOrderListSel3 do
begin
if ShowModal = 1 then
begin
with Self.CDS_1 do
begin
Edit;
FieldByName('OrdMainId').Value := Trim(frmProductOrderListSel3.Order_Main.fieldbyname('MainId').AsString);
// FieldByName('OrdSubId').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString);
FieldByName('OrderNo').Value := Trim(frmProductOrderListSel3.Order_Main.fieldbyname('OrderNo').AsString);
post
end;
with self.ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update CW_Money_CR set OrdMainId=' + quotedstr(Trim(frmProductOrderListSel3.Order_Main.fieldbyname('MainId').AsString)));
// sql.Add(',OrdSubId=' + quotedstr(Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString)));
sql.Add(',OrderNo=' + quotedstr(Trim(frmProductOrderListSel3.Order_Main.fieldbyname('OrderNo').AsString)));
sql.Add('where CWID=' + quotedstr(Trim(Self.CDS_1.fieldbyname('CWID').AsString)));
ExecSQL;
end;
end;
end;
finally
frmProductOrderSel.Free;
end;
end;
procedure TfrmCWYSList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
end.