From 45f851a9c96ca6f194f0a44ea6a882d1f7430e83 Mon Sep 17 00:00:00 2001 From: xiongshuai <873144595@qq.com> Date: Thu, 11 Dec 2025 22:33:08 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=80=E5=94=AE=E5=A2=9E=E5=80=BC=E7=A8=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ServicePlugIn/AfterSave.cs | 25 ++++++------------- 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/Gatedge.K3.Pilot.PlugIn/BOSPlugIn/AR_SalesVATInvoice/ServicePlugIn/AfterSave.cs b/Gatedge.K3.Pilot.PlugIn/BOSPlugIn/AR_SalesVATInvoice/ServicePlugIn/AfterSave.cs index 58382e5..5bdf242 100644 --- a/Gatedge.K3.Pilot.PlugIn/BOSPlugIn/AR_SalesVATInvoice/ServicePlugIn/AfterSave.cs +++ b/Gatedge.K3.Pilot.PlugIn/BOSPlugIn/AR_SalesVATInvoice/ServicePlugIn/AfterSave.cs @@ -24,6 +24,7 @@ namespace Gatedge.K3.Pilot.PlugIn.BOSPlugIn.AR_SalesVATInvoice.ServicePlugIn e.FieldKeys.Add("SRCBILLTYPEID"); // 实体属性名(没有F前缀) e.FieldKeys.Add("SRCBILLNO"); // 实体属性名(没有F前缀) e.FieldKeys.Add("SEQ"); + e.FieldKeys.Add("BILLNO"); // 单据编号(主表字段) } @@ -56,29 +57,17 @@ namespace Gatedge.K3.Pilot.PlugIn.BOSPlugIn.AR_SalesVATInvoice.ServicePlugIn // 判断条件:FIDD != 当前行ID 且 源单编号为空 if (fiddValue != entryId && string.IsNullOrWhiteSpace(srcBillNo)) { - // 查询源单据体信息(FID = fiddValue的明细行) - // 这里使用数据库字段名(带F前缀) - var sql = $@"/*dialect*/ -SELECT FSRCBILLTYPEID, FSRCBILLNO, FSEQ -FROM T_IV_SALESICENTRY -WHERE FENTRYID = {fiddValue}"; - Logger.Error("销售增值税专用发票", sql, new Exception()); - Logger.Error("销售增值税专用发票", "78", new Exception()); - var result = DBServiceHelper.ExecuteDynamicObject(this.Context, sql); - if (result == null || result.Count == 0) - continue; - - var srcData = result[0]; - // 注意:SQL查询返回的是数据库字段名(带F前缀) - var srcBillTypeId = srcData["FSRCBILLTYPEID"]?.ToString() ?? ""; - var srcBillNoValue = srcData["FSRCBILLNO"]?.ToString() ?? ""; + // 从当前单据主表获取单据编号(实体属性名:BILLNO) + var billNo = billObj["BILLNO"]?.ToString() ?? ""; + // 固定源单类型为"销售增值税专用发票" + var srcBillType = "IV_SALESIC"; // 回写当前单据体:源单类型、源单编号 // 这里使用数据库字段名(带F前缀) var updateSql = $@"/*dialect*/ UPDATE T_IV_SALESICENTRY -SET FSRCBILLTYPEID = '{srcBillTypeId.Replace("'", "''")}', - FSRCBILLNO = '{srcBillNoValue.Replace("'", "''")}' +SET FSRCBILLTYPEID = '{srcBillType.Replace("'", "''")}', + FSRCBILLNO = '{billNo.Replace("'", "''")}' WHERE FENTRYID = {entryId}"; Logger.Error("销售增值税专用发票", updateSql, new Exception()); Logger.Error("销售增值税专用发票", "78", new Exception());