问题标签 [scriptom]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
excel - Scriptom (groovy) 让 Excel 进程继续运行 - 我做错了吗?
我正在使用 Groovy 1.7.0 的 Scriptom 扩展,在 Windows XP 下使用 Excel 2007 自动执行一些处理。
尽管我在 excel activeX 对象上调用了退出,但这似乎总是让 Excel 进程运行。(在 Scriptom 示例文档中也有一个关于这种现象的参考。)
代码如下:
可见的 excel 窗口确实消失了,但任务管理器中留下了一个 EXCEL 进程(并且每次运行脚本都会堆积更多进程)。
没有错误消息或异常。
谁能解释为什么 Excel 过程被遗忘了,有什么方法可以防止它发生吗?
groovy - 如何在 Groovy 上导入 org.codehaus.groovy.scriptom.*?
我正在尝试运行 Groovy 应用程序来操作 STS(由 SpringSource)2.3.0 上的 Excel 文件。
我的 Groovy 版本是 1.7。
班级:
可悲的是,这就是我得到的:
我还尝试将ActiveXObject重命名为ActiveXProxy,结果相同。
我试图从包scriptom-all-assembly-1.6.0手动导入 scriptom,但我没有工作。任何想法?
干杯
java - java.lang.IncompatibleClassChangeError 在 Groovy 1.7.10 上使用 Scriptom 1.6
我尝试在 Windows 7 上使用 scriptom 1.6 连接到 excel 应用程序。但是我不断收到错误消息:
这是我的代码:
和 Maven 文件:
我只是没有想法了。我已经检查使用 jacob 64 位和 32 位 dll,将 groovy 框架更改为 1.5。有人知道如何使它工作吗?
vba - 我可以用 Groovy 的 Scriptom 完全替换 VBA 吗?
我必须将几个 Java 应用程序与一个用 C 开发的系统集成,该系统嵌入了用于自动化的 VBA。我更喜欢使用 Scriptom 而不是 VBA。
我不必与任何用 VB 开发的组件集成,只需用 C 开发的组件。我可以用 Scriptom 完全替换 VBA 吗?有什么我应该考虑的问题吗?
谢谢,
阿尔贝托
groovy - Scriptom Groovy 格式化 Excel 示例
我正在寻找一些 Groovy 为 Excel 文档执行基本格式化命令的示例。我也想知道在哪里可以找到这些命令的存储库。
你会怎么做:
插入一行
将单元格格式化为短日期、时间等。
加粗整列或整行
groovy - 如何在 PowerPoint 2010 中以编程方式复制和粘贴源格式?
我目前正在使用 Scriptom 在 Groovy 中自动化一些 PowerPoint 2010 功能——尽管这个问题可能对任何 PowerPoint 自动化方法都是通用的(即,比我正在使用的特定环境更多的是“VBA 宏”问题?)。
(Scriptom 允许您使用 Groovy 中的 ActiveX 或 COM Windows 组件。我相信它在底层使用 Jacob 库(Java COM Bridge)。底层代码类似于我在 VBA 宏或其他 Microsoft 自动化中使用的代码组件,并且基于 PowerPoint 2010 对象 API。)
我当前的代码运行良好,可以明显地打开 PowerPoint 并在其上执行一系列功能 - 除了我“复制和粘贴”幻灯片从一个文档到另一个文档的组件,“保持源格式”。
我尝试了两次尝试执行此复制和粘贴步骤,但都导致了不同的问题。我想知道是否有人对解决这些问题中的一个(或两个?)有想法:
方法1: 我使用其他各种建议的基本“复制”和“粘贴”方法,即:
也就是说,我手动复制所有格式以保持幻灯片格式。这是在 PowerPoint 2010 之前使用的方法。我实际上已经完成了这项工作,但是要复制格式,我会在“源”幻灯片包中的每张幻灯片上循环并执行上面的复制/粘贴代码。在这个循环中,以下行(单独)是有问题的:
destinationSlide.Design = sourceSlide.Design
一旦目标 SlidePack 在 SlideMaster 中有大量“设计”,这条线就会运行得非常慢。我正在复制 19 张幻灯片的源幻灯片包,每张幻灯片都有不同的 SlideMaster 设计主题(这就是我的想法)。单行代码复制第一张幻灯片大约需要 0.01 秒,但到循环中的最后一张幻灯片时,单行代码每次运行需要 20 多秒。因此,复制前五张幻灯片可能需要不到 1 秒的时间,但总共 20 张幻灯片总共需要大约 100 秒,而后面的所有幻灯片都需要越来越长的时间才能运行这一行。其余的代码竞争!
减速不是线性的,超过 20 张幻灯片会变得更糟。它与最终幻灯片上的内容无关,但似乎随着 SlideMaster“设计/主题”数量的增加,它在“sourceSlide.Design”中复制的速度呈指数增长。我意识到为每张幻灯片使用不同的“设计”对象有点浪费,但我不拥有最初的源演示文稿,而且他们经常这样来找我,每张幻灯片的设计之间只有细微的差别. 如果我删除“destinationSlide.Design”行,它所花费的时间可以从 100 多秒减少到 1 秒左右!
方法 2: 为了避免这种情况,鉴于我使用的是 PowerPoint 2010,我尝试使用以下代码,而不是:
我相信这应该提供对 PowerPoint 2010“使用源格式粘贴”功能的直接访问。但是,这行失败并带有“ null pointer exception
” ExecuteMso("PasteSourceFormatting")
。
我究竟做错了什么?有什么办法可以加快方法一中的慢线?为什么方法2根本不起作用?看起来“destinationPresentation.CommandBars”不为空,但“ExecuteMso”行抛出空指针异常。
即使有多种不同的设计/主题,是否还有其他有效“复制和粘贴”幻灯片的建议应该在合理的时间范围内为 20-100 张幻灯片工作?
提前感谢您的任何想法。
soapui - 如何使scriptom与soapUI一起使用
我想使用scriptom 访问soapUI 中的COM 对象,但我无法超越第1 步,即安装scriptom。
我已经尝试过http://www.soapui.org/forum/viewtopic.php?t=96中提到的步骤,但是当我运行一个简单的命令时(见下文)
我得到一个类未定义错误(见下文)
有没有人能够成功地使用带有soapUI的scriptom?如果是,你能帮帮我吗?
ps:我使用的是soapUI 4.5.2 Pro 和操作系统。我需要 scriptom 与两者一起工作。
hp-quality-center - 有哪些不同的 OTA dll 用于
我正在寻找连接 ALM 和soapUI 并且在寻找 OTA dll 时,我发现了许多其他库,其名称中包含 OTA 一词。
我想知道是否有人知道这些 dll 的用途?
groovy - 连接alm和soapUI
我正在尝试让soapUI 和ALM 进行通信。我终于正确设置了 scriptom,甚至获得了 HP OTA ALM 参考。不过我有几个疑问...
- 参考说
您必须在将与 ALM 平台通信的每个工作站上下载并注册 COM 库
我不可能只将 OTAClient.dll 添加到 java.library.path 或其他地方并使其工作。我问这个是因为当脚本完成时,并不是脚本的所有用户都没有管理员权限来注册 dll。虽然他们肯定会拥有 dll,因为只要有人在他们的机器上打开 ALM,就会下载它。
自从我需要创建一个程序来通过程序访问 QC 或 ALM 已经有几年了,但以前我只会创建一个 ActiveXObject(使用 vbs)然后从那里开始,不需要注册或任何东西。
- 无论出于何种原因,我的以下代码都无法正常工作,有什么建议可以解决吗?
代码:
错误:
---更新-- 自从发布这个问题以来,我尝试注册 API 参考文档中提到的 dll,但仍然得到与之前相同的错误,所以我还有两个问题:D
根据 ALM 的 API 参考 chm doc 注册 dll 的步骤
进一步的问题... 1. 我如何检查 dll 是否实际注册以及 64 位版本而不是 32 位版本?2. 使用 ALM 公开的 Rest API 来做我想做的事情会更容易吗?我希望代码能够与 ALM 和 QC9.0 一起使用。
excel - 如何在groovy中使用scriptom将数据写入excel?
我正在从soapUI 中读取属性及其值并将它们写入excel。
我能够将唯一的属性名称写入 excel
但是现在我必须将所有属性写入同一个excel。我已经创建了 excel 列名和soapUI 属性的映射,所以现在我只需要从映射中找到匹配的 excel col 名称并在该 excel 下写入属性值。
我正在使用一个函数来做这些事情。这个函数是在一个 for 循环中调用的,该循环遍历测试用例中的所有属性。我通过这个函数
该功能的相关代码如下。
代码当前正在运行。它从昨天晚上(美国东部标准时间下午 2 点)开始运行,因此即使代码有效,它也不是最佳的。我等不及要写数据了。
奇怪的是,excel 的大小不断增加,这意味着数据正在写入 excel,但我检查了 excel,它没有新数据..nothing..zilch !!
文件大小增加的证据。
我的问题是:
1. 为什么当我从 for 循环中调用函数时没有写入数据,但是当我线性调用它时却被写入?
2.在第一段代码中,excel进程在完成写入后消失,但是当函数运行时,即使它的内存利用率上升和下降,excel进程仍然存在。
我将终止 excel 进程,而不是循环,我将尝试使用该函数仅写入一到两组数据,并将相应地更新此问题。