踩坑记录23.04.11

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

踩坑记录23.04.11

最近都在搞着别的事情,BOS这块弄的比较少了,踩坑的情况不多,都做下笔记记录下吧。本周有时间的话会把动态表单插件相关的都手敲一遍,看看有没有什么坑,


重置administrator账户的密码

可以在数据库将密码重置成888888,先备份好管理中心库(K3DBConfigerxxx)后执行以下SQL语句:

update t_sec_user set fpassword='9EF0664B011C3DC6305C8B213378BACC2451FAEA',fmemo='8d2fea58-cda1-4035-9024-56cc6df8957c' where fuserid=16394


多字段模糊查询,PrepareFilterParameter

快捷过滤,默认只能针对某个字段,如果想多字段的话可以这样子操作

1.扩展物料基本数据,添加一个自定义字段F_WNZJ_Text

2.对查询字符串进行格式化处理

                string filterValue = oldFilter.Substring(starIndex + 1, endIndex - starIndex - 1);

                //按照空格对条件值进行分解
                string[] fldValues = filterValue.Split(' ');
                //重新拼接条件
                List<string> fldFilters = new List<string>();
                foreach (string fldVaue in fldValues)
                {
                    if (string.IsNullOrWhiteSpace(fldVaue))
                    {
                        continue;
                    }
                    //去掉2头空格
                    string fldValueNoSpace = fldVaue.Trim().Replace("%","");

                    //拼接新条件  名称 like '%value%' or 规格 like '%value%'

                    //string fldFilter = string.Format("(FName like '{0}' or FSpecification like '{0}')", fldValueNoSpace);
                    string fldFilter = string.Format(" (FName Like N'%{0}%'  or FSpecification Like N'%{0}%') ", fldValueNoSpace);
                    newFilters.Add(fldFilter);

                }

                //
                //this.ListModel.FilterParameter.QuickFilterString = "(    " + string.Join(" AND ",newFilters) + "   )";
                e.QuickFilterString = "(    " + string.Join(" AND ", newFilters) + "   )";


3.踩的几个坑,大家注意下:

(1)截取字符串后其实还带有%,需要额外处理下

string fldValueNoSpace = fldVaue.Trim().Replace("%","");

(2)查询条件最好添加下N

上传图片

看了下默认查询,在字符串前都加了N,建议还是加一下

string.Format(" (FName Like N'%{0}%'  or FSpecification Like N'%{0}%') ",

(3)过滤是e.QuickFilterString,配置this.ListModel.FilterParameter.QuickFilterString是不生效的

上传图片

//这个不行,调试了很久放这里根本不生效

//this.ListModel.FilterParameter.QuickFilterString = "(    " + string.Join(" AND ",newFilters) + "   )";

//最终在过程调试中看到生效的是e.QuickFilterString,替换之后就可以了,哎……

e.QuickFilterString = "(    " + string.Join(" AND ", newFilters) + "   )";


踩坑记录23.04.11

最近都在搞着别的事情,BOS这块弄的比较少了,踩坑的情况不多,都做下笔记记录下吧。本周有时间的话会把动态表单插件相关的都手敲一遍,看...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息