GOS会计凭证上传附件
1、GOS介绍
GOS是一个连接文档和SAP内各种对象的工具,在SAP的一些凭证中,可以通过GOS进行附件的上传、查看和删除等功能,例如采购订单、会计凭证等。

如果没有这个按钮,可以将当前登录用户的类型设置为对话即可。

2、前台附件上传
点击创建附件,选择需要上传的附件即可

点击附件清单,即可查看上传的附件

并且可以对当前上传的附件进行删除操作

3、代码实现

源代码
"--------------------@斌将军--------------------
REPORT zgos. TYPE-POOLS: slis,abap,truxs.
INCLUDE <cntn01>. *----------------------------------------------------------------------*
* 屏幕定义
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE TEXT-002.
PARAMETERS:p_file TYPE rlgrap-filename MEMORY ID p, "上载模版路径
p_belnr TYPE bkpf-belnr OBLIGATORY,
p_gjahr TYPE bkpf-gjahr OBLIGATORY,
p_bukrs TYPE bkpf-bukrs OBLIGATORY.
SELECTION-SCREEN END OF BLOCK blk1. *----------------------------------------------------------------------*
* AT SELECTION-SCREEN on HELP-REQUEST|VALUE-REQUEST *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
"选择路径
PERFORM frm_choose_file. *----------------------------------------------------------------------*
* START-OF-SELECTION *
*----------------------------------------------------------------------*
START-OF-SELECTION.
"上传附件
PERFORM frm_upload_file. *&---------------------------------------------------------------------*
*& Form FRM_CHOOSE_FILE
*&---------------------------------------------------------------------*
* 选择文件
*----------------------------------------------------------------------*
FORM frm_choose_file.
"F4 选择文件
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_file. IF sy-subrc <> 0.
ENDIF.
ENDFORM. "FRM_CHOOSE_FILE *&---------------------------------------------------------------------*
*& Form FRM_UPLOAD_FILE
*&---------------------------------------------------------------------*
* 上传附件
*----------------------------------------------------------------------*
FORM frm_upload_file. DATA:lt_swcont TYPE TABLE OF swcont WITH HEADER LINE,
lt_binrel_attrib TYPE TABLE OF brelattr,
lt_bin TYPE TABLE OF solix. DATA:lv_filename TYPE string,
lv_long_filename TYPE dbmsgora-filename,
lv_pure_filename TYPE sdbah-actid,
lv_pure_extension TYPE sdbad-funct,
ls_obja TYPE borident,
ls_roleb TYPE borident,
ls_binrel TYPE gbinrel,
ls_attsize TYPE int4,
lo_swc_obj TYPE swc_object. "上传文件
CLEAR:lv_filename.
lv_filename = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = lv_filename
filetype = 'BIN'
IMPORTING
filelength = ls_attsize
TABLES
data_tab = lt_bin
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
IF sy-subrc <> 0.
MESSAGE '文件上传失败' TYPE 'S' DISPLAY LIKE 'E'.
STOP.
ELSE. CLEAR:lv_long_filename.
lv_long_filename = lv_filename.
"截取文件名称和后缀
CALL FUNCTION 'SPLIT_FILENAME'
EXPORTING
long_filename = lv_long_filename
IMPORTING
pure_filename = lv_pure_filename
pure_extension = lv_pure_extension. "转换文件
swc_create_object lo_swc_obj 'MESSAGE' ''.
swc_set_element lt_swcont 'NO_DIALOG' 'X'.
swc_set_element lt_swcont 'DOCUMENTTITLE' lv_pure_filename."文件名
swc_set_table lt_swcont 'Content_Hex' lt_bin."文件内容
swc_set_element lt_swcont 'DOCUMENTTYPE' lv_pure_extension."文件格式
swc_set_element lt_swcont 'DOCUMENTSIZE' ls_attsize."文件大小
swc_refresh_object lo_swc_obj.
swc_call_method lo_swc_obj 'CREATE' lt_swcont.
swc_get_object_key lo_swc_obj ls_roleb-objkey. ls_roleb-objtype = 'MESSAGE'. "
ls_obja-objtype = 'BKPF'. "
ls_obja-objkey = p_bukrs && p_belnr && p_gjahr."拼接会计公司、会计凭证、会计年度 "上传附件
CALL FUNCTION 'BINARY_RELATION_CREATE_COMMIT'
EXPORTING
obj_rolea = ls_obja
obj_roleb = ls_roleb
relationtype = 'ATTA'
IMPORTING
binrel = ls_binrel
TABLES
binrel_attrib = lt_binrel_attrib
EXCEPTIONS
no_model = 1
internal_error = 2
unknown = 3
OTHERS = 4.
IF sy-subrc EQ 0.
MESSAGE s043(sgos_msg)."已成功创建附件
ENDIF.
ENDIF. ENDFORM.
"--------------------@斌将军--------------------
定期更文,欢迎关注

