D7myYunxiang/云翔财务(Money.dll)/U_YSMXlistMonDayDZEY.pas

1090 lines
32 KiB
ObjectPascal
Raw Normal View History

2025-01-20 13:04:03 +08:00
unit U_YSMXlistMonDayDZEY;
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, cxDropDownEdit, RM_e_Xls, BtnEdit, cxPC, Menus, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu;
type
TfrmYSMXlistMonDayDZEY = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxCRTime: TcxGridDBColumn;
cxMoneyYe: TcxGridDBColumn;
cxQty: TcxGridDBColumn;
cxQtyUnit: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
v2Price: TcxGridDBColumn;
VMoney: TcxGridDBColumn;
v2BBMoney: TcxGridDBColumn;
v2MPRTCodeName: TcxGridDBColumn;
Label4: TLabel;
OrdDefNote3: TComboBox;
ToolButton3: TToolButton;
RMXLSExport1: TRMXLSExport;
v2gangNo: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2note: TcxGridDBColumn;
Panetime: TPanel;
v2Column2: TcxGridDBColumn;
cxTabControl1: TcxTabControl;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
Panel2: TPanel;
Label2: TLabel;
begdate: TDateTimePicker;
Panel3: TPanel;
Label1: TLabel;
Label3: TLabel;
FBegDate: TDateTimePicker;
FEndDate: TDateTimePicker;
Panel4: TPanel;
Label5: TLabel;
factoryName: TBtnEditA;
RadioGroup1: TRadioGroup;
PopupMenu1: TPopupMenu;
N6: TMenuItem;
N7: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
v2Column8: TcxGridDBColumn;
Panel7: TPanel;
v2Column9: TcxGridDBColumn;
v2Column10: TcxGridDBColumn;
v2Column11: TcxGridDBColumn;
ToolButton2: TToolButton;
PopupMenu2: TPopupMenu;
Panel9: TPanel;
LabBZ: TLabel;
LabGYS: TLabel;
Label22: TLabel;
P_CodeName: TEdit;
Label6: TLabel;
P_Color: TEdit;
Label7: TLabel;
P_HX: TEdit;
v2Column12: TcxGridDBColumn;
Label10: TLabel;
GYName: TEdit;
Panel5: TPanel;
Label15: TLabel;
Label16: TLabel;
Panel6: TPanel;
Label8: TLabel;
Label9: TLabel;
Label11: TLabel;
ConNo: TEdit;
v2Column13: TcxGridDBColumn;
v2Column14: TcxGridDBColumn;
v2Column15: TcxGridDBColumn;
Tv2Column1: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure factoryNameBtnClick(Sender: TObject);
procedure v2Column3PropertiesEditValueChanged(Sender: TObject);
procedure v2Column3CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure ToFactoryNameChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure cxQtyPropertiesEditValueChanged(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure Tv2StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
procedure N3Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure P_CodeNameChange(Sender: TObject);
procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure v2notePropertiesEditValueChanged(Sender: TObject);
private
{ Private declarations }
FFEndDate, FFBegDate: TDateTime;
FLR: string;
procedure InitGrid();
public
{ Public declarations }
RKFlag, FCYID: string;
fType, FMX, FBZ: string;
PState: Integer;
end;
var
frmYSMXlistMonDayDZEY: TfrmYSMXlistMonDayDZEY;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_RTFun, U_ZdyAttachGYS, U_KHListSelJJ,
U_KHSKInPut, U_KHSKListView;
{$R *.dfm}
procedure TfrmYSMXlistMonDayDZEY.InitGrid();
var
FYue, FDate: string;
FInt: Integer;
begin
if RadioGroup1.ItemIndex = 0 then
begin
if cxTabControl1.TabIndex < 11 then
begin
FInt := cxTabControl1.TabIndex + 2;
end
else
begin
FInt := 1;
end;
FYue := Trim(IntToStr(FInt));
if FInt < 10 then
begin
FYue := '0' + Trim(IntToStr(FInt));
end;
if FInt <> 1 then
begin
FDate := Trim(FormatDateTime('yyyy', begdate.Date)) + '-' + FYue;
end
else
begin
FDate := Trim(FormatDateTime('yyyy', begdate.Date));
FDate := IntToStr(strtoint(FDate) + 1);
FDate := FDate + '-' + FYue;
end;
if FMX = '' then
begin
FBegDate.Date := StrToDate(FDate + '-01');
if FInt = 12 then
FEndDate.Date := StrToDate(Trim(FormatDateTime('yyyy', begdate.Date)) + '-12-31')
else
begin
if FInt = 1 then
begin
FEndDate.Date := StrToDate(FDate + '-31');
end
else
begin
FEndDate.Date := StrToDate(Trim(FormatDateTime('yyyy', begdate.Date)) + '-' + Trim(IntToStr(FInt + 1)) + '-01') - 1;
end;
end;
end;
end;
// ShowMessage('3');
with ADOQueryTemp do
begin
Close;
sql.Clear;
if RadioGroup1.ItemIndex = 0 then
begin
// sql.Add('exec P_YSSK_Month_BZ_HJ :FDate,:BZ,:HuiLv,:factoryNo');
// Parameters.ParamByName('FDate').Value := Trim(FDate);
// Parameters.ParamByName('factoryNo').Value := Trim(factoryName.TxtCode);
// Parameters.ParamByName('BZ').Value := Trim(FBZ);
// Parameters.ParamByName('HuiLv').Value := 1;
sql.Add('exec P_YSSK_Month_BZ_HJ ');
sql.Add('@FDate=''' + Trim(FDate) + '''');
sql.Add(',@BZType=''' + Trim(FBZ) + '''');
sql.Add(',@HuiLv=''1''');
sql.Add(',@factoryNo=''' + Trim(factoryName.TxtCode) + '''');
// ShowMessage(sql.text);
end
else if RadioGroup1.ItemIndex = 1 then
begin
// sql.Add('exec P_YSSK_Day_BZ_HJ :FBegDate,:FEndDate,:BZ,:HuiLv,:factoryNo');
// Parameters.ParamByName('FBegdate').Value := Trim(FormatDateTime('yyyy-MM-dd', FBegDate.Date));
// Parameters.ParamByName('FEndDate').Value := Trim(FormatDateTime('yyyy-MM-dd', FEndDate.Date + 1));
// Parameters.ParamByName('factoryNo').Value := Trim(factoryName.TxtCode);
// Parameters.ParamByName('BZ').Value := Trim(FBZ);
// Parameters.ParamByName('HuiLv').Value := 1;
sql.Add('exec P_YSSK_Day_BZ_HJ ');
sql.Add('@FBegdate=''' + Trim(FormatDateTime('yyyy-MM-dd', FBegDate.Date)) + '''');
sql.Add(',@FEndDate=''' + Trim(FormatDateTime('yyyy-MM-dd', FEndDate.Date + 1)) + '''');
sql.Add(',@BZType=''' + Trim(FBZ) + '''');
sql.Add(',@HuiLv=''1''');
sql.Add(',@factoryNo=''' + Trim(factoryName.TxtCode) + '''');
// ShowMessage(sql.text);
end;
Open;
end;
// ShowMessage('4');
// SCSHDataNew(ADOQueryTemp,GroupBox1,2);
// SCSHDataNew(ADOQueryTemp,GroupBox2,2);
// SCSHDataNew(ADOQueryTemp,GroupBox3,2);
//SCSHDataNew(ADOQueryTemp,GroupBox4,2);
LabGYS.Caption := Trim(factoryName.Text) + '<27><> <20><><EFBFBD><EFBFBD><EFBFBD>۶' + Trim(ADOQueryTemp.fieldbyname('YFMoneyLJ').AsString) + ' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۶' + Trim(ADOQueryTemp.fieldbyname('YFMoneyYear').AsString) + ' Ƿ<><C7B7>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>' + Trim(ADOQueryTemp.fieldbyname('QKXS').AsString) + ' <20><>Ӧ<EFBFBD>տ' + Trim(ADOQueryTemp.fieldbyname('HZMoney').AsString);
//LabYFMoneyYear.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD>۶'+Trim(ADOQueryTemp.fieldbyname('YFMoneyYear').AsString)
// +' Ƿ<><C7B7>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>'+Trim(ADOQueryTemp.fieldbyname('QKXS').AsString)+'%';
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
if RadioGroup1.ItemIndex = 0 then
begin
// sql.Add(' exec P_Qry_YSk_Month :FDate,:factoryNo,:BZ');
// Parameters.ParamByName('FDate').Value := Trim(FDate);
// Parameters.ParamByName('factoryNo').Value := Trim(factoryName.TxtCode);
// Parameters.ParamByName('BZ').Value := Trim(FBZ);
sql.Add(' exec P_Qry_YSk_Month ');
sql.Add('@FDate=''' + Trim(FDate) + '''');
sql.Add(',@BZ=''' + Trim(FBZ) + '''');
sql.Add(',@factoryNo=''' + Trim(factoryName.TxtCode) + '''');
// ShowMessage(sql.text);
end
else if RadioGroup1.ItemIndex = 1 then
begin
// sql.Add(' exec P_Qry_YSk_Day :FBegDate,:FEndDate,:factoryNo,:BZ');
// Parameters.ParamByName('FBegdate').Value := Trim(FormatDateTime('yyyy-MM-dd', FBegDate.Date));
// Parameters.ParamByName('FEndDate').Value := Trim(FormatDateTime('yyyy-MM-dd', FEndDate.Date + 1));
// Parameters.ParamByName('factoryNo').Value := Trim(factoryName.TxtCode);
// Parameters.ParamByName('BZ').Value := Trim(FBZ);
sql.Add(' exec P_Qry_YSk_Day ');
sql.Add('@FBegdate=''' + Trim(FormatDateTime('yyyy-MM-dd', FBegDate.Date)) + '''');
sql.Add(',@FEndDate=''' + Trim(FormatDateTime('yyyy-MM-dd', FEndDate.Date + 1)) + '''');
sql.Add(',@BZ=''' + Trim(FBZ) + '''');
sql.Add(',@factoryNo=''' + Trim(factoryName.TxtCode) + '''');
// ShowMessage(sql.text);
end;
Open;
end;
// ShowMessage('5');
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
// ShowMessage('6');
finally
ADOQueryMain.EnableControls;
Panetime.Visible := false;
screen.Cursor := crdefault;
end;
// ShowMessage('7');
end;
procedure TfrmYSMXlistMonDayDZEY.FormDestroy(Sender: TObject);
begin
frmYSMXlistMonDayDZEY := nil;
end;
procedure TfrmYSMXlistMonDayDZEY.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmYSMXlistMonDayDZEY.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<>տ<EFBFBD><D5BF><EFBFBD><EFBFBD>˵<EFBFBD>YX11', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmYSMXlistMonDayDZEY.FormShow(Sender: TObject);
var
fstr: string;
begin
ReadCxGrid(<>տ<EFBFBD><D5BF><EFBFBD><EFBFBD>˵<EFBFBD>YX11', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
//cxMoneyYe.Visible:=False;
LabBZ.Caption := Trim(FBZ);
if Trim(FMX) = '' then
begin
begdate.DateTime := SGetServerDateMBeg(ADOQueryTemp);
fstr := Trim(FormatDateTime('MM', begdate.Date));
cxTabControl1.TabIndex := StrToInt(fstr) - 1;
ShowMessage('2');
Panel3.Visible := False;
end
else
begin
RadioGroup1.ItemIndex := PState;
if RadioGroup1.ItemIndex = 0 then
begin
Panel2.Visible := True;
Panel3.Visible := False;
cxTabControl1.Visible := True;
end
else if RadioGroup1.ItemIndex = 1 then
begin
Panel2.Visible := False;
Panel3.Visible := True;
cxTabControl1.Visible := False;
end;
InitGrid();
end;
end;
procedure TfrmYSMXlistMonDayDZEY.TBRafreshClick(Sender: TObject);
begin
ToolBar1.SetFocus;
cxTabControl1.Tabs[11].Caption := ' 1<>£<EFBFBD>' + inttostr(strtoint(FormatDateTime('yyyy', begdate.Date)) + 1) + '<27><>)';
InitGrid();
end;
procedure TfrmYSMXlistMonDayDZEY.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
SelExportData(Tv2, ADOQueryMain, self.Caption);
end;
procedure TfrmYSMXlistMonDayDZEY.FormCreate(Sender: TObject);
begin
cxGrid2.Align := AlClient;
end;
procedure TfrmYSMXlistMonDayDZEY.ToolButton3Click(Sender: TObject);
var
filepath, fsj: string;
mBegdate, mEnddate, FFHTT: string;
begin
FFHTT := Trim(CDS_HZ.fieldbyname('FHTT').AsString);
fsj := cxTabControl1.Tabs[cxTabControl1.TabIndex].Caption;
mBegdate := FormatDateTime('yyyy', begdate.Date) + '<27><>' + Trim(Copy(fsj, 3, Length(fsj) - 2)) + '<27><>';
if CDS_HZ.IsEmpty then
exit;
try
filepath := ExtractFilePath(Application.ExeName) + 'report\Ӧ<>տ<EFBFBD><D5BF><EFBFBD><EFBFBD>˵<EFBFBD>YX.rmf';
if not FileExists(Pchar(filepath)) then
begin
application.MessageBox(pchar('<27>ļ<EFBFBD>[' + filepath + ']<5D><><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>'), '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_IConError);
exit;
end;
RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date());
RMVariables['zdr'] := trim(DName);
RmVariables['begDate'] := mBegdate;
RmVariables['endNum'] := CDS_HZ.fieldbyname('MoneyYe').AsString;
RmVariables['FHTT1'] := FFHTT;
RM1.LoadFromFile(filepath);
RM1.ShowReport;
finally
end;
end;
procedure TfrmYSMXlistMonDayDZEY.factoryNameBtnClick(Sender: TObject);
begin
try
frmKHListSelJJ := TfrmKHListSelJJ.Create(Application);
with frmKHListSelJJ do
begin
frmKHListSelJJ.canshu2 := '<27><>Ȩ<EFBFBD><C8A8>';
if ShowModal = 1 then
begin
Self.factoryName.Text := Trim(frmKHListSelJJ.CDS_HZ.fieldbyname('KHNameJC').AsString);
Self.factoryName.TxtCode := Trim(frmKHListSelJJ.CDS_HZ.fieldbyname('KHNO').AsString);
end;
end;
finally
frmKHListSelJJ.Free;
end;
begdate.SetFocus;
InitGrid();
end;
procedure TfrmYSMXlistMonDayDZEY.v2Column3PropertiesEditValueChanged(Sender: TObject);
var
mvalue: Boolean;
begin
mvalue := TcxCheckBox(Sender).EditValue;
with CDS_HZ do
begin
Edit;
FieldByName('DZFlag').Value := mvalue;
end;
if mvalue = True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set DZFlag=1,DZTime=getdate(),DZPerson=''' + Trim(DName) + '''');
sql.Add(' where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
ExecSQL;
end;
end
else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set DZFlag=0,DZTime=getdate(),DZPerson=''' + Trim(DName) + '''');
sql.Add(' where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
ExecSQL;
end;
end;
end;
procedure TfrmYSMXlistMonDayDZEY.v2Column3CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
id: Integer;
begin
id := TV2.GetColumnByFieldName('DZFlag').Index; //;-TV1.GroupedItemCount;
if id < 0 then
Exit;
if AViewInfo.GridRecord.Values[id] = True then
begin
ACanvas.Brush.Color := clRed;
end;
end;
procedure TfrmYSMXlistMonDayDZEY.ToFactoryNameChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmYSMXlistMonDayDZEY.cxTabControl1Change(Sender: TObject);
begin
if FLR = '99' then
begin
Panel4.SetFocus;
end;
InitGrid();
end;
procedure TfrmYSMXlistMonDayDZEY.RadioGroup1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex = 0 then
begin
Panel2.Visible := True;
Panel3.Visible := False;
cxTabControl1.Visible := True;
end
else if RadioGroup1.ItemIndex = 1 then
begin
Panel2.Visible := False;
Panel3.Visible := True;
cxTabControl1.Visible := False;
end;
InitGrid();
end;
procedure TfrmYSMXlistMonDayDZEY.N6Click(Sender: TObject);
begin
SelOKNo(CDS_HZ, True);
end;
procedure TfrmYSMXlistMonDayDZEY.N7Click(Sender: TObject);
begin
SelOKNo(CDS_HZ, False);
end;
procedure TfrmYSMXlistMonDayDZEY.N4Click(Sender: TObject);
var
FDate: TDateTime;
begin
if CDS_HZ.IsEmpty then
Exit;
if CDS_HZ.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
ToolBar1.SetFocus;
try
Panel2.Visible := True;
Panel2.Refresh;
FDate := SGetServerDateTime(ADOQueryTemp);
ADOQueryCmd.Connection.BeginTrans;
CDS_HZ.DisableControls;
with CDS_HZ do
begin
First;
while CDS_HZ.Locate('SSel', True, []) do
begin
if Trim(CDS_HZ.fieldbyname('ChkStatusP').AsString) <> '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
if Trim(CDS_HZ.fieldbyname('YFID').AsString) <> '' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YS_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
Open;
end;
with ADOQueryCmd do
begin
Edit;
FieldByName('ChkerP').Value := Trim(DName);
FieldByName('ChkTimeP').Value := FDate;
FieldByName('ChkStatusP').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('ChkerQ').Value := Trim(DName);
FieldByName('ChkTimeQ').Value := FDate;
FieldByName('ChkStatusQ').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if Trim(CDS_HZ.fieldbyname('CRType').AsString) = <>տ<EFBFBD><D5BF>Ǽ<EFBFBD>' then
begin
FieldByName('Money').Value := CDS_HZ.fieldbyname('YFMoney').Value;
RTSetSaveDataCDS(ADOQueryCmd, Tv2, CDS_HZ, 'YS_Money_CR', 7);
end;
Post;
end;
if Trim(CDS_HZ.fieldbyname('CRType').AsString) = <>տ<EFBFBD><D5BF>Ǽ<EFBFBD>' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YS_Money_CR Set ');
sql.Add('HSMoney=Money');
sql.Add(',JSMoney=Money');
sql.Add(' where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
ExecSQL;
end;
end;
with CDS_HZ do
begin
Edit;
FieldByName('ChkStatusP').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('SSel').Value := False;
Post;
end;
end
else
begin
with CDS_HZ do
begin
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
end
else
begin
with CDS_HZ do
begin
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
end;
end;
CDS_HZ.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
TBRafresh.Click;
Panel2.Visible := False;
except
Panel2.Visible := False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmYSMXlistMonDayDZEY.N5Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if CDS_HZ.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
ToolBar1.SetFocus;
try
Panel2.Visible := True;
Panel2.Refresh;
ADOQueryCmd.Connection.BeginTrans;
CDS_HZ.DisableControls;
with CDS_HZ do
begin
First;
while CDS_HZ.Locate('SSel', True, []) do
begin
if Trim(CDS_HZ.fieldbyname('ChkStatusP').AsString) <> <><CEB4><EFBFBD><EFBFBD>' then
begin
if Trim(CDS_HZ.fieldbyname('YFID').AsString) <> '' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YS_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
Open;
end;
with ADOQueryCmd do
begin
Edit;
FieldByName('ChkerP').Value := Null;
FieldByName('ChkTimeP').Value := Null;
FieldByName('ChkStatusP').Value := <><CEB4><EFBFBD><EFBFBD>';
FieldByName('ChkerQ').Value := Null;
FieldByName('ChkTimeQ').Value := Null;
FieldByName('ChkStatusQ').Value := <><CEB4><EFBFBD><EFBFBD>';
Post;
end;
{with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YS_Money_CR Set ');
sql.Add('HSMoney=Null');
sql.Add(',JSMoney=Null');
sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+'''');
ExecSQL;
end;}
with CDS_HZ do
begin
Edit;
FieldByName('ChkStatusP').Value := <><CEB4><EFBFBD><EFBFBD>';
{ FieldByName('ChkerP').Value:=Null;
FieldByName('ChkTimeP').Value:=Null;
FieldByName('ChkStatusQ').Value:=<><CEB4><EFBFBD><EFBFBD>';
FieldByName('ChkerQ').Value:=Null;
FieldByName('ChkTimeQ').Value:=Null;}
FieldByName('SSel').Value := False;
Post;
end;
end
else
begin
with CDS_HZ do
begin
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
end
else
begin
with CDS_HZ do
begin
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
end;
end;
CDS_HZ.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
TBRafresh.Click;
Panel2.Visible := False;
except
Panel2.Visible := False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmYSMXlistMonDayDZEY.cxQtyPropertiesEditValueChanged(Sender: TObject);
var
mvalue, FQty, FPrice, FMoney, FShuiDian, FHSPrice, FHSMoney, FJSMoney, FHZFee, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
if Trim(mvalue) <> '' then
FieldByName(FFieldName).Value := Trim(mvalue)
else
FieldByName(FFieldName).Value := Null;
Post;
end;
FQty := Trim(CDS_HZ.fieldbyname('Qty').AsString);
if Trim(FQty) = '' then
FQty := '0';
FPrice := Trim(CDS_HZ.fieldbyname('Price').AsString);
if Trim(FPrice) = '' then
FPrice := '0';
FQty := Trim(CDS_HZ.fieldbyname('Qty').AsString);
if Trim(FQty) = '' then
FQty := '0';
FHZFee := Trim(CDS_HZ.fieldbyname('HZFee').AsString);
if Trim(FHZFee) = '' then
FHZFee := '0';
FMoney := Trim(CDS_HZ.fieldbyname('YFMoney').AsString);
if Trim(FMoney) = '' then
FMoney := '0';
if Trim(FFieldName) <> 'YFMoney' then
begin
FMoney := FloatToStr(StrToFloat(FQty) * StrToFloat(FPrice) + StrToFloat(FHZFee));
end;
with CDS_HZ do
begin
Edit;
FieldByName('YFMoney').Value := StrToFloat(FMoney);
Post;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmYSMXlistMonDayDZEY.N1Click(Sender: TObject);
var
FDate: TDateTime;
DWYFID: string;
begin
if CDS_HZ.IsEmpty then
Exit;
if Trim(CDS_HZ.fieldbyname('YFID').AsString) = '' then
Exit;
ToolBar1.SetFocus;
DWYFID := Trim(CDS_HZ.fieldbyname('YFID').AsString);
try
FDate := SGetServerDateTime(ADOQueryTemp);
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YS_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
Open;
end;
with ADOQueryCmd do
begin
Edit;
FieldByName('ChkerP').Value := Trim(DName);
FieldByName('ChkTimeP').Value := FDate;
FieldByName('ChkStatusP').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('ChkerQ').Value := Trim(DName);
FieldByName('ChkTimeQ').Value := FDate;
FieldByName('ChkStatusQ').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if Trim(CDS_HZ.fieldbyname('CRType').AsString) = <>տ<EFBFBD><D5BF>Ǽ<EFBFBD>' then
begin
FieldByName('Money').Value := CDS_HZ.fieldbyname('YFMoney').Value;
RTSetSaveDataCDS(ADOQueryCmd, Tv2, CDS_HZ, 'YS_Money_CR', 7);
end;
Post;
end;
if Trim(CDS_HZ.fieldbyname('CRType').AsString) = <>տ<EFBFBD><D5BF>Ǽ<EFBFBD>' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YS_Money_CR Set ');
sql.Add('HSMoney=Money');
sql.Add(',JSMoney=Money');
sql.Add(' where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
ExecSQL;
end;
end;
with CDS_HZ do
begin
Edit;
FieldByName('ChkStatusP').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
Post;
end;
ADOQueryCmd.Connection.CommitTrans;
TBRafresh.Click;
CDS_HZ.Locate('YFID', DWYFID, []);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmYSMXlistMonDayDZEY.N2Click(Sender: TObject);
var
DWYFID: string;
begin
if CDS_HZ.IsEmpty then
Exit;
if Trim(CDS_HZ.fieldbyname('YFID').AsString) = '' then
Exit;
ToolBar1.SetFocus;
DWYFID := Trim(CDS_HZ.fieldbyname('YFID').AsString);
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YS_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
Open;
end;
with ADOQueryCmd do
begin
Edit;
FieldByName('ChkerP').Value := Null;
FieldByName('ChkTimeP').Value := Null;
FieldByName('ChkStatusP').Value := <><CEB4><EFBFBD><EFBFBD>';
FieldByName('ChkerQ').Value := Null;
FieldByName('ChkTimeQ').Value := Null;
FieldByName('ChkStatusQ').Value := <><CEB4><EFBFBD><EFBFBD>';
Post;
end;
with CDS_HZ do
begin
Edit;
FieldByName('ChkStatusP').Value := <><CEB4><EFBFBD><EFBFBD>';
{FieldByName('ChkStatusQ').Value:=<><CEB4><EFBFBD><EFBFBD>';
FieldByName('ChkerQ').Value:=Null;
FieldByName('ChkTimeQ').Value:=Null;
FieldByName('ChkerP').Value:=Null;
FieldByName('ChkTimeP').Value:=Null;}
Post;
end;
ADOQueryCmd.Connection.CommitTrans;
TBRafresh.Click;
CDS_HZ.Locate('YFID', DWYFID, []);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmYSMXlistMonDayDZEY.Tv2StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
id: Integer;
begin
id := Tv2.GetColumnByFieldName('ChkStatusP').Index;
if ARecord.Values[id] = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
exit;
AStyle := DataLink_Money.SkyBlue;
end;
procedure TfrmYSMXlistMonDayDZEY.N3Click(Sender: TObject);
var
DWYFID: string;
begin
try
frmKHSKInPut := TfrmKHSKInPut.Create(Application);
with frmKHSKInPut do
begin
FMainId := '';
frmKHSKInPut.FactoryName.Text := Self.factoryName.Text;
frmKHSKInPut.FactoryName.TxtCode := Self.factoryName.TxtCode;
frmKHSKInPut.BZType.ItemIndex := frmKHSKInPut.BZType.Items.IndexOf(Self.LabBZ.Caption);
if ShowModal = 1 then
begin
DWYFID := Trim(frmKHSKInPut.FMainId);
Self.TBRafresh.Click;
Self.CDS_HZ.Locate('YFID', DWYFID, []);
end;
end;
finally
frmKHSKInPut.Free;
end;
end;
procedure TfrmYSMXlistMonDayDZEY.N8Click(Sender: TObject);
var
DWYFID: string;
begin
if Trim(CDS_HZ.fieldbyname('CRType').AsString) <> '<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>' then
Exit;
DWYFID := Trim(CDS_HZ.fieldbyname('YFID').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YS_Money_CR where YFID=''' + Trim(DWYFID) + ''' and isnull(ChkerP,'''')<>'''' ');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD>޸<EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
frmKHSKInPut := TfrmKHSKInPut.Create(Application);
with frmKHSKInPut do
begin
FMainId := Trim(Self.CDS_HZ.fieldbyname('YFID').AsString);
if ShowModal = 1 then
begin
Self.TBRafresh.Click;
Self.CDS_HZ.Locate('YFID', DWYFID, []);
end;
end;
finally
frmKHSKInPut.Free;
end;
end;
procedure TfrmYSMXlistMonDayDZEY.N9Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if Trim(CDS_HZ.fieldbyname('CRType').AsString) <> '<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>' then
Exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YS_Money_CR where YFID=''' + Trim(Self.CDS_HZ.fieldbyname('YFID').AsString) + ''' and isnull(ChkerP,'''')<>'''' ');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><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 YS_Money_CR_DelLog ');
sql.Add(' select * from YS_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
sql.Add(' Update YS_Money_CR_DelLog Set DelTime=getdate(),DelPerson=''' + Trim(DName) + '''');
sql.Add(' where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
sql.Add(' delete YS_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
execsql;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_HZ.Delete;
TBRafresh.Click;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
end;
end;
procedure TfrmYSMXlistMonDayDZEY.ToolButton2Click(Sender: TObject);
var
FName, FDate, FYue: string;
FInt, FBYear, FEYear: Integer;
begin
if CDS_HZ.IsEmpty then
Exit;
begin
FInt := StrToInt(FormatDateTime('yyyy', begdate.Date));
FBYear := FInt;
FEYear := FInt + 1;
FFBegDate := StrToDate(IntToStr(FBYear) + '-02-01');
FFEndDate := StrToDate(IntToStr(FEYear) + '-01-31');
try
frmKHSKListView := TfrmKHSKListView.Create(Application);
with frmKHSKListView do
begin
FKHNO := Trim(factoryName.TxtCode);
frmKHSKListView.begdate.Date := Self.FFBegDate;
frmKHSKListView.Enddate.Date := Self.FFEndDate;
FactoryNameHZ.Text := Trim(factoryName.Text);
if ShowModal = 1 then
begin
end;
end;
finally
frmKHSKListView.Free;
end;
end;
end;
procedure TfrmYSMXlistMonDayDZEY.P_CodeNameChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel4, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
end;
procedure TfrmYSMXlistMonDayDZEY.Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if cxGrid2.PopupMenu = PopupMenu1 then
begin
v2note.Options.Focusing := True;
v2note.Options.Editing := True;
end
else
begin
v2note.Options.Focusing := False;
v2note.Options.Editing := False;
end;
end;
procedure TfrmYSMXlistMonDayDZEY.v2notePropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
begin
ToolBar1.SetFocus;
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '';
end;
with CDS_HZ do
begin
edit;
FieldByName('note').Value := mvalue;
end;
FLR := '99';
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YS_Money_CR Set Note=''' + Trim(mvalue) + '''');
sql.Add(' where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + '''');
ExecSQL;
end;
end;
end.