很久没有更新了,断更了快两个月了,最近准备软考考试,刚考完不知道这次能不能通过
回归正题
SAP中很多业务中都是可以上传附件或者是上传URL的路径的,上传附件长时间会占用SAP的空间,使用GOS大多数都是采用上传URL的方式挂附件,SAP也有专门的DMS模块可以上传文档附件,各种类型的文件类型都可以在SAP中打开如CAD文件,3DMAX 等,通常会额外配置单独的文档服务器,后续有需求可以单独开个专栏写一个关于DMS的资料。目前SAP中上传附件的业务物料主数据、BOM、采购订单、设备等等,很多标准中程序中都可以上传附件,但是上传附件后要实现读取信息都没有存在表中,找了很久找到了两个函数可以调用
第一个函数:BDS_GOS_CONNECTIONS_GET
用来获取GOS的连接
LOGICAL_SYSTEM这个参数是指当然系统的系统名称。
如果你不知道你当前系统的系统名称可以调用函数
BDS_GOS_CONNECTIONS_GET 获取到你当前系统的系统名称
这里面的
LOGICAL_SYSTEM = QS4CLNT300
CLASSNAME的取值表示的的取的是业务中的名称,可以在表 SRGBTBREL中找到对应的值
CLASSNAME = SRGBTBREL-TYPEID_A
OBJKEY的取值表示的是业务中的业务编号
OBJKEY = SRGBTBREL-INSTID_A
CLIEN 当前系统的客户端,登陆的几百的系统
2、SO_DOCUMENT_READ_API1:用来通过GOS连接读取具体的附件文档名称、内容等相关信息。
这里看到传参只有一个参数填写, DOCUMENT_ID
同样取的是表SRGBTBREL中的数据,
字段为:SRGBTBREL-INSTID_B
执行后再输出的 OBJECT_CONTENT可以看到URL的路径
在写代码的时候需要从6位开始取值。
3、双击打开对应的链接
根据获取到的URL的路径后,可以通过点击的方式快速的跳入链接中打开文件,如果是链接会调用本地的默认浏览器打开链接
DATA: g_weburl TYPE string.
g_weburl = ‘http://www.baidu.com’.
CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
document = g_weburl
EXCEPTIONS
OTHERS = 1.
写于:深圳大鹏
2023-11-03