Compare commits

..

2 Commits

Author SHA1 Message Date
liqionghai
b3e4533917 1 2025-12-12 01:33:16 +08:00
liqionghai
df308eb0ef 1 2025-11-28 09:47:20 +08:00
7 changed files with 1045 additions and 14 deletions

View File

@@ -200,6 +200,8 @@
<Compile Include="YSKDZGongNeng_JY\YourDataPlugIn.cs" />
<Compile Include="YSZKDZBaoBiao\AccountsReceivableFiter.cs" />
<Compile Include="YSZKDZBaoBiao\AccountsReceivablePlugIn.cs" />
<Compile Include="YSZKDZBaoBiao\AccountsReceivableReport2 _XN.cs" />
<Compile Include="YSZKDZBaoBiao\AccountsReceivableReport_XN.cs" />
<Compile Include="YSZKDZBaoBiao\AccountsReceivableReport.cs" />
<Compile Include="YSZKDZBaoBiao\AccountsReceivableReport2.cs" />
<Compile Include="YSZKDZGongNeng_MX\LiteVersionPlugIn2.cs" />

View File

@@ -303,11 +303,11 @@ def BuilderReportSqlAndTempTable(Filter,tableName):
/*<2A><><EFBFBD>±<EFBFBD>ע<EFBFBD>ֶ<EFBFBD>*/
UPDATE T1 SET <20><>ע = T2.<2E><><EFBFBD>ʽ +<2B><>ע FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
WHERE T2.<2E><><EFBFBD>ʽ <> '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
WHERE T2.<2E><><EFBFBD>ʽ <> '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' AND T1.<2E><><EFBFBD><EFBFBD> = 1
/*<2A><><EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><D5BF><EFBFBD><EFBFBD><EFBFBD>*/
UPDATE T1 SET <20><><EFBFBD><EFBFBD> = T2.<2E>տ<EFBFBD><D5BF><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID AND T1.<2E><><EFBFBD><EFBFBD> = 1
/*<2A><><EFBFBD>¸<EFBFBD><C2B8>λ<EEB5A5>ֶ<EFBFBD>*/
UPDATE A SET <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<2E><><EFBFBD>λ FROM #TEMP3 A
@@ -317,7 +317,7 @@ def BuilderReportSqlAndTempTable(Filter,tableName):
LEFT JOIN T_AR_RECEIVEBILLENTRY B ON A.FID = B.FID
LEFT JOIN T_BD_CUSTOMER_L C ON A.FPAYUNITTYPE = 'BD_Customer' AND A.FPAYUNIT = C.FCUSTID AND C.FLOCALEID = 2052
) T2 ON A.ShouKuanFid = T2.FID
WHERE <20><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1
WHERE <20><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1 AND A.<2E><><EFBFBD><EFBFBD> = 1
/*<2A><><EFBFBD>±ұ<C2B1><D2B1>ֶ<EFBFBD>*/
@@ -327,7 +327,7 @@ def BuilderReportSqlAndTempTable(Filter,tableName):
FROM T_AR_RECEIVEBILL A
LEFT JOIN T_AR_RECEIVEBILLENTRY B ON A.FID = B.FID
LEFT JOIN T_BD_CURRENCY_L D ON D.FCURRENCYID = A.FCURRENCYID AND D.FLOCALEID = 2052
) T2 ON A.ShouKuanFid = T2.FID
) T2 ON A.ShouKuanFid = T2.FID AND A.<2E><><EFBFBD><EFBFBD> = 1
--/*<2A><><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
@@ -338,12 +338,12 @@ def BuilderReportSqlAndTempTable(Filter,tableName):
/*ֻ<><D6BB><EFBFBD>·<EFBFBD>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>Ϊ1<CEAA><31><EFBFBD>տ<EFBFBD><D5BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE T1 SET <20><><EFBFBD><EFBFBD> = T2.<2E>տ<EFBFBD><D5BF><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
WHERE T1.<2E><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1
WHERE T1.<2E><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1 AND T1.<2E><><EFBFBD><EFBFBD> = 1
/*<2A><><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD>У<EFBFBD><D0A3>ֶ<EFBFBD>*/
UPDATE T1 SET <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
WHERE T2.<2E><><EFBFBD>ʽ IN ('<EFBFBD><EFBFBD><EFBFBD>гжһ<EFBFBD>Ʊ','<EFBFBD><EFBFBD>ҵ<EFBFBD>жһ<EFBFBD>Ʊ')
WHERE T2.<2E><><EFBFBD>ʽ IN ('<EFBFBD><EFBFBD><EFBFBD>гжһ<EFBFBD>Ʊ','<EFBFBD><EFBFBD>ҵ<EFBFBD>жһ<EFBFBD>Ʊ') AND T1.<2E><><EFBFBD><EFBFBD> = 1
/*<2A><><EFBFBD><EFBFBD>SBU<42><55><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE #TEMP3 SET SBU=b.<2E><><EFBFBD><EFBFBD>,[<5B><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>]=b.<2E><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>
@@ -357,7 +357,7 @@ def BuilderReportSqlAndTempTable(Filter,tableName):
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>β<EFBFBD><CEB2>*/
UPDATE T1 SET <20><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = ISNULL(T1.<2E><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,0)+(ISNULL(T1.<2E><><EFBFBD><EFBFBD>,0)-ISNULL(T2.<2E><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,0)) FROM #TEMP3 T1
INNER JOIN(SELECT ShouKuanFid,SUM(ISNULL(<28><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,0)) <20><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> FROM #TEMP3 GROUP BY ShouKuanFid) T2 ON T1.ShouKuanFid = T2.ShouKuanFid
WHERE T1.<2E><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1 AND T1.<2E><><EFBFBD><EFBFBD>>0
WHERE T1.<2E><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1 AND T1.<2E><><EFBFBD><EFBFBD>>0 AND T1.<2E><><EFBFBD><EFBFBD> = 1
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE #TEMP3 SET

View File

@@ -0,0 +1,304 @@
using Kingdee.BOS.App.Data;
using Kingdee.BOS.Contracts.Report;
using Kingdee.BOS.Core.Report;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using Kingdee.BOS;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using Kingdee.BOS.Core.Enums;
using Kingdee.BOS.Log;
namespace Pilot.Report.Exploitation.AccountsReceivableStatements
{
/// <summary>
/// 应收账款对账报表【明细版】
/// </summary>
[Description("[服务插件] "), HotUpdate]
public class AccountsReceivableReport2_XN : SysReportBaseService
{
/// <summary>
/// 初始化
/// </summary>
public override void Initialize()
{
base.Initialize();
this.ReportProperty.ReportName = new LocaleValue("应收账款对账单【兴诺明细版】", base.Context.UserLocale.LCID);
this.ReportProperty.IsUIDesignerColumns = false;
// 简单账表类型:普通、树形、分页
this.ReportProperty.ReportType = ReportType.REPORTTYPE_NORMAL;
this.IsCreateTempTableByPlugin = true;
//
this.IsCreateTempTableByPlugin = true;
//
this.ReportProperty.IsGroupSummary = true;
//
this.ReportProperty.SimpleAllCols = false;
// 单据主键两行FID相同则为同一单的两条分录单据编号可以不重复显示
this.ReportProperty.PrimaryKeyFieldName = "FID";
//
this.ReportProperty.IsDefaultOnlyDspSumAndDetailData = true;
// 设置精度控制
var list = new List<DecimalControlField>
{
new DecimalControlField("FDECIMALS", "OrigInvoiceAmount"),
new DecimalControlField("FDECIMALS", "ExchangeRate"),
new DecimalControlField("FDECIMALS", "InvoiceAmountTHB"),
new DecimalControlField("FDECIMALS", "MonthEndExRate"),
new DecimalControlField("FDECIMALS", "RevaluationAountInTHB"),
new DecimalControlField("FDECIMALS", "UnrealizedGainLoss"),
};
this.ReportProperty.DecimalControlFieldList = list;
}
/// <summary>
/// 报表列表头
/// </summary>
/// <param name="filter"></param>
/// <returns></returns>
public override ReportHeader GetReportHeaders(IRptParams filter)
{
base.GetReportHeaders(filter);
ReportHeader header = new ReportHeader();
header.AddChild("Number", new LocaleValue("序号"), SqlStorageType.Sqlvarchar);
header.AddChild("DATE", new LocaleValue("签订日期"), SqlStorageType.Sqlvarchar);
header.AddChild("CONTRACTNUMBER", new LocaleValue("订单号"), SqlStorageType.Sqlvarchar);
header.AddChild("ProjectName", new LocaleValue("项目名称"), SqlStorageType.Sqlvarchar);
header.AddChild("SizeModel", new LocaleValue("规格型号"), SqlStorageType.Sqlvarchar);
header.AddChild("FQty", new LocaleValue("数量/台"), SqlStorageType.SqlInt);
header.AddChild("FTaxPrice", new LocaleValue("单价"), SqlStorageType.SqlDecimal);
header.AddChild("FAllAmount", new LocaleValue("价税合计"), SqlStorageType.SqlDecimal);
header.AddChild("OrderAmount", new LocaleValue("订单金额"), SqlStorageType.SqlDecimal);
header.AddChild("ShipmentsDate", new LocaleValue("发货日期"), SqlStorageType.Sqlvarchar);
header.AddChild("K3发货数量", new LocaleValue("K3发货数量"), SqlStorageType.SqlDecimal);
header.AddChild("K3发货金额", new LocaleValue("K3发货金额"), SqlStorageType.SqlDecimal);
header.AddChild("星空发货数量", new LocaleValue("星空发货数量"), SqlStorageType.SqlDecimal);
header.AddChild("星空发货金额", new LocaleValue("星空发货金额"), SqlStorageType.SqlDecimal);
header.AddChild("ShipmentsNum", new LocaleValue("总发货数量"), SqlStorageType.SqlDecimal);
header.AddChild("ShipmentsAmount", new LocaleValue("总发货金额"), SqlStorageType.SqlDecimal);
header.AddChild("ReturnDate", new LocaleValue("退货日期"), SqlStorageType.Sqlvarchar);
header.AddChild("K3退货数量", new LocaleValue("K3退货数量"), SqlStorageType.SqlDecimal);
header.AddChild("K3退货金额", new LocaleValue("K3退货金额"), SqlStorageType.SqlDecimal);
header.AddChild("星空退货数量", new LocaleValue("星空退货数量"), SqlStorageType.SqlDecimal);
header.AddChild("星空退货金额", new LocaleValue("星空退货金额"), SqlStorageType.SqlDecimal);
header.AddChild("ReturnNum", new LocaleValue("总退货数量"), SqlStorageType.SqlInt);
header.AddChild("ReturnAmount", new LocaleValue("总退货金额"), SqlStorageType.SqlDecimal);
header.AddChild("PPBillingDate", new LocaleValue("普票开票日期"), SqlStorageType.Sqlvarchar);
header.AddChild("PPBillingAmount", new LocaleValue("星空普票开票金额"), SqlStorageType.SqlDecimal);
header.AddChild("ZPBillingDate", new LocaleValue("专票开票日期"), SqlStorageType.Sqlvarchar);
header.AddChild("ZPBillingAmount", new LocaleValue("星空专票开票金额"), SqlStorageType.SqlDecimal);
header.AddChild("BillingAmount", new LocaleValue("总发票金额"), SqlStorageType.SqlDecimal);
header.AddChild("PaymentDate", new LocaleValue("回款日期"), SqlStorageType.Sqlvarchar);
header.AddChild("PaymentAmount", new LocaleValue("回款金额"), SqlStorageType.SqlDecimal);
header.AddChild("ShippedDebt", new LocaleValue("已出货欠款"), SqlStorageType.SqlDecimal);
header.AddChild("InvoicedDebt", new LocaleValue("已开票欠款"), SqlStorageType.SqlDecimal);
header.AddChild("OwedTickets", new LocaleValue("欠票"), SqlStorageType.SqlDecimal);
header.AddChild("IsEnded", new LocaleValue("是否已完结"), SqlStorageType.Sqlvarchar);
header.AddChild("FSalerId", new LocaleValue("销售员"), SqlStorageType.Sqlvarchar);
header.AddChild("Remark", new LocaleValue("备注"), SqlStorageType.Sqlvarchar);
header.AddChild("K3专票金额", new LocaleValue("K3专票金额"), SqlStorageType.SqlDecimal);
header.AddChild("K3普票金额", new LocaleValue("K3普票金额"), SqlStorageType.SqlDecimal);
foreach (var item in header.GetChilds())
{
item.Width = 160;
}
return header;
}
/// <summary>
/// 显示报表数据
/// </summary>
/// <param name="filter"></param>
/// <param name="tableName"></param>
public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
{
DynamicObject customFilter = filter.FilterParameter.CustomFilter;
//组织
var ZZ = (customFilter["F_VRYF_OrgId_re5"] as DynamicObject);
var ZZFID = ZZ["Id"]?.ToString();
// 客户
string fClient = customFilter["FClient_Id"]?.ToString();
// 工程项目名称
var fProjectList = (customFilter["FProject"] as DynamicObjectCollection)?.Select(n => (n["FProject"] as DynamicObject)["ID"].ToString()).ToList();
// 截止对账日期
var fDate = customFilter["FDate"]?.ToString();
// 订单状态
var fGROUP = customFilter["F_ALL_GROUP"]?.ToString();
//开始对账日期
var FSDate = customFilter["FSDate"]?.ToString();
//纸质合同号
var ZZHTH = customFilter["F_ZZHTH"]?.ToString();
//销售员
var XSY = customFilter["F_XSY"] as DynamicObject;
var XSYFID = string.Empty;
if (XSY != null)
{
XSYFID = XSY["Id"]?.ToString();
}
var fProject = fProjectList == null ? "" : (string.Join(",", fProjectList));
var SFQJFWDZ = customFilter["F_ALL_GROUP2"]?.ToString();
base.BuilderReportSqlAndTempTable(filter, tableName);
string sql = string.Format(@"/*dialect*/
--更新表中的字段
EXEC UpdateYSDZBMX_GZTH_XN '{0}','{1}','{2}','{3}','{4}','{5}','{6}'
--更新表中的发票金额
EXEC GXFPJEYSDZDMX_GZTH '{0}','{1}'
", FSDate,fDate,ZZFID,fClient,XSYFID,ZZHTH,SFQJFWDZ);
sql += string.Format($@"/*dialect*/
INSERT INTO YingShouZhanKuanMX_GZTH(FID,NUMBER,PaymentAmount,ShippedDebt,InvoicedDebt)
Select 999998,'待核销'
,Sum((FRECAMOUNTFOR-F_AMOUNT)*FEXCHANGERATE) AS DHXJE
,-Sum((FRECAMOUNTFOR-F_AMOUNT)*FEXCHANGERATE) AS YCHQK
,-Sum((FRECAMOUNTFOR-F_AMOUNT)*FEXCHANGERATE) AS YKPQK
From T_AR_RECEIVEBILL T1
Where 1=1
And FDOCUMENTSTATUS = 'C'
And FCONTACTUNIT ={fClient}
INSERT INTO YingShouZhanKuanMX_GZTH(FID,NUMBER,FQTY,FALLAMOUNT,OrderAmount,ShipmentsNum,ShipmentsAmount,
ReturnNum,ReturnAmount,BillingAmount,PaymentAmount,ShippedDebt,InvoicedDebt,OwedTickets,[K3退货金额],PPBillingAmount,ZPBillingAmount,[星空退货金额],[星空发货金额]
,[K3发货数量],[K3发货金额],[星空发货数量],[K3退货数量],[星空退货数量],[K3专票金额],[K3普票金额])
SELECT
999999,
'合计',
SUM(FQTY),
SUM(FALLAMOUNT),
SUM(OrderAmount),
SUM(ShipmentsNum),
SUM(ShipmentsAmount),
SUM(ReturnNum),
SUM(ReturnAmount),
SUM(BillingAmount),
SUM(PaymentAmount),
SUM(ShippedDebt),
SUM(InvoicedDebt),
SUM(OwedTickets),sum(K3退货金额) ,
SUM(PPBillingAmount),
SUM(ZPBillingAmount),
sum(星空退货金额),SUM(星空发货金额),
SUM(K3发货数量),SUM(K3发货金额),SUM(星空发货数量),SUM(K3退货数量),SUM(星空退货数量),SUM(K3专票金额),SUM(K3普票金额)
FROM
YingShouZhanKuanMX_GZTH
where 1=1
");
if (fGROUP == "2")
{
sql += string.Format("AND FID IN (SELECT FID FROM YingShouZhanKuanMX_GZTH WHERE IsEnded = '未完结')");
}
sql += string.Format(@"
SELECT
--ROW_NUMBER() OVER (ORDER BY [DATE] DESC,[FID]) AS FIDENTITYID,
--DENSE_RANK() OVER (ORDER BY [DATE] DESC,[FID] ) AS OUTPUTNUMBER,
ROW_NUMBER() OVER (ORDER BY (CASE [NUMBER] WHEN '待核销' THEN 999998 WHEN '合计' THEN 999999 ELSE CONVERT(INT,[NUMBER]) END),[FID]) AS FIDENTITYID,
DENSE_RANK() OVER (ORDER BY (CASE [NUMBER] WHEN '待核销' THEN '2099-12-30' WHEN '合计' THEN '2099-12-31' ELSE [DATE] END),[FID] ) AS OUTPUTNUMBER,
*
INTO {0}
FROM YingShouZhanKuanMX_GZTH
WHERE 1=1
", tableName);
if (fGROUP == "2")
{
sql += string.Format("AND FID IN (SELECT FID FROM YingShouZhanKuanMX_GZTH WHERE IsEnded = '未完结')");
}
//Logger.Error("sql脚本", sql, new Exception());
DBUtils.Execute(this.Context, sql);
}
/// <summary>
/// 获取前端组件转换过滤条件
/// </summary>
/// <returns></returns>
public override ReportTitles GetReportTitles(IRptParams filter)
{
ReportTitles reportTitles = new ReportTitles();
DynamicObject customFilter = filter.FilterParameter.CustomFilter;
if (customFilter != null)
{
// 客户
var fClientList = (customFilter["FClient"] as DynamicObject)?["Name"]?.ToString();
// 工程项目名称
var fProjectList = (customFilter["FProject"] as DynamicObjectCollection)?.Select(n => (n["FProject"] as DynamicObject)["Name"].ToString()).ToList();
// 截止对账日期
var fDate = customFilter["FDate"]?.ToString();
//开始对账日期
var FSDate = customFilter["FSDate"]?.ToString();
// 订单状态
var fGROUP = customFilter["F_ALL_GROUP"]?.ToString();
//纸质合同号
var ZZHTH = customFilter["F_ZZHTH"]?.ToString();
//销售员
var XSY = (customFilter["F_XSY"] as DynamicObject);
var XSYFID = string.Empty;
if (XSY != null)
{
XSYFID = XSY["Id"].ToString();
}
string fState = "";
if (fGROUP == "1")
{
fState = "全部订单";
}
if (fGROUP == "2")
{
fState = "未完结订单";
}
//是否月结客户
var SFQJFWDZ = customFilter["F_ALL_GROUP2"]?.ToString();
//这里是报表页面的标识
reportTitles.AddTitle("FState", fGROUP == null ? "" : fState);
reportTitles.AddTitle("FClient", fClientList == null ? "" : fClientList);
reportTitles.AddTitle("FDate", fDate == null ? "" : Convert.ToDateTime(fDate).ToString("yyyy-MM-dd"));
reportTitles.AddTitle("FSDate", fDate == null ? "" : Convert.ToDateTime(FSDate).ToString("yyyy-MM-dd"));
reportTitles.AddTitle("FProject", fProjectList == null ? "" : string.Join(",", fProjectList));
reportTitles.AddTitle("F_ZZHTH", ZZHTH == null ? "" : ZZHTH);
reportTitles.AddTitle("F_XSY", XSYFID == null ? "" : XSYFID);
reportTitles.AddTitle("F_SFYJKH", SFQJFWDZ == null ? "" : SFQJFWDZ);
}
return reportTitles;
}
//设计报表合计列
//public override List<SummaryField> GetSummaryColumnInfo(IRptParams filter)
//{
// var result = base.GetSummaryColumnInfo(filter);
// result.Add(new SummaryField("FQty", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("FAllAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("OrderAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ShipmentsNum", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ShipmentsAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ReturnNum", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ReturnAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("PPBillingAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ZPBillingAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("BillingAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("PaymentAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("OwedTickets", BOSEnums.Enu_SummaryType.SUM));
// return result;
//}
}
}

View File

@@ -0,0 +1,292 @@
using Kingdee.BOS.App.Data;
using Kingdee.BOS;
using Kingdee.BOS.Contracts.Report;
using Kingdee.BOS.Core.Report;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Kingdee.BOS.Core.Enums;
namespace Pilot.Report.Exploitation.AccountsReceivableStatements
{
/// <summary>
/// 应收账款对账报表【简易版】
/// </summary>
[Description("【服务插件】应收账款对账报表【兴诺简易版】取数"), HotUpdate]
public class AccountsReceivableReport_XN : SysReportBaseService
{
/// <summary>
/// 初始化
/// </summary>
public override void Initialize()
{
base.Initialize();
this.ReportProperty.ReportName = new LocaleValue("应收账款对账单【兴诺简易版】", base.Context.UserLocale.LCID);
this.ReportProperty.IsUIDesignerColumns = false;
// 简单账表类型:普通、树形、分页
this.ReportProperty.ReportType = ReportType.REPORTTYPE_NORMAL;
this.IsCreateTempTableByPlugin = true;
//
this.IsCreateTempTableByPlugin = true;
//
this.ReportProperty.IsGroupSummary = true;
//
this.ReportProperty.SimpleAllCols = false;
// 单据主键两行FID相同则为同一单的两条分录单据编号可以不重复显示
this.ReportProperty.PrimaryKeyFieldName = "FID";
//
this.ReportProperty.IsDefaultOnlyDspSumAndDetailData = true;
// 设置精度控制
var list = new List<DecimalControlField>
{
new DecimalControlField("FDECIMALS", "OrigInvoiceAmount"),
new DecimalControlField("FDECIMALS", "ExchangeRate"),
new DecimalControlField("FDECIMALS", "InvoiceAmountTHB"),
new DecimalControlField("FDECIMALS", "MonthEndExRate"),
new DecimalControlField("FDECIMALS", "RevaluationAountInTHB"),
new DecimalControlField("FDECIMALS", "UnrealizedGainLoss"),
};
this.ReportProperty.DecimalControlFieldList = list;
}
/// <summary>
/// 报表列表头
/// </summary>
/// <param name="filter"></param>
/// <returns></returns>
public override ReportHeader GetReportHeaders(IRptParams filter)
{
base.GetReportHeaders(filter);
ReportHeader header = new ReportHeader();
header.AddChild("Number", new LocaleValue("序号"), SqlStorageType.Sqlvarchar);
header.AddChild("DATE", new LocaleValue("签订日期"), SqlStorageType.SqlDatetime);
header.AddChild("CONTRACTNUMBER", new LocaleValue("订单号"), SqlStorageType.Sqlvarchar);
header.AddChild("ProjectName", new LocaleValue("项目名称"), SqlStorageType.Sqlvarchar);
header.AddChild("OrderAmount", new LocaleValue("订单金额"), SqlStorageType.SqlDecimal);
header.AddChild("K3发货数量", new LocaleValue("K3发货数量"), SqlStorageType.SqlDecimal);
header.AddChild("K3发货金额", new LocaleValue("K3发货金额"), SqlStorageType.SqlDecimal);
header.AddChild("星空发货数量", new LocaleValue("星空发货数量"), SqlStorageType.SqlDecimal);
header.AddChild("星空发货金额", new LocaleValue("星空发货金额"), SqlStorageType.SqlDecimal);
header.AddChild("ShipmentsAmount", new LocaleValue("总发货金额"), SqlStorageType.SqlDecimal);
header.AddChild("K3退货数量", new LocaleValue("K3退货数量"), SqlStorageType.SqlDecimal);
header.AddChild("K3退货金额", new LocaleValue("K3退货金额"), SqlStorageType.SqlDecimal);
header.AddChild("星空退货数量", new LocaleValue("星空退货数量"), SqlStorageType.SqlDecimal);
header.AddChild("星空退货金额", new LocaleValue("星空退货金额"), SqlStorageType.SqlDecimal);
header.AddChild("FBillAllAmount", new LocaleValue("总退货金额"), SqlStorageType.SqlDecimal);
header.AddChild("PPBillingDate", new LocaleValue("星空普票开票日期"), SqlStorageType.Sqlvarchar);
header.AddChild("PPFALLAmountFor", new LocaleValue("星空普票开票金额"), SqlStorageType.SqlDecimal);
header.AddChild("ZPBillingDate", new LocaleValue("星空专票开票日期"), SqlStorageType.Sqlvarchar);
header.AddChild("ZPFALLAmountFor", new LocaleValue("星空专票开票金额"), SqlStorageType.SqlDecimal);
header.AddChild("FALLAMOUNTFOR", new LocaleValue("总开票金额"), SqlStorageType.SqlDecimal);
header.AddChild("PaymentAmount", new LocaleValue("回款金额"), SqlStorageType.SqlDecimal);
header.AddChild("ShippedDebt", new LocaleValue("已出货欠款"), SqlStorageType.SqlDecimal);
header.AddChild("InvoicedDebt", new LocaleValue("已开票欠款"), SqlStorageType.SqlDecimal);
header.AddChild("OwedTickets", new LocaleValue("欠票"), SqlStorageType.SqlDecimal);
header.AddChild("IsEnded", new LocaleValue("是否已完结"), SqlStorageType.Sqlvarchar);
header.AddChild("FSalerId", new LocaleValue("销售员"), SqlStorageType.Sqlvarchar);
header.AddChild("Remark", new LocaleValue("备注"), SqlStorageType.Sqlvarchar);
header.AddChild("K3专票金额", new LocaleValue("K3专票金额"), SqlStorageType.SqlDecimal);
header.AddChild("K3普票金额", new LocaleValue("K3普票金额"), SqlStorageType.SqlDecimal);
foreach (var item in header.GetChilds())
{
item.Width = 160;
}
return header;
}
/// <summary>
/// 显示报表数据
/// </summary>
/// <param name="filter"></param>
/// <param name="tableName"></param>
public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
{
DynamicObject customFilter = filter.FilterParameter.CustomFilter;
//组织
var ZZ = (customFilter["F_VRYF_OrgId_re5"] as DynamicObject);
var ZZFID = ZZ["Id"]?.ToString();
// 客户
string fClient = customFilter["FClient_Id"]?.ToString();
// 工程项目名称
var fProjectList = (customFilter["FProject"] as DynamicObjectCollection)?.Select(n => (n["FProject"] as DynamicObject)["ID"].ToString()).ToList();
// 截止对账日期
var fDate = customFilter["FDate"]?.ToString();
//开始对账日期
var FSDate = customFilter["FSDate"]?.ToString();
// 订单状态
var fGROUP = customFilter["F_ALL_GROUP"]?.ToString();
//纸质合同号
var ZZHTH = customFilter["F_ZZHTH"]?.ToString();
//销售员
var XSY = (customFilter["F_XSY"] as DynamicObject);
var XSYFID = string.Empty;
if (XSY != null)
{
XSYFID = XSY["Id"].ToString();
}
var fProject = fProjectList == null ? "" : (string.Join(",", fProjectList));
var SFQJFWDZ = customFilter["F_ALL_GROUP2"]?.ToString();
base.BuilderReportSqlAndTempTable(filter, tableName);
string sql = string.Format(@"/*dialect*/
--更新MX表中的字段
EXEC UpdateYSDZBMX_GZTH_XN '{0}','{1}','{2}','{3}','{4}','{5}','{6}'
--更新MX表中的发票金额
EXEC GXFPJEYSDZDMX_GZTH '{0}','{1}'
--更新JY表
EXEC UpdateYSDZBJY_GZTH
", FSDate, fDate, ZZFID, fClient,XSYFID,ZZHTH,SFQJFWDZ);
sql += string.Format($@"
INSERT INTO YingShouZhanKuanJY_GZTH(FID,NUMBER,PaymentAmount,ShippedDebt,InvoicedDebt)
Select 999998,'待核销'
,Sum((FRECAMOUNTFOR-F_AMOUNT)*FEXCHANGERATE) AS DHXJE
,-Sum((FRECAMOUNTFOR-F_AMOUNT)*FEXCHANGERATE) AS YCHQK
,-Sum((FRECAMOUNTFOR-F_AMOUNT)*FEXCHANGERATE) AS YKPQK
From T_AR_RECEIVEBILL T1
Where 1=1
And FDOCUMENTSTATUS = 'C'
And FCONTACTUNIT ={fClient}
INSERT INTO YingShouZhanKuanJY_GZTH(FID,Number,OrderAmount,ShipmentsAmount,FBillAllAmount,
FALLAmountFor,PaymentAmount,ShippedDebt,InvoicedDebt,OwedTickets
,[K3发货数量],[K3发货金额],[K3退货数量],[K3退货金额],[星空发货数量],[星空发货金额],[星空退货数量],[星空退货金额],PPFALLAmountFor,ZPFALLAmountFor,[K3专票金额],[K3普票金额])
Select
999999,
'合计',
SUM(OrderAmount) as OrderAmount,
SUM(ShipmentsAmount) as ShipmentsAmount,
SUM(FBillAllAmount) as FBillAllAmount,
SUM(FALLAMOUNTFOR) as FALLAMOUNTFOR,
SUM(PaymentAmount) as PaymentAmount,
SUM(ShippedDebt) as ShippedDebt,
SUM(InvoicedDebt) as InvoicedDebt,
SUM(OwedTickets) as OwedTickets
,SUM([K3发货数量]) as K3发货数量
,SUM([K3发货金额]) as K3发货金额
,SUM([K3退货数量]) as K3退货数量
,SUM([K3退货金额]) as K3退货金额
,SUM([星空发货数量]) as 星空发货数量
,SUM([星空发货金额]) as 星空发货金额
,SUM([星空退货数量]) as 星空退货数量
,SUM([星空退货金额]) as 星空退货金额
,SUM(PPFALLAmountFor) as PPFALLAmountFor
,SUM(ZPFALLAmountFor) as ZPFALLAmountFor
,SUM([K3专票金额]) as K3专票金额
,SUM([K3普票金额]) as K3普票金额
From YingShouZhanKuanJY_GZTH
where 1=1
");
if (fGROUP == "2")
{
sql += string.Format(@"AND IsEnded = '未完结'");
}
sql += string.Format(@"
SELECT
--ROW_NUMBER() OVER (ORDER BY [DATE] DESC,[FID]) AS FIDENTITYID,
ROW_NUMBER() OVER (ORDER BY (CASE [NUMBER] WHEN '待核销' THEN 999998 WHEN '合计' THEN 999999 ELSE CONVERT(INT,[NUMBER]) END),[FID]) AS FIDENTITYID,
*
INTO {0}
FROM YingShouZhanKuanJY_GZTH
WHERE 1=1
", tableName);
if (fGROUP == "2")
{
sql += string.Format(@"AND IsEnded = '未完结'");
}
DBUtils.Execute(this.Context, sql);
}
/// <summary>
/// 获取前端组件转换过滤条件
/// </summary>
/// <param name="filter"></param>
/// <returns></returns>
public override ReportTitles GetReportTitles(IRptParams filter)
{
ReportTitles reportTitles = new ReportTitles();
DynamicObject customFilter = filter.FilterParameter.CustomFilter;
if (customFilter != null)
{
// 客户
var fClientList = (customFilter["FClient"] as DynamicObject)?["Name"]?.ToString();
// 工程项目名称
var fProjectList = (customFilter["FProject"] as DynamicObjectCollection)?.Select(n => (n["FProject"] as DynamicObject)["Name"].ToString()).ToList();
// 截止对账日期
var fDate = customFilter["FDate"]?.ToString();
//开始对账日期
var FSDate = customFilter["FSDate"]?.ToString();
// 订单状态
var fGROUP = customFilter["F_ALL_GROUP"]?.ToString();
//纸质合同号
var ZZHTH = customFilter["F_ZZHTH"]?.ToString();
//销售员
var XSY = (customFilter["F_XSY"] as DynamicObject);
var XSYFID = string.Empty;
if (XSY != null)
{
XSYFID = XSY["Id"].ToString();
}
string fState = "";
if (fGROUP == "1")
{
fState = "全部订单";
}
if (fGROUP == "2")
{
fState = "未完结订单";
}
//是否月结客户
var SFQJFWDZ = customFilter["F_ALL_GROUP2"]?.ToString();
//这里是报表页面的标识
reportTitles.AddTitle("FState", fGROUP == null ? "" : fState);
reportTitles.AddTitle("FClient", fClientList == null ? "" : fClientList);
reportTitles.AddTitle("FDate", fDate == null ? "" : Convert.ToDateTime(fDate).ToString("yyyy-MM-dd"));
reportTitles.AddTitle("FSDate", fDate == null ? "" : Convert.ToDateTime(FSDate).ToString("yyyy-MM-dd"));
reportTitles.AddTitle("FProject", fProjectList == null ? "" : string.Join(",", fProjectList));
reportTitles.AddTitle("F_ZZHTH", ZZHTH == null ? "" : ZZHTH);
reportTitles.AddTitle("F_XSY", XSYFID == null ? "" : XSYFID);
reportTitles.AddTitle("F_SFYJKH", SFQJFWDZ == null ? "" : SFQJFWDZ);
}
return reportTitles;
}
//设计报表合计列
//public override List<SummaryField> GetSummaryColumnInfo(IRptParams filter)
//{
// var result = base.GetSummaryColumnInfo(filter);
// result.Add(new SummaryField("OrderAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ShipmentsAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("FBillAllAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("PPFALLAmountFor", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ZPFALLAmountFor", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("FALLAMOUNTFOR", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("PaymentAmount", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("ShippedDebt", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("InvoicedDebt", BOSEnums.Enu_SummaryType.SUM));
// result.Add(new SummaryField("OwedTickets", BOSEnums.Enu_SummaryType.SUM));
// return result;
//}
}
}

View File

@@ -15,6 +15,7 @@ using NPOI.SS.UserModel;
using NPOI.SS.Util;
using NPOI.XSSF.UserModel;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.IO;
@@ -32,9 +33,11 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
public override void BarItemClick(BarItemClickEventArgs e)
{
base.BarItemClick(e);
List<string> BarItemKeyList = new List<string> { "Test_Button_3", "Test_Button_1" };
// 判断 应收对账单【明细版】按钮
if (e.BarItemKey == "Test_Button_1")
if (BarItemKeyList.Contains(e.BarItemKey))
{
string IsXN = e.BarItemKey == "Test_Button_3" ? "XN" : "";
var reportModel = this.SysReportModel;
//单据头
@@ -78,18 +81,18 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
fDate2 = sqlTestList[0]["Date"].ToString().Split(' ')[0];
}
Main(filePath, fClient, fDate, fProject, list, Num, fAmount, fDate2, F_SFYJKH, Context);
Main(filePath, fClient, fDate, fProject, list, Num, fAmount, fDate2, F_SFYJKH, Context, IsXN);
}
}
/// <summary>
/// 赋值EXCEL
/// </summary>
static void Main(string outputFilePath, string fClient, string fDate, string fProject, DataRowCollection list, int Num, decimal fAmount,string fDate2,string F_SFYJKH, Kingdee.BOS.Context Context)
static void Main(string outputFilePath, string fClient, string fDate, string fProject, DataRowCollection list, int Num, decimal fAmount,string fDate2,string F_SFYJKH, Kingdee.BOS.Context Context,string IsXN)
{
#region Excel代码
string filePath = @"D:\KingdeeModel\对账单模板2.xlsx";
string filePath = $@"D:\KingdeeModel\对账单模板{IsXN}2.xlsx";
FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.Read);
IWorkbook workbook = new XSSFWorkbook(file);
file.Close();

View File

@@ -0,0 +1,407 @@
USE [AIS2025]
GO
/****** Object: StoredProcedure [dbo].[UpdateYSDZBMX_GZTH] Script Date: 2025/11/28 10:40:12 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[UpdateYSDZBMX_GZTH_XN]
@FSDATE varchar(1000),
@FEDATE varchar(1000),
@FSaleOrgId varchar(1000),
@FCUSTID varchar(1000),
@XSYFID varchar(1000),
@ZZHTH varchar(1000)
,@SFQJFWDZ varchar(1000) ---
AS
BEGIN
DECLARE @StartDate DATE = CONVERT(DATE, @FSDATE);
--DECLARE @EndDate DATE = CONVERT(DATE,@FEDATE);
DECLARE @EndDate DATE = CONVERT(DATE,CASE @FEDATE WHEN '' THEN '2099-12-31'ELSE @FEDATE END);
-- 将结束日期增加一天
SET @EndDate = DATEADD(DAY, 1, @EndDate);
TRUNCATE TABLE YingShouZhanKuanMX_GZTH;
SELECT DISTINCT *
INTO #TEMP3
FROM(
--
SELECT F_PAPERCONTRACT ZHHTH,FDELIVERYORGID ZZ
FROM T_SAL_DELIVERYNOTICE T1
WHERE (FDELIVERYORGID = @FSaleOrgId OR ISNULL(@FSaleOrgId,'') = '')
AND FCUSTOMERID = @FCUSTID --
AND FApproveDate >= @StartDate
AND FApproveDate < @EndDate
AND (ISNULL(@ZZHTH,'') = '' OR F_PAPERCONTRACT = @ZZHTH)
AND FDOCUMENTSTATUS = 'C'
UNION ALL
--退
SELECT F_PAPERCONTRACT ZHHTH,FRETORGID ZZ
FROM T_SAL_RETURNNOTICE T1
WHERE (FRETORGID = @FSaleOrgId OR ISNULL(@FSaleOrgId,'') = '')
AND FRETCUSTID = @FCUSTID --
AND FApproveDate >= @StartDate
AND FApproveDate < @EndDate
AND (ISNULL(@ZZHTH,'') = '' OR F_PAPERCONTRACT = @ZZHTH)
AND FDOCUMENTSTATUS = 'C'
UNION ALL
--
SELECT F_CONTRACTNUMBER ZHHTH,FPAYORGID ZZ
FROM T_AR_RECEIVEBILL T1
WHERE (FPAYORGID = @FSaleOrgId OR ISNULL(@FSaleOrgId,'') = '')
AND FCONTACTUNITTYPE = 'BD_Customer' --
AND FCONTACTUNIT = @FCUSTID --
AND FApproveDate >= @StartDate
AND FApproveDate < @EndDate
AND (ISNULL(@ZZHTH,'') = '' OR F_CONTRACTNUMBER = @ZZHTH)
AND FDOCUMENTSTATUS = 'C'
UNION ALL
--退
SELECT F_VRYF_TEXT_83G ZHHTH,FPAYORGID ZZ
FROM T_AR_REFUNDBILL T1
WHERE (FPAYORGID = @FSaleOrgId OR ISNULL(@FSaleOrgId,'') = '')
AND FCONTACTUNITTYPE = 'BD_Customer' --
AND FCONTACTUNIT = @FCUSTID --
AND FApproveDate >= @StartDate
AND FApproveDate < @EndDate
AND (ISNULL(@ZZHTH,'') = '' OR F_VRYF_TEXT_83G = @ZZHTH)
AND FDOCUMENTSTATUS = 'C'
UNION ALL
--
SELECT F_PAPERNUMBER ZHHTH,FSETTLEORGID ZZ
FROM T_IV_SALESIC T1
WHERE (FSETTLEORGID = @FSaleOrgId OR ISNULL(@FSaleOrgId,'') = '')
AND FCUSTOMERID = @FCUSTID --
AND FApproveDate >= '2025-01-01'
AND FApproveDate >= @FSDATE
AND FApproveDate < @EndDate
AND (ISNULL(@ZZHTH,'') = '' OR F_PAPERNUMBER = @ZZHTH)
AND FDOCUMENTSTATUS = 'C'
AND T1.F_SFQC = 0
UNION ALL
--
SELECT F_CONTRACTNUMBER ZHHTH,FSALEORGID ZZ
FROM T_SAL_ORDER
WHERE FDOCUMENTSTATUS = 'C'
AND FApproveDate < @EndDate
AND 1= @SFQJFWDZ
UNION ALL
--
SELECT F_CONTRACTNUMBER ZHHTH,FSALEORGID ZZ
FROM T_SAL_ORDER
WHERE FDOCUMENTSTATUS = 'C'
AND FApproveDate >= @FSDATE
AND FApproveDate < @EndDate
AND 2= @SFQJFWDZ
)a
INSERT INTO
YingShouZhanKuanMX_GZTH
(FID,FENTRYID,FSaleOrgId,FBILLNO,FSalerId,[DATE],CONTRACTNUMBER,ProjectName,SizeModel,FQty,FTaxPrice,FAllAmount,OrderAmount,PaymentAmount,[K3数据],,NUMBER)
SELECT
A.FID AS FID
,B.FENTRYID AS FENTRYID
,A.FSaleOrgId AS
,A.FBILLNO AS
,XS.FNAME AS FID
,FORMAT( A.FApproveDate,'yyyy-MM-dd') AS
,A.F_contractnumber AS
,GC.FNAME AS
,WL_L.FSpecification AS
,B.FQTY AS
,B_F.FTAXPRICE AS
,B_F.FALLAMOUNT_LC AS
,AF.FBillAllAmount
,A.F_Amount AS
,0 AS K3数据
,tmm.FOldNumber
,ROW_NUMBER() OVER(ORDER BY A.FApproveDate ,A.FID) AS NUMBER
FROM T_SAL_ORDER A
INNER JOIN (
SELECT T1.FID,SUM(T1.FALLAMOUNT_LC) FBillAllAmount
FROM T_SAL_ORDERENTRY_F T1
INNER JOIN T_SAL_ORDERENTRY T2 ON T1.FENTRYID = T2.FENTRYID AND T2.FRETURNTYPE <> 'RETURN'
GROUP BY T1.FID
) AF ON A.FID = AF.FID
INNER JOIN T_BAS_PREBDONE_L GC ON A.F_projectname = GC.FID
INNER JOIN T_SAL_ORDERENTRY B ON A.FID = B.FID
INNER JOIN T_BD_MATERIAL_L WL_L ON B.FMATERIALID = WL_L.FMATERIALID
INNER JOIN T_BD_MATERIAL tmm ON B.FMATERIALID = tmm.FMATERIALID
INNER JOIN T_SAL_ORDERENTRY_F B_F ON B.FENTRYID = B_F.FENTRYID
INNER JOIN V_BD_SALESMAN_L XS ON XS.FID = A.FSALERID
INNER JOIN #TEMP3 LS ON LS.ZHHTH = A.F_CONTRACTNUMBER AND LS.ZZ = A.FSALEORGID
WHERE (A.FSaleOrgId = @FSaleOrgId OR ISNULL(@FSaleOrgId,'') = '')
AND A.FCUSTID = @FCUSTID
--AND A.FApproveDate >= @StartDate
--AND A.FApproveDate <= @EndDate
AND (ISNULL(@XSYFID, '') = '' OR A.FSalerId = @XSYFID)
AND (ISNULL(@ZZHTH,'') = '' OR A.F_contractnumber = @ZZHTH)
AND B.FRETURNTYPE <> 'RETURN'
AND A.FDOCUMENTSTATUS = 'C'
/*2025-08-13调整发货数量逻辑,替换该逻辑*/
--UPDATE a
--SET a.[K3发货数量]=b.,a.[K3发货金额]=b.,a.[K3退货数量]=b.退
--,a.[K3退货金额]=b.退--,a.[K3专票金额] = b. ,a.[K3普票金额]= b.
--FROM YingShouZhanKuanMX_GZTH A
--INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
--INNER JOIN [t_xnoldk3seorder1125] b
--ON C.F_K3SEQ = b. AND a.FBILLNO=b.[] --AND a.=[] AND a.FQty=[] AND (ABS(a.FTaxPrice-b.[])<=0.02 OR ABS(a.FTaxPrice-b.[])<=0.02)
--WHERE K3数据=0
--AND B. >= @StartDate
--AND B. < @EndDate
--k3专票
UPDATE a
SET a.[K3专票金额] = b.
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
INNER JOIN (SELECT ,,SUM() AS '发票金额' FROM [oldk3ICSale0802] GROUP BY ,) b
ON C.FSEQ = 1 AND a.CONTRACTNUMBER=b. --AND a.=[] AND a.FQty=[] AND (ABS(a.FTaxPrice-b.[])<=0.02 OR ABS(a.FTaxPrice-b.[])<=0.02)
WHERE K3数据=0
AND b. = ''
--AND B. >= @StartDate
--AND B. < @EndDate
--k3普票
UPDATE a
SET a.[K3普票金额] = b.
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
INNER JOIN (SELECT ,,,SUM() AS '发票金额' FROM [oldk3ICSale0802] GROUP BY ,,) b
ON C.FSEQ = 1 AND a.CONTRACTNUMBER=b. --AND a.=[] AND a.FQty=[] AND (ABS(a.FTaxPrice-b.[])<=0.02 OR ABS(a.FTaxPrice-b.[])<=0.02)
WHERE K3数据=0
AND b. = ''
AND ISNULL(b.,'') <> 1
UPDATE a SET a.[K3专票金额] = CASE B.rownumber WHEN 1 THEN b. ELSE 0 END,a.[K3普票金额]= CASE B.rownumber WHEN 1 THEN b. ELSE 0 END
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN (
SELECT ROW_NUMBER() OVER(PARTITION BY T1.FID ORDER BY T1.FID) rownumber,T1.FID,T1.FENTRYID,T2.,T2.
FROM YingShouZhanKuanMX_GZTH T1
INNER JOIN (
SELECT FID,SUM([K3专票金额]) AS ,SUM([K3普票金额]) AS
FROM YingShouZhanKuanMX_GZTH
GROUP BY FID) T2 ON T1.FID = t2.FID
)B ON A.FID = B.FID AND A.FENTRYID = B.FENTRYID
----K3数据
--INSERT INTO
--YingShouZhanKuanMX_GZTH
--(FID,FENTRYID,FSaleOrgId,FBILLNO,FSalerId,[DATE],CONTRACTNUMBER,ProjectName,SizeModel,[K3发货数量],[K3发货金额],[K3退货数量],[K3退货金额],[K3普票金额],[K3专票金额],[K3数据])
--SELECT
-- B.FID AS 销售订单FID
--,0 AS FENTRYID
--,B.FSaleOrgId AS
--,B.FBILLNO AS
--,XS.FNAME AS FID
--,FORMAT( B.FApproveDate,'yyyy-MM-dd') AS
--,B.F_contractnumber AS
--,GC.FNAME AS
--,A. AS
--,A. AS
--,A. AS
--,A.退 AS 退
--,A.退 AS 退
--,A. AS
--,A. AS
--,1 AS K3数据
--FROM t_xnoldk3seorder1125 A
--INNER JOIN T_SAL_ORDER B ON A. = B.FBILLNO
--INNER JOIN T_BAS_PREBDONE_L GC ON B.F_projectname = GC.FID
--INNER JOIN V_BD_SALESMAN_L XS ON XS.FID = B.FSALERID
--WHERE B.FSaleOrgId = @FSaleOrgId
--AND B.FCUSTID = @FCUSTID
--AND B.FApproveDate >= @StartDate
--AND B.FApproveDate <= @EndDate
--AND (ISNULL(@XSYFID, '') = '' OR B.FSalerId = @XSYFID)
--AND (ISNULL(@ZZHTH,'') = '' OR B.F_contractnumber = @ZZHTH)
--
SELECT
C.FSBILLID AS FID
,C.FSID AS FENTRYID
,A.FApproveDate AS
,B.FQTY AS
,B_F.FAllAmount_LC AS
,STUFF((SELECT DISTINCT ','+FORMAT(FApproveDate,'yyyy-MM-dd') FROM T_SAL_DELIVERYNOTICE T1
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY T2 ON T1.FID = T2.FID
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY_F T3 ON T2.FENTRYID = T3.FENTRYID
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY_LK T4 ON T3.FENTRYID = T4.FENTRYID AND T4.FSTABLENAME = 'T_SAL_ORDERENTRY'
WHERE T4.FSBILLID IN (SELECT FID FROM YingShouZhanKuanMX_GZTH) AND C.FSBILLID = T4.FSBILLID FOR XML PATH('')),1,1,'') AS
INTO #TEMP1
FROM T_SAL_DELIVERYNOTICE A
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY B ON A.FID = B.FID
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY_F B_F ON B.FENTRYID = B_F.FENTRYID
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY_LK C ON B_F.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY'
WHERE C.FSBILLID IN (SELECT FID FROM YingShouZhanKuanMX_GZTH)
AND C.FSID IN (SELECT FENTRYID FROM YingShouZhanKuanMX_GZTH)
AND A.FApproveDate >= @StartDate
AND A.FApproveDate < @EndDate
AND A.FDOCUMENTSTATUS = 'C'
----k3发货数据
--update A
--SET A.K3发货数量 = C.,A.K3发货金额 = C.
--FROM YingShouZhanKuanMX_GZTH A
--INNER JOIN T_SAL_ORDERENTRY B ON A.FID = B.FID AND A.FENTRYID = B.FENTRYID
--INNER JOIN T_BD_MATERIAL D ON B.FMATERIALID = B.FMaterialId
--INNER JOIN t_xnoldk3seorder1125 C ON A.FBILLNO = C. AND A.CONTRACTNUMBER = C. AND D.FOldNumber = C.
SELECT
FID,
FENTRYID,
SUM() AS ,
SUM() AS
INTO #FHTEMP1
FROM #TEMP1
GROUP BY FID,FENTRYID
--
UPDATE A
SET ShipmentsDate = B. --FORMAT( B.,'yyyy-MM-dd')
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN #TEMP1 B ON A.FID = B.销售订单FID AND A.FENTRYID = B.销售订单FENTRYID
--K3发货日期
UPDATE A
SET ShipmentsDate = LEFT(CONCAT(CASE WHEN ISNULL(A.ShipmentsDate,'') = '' THEN '' ELSE A.ShipmentsDate+',' END ,B.),1990)
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
INNER JOIN (SELECT ,STUFF((SELECT DISTINCT ','+ FROM t_xnoldk3seorder1125 WHERE = a. FOR XML PATH('')),1,1,'') AS '合并发货日期',
from t_xnoldk3seorder1125 a) b
ON C.F_K3SEQ = b. AND a.CONTRACTNUMBER=b.[]
UPDATE A
SET A. = B.,A. = B.
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN #FHTEMP1 B ON A.FID = B.销售订单FID AND A.FENTRYID = B.销售订单FENTRYID
/*2025-08-13调整发货数量逻辑"销售订单发货数量取数逻辑,要根据销售订单行数据进行判断:
1、如果行在云星空没有关联发货通知单就取该行关联的中间表发货数量
2、如果行在云星空有关联发货通知单就取该行关联的云星空发货数量+关联的中间表(销售出库数量+其他出库数量)"*/
UPDATE a
SET a.[K3发货数量]= CASE ISNULL(A.,0) WHEN 0 THEN b. ELSE ISNULL(b.,0)+ISNULL(b.,0) END
,a.[K3发货金额]= CASE ISNULL(A.,0) WHEN 0 THEN b. ELSE (ISNULL(b.,0)+ISNULL(b.,0))*b. END
,a.[K3退货数量]=b.退
,a.[K3退货金额]=b.退
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
INNER JOIN [t_xnoldk3seorder1125] b
ON C.F_K3SEQ = b. AND a.CONTRACTNUMBER=b.[]
WHERE K3数据=0
AND B. >= @StartDate
AND B. < @EndDate
--
UPDATE A
SET A.ShipmentsNum = ISNULL([],0) + ISNULL([K3发货数量],0),A.ShipmentsAmount = ISNULL([],0) + ISNULL([K3发货金额],0)
FROM YingShouZhanKuanMX_GZTH A
--退退退
SELECT
E.FSBILLID AS FID
,E.FSID AS FENTRYID
,A.FDATE AS 退
,B.FQTY AS 退
,B_F.FALLAMOUNT_LC AS 退
,F.F_CONTRACTNUMBER AS
INTO #TEMP2
FROM T_SAL_RETURNNOTICE A
INNER JOIN T_SAL_RETURNNOTICEENTRY B ON A.FID = B.FID
INNER JOIN T_SAL_RETURNNOTICEENTRY_F B_F ON B.FENTRYID = B_F.FENTRYID
INNER JOIN T_SAL_RETURNNOTICEENTRY_LK C ON B_F.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY'
INNER JOIN T_SAL_ORDERENTRY D ON C.FSBILLID = D.FID AND C.FSID = D.FENTRYID
INNER JOIN T_SAL_ORDERENTRY_LK E ON E.FENTRYID = D.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY'
INNER JOIN T_SAL_ORDER F ON E.FSBILLID = F.FID
WHERE 1=1
AND A.FApproveDate >= @StartDate
AND A.FApproveDate < @EndDate
AND A.FDOCUMENTSTATUS = 'C'
--退退退
INSERT INTO #TEMP2 (销售订单FID,销售订单FENTRYID,退货日期,退货数量,退货金额,纸质合同号)
SELECT
F.FID AS FID
,D.FENTRYID AS FENTRYID
,A.FDATE AS 退
,B.FQTY AS 退
,B_F.FALLAMOUNT_LC AS 退
,F.F_CONTRACTNUMBER AS
FROM T_SAL_RETURNNOTICE A
INNER JOIN T_SAL_RETURNNOTICEENTRY B ON A.FID = B.FID
INNER JOIN T_SAL_RETURNNOTICEENTRY_F B_F ON B.FENTRYID = B_F.FENTRYID
INNER JOIN T_SAL_RETURNNOTICEENTRY_LK C ON B_F.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY'
INNER JOIN T_SAL_ORDERENTRY D ON C.FSBILLID = D.FID AND C.FSID = D.FENTRYID
INNER JOIN T_SAL_ORDER F ON D.FID = F.FID
WHERE 1=1
AND D.FRETURNTYPE <> 'RETURN'
AND D.FRETURNTYPE <> 'SEND'
AND F.F_CONTRACTNUMBER NOT IN (SELECT DISTINCT [] FROM #TEMP2)
AND A.FApproveDate >= @StartDate
AND A.FApproveDate < @EndDate
AND A.FDOCUMENTSTATUS = 'C'
--退退退
INSERT INTO #TEMP2 (销售订单FID,销售订单FENTRYID,退货日期,退货数量,退货金额,纸质合同号)
SELECT
C.FID AS FID
,D.FENTRYID AS FENTRYID
,A.FDATE AS 退
,B.FQTY AS 退
,B_F.FALLAMOUNT_LC AS 退
,C.F_CONTRACTNUMBER AS
FROM T_SAL_RETURNNOTICE A
INNER JOIN T_SAL_RETURNNOTICEENTRY B ON A.FID = B.FID
INNER JOIN T_SAL_RETURNNOTICEENTRY_F B_F ON B.FENTRYID = B_F.FENTRYID
INNER JOIN T_SAL_ORDER C ON A.F_SOURPAPERCONTRACT = C.F_CONTRACTNUMBER AND C.FSALEORGID = A.FRETORGID --
INNER JOIN T_SAL_ORDERENTRY D ON C.FID = D.FID AND D.FMATERIALID = B.FMATERIALID --
WHERE 1=1
AND A.FApproveDate >= @StartDate
AND A.FApproveDate < @EndDate
AND C.F_CONTRACTNUMBER NOT IN (SELECT DISTINCT [] FROM #TEMP2)
AND A.FDOCUMENTSTATUS = 'C'
----k3退货数据
--update A
--SET A.K3退货数量 = C.退,A.K3退货金额 = C.退
--FROM YingShouZhanKuanMX_GZTH A
--INNER JOIN T_SAL_ORDERENTRY B ON A.FID = B.FID AND A.FENTRYID = B.FENTRYID
--INNER JOIN T_BD_MATERIAL D ON B.FMATERIALID = B.FMaterialId
--INNER JOIN t_xnoldk3seorder1125 C ON A.FBILLNO = C. AND A.CONTRACTNUMBER = C. AND D.FOldNumber = C.
UPDATE A
SET ReturnDate = FORMAT( B.退,'yyyy-MM-dd'),A.退 = ISNULL(B.退,0),A.退 = ISNULL(B.退,0)
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN #TEMP2 B ON A.FID = B.销售订单FID AND A.FENTRYID = B.销售订单FENTRYID
update YingShouZhanKuanMX_GZTH
SET ReturnNum = ISNULL(K3退货数量,0) + ISNULL(退,0), ReturnAmount = ISNULL(K3退货金额,0) + ISNULL(退,0);
--
UPDATE A
SET PaymentDate = FORMAT(B.ShouKuanFDate,'yyyy-MM-dd')
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN ZZZ_HeXiaoBook B ON B.XiaoShouFid = A.FID
WHERE 1=1
AND B.ShouKuanFDate >= @StartDate
AND B.ShouKuanFDate < @EndDate
--SELECT OrderAmount,PaymentAmount,ShippedDebt,InvoicedDebt,IsEnded ,OwedTickets,BillingAmount, CASE WHEN ROW_NUMBER() OVER(PARTITION BY FBILLNO ORDER BY fid) = 1 THEN FBILLNO
--END AS ,* FROM YingShouZhanKuanMX_GZTH
--退退
SELECT A.FID,SUM(A.ShipmentsAmount) AS '发货金额', SUM(A.ReturnAmount) AS '退货金额',
STUFF((SELECT DISTINCT ','+ReturnDate FROM YingShouZhanKuanMX_GZTH WHERE FID = a.FID FOR XML PATH('')),1,1,'') AS '退货日期'
INTO #TEMP4
FROM YingShouZhanKuanMX_GZTH A
GROUP BY A.FID
UPDATE A
SET A.ShipmentsAmount = ISNULL(B.,0),A.ReturnAmount = ISNULL(B.退,0),A.ReturnDate = ISNULL(B.退,'')
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN #TEMP4 B ON A.FID = B.FID
END

View File

@@ -263,9 +263,9 @@ INNER JOIN (
SET ShipmentsDate = LEFT(CONCAT(CASE WHEN ISNULL(A.ShipmentsDate,'') = '' THEN '' ELSE A.ShipmentsDate+',' END ,B.<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>),1990)
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
INNER JOIN (SELECT <EFBFBD>к<EFBFBD>,STUFF((SELECT DISTINCT ','+<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM oldk3seorder0701 WHERE <EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD> = a.<EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD> FOR XML PATH('')),1,1,'') AS '<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',<EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD>
INNER JOIN (SELECT <EFBFBD>к<EFBFBD>,STUFF((SELECT DISTINCT ','+<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM oldk3seorder0701 WHERE <EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD> = a.<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD> FOR XML PATH('')),1,1,'') AS '<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>
from oldk3seorder0701 a) b
ON C.F_K3SEQ = b.<EFBFBD>к<EFBFBD> AND a.FBILLNO=b.[<EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD>]
ON C.F_K3SEQ = b.<EFBFBD>к<EFBFBD> AND a.CONTRACTNUMBER=b.[<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>]
UPDATE A
SET A.<EFBFBD>ǿշ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = B.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,A.<EFBFBD>ǿշ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = B.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@@ -283,7 +283,7 @@ SET a.[K3
FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID
INNER JOIN [oldk3seorder0701] b
ON C.F_K3SEQ = b.<EFBFBD>к<EFBFBD> AND a.FBILLNO=b.[<EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD>]
ON C.F_K3SEQ = b.<EFBFBD>к<EFBFBD> AND a.CONTRACTNUMBER=b.[<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>]
WHERE <EFBFBD>Ƿ<EFBFBD>K3<EFBFBD><EFBFBD><EFBFBD><EFBFBD>=0
AND B.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> >= @StartDate
AND B.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> < @EndDate
@@ -316,6 +316,29 @@ AND B.
AND A.FApproveDate < @EndDate
AND A.FDOCUMENTSTATUS = 'C'
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
INSERT INTO #TEMP2 (<28><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>FID,<2C><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>FENTRYID,<2C>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>,<2C>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>,<2C>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><>ʺ<EFBFBD>ͬ<EFBFBD><CDAC>)
SELECT
F.FID AS <EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD>FID
,D.FENTRYID AS <EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD>FENTRYID
,A.FDATE AS <EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,B.FQTY AS <EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,B_F.FALLAMOUNT_LC AS <EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,F.F_CONTRACTNUMBER AS ֽ<EFBFBD>ʺ<EFBFBD>ͬ<EFBFBD><EFBFBD>
FROM T_SAL_RETURNNOTICE A
INNER JOIN T_SAL_RETURNNOTICEENTRY B ON A.FID = B.FID
INNER JOIN T_SAL_RETURNNOTICEENTRY_F B_F ON B.FENTRYID = B_F.FENTRYID
INNER JOIN T_SAL_RETURNNOTICEENTRY_LK C ON B_F.FENTRYID = C.FENTRYID AND C.FSTABLENAME = 'T_SAL_ORDERENTRY'
INNER JOIN T_SAL_ORDERENTRY D ON C.FSBILLID = D.FID AND C.FSID = D.FENTRYID
INNER JOIN T_SAL_ORDER F ON D.FID = F.FID
WHERE 1=1
AND D.FRETURNTYPE <> 'RETURN'
AND D.FRETURNTYPE <> 'SEND'
AND F.F_CONTRACTNUMBER NOT IN (SELECT DISTINCT [ֽ<EFBFBD>ʺ<EFBFBD>ͬ<EFBFBD><EFBFBD>] FROM #TEMP2)
AND A.FApproveDate >= @StartDate
AND A.FApproveDate < @EndDate
AND A.FDOCUMENTSTATUS = 'C'
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
INSERT INTO #TEMP2 (<28><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>FID,<2C><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>FENTRYID,<2C>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>,<2C>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>,<2C>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><>ʺ<EFBFBD>ͬ<EFBFBD><CDAC>)
SELECT