- 中文(简体)
- 中文(繁体)
- 丹麦语
- 乌克兰语
- 乌尔都语
- 亚美尼亚语
- 俄语
- 保加利亚语
- 克罗地亚语
- 冰岛语
- 加泰罗尼亚语
- 匈牙利语
- 卡纳达语
- 印地语
- 印尼语
- 古吉拉特语
- 哈萨克语
- 土耳其语
- 威尔士语
- 孟加拉语
- 尼泊尔语
- 布尔语(南非荷兰语)
- 希伯来语
- 希腊语
- 库尔德语
- 德语
- 意大利语
- 拉脱维亚语
- 挪威语
- 捷克语
- 斯洛伐克语
- 斯洛文尼亚语
- 旁遮普语
- 日语
- 普什图语
- 毛利语
- 法语
- 波兰语
- 波斯语
- 泰卢固语
- 泰米尔语
- 泰语
- 海地克里奥尔语
- 爱沙尼亚语
- 瑞典语
- 立陶宛语
- 缅甸语
- 罗马尼亚语
- 老挝语
- 芬兰语
- 英语
- 荷兰语
- 萨摩亚语
- 葡萄牙语
- 西班牙语
- 越南语
- 阿塞拜疆语
- 阿姆哈拉语
- 阿尔巴尼亚语
- 阿拉伯语
- 韩语
- 马尔加什语
- 马拉地语
- 马拉雅拉姆语
- 马来语
- 马耳他语
- 高棉语
一律不翻译英语
一律不翻译i.cnblogs.com
GOS会计凭证上传附件的更多相关文章
- wordpress多站点环境设置上传附件大小
多站点环境更改上传附件大小: php.ini post_max_size = 8M upload_max_filesize = 10M 另外,后台域名管理中设置/网络设置/可以设置上传文件大小. 代码 ...
- jquery 通过ajax FormData 对象上传附件
之前上传附件都是用插件,或者用form表单体检(这个是很久以前的方式了),今天突发奇想,自己来实现附件上传,具体实现如下 html: <div> 流程图: <input id=& ...
- Discuz! X论坛上传附件到100%自动取消上传的原因及解决方案
最近接到一些站长的反馈,说论坛上传附件,到100%的时候自己取消上传了.经查是附件索引表pre_forum_attachment表的aid字段自增值出现了问题,导致程序逻辑返回的aid值实际为一个My ...
- Discuz模拟批量上传附件发帖
简介 对于很多用discuz做资源下载站来说,一个个上传附件,发帖是很繁琐的过程.如果需要批量上传附件发帖,就需要去模拟discuz 上传附件的流程. 模拟上传 discuz 附件逻辑 dz附件储存在 ...
- 修改WordPress中上传附件2M大小限制的方法/php+iis上传附件默认大小修改方法
在服务器上架设好WordPress后,使用过程中发现,上传附件大小有2M的限制 话说服务器就是本机,可以直接把文件拖到附件存储文件夹下,然后在需要附件的地方引用链接 可是这种落后的方法终究不是办法,还 ...
- Dynamic CRM 2013学习笔记(十三)附件上传 / 上传附件
上传附件可能是CRM里比较常用的一个需求了,本文将介绍如何在CRM里实现附件的上传.显示及下载.包括以下几个步骤: 附件上传的web页面 附件显示及下载的附件实体 调用上传web页面的JS文件 实体上 ...
- 怎样解决asp.net.mvc上传附件超过长度问题?
最近,在做一个上传附件功能,但是文件超过4M,就报上传的文件超过长度问题
- JQuery Uplodify上传附件(同一个页面多个uplodify控件解决方案)
功能描述:实现同一页面中多个不同附件的上传保存,且做到最大程度的减少代码修改量(最大程度的公用),为了方便实现垃圾数据和垃圾文件的处理,项目采用临时文件夹的方式:即:文件自动上传先保存到临时文件夹下, ...
- crm 4 注释与上传附件权限
文档注释权限及上传附件是与实体的”追加到”权限有关. 文档注释权限及上传附件是与核心记录中”注释”的”追加”权限有关. 追加及追加到的权限,我的理解是与本实体有关联的实体的权限,比如你引用了其它表的字 ...
- discuz 模拟批量上传附件发帖
discuz 模拟批量上传附件发帖 简介 对于很多用discuz做资源下载站来说,一个个上传附件,发帖是很繁琐的过程.如果需要批量上传附件发帖,就需要去模拟discuz 上传附件的流程. 插件地址 h ...
随机推荐
- 最佳实践-使用Github Actions来构建跨平台容器镜像
公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. 前言 最近在写K8s的相关系列文章,因为有涉及到镜像构建,发现在Mac m1的Arm架构下构建的部分镜像,没法在X86架构 ...
- 搭建Samba服务器笔记全套
Top 目录 安装 端口与服务管理 其他常用命令 配置 全局配置 共享库配置 用户名密码认证库配置 Samba 登录用户配置 防火墙配置 设定安全的上下文关系 本地系统设置访问读写权限 Pdbedit ...
- 告别繁琐,ModelArts一键解决车牌号识别难题
本文分享自华为云社区<基于ModelArts实现车辆车牌号的目标识别>,作者:屿山岛 . 前言 车辆车牌是车辆的唯一身份标识,能够提供车辆的类型.颜色.归属地等信息,对于交通管理.安全监控 ...
- 线性表应用:魔术师发牌与拉丁(Latin)方阵(循环链表)
题目描述: 有黑桃1到13,13张牌,成某种顺序,魔术师可以从1开始数 ,数1,背面朝上的13张牌第一张就是1,然后放到桌面上,然后从1开始数,把第一张放在所有牌下面,数到2,翻开,就是2,再放到桌子 ...
- AcWing 1064. 小国王
状态:f[i][j][k]表示第i行放了j个皇帝,状态为k的方案. 那么首先预处理出所有可行的方案,以及两两可以相互转移的答案. 从b状态转移到a状态就是 :\(f[i][j][a] += f[i - ...
- MySQL大表设计
存储大规模数据集需要仔细设计数据库模式和索引,以便能够高效地支持各种查询操作.在面对数亿条数据,每条数据包含数百个字段的情况下,以下是我能想到的在设计数据库的时候需要注意的内容,不足之处欢迎各位在评论 ...
- React 中常用技术
可以少去理解一些不必要的概念,而多去思考为什么会有这样的东西,它解决了什么问题,或者它的运行机制是什么? 1. React 中导出和导入 1.1 ES6 解析 ES6 的模块化的基本规则或特点: 每一 ...
- 微信小程序敏感内容检测
获取access_token access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token.开发者需要进行妥善保存.access_token的存储至少要保 ...
- 深入理解 BigBird 的块稀疏注意力
引言 基于 transformer 的模型已被证明对很多 NLP 任务都非常有用.然而,\(O(n^2)\) 的时间和内存复杂度 (其中 \(n\) 是序列长度) 使得在长序列 (\(n > 5 ...
- [CF1601C] Optimal Insertion
Optimal Insertion 题面翻译 题目大意 给定两个序列 \(a,b\),长度分别为 \(n,m(1\leq n,m\leq 10^6)\).接下来将 \(b\) 中的所有元素以任意方式插 ...