Advertisement

SAP系统激活脚本工具GUIXT简介

阅读量:

SAP系统激活脚本工具GUIXT简介

    • 1. GuiXT 的主要作用
    • 2. GuiXT 的基本原理
    • 3. 常用 GuiXT 脚本命令示例
    • 4. 部署与使用
    • 5. 优势与局限
    • 6. GuiXT 常用命令速查表
    • 7.SAP 常见事务脚本示例
      • 7.1 VA01(创建销售订单)自动填充示例
      • 7.2 ME21N(创建采购订单)批量物料输入
      • 7.3MIGO(收货过账)自动化脚本
  • 8.前窗操作

    • 启动GUIXT程序
    • 配置脚本参数
    • 建立销售订单界面参数设置
    • 在自定义开发平台中添加图标切换功能

      • 9.总结

SAP 系统中的 GuiXT 是一种功能增强工具,在无需修改 SAP 标准代码的前提下实现对 SAP GUI 界面 以及业务流程的重新设计与优化。该技术由 Synactive 开发团队开发,并常见地以附加组件的形式集成到 SAP GUI 中运行。简而言之,GuiXT 可以被看作类似于 SAP 界面中的「造型师与助手」组合,在线框图设计阶段通过脚本实现对界面布局、字段设置、按钮功能以及流程操作的动态配置与自动化处理。


1. GuiXT 的主要作用

  • 界面简化
    删除不必要的字段、标签或按钮,减少用户的视觉负担。

  • 增加自定义元素
    在标准界面中增加按钮、文本、图片、URL 链接等。

  • 自动填充数据
    通过脚本在字段中自动输入默认值或根据逻辑计算值。

  • 跨屏操作
    自动执行一系列事务代码、点击和输入操作,简化业务步骤。

  • 与外部系统交互
    从 Excel、文本文件、数据库读取数据填充 SAP 界面。

  • 流程引导
    根据用户输入动态显示提示,帮助用户减少错误。


2. GuiXT 的基本原理

GuiXT 在 SAP GUI 客户端,通过**脚本文件(.txt)**对 SAP 界面做动态修改。

  • 存储位置:可以选择本地设备、网络存储位置以及SAP服务器端(便于集中管理维护)。
    • 编程语言:采用结构简洁的语义设计,并基于一组核心命令操作(包括删除指令、输入指令、按钮操作指令、文本处理指令、赋值指令以及文本复制指令等)。
    • 启动方式:在SAP GUI中配置GuiXT选项以启用该功能,并在程序运行时指定相应的脚本路径文件名和路径定位信息;该功能无需手动干预即可运行该脚本。

3. 常用 GuiXT 脚本命令示例

复制代码
    // 删除字段
    Delete F[物料号]
    
    // 输入默认值
    Set F[工厂] "1000"
    
    // 增加按钮并绑定事务
    Pushbutton (1,1) "查看库存" "/nMMBE"
    
    // 从 Excel 文件读取值填充字段
    Set V[myValue] "&cell(1,1)"
    Input F[数量] "&V[myValue]"
    
    
    txt
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-18/bzTfdEYAxFgXuDZUeivNka5CmOVG.png)
  • F[...] 代表屏幕上的字段(可通过技术信息查询字段名称)。
    • /nMMBE 代表直接执行事务代码 MMBE。

4. 部署与使用

配置激活 * 确保 SAP GUI 已配置GuiXT组件(可从SAP GUI 安装包中选择安装)。

  • 在SAP GUI的设置界面→选项→GuiXT设置页面勾选「启用GuiXT」选项。

脚本路径设置 * 指定本地或服务器脚本路径(Script1Script4 支持多路径)。

脚本文件命名规则 * 脚本文件名 = 事务代码 + 屏幕号(如 VA01.txt)。

在本地环境下运行测试后,在网络共享目录或SAP服务器路径上配置脚本文件,并确保所有客户端能够自动生成对该文件的引用


5. 优势与局限

优势

  • 不需要 ABAP 开发即可实现功能,并且能够有效避免可能出现的升级相关风险。
  • 可以快速配置并适配精简的 UI 设计以及小型功能模块的扩展性。
  • 支持批量处理自动化数据输入,并且能够降低对人工干预的需求。

局限

  • 该功能仅限于SAP GUI界面,并非可以直接应用于Fiori界面。
  • 维护脚本时需熟悉相关命令及屏幕字段的技术信息。
  • 进行过多界面修改可能会导致SAP升级过程中出现兼容性问题。

6. GuiXT 常用命令速查表

