金蝶EAS DEP脚本使用与解析
需积分: 46 158 浏览量
更新于2024-07-07
1
收藏 720KB DOCX 举报
"金蝶EAS DEP脚本汇总文档主要介绍了如何在金蝶EAS系统中使用DEP脚本来实现特定功能。DEP脚本是一种基于JavaScript语法的扩展脚本,它允许开发者在不进行额外部署的情况下进行系统维护和逻辑编程。尽管DEP脚本存在缺乏代码提示和需要对Java代码有一定了解的缺点,但它因其简洁和易用性而被广泛采用。"
在金蝶EAS DEP脚本中,主要的概念包括:
1. **免部署**:DEP脚本的一大优势是无需额外部署,这意味着开发完成后,脚本可以直接在系统中运行,减少了部署过程的复杂性和时间成本。
2. **易维护**:由于DEP脚本基于JavaScript,对于熟悉这门语言的开发者来说,理解和修改脚本相对容易,从而提高了系统的可维护性。
3. **逻辑代码与Java相似**:虽然DEP脚本是基于JavaScript,但在金蝶EAS环境中,它可以调用JVM中的类和方法,使得逻辑处理与Java代码有类似的结构,这对于有Java背景的开发者来说是个福音。
4. **缺点**:DEP脚本的不足之处在于缺少代码提示工具,这可能会影响开发效率;此外,若涉及到更底层的逻辑,可能仍然需要依赖Java代码来实现。
DEP脚本的运行环境是基于Rhino的JavaScript引擎,它可以在运行时解释执行脚本。在金蝶EAS系统中,可以使用DEP脚本来操作和控制业务流程,如以下示例所示:
```javascript
// 客户端设置编码规则脚本
// 定义引入变量
vareasNames = JavaImporter();
// 引入指定包
easNames.importPackage(Packages.com.kingdee.eas.base.codingrule);
// 使用引入作用域
with (easNames) {
// 从上下文中获取编辑界面编辑对象
var editData = pluginCtx.getDataObject();
// 取得F7控件
var bizOrgUnit = pluginCtx.getKDBizPromptBox("prmtCompanyOrgUnit").getValue();
// 远程方法调用获取编码
var number = CodingRuleManagerFactory.getRemoteInstance().getNumber(editData, bizOrgUnit.getId());
// 设置TextField编码
pluginCtx.getKDTextField("txtNumber").setText(number);
}
```
在上述代码中,`JavaImporter()` 和 `importPackage()` 是用来导入Java包的,使得脚本可以调用这些包中的类和方法。`with` 语句用于创建一个作用域,使得在这个作用域内可以直接调用引入的包中的方法,而不需要指定完整的类路径。
如果没有使用`with`语句,那么每次调用方法时都需要指定完整的类路径,例如 `com.kingdee.eas.base.codingrule.CodingRuleManagerFactory.getRemoteInstance()`。这种情况下,如果需要引入多个包,可以多次调用 `importPackage()` 来引入其他包。
总结来说,金蝶EAS DEP脚本是一种强大的工具,它简化了系统扩展和维护的过程,使得开发者可以通过JavaScript来实现业务逻辑,同时保持与Java的紧密集成,尽管存在一些局限性,但其灵活性和实用性使其成为金蝶EAS系统开发的重要组成部分。
2021-12-16 上传
2021-12-16 上传
2022-01-27 上传
2022-01-24 上传
2023-02-04 上传
weixin_43260700
- 粉丝: 5
- 资源: 5
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南