润乾填报-服务器图片选择

需求:在进行填报时需要选择服务器图片,填入报表中,并能展示下载等

如:

 

面临问题:

1、润乾没提供浏览图片选择功能,只提供了本地上传。

润乾上传图片机制:

1、前端采用easyui 样式,选择图片

2、上传备份到临时目录: raqsoftConfig.xml -  <property name="inputCachePath" value="cache/input" /> 配置存放路径

3、在提交时将文件和文件名持久化到数据库。文件存储类型注意下(sqlserver:image,mysql:mediumblob 等),别错了。

解决思路

1、在文件上传下载的菜单处添加一个浏览按钮。

  通过跟踪源码,这个菜单是java代码写死的,并不能灵活配置,从而采用了jquery 硬编码进去。

  $(document).ready(function () {
console.log($(".easyui-menu").children());
$(".easyui-menu").prepend("<div id=\"sg18_review\" onclick='showDialog()' data-options=\"name:'up',iconCls:'icon-search'\" class=\"menu-item\" style=\"height: 20px;\"><div class=\"menu-text\" style=\"height: 20px; line-height: 20px;\">预览</div><div class=\"menu-icon icon-search\"></div></div>");
});

2、按钮弹框,润乾采用的easyui dialog 弹窗还是比较方便。

3、本想直接使用服务器图片(通过地址获取展示,效果可以实现但和润乾隔离,一刷新就没了,这是由于润乾获取图片机制导致)此路不同。

3、突发奇想,完全模拟润乾图片文件上传(当然不是真正的,只是服务器拷贝),润乾文件上传接口:com.raqsoft.input.view.InputServlet?action=12 表示上传 返回的是

模拟:

 

4、然后调用了一个上传成功的js,达到回写值的目的(这地方遇到一个坑,它采用xpath标识修改的td,强行调用始终说没有初始化,通过在所有js方法上打断点找到了初始化方法:)简直多此一举。

页面回写值:

 

至此完美实现润乾填报表服务器图片选择,希望对大家有所帮助

 

转载于:https://www.cnblogs.com/kunsyliu/p/9469429.html

<think>我们正在处理关于报表(类似FineReport)中设置单元格按钮填报属性的问题。根据用户的问题,我们需要配置单元格按钮的填报属性。报表中,单元格可以添加按钮,并且可以为按钮设置填报属性,以便在填报时执行特定操作。步骤通常包括:1.选择单元格,添加按钮控件。2.在控件的属性设置中,配置填报相关的属性,比如提交、重置等。参考引用[2]中提到:在FineReport设计器中,点击单元格时会出现控件属性面板,然后可以在面板中设置属性。在报表中,操作应该类似。具体配置方法:-首先,选中需要设置按钮的单元格。-然后,在控件设置中选择按钮控件(可能是工具栏上的按钮图标,或者右键菜单中的控件设置)。-在按钮的属性面板中,可以设置按钮的类型(如提交按钮、重置按钮等)以及相应的填报属性。填报属性可能包括:-提交类型:将数据提交到数据库-重置类型:重置表单中的输入。-自定义事件:通过JavaScript编写自定义脚本。由于报表与FineReport在操作上相似,我们可以参考引用[2]中的交互逻辑:属性面板上的值会写入控件的属性中(即Widget),而控件属性会反映在界面上(即appearance)。因此,配置步骤为:1.选中单元格。2.打开控件属性面板(通常在右侧或底部,具体位置取决于设计器布局)。3.在控件类型中选择“按钮”。4.在按钮的属性中,找到“填报属性”或类似标签页。5.设置按钮的填报行为,例如选择“提交”或“重置”,并配置相关参数(如提交的目标表、提交条件等)。注意:如果用户需要自定义行为,可能还需要编写脚本。如果用户的问题是关于如何通过代码方式配置,那么可能需要使用报表的API,但通常在设计器中通过图形界面即可完成。由于报表的具体操作界面可能略有不同,建议用户查阅报表的官方文档或用户手册中关于“按钮控件填报属性设置”的部分。生成相关问题:1.如何为报表的按钮控件设置提交目标表?2.报表中按钮控件支持哪些填报事件?3.如何在报表中使用自定义脚本处理按钮点击事件?</think>### 报表单元格按钮填报属性配置方法 在报表中配置单元格按钮的填报属性,主要通过**控件属性面板**实现,具体步骤如下: 1. **选中单元格** 在设计器中点击目标单元格(需放置按钮的单元格)。 2. **激活控件属性面板** 右侧会自动弹出控件属性面板(参考引用[2]的交互逻辑) > *"点击单元格,需要将widget里的值放到appearance中显示到属性面板上" [^2]* 3. **配置按钮类型** 在属性面板中找到 **"控件类型"** → 选择 **"按钮"** - 可设置按钮文本(如"提交"、"重置") - 调整按钮样式(颜色/尺寸) 4. **关键:设置填报属性** 在 **"填报属性"** 标签页中配置: - **提交行为**:绑定数据库提交动作(需提前配置数据连接) - **数据校验**:设置提交前的数据校验规则 - **事件触发**:例如 `onClick` 事件绑定提交逻辑 ```javascript // 示例:按钮点击提交表单 this.form.commit(); ``` 5. **单元格自适应(可选)** 参考引用[1]的单元格属性: > *"设置为'按单元格内容扩大'时,单元格宽度会根据内容自动调整" [^1]* 在单元格属性中勾选 **"自适应内容"** 确保按钮完整显示。 6. **保存并预览** 按 `F5` 进入填报预览模式测试按钮功能。 --- ### 注意事项 1. 若属性面板未自动弹出,可通过顶部菜单 **"视图" → "属性面板"** 手动开启 2. 复杂提交逻辑需在 **"事件编辑"** 中编写自定义JS脚本 3. 多按钮协同需设置 **"提交优先级"** 控制执行顺序 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值