关于H3 BPM数据库如何实现排序取数据的问题
admin
2023-05-26 07:21:35
0

问题:

在打印模板中获取子表内容,从数据库中取数据,而当前项目数据库里面数据按年度录入,但是只需要显示近3年的数据,插件如何实现排序取数据?

解决方法

1、先直接写一个SQL语句,把近3年排序后的数据读取出来

2、在调用子表接口加载数据

3、示例:

var monthly = 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

                                              WHERE t1.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 = new List();

 

var monthlist = new List { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "December" };

 

if (dt.Rows.Count > 0)

{

//DeptCostBudgetInfo 为子表名称

              BizObjectSchema childSchema = this.ActionContext.Schema.GetProperty("DeptCostBudgetInfo").ChildSchema;

 

               var bizObject = 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();

 

               var bizObject2 = 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();


相关内容

热门资讯

被呼吁辞职之际,因凡蒂诺与FI... 【环球网快讯】据法新社最新消息,国际足联(FIFA)主席因凡蒂诺当地时间周三(5日)在摩洛哥与FIF...
原创 S... ## 这是猎鹰9号火箭上面级箭体将与月球相撞的地点。这枚废弃火箭将以每小时5400英里(8700公...
“婚外胚胎案”当事妻子:胚胎若... 连日来,“妻子申请销毁丈夫婚外胚胎遭拒”一事持续引发网友的广泛关注。8月5日上午,扬子晚报/紫牛新闻...
我国科研团队,月壤新发现! 月球的正面和背面,空间环境差别大吗?基地建在正面和建在背面,面临的挑战有何不同?2026年7月,我国...
三星、SK海力士正评估中微芯片... 【CNMO科技消息】8月5日,据外媒援引三位知情人士报道,韩国存储芯片巨头三星电子与SK海力士正在评...
图书标注禁用于AI训练,华夏出... 界面新闻记者 | 宋佳楠 近日有读者发现,华夏出版社推出的《新译黄庭经 阴符经》等图书版权信息页,...
一加手机退出北美市场,当地官网... 据外媒GSM Arena报道,一加目前已正式退出北美市场,官网上销售的最后一批手机目前已经售罄。 目...
事业编笔试第一名称遭第二名花钱... 陈女士公开反映,她是事业单位雷州市特校某岗位笔试第一,雷州特校工作人员在面试前私下联系她,帮助笔试第...
专业油烟机清洗方法介绍一下 专业油烟机清洗方法介绍一下干湿抹布各一块,专用的吸油烟机清洁剂一瓶(吸油烟机清洗剂在超市应该能够买得...
帅康的侧吸式油烟机怎么样啊?请... 最佳回答 根据这个has_none_intro来判断是否有个人简历然后样式不同显示--> 2018-...