From b61155c25a6e104f7f1bada00f443c7ec75a7d6e Mon Sep 17 00:00:00 2001 From: "DESKTOP-E401PHE\\Administrator" Date: Fri, 22 May 2026 11:18:19 +0800 Subject: [PATCH] 1234 --- A09财务通用管理/Financial.dpr | 2 +- A09财务通用管理/Financial.dproj | 4 +- A09财务通用管理/Financial.dproj.local | 80 +- A09财务通用管理/Financial.identcache | Bin 3561 -> 3561 bytes A09财务通用管理/U_GETableBatchInput.dfm | 448 +++++++++++ A09财务通用管理/U_GETableBatchInput.pas | 890 ++++++++++++++++++++++ A09财务通用管理/U_GetableSel.dfm | 509 +++++++++++++ A09财务通用管理/U_GetableSel.pas | 953 ++++++++++++++++++++++++ A09财务通用管理/U_InvoiceInInPut.pas | 39 +- A09财务通用管理/U_InvoiceInList.dfm | 3 +- A09财务通用管理/U_InvoiceInList.pas | 2 +- A09财务通用管理/U_InvoiceOutInPut.dfm | 285 +++---- A09财务通用管理/U_InvoiceOutInPut.pas | 339 ++++++++- A09财务通用管理/U_InvoiceOutList.dfm | 376 +++++----- A09财务通用管理/U_InvoiceOutList.pas | 226 +++++- A09财务通用管理/U_PayableBatchInput.dfm | 2 +- A09财务通用管理/U_PayableBatchInput.pas | 22 +- A09财务通用管理/U_PayableList.dfm | 2 + A09财务通用管理/U_ReceivableList.dfm | 342 ++++----- A09财务通用管理/U_ReceivableList.pas | 103 ++- 20 files changed, 3893 insertions(+), 734 deletions(-) create mode 100644 A09财务通用管理/U_GETableBatchInput.dfm create mode 100644 A09财务通用管理/U_GETableBatchInput.pas create mode 100644 A09财务通用管理/U_GetableSel.dfm create mode 100644 A09财务通用管理/U_GetableSel.pas diff --git a/A09财务通用管理/Financial.dpr b/A09财务通用管理/Financial.dpr index 39bea9c..56e07bc 100644 --- a/A09财务通用管理/Financial.dpr +++ b/A09财务通用管理/Financial.dpr @@ -47,7 +47,7 @@ uses U_globalVar in '..\..\..\public10\design\U_globalVar.pas', U_WindowFormdesign in '..\..\..\public10\design\U_WindowFormdesign.pas', uSZHN_JSON in '..\..\..\public10\ThreeFun\Fun\uSZHN_JSON.pas', - U_PayableBatchInput in 'U_PayableBatchInput.pas' {frmPayableBatchInput}, + U_GETableBatchInput in 'U_GETableBatchInput.pas' {frmGetableBatchInput}, U_FinPurchasePlanSel in 'U_FinPurchasePlanSel.pas' {frmFinPurchasePlanSel}; {$R *.res} diff --git a/A09财务通用管理/Financial.dproj b/A09财务通用管理/Financial.dproj index 478fac8..70661b4 100644 --- a/A09财务通用管理/Financial.dproj +++ b/A09财务通用管理/Financial.dproj @@ -217,8 +217,8 @@ - -
frmPayableBatchInput
+ +
frmGetableBatchInput
dfm
diff --git a/A09财务通用管理/Financial.dproj.local b/A09财务通用管理/Financial.dproj.local index 8054781..b20887a 100644 --- a/A09财务通用管理/Financial.dproj.local +++ b/A09财务通用管理/Financial.dproj.local @@ -1,62 +1,64 @@  - 1899-12-30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas - 1899-12-30 00:00:00.000.979,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_InvoiceOutInPut.pas + 1899-12-30 00:00:00.000.742,=D:\Dp10RepoV1\public10\design\U_cxGridCustomSet.pas + 1899-12-30 00:00:00.000.159,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_CustStatementWriteOff.pas + 1899-12-30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas 1899-12-30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas 1899-12-30 00:00:00.000.292,=D:\Dp10RepoV1\项目代码\D10SZKaiXiYa\A09财务通用管理\U_FinPurchasePlanSel.pas - 1899-12-30 00:00:00.000.728,=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutList.pas - 1899-12-30 00:00:00.000.621,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutList.pas=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInList.pas - 1899-12-30 00:00:00.000.987,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayableInput.pas - 1899-12-30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899-12-30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas + 1899-12-30 00:00:00.000.979,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_InvoiceOutInPut.pas + 1899-12-30 00:00:00.000.871,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInInPut.dfm=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutInPut.dfm + 1899-12-30 00:00:00.000.868,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\InformationBase.dproj=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\Financial.dproj + 1899-12-30 00:00:00.000.621,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInList.dfm=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutList.dfm 1899-12-30 00:00:00.000.895,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_InvoiceOutList.pas - 1899-12-30 00:00:00.000.159,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_CustStatementWriteOff.pas - 1899-12-30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899-12-30 00:00:00.000.742,=D:\Dp10RepoV1\public10\design\U_cxGridCustomSet.pas - 1899-12-30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas 1899-12-30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899-12-30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899-12-30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899-12-30 00:00:00.000.987,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayableInput.pas 1899-12-30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas - 1899-12-30 00:00:00.000.868,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\Financial.dproj=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\InformationBase.dproj 1899-12-30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= + 1899-12-30 00:00:00.000.621,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInList.pas=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutList.pas 1899-12-30 00:00:00.000.885,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_ExpenseList.pas - 1899-12-30 00:00:00.000.772,=D:\Dp10RepoV1\public10\design\U_FormLayOutDesign.pas 1899-12-30 00:00:00.000.103,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_BankSel.pas + 1899-12-30 00:00:00.000.772,=D:\Dp10RepoV1\public10\design\U_FormLayOutDesign.pas 1899-12-30 00:00:00.000.806,=D:\Dp10RepoV1\public10\design\U_BaseDataLink.pas - 1899-12-30 00:00:00.000.052,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_CollectList.pas - 1899-12-30 00:00:00.000.871,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutInPut.dfm=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInInPut.dfm + 1899-12-30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm 1899-12-30 00:00:00.000.064,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas - 1899-12-30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas - 1899-12-30 00:00:00.000.446,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_BankFlowList.pas + 1899-12-30 00:00:00.000.728,=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutList.pas + 1899-12-30 00:00:00.000.052,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_CollectList.pas 1899-12-30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas - 1899-12-30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm - 1899-12-30 00:00:00.000.381,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_ReceivableInput.pas - 1899-12-30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas + 1899-12-30 00:00:00.000.446,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_BankFlowList.pas + 1899-12-30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas 1899-12-30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= - 1899-12-30 00:00:00.000.307,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas - 1899-12-30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas - 1899-12-30 00:00:00.000.621,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutList.dfm=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInList.dfm - 1899-12-30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= - 1899-12-30 00:00:00.000.040,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas - 1899-12-30 00:00:00.000.727,=D:\Dp10RepoV1\public10\ThreeFun\Fun\uSZHN_JSON.pas - 1899-12-30 00:00:00.000.874,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayableList.pas - 1899-12-30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas - 1899-12-30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas + 1899-12-30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas 1899-12-30 00:00:00.000.765,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_BankFlowTotalList.pas + 1899-12-30 00:00:00.000.381,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_ReceivableInput.pas + 1899-12-30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= + 1899-12-30 00:00:00.000.307,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas + 1899-12-30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899-12-30 00:00:00.000.727,=D:\Dp10RepoV1\public10\ThreeFun\Fun\uSZHN_JSON.pas + 1899-12-30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm + 1899-12-30 00:00:00.000.040,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas + 1899-12-30 00:00:00.000.874,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayableList.pas + 1899-12-30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas 1899-12-30 00:00:00.000.659,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_CustStatement.pas - 1899-12-30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899-12-30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas 1899-12-30 00:00:00.000.345,=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_FtyStatement.pas 1899-12-30 00:00:00.000.508,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_ReceivableList.pas + 1899-12-30 00:00:00.000.912,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayList.pas 1899-12-30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas 1899-12-30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas 1899-12-30 00:00:00.000.453,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayInput.pas 1899-12-30 00:00:00.000.595,=D:\Dp10RepoV1\项目代码\D10SZKaiXiYa\A09财务通用管理\U_PayableBatchInput.pas - 1899-12-30 00:00:00.000.871,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutInPut.pas=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInInPut.pas - 1899-12-30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm - 1899-12-30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas - 1899-12-30 00:00:00.000.076,=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutInPut.pas 1899-12-30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas - 1899-12-30 00:00:00.000.912,=D:\Dp10RepoV1\项目代码\RTBasicsV1\A09财务通用管理\U_PayList.pas + 1899-12-30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas + 1899-12-30 00:00:00.000.871,D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceInInPut.pas=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutInPut.pas + 1899-12-30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas 1899-12-30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas + 1899-12-30 00:00:00.000.076,=D:\Dp10Repo\项目代码\RTBasics\A09财务通用管理\U_InvoiceOutInPut.pas + 2026-05-15 11:04:20.052,D:\Dp10RepoV1\项目代码\D10SZKaiXiYa\A09财务通用管理\U_GETableBatchInput.pas=D:\Dp10RepoV1\项目代码\D10SZKaiXiYa\A09财务通用管理\U_PayableBatchInput.pas + 2026-05-15 11:04:20.052,D:\Dp10RepoV1\项目代码\D10SZKaiXiYa\A09财务通用管理\U_GETableBatchInput.dfm=D:\Dp10RepoV1\项目代码\D10SZKaiXiYa\A09财务通用管理\U_PayableBatchInput.dfm @@ -87,18 +89,18 @@ - - + + + - @@ -137,9 +139,9 @@ - - + + diff --git a/A09财务通用管理/Financial.identcache b/A09财务通用管理/Financial.identcache index 35a792063fb4a58b05169399cc529e9180a8f957..666490f94317a2bcc1f8a2b588076f49f78ae15d 100644 GIT binary patch delta 36 scmaDU{Ze{^81uw=@{`rsl$hOJLnhDUlAFAj+i`O^^FOxD+qsOG0r3J1j{pDw delta 36 scmaDU{Ze{^81v-4+>V=fGXG + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = Tv1Qty + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = Tv1TaxInclude + end + item + Kind = skSum + Column = Tv1Piece + end + item + Kind = skSum + end + item + Kind = skSum + Column = Tv1Tax + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object Tv1FFTime: TcxGridDBColumn + Caption = #30331#35760#26085#26399 + DataBinding.FieldName = 'FFTime' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 82 + end + object Tv1oppShuiNo: TcxGridDBColumn + Caption = #23458#25143#31246#21495 + DataBinding.FieldName = 'oppShuiNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 111 + end + object Tv1OppCoName: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'OppCoName' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1OppCoNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 130 + end + object Tv1ourShuiNo: TcxGridDBColumn + Caption = #25105#26041#31246#21495 + DataBinding.FieldName = 'ourShuiNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV1OurCoName: TcxGridDBColumn + Caption = #25105#26041#21333#20301 + DataBinding.FieldName = 'OurCoName' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = TV1OurCoNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 91 + end + object Tv1FFAbstract: TcxGridDBColumn + Caption = #25688#35201 + DataBinding.FieldName = 'FFAbstract' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1FFAbstractPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 79 + end + object Tv1BuyConNo: TcxGridDBColumn + Caption = #38754#26009#21512#21516#21495 + DataBinding.FieldName = 'BuyConNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 127 + end + object Tv1ConNo: TcxGridDBColumn + Caption = #22383#24067#21512#21516#21495 + DataBinding.FieldName = 'ConNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 112 + end + object Tv1OrderNo: TcxGridDBColumn + Caption = #32455#36896#21333#21495 + DataBinding.FieldName = 'OrderNo' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = Tv1OrderNoPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 91 + end + object Tv1F_Code: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'F_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 79 + end + object Tv1F_Name: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'F_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 85 + end + object Tv1F_Width: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'F_Width' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 88 + end + object Tv1F_GramWeight: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'F_GramWeight' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1F_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'F_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1Column1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'F_colorno' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 67 + end + object Tv1Piece: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Piece' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 65 + end + object Tv1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv1TaxRatePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 76 + end + object Tv1QtyUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 63 + end + object Tv1Currency: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'Currency' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + 'CNY' + 'USD' + 'EUR' + 'VND') + Properties.OnChange = Tv1CurrencyPropertiesChange + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1NoTaxPrice: TcxGridDBColumn + Caption = #19981#21547#31246#21333#20215 + DataBinding.FieldName = 'NoTaxPrice' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv1TaxRatePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 99 + end + object Tv1Column2: TcxGridDBColumn + Caption = #19981#21547#31246#37329#39069 + DataBinding.FieldName = 'NoTaxInclude' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 123 + end + object Tv1TaxRate: TcxGridDBColumn + Caption = #31246#29575 + DataBinding.FieldName = 'TaxRate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv1TaxRatePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Tax: TcxGridDBColumn + Caption = #31246#39069 + DataBinding.FieldName = 'Tax' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object Tv1TaxInclude: TcxGridDBColumn + Caption = #21547#31246#37329#39069 + DataBinding.FieldName = 'TaxInclude' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 96 + end + object Tv1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 78 + end + object Tv1FromID1: TcxGridDBColumn + Caption = #26469#28304 + DataBinding.FieldName = 'FromID1' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_Financial.ADOLink + Left = 57 + Top = 72 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_Financial.ADOLink + Left = 177 + Top = 73 + end + inherited ImageList_new32: TImageList + Left = 160 + Top = 288 + end + inherited cxImageList_bar: TcxImageList + FormatVersion = 1 + Left = 248 + Top = 249 + DesignInfo = 16318712 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 592 + Top = 184 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 496 + Top = 184 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_Financial.ADOLink + Parameters = <> + Left = 176 + Top = 176 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 200 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 392 + Top = 272 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 456 + Top = 88 + end + object PM_1: TPopupMenu + Left = 504 + Top = 280 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N3: TMenuItem + Caption = #20840#24323 + OnClick = N3Click + end + object N2: TMenuItem + Caption = #22797#21046 + OnClick = N2Click + end + end +end diff --git a/A09财务通用管理/U_GETableBatchInput.pas b/A09财务通用管理/U_GETableBatchInput.pas new file mode 100644 index 0000000..1070115 --- /dev/null +++ b/A09财务通用管理/U_GETableBatchInput.pas @@ -0,0 +1,890 @@ +unit U_GETableBatchInput; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit, ComCtrls, ToolWin, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, cxGridCustomPopupMenu, + cxGridPopupMenu, ADODB, DBClient, cxButtonEdit, cxTextEdit, cxSpinEdit, + StdCtrls, ExtCtrls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxDateRanges, dxBarBuiltInMenu, U_BaseInput, System.ImageList, Vcl.ImgList, + dxScrollbarAnnotations, dxSkinsCore, dxSkinsDefaultPainters, cxImageList, + dxSkinOffice2013White, dxSkinSharpPlus, dxSkinWXI, cxCheckBox, Vcl.Menus, + Clipbrd, cxCurrencyEdit; + +type + TfrmGetableBatchInput = class(TfrmBaseInput) + ToolBar1: TToolBar; + TBAdd: TToolButton; + TBDel: TToolButton; + TBSave: TToolButton; + TBClose: TToolButton; + DS_1: TDataSource; + CDS_1: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + GPM_1: TcxGridPopupMenu; + ToolButton1: TToolButton; + TbOrdAdd: TToolButton; + TbPurSel: TToolButton; + PM_1: TPopupMenu; + N1: TMenuItem; + N3: TMenuItem; + N2: TMenuItem; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + Tv1FFTime: TcxGridDBColumn; + Tv1oppShuiNo: TcxGridDBColumn; + Tv1OppCoName: TcxGridDBColumn; + Tv1ourShuiNo: TcxGridDBColumn; + TV1OurCoName: TcxGridDBColumn; + Tv1FFAbstract: TcxGridDBColumn; + Tv1ConNo: TcxGridDBColumn; + Tv1OrderNo: TcxGridDBColumn; + Tv1BuyConNo: TcxGridDBColumn; + Tv1F_Code: TcxGridDBColumn; + Tv1F_Name: TcxGridDBColumn; + Tv1F_Width: TcxGridDBColumn; + Tv1F_GramWeight: TcxGridDBColumn; + Tv1F_Color: TcxGridDBColumn; + Tv1Piece: TcxGridDBColumn; + Tv1Qty: TcxGridDBColumn; + Tv1QtyUnit: TcxGridDBColumn; + Tv1Currency: TcxGridDBColumn; + Tv1NoTaxPrice: TcxGridDBColumn; + Tv1TaxRate: TcxGridDBColumn; + Tv1Tax: TcxGridDBColumn; + Tv1TaxInclude: TcxGridDBColumn; + Tv1Note: TcxGridDBColumn; + Tv1FromID1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure TBAddClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TbOrdAddClick(Sender: TObject); + procedure TbPurSelClick(Sender: TObject); + procedure Tv1OppCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1FFAbstractPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure N2Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure Tv1PurNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1CurrencyPropertiesChange(Sender: TObject); + procedure Tv1TaxRatePropertiesEditValueChanged(Sender: TObject); + procedure TV1OurCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + private + { Private declarations } + function SaveData(): Boolean; + procedure InitGrid(); + public + { Public declarations } + FBCId, FKHName: string; + FFFID: string; + end; + +var + frmGetableBatchInput: TfrmGetableBatchInput; + +implementation + +uses + U_DataLink, U_RTFun, U_ZDYHelp, U_CompanySel, U_FinTradePlanSel, + U_FinPurchasePlanSel; + +{$R *.dfm} + +procedure TfrmGetableBatchInput.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmGetableBatchInput.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + Filtered := False; + sql.Add(' select A.* '); + sql.Add(' from Finance_Flow A '); + // Finance_FlowInvoiceˮ-ƱȡÿˮĵһƱ¼ + sql.Add(' LEFT JOIN ( '); + sql.Add(' SELECT FFID, IVId, ROW_NUMBER() OVER (PARTITION BY FFID ORDER BY IVId) AS RowNum '); + sql.Add(' FROM Finance_FlowInvoice '); + sql.Add(' ) AS B ON A.FFID = B.FFID AND B.RowNum = 1 '); // RowNum=1 ȷֻȡһ + +// ڹ Finance_InvoiceƱͨBIVId + sql.Add(' left JOIN Finance_Invoice C ON B.IVId = C.IVId '); + + sql.Add(' where A.FFID = ' + QuotedStr(FFFID)); + Open; + end; + SCreateCDS(ADOQueryMain, CDS_1); + SInitCDSData(ADOQueryMain, CDS_1); + finally + ADOQueryMain.EnableControls; + TV1.DataController.Filter.Clear; + end; +end; + +procedure TfrmGetableBatchInput.N1Click(Sender: TObject); +begin + SelOKNo(CDS_1, True); + +end; + +procedure TfrmGetableBatchInput.N2Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmGetableBatchInput.N3Click(Sender: TObject); +begin + SelOKNo(CDS_1, false); + +end; + +function TfrmGetableBatchInput.SaveData(): Boolean; +var + Maxno, MFFID: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while not eof do + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Finance_Flow where FFID=''' + Trim(CDS_1.fieldbyname('FFID').AsString) + ''''); + open; + end; + MFFID := Trim(ADOQueryTemp.fieldbyname('FFID').AsString); + if Trim(MFFID) = '' then + begin + if not GetLSNo(ADOQueryCmd, Maxno, 'YFK', 'Finance_Flow', 3, 1) then + raise Exception.Create('ȡӦտʧܣ'); + end + else + begin + Maxno := Trim(MFFID); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Finance_Flow where FFID=''' + Trim(Maxno) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(MFFID) = '' then + begin + Append; + FieldByName('Fillid').Value := Trim(Dcode); + FieldByName('Filler').Value := Trim(DName); + end + else + begin + Edit; + FieldByName('Editid').Value := Trim(Dcode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDate(ADOQueryTemp); + end; + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'Finance_Flow', 0); + + FieldByName('FFID').Value := Maxno; + FieldByName('FFFlag').Value := 'Ӧ'; + FieldByName('FFType').Value := 'ӦտǼ'; + FieldByName('CheckStatus').Value := 'δ'; + + + //֯쵥 + FieldByName('OrdMainId').Value := CDS_1.fieldbyname('OrdMainId').Value; + FieldByName('OrdSubId').Value := CDS_1.fieldbyname('OrdSubId').Value; + //֯쵥 + FieldByName('PurMID').Value := CDS_1.fieldbyname('PurMID').Value; + FieldByName('PurSID').Value := CDS_1.fieldbyname('PurSID').Value; + //ͬ + FieldByName('ConMId').Value := CDS_1.fieldbyname('ConMId').value; + FieldByName('ConSId').Value := CDS_1.fieldbyname('ConSId').value; + //Ϻͬ + FieldByName('BuyConMID').Value := CDS_1.fieldbyname('BuyConMID').value; + FieldByName('BuyConSID').Value := CDS_1.fieldbyname('BuyConSID').Value; + //Էλ + FieldByName('OppCoNo').Value := CDS_1.fieldbyname('OppCoNo').Value; + //ҷλ + FieldByName('OurCoNo').Value := CDS_1.fieldbyname('OurCoNo').Value; + + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails)'); + sql.Add('values(''ӦտǼ'' '); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(') '); + ExecSQL; + end; + Next; + end; + end; + CDS_1.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + CDS_1.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; +end; + +procedure TfrmGetableBatchInput.TBAddClick(Sender: TObject); +begin + CDS_1.Append; + CDS_1.FieldByName('FFTime').Value := SGetServerDateTime(ADOQueryCmd); + CDS_1.FieldByName('ReconciliationDate').Value := SGetServerDate(ADOQueryCmd); + CDS_1.FieldByName('OurCoName').Value := 'DESHINE VIETNAM CO., LTD'; + CDS_1.FieldByName('SSel').Value := False; + CDS_1.Post; +end; + +procedure TfrmGetableBatchInput.TBCloseClick(Sender: TObject); +begin + + Close; +end; + +procedure TfrmGetableBatchInput.TBDelClick(Sender: TObject); +begin + CDS_1.Delete; +end; + +procedure TfrmGetableBatchInput.TbOrdAddClick(Sender: TObject); +begin + try + frmFinTradePlanSel := TfrmFinTradePlanSel.Create(Application); + with frmFinTradePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinTradePlanSel.CDS_1 do + begin + //֯쵥 + self.CDS_1.FieldByName('OrderNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('OrdMainId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + self.CDS_1.FieldByName('OrdSubId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('SubId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConMId').AsString); + self.CDS_1.FieldByName('ConSId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('BuyConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + self.CDS_1.FieldByName('BuyConSID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + + self.CDS_1.FieldByName('F_Code').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('F_Name').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + self.CDS_1.FieldByName('F_Width').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('SubId').AsString); + self.CDS_1.FieldByName('F_GramWeight').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('F_Color').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + + end; + + end; + end; + finally + frmFinTradePlanSel.Free; + end; +end; + +procedure TfrmGetableBatchInput.FormShow(Sender: TObject); +var + fsj: string; +begin + inherited; + ReadCxGrid('ӦǼ', Tv1, 'ӦǼ'); + InitGrid(); +end; + +procedure TfrmGetableBatchInput.TBSaveClick(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + if CDS_1.Locate('FFTime', null, []) = True then + begin + Application.MessageBox('ǼڲΪ!', 'ʾ', 0); + Exit; + end; +// if CDS_1.Locate('ReconciliationDate', null, []) = True then +// begin +// Application.MessageBox('ڲΪ!', 'ʾ', 0); +// Exit; +// end; + + + + if CDS_1.Locate('Qty', null, []) = True then + begin + Application.MessageBox('Ϊ!', 'ʾ', 0); + Exit; + end; + +// CDS_1.First; +// while not CDS_1.Eof do +// begin +// // ͬʱж +// if (CDS_1.FieldByName('IOType').AsString = '') and (CDS_1.FieldByName('ToOrdNo').IsNull or (Trim(CDS_1.FieldByName('ToOrdNo').AsString) = '')) then +// begin +// Application.MessageBox('ѡ񳵼 ֯쵥!', 'ʾ', 0); +// Exit; +// end; +// CDS_1.Next; +// end; + + if SaveData() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + //ModalResult:=1; + Exit; + end; +end; + +procedure TfrmGetableBatchInput.ToolButton1Click(Sender: TObject); +begin + WriteCxGrid('ӦǼ', Tv1, 'ӦǼ'); +end; + +procedure TfrmGetableBatchInput.TbPurSelClick(Sender: TObject); +begin + try + frmFinPurchasePlanSel := TfrmFinPurchasePlanSel.Create(Application); + with frmFinPurchasePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinPurchasePlanSel.CDS_1 do + begin + first; + while not Eof do + begin + if CDS_1.fieldbyname('SSel').AsBoolean then + begin + with Self.CDS_1 do + begin + append; + //Էλ + self.CDS_1.FieldByName('OppCoName').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellName').asstring); + self.CDS_1.FieldByName('OppCoNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellNo').asstring); + self.CDS_1.FieldByName('oppShuiNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('shuino').asstring); + //ҷλ + self.CDS_1.FieldByName('FFTime').Value := SGetServerDateTime(ADOQueryCmd); + self.CDS_1.FieldByName('ReconciliationDate').Value := SGetServerDate(ADOQueryCmd); + self.CDS_1.FieldByName('OurCoName').Value := 'DESHINE VIETNAM CO., LTD'; + self.CDS_1.FieldByName('ourShuiNo').Value := '1102083046'; + + self.CDS_1.FieldByName('FinType').Value := 'ɴ'; + self.CDS_1.FieldByName('Currency').Value := 'CNY'; + self.CDS_1.FieldByName('SSel').Value := False; + self.CDS_1.FieldByName('FFAbstract').Value := 'ɴ߲ɹ'; + //ɹ + self.CDS_1.FieldByName('PurNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurNo').AsString); + self.CDS_1.FieldByName('PurMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurMId').AsString); + self.CDS_1.FieldByName('PurSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurSId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConMId').AsString); + self.CDS_1.FieldByName('ConSId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('CPConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + self.CDS_1.FieldByName('BuyConSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + + self.CDS_1.FieldByName('F_Code').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Code').Value); + self.CDS_1.FieldByName('F_Name').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Name').Value); +// self.CDS_1.FieldByName('F_Width').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SubId').AsString); +// self.CDS_1.FieldByName('F_GramWeight').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('C_GramWeight').AsString); + self.CDS_1.FieldByName('F_Color').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Color').Value); + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Piece').IsNull then + begin + self.CDS_1.FieldByName('Piece').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Qty').IsNull then + begin + self.CDS_1.FieldByName('Qty').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Qty').AsString); + end; + self.CDS_1.FieldByName('QtyUnit').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('QtyUnit').AsString); + self.CDS_1.FieldByName('currency').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('currency').AsString); + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Price').IsNull then + begin + self.CDS_1.FieldByName('NoTaxPrice').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Price').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Amount').IsNull then + begin + self.CDS_1.FieldByName('NoTaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Amount').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxRate').IsNull then + begin + self.CDS_1.FieldByName('TaxRate').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxRate').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Tax').IsNull then + begin + self.CDS_1.FieldByName('Tax').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Tax').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxInclude').IsNull then + begin + self.CDS_1.FieldByName('TaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxInclude').AsString); + end; + Post; + end; + end; + frmFinPurchasePlanSel.CDS_1.Next; + end; + + end; + + end; + end; + finally + frmFinPurchasePlanSel.Free; + end; +end; + +procedure TfrmGetableBatchInput.Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := 'Ӧ'; + if ShowModal = 1 then + begin + with Self.CDS_1 do + begin + Edit; + FieldByName('ToCoNo').Value := Trim(CDS_1.fieldbyname('CoCode').AsString); + FieldByName('ToCoName').Value := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); + post; + end; + end; + end; + finally + frmCompanySel.Free; + end; + +end; + +procedure TfrmGetableBatchInput.Tv1CurrencyPropertiesChange(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; +// if not Assigned(Sender) or not (Sender is TComboBox) then +// Exit; + + if TComboBox(Sender).Text = 'VND' then + begin + with CDS_1 do + begin + // ¼Ƿڿɱ༭״̬ + if not (State in [dsEdit, dsInsert]) then + Edit; + + // ֶǷҲΪ + if not FieldByName('NoTaxPrice').IsNull and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxPrice').Value := RoundFloat(FieldByName('NoTaxPrice').AsFloat, 0); + end; + + + // QtyNoTaxPriceֶǷҲΪ + if not FieldByName('Qty').IsNull and not FieldByName('NoTaxPrice').IsNull and (FieldByName('Qty').AsString <> '') and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxInclude').Value := RoundFloat(FieldByName('Qty').AsFloat * FieldByName('NoTaxPrice').AsFloat, 0); + end; + + if not FieldByName('TaxRate').IsNull and (FieldByName('TaxRate').AsString <> '') then + FieldByName('TaxRate').Value := RoundFloat(FieldByName('TaxRate').AsFloat, 0); + + if not FieldByName('Tax').IsNull and (FieldByName('Tax').AsString <> '') then + FieldByName('Tax').Value := RoundFloat(FieldByName('Tax').AsFloat, 0); + + Post; + end; + end + else + begin + with CDS_1 do + begin + // ¼Ƿڿɱ༭״̬ + if not (State in [dsEdit, dsInsert]) then + Edit; + // ʹһµĿֵ鷽ʽ + if (not FieldByName('NoTaxPrice').IsNull) and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxPrice').Value := FormatFloat('0.00', FieldByName('NoTaxPrice').AsFloat); + end; + + if (not FieldByName('Qty').IsNull) and (not FieldByName('NoTaxPrice').IsNull) and (FieldByName('Qty').AsString <> '') and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxInclude').Value := FormatFloat('0.00', FieldByName('NoTaxInclude').AsFloat); + end; + + if not FieldByName('TaxRate').IsNull and (FieldByName('TaxRate').AsString <> '') then + begin + FieldByName('TaxRate').Value := FormatFloat('0.00', FieldByName('TaxRate').AsFloat); + end; + + if not FieldByName('Tax').IsNull and (FieldByName('Tax').AsString <> '') then + begin + FieldByName('Tax').Value := FormatFloat('0.00', FieldByName('Tax').AsFloat); + end; + + Post; + end; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmGetableBatchInput.Tv1FFAbstractPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'FFAbstract'; + flagname := 'ժҪ'; + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName('FFAbstract').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_1.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +procedure TfrmGetableBatchInput.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +var + FFSPID: string; +begin +// if CDS_Sub.IsEmpty then +// Exit; +// if Trim(CDS_Sub.fieldbyname('BYIOID').AsString) <> '' then +// begin +// with ADOQueryTemp do +// begin +// Close; +// sql.Clear; +// sql.Add('select * from BS_Yarn_IO where BYIOID=''' + Trim(CDS_Sub.fieldbyname('BYIOID').AsString) + ''''); +// Open; +// end; +// FFSPID := Trim(ADOQueryTemp.fieldbyname('BYIOID').AsString); +// if Trim(FFSPID) <> '' then +// begin +// v1CRType.Options.Editing := False; +// end +// else +// begin +// v1CRType.Options.Editing := True; +// end; +// end +// else +// begin +// v1CRType.Options.Editing := True; +// end; +end; + +procedure TfrmGetableBatchInput.Tv1OppCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := 'ͻ'; + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName('OppCoName').asstring := Trim(frmCompanySel.CDS_1.fieldbyname('CoName').AsString); + Self.CDS_1.FieldByName('oppCoNo').asstring := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + Self.CDS_1.FieldByName('oppShuiNo').asstring := Trim(frmCompanySel.CDS_1.fieldbyname('ShuiNo').AsString); + Self.CDS_1.Post; + end; + end; + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmGetableBatchInput.Tv1OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmFinTradePlanSel := TfrmFinTradePlanSel.Create(Application); + with frmFinTradePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinTradePlanSel.CDS_1 do + begin + //ɹ + self.CDS_1.FieldByName('PurNo').value := null; + self.CDS_1.FieldByName('PurMID').value := null; + self.CDS_1.FieldByName('PurSID').value := null; + + //֯쵥 + self.CDS_1.FieldByName('OrderNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('OrdMainId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + self.CDS_1.FieldByName('OrdSubId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('SubId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConMId').AsString); + self.CDS_1.FieldByName('ConSId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('BuyConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + self.CDS_1.FieldByName('BuyConSID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + +// self.CDS_1.FieldByName('F_Code').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Code').AsString); +// self.CDS_1.FieldByName('F_Name').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Name').AsString); +// self.CDS_1.FieldByName('F_Color').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Color').AsString); +// self.CDS_1.FieldByName('Piece').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); +// self.CDS_1.FieldByName('Qty').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Qty').AsString); +// self.CDS_1.FieldByName('QtyUnit').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('QtyUnit').AsString); +// self.CDS_1.FieldByName('currency').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('currency').AsString); +// self.CDS_1.FieldByName('NoTaxPrice').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); +// self.CDS_1.FieldByName('NoTaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Amount').AsString); +// self.CDS_1.FieldByName('TaxRate').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxRate').AsString); +// self.CDS_1.FieldByName('Tax').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Tax').AsString); +// self.CDS_1.FieldByName('TaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxInclude').AsString); + self.CDS_1.Post; + + end; + + end; + end; + finally + frmFinTradePlanSel.Free; + end; +end; + +procedure TfrmGetableBatchInput.TV1OurCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := '˾'; + if ShowModal = 1 then + begin + self.CDS_1.Edit; + self.CDS_1.FieldByName('OurCoName').Value := Trim(frmCompanySel.CDS_1.fieldbyname('CoName').AsString); + self.CDS_1.FieldByName('OurShuiNo').Value := Trim(frmCompanySel.CDS_1.fieldbyname('ShuiNo').AsString); + self.CDS_1.FieldByName('OurCoNo').Value := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + self.CDS_1.Post; + end; + end; + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmGetableBatchInput.Tv1PurNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmFinPurchasePlanSel := TfrmFinPurchasePlanSel.Create(Application); + with frmFinPurchasePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinPurchasePlanSel.CDS_1 do + begin + self.CDS_1.Edit; + //Էλ + self.CDS_1.FieldByName('OppCoName').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellName').AsString); + self.CDS_1.FieldByName('OppCoNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellNo').AsString); + //֯쵥 + self.CDS_1.FieldByName('OrderNo').value := null; + self.CDS_1.FieldByName('OrdMainId').value := null; + self.CDS_1.FieldByName('OrdSubId').value := null; + + // + self.CDS_1.FieldByName('FinType').Value := 'ɴ'; + self.CDS_1.FieldByName('FFAbstract').Value := 'ɴ߲ɹ'; + //ɹ + self.CDS_1.FieldByName('PurNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurNo').AsString); + self.CDS_1.FieldByName('PurMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurMId').AsString); + self.CDS_1.FieldByName('PurSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurSId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConMId').AsString); + self.CDS_1.FieldByName('ConSId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('CPConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + self.CDS_1.FieldByName('BuyConSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + + self.CDS_1.FieldByName('F_Code').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Code').AsString); + self.CDS_1.FieldByName('F_Name').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Name').AsString); +// self.CDS_1.FieldByName('F_Width').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SubId').AsString); +// self.CDS_1.FieldByName('F_GramWeight').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('C_GramWeight').AsString); + self.CDS_1.FieldByName('F_Color').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Color').AsString); + + self.CDS_1.FieldByName('Piece').asstring := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); + self.CDS_1.FieldByName('Qty').asstring := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Qty').AsString); + self.CDS_1.FieldByName('QtyUnit').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('QtyUnit').AsString); + self.CDS_1.FieldByName('currency').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('currency').AsString); + if not frmFinPurchasePlanSel.CDS_1.FieldByName('PRICE').IsNull then + begin + self.CDS_1.FieldByName('NoTaxPrice').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PRICE').Value); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Amount').IsNull then + begin + self.CDS_1.FieldByName('NoTaxInclude').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Amount').Value); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxRate').IsNull then + begin + self.CDS_1.FieldByName('TaxRate').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxRate').Value); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Tax').IsNull then + begin + self.CDS_1.FieldByName('Tax').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Tax').Value); + end; + + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxInclude').IsNull then + begin + self.CDS_1.FieldByName('TaxInclude').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxInclude').Value); + end; + + self.CDS_1.Post; + end; + end; + end; + finally + frmFinPurchasePlanSel.Free; + end; +end; + +procedure TfrmGetableBatchInput.Tv1TaxRatePropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + FQty, FNoTaxPrice, FNoTaxInclude: Double; //˰ۣ˰ + mTaxRate, mTax, mTaxInclude: Double; //˰ʣ˰˰ + +// mCP_QTY, mCP_TPXS: Double; //ƷͶϵ +begin + + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := StrToFloat(Trim(mvalue)); + Post; +// ShowMessage(Fieldbyname('TaxRate').AsString); + if Fieldbyname('Qty').AsString <> '' then + begin + FQty := Fieldbyname('Qty').AsFloat; + end + else + begin + FQty := 0; + end; + if Fieldbyname('NoTaxPrice').AsString <> '' then + begin + FNoTaxPrice := Fieldbyname('NoTaxPrice').AsFloat; + end + else + begin + FNoTaxPrice := 0; + end; + if Fieldbyname('TaxRate').AsString <> '' then + begin + mTaxRate := Fieldbyname('TaxRate').AsFloat / 100; + end + else + begin + mTaxRate := 0; + end; + if Fieldbyname('Tax').AsString <> '' then + begin + mTax := Fieldbyname('Tax').AsFloat; + end + else + begin + mTax := 0; + end; + if Fieldbyname('TaxInclude').AsString <> '' then + begin + mTaxInclude := Fieldbyname('TaxInclude').AsFloat; + end + else + begin + mTaxInclude := 0; + end; + + end; + + FNoTaxInclude := RoundFloat(FQty * FNoTaxPrice, 2); + mTax := RoundFloat(FNoTaxInclude * mTaxRate, 2); + mTaxInclude := RoundFloat(FNoTaxInclude + mTax, 2); + + with CDS_1 do + begin + Edit; + FieldByName('Qty').Value := FQty; +// FieldByName('ConPrice').Value := FConPrice; + FieldByName('NoTaxPrice').Value := FloatToStr(FNoTaxPrice); + FieldByName('NoTaxInclude').Value := FloatToStr(FNoTaxInclude); + FieldByName('TaxRate').Value := FloatToStr(mTaxRate * 100); + FieldByName('Tax').Value := FloatToStr(mTax); + FieldByName('TaxInclude').Value := FloatToStr(mTaxInclude); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +end. + diff --git a/A09财务通用管理/U_GetableSel.dfm b/A09财务通用管理/U_GetableSel.dfm new file mode 100644 index 0000000..4b099e6 --- /dev/null +++ b/A09财务通用管理/U_GetableSel.dfm @@ -0,0 +1,509 @@ +inherited frmGetableSel: TfrmGetableSel + Left = 65 + Top = 113 + Caption = #24212#20184#27454#25209#37327#36873#25321 + ClientHeight = 572 + ClientWidth = 1406 + Color = clWhite + Font.Charset = GB2312_CHARSET + Font.Height = -16 + Position = poMainFormCenter + OnClose = FormClose + ExplicitWidth = 1422 + ExplicitHeight = 611 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1406 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 115 + Caption = 'ToolBar1' + Color = clSkyBlue + Images = cxImageList_bar + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 16 + Visible = False + OnClick = TBSaveClick + end + object TBAdd: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 2 + Visible = False + OnClick = TBAddClick + end + object TbOrdAdd: TToolButton + Left = 142 + Top = 0 + AutoSize = True + Caption = #32455#36896#21333#22686#34892 + ImageIndex = 2 + Visible = False + OnClick = TbOrdAddClick + end + object TbPurSel: TToolButton + Left = 261 + Top = 0 + AutoSize = True + Caption = #37319#36141#21333#22686#34892 + ImageIndex = 2 + Visible = False + OnClick = TbPurSelClick + end + object TBDel: TToolButton + Left = 380 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 6 + Visible = False + OnClick = TBDelClick + end + object TbSSel: TToolButton + Left = 451 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 12 + OnClick = TbSSelClick + end + object ToolButton1: TToolButton + Left = 522 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 625 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object cxTabControl1: TcxTabControl [1] + Left = 0 + Top = 30 + Width = 1406 + Height = 29 + Align = alTop + TabOrder = 1 + Properties.CustomButtons.Buttons = <> + Properties.Style = 11 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#24320#31080 + #24050#24320#31080 + #20840#37096) + LookAndFeel.Kind = lfUltraFlat + OnChange = cxTabControl1Change + ExplicitTop = 36 + ClientRectRight = 0 + ClientRectTop = 0 + end + object cxGrid1: TcxGrid [2] + Left = 0 + Top = 59 + Width = 1406 + Height = 513 + Align = alClient + TabOrder = 2 + ExplicitLeft = -134 + ExplicitTop = 112 + ExplicitWidth = 1540 + ExplicitHeight = 460 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = Tv1Column12 + end + item + Kind = skSum + Column = Tv1Column15 + end + item + Kind = skSum + Column = Tv1Column16 + end + item + Kind = skSum + Column = Tv1Column17 + end + item + Kind = skSum + Column = Tv1Column11 + end + item + Kind = skSum + Column = Tv1Column25 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object Tv1Column22: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Width = 44 + end + object v2CRTime: TcxGridDBColumn + Tag = 7 + Caption = #21457#29983#26085#26399 + DataBinding.FieldName = 'FFTime' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 82 + end + object Tv1Column23: TcxGridDBColumn + Caption = #23545#36134#26085#26399 + DataBinding.FieldName = 'ReconciliationDate' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 112 + end + object v2Column2: TcxGridDBColumn + Caption = #25105#26041#21333#20301 + DataBinding.FieldName = 'OurCoName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v2FactoryName: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'OppCoName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 102 + end + object v2OrderNo: TcxGridDBColumn + Tag = 7 + Caption = #19978#32423#21333#20301 + DataBinding.FieldName = 'OppParentCoName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object Tv1Column3: TcxGridDBColumn + Caption = #20184#27454#26041#24335 + DataBinding.FieldName = 'PayMent' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + object Tv1Column19: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column24: TcxGridDBColumn + Caption = #25688#35201 + DataBinding.FieldName = 'FFAbstract' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 79 + end + object Tv1Column20: TcxGridDBColumn + Caption = #35745#21010#21333#21495 + DataBinding.FieldName = 'OrderNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 82 + end + object Tv1Column21: TcxGridDBColumn + Caption = #23458#25143#21333#21495 + DataBinding.FieldName = 'BuyConNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Column4: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'F_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column5: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'F_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column6: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'F_Pattern' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column7: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'F_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column28: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'F_StyleNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object Tv1Column8: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'F_Width' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'F_GramWeight' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column10: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'F_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column27: TcxGridDBColumn + Caption = #38468#20214 + DataBinding.FieldName = 'FJFlag' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 48 + end + object Tv1Column11: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Piece' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column12: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column13: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column14: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column15: TcxGridDBColumn + Caption = #20854#20182#36153 + DataBinding.FieldName = 'OtherFee' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column16: TcxGridDBColumn + Caption = #20943#20813 + DataBinding.FieldName = 'Deduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column17: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Amount' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column18: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'Currency' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column25: TcxGridDBColumn + Caption = #26680#38144#37329#39069 + DataBinding.FieldName = 'FFWoAmount' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + end + object Tv1Column26: TcxGridDBColumn + Caption = #26159#21542#21547#31246 + DataBinding.FieldName = 'IsInvoice' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 78 + end + object Tv1Column1: TcxGridDBColumn + Caption = #26469#28304 + DataBinding.FieldName = 'FromID1' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object Tv1Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_Financial.ADOLink + Left = 57 + Top = 72 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_Financial.ADOLink + Left = 177 + Top = 73 + end + inherited ImageList_new32: TImageList + Left = 160 + Top = 288 + end + inherited cxImageList_bar: TcxImageList + FormatVersion = 1 + Left = 248 + Top = 249 + DesignInfo = 16318712 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 592 + Top = 184 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 496 + Top = 184 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_Financial.ADOLink + Parameters = <> + Left = 176 + Top = 176 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 200 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 392 + Top = 272 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 456 + Top = 88 + end + object PM_1: TPopupMenu + Left = 504 + Top = 280 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N3: TMenuItem + Caption = #20840#24323 + OnClick = N3Click + end + object N2: TMenuItem + Caption = #22797#21046 + OnClick = N2Click + end + end +end diff --git a/A09财务通用管理/U_GetableSel.pas b/A09财务通用管理/U_GetableSel.pas new file mode 100644 index 0000000..b62df18 --- /dev/null +++ b/A09财务通用管理/U_GetableSel.pas @@ -0,0 +1,953 @@ +unit U_GetableSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit, ComCtrls, ToolWin, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, cxGridCustomPopupMenu, + cxGridPopupMenu, ADODB, DBClient, cxButtonEdit, cxTextEdit, cxSpinEdit, + StdCtrls, ExtCtrls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxDateRanges, dxBarBuiltInMenu, U_BaseInput, System.ImageList, Vcl.ImgList, + dxScrollbarAnnotations, dxSkinsCore, dxSkinsDefaultPainters, cxImageList, + dxSkinOffice2013White, dxSkinSharpPlus, dxSkinWXI, cxCheckBox, Vcl.Menus, + Clipbrd, cxCurrencyEdit, cxPC; + +type + TfrmGetableSel = class(TfrmBaseInput) + ToolBar1: TToolBar; + TBAdd: TToolButton; + TBDel: TToolButton; + TBSave: TToolButton; + TBClose: TToolButton; + DS_1: TDataSource; + CDS_1: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + GPM_1: TcxGridPopupMenu; + ToolButton1: TToolButton; + TbOrdAdd: TToolButton; + TbPurSel: TToolButton; + PM_1: TPopupMenu; + N1: TMenuItem; + N3: TMenuItem; + N2: TMenuItem; + TbSSel: TToolButton; + cxTabControl1: TcxTabControl; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + Tv1Column22: TcxGridDBColumn; + v2CRTime: TcxGridDBColumn; + Tv1Column23: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2FactoryName: TcxGridDBColumn; + v2OrderNo: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column19: TcxGridDBColumn; + Tv1Column24: TcxGridDBColumn; + Tv1Column20: TcxGridDBColumn; + Tv1Column21: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + Tv1Column6: TcxGridDBColumn; + Tv1Column7: TcxGridDBColumn; + Tv1Column28: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column9: TcxGridDBColumn; + Tv1Column10: TcxGridDBColumn; + Tv1Column27: TcxGridDBColumn; + Tv1Column11: TcxGridDBColumn; + Tv1Column12: TcxGridDBColumn; + Tv1Column13: TcxGridDBColumn; + Tv1Column14: TcxGridDBColumn; + Tv1Column15: TcxGridDBColumn; + Tv1Column16: TcxGridDBColumn; + Tv1Column17: TcxGridDBColumn; + Tv1Column18: TcxGridDBColumn; + Tv1Column25: TcxGridDBColumn; + Tv1Column26: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure TBAddClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TbOrdAddClick(Sender: TObject); + procedure TbPurSelClick(Sender: TObject); + procedure Tv1OppCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1FFAbstractPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure N2Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure Tv1PurNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1CurrencyPropertiesChange(Sender: TObject); + procedure Tv1TaxRatePropertiesEditValueChanged(Sender: TObject); + procedure TbSSelClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + { Private declarations } + function SaveData(): Boolean; + procedure InitGrid(); + public + { Public declarations } + FBCId, FKHName: string; + FFFID: string; + FNoTaxInclude, FTax, FTaxInclude: Double; //˰˰˰ ѡӦ + FFFIDs: string; + end; + +var + frmGetableSel: TfrmGetableSel; + +implementation + +uses + U_DataLink, U_RTFun, U_ZDYHelp, U_CompanySel, U_FinTradePlanSel, + U_FinPurchasePlanSel; + +{$R *.dfm} + +procedure TfrmGetableSel.cxTabControl1Change(Sender: TObject); +begin +// SetStatus(); + InitGrid(); +end; + +procedure TfrmGetableSel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmGetableSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + Filtered := False; + sql.Add(' select A.*,B.BillCycle '); + sql.Add(' from Finance_Flow A '); + SQL.Add(' left join BS_Company B on A.OppCoNo=B.CoCode'); + sql.Add(' where CheckStatus = '''' '); +// sql.Add(' where 1=1 '); + SQL.Add(' and FFFlag = ''Ӧ'' '); + case cxTabControl1.TabIndex of + 0: + begin + sql.Add(' and not EXISTS ( select 1 from Finance_FlowInvoice X where X.FFID=A.FFID ) '); + end; + 1: + begin + sql.Add(' and EXISTS ( select 1 from Finance_FlowInvoice X where X.FFID=A.FFID ) '); + end; + end; + Open; + end; + SCreateCDS(ADOQueryMain, CDS_1); + SInitCDSData(ADOQueryMain, CDS_1); + finally + ADOQueryMain.EnableControls; + TV1.DataController.Filter.Clear; + end; +end; + +procedure TfrmGetableSel.N1Click(Sender: TObject); +begin + SelOKNo(CDS_1, True); + +end; + +procedure TfrmGetableSel.N2Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmGetableSel.N3Click(Sender: TObject); +begin + SelOKNo(CDS_1, false); + +end; + +function TfrmGetableSel.SaveData(): Boolean; +var + Maxno, MFFID: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while not eof do + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Finance_Flow where FFID=''' + Trim(CDS_1.fieldbyname('FFID').AsString) + ''''); + open; + end; + MFFID := Trim(ADOQueryTemp.fieldbyname('FFID').AsString); + if Trim(MFFID) = '' then + begin + if not GetLSNo(ADOQueryCmd, Maxno, 'YFK', 'Finance_Flow', 3, 1) then + raise Exception.Create('ȡӦտʧܣ'); + end + else + begin + Maxno := Trim(MFFID); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Finance_Flow where FFID=''' + Trim(Maxno) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(MFFID) = '' then + begin + Append; + FieldByName('Fillid').Value := Trim(Dcode); + FieldByName('Filler').Value := Trim(DName); + end + else + begin + Edit; + FieldByName('Editid').Value := Trim(Dcode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDate(ADOQueryTemp); + end; + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'Finance_Flow', 0); + + FieldByName('FFID').Value := Maxno; + FieldByName('FFFlag').Value := 'Ӧ'; + FieldByName('FFType').Value := 'ӦǼ'; + FieldByName('CheckStatus').Value := 'δ'; + + + //֯쵥 + FieldByName('OrdMainId').Value := CDS_1.fieldbyname('OrdMainId').Value; + FieldByName('OrdSubId').Value := CDS_1.fieldbyname('OrdSubId').Value; + //֯쵥 + FieldByName('PurMID').Value := CDS_1.fieldbyname('PurMID').Value; + FieldByName('PurSID').Value := CDS_1.fieldbyname('PurSID').Value; + //ͬ + FieldByName('ConMId').Value := CDS_1.fieldbyname('ConMId').value; + FieldByName('ConSId').Value := CDS_1.fieldbyname('ConSId').value; + //Ϻͬ + FieldByName('BuyConMID').Value := CDS_1.fieldbyname('BuyConMID').value; + FieldByName('BuyConSID').Value := CDS_1.fieldbyname('BuyConSID').Value; + //Էλ + FieldByName('OppCoNo').Value := CDS_1.fieldbyname('OppCoNo').Value; + //ҷλ + FieldByName('OurCoNo').Value := CDS_1.fieldbyname('OurCoNo').Value; + + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails)'); + sql.Add('values(''ӦǼ'' '); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(') '); + ExecSQL; + end; + Next; + end; + end; + CDS_1.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + CDS_1.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; +end; + +procedure TfrmGetableSel.TBAddClick(Sender: TObject); +begin + CDS_1.Append; + CDS_1.FieldByName('FFTime').Value := SGetServerDateTime(ADOQueryCmd); + CDS_1.FieldByName('ReconciliationDate').Value := SGetServerDate(ADOQueryCmd); + CDS_1.FieldByName('OurCoName').Value := 'DESHINE VIETNAM CO., LTD'; + CDS_1.FieldByName('SSel').Value := False; + CDS_1.Post; +end; + +procedure TfrmGetableSel.TBCloseClick(Sender: TObject); +begin + + Close; +end; + +procedure TfrmGetableSel.TBDelClick(Sender: TObject); +begin + CDS_1.Delete; +end; + +procedure TfrmGetableSel.TbOrdAddClick(Sender: TObject); +begin + try + frmFinTradePlanSel := TfrmFinTradePlanSel.Create(Application); + with frmFinTradePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinTradePlanSel.CDS_1 do + begin + //֯쵥 + self.CDS_1.FieldByName('OrderNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('OrdMainId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + self.CDS_1.FieldByName('OrdSubId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('SubId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConMId').AsString); + self.CDS_1.FieldByName('ConSId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('BuyConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + self.CDS_1.FieldByName('BuyConSID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + + self.CDS_1.FieldByName('F_Code').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('F_Name').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + self.CDS_1.FieldByName('F_Width').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('SubId').AsString); + self.CDS_1.FieldByName('F_GramWeight').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('F_Color').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + + end; + + end; + end; + finally + frmFinTradePlanSel.Free; + end; +end; + +procedure TfrmGetableSel.FormShow(Sender: TObject); +var + fsj: string; +begin + inherited; + ReadCxGrid('Ӧѡ', Tv1, 'Ӧѡ'); + InitGrid(); +end; + +procedure TfrmGetableSel.TBSaveClick(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + if CDS_1.Locate('FFTime', null, []) = True then + begin + Application.MessageBox('ǼڲΪ!', 'ʾ', 0); + Exit; + end; + if CDS_1.Locate('ReconciliationDate', null, []) = True then + begin + Application.MessageBox('ڲΪ!', 'ʾ', 0); + Exit; + end; + + if CDS_1.Locate('FinType', null, []) = True then + begin + Application.MessageBox('ѡ!', 'ʾ', 0); + Exit; + end; + + if CDS_1.Locate('Qty', null, []) = True then + begin + Application.MessageBox('Ϊ!', 'ʾ', 0); + Exit; + end; + +// CDS_1.First; +// while not CDS_1.Eof do +// begin +// // ͬʱж +// if (CDS_1.FieldByName('IOType').AsString = '') and (CDS_1.FieldByName('ToOrdNo').IsNull or (Trim(CDS_1.FieldByName('ToOrdNo').AsString) = '')) then +// begin +// Application.MessageBox('ѡ񳵼 ֯쵥!', 'ʾ', 0); +// Exit; +// end; +// CDS_1.Next; +// end; + + if SaveData() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + //ModalResult:=1; + Exit; + end; +end; + +procedure TfrmGetableSel.ToolButton1Click(Sender: TObject); +begin + WriteCxGrid('Ӧѡ', Tv1, 'Ӧѡ'); +end; + +procedure TfrmGetableSel.TbPurSelClick(Sender: TObject); +begin + try + frmFinPurchasePlanSel := TfrmFinPurchasePlanSel.Create(Application); + with frmFinPurchasePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinPurchasePlanSel.CDS_1 do + begin + first; + while not Eof do + begin + if CDS_1.fieldbyname('SSel').AsBoolean then + begin + with Self.CDS_1 do + begin + append; + //Էλ + self.CDS_1.FieldByName('OppCoName').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellName').Value); + self.CDS_1.FieldByName('OppCoNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellNo').Value); + //ҷλ + self.CDS_1.FieldByName('FFTime').Value := SGetServerDateTime(ADOQueryCmd); + self.CDS_1.FieldByName('ReconciliationDate').Value := SGetServerDate(ADOQueryCmd); + self.CDS_1.FieldByName('OurCoName').Value := 'DESHINE VIETNAM CO., LTD'; + self.CDS_1.FieldByName('FinType').Value := 'ɴ'; + self.CDS_1.FieldByName('Currency').Value := 'CNY'; + self.CDS_1.FieldByName('SSel').Value := False; + self.CDS_1.FieldByName('FFAbstract').Value := 'ɴ߲ɹ'; + //ɹ + self.CDS_1.FieldByName('PurNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurNo').AsString); + self.CDS_1.FieldByName('PurMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurMId').AsString); + self.CDS_1.FieldByName('PurSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurSId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConMId').AsString); + self.CDS_1.FieldByName('ConSId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('CPConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + self.CDS_1.FieldByName('BuyConSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + + self.CDS_1.FieldByName('F_Code').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Code').Value); + self.CDS_1.FieldByName('F_Name').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Name').Value); +// self.CDS_1.FieldByName('F_Width').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SubId').AsString); +// self.CDS_1.FieldByName('F_GramWeight').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('C_GramWeight').AsString); + self.CDS_1.FieldByName('F_Color').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Color').Value); + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Piece').IsNull then + begin + self.CDS_1.FieldByName('Piece').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Qty').IsNull then + begin + self.CDS_1.FieldByName('Qty').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Qty').AsString); + end; + self.CDS_1.FieldByName('QtyUnit').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('QtyUnit').AsString); + self.CDS_1.FieldByName('currency').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('currency').AsString); + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Price').IsNull then + begin + self.CDS_1.FieldByName('NoTaxPrice').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Price').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Amount').IsNull then + begin + self.CDS_1.FieldByName('NoTaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Amount').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxRate').IsNull then + begin + self.CDS_1.FieldByName('TaxRate').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxRate').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Tax').IsNull then + begin + self.CDS_1.FieldByName('Tax').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Tax').AsString); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxInclude').IsNull then + begin + self.CDS_1.FieldByName('TaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxInclude').AsString); + end; + Post; + end; + end; + frmFinPurchasePlanSel.CDS_1.Next; + end; + + end; + + end; + end; + finally + frmFinPurchasePlanSel.Free; + end; +end; + +procedure TfrmGetableSel.Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := 'Ӧ'; + if ShowModal = 1 then + begin + with Self.CDS_1 do + begin + Edit; + FieldByName('ToCoNo').Value := Trim(CDS_1.fieldbyname('CoCode').AsString); + FieldByName('ToCoName').Value := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); + post; + end; + end; + end; + finally + frmCompanySel.Free; + end; + +end; + +procedure TfrmGetableSel.Tv1CurrencyPropertiesChange(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; +// if not Assigned(Sender) or not (Sender is TComboBox) then +// Exit; + + if TComboBox(Sender).Text = 'VND' then + begin + with CDS_1 do + begin + // ¼Ƿڿɱ༭״̬ + if not (State in [dsEdit, dsInsert]) then + Edit; + + // ֶǷҲΪ + if not FieldByName('NoTaxPrice').IsNull and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxPrice').Value := RoundFloat(FieldByName('NoTaxPrice').AsFloat, 0); + end; + + + // QtyNoTaxPriceֶǷҲΪ + if not FieldByName('Qty').IsNull and not FieldByName('NoTaxPrice').IsNull and (FieldByName('Qty').AsString <> '') and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxInclude').Value := RoundFloat(FieldByName('Qty').AsFloat * FieldByName('NoTaxPrice').AsFloat, 0); + end; + + if not FieldByName('TaxRate').IsNull and (FieldByName('TaxRate').AsString <> '') then + FieldByName('TaxRate').Value := RoundFloat(FieldByName('TaxRate').AsFloat, 0); + + if not FieldByName('Tax').IsNull and (FieldByName('Tax').AsString <> '') then + FieldByName('Tax').Value := RoundFloat(FieldByName('Tax').AsFloat, 0); + + Post; + end; + end + else + begin + with CDS_1 do + begin + // ¼Ƿڿɱ༭״̬ + if not (State in [dsEdit, dsInsert]) then + Edit; + // ʹһµĿֵ鷽ʽ + if (not FieldByName('NoTaxPrice').IsNull) and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxPrice').Value := FormatFloat('0.00', FieldByName('NoTaxPrice').AsFloat); + end; + + if (not FieldByName('Qty').IsNull) and (not FieldByName('NoTaxPrice').IsNull) and (FieldByName('Qty').AsString <> '') and (FieldByName('NoTaxPrice').AsString <> '') then + begin + FieldByName('NoTaxInclude').Value := FormatFloat('0.00', FieldByName('NoTaxInclude').AsFloat); + end; + + if not FieldByName('TaxRate').IsNull and (FieldByName('TaxRate').AsString <> '') then + begin + FieldByName('TaxRate').Value := FormatFloat('0.00', FieldByName('TaxRate').AsFloat); + end; + + if not FieldByName('Tax').IsNull and (FieldByName('Tax').AsString <> '') then + begin + FieldByName('Tax').Value := FormatFloat('0.00', FieldByName('Tax').AsFloat); + end; + + Post; + end; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmGetableSel.Tv1FFAbstractPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'FFAbstract'; + flagname := 'ժҪ'; + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName('FFAbstract').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_1.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +procedure TfrmGetableSel.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +var + FFSPID: string; +begin +// if CDS_Sub.IsEmpty then +// Exit; +// if Trim(CDS_Sub.fieldbyname('BYIOID').AsString) <> '' then +// begin +// with ADOQueryTemp do +// begin +// Close; +// sql.Clear; +// sql.Add('select * from BS_Yarn_IO where BYIOID=''' + Trim(CDS_Sub.fieldbyname('BYIOID').AsString) + ''''); +// Open; +// end; +// FFSPID := Trim(ADOQueryTemp.fieldbyname('BYIOID').AsString); +// if Trim(FFSPID) <> '' then +// begin +// v1CRType.Options.Editing := False; +// end +// else +// begin +// v1CRType.Options.Editing := True; +// end; +// end +// else +// begin +// v1CRType.Options.Editing := True; +// end; +end; + +procedure TfrmGetableSel.Tv1OppCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := 'Ӧ'; + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName('OppCoName').asstring := Trim(CDS_1.fieldbyname('CoName').AsString); + Self.CDS_1.FieldByName('OurCoNo').asstring := Trim(CDS_1.fieldbyname('CoCode').AsString); + Self.CDS_1.Post; + end; + end; + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmGetableSel.Tv1OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmFinTradePlanSel := TfrmFinTradePlanSel.Create(Application); + with frmFinTradePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinTradePlanSel.CDS_1 do + begin + //ɹ + self.CDS_1.FieldByName('PurNo').value := null; + self.CDS_1.FieldByName('PurMID').value := null; + self.CDS_1.FieldByName('PurSID').value := null; + + //֯쵥 + self.CDS_1.FieldByName('OrderNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); + self.CDS_1.FieldByName('OrdMainId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('MainId').AsString); + self.CDS_1.FieldByName('OrdSubId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('SubId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConMId').AsString); + self.CDS_1.FieldByName('ConSId').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('BuyConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + self.CDS_1.FieldByName('BuyConSID').AsString := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + +// self.CDS_1.FieldByName('F_Code').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Code').AsString); +// self.CDS_1.FieldByName('F_Name').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Name').AsString); +// self.CDS_1.FieldByName('F_Color').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Color').AsString); +// self.CDS_1.FieldByName('Piece').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); +// self.CDS_1.FieldByName('Qty').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Qty').AsString); +// self.CDS_1.FieldByName('QtyUnit').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('QtyUnit').AsString); +// self.CDS_1.FieldByName('currency').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('currency').AsString); +// self.CDS_1.FieldByName('NoTaxPrice').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); +// self.CDS_1.FieldByName('NoTaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Amount').AsString); +// self.CDS_1.FieldByName('TaxRate').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxRate').AsString); +// self.CDS_1.FieldByName('Tax').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Tax').AsString); +// self.CDS_1.FieldByName('TaxInclude').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxInclude').AsString); + self.CDS_1.Post; + + end; + + end; + end; + finally + frmFinTradePlanSel.Free; + end; +end; + +procedure TfrmGetableSel.Tv1PurNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmFinPurchasePlanSel := TfrmFinPurchasePlanSel.Create(Application); + with frmFinPurchasePlanSel do + begin + if ShowModal = 1 then + begin + with frmFinPurchasePlanSel.CDS_1 do + begin + self.CDS_1.Edit; + //Էλ + self.CDS_1.FieldByName('OppCoName').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellName').AsString); + self.CDS_1.FieldByName('OppCoNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SellNo').AsString); + //֯쵥 + self.CDS_1.FieldByName('OrderNo').value := null; + self.CDS_1.FieldByName('OrdMainId').value := null; + self.CDS_1.FieldByName('OrdSubId').value := null; + + // + self.CDS_1.FieldByName('FinType').Value := 'ɴ'; + self.CDS_1.FieldByName('FFAbstract').Value := 'ɴ߲ɹ'; + //ɹ + self.CDS_1.FieldByName('PurNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurNo').AsString); + self.CDS_1.FieldByName('PurMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurMId').AsString); + self.CDS_1.FieldByName('PurSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PurSId').AsString); + //ͬ + self.CDS_1.FieldByName('ConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('ConNo').AsString); + self.CDS_1.FieldByName('ConMId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConMId').AsString); + self.CDS_1.FieldByName('ConSId').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('fromConSId').AsString); + //Ϻͬ + self.CDS_1.FieldByName('BuyConNo').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('CPConNo').AsString); + self.CDS_1.FieldByName('BuyConMID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPSID').AsString); + self.CDS_1.FieldByName('BuyConSID').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('FROMCPMID').AsString); + + self.CDS_1.FieldByName('F_Code').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Code').AsString); + self.CDS_1.FieldByName('F_Name').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Name').AsString); +// self.CDS_1.FieldByName('F_Width').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('SubId').AsString); +// self.CDS_1.FieldByName('F_GramWeight').AsString := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('C_GramWeight').AsString); + self.CDS_1.FieldByName('F_Color').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Y_Color').AsString); + + self.CDS_1.FieldByName('Piece').asstring := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Piece').AsString); + self.CDS_1.FieldByName('Qty').asstring := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Qty').AsString); + self.CDS_1.FieldByName('QtyUnit').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('QtyUnit').AsString); + self.CDS_1.FieldByName('currency').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('currency').AsString); + if not frmFinPurchasePlanSel.CDS_1.FieldByName('PRICE').IsNull then + begin + self.CDS_1.FieldByName('NoTaxPrice').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('PRICE').Value); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Amount').IsNull then + begin + self.CDS_1.FieldByName('NoTaxInclude').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Amount').Value); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxRate').IsNull then + begin + self.CDS_1.FieldByName('TaxRate').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxRate').Value); + end; + if not frmFinPurchasePlanSel.CDS_1.FieldByName('Tax').IsNull then + begin + self.CDS_1.FieldByName('Tax').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('Tax').Value); + end; + + if not frmFinPurchasePlanSel.CDS_1.FieldByName('TaxInclude').IsNull then + begin + self.CDS_1.FieldByName('TaxInclude').Value := Trim(frmFinPurchasePlanSel.CDS_1.fieldbyname('TaxInclude').Value); + end; + + self.CDS_1.Post; + end; + end; + end; + finally + frmFinPurchasePlanSel.Free; + end; +end; + +procedure TfrmGetableSel.Tv1TaxRatePropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + FQty, FNoTaxPrice, FNoTaxInclude: Double; //˰ۣ˰ + mTaxRate, mTax, mTaxInclude: Double; //˰ʣ˰˰ + +// mCP_QTY, mCP_TPXS: Double; //ƷͶϵ +begin + + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := StrToFloat(Trim(mvalue)); + Post; +// ShowMessage(Fieldbyname('TaxRate').AsString); + if Fieldbyname('Qty').AsString <> '' then + begin + FQty := Fieldbyname('Qty').AsFloat; + end + else + begin + FQty := 0; + end; + if Fieldbyname('NoTaxPrice').AsString <> '' then + begin + FNoTaxPrice := Fieldbyname('NoTaxPrice').AsFloat; + end + else + begin + FNoTaxPrice := 0; + end; + if Fieldbyname('TaxRate').AsString <> '' then + begin + mTaxRate := Fieldbyname('TaxRate').AsFloat / 100; + end + else + begin + mTaxRate := 0; + end; + if Fieldbyname('Tax').AsString <> '' then + begin + mTax := Fieldbyname('Tax').AsFloat; + end + else + begin + mTax := 0; + end; + if Fieldbyname('TaxInclude').AsString <> '' then + begin + mTaxInclude := Fieldbyname('TaxInclude').AsFloat; + end + else + begin + mTaxInclude := 0; + end; + + end; + + FNoTaxInclude := RoundFloat(FQty * FNoTaxPrice, 2); + mTax := RoundFloat(FNoTaxInclude * mTaxRate, 2); + mTaxInclude := RoundFloat(FNoTaxInclude + mTax, 2); + + with CDS_1 do + begin + Edit; + FieldByName('Qty').Value := FQty; +// FieldByName('ConPrice').Value := FConPrice; + FieldByName('NoTaxPrice').Value := FloatToStr(FNoTaxPrice); + FieldByName('NoTaxInclude').Value := FloatToStr(FNoTaxInclude); + FieldByName('TaxRate').Value := FloatToStr(mTaxRate * 100); + FieldByName('Tax').Value := FloatToStr(mTax); + FieldByName('TaxInclude').Value := FloatToStr(mTaxInclude); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmGetableSel.TbSSelClick(Sender: TObject); +var + FirstOppCoName: string; + bAllSame: Boolean; +begin + if not CDS_1.Locate('ssel', True, []) then + begin + Application.MessageBox('ѡݣ', 'ʾϢ', MB_OK); + Exit; + end; +//жѡӦǷͬһ + FNoTaxInclude := 0; + FTax := 0; + FTaxInclude := 0; + FFFID := ''; + + CDS_1.First; + FirstOppCoName := ''; + bAllSame := True; + + with CDS_1 do + begin + while not Eof do + begin + if FieldByName('Ssel').AsBoolean then + begin + if FirstOppCoName = '' then + FirstOppCoName := FieldByName('OppCoName').AsString + else if FirstOppCoName <> FieldByName('OppCoName').AsString then + begin + bAllSame := False; + Break; + end; + + FNoTaxInclude := FNoTaxInclude + CDS_1.FieldByName('NoTaxInclude').AsFloat; + FTax := FTax + CDS_1.FieldByName('Tax').AsFloat; + FTaxInclude := FTaxInclude + CDS_1.FieldByName('TaxInclude').AsFloat; + if FFFIDs = '' then + begin + FFFIDs := CDS_1.FieldByName('FFID').AsString; + end + else + begin + FFFIDs := FFFIDs + ',' + CDS_1.FieldByName('FFID').AsString; + end; + + end; + Next; + end; + end; + + if not bAllSame then + begin + ShowMessage('ѡĶԷλͬ'); + exit; + end; + if FFFIDs <> '' then + begin + ModalResult := 1; + end; + +end; + +end. + diff --git a/A09财务通用管理/U_InvoiceInInPut.pas b/A09财务通用管理/U_InvoiceInInPut.pas index 5b35709..305ba8d 100644 --- a/A09财务通用管理/U_InvoiceInInPut.pas +++ b/A09财务通用管理/U_InvoiceInInPut.pas @@ -217,12 +217,14 @@ begin ADOQueryCmd.FieldByName('SupplierShuiNo').Value := Trim(CDS_Invoice.fieldbyname('SupplierShuiNo').AsString); ADOQueryCmd.FieldByName('SupplierNo').Value := Trim(CDS_Invoice.fieldbyname('SupplierNo').AsString); ADOQueryCmd.fieldbyname('OurCoNo').Value := trim(CDS_Invoice.FieldByName('OurCoNo').AsString); -// ADOQueryCmd.fieldbyname('PayDate').Value := trim(CDS_Invoice.FieldByName('PayDate').AsString); + + ADOQueryCmd.fieldbyname('paydate').Value := trim(CDS_Invoice.FieldByName('paydate').AsString); ADOQueryCmd.Post; CDS_Invoice.Edit; CDS_Invoice.FieldByName('IVId').Value := MaxNo; CDS_Invoice.Post; + with ADOQueryTmp do begin close; @@ -333,20 +335,31 @@ begin application.MessageBox('我方单位不能为空', '提示'); exit; end; - if not CDS_Invoice.FieldByName('IVDate').isnull then - begin - if CDS_Invoice.FieldByName('BillCycle').asstring <> '' then +// 遍历所有记录 + + try + CDS_Invoice.First; // 移到第一条记录 + while not CDS_Invoice.Eof do begin - CDS_Invoice.Edit; - CDS_Invoice.FieldByName('PayDate').AsDateTime := CDS_Invoice.FieldByName('IVDate').AsDateTime + StrToIntDef(Trim(CDS_Invoice.FieldByName('BillCycle').AsString), 0); - CDS_Invoice.Post; - end - else - begin - CDS_Invoice.Edit; - CDS_Invoice.FieldByName('PayDate').Value := CDS_Invoice.FieldByName('IVDate').Value; - CDS_Invoice.Post; + if not CDS_Invoice.FieldByName('IVDate').IsNull then + begin + if CDS_Invoice.FieldByName('BillCycle').AsString <> '' then + begin + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('PayDate').AsDateTime := CDS_Invoice.FieldByName('IVDate').AsDateTime + StrToIntDef(Trim(CDS_Invoice.FieldByName('BillCycle').AsString), 0); + CDS_Invoice.Post; + end + else + begin + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('PayDate').Value := CDS_Invoice.FieldByName('IVDate').Value; + CDS_Invoice.Post; + end; + end; + CDS_Invoice.Next; // 下一条记录 end; + finally + CDS_Invoice.EnableControls; // 恢复UI更新 end; if SaveDate() then diff --git a/A09财务通用管理/U_InvoiceInList.dfm b/A09财务通用管理/U_InvoiceInList.dfm index 10c4270..3d9f9e3 100644 --- a/A09财务通用管理/U_InvoiceInList.dfm +++ b/A09财务通用管理/U_InvoiceInList.dfm @@ -222,7 +222,7 @@ inherited frmInvoiceInList: TfrmInvoiceInList TabOrder = 2 Width = 150 end - object OppCoName: TcxTextEdit + object Supplier: TcxTextEdit Tag = 2 Left = 581 Top = 4 @@ -259,6 +259,7 @@ inherited frmInvoiceInList: TfrmInvoiceInList Align = alClient PopupMenu = PopupMenu1 TabOrder = 3 + ExplicitTop = 124 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False diff --git a/A09财务通用管理/U_InvoiceInList.pas b/A09财务通用管理/U_InvoiceInList.pas index fd74326..b96c12f 100644 --- a/A09财务通用管理/U_InvoiceInList.pas +++ b/A09财务通用管理/U_InvoiceInList.pas @@ -68,7 +68,7 @@ type F_Name: TcxTextEdit; IVNo: TcxTextEdit; F_Spec: TcxTextEdit; - OppCoName: TcxTextEdit; + Supplier: TcxTextEdit; OurCoName: TcxTextEdit; ToolButton5: TToolButton; Label2: TLabel; diff --git a/A09财务通用管理/U_InvoiceOutInPut.dfm b/A09财务通用管理/U_InvoiceOutInPut.dfm index 6eef86c..7ecb1c5 100644 --- a/A09财务通用管理/U_InvoiceOutInPut.dfm +++ b/A09财务通用管理/U_InvoiceOutInPut.dfm @@ -47,16 +47,24 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut ImageIndex = 2 OnClick = ToolButton1Click end - object ToolButton2: TToolButton + object ToolButton5: TToolButton Left = 142 Top = 0 AutoSize = True + Caption = #24212#25910#27454 + ImageIndex = 2 + OnClick = ToolButton5Click + end + object ToolButton2: TToolButton + Left = 229 + Top = 0 + AutoSize = True Caption = #21024#34892 ImageIndex = 6 OnClick = ToolButton2Click end object ToolButton4: TToolButton - Left = 213 + Left = 300 Top = 0 AutoSize = True Caption = #23548#20837 @@ -64,7 +72,7 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut OnClick = ToolButton4Click end object ToolButton3: TToolButton - Left = 284 + Left = 371 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -72,7 +80,7 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut OnClick = ToolButton3Click end object TBClose: TToolButton - Left = 387 + Left = 474 Top = 0 AutoSize = True Caption = #20851#38381 @@ -98,11 +106,10 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut DataController.Summary.FooterSummaryItems = < item Kind = skSum - Column = v1Qty end item Kind = skSum - Column = v1Money + Column = Tv1Amount end item Kind = skSum @@ -112,7 +119,7 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut end item Kind = skSum - Column = v1Column4 + Column = Tv1TaxAmount end> DataController.Summary.SummaryGroups = <> OptionsCustomize.ColumnFiltering = False @@ -121,7 +128,21 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut OptionsView.Footer = True OptionsView.GroupByBox = False OptionsView.Indicator = True - object Tv1Column5: TcxGridDBColumn + object Tv1IVNo: TcxGridDBColumn + Caption = #21457#31080#21495#30721 + DataBinding.FieldName = 'IVNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1BGDNum: TcxGridDBColumn + Caption = #25253#20851#21333#21495#30721 + DataBinding.FieldName = 'BGDNum' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 120 + end + object Tv1IVDate: TcxGridDBColumn Caption = #21457#31080#26085#26399 DataBinding.FieldName = 'IVDate' DataBinding.IsNullValueType = True @@ -129,14 +150,35 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut HeaderAlignmentHorz = taCenter Width = 77 end - object Tv1Column1: TcxGridDBColumn - Caption = #21457#31080#21495#30721 - DataBinding.FieldName = 'IVNo' + object Tv1SupplierShuiNo: TcxGridDBColumn + Caption = #23458#25143#31246#21495 + DataBinding.FieldName = 'SupplierShuiNo' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Width = 77 + Width = 103 end - object Tv1Column2: TcxGridDBColumn + object Tv1Supplier: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'Supplier' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1SupplierPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 109 + end + object Tv1OurShuiNo: TcxGridDBColumn + Caption = #25105#26041#31246#21495 + DataBinding.FieldName = 'OurShuiNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 114 + end + object Tv1OurCoName: TcxGridDBColumn Caption = #25105#26041#21333#20301 DataBinding.FieldName = 'OurCoName' DataBinding.IsNullValueType = True @@ -146,151 +188,10 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut Default = True Kind = bkEllipsis end> - Properties.ReadOnly = True - Properties.OnButtonClick = Tv1Column2PropertiesButtonClick HeaderAlignmentHorz = taCenter - Width = 82 + Width = 130 end - object Tv1Column4: TcxGridDBColumn - Caption = #23545#26041#21333#20301 - DataBinding.FieldName = 'OppCoName' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxButtonEditProperties' - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.ReadOnly = True - Properties.OnButtonClick = Tv1Column4PropertiesButtonClick - HeaderAlignmentHorz = taCenter - Width = 86 - end - object Tv1Column6: TcxGridDBColumn - Caption = #19978#32423#21333#20301 - DataBinding.FieldName = 'OppParentCoName' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxButtonEditProperties' - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.ReadOnly = True - Properties.OnButtonClick = Tv1Column6PropertiesButtonClick - HeaderAlignmentHorz = taCenter - Width = 86 - end - object Tv1Column3: TcxGridDBColumn - Caption = #21457#31080#31867#22411 - DataBinding.FieldName = 'IVType' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxButtonEditProperties' - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.OnButtonClick = Tv1Column3PropertiesButtonClick - HeaderAlignmentHorz = taCenter - Width = 80 - end - object v1Column1: TcxGridDBColumn - Caption = #20135#21697#32534#21495 - DataBinding.FieldName = 'F_Code' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 80 - end - object v1P_CodeName: TcxGridDBColumn - Caption = #20135#21697#21517#31216 - DataBinding.FieldName = 'F_Name' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxButtonEditProperties' - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick - HeaderAlignmentHorz = taCenter - Width = 119 - end - object v1P_Spec: TcxGridDBColumn - Caption = #35268#26684 - DataBinding.FieldName = 'F_Spec' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 103 - end - object v1Qty: TcxGridDBColumn - Caption = #25968#37327 - DataBinding.FieldName = 'Qty' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - Width = 83 - end - object v1QtyUnit: TcxGridDBColumn - Caption = #25968#37327#21333#20301 - DataBinding.FieldName = 'QtyUnit' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxButtonEditProperties' - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.OnButtonClick = v1QtyUnitPropertiesButtonClick - HeaderAlignmentHorz = taCenter - Width = 90 - end - object v1Price: TcxGridDBColumn - Caption = #21333#20215 - DataBinding.FieldName = 'Price' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - Width = 93 - end - object v1Money: TcxGridDBColumn - Caption = #37329#39069 - DataBinding.FieldName = 'Amount' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 81 - end - object v1Column3: TcxGridDBColumn - Caption = #31246#29575'(%)' - DataBinding.FieldName = 'tax' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - Width = 70 - end - object v1Column5: TcxGridDBColumn - Caption = #31246#39069 - DataBinding.FieldName = 'TaxFee' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 53 - end - object v1Column4: TcxGridDBColumn - Caption = #21547#31246#37329#39069 - DataBinding.FieldName = 'TaxAmount' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - Width = 70 - end - object Tv1Column8: TcxGridDBColumn + object Tv1Currency: TcxGridDBColumn Caption = #24065#31181 DataBinding.FieldName = 'Currency' DataBinding.IsNullValueType = True @@ -299,15 +200,76 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut Properties.Items.Strings = ( 'CNY' 'USD' - 'EUR') + 'EUR' + 'VND') HeaderAlignmentHorz = taCenter + Width = 85 end - object Tv1Column7: TcxGridDBColumn - Caption = #22791#27880 - DataBinding.FieldName = 'Note' + object Tv1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + HeaderAlignmentHorz = taCenter + Width = 93 + end + object Tv1Amount: TcxGridDBColumn + Caption = #24635#37329#39069#26410#21547#31246 + DataBinding.FieldName = 'Amount' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + Properties.OnEditValueChanged = Tv1AmountPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 111 + end + object Tv1TaxFee: TcxGridDBColumn + Caption = #31246#37329 + DataBinding.FieldName = 'TaxFee' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + Properties.OnEditValueChanged = Tv1AmountPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 65 + end + object Tv1TaxAmount: TcxGridDBColumn + Caption = #24635#37329#39069#24050#21547#31246 + DataBinding.FieldName = 'TaxAmount' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object Tv1BillCycle: TcxGridDBColumn + Caption = #36134#26399 + DataBinding.FieldName = 'BillCycle' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Width = 66 + Width = 80 + end + object Tv1fromFlow: TcxGridDBColumn + Caption = #24212#25910#27454#20027#38190 + DataBinding.FieldName = 'fromFlow' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 120 + end + object Tv1OurCoNo: TcxGridDBColumn + Caption = #25105#26041#21333#20301#32534#21495 + DataBinding.FieldName = 'OurCoNo' + DataBinding.IsNullValueType = True + Visible = False + Width = 80 + end + object Tv1SupplierNo: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'SupplierNo' + DataBinding.IsNullValueType = True + Visible = False + Width = 80 end end object cxGridLevel1: TcxGridLevel @@ -326,7 +288,6 @@ object frmInvoiceOutInPut: TfrmInvoiceOutInPut Top = 268 end object GPM_1: TcxGridPopupMenu - Grid = cxGrid1 PopupMenus = <> Left = 280 Top = 112 diff --git a/A09财务通用管理/U_InvoiceOutInPut.pas b/A09财务通用管理/U_InvoiceOutInPut.pas index c663eb0..741c1c9 100644 --- a/A09财务通用管理/U_InvoiceOutInPut.pas +++ b/A09财务通用管理/U_InvoiceOutInPut.pas @@ -10,8 +10,8 @@ uses cxGridDBTableView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, ExtCtrls, StdCtrls, BtnEdit, cxButtonEdit, cxTextEdit, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, cxCalendar, - dxDateRanges, dxBarBuiltInMenu, ComObj, dxSkinsCore, dxSkinsDefaultPainters, - dxScrollbarAnnotations; + dxDateRanges, dxBarBuiltInMenu, ComObj, dxSkinsCore, dxSkinsDefaultPainters, + dxScrollbarAnnotations, cxCurrencyEdit; type TfrmInvoiceOutInPut = class(TForm) @@ -21,34 +21,34 @@ type ToolBar1: TToolBar; TSave: TToolButton; TBClose: TToolButton; - cxGrid1: TcxGrid; - Tv1: TcxGridDBTableView; - v1P_CodeName: TcxGridDBColumn; - v1P_Spec: TcxGridDBColumn; - v1Qty: TcxGridDBColumn; - v1Price: TcxGridDBColumn; - v1QtyUnit: TcxGridDBColumn; - cxGridLevel1: TcxGridLevel; ADOQueryTmp: TADOQuery; ADOQueryCmd: TADOQuery; - v1Column1: TcxGridDBColumn; - v1Column3: TcxGridDBColumn; - v1Column4: TcxGridDBColumn; - v1Column5: TcxGridDBColumn; - Tv1Column1: TcxGridDBColumn; - Tv1Column2: TcxGridDBColumn; - Tv1Column3: TcxGridDBColumn; - Tv1Column4: TcxGridDBColumn; - Tv1Column5: TcxGridDBColumn; - Tv1Column7: TcxGridDBColumn; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; - Tv1Column6: TcxGridDBColumn; - Tv1Column8: TcxGridDBColumn; ToolButton4: TToolButton; OpenDialog1: TOpenDialog; CDS_LM: TClientDataSet; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + Tv1IVNo: TcxGridDBColumn; + Tv1BGDNum: TcxGridDBColumn; + Tv1IVDate: TcxGridDBColumn; + Tv1SupplierShuiNo: TcxGridDBColumn; + Tv1Supplier: TcxGridDBColumn; + Tv1OurShuiNo: TcxGridDBColumn; + Tv1OurCoName: TcxGridDBColumn; + Tv1Currency: TcxGridDBColumn; + Tv1Price: TcxGridDBColumn; + Tv1Amount: TcxGridDBColumn; + Tv1TaxFee: TcxGridDBColumn; + Tv1TaxAmount: TcxGridDBColumn; + Tv1BillCycle: TcxGridDBColumn; + Tv1fromFlow: TcxGridDBColumn; + Tv1OurCoNo: TcxGridDBColumn; + Tv1SupplierNo: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolButton5: TToolButton; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TSaveClick(Sender: TObject); @@ -65,9 +65,13 @@ type procedure ToolButton3Click(Sender: TObject); procedure Tv1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton4Click(Sender: TObject); + procedure Tv1SupplierPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1AmountPropertiesEditValueChanged(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); private procedure initGrid(); - procedure SaveDate(); + function SaveDate(): Boolean; + procedure SaveFlowInvoice(); { Private declarations } public FIVID: string; @@ -81,10 +85,9 @@ var implementation uses - U_RTFun, U_ZDYHelp, U_CompanySel, U_dataLink; + U_RTFun, U_ZDYHelp, U_CompanySel, U_dataLink, U_GetableSel; {$R *.dfm} - -procedure TfrmInvoiceOutInPut.SaveDate(); +function TfrmInvoiceOutInPut.SaveDate(): Boolean; var MaxNo: string; begin @@ -127,11 +130,57 @@ begin RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_Invoice, 'Finance_Invoice', 0); ADOQueryCmd.fieldbyname('IVID').Value := MaxNo; ADOQueryCmd.fieldbyname('IVFlag').Value := '销项'; - ADOQueryCmd.fieldbyname('OppCoNo').Value := trim(CDS_Invoice.FieldByName('OppCoNo').AsString); - ADOQueryCmd.fieldbyname('OppParentCoNo').Value := trim(CDS_Invoice.FieldByName('OppParentCoNo').AsString); + ADOQueryCmd.FieldByName('SupplierShuiNo').Value := Trim(CDS_Invoice.fieldbyname('SupplierShuiNo').AsString); + ADOQueryCmd.FieldByName('SupplierNo').Value := Trim(CDS_Invoice.fieldbyname('SupplierNo').AsString); ADOQueryCmd.fieldbyname('OurCoNo').Value := trim(CDS_Invoice.FieldByName('OurCoNo').AsString); + ADOQueryCmd.fieldbyname('paydate').Value := trim(CDS_Invoice.FieldByName('paydate').AsString); + ADOQueryCmd.Post; + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('IVId').Value := MaxNo; + CDS_Invoice.Post; + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET NoTaxPrice =' + (Trim(CDS_Invoice.FieldByName('PRICE').AsString))); + SQL.Add(',Currency=' + QuotedStr(Trim(CDS_Invoice.FieldByName('Currency').AsString))); + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(CDS_Invoice.FieldByName('fromFlow').AsString) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET NoTaxInclude=NoTaxPrice*QTY '); + + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(CDS_Invoice.FieldByName('fromFlow').AsString) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET Tax=NoTaxInclude*TaxRate/100 '); + + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(CDS_Invoice.FieldByName('fromFlow').AsString) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET TaxInclude=NoTaxInclude+Tax '); + + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(CDS_Invoice.FieldByName('fromFlow').AsString) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; next; end; end; @@ -188,9 +237,9 @@ begin application.MessageBox('发票号不能为空', '提示'); exit; end; - if CDS_Invoice.Locate('IVType', null, []) then + if CDS_Invoice.Locate('IVDate', null, []) then begin - application.MessageBox('发票类型不能为空', '提示'); + application.MessageBox('发票日期不能为空', '提示'); exit; end; if CDS_Invoice.Locate('OurCoName', null, []) then @@ -198,12 +247,81 @@ begin application.MessageBox('我方单位不能为空', '提示'); exit; end; - if CDS_Invoice.Locate('OppCoName', null, []) then - begin - application.MessageBox('对方单位不能为空', '提示'); - exit; + try + CDS_Invoice.First; // 移到第一条记录 + while not CDS_Invoice.Eof do + begin + if not CDS_Invoice.FieldByName('IVDate').IsNull then + begin + if CDS_Invoice.FieldByName('BillCycle').AsString <> '' then + begin + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('PayDate').AsDateTime := CDS_Invoice.FieldByName('IVDate').AsDateTime + StrToIntDef(Trim(CDS_Invoice.FieldByName('BillCycle').AsString), 0); + CDS_Invoice.Post; + end + else + begin + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('PayDate').Value := CDS_Invoice.FieldByName('IVDate').Value; + CDS_Invoice.Post; + end; + end; + CDS_Invoice.Next; // 下一条记录 + end; + finally + CDS_Invoice.EnableControls; // 恢复UI更新 + end; + if SaveDate() then + begin + SaveFlowInvoice(); + Modalresult := 1; + end; + +end; + +procedure TfrmInvoiceOutInPut.SaveFlowInvoice(); +begin + if CDS_Invoice.IsEmpty then + Exit; + + // 开始事务(假设使用ADO事务) + ADOQueryCmd.Connection.BeginTrans; + try + CDS_Invoice.DisableControls; + CDS_Invoice.First; + + while not CDS_Invoice.Eof do + begin + if Trim(CDS_Invoice.FieldByName('IVID').AsString) <> '' then + begin + // 使用参数化查询 + with ADOQueryCmd do + begin + Close; + SQL.Text := 'delete from Finance_FlowInvoice where IVID = :IVID'; + Parameters.ParamByName('IVID').Value := Trim(CDS_Invoice.FieldByName('IVID').AsString); + ExecSQL; + + Close; + SQL.Text := 'exec P_InsertFinanceFlowInvoice @IVID = :IVID, @fffIDs = :fffIDs'; + Parameters.ParamByName('IVID').Value := Trim(CDS_Invoice.FieldByName('IVID').AsString); + Parameters.ParamByName('fffIDs').Value := Trim(CDS_Invoice.FieldByName('fromFlow').AsString); +// ShowMessage(sql.Text); + ExecSQL; + end; + end; + + CDS_Invoice.Next; // 移动到下一条记录 + end; + + CDS_Invoice.EnableControls; + ADOQueryCmd.Connection.CommitTrans; // 提交事务 +// ShowMessage('保存成功!'); + except + ADOQueryCmd.Connection.RollbackTrans; // 出错回滚 + raise; // 重新抛出异常 + end; - SaveDate(); end; procedure TfrmInvoiceOutInPut.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); @@ -313,6 +431,59 @@ begin frmInvoiceOutInPut := nil; end; +procedure TfrmInvoiceOutInPut.Tv1AmountPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + mAmount, mTaxFee, mTaxAmount: Double; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + + with CDS_Invoice do + begin + Edit; + FieldByName(FFieldName).Value := StrToFloat(Trim(mvalue)); + Post; +// ShowMessage(Fieldbyname('TaxRate').AsString); + if Fieldbyname('Amount').AsString <> '' then + begin + mAmount := Fieldbyname('Amount').AsFloat; + end + else + begin + mAmount := 0; + end; + + if Fieldbyname('TaxFee').AsString <> '' then + begin + mTaxFee := Fieldbyname('TaxFee').AsFloat; + end + else + begin + mTaxFee := 0; + end; + + end; + + mTaxAmount := RoundFloat(mAmount + mTaxFee, 3); + + with CDS_Invoice do + begin + Edit; + FieldByName('Amount').Value := mAmount; +// FieldByName('ConPrice').Value := FConPrice; + FieldByName('TaxFee').Value := mTaxFee; + FieldByName('TaxAmount').Value := mTaxAmount; + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + +end; + procedure TfrmInvoiceOutInPut.Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try @@ -376,6 +547,29 @@ begin end; procedure TfrmInvoiceOutInPut.Tv1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := '供应商'; + if ShowModal = 1 then + begin + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('Supplier').Value := Trim(frmCompanySel.CDS_1.fieldbyname('CoName').AsString); + CDS_Invoice.FieldByName('SupplierShuiNo').Value := Trim(frmCompanySel.CDS_1.fieldbyname('ShuiNo').AsString); + CDS_Invoice.FieldByName('SupplierNo').Value := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + + CDS_Invoice.FieldByName('BillCycle').Value := Trim(frmCompanySel.CDS_1.fieldbyname('BillCycle').AsString); + CDS_Invoice.Post; + end; + end; + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmInvoiceOutInPut.Tv1SupplierPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmCompanySel := TfrmCompanySel.Create(Application); @@ -384,9 +578,13 @@ begin FCoType := '客户'; if ShowModal = 1 then begin - Self.CDS_Invoice.Edit; - Self.CDS_Invoice.FieldByName('OppParentCoNo').Value := Trim(CDS_1.fieldbyname('CoCode').AsString); - Self.CDS_Invoice.FieldByName('OppParentCoName').Value := Trim(CDS_1.fieldbyname('CoAbbrName').AsString); + CDS_Invoice.Edit; + CDS_Invoice.FieldByName('Supplier').Value := Trim(frmCompanySel.CDS_1.fieldbyname('CoName').AsString); + CDS_Invoice.FieldByName('SupplierShuiNo').Value := Trim(frmCompanySel.CDS_1.fieldbyname('ShuiNo').AsString); + CDS_Invoice.FieldByName('SupplierNo').Value := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + + CDS_Invoice.FieldByName('BillCycle').Value := Trim(frmCompanySel.CDS_1.fieldbyname('BillCycle').AsString); + CDS_Invoice.Post; end; end; finally @@ -397,7 +595,8 @@ end; procedure TfrmInvoiceOutInPut.ToolButton1Click(Sender: TObject); begin CDS_Invoice.Append; - + CDS_Invoice.FieldByName('IVDate').Value := now(); + CDS_Invoice.FieldByName('IVType').Value := '销项发票'; CDS_Invoice.FieldByName('QtyUnit').Value := 'Kg'; CDS_Invoice.FieldByName('Amount').Value := 0; CDS_Invoice.FieldByName('Qty').Value := 0; @@ -407,8 +606,12 @@ begin CDS_Invoice.FieldByName('Price').Value := 0; CDS_Invoice.FieldByName('tax').Value := 13; CDS_Invoice.FieldByName('Currency').Value := 'CNY'; - CDS_Invoice.Post; + Self.CDS_Invoice.FieldByName('OurCoName').value := 'DESHINE VIETNAM CO., LTD'; + Self.CDS_Invoice.FieldByName('OurCoNo').value := 'W0001'; + Self.CDS_Invoice.FieldByName('OurShuiNo').value := '1102083046'; + + CDS_Invoice.Post; end; procedure TfrmInvoiceOutInPut.ToolButton2Click(Sender: TObject); @@ -503,7 +706,10 @@ begin end; // CDS_Invoice.fieldbyname('OurCoNo').Value := '91330602MA2JTEXX4B'; // CDS_Invoice.fieldbyname('OurCoName').Value := '圆中圆'; - CDS_Invoice.FieldByName('Currency').Value := 'CNY'; + if CDS_Invoice.FieldByName('IVNo').AsString = '' then + begin + CDS_Invoice.Delete; + end; Post; end; end; @@ -521,5 +727,56 @@ begin end; +procedure TfrmInvoiceOutInPut.ToolButton5Click(Sender: TObject); +begin + try + frmGetableSel := TfrmGetableSel.Create(Application); + with frmGetableSel do + begin + if ShowModal = 1 then + begin +// frmPayableSel.CDS_1.first; + CDS_1.Locate('ssel', True, []); + with frmGetableSel.CDS_1 do + begin + self.CDS_Invoice.Append; + + Self.CDS_Invoice.FieldByName('Supplier').value := frmGetableSel.CDS_1.FieldByName('OppCoName').AsString; + Self.CDS_Invoice.FieldByName('SupplierNo').value := frmGetableSel.CDS_1.FieldByName('OppCoNo').AsString; + Self.CDS_Invoice.FieldByName('SupplierShuiNo').value := frmGetableSel.CDS_1.FieldByName('oppShuiNo').AsString; + +// Self.CDS_Invoice.FieldByName('OurCoName').value := frmPayableSel.CDS_1.FieldByName('OurCoName').AsString; +// Self.CDS_Invoice.FieldByName('OurCoNo').value := frmPayableSel.CDS_1.FieldByName('OurCoNo').AsString; +// Self.CDS_Invoice.FieldByName('OurShuiNo').value := frmPayableSel.CDS_1.FieldByName('ourShuiNo').AsString; + Self.CDS_Invoice.FieldByName('OurCoName').value := 'DESHINE VIETNAM CO., LTD'; + Self.CDS_Invoice.FieldByName('OurCoNo').value := 'W0001'; + Self.CDS_Invoice.FieldByName('OurShuiNo').value := '1102083046'; + + Self.CDS_Invoice.FieldByName('Currency').value := frmGetableSel.CDS_1.FieldByName('Currency').AsString; + + Self.CDS_Invoice.FieldByName('BillCycle').value := frmGetableSel.CDS_1.FieldByName('BillCycle').AsString; + + if frmGetableSel.CDS_1.FieldByName('NoTaxPrice').AsString <> '' then + begin + Self.CDS_Invoice.FieldByName('Price').value := frmGetableSel.CDS_1.FieldByName('NoTaxPrice').AsString; + end + else + begin + Self.CDS_Invoice.FieldByName('Price').value := 0; + end; + + Self.CDS_Invoice.FieldByName('Amount').value := frmGetableSel.FNoTaxInclude; + Self.CDS_Invoice.FieldByName('TaxFee').value := frmGetableSel.FTax; + Self.CDS_Invoice.FieldByName('TaxAmount').value := frmGetableSel.FTaxInclude; + self.CDS_Invoice.FieldByName('fromFlow').Value := frmGetableSel.FFFIDs; + Self.CDS_Invoice.post; + end; + end; + end; + finally + frmGetableSel.Free; + end; +end; + end. diff --git a/A09财务通用管理/U_InvoiceOutList.dfm b/A09财务通用管理/U_InvoiceOutList.dfm index 0cbeb98..a1f71be 100644 --- a/A09财务通用管理/U_InvoiceOutList.dfm +++ b/A09财务通用管理/U_InvoiceOutList.dfm @@ -19,7 +19,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList Height = 30 AutoSize = True ButtonHeight = 30 - ButtonWidth = 99 + ButtonWidth = 95 Caption = 'ToolBar1' Color = clWhite DisabledImages = DataLink_Financial.cxImageList_bar @@ -27,7 +27,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList List = True ParentColor = False ShowCaptions = True - TabOrder = 4 + TabOrder = 3 object TBRafresh: TToolButton Left = 0 Top = 0 @@ -37,7 +37,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TBRafreshClick end object ToolButton2: TToolButton - Left = 71 + Left = 63 Top = 0 AutoSize = True Caption = #36807#28388 @@ -45,7 +45,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = ToolButton2Click end object TADD: TToolButton - Left = 142 + Left = 126 Top = 0 AutoSize = True Caption = #26032#22686 @@ -53,7 +53,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TADDClick end object TUPDATE: TToolButton - Left = 213 + Left = 189 Top = 0 AutoSize = True Caption = #20462#25913 @@ -61,7 +61,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TUPDATEClick end object TBDEL: TToolButton - Left = 284 + Left = 252 Top = 0 AutoSize = True Caption = #21024#38500 @@ -69,7 +69,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TBDELClick end object TSel: TToolButton - Left = 355 + Left = 315 Top = 0 AutoSize = True Caption = #26597#30475 @@ -77,7 +77,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TSelClick end object TCHK: TToolButton - Left = 426 + Left = 378 Top = 0 AutoSize = True Caption = #23457#26680 @@ -85,7 +85,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TCHKClick end object TNOCHK: TToolButton - Left = 497 + Left = 441 Top = 0 AutoSize = True Caption = #25764#38144#23457#26680 @@ -93,7 +93,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = TNOCHKClick end object ToolButton4: TToolButton - Left = 600 + Left = 528 Top = 0 AutoSize = True Caption = #25171#21360 @@ -102,7 +102,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = ToolButton4Click end object ToolButton5: TToolButton - Left = 671 + Left = 591 Top = 0 AutoSize = True Caption = #38468#20214 @@ -110,7 +110,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = ToolButton5Click end object ToolButton1: TToolButton - Left = 742 + Left = 654 Top = 0 AutoSize = True Caption = #23548#20986 @@ -118,15 +118,23 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList OnClick = ToolButton1Click end object ToolButton3: TToolButton - Left = 813 + Left = 717 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 ImageIndex = 16 OnClick = ToolButton3Click end + object ToolButton6: TToolButton + Left = 804 + Top = 0 + AutoSize = True + Caption = #20851#32852#24212#25910#27454 + ImageIndex = 52 + OnClick = ToolButton6Click + end object TBClose: TToolButton - Left = 916 + Left = 903 Top = 0 AutoSize = True Caption = #20851#38381 @@ -144,43 +152,43 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList BevelOuter = bvLowered Color = clWhite ParentBackground = False - TabOrder = 5 + TabOrder = 4 object Label3: TLabel - Left = 244 + Left = 272 Top = 8 Width = 64 Height = 21 Caption = #21457#31080#21495#30721 end object Label5: TLabel - Left = 471 + Left = 515 Top = 8 Width = 64 Height = 21 Caption = #23545#26041#21333#20301 end object Label7: TLabel - Left = 714 + Left = 755 Top = 8 Width = 64 Height = 21 Caption = #25105#26041#21333#20301 end object Label8: TLabel - Left = 468 + Left = 512 Top = 38 Width = 67 Height = 21 Caption = #35268' '#26684 end object Label9: TLabel - Left = 244 + Left = 272 Top = 38 Width = 64 Height = 21 Caption = #20135#21697#21517#31216 end - object Label1: TLabel + object Label2: TLabel Left = 82 Top = 38 Width = 16 @@ -196,37 +204,37 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList end object F_Name: TcxTextEdit Tag = 2 - Left = 311 + Left = 338 Top = 34 - TabOrder = 3 + TabOrder = 0 Width = 150 end object IVNo: TcxTextEdit Tag = 2 - Left = 311 - Top = 4 - TabOrder = 0 - Width = 150 - end - object F_Spec: TcxTextEdit - Tag = 2 - Left = 537 - Top = 34 - TabOrder = 4 - Width = 150 - end - object OppCoName: TcxTextEdit - Tag = 2 - Left = 537 + Left = 338 Top = 4 TabOrder = 1 Width = 150 end + object F_Spec: TcxTextEdit + Tag = 2 + Left = 581 + Top = 34 + TabOrder = 2 + Width = 150 + end + object Supplier: TcxTextEdit + Tag = 2 + Left = 581 + Top = 4 + TabOrder = 3 + Width = 150 + end object OurCoName: TcxTextEdit Tag = 2 - Left = 781 + Left = 822 Top = 4 - TabOrder = 2 + TabOrder = 4 Width = 150 end object begdate: TcxDateEdit @@ -244,14 +252,37 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList Width = 120 end end - object cxGrid1: TcxGrid [2] + object cxTabControl1: TcxTabControl [2] + Left = 0 + Top = 97 + Width = 1558 + Height = 29 + Align = alTop + TabOrder = 2 + Properties.CustomButtons.Buttons = <> + Properties.Style = 11 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + LookAndFeel.Kind = lfUltraFlat + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + inherited cxProgressBar2: TcxProgressBar + ExplicitHeight = 29 + end + object cxGrid1: TcxGrid [5] Left = 0 Top = 126 Width = 1558 Height = 500 Align = alClient PopupMenu = PopupMenu1 - TabOrder = 3 + TabOrder = 5 + ExplicitTop = 132 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -280,24 +311,24 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList end item Kind = skSum - Column = v1Column12 end item Kind = skSum - Column = v1Column15 + Column = Tv1Amount end item Kind = skSum - Column = v1Column17 + Column = Tv1TaxFee end item Kind = skSum - Column = v1Column18 + Column = Tv1TaxAmount end> DataController.Summary.SummaryGroups = <> OptionsCustomize.ColumnFiltering = False OptionsView.Footer = True OptionsView.GroupByBox = False + OptionsView.Indicator = True object v1Column3: TcxGridDBColumn Caption = #36873#25321 DataBinding.FieldName = 'SSel' @@ -306,7 +337,7 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList HeaderAlignmentHorz = taCenter Width = 49 end - object v1InvoiceNo: TcxGridDBColumn + object Tv1IVNo: TcxGridDBColumn Caption = #21457#31080#21495#30721 DataBinding.FieldName = 'IVNo' DataBinding.IsNullValueType = True @@ -314,7 +345,14 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList Options.Editing = False Width = 77 end - object v1InvoiceDate: TcxGridDBColumn + object Tv1BGDNum: TcxGridDBColumn + Caption = #25253#20851#21333#21495#30721 + DataBinding.FieldName = 'BGDNum' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 101 + end + object Tv1IVDate: TcxGridDBColumn Caption = #21457#31080#26085#26399 DataBinding.FieldName = 'IVDate' DataBinding.IsNullValueType = True @@ -322,15 +360,28 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList Options.Editing = False Width = 79 end - object v1InvoiceType: TcxGridDBColumn - Caption = #21457#31080#31867#22411 - DataBinding.FieldName = 'IVType' + object Tv1SupplierShuiNo: TcxGridDBColumn + Caption = #23458#25143#31246#21495 + DataBinding.FieldName = 'SupplierShuiNo' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 92 + Width = 100 end - object v1Column2: TcxGridDBColumn + object Tv1Supplier: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'Supplier' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 107 + end + object Tv1OurShuiNo: TcxGridDBColumn + Caption = #25105#26041#31246#21495 + DataBinding.FieldName = 'OurShuiNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1OurCoName: TcxGridDBColumn Caption = #25105#26041#21333#20301 DataBinding.FieldName = 'OurCoName' DataBinding.IsNullValueType = True @@ -338,156 +389,104 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList Options.Editing = False Width = 83 end - object v1FactoryName: TcxGridDBColumn - Caption = #23545#26041#21333#20301 - DataBinding.FieldName = 'OppCoName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 83 - end - object v1Column1: TcxGridDBColumn - Caption = #19978#32423#21333#20301 - DataBinding.FieldName = 'OppParentCoName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 99 - end - object v1Column8: TcxGridDBColumn - Caption = #25805#20316#21592 - DataBinding.FieldName = 'Filler' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 55 - end - object v1Column9: TcxGridDBColumn - Caption = #20135#21697#32534#21495 - DataBinding.FieldName = 'F_Code' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 71 - end - object v1Column10: TcxGridDBColumn - Caption = #20135#21697#21517#31216 - DataBinding.FieldName = 'F_Name' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 72 - end - object v1Column11: TcxGridDBColumn - Caption = #35268#26684 - DataBinding.FieldName = 'F_Spec' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 65 - end - object v1Column12: TcxGridDBColumn - Caption = #25968#37327 - DataBinding.FieldName = 'Qty' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1Column14PropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - Width = 57 - end - object v1Column13: TcxGridDBColumn - Caption = #21333#20301 - DataBinding.FieldName = 'QtyUnit' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 63 - end - object v1Column14: TcxGridDBColumn - Caption = #21333#20215 - DataBinding.FieldName = 'Price' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1Column14PropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - Width = 44 - end - object v1Column15: TcxGridDBColumn - Caption = #37329#39069 - DataBinding.FieldName = 'Amount' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 54 - end - object v1Column17: TcxGridDBColumn - Caption = #31246#39069 - DataBinding.FieldName = 'TaxFee' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 62 - end - object v1Column18: TcxGridDBColumn - Caption = #21547#31246#37329#39069 - DataBinding.FieldName = 'TaxAmount' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1Column14PropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - end - object v1Column19: TcxGridDBColumn - Caption = #31246#29575'(%)' - DataBinding.FieldName = 'tax' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = v1Column14PropertiesEditValueChanged - HeaderAlignmentHorz = taCenter - end - object v1note: TcxGridDBColumn - Caption = #22791#27880 - DataBinding.FieldName = 'note' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 114 - end object Tv1Column1: TcxGridDBColumn Caption = #24065#31181 DataBinding.FieldName = 'Currency' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 74 + Width = 69 + end + object v1Column14: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + HeaderAlignmentHorz = taCenter + Width = 57 + end + object Tv1Amount: TcxGridDBColumn + Caption = #24635#37329#39069#26410#21547#31246 + DataBinding.FieldName = 'Amount' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + HeaderAlignmentHorz = taCenter + Width = 124 + end + object Tv1TaxFee: TcxGridDBColumn + Caption = #31246#37329 + DataBinding.FieldName = 'TaxFee' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object Tv1TaxAmount: TcxGridDBColumn + Caption = #24635#37329#39069#24050#21547#31246 + DataBinding.FieldName = 'TaxAmount' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '#,###.##' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object Tv1BillCycle: TcxGridDBColumn + Caption = #36134#26399 + DataBinding.FieldName = 'BillCycle' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 65 + end + object Tv1PayDate: TcxGridDBColumn + Caption = #21040#26399#25910#27454#26085 + DataBinding.FieldName = 'PayDate' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 101 end object Tv1Column2: TcxGridDBColumn - Caption = #38468#20214 - DataBinding.FieldName = 'FJFlag' + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'checkStatus' DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxCheckBoxProperties' HeaderAlignmentHorz = taCenter - Options.Editing = False + Width = 88 + end + object Tv1Chker: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 94 + end + object Tv1Chktime: TcxGridDBColumn + Caption = #23457#26680#26102#38388 + DataBinding.FieldName = 'Chktime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 87 + end + object Tv1PayStatus: TcxGridDBColumn + Caption = #25910#27454#29366#24577 + DataBinding.FieldName = 'PayStatus' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 78 + end + object Tv1PayTime: TcxGridDBColumn + Caption = #25910#27454#26085#26399 + DataBinding.FieldName = 'PayTime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 78 end end object cxGridLevel1: TcxGridLevel GridView = Tv1 end end - object cxTabControl1: TcxTabControl [3] - Left = 0 - Top = 97 - Width = 1558 - Height = 29 - Align = alTop - TabOrder = 2 - Properties.CustomButtons.Buttons = <> - Properties.Style = 11 - Properties.TabIndex = 0 - Properties.Tabs.Strings = ( - #26410#23457#26680 - #24050#23457#26680 - #20840#37096) - LookAndFeel.Kind = lfUltraFlat - OnChange = cxTabControl1Change - ClientRectRight = 0 - ClientRectTop = 0 - end - inherited cxProgressBar2: TcxProgressBar - ExplicitHeight = 29 - end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_Financial.ADOLink Left = 161 @@ -544,7 +543,6 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList Top = 268 end object cxGridPopupMenu2: TcxGridPopupMenu - Grid = cxGrid1 PopupMenus = <> Left = 440 Top = 324 diff --git a/A09财务通用管理/U_InvoiceOutList.pas b/A09财务通用管理/U_InvoiceOutList.pas index c279b3f..fe0de22 100644 --- a/A09财务通用管理/U_InvoiceOutList.pas +++ b/A09财务通用管理/U_InvoiceOutList.pas @@ -13,10 +13,9 @@ uses RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxDropDownEdit, cxPC, RM_e_Xls, Menus, cxLookAndFeels, - cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, - dxDateRanges, U_BaseList, Vcl.Clipbrd, cxContainer, - dxCore, cxDateUtils, dxSkinsCore, dxSkinsDefaultPainters, - dxScrollbarAnnotations, cxProgressBar; + cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, dxDateRanges, U_BaseList, + Vcl.Clipbrd, cxContainer, dxCore, cxDateUtils, dxSkinsCore, + dxSkinsDefaultPainters, dxScrollbarAnnotations, cxProgressBar, cxCurrencyEdit; type TfrmInvoiceOutList = class(TfrmBaseList) @@ -27,67 +26,67 @@ type ADOQueryCmd: TADOQuery; Panel1: TPanel; ToolButton2: TToolButton; - F_Name: TcxTextEdit; ADOQueryMain: TADOQuery; ToolButton1: TToolButton; RM1: TRMGridReport; RMDB_Main: TRMDBDataSet; - Label3: TLabel; - IVNo: TcxTextEdit; - cxGrid1: TcxGrid; - Tv1: TcxGridDBTableView; - cxGridLevel1: TcxGridLevel; cxGridPopupMenu2: TcxGridPopupMenu; DS_Invoice: TDataSource; CDS_Invoice: TClientDataSet; TADD: TToolButton; TUPDATE: TToolButton; TBDEL: TToolButton; - v1InvoiceNo: TcxGridDBColumn; - v1InvoiceType: TcxGridDBColumn; - v1InvoiceDate: TcxGridDBColumn; - v1FactoryName: TcxGridDBColumn; - v1note: TcxGridDBColumn; - F_Spec: TcxTextEdit; - Label5: TLabel; - OppCoName: TcxTextEdit; TCHK: TToolButton; TNOCHK: TToolButton; cxTabControl1: TcxTabControl; TSel: TToolButton; - v1Column1: TcxGridDBColumn; - v1Column2: TcxGridDBColumn; RMXLSExport1: TRMXLSExport; PopupMenu1: TPopupMenu; N1: TMenuItem; N2: TMenuItem; ToolButton4: TToolButton; - v1Column3: TcxGridDBColumn; ADOQueryPrint: TADOQuery; - Label7: TLabel; - OurCoName: TcxTextEdit; - Label8: TLabel; - Label9: TLabel; - v1Column8: TcxGridDBColumn; - v1Column9: TcxGridDBColumn; - v1Column10: TcxGridDBColumn; - v1Column11: TcxGridDBColumn; - v1Column12: TcxGridDBColumn; - v1Column13: TcxGridDBColumn; - v1Column14: TcxGridDBColumn; - v1Column15: TcxGridDBColumn; - v1Column17: TcxGridDBColumn; - v1Column18: TcxGridDBColumn; - v1Column19: TcxGridDBColumn; ToolButton3: TToolButton; N3: TMenuItem; - Tv1Column1: TcxGridDBColumn; ToolButton5: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column3: TcxGridDBColumn; + Tv1IVNo: TcxGridDBColumn; + Tv1BGDNum: TcxGridDBColumn; + Tv1IVDate: TcxGridDBColumn; + Tv1SupplierShuiNo: TcxGridDBColumn; + Tv1Supplier: TcxGridDBColumn; + Tv1OurShuiNo: TcxGridDBColumn; + Tv1OurCoName: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + Tv1Amount: TcxGridDBColumn; + Tv1TaxFee: TcxGridDBColumn; + Tv1TaxAmount: TcxGridDBColumn; + Tv1BillCycle: TcxGridDBColumn; + Tv1PayDate: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn; - Label1: TLabel; + Tv1Chker: TcxGridDBColumn; + Tv1Chktime: TcxGridDBColumn; + Tv1PayStatus: TcxGridDBColumn; + Tv1PayTime: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label3: TLabel; + Label5: TLabel; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label2: TLabel; + Label4: TLabel; + F_Name: TcxTextEdit; + IVNo: TcxTextEdit; + F_Spec: TcxTextEdit; + Supplier: TcxTextEdit; + OurCoName: TcxTextEdit; begdate: TcxDateEdit; Enddate: TcxDateEdit; - Label4: TLabel; + ToolButton6: TToolButton; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); @@ -111,6 +110,8 @@ type procedure ToolButton3Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure SaveFlowInvoice(const IVID, FFFIDs: string); private { Private declarations } @@ -128,7 +129,7 @@ implementation uses U_DataLink, U_RTFun, U_ZDYHelp, U_InvoiceOutInPut, U_LabelPrint, - U_AttachmentUpload; + U_AttachmentUpload, U_GetableSel; {$R *.dfm} @@ -562,6 +563,151 @@ begin end; end; +procedure TfrmInvoiceOutList.ToolButton6Click(Sender: TObject); +var + mIVId, mffIDS: string; +begin + if CDS_Invoice.Locate('ssel', True, []) = false then + begin + Application.MessageBox('ѡ', 'ʾϢ', MB_OK); + Exit; + end; + try + + CDS_Invoice.Locate('ssel', True, []); + + mIVId := CDS_Invoice.fieldByName('IVId').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add(' select * from Finance_Invoice where IVId = ' + QuotedStr(Trim(mIVId))); + Open; + end; + + frmGetableSel := TfrmGetableSel.Create(Application); + with frmGetableSel do + begin + if ShowModal = 1 then + begin + with frmGetableSel.CDS_1 do + begin + self.ADOQueryCmd.Edit; +// self.ADOQueryCmd.FieldByName('Supplier').AsString := frmPayableSel.CDS_1.FieldByName('OppCoName').AsString; +// self.ADOQueryCmd.FieldByName('SupplierNo').AsString := frmPayableSel.CDS_1.FieldByName('OppCoNo').AsString; +// self.ADOQueryCmd.FieldByName('SupplierShuiNo').AsString := frmPayableSel.CDS_1.FieldByName('oppShuiNo').AsString; +// self.ADOQueryCmd.FieldByName('OurCoName').AsString := frmPayableSel.CDS_1.FieldByName('OurCoName').AsString; +// self.ADOQueryCmd.FieldByName('OurCoNo').AsString := frmPayableSel.CDS_1.FieldByName('OurCoNo').AsString; +// self.ADOQueryCmd.FieldByName('OurShuiNo').AsString := frmPayableSel.CDS_1.FieldByName('ourShuiNo').AsString; + +// self.ADOQueryCmd.FieldByName('Currency').AsString := frmPayableSel.CDS_1.FieldByName('Currency').AsString; +// self.ADOQueryCmd.FieldByName('BillCycle').AsString := frmPayableSel.CDS_1.FieldByName('BillCycle').AsString; + +// if frmPayableSel.CDS_1.FieldByName('NoTaxPrice').AsString <> '' then +// begin +// Self.ADOQueryCmd.FieldByName('Price').value := frmPayableSel.CDS_1.FieldByName('NoTaxPrice').AsString; +// end +// else +// begin +// Self.ADOQueryCmd.FieldByName('Price').value := 0; +// end; +// Self.ADOQueryCmd.FieldByName('Amount').value := frmPayableSel.FNoTaxInclude; +// Self.ADOQueryCmd.FieldByName('TaxFee').value := frmPayableSel.FTax; +// Self.ADOQueryCmd.FieldByName('TaxAmount').value := frmPayableSel.FTaxInclude; + self.ADOQueryCmd.FieldByName('fromFlow').Value := frmGetableSel.FFFIDs; + mffIDS := frmGetableSel.FFFIDs; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET NoTaxPrice =' + (Trim(CDS_Invoice.FieldByName('PRICE').AsString))); + SQL.Add(',Currency=' + QuotedStr(Trim(CDS_Invoice.FieldByName('Currency').AsString))); + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(mffIDS) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET NoTaxInclude=NoTaxPrice*QTY '); + + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(mffIDS) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET Tax=NoTaxInclude*TaxRate/100 '); + + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(mffIDS) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.add('UPDATE Finance_FLOW SET TaxInclude=NoTaxInclude+Tax '); + + sql.Add(' where EXISTS (select SP.RTValue from [dbo].[F_Tool_SplitString](' + quotedstr(mffIDS) + ','','') SP where SP.RTValue=Finance_FLOW.FFID )'); + // SQL.ADD('AND ISNULL(STATUS,''0'')=''0'''); + ExecSQL; + end; + + self.ADOQueryCmd.Post; + end; + end; + end; + finally + frmGetableSel.Free; + SaveFlowInvoice(mIVId, mffIDS); + end; + +end; + +procedure TfrmInvoiceOutList.SaveFlowInvoice(const IVID, fffIDS: string); +begin + if CDS_Invoice.IsEmpty then + Exit; + if fffIDS = '' then + Exit; + + // ʼ񣨼ʹADO + ADOQueryCmd.Connection.BeginTrans; + try + CDS_Invoice.DisableControls; + + // ʹòѯ + with ADOQueryCmd do + begin + Close; + SQL.Text := 'delete from Finance_FlowInvoice where IVID = :IVID'; + Parameters.ParamByName('IVID').Value := Trim(IVID); + ExecSQL; + + Close; + SQL.Text := 'exec P_InsertFinanceFlowInvoice @IVID = :IVID, @fffIDs = :fffIDs'; + Parameters.ParamByName('IVID').Value := Trim(IVID); + Parameters.ParamByName('fffIDs').Value := Trim(fffIDS); +// ShowMessage(sql.Text); + ExecSQL; + end; + + CDS_Invoice.EnableControls; + ADOQueryCmd.Connection.CommitTrans; // ύ +// ShowMessage('ɹ'); + except + ADOQueryCmd.Connection.RollbackTrans; // ع + raise; // ׳쳣 + + end; +end; + procedure TfrmInvoiceOutList.v1Column14PropertiesEditValueChanged(Sender: TObject); var mvalue, FFieldName: string; diff --git a/A09财务通用管理/U_PayableBatchInput.dfm b/A09财务通用管理/U_PayableBatchInput.dfm index d555483..aff574d 100644 --- a/A09财务通用管理/U_PayableBatchInput.dfm +++ b/A09财务通用管理/U_PayableBatchInput.dfm @@ -95,6 +95,7 @@ inherited frmPayableBatchInput: TfrmPayableBatchInput Align = alClient PopupMenu = PM_1 TabOrder = 1 + ExplicitTop = 36 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -454,7 +455,6 @@ inherited frmPayableBatchInput: TfrmPayableBatchInput Top = 272 end object GPM_1: TcxGridPopupMenu - Grid = cxGrid1 PopupMenus = <> Left = 456 Top = 88 diff --git a/A09财务通用管理/U_PayableBatchInput.pas b/A09财务通用管理/U_PayableBatchInput.pas index c658448..48de735 100644 --- a/A09财务通用管理/U_PayableBatchInput.pas +++ b/A09财务通用管理/U_PayableBatchInput.pas @@ -29,14 +29,24 @@ type ADOQueryTemp: TADOQuery; GPM_1: TcxGridPopupMenu; ToolButton1: TToolButton; + TbOrdAdd: TToolButton; + TbPurSel: TToolButton; + PM_1: TPopupMenu; + N1: TMenuItem; + N3: TMenuItem; + N2: TMenuItem; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; Tv1Column22: TcxGridDBColumn; Tv1FFTime: TcxGridDBColumn; - TV1OurCoName: TcxGridDBColumn; + Tv1oppShuiNo: TcxGridDBColumn; Tv1OppCoName: TcxGridDBColumn; + Tv1ourShuiNo: TcxGridDBColumn; + TV1OurCoName: TcxGridDBColumn; + Tv1FinType: TcxGridDBColumn; Tv1FFAbstract: TcxGridDBColumn; Tv1ConNo: TcxGridDBColumn; + Tv1PurNo: TcxGridDBColumn; Tv1OrderNo: TcxGridDBColumn; Tv1BuyConNo: TcxGridDBColumn; Tv1F_Code: TcxGridDBColumn; @@ -56,16 +66,6 @@ type Tv1Note: TcxGridDBColumn; Tv1FromID1: TcxGridDBColumn; cxGridLevel1: TcxGridLevel; - TbOrdAdd: TToolButton; - Tv1PurNo: TcxGridDBColumn; - Tv1FinType: TcxGridDBColumn; - TbPurSel: TToolButton; - PM_1: TPopupMenu; - N1: TMenuItem; - N3: TMenuItem; - N2: TMenuItem; - Tv1oppShuiNo: TcxGridDBColumn; - Tv1ourShuiNo: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); diff --git a/A09财务通用管理/U_PayableList.dfm b/A09财务通用管理/U_PayableList.dfm index 728a792..66b57b2 100644 --- a/A09财务通用管理/U_PayableList.dfm +++ b/A09财务通用管理/U_PayableList.dfm @@ -271,6 +271,8 @@ inherited frmPayableList: TfrmPayableList Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 + ExplicitLeft = 102 + ExplicitTop = 119 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False diff --git a/A09财务通用管理/U_ReceivableList.dfm b/A09财务通用管理/U_ReceivableList.dfm index 23e4901..45080f8 100644 --- a/A09财务通用管理/U_ReceivableList.dfm +++ b/A09财务通用管理/U_ReceivableList.dfm @@ -19,7 +19,7 @@ inherited frmReceivableList: TfrmReceivableList Height = 30 AutoSize = True ButtonHeight = 30 - ButtonWidth = 99 + ButtonWidth = 83 Caption = 'ToolBar1' Color = clSkyBlue DisabledImages = DataLink_Financial.cxImageList_bar @@ -27,7 +27,7 @@ inherited frmReceivableList: TfrmReceivableList List = True ParentColor = False ShowCaptions = True - TabOrder = 4 + TabOrder = 3 object TBRafresh: TToolButton Left = 0 Top = 0 @@ -37,15 +37,23 @@ inherited frmReceivableList: TfrmReceivableList OnClick = TBRafreshClick end object btnAdd: TToolButton - Left = 71 + Left = 63 Top = 0 AutoSize = True Caption = #26032#22686 ImageIndex = 9 OnClick = btnAddClick end + object ToolButton6: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25209#37327#26032#22686 + ImageIndex = 2 + OnClick = ToolButton6Click + end object btnEdit: TToolButton - Left = 142 + Left = 213 Top = 0 AutoSize = True Caption = #20462#25913 @@ -53,7 +61,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = btnEditClick end object ToolButton1: TToolButton - Left = 213 + Left = 276 Top = 0 AutoSize = True Caption = #21333#20215#20462#25913 @@ -61,7 +69,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = ToolButton1Click end object btnDel: TToolButton - Left = 316 + Left = 363 Top = 0 AutoSize = True Caption = #21024#38500 @@ -69,7 +77,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = btnDelClick end object btnChk: TToolButton - Left = 387 + Left = 426 Top = 0 AutoSize = True Caption = #23457#26680 @@ -77,7 +85,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = btnChkClick end object btnReChk: TToolButton - Left = 458 + Left = 489 Top = 0 AutoSize = True Caption = #25764#38144#23457#26680 @@ -85,7 +93,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = btnReChkClick end object ToolButton2: TToolButton - Left = 561 + Left = 576 Top = 0 AutoSize = True Caption = #23548#20837 @@ -93,7 +101,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = ToolButton2Click end object ToolButton4: TToolButton - Left = 632 + Left = 639 Top = 0 AutoSize = True Caption = #23548#20986 @@ -101,7 +109,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = ToolButton4Click end object ToolButton3: TToolButton - Left = 703 + Left = 702 Top = 0 AutoSize = True Caption = #38468#20214 @@ -109,7 +117,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = ToolButton3Click end object ToolButton5: TToolButton - Left = 774 + Left = 765 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -117,7 +125,7 @@ inherited frmReceivableList: TfrmReceivableList OnClick = ToolButton5Click end object TBClose: TToolButton - Left = 877 + Left = 852 Top = 0 AutoSize = True Caption = #20851#38381 @@ -135,7 +143,7 @@ inherited frmReceivableList: TfrmReceivableList BevelOuter = bvLowered Color = clWhite ParentBackground = False - TabOrder = 5 + TabOrder = 4 object Label3: TLabel Left = 250 Top = 8 @@ -255,14 +263,44 @@ inherited frmReceivableList: TfrmReceivableList TabOrder = 8 end end - object cxGrid1: TcxGrid [2] + object cxTabControl1: TcxTabControl [2] + Left = 0 + Top = 98 + Width = 1540 + Height = 32 + Align = alTop + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Properties.CustomButtons.Buttons = <> + Properties.Style = 11 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + LookAndFeel.Kind = lfUltraFlat + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + inherited cxProgressBar2: TcxProgressBar + ExplicitHeight = 29 + end + object cxGrid1: TcxGrid [5] Left = 0 Top = 130 Width = 1540 Height = 460 Align = alClient PopupMenu = PopupMenu1 - TabOrder = 2 + TabOrder = 5 + ExplicitLeft = -107 + ExplicitTop = 147 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -275,27 +313,24 @@ inherited frmReceivableList: TfrmReceivableList DataController.Summary.FooterSummaryItems = < item Kind = skSum - Column = Tv1Column12 + Column = Tv1Qty end item Kind = skSum - Column = Tv1Column15 end item Kind = skSum - Column = Tv1Column16 end item Kind = skSum - Column = Tv1Column17 + Column = Tv1TaxInclude end item Kind = skSum - Column = Tv1Column11 + Column = Tv1Piece end item Kind = skSum - Column = Tv1Column25 end> DataController.Summary.SummaryGroups = <> OptionsBehavior.GoToNextCellOnEnter = True @@ -311,11 +346,11 @@ inherited frmReceivableList: TfrmReceivableList PropertiesClassName = 'TcxCheckBoxProperties' Properties.ImmediatePost = True HeaderAlignmentHorz = taCenter - Width = 44 + Width = 38 end - object v2CRTime: TcxGridDBColumn + object Tv1FFTime: TcxGridDBColumn Tag = 7 - Caption = #21457#29983#26085#26399 + Caption = #30331#35760#26085#26399 DataBinding.FieldName = 'FFTime' DataBinding.IsNullValueType = True PropertiesClassName = 'TcxDateEditProperties' @@ -325,56 +360,37 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 82 end - object Tv1Column23: TcxGridDBColumn - Caption = #23545#36134#26085#26399 - DataBinding.FieldName = 'ReconciliationDate' + object Tv1oppShuiNo: TcxGridDBColumn + Caption = #23458#25143#31246#21495 + DataBinding.FieldName = 'oppShuiNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 96 + end + object Tv1OppCoName: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'OppCoName' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 112 + Width = 182 end - object v2Column2: TcxGridDBColumn + object Tv1ourShuiNo: TcxGridDBColumn + Caption = #25105#26041#31246#21495 + DataBinding.FieldName = 'ourShuiNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 88 + end + object TV1OurCoName: TcxGridDBColumn Caption = #25105#26041#21333#20301 DataBinding.FieldName = 'OurCoName' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 100 - end - object v2FactoryName: TcxGridDBColumn - Caption = #23545#26041#21333#20301 - DataBinding.FieldName = 'OppCoName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 102 - end - object v2OrderNo: TcxGridDBColumn - Tag = 7 - Caption = #19978#32423#21333#20301 - DataBinding.FieldName = 'OppParentCoName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 92 - end - object Tv1Column3: TcxGridDBColumn - Caption = #20184#27454#26041#24335 - DataBinding.FieldName = 'PayMent' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False Width = 91 end - object Tv1Column19: TcxGridDBColumn - Caption = #21512#21516#21495 - DataBinding.FieldName = 'ConNo' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end - object Tv1Column24: TcxGridDBColumn + object Tv1FFAbstract: TcxGridDBColumn Caption = #25688#35201 DataBinding.FieldName = 'FFAbstract' DataBinding.IsNullValueType = True @@ -382,70 +398,54 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 79 end - object Tv1Column20: TcxGridDBColumn - Caption = #35745#21010#21333#21495 + object Tv1BuyConNo: TcxGridDBColumn + Caption = #38754#26009#21512#21516#21495 + DataBinding.FieldName = 'BuyConNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 130 + end + object Tv1ConNo: TcxGridDBColumn + Caption = #22383#24067#21512#21516#21495 + DataBinding.FieldName = 'ConNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 101 + end + object Tv1OrderNo: TcxGridDBColumn + Caption = #32455#36896#21333#21495 DataBinding.FieldName = 'OrderNo' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 82 + Width = 91 end - object Tv1Column21: TcxGridDBColumn - Caption = #23458#25143#21333#21495 - DataBinding.FieldName = 'BuyConNo' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 80 - end - object Tv1Column4: TcxGridDBColumn + object Tv1F_Code: TcxGridDBColumn Caption = #32534#21495 DataBinding.FieldName = 'F_Code' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 66 + Width = 79 end - object Tv1Column5: TcxGridDBColumn + object Tv1F_Name: TcxGridDBColumn Caption = #21697#21517 DataBinding.FieldName = 'F_Name' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 66 + Width = 85 end - object Tv1Column6: TcxGridDBColumn - Caption = #33457#22411 - DataBinding.FieldName = 'F_Pattern' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 66 - end - object Tv1Column7: TcxGridDBColumn - Caption = #39068#33394 - DataBinding.FieldName = 'F_Color' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 66 - end - object Tv1Column28: TcxGridDBColumn - Caption = #27454#21495 - DataBinding.FieldName = 'F_StyleNo' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 72 - end - object Tv1Column8: TcxGridDBColumn + object Tv1F_Width: TcxGridDBColumn Caption = #38376#24133 DataBinding.FieldName = 'F_Width' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 66 + Width = 88 end - object Tv1Column9: TcxGridDBColumn + object Tv1F_GramWeight: TcxGridDBColumn Caption = #20811#37325 DataBinding.FieldName = 'F_GramWeight' DataBinding.IsNullValueType = True @@ -453,23 +453,22 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 66 end - object Tv1Column10: TcxGridDBColumn - Caption = #33394#21495 - DataBinding.FieldName = 'F_ColorNo' + object Tv1F_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'F_Color' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 66 end - object Tv1Column27: TcxGridDBColumn - Caption = #38468#20214 - DataBinding.FieldName = 'FJFlag' + object Tv1Column1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'F_Colorno' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 48 + Width = 69 end - object Tv1Column11: TcxGridDBColumn + object Tv1Piece: TcxGridDBColumn Caption = #21305#25968 DataBinding.FieldName = 'Piece' DataBinding.IsNullValueType = True @@ -477,7 +476,7 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 66 end - object Tv1Column12: TcxGridDBColumn + object Tv1Qty: TcxGridDBColumn Caption = #25968#37327 DataBinding.FieldName = 'Qty' DataBinding.IsNullValueType = True @@ -485,7 +484,7 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 66 end - object Tv1Column13: TcxGridDBColumn + object Tv1QtyUnit: TcxGridDBColumn Caption = #21333#20301 DataBinding.FieldName = 'QtyUnit' DataBinding.IsNullValueType = True @@ -493,39 +492,7 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 66 end - object Tv1Column14: TcxGridDBColumn - Caption = #21333#20215 - DataBinding.FieldName = 'Price' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 66 - end - object Tv1Column15: TcxGridDBColumn - Caption = #20854#20182#36153 - DataBinding.FieldName = 'OtherFee' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 66 - end - object Tv1Column16: TcxGridDBColumn - Caption = #20943#20813 - DataBinding.FieldName = 'Deduction' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 66 - end - object Tv1Column17: TcxGridDBColumn - Caption = #37329#39069 - DataBinding.FieldName = 'Amount' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 66 - end - object Tv1Column18: TcxGridDBColumn + object Tv1Currency: TcxGridDBColumn Caption = #24065#31181 DataBinding.FieldName = 'Currency' DataBinding.IsNullValueType = True @@ -533,68 +500,56 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 66 end - object Tv1Column25: TcxGridDBColumn - Caption = #26680#38144#37329#39069 - DataBinding.FieldName = 'FFWoAmount' + object Tv1NoTaxPrice: TcxGridDBColumn + Caption = #19981#21547#31246#21333#20215 + DataBinding.FieldName = 'NoTaxPrice' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Options.Editing = False + Width = 99 end - object Tv1Column26: TcxGridDBColumn - Caption = #26159#21542#21547#31246 - DataBinding.FieldName = 'IsInvoice' + object Tv1TaxRate: TcxGridDBColumn + Caption = #31246#29575 + DataBinding.FieldName = 'TaxRate' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Width = 78 - end - object Tv1Column1: TcxGridDBColumn - Caption = #26469#28304 - DataBinding.FieldName = 'FromID1' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 70 + Width = 81 end object Tv1Column2: TcxGridDBColumn + Caption = #31246#39069 + DataBinding.FieldName = 'Tax' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 71 + end + object Tv1TaxInclude: TcxGridDBColumn + Caption = #21547#31246#37329#39069 + DataBinding.FieldName = 'TaxInclude' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 96 + end + object Tv1Note: TcxGridDBColumn Caption = #22791#27880 DataBinding.FieldName = 'Note' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False + Width = 78 + end + object Tv1FromID1: TcxGridDBColumn + Caption = #26469#28304#21333#21495'('#26469#28304')' + DataBinding.FieldName = 'FromID1' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 78 end end object cxGridLevel1: TcxGridLevel GridView = Tv1 end end - object cxTabControl1: TcxTabControl [3] - Left = 0 - Top = 98 - Width = 1540 - Height = 32 - Align = alTop - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -21 - Font.Name = 'Arial' - Font.Style = [fsBold] - ParentFont = False - TabOrder = 3 - Properties.CustomButtons.Buttons = <> - Properties.Style = 11 - Properties.TabIndex = 0 - Properties.Tabs.Strings = ( - #26410#23457#26680 - #24050#23457#26680 - #20840#37096) - LookAndFeel.Kind = lfUltraFlat - OnChange = cxTabControl1Change - ClientRectRight = 0 - ClientRectTop = 0 - end - inherited cxProgressBar2: TcxProgressBar - ExplicitHeight = 29 - end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_Financial.ADOLink Left = 233 @@ -651,7 +606,6 @@ inherited frmReceivableList: TfrmReceivableList Top = 280 end object GPM_1: TcxGridPopupMenu - Grid = cxGrid1 PopupMenus = <> Left = 504 Top = 312 diff --git a/A09财务通用管理/U_ReceivableList.pas b/A09财务通用管理/U_ReceivableList.pas index eddff19..7ffee63 100644 --- a/A09财务通用管理/U_ReceivableList.pas +++ b/A09财务通用管理/U_ReceivableList.pas @@ -31,26 +31,19 @@ type RMDB_Main: TRMDBDataSet; Label3: TLabel; OppCoName: TcxTextEdit; - cxGrid1: TcxGrid; - Tv1: TcxGridDBTableView; - v2CRTime: TcxGridDBColumn; - cxGridLevel1: TcxGridLevel; GPM_1: TcxGridPopupMenu; DS_1: TDataSource; CDS_1: TClientDataSet; btnAdd: TToolButton; - v2FactoryName: TcxGridDBColumn; F_Name: TcxTextEdit; Label4: TLabel; Label6: TLabel; P_Code: TcxTextEdit; - v2OrderNo: TcxGridDBColumn; cxTabControl1: TcxTabControl; Label10: TLabel; ConNo: TcxTextEdit; Label11: TLabel; BuyConNo: TcxTextEdit; - v2Column2: TcxGridDBColumn; btnChk: TToolButton; btnReChk: TToolButton; PopupMenu1: TPopupMenu; @@ -61,42 +54,44 @@ type ToolButton5: TToolButton; N2: TMenuItem; btnEdit: TToolButton; - Tv1Column3: TcxGridDBColumn; - Tv1Column4: TcxGridDBColumn; - Tv1Column5: TcxGridDBColumn; - Tv1Column6: TcxGridDBColumn; - Tv1Column7: TcxGridDBColumn; - Tv1Column8: TcxGridDBColumn; - Tv1Column9: TcxGridDBColumn; - Tv1Column10: TcxGridDBColumn; - Tv1Column11: TcxGridDBColumn; - Tv1Column12: TcxGridDBColumn; - Tv1Column13: TcxGridDBColumn; - Tv1Column14: TcxGridDBColumn; - Tv1Column15: TcxGridDBColumn; - Tv1Column16: TcxGridDBColumn; - Tv1Column17: TcxGridDBColumn; - Tv1Column18: TcxGridDBColumn; - Tv1Column19: TcxGridDBColumn; - Tv1Column20: TcxGridDBColumn; - Tv1Column21: TcxGridDBColumn; - Tv1Column22: TcxGridDBColumn; - Tv1Column23: TcxGridDBColumn; N3: TMenuItem; - Tv1Column24: TcxGridDBColumn; - Tv1Column25: TcxGridDBColumn; - Tv1Column1: TcxGridDBColumn; ToolButton1: TToolButton; - Tv1Column2: TcxGridDBColumn; - Tv1Column26: TcxGridDBColumn; ToolButton2: TToolButton; ToolButton3: TToolButton; - Tv1Column27: TcxGridDBColumn; - Tv1Column28: TcxGridDBColumn; Label1: TLabel; begdate: TcxDateEdit; Enddate: TcxDateEdit; CheckBox1: TcxCheckBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + Tv1Column22: TcxGridDBColumn; + Tv1FFTime: TcxGridDBColumn; + Tv1oppShuiNo: TcxGridDBColumn; + Tv1OppCoName: TcxGridDBColumn; + Tv1ourShuiNo: TcxGridDBColumn; + TV1OurCoName: TcxGridDBColumn; + Tv1FFAbstract: TcxGridDBColumn; + Tv1ConNo: TcxGridDBColumn; + Tv1OrderNo: TcxGridDBColumn; + Tv1BuyConNo: TcxGridDBColumn; + Tv1F_Code: TcxGridDBColumn; + Tv1F_Name: TcxGridDBColumn; + Tv1F_Width: TcxGridDBColumn; + Tv1F_GramWeight: TcxGridDBColumn; + Tv1F_Color: TcxGridDBColumn; + Tv1Piece: TcxGridDBColumn; + Tv1Qty: TcxGridDBColumn; + Tv1QtyUnit: TcxGridDBColumn; + Tv1Currency: TcxGridDBColumn; + Tv1NoTaxPrice: TcxGridDBColumn; + Tv1TaxRate: TcxGridDBColumn; + Tv1TaxInclude: TcxGridDBColumn; + Tv1Note: TcxGridDBColumn; + Tv1FromID1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + ToolButton6: TToolButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure btnDelClick(Sender: TObject); @@ -117,6 +112,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); private procedure InitGrid(); procedure SetStatus(); @@ -128,7 +124,7 @@ implementation uses U_DataLink, U_RTFun, U_ZDYHelp, U_ReceivableInput, U_ReceivableEdit, - U_ReceivableImport, U_AttachmentUpload; + U_ReceivableImport, U_AttachmentUpload, U_GETableBatchInput; {$R *.dfm} procedure TfrmReceivableList.SetStatus(); @@ -180,10 +176,22 @@ begin Close; SQL.Clear; Filtered := False; - sql.Add(' select A.* '); - sql.Add(',FJFlag=CAST((CASE WHEN (SELECT COUNT(X.FileName) FROM FJ_File X where X.TFType=''ˮ'' and X.WBID=A.FFID)>0 THEN 1 ELSE 0 END) AS BIT)'); - sql.Add(' from Finance_Flow A '); + sql.Add(' select A.* ,C.IVNo as CIVNO,C.IVID as CIVID,C.BGDNum,C.IVDate '); + sql.Add(',FJFlag=CAST((CASE WHEN (SELECT COUNT(X.FileName) FROM FJ_File X where X.TFType=''ˮ'' and X.WBID=A.FFID)>0 THEN 1 ELSE 0 END) AS BIT)'); +// sql.Add(' from Finance_Flow A '); +// sql.Add(' left join Finance_FlowInvoice B on A.FFID=B.FFID'); //жȡһ +// SQL.Add(' inner join Finance_Invoice B on A.IVId=C.IVId'); + sql.Add(' FROM Finance_Flow A '); + +// Finance_FlowInvoiceˮ-ƱȡÿˮĵһƱ¼ + sql.Add(' LEFT JOIN ( '); + sql.Add(' SELECT FFID, IVId, ROW_NUMBER() OVER (PARTITION BY FFID ORDER BY IVId) AS RowNum '); + sql.Add(' FROM Finance_FlowInvoice '); + sql.Add(' ) AS B ON A.FFID = B.FFID AND B.RowNum = 1 '); // RowNum=1 ȷֻȡһ + +// ڹ Finance_InvoiceƱͨBIVId + sql.Add(' left JOIN Finance_Invoice C ON B.IVId = C.IVId '); sql.Add(' where A.FFType=''ӦտǼ'' '); case cxTabControl1.TabIndex of 0: @@ -576,6 +584,23 @@ begin WriteCxGrid(trim(Self.Caption), Tv1, ''); end; +procedure TfrmReceivableList.ToolButton6Click(Sender: TObject); +begin + try + frmgetableBatchInput := TfrmgetableBatchInput.Create(Application); + with frmgetableBatchInput do + begin + FFFID := ''; + if ShowModal = 1 then + begin + InitGrid(); + end; + end; + finally + frmgetableBatchInput.Free; + end; +end; + procedure TfrmReceivableList.btnEditClick(Sender: TObject); begin try