关于H3 BPM数据库如何实现排序取数据的问题
問(wèn)題:
在打印模板中獲取子表內(nèi)容,可從數(shù)據(jù)庫(kù)中取數(shù)據(jù),而當(dāng)前項(xiàng)目數(shù)據(jù)庫(kù)里面數(shù)據(jù)按年度錄入,但是只需要顯示近3年的數(shù)據(jù),插件如何實(shí)現(xiàn)排序取數(shù)據(jù)?
解決方法:
1、先直接寫(xiě)一個(gè)SQL語(yǔ)句,把近3年排序后的數(shù)據(jù)讀取出來(lái)
2、在調(diào)用子表接口加載數(shù)據(jù)
3、示例:
varmonthly = DateTime.Now.Month;
??????????? var selectsql =string.Format(@"SELECT
t1.Yearly,
?????????????????????????????????????????????t1.Monthly,
?????????????????????????????????????????????t1.BudgetUnitName,
?????????????????????????????????????????????t1.BudgetUnitCode,
????? ????????????????????????????????????????t1.BudgetItemName,
?????????????????????????????????????????????t1.BudgetItemCode,
?????????????????????????????????????????????t1.Budget
?????????????????????????????????????????????FROM XL_YS_BudgetPay t1
????? ????????????????????????????????????????WHEREt1.Yearly = {0}
?????????????????????????????????????????????--AND Monthly > {1}
?????????????????????????????????????????????AND t1.BudgetUnitCode = '{2}'
?????????????????????????????????????????????AND BudgetItemCode = '{3}'
?????????????????????????????????????????????ORDER BY Monthly", yearly, monthly, budgetunitcode,budgetitemcode);
?
var dt =OThinker.H3.WorkSheet.AppUtility.Engine.Query.QueryTable(selectsql);
var list = newList<BizObject>();
?
var monthlist = newList<string> { "Jan", "Feb", "Mar","Apr", "May", "Jun", "Jul","Aug", "Sep", "Oct", "Nov","December" };
?
if (dt.Rows.Count > 0)
{
//DeptCostBudgetInfo 為子表名稱(chēng)
BizObjectSchemachildSchema = this.ActionContext.Schema.GetProperty("DeptCostBudgetInfo").ChildSchema;
?
varbizObject = new BizObject(this.ActionContext.Engine, childSchema,this.ActionContext.User.UserID);
bizObject["DataType"]= "原始";
bizObject["BudgetItemName"]= dt.Rows[0]["BudgetItemName"].ToString();
bizObject["BudgetItemCode"]= dt.Rows[0]["BudgetItemCode"].ToString();
?
varbizObject2 = new BizObject(this.ActionContext.Engine, childSchema,this.ActionContext.User.UserID);
bizObject2["DataType"]= "修改";
bizObject2["BudgetItemName"]= dt.Rows[0]["BudgetItemName"].ToString();
bizObject2["BudgetItemCode"]= dt.Rows[0]["BudgetItemCode"].ToString();
?
for(int i = 0; i < monthlist.Count; i++)
{
bizObject[monthlist]= dt.Rows["Budget"].ToString();
bizObject2[monthlist]= dt.Rows["Budget"].ToString();
}
?
list.Add(bizObject);
?list.Add(bizObject2);
? }
?
? if (bos != null)
? {
????? if (bos.Length > 1)
???? {
??????? list.AddRange(bos);
?
??? }
?}
?this.ActionContext.InstanceData["DeptCostBudgetInfo"].Value =list.ToArray();
?ActionContext.InstanceData.Submit();
轉(zhuǎn)載于:https://www.cnblogs.com/1774bpm/p/6296556.html
總結(jié)
以上是生活随笔為你收集整理的关于H3 BPM数据库如何实现排序取数据的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
                            
                        - 上一篇: P1080 国王游戏
 - 下一篇: !!!!Linux系统开发 系列