命令 作用 示例 说明
Delete 删除界面元素(字段、按钮、标签) Delete F[物料号] F[] 表示字段,P[] 表示按钮,L[] 表示标签
Set 给字段赋值(变量或常量) Set F[工厂] "1000" 支持直接写值或变量
Input 向字段输入值 Input F[数量] "50" 常用于流程自动化
Pushbutton 添加按钮并绑定功能 Pushbutton (1,1) "查看库存" "/nMMBE" (行,列) 控制按钮位置
Text 在界面上添加文字 Text (2,10) "请输入物料号" 位置用 (行,列) 表示
CopyText 将文本从一个字段复制到另一个字段 CopyText F[客户] F[收货方] 常用于复制相同数据
If / EndIf 条件判断 If V[Plant]="1000" ... EndIf 与变量配合使用
SetCursor 将光标移动到指定字段 SetCursor F[物料号] 提升输入体验
ReadText 从字段读取内容到变量 ReadText F[数量] V[qty] 用于逻辑判断或后续输入
Set V[] 设置变量值 Set V[date] "&date(YYYYMMDD)" &date 是内置函数
LoadText 从外部文件读取文本 LoadText "C:\temp\data.txt" -to V[data] 可用于批量输入
Enter 执行回车操作 Enter "/11" /11 表示回车功能码

7.SAP 常见事务脚本示例

7.1 VA01(创建销售订单)自动填充示例

复制代码
    // 删除不需要的字段
    Delete F[销售组织]
    Delete F[分销渠道]
    
    // 设置默认值
    Set F[销售组织] "1000"
    Set F[分销渠道] "10"
    Set F[产品组] "01"
    
    // 自动输入客户
    Set F[售达方] "1000001"
    
    // 添加库存查看按钮
    Pushbutton (1,10) "库存查询" "/nMMBE"
    
    // 光标定位到物料号
    SetCursor F[物料号]
    
    
    txt
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-18/L1O6pilwvakGSRjWyKnZrsVbTd5A.png)

7.2 ME21N(创建采购订单)批量物料输入

复制代码
    // 读取 Excel 值并输入
    Set V[file] "C:\PO\items.xlsx"
    
    // 供应商
    Set F[供应商] "2000001"
    Set F[采购组织] "1000"
    Set F[采购组] "001"
    
    // 循环输入物料(假设已通过外部工具转换为 GuiXT 可读取数据)
    Set V[row] "1"
    Label loop
      Set V[mat] "&cell(&V[row],1)"
      Set V[qty] "&cell(&V[row],2)"
      If V[mat]=""
    Goto endloop
      EndIf
      Input F[物料] "&V[mat]"
      Input F[数量] "&V[qty]"
      Add V[row] "1"
    Goto loop
    Label endloop
    
    
    txt
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-18/1ZUqGKdXiEFv9YecyPgRmtxMa4lL.png)

7.3MIGO(收货过账)自动化脚本

复制代码
    // 选择事务类型
    Set F[事务] "收货"
    
    // 输入采购订单号
    Set F[采购订单] "4500001234"
    
    // 自动填充工厂和库存地点
    Set F[工厂] "1000"
    Set F[库存地点] "0001"
    
    // 回车进入明细
    Enter "/11"
    
    // 自动勾选全部物料
    Pushbutton (15,5) "全选" "/n"
    
    // 光标移动到过账按钮
    SetCursor P[过账]
    
    
    txt
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-18/Ybum6CW5UV3EDs1ryNKTL0ekg29P.png)

8.前台系统操作

8.1激活GUIXT

在SAP界面中点击激活guiXT ,如下图中所示

在这里插入图片描述

激活guiXT后,可以看到前面多了一个标识,说明GuiXT已经被激活

在这里插入图片描述

同时SAP中会弹出一个页面,如下图中所示

在这里插入图片描述

如果GuiXT窗口未显示,则表明GuiXT已设为处于'隐藏'模式,默认适用于普通用户;但针对脚本开发者则应采用可见的GuiXT视窗。在此情形下,请确保在Windows控制台运行以下命令:guixt visible

在这里插入图片描述

8.2、脚本设置

点击页面中的profile

在这里插入图片描述

如下图中进行勾选

在这里插入图片描述

默认状态下,默认情况下

在这里插入图片描述

8.3 创建销售订单窗口设置

执行事务代码VA01
观察GUIXT的界面

在这里插入图片描述

在Script中如下图中可以看到脚本存在的路径,

在这里插入图片描述

当对应路径中不存在的时候,则手工进行创建对应的文件路径

在这里插入图片描述

设置脚本路径—点击profile

在这里插入图片描述

在Scripts1 栏位中设置这个这个GuiXT的存放路径。

在这里插入图片描述

然后点击Script进行脚本的编写

在这里插入图片描述

页面会弹出一个TXT的编辑框,然后可以编写脚本代码

在这里插入图片描述

代码解释:

Radiobutton (0,0)
Radiobutton 代表一个单选按钮。(0,0)表示该按钮位于指定位置,并可通过拖放进行调整

