问题标签 [sap-gui]
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.
c# - 如何在 C# 中将当前会话附加到 SAP GUI
我正在尝试自动化 SAP GUI。我使用了 SAPFEWSELib 库,我可以使用它启动我的 SAP GUI 并进行连接。现在,我创建了一个桌面快捷方式进程(使用 SAP 中的内置实用程序)。因此,我无需每次都启动和连接,而是可以直接转到特定屏幕并从那里自动执行下一步。为了实现这一点,我需要——
- 触发桌面快捷方式以启动 SAP
- 附加当前 SAP 会话并使用 SAPFEWSELib 库在 C# 中执行自动化
我试过了 -var session = SapGuiApp.ActiveSession;
但我得到的会话为空。有没有其他方法可以将 SAP 会话附加到 SapGuiApp?
Note-SapGuiApp
是一种GuiApplication
可使用 SAPFEWSELib 访问的对象。
参考-
vba - IW29/39 事务中单个条目的 ALV 列表查看器
我正在从 VBA 调用 SAP 事务以自动生成报告。当我使用 IW39 之类的事务时,我的输出显示是使用 SAP ALV 列表查看器显示的列表。导出到 VBA 非常有用,我有一个自动执行的功能。
但有时我在某些特定情况下会遇到问题:当我的命中列表仅包含一行时。SAP 将 ALV 替换为对使用 VBA 导出不是很有用的东西。
我的问题是:当命中列表中有单行时,有没有办法将显示模式更改为“ALV-always”?
一条线索:当我启动 IW39 tcode 并且只有一行时,结果显示为 IW33 tcode。所以当我回到事务时,我会留在 IW33 查询中。
vba - 查找列表末尾的算法(SAP GUI)
我正在编写一个脚本,将元素添加到 SAP GUI 屏幕中的列表中。现在,似乎在使用 SAP GUI 时,除非它实际上在屏幕上,否则什么都“不存在”,因此第一步涉及查找列表的末尾。
我通过滚动每个元素并检查它是否为空白来完成此操作。
但是,对于非常大的现有列表,这需要很长时间。我正在想办法更快地找到结局。我知道的一些事实/限制:
- 我假设我不知道列表长度。
- 我不能指挥
verticalScrollbar.position
太远超出
列表的末尾。例如。如果列表包含 62 个元素,.verticalScrollbar.Position = 100
则不起作用。 - 在上述示例中,SAP 不会引发错误。什么都没有发生,然后执行下一行代码。
- 所有对元素的引用都与它们在屏幕上的位置有关。例如,如果我向下滚动 5 个位置,整个列表的第 6 个元素实际上将索引为 1。
- 另一方面
verticalScrollbar.Position
是绝对的
我正在考虑执行以下操作(在非常伪代码中):
...依此类推,直到我迭代i
一个。
是否有一种普遍接受的更好的方式来进行这种“搜索”?任何输入表示赞赏。谢谢
vba - VBA 脚本可以读取 SAP GUI 错误吗?
我不抱希望,但我想知道是否有办法让 vba 脚本识别 SAP GUI 引发的错误。例如,如果一个事务被另一个用户锁定。
目前,如果弹出此错误,脚本不会考虑它,并继续到下一行(通常会出错,因为我按下的任何按钮都不存在)。如果可能的话,我想在下一行之前确定该错误,以便用户可以修复它。
在某些情况下,如果完成了让我的脚本承担错误的变通办法,再加上一个on error resume next
但是这让我畏缩,并且不适用于所有情况。
例子:
为清楚起见,我试图达到以下目的:
abap - WebDynpro ABAP 应用程序开发问题
我正在尝试开发 WebDynpro Abap,但遇到以下错误,
谁能告诉我如何解决这个问题,或者我缺少任何授权。
谢谢,伊丽莎
excel - 检查 SAP 中的 xls 文件是否存在
我必须从 SAP 中自动导出几个 xls 文件以创建特定报告。到目前为止,我使用 SAP GUI 脚本输入事务代码和 DIR 编号(每个文档都是唯一的)。当我只下载一个 xls 文件时,这非常有效。不过,我必须下载多个 xls。
正如您在图像中看到的,xls 文件位于第二个位置,这意味着使用我的脚本它只导出位于第二个位置的所有文件。例如,如果第二个位置有一个 PDF,它会自动导出 PDF,然后我无法创建报告。
最后两行是重要的,因为在这里您选择要导出的第二个“节点”。在这里我需要检查是否有 xls 文件。
excel - SAP VBA Popup Close
I am doing an extraction in SAP using Excel. But the files are to large, and constantly I get a popup message saying: "EP0:Maximum Hold Time Exceeed". I deal with popups inside SAP very easily, but I don't know how to handle with this type of popup (I think it's generated by the backend, it looks like a Windows popup and the On Error statement is not triggered when it happens). Any idea of how handle this will be very helpfull (:
excel - 通过 Excel VBA 在 Citrix 上连接 SAP
我的机器上没有直接安装 SAP,并通过下面的链接使用 SAP 窗口。
https://nedc-ctx.applications.services.axa-tech.intraxa/Citrix/AccessPlatform/auth/loggedout.aspx
我知道 SAP GUI 的 Record and Run 功能并且正在工作。我仅在培训版本中具有此访问权限。在生产中,我无法使用运行和记录选项。
如何从 Excel VBA 打开 SAP 窗口、连接和加载数据?
在下面的代码中,我得到一个错误。
我发现我无法在我的机器上添加参考文件“sapfewse.ocx”。
如果我们通过上面提供的链接访问 SAP,是否可以通过 Excel VBA 连接 SAP。单击上面的链接后,新的弹出窗口将与 SAP with window 连接。SAP 正在通过 Citrix 进行连接。
代码(取自此帮助链接):
vbscript - SAP GUIXT - 传递变量并运行脚本
我想在 SAP 中创建一个“输入字段”,它使用 vb 脚本中传递的值。举一个具体的例子,我想打开FBL5N
,将发票传递到一个字段中,然后在 中查看发票VF03
。执行此操作的脚本已准备好,适用于发票的硬编码值或通过 VBA。
这是GUI脚本部分
现在,我不知道如何处理 inputscript 部分。在这件事上我希望得到你的帮助。这是我的第一次尝试:
感谢您的帮助,如果您需要任何精度,请告诉我。以下是我获得上述代码的灵感来源: http ://www.synactive.com/tutor_e/lessonia03.html http://www.synactive.com/docu_e/docia_process2.html
***如果有可能有一个版本可以读取剪贴板中的值,那就更好了。
c# - 解决 80040154 类未注册执行需要做什么
只有当我尝试在目标机器上运行项目时,我才会遇到以下错误
[错误] ExecuteTestScriptsOnSAP_GUI:检索具有 CLSID {B90F32AD-859E-4EDD-BFAE-C9216849520C} 的组件的 COM 类工厂失败,原因是以下错误:80040154 未注册类(HRESULT 异常:0x8004015 4 (REGDB_E_CLASSNOTREG))。
它似乎在我的开发机器上运行良好。
我正在尝试SAP gui 7.40
从我的项目启动,它有一个参考Interop.SAPFEWSELib.dll
上面的.dll
文件是在sapfewse.ocx
第一次作为依赖项添加到项目时构建的。
谁能指导我如何解决这个问题?