1. 问题描述 在填报表中,往往很多时候,都是从excel中复制粘贴进来的。这样就会出现一个问题,在单元格是下拉框选项时,直接复制过来的值,如果不做保存校验,就会直接保存进入数据库(不知道这算不算是个bug)。 2. 实现思路 这里主要通过行式填报报表保存时候的,填报报表属性中的数据校验来实现。 3. 实现步骤 3.1 表样设计 设计器界面如下: file:///C:/Users/king/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png B和D都为下拉框选项;如果直接从已有的excel文件中粘贴进来,那样保存后,数据库中存储的,必然就是显示值,而不是我们所需要的对应值(比如:显示值为‘是 ,而我们需要存入数据库的对应值为‘1’) 3.2 填报保存设置 选择【模板】à【填报报表属性】à【数据校验】à【内置校验】; file:///C:/Users/king/AppData/Local/Temp/msohtmlclip1/01/clip_image003.jpg 3.3 校验设置 在校验公式中: len(G6) = 0 ||INARRAY(G6, SQL("test(数据库名)","select t.value from CODE(表名) t, PUB_CODE p wheret.parent_id = p.id and p.value = 'Project_Type_Power'", 1)) != 0 即:直接从数据库中查看所用到的下拉框信息,进行匹配! 而【校验出错信息】中,则是填写相关的提示信息。比如让其手动从下拉框中选择等!
PS:图片看不到的话,直接看附件……这个应该蛮容易的……不知道会不会被看上哈…………O(∩_∩)O……
|