: NoDimensionInOutStockDetail
{
private string[] customRptTableNames;
public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
{
IDBService dbservice = Kingdee.BOS.App.ServiceHelper.GetService<IDBService>();
customRptTableNames = dbservice.CreateTemporaryTableName(this.Context, 1);
string steTable = customRptTableNames[0];
base.BuilderReportSqlAndTempTable(filter, steTable);
string FProjectS = string.Empty;
DynamicObjectCollection FMatBaseManys = filter.FilterParameter.CustomFilter["FProjectS"] as DynamicObjectCollection;//多选
if (FMatBaseManys.Count > 0)
{
for (int i = 0; i < FMatBaseManys.Count; i++)
{
DynamicObject MatBaseManyID = FMatBaseManys[i]["FProjectS"] as DynamicObject;
if (MatBaseManyID != null)
{
FProjectS = FProjectS + "'" + Convert.ToInt64(MatBaseManyID["ID"]) + "',";//id
}
}
if (!string.IsNullOrWhiteSpace(FProjectS))
{
FProjectS = FProjectS.Substring(0, FProjectS.Length - 1);
}
}
StringBuilder sql = new StringBuilder();
string SqlDate = string.Empty;
if (!string.IsNullOrWhiteSpace(FProjectS))
{
SqlDate = @" where T2.XM in (" + FProjectS + ")";
}
sql.AppendFormat(@"/*dialect*/.............", tableName, steTable, SqlDate);
DBUtils.Execute(this.Context, sql.ToString());
}
public override void CloseReport()
{
if (customRptTableNames.IsNullOrEmptyOrWhiteSpace())
{
return;
}
IDBService dbSrevice = Kingdee.BOS.App.ServiceHelper.GetService<Kingdee.BOS.Contracts.IDBService>();
dbSrevice.DeleteTemporaryTableName(this.Context, customRptTableNames);
base.CloseReport();
}
}
推荐阅读