“ZKB1/9999/10/00/ZZZZ/ZZZ”
表示:这个栏位的描述,可以自定义

F 产品组合(型号:XX-XXX-XXXX-XXXXX) P 分销区域(区域代码:XX-XXX-XXXX-XXXXX) D 订单类型(订单分类:XX-XXX-XXXX-XXXXX) S 供应方式(供应商编码:XX-XXX-XXXX-XXXXX) C 运营中心(管理单元代码:XX-XXX-XXXX-XXXXX) **Q 生产批次(生产日期代码:XX-XXX-XXXX-XXXXX)

F[产品组]表示必输,后面的"00"则表示必须是内容。

在这里插入图片描述

Pushbutton (12,01) “批量查看销售订单” “/OZSDR001”

脚本解释:
Pushbutton (12,01) 表示是一个按钮, (12,01)表示按钮的位置

“批量查看销售订单” ,表示这个按钮的描述

“/OZSDR001”:表示这个按钮跳转到哪个事务代码

在这里插入图片描述

Pushbutton (toolbar) “@13@ZSDR001” “/O ZSDR001”

Pushbutton (toolbar)表示:添加按钮并绑定功能

“@13@ZSDR001” 表示:@13@表示使用什么图标样式,ZSDR001表示这个图标的描述

“/O ZSDR001” 表示:跳转到的事务代码

在写完脚本后需要注意的是,TXT文本需要保存为ANSI的格式。

在这里插入图片描述
复制代码
    Radiobutton  (0,0) "ZKB1/9999/10/00/ZZZZ/ZZZ"  F[产品组] "00" F[分销渠道] "10" F[订单类型] "ZKB1"  F[销售办事处]  "ZZZZ"  F[销售组] "ZZZ"  F[销售组织] "9999"
    
    
    Radiobutton  (0,25) "ZKB1/1000/10/00/S016/S01"  F[产品组] "00" F[分销渠道] "10" F[订单类型] "ZKB1"  F[销售办事处]  "S016"  F[销售组] "S01"  F[销售组织] "1000"
    
    Pushbutton  (12,01)  "批量查看销售订单"   "/OZSDR001"
    Pushbutton  (12,20)  "查看库存"  "/OMMBE"
    Pushbutton  (12,34)  "查看物料需求"      "/OMD04"
    
    Pushbutton  (toolbar) "@13@ZSDR001" "/O ZSDR001"
    
    Pushbutton  (toolbar) "@13@VA05" "/O va05"
    
    
    java
    
    
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-18/WCc3l6DzNo1seZSxrkiJ4jXImfnK.png)

以下是这些脚本在页面中的展现

在这里插入图片描述

8.4 自定义开发程序中新增图标跳转

在自定义开发程序中,在GUI状态中我们需要添加图标,并切换至目标页面;同样地,在GUIXT功能模块中也可以实现这一功能。

第一步是运行必要的事务代码,在新增页面里查看当前状态。 在批量检查BOM的过程中添加一个MMBE切换按钮。

在这里插入图片描述

查看guixt目录下的TXT文件列表;每当运行不同程序时,系统会自动创建相应的TXT文件来保存结果;接着,请点击Script按钮开始编写脚本代码。

复制代码
    Pushbutton  (toolbar) "@13@查看物料库存" "/O MMBE "
    
    Pushbutton  (toolbar) "@11@批量查看物料库存" "/O MM52 "
    
    
    java
在这里插入图片描述

编写完成后点击保存,然后退出页面重新执行。

在这里插入图片描述

9.总结

1、针对每个界面和事务代码的组合, Guixt会创建相应的TXT文件
2、脚本代码对测试系统、开发系统以及正式系统的应用均是即时生效的
3、当更换电脑时, 需要复制并移动相关脚本文档
4、同一台SAP客户端机器上, Guixt的应用可以在多台服务器之间运行, 同时应用层位于图形界面之上, 在单个SAP客户端机器上运行


本文阐述了 SAP 的 [SAP 系统激活脚本工具 GUIXT 简介] 的基本概念及其应用方法。旨在帮助您在实际操作中更好地运用 SAP 系统,并提升工作效率与管理能力。

感谢您的光临!希望本文能为您提供有价值的内容,并期待未来与您共同探讨 SAP 的更多功能与应用。

点击这里查看更多SAP相关内容

http://985.so/wpqrm

​原创不易,如果本文对您有所帮助,请点赞!!!
文章中如有错误。敬请指正!

搜索公众号:SAP资料文库
微信号:SPRO_PP
时间:2025-08-12

在这里插入图片描述
嵌入了一个用于编写HTML、CSS和JavaScript小程序的代码块,并且允许播放。

全部评论 (0)

还没有任何评论哟~