This commit is contained in:
PastSaid
2023-12-26 10:44:19 +08:00
parent 4a98ba6946
commit ddb5043b65
39 changed files with 1163 additions and 126 deletions

View File

@@ -53,7 +53,8 @@
<Reference Include="Kingdee.K3.BD.Contracts">
<HintPath>..\..\..\..\..\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin\Kingdee.K3.BD.Contracts.dll</HintPath>
</Reference>
<Reference Include="Kingdee.K3.SCM.App.Sal.Report">
<Reference Include="Kingdee.K3.SCM.App.Sal.Report, Version=7.3.1275.3, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\..\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin\Kingdee.K3.SCM.App.Sal.Report.dll</HintPath>
</Reference>
<Reference Include="Kingdee.K3.SCM.Sal.Report.PlugIn">
@@ -72,5 +73,8 @@
<Compile Include="SaleOutStockDetailRptEx.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="SQLServer\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -1,4 +1,6 @@
using Kingdee.BOS;
using Kingdee.BOS.App.Data;
using Kingdee.BOS.Contracts;
using Kingdee.BOS.Core.Report;
using Kingdee.BOS.Util;
using Kingdee.K3.SCM.App.Sal.Report;
@@ -8,6 +10,7 @@ using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Net;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
@@ -16,47 +19,45 @@ namespace HW.App.Sal.Report.PlugInEx
[Description("销售出库明细报表数据源插件-扩展"), HotUpdate]
public class SaleOutStockDetailRptEx : SaleOutStockDetailRpt
{
public override void Initialize()
{
base.Initialize();
}
public override ReportTitles GetReportTitles(IRptParams filter)
{
return base.GetReportTitles(filter);
}
public override List<SummaryField> GetSummaryColumnInfo(IRptParams filter)
{
return base.GetSummaryColumnInfo(filter);
}
private string[] TempTableName;
public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
{
base.BuilderReportSqlAndTempTable(filter, tableName);
//创建临时表用于保存自己的数据
IDBService dbservice = Kingdee.BOS.App.ServiceHelper.GetService<IDBService>();
TempTableName = dbservice.CreateTemporaryTableName(this.Context, 1);
string strTable = TempTableName[0];
}
//调用基类方式获取初步查询数据
base.BuilderReportSqlAndTempTable(filter, strTable);
protected override DataTable GetReportData(string tablename, IRptParams filter)
{
var dataTable = base.GetReportData(tablename, filter);
string strSql = $@"/*dialect*/
SELECT
A.*
,BE.F_ORA_TEXT2 AS FSALESCATEGORY
INTO {tableName}
FROM
{strTable} A
LEFT JOIN T_SAL_OUTSTOCK B ON A.FID = B.FID AND A.FBILLNUMBER = B.FBILLNO
LEFT JOIN T_SAL_OUTSTOCKENTRY BE ON A.FID = B.FID AND BE.FENTRYID = A.FENTRYID ";
var sql = @"select ";
return dataTable;
DBUtils.Execute(this.Context, strSql);
}
public override void CloseReport()
{
//删除临时表
if (TempTableName == null || TempTableName.Length == 0)
{
return;
}
IDBService dbservice = Kingdee.BOS.App.ServiceHelper.GetService<IDBService>();
dbservice.DeleteTemporaryTableName(this.Context, TempTableName);
base.CloseReport();
}
public override ReportHeader GetReportHeaders(IRptParams filter)
{
var header = base.GetReportHeaders(filter);
//header.AddChild("FSALESCATEGORY", new LocaleValue("销售类别"));
return header;
}
}
}