SAP-Function_01
TH_POPUP –在特定用户屏幕上显示一个系统消息
1 . 函数WS_UPLOAD
功能﹕将TXT文件转换成SAP中的内表定义的数据表格文件
注意﹕1 函数将按参数 data_tab 的实际参数(假设为 table1) table1 定
义的各个字段的长度来依次将TXT文件间隔开﹐并依次将对应的值付给table1的
字段,table中的各个字段必须为C 型
2 TXT文件中﹐各个字段值之间不能有空格
事例: ZBC400_JOHN_26
2 . 函数TH_POPUP
功能: 向函数入口参数 client , user决定的用户发送信息(信息为入口参数 message 决
定的信息)
事例﹕ZBC_LSL_017
3. 函数 HELP_VALUES_GET_WITH_TABLE
功能﹕弹出用户所需要的信息﹐让用户选择﹐并把选种的信息付给输入框﹐相当与建立起
SEARCH HELP
注意: 1 tables 的参数 fields , valuetab 需要固定的内表结构
2 importing 的参数 select_value 有高﹐低两个值﹐即用户选种的值付给相应的
输入框的最小值﹐最大值
3 tables 的参数 fields , valuetab 的实际参数(假设为 tab_field, field_value)
tab_field, field_value 的付值,其tab_field 内表中﹐有且仅有一个字段的
selectflag = ‘X’
事例﹕ ZPP000293
4 . 函数 Z_UDARBID
功能﹕根据工单号﹐当前工作中心代号﹐读出上一工作中心代号﹐上一工作中心名称﹐
下一工作中心代号﹐下一工作中心名称
事例﹕ZPP000224_EDIT
说明﹕取得上下组别的函数更正确的函数 z_udarbid_change(可以解决组别
循环问题)
示例﹕ZBAK_ZPP000222_LSL
5 . 函数 Z_COLORANDSIZE
功能﹕根据该物料的组态﹐得出该物料的颜色尺码.
注意﹕入口参数 IP_SPRAS = ‘E’ 表示本厂款号﹐’M’表示客户款号
6 . 函数 Z_PRINTTITLE
功能 ﹕打印标准报表头
事例﹕ ZBC_LSL_777
7 . 函数 Z_PAGECHANGE
功能﹕许多记录时﹐进行翻叶操作
8 . 函数READ_TEXT
功能﹕读取内文
假设﹕FORM get_pitext USING pn LIKE thead-tdname .
REFRESH tabline.
CALL FUNCTION 'READ_TEXT'
EXPORTING
client = sy-mandt
id = '0006'
language = 'M'
object = 'VBBK'
name = pn
archive_handle = 0
IMPORTING
headers = thead
TABLES
lines = tabline
EXCEPTIONS
not_found = 2.
注意﹕ 1 tabline 必须为固定格式, headers 的实际参数必须为 thead
name 的实际参数必须为thead-tdname 形式,靠它来确定取谁的内
文
2
client , language , archive_handle 的入口值基本固定如上
3
id 为 va03à转到à表头à内文à(双击要读取的内文项)àgotoàheader
text id 既是参数 id 的值
text object 既是参数 object 的值
事例﹕ZPP000220
9 . 函数 Z_CURR_TO_CHAR .
功能﹕把 curr 型的数据转化成 char 型的数据﹐转化后的数据仍然
按 curr 型数据显示 (“###,###,###.##”)并可以在char型数
前后添加固定个特殊字符
(“**12,111,456.23”, ”**********12.45”)
假设 p_curr 为 CURR 型﹐ p_char = ‘*’
CALL FUNCTION 'Z_CURR_TO_CHAR'
EXPORTING
p_curr_i = p_curr
* p_char_i = p_char
* p_num_i = 2
* p_bore_i =
* p_nums_i = 20
IMPORTING
p_char_o = t_chr
EXCEPTION
no_p_curr_i = 1
curr_type_wrong = 2
not_bore_i = 3
OTHERS = 4.
说明﹕
p_curr : 必须输入参数﹐不能超过15个长度,被转化的参数
p_char : 可线参数﹐须添加的特殊字符
p_num_I : 可线参数﹐当参数p_nums_I为空时有效﹐要添加的特殊字符
的个数
p_bore_I: 可线参数﹐决定是在前/后添加特殊字符,bà前﹐eà后﹐默
认为 b,只能输入b/e 否则函数不转化
p_nums_I: 可线参数﹐决定转化成固定个字符长度的﹐若参数p_char_I
有值﹐则不足位时补特殊字符﹐若参数p_char_I为空时﹐
该参数无效﹐若该参数输入值﹐则参数p_num_I 无效。
p_char_o: 转化后的数据
若执行该函数 sy-subrc 之值如下﹕
1à没用输入参数p_curr_I .
2à参数p_curr_I过长﹐或p_nums_I为空﹐p_num_I为负数
3à参数p_bore_I 不是输入’e’/’b’(大小写不区分)
事例﹕ZBC_Z_CURR_TO_CHAR
8.函数 Z_COLORANDSIZE_MATNR
功能 ﹕根据物料的款号得出该物料的特性值 (如C10019-EYEDE 的对应的A,C,D 的颜色说
明﹐39.5﹐41.5 的尺码大小﹐见 TC : CT03 ) 放与一个内表中)
CALL FUNCTION 'Z_COLORANDSIZE_MATNR'
EXPORTING
p_matnr = p_matnr
p_spras = 'Z1'
TABLES
t_tab = it
EXCEPTIONS
no_matnr = 1
no_data = 2
OTHERS = 3.
说明﹕
p_matnr : 必要入口参数﹐需要取得特性的物料的款号
p_spras : 语言码﹐默认为 ‘M’
it : 为内表﹐P_matnr 的各特性值便放与次表中﹐该表结构固定﹐
字段如下﹕
name 字符型 (= ‘COLOR’ 表示颜色特性﹐= ‘SIZE’ 表示
尺码特性)
atwrt 特性码 (如 D,E,F,39.4,41.5)
atwtb 特性值说明﹐即通常所说的颜色﹐尺码
执行后 sy-subrc = 1 表示 参数 p_matnr 为空
= 2 表示 该 物料没用特性值
= 3 表示其它错误
获得结果比函数Z_COLORANDSIZE 更广
9.函数WS_DOWNLOAD
功能﹕将内表中的数据转化成特定的文件
见范例 zbc400_lsl_file_change
10. 函数WS_UPLOAD
功能﹕将指定文件中的数据转化成内表中的数据
见范例 zbc400_lsl_file_change
功能﹕对数据表中记录进行加锁﹐可以根据加锁是否成功来判断是否还
有其它客户在更新该数据表
CALL FUNCTION 'ENQUEUE_ECMERKM'
EXPORTING
* MODE_RCTMV = 'E'
mandt = sy-mandt
atnam = p_lock_atnam
* X_ATNAM = ' '
* _SCOPE = '2'
* _WAIT = ' '
* _COLLECT = ' '
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
说明﹕ mandt ﹕ 使用的数据端口
atnam ﹕ 被锁定的记录(可以确定唯一一条记录)
12 函数EQUEUE_ECMERKM
功能﹕对自己锁定的记录进行解锁,常用于对数据表中数据进行更新操作之
前﹐通常与 加锁函数联合起来用
CALL FUNCTION 'DEQUEUE_ECMERKM'
EXPORTING
* mode_rctmv = 'E'
mandt = sy-mandt
atnam = p_ulock_atnam
* X_ATNAM = ' '
* _SCOPE = '3'
* _SYNCHRON = ' '
* _COLLECT = ' '
EXCEPTIONS
OTHERS = 1.
说明﹕ mandt ﹕ 使用的数据端口
atnam ﹕ 需要解锁的记录(可以确定唯一一条记录)
13 .函数 TH_POPUT
说明﹕该函数是向 SAP 用户发送信息
CALL FUNCTION 'TH_POPUP' "向用户发送信息
EXPORTING
CLIENT = BIT-MANDT
USER = BIT-BNAME
MESSAGE = MES
MESSAGE_LEN = LEN "要发送的信息的长度可截断部分信息
CUT_BLANKS = ' '
EXCEPTIONS
USER_NOT_FOUND = 1.
参数﹕client ------客户端口
user--------用户名(接收者)
message—需要发送的信息(通常用变量储存)
message_len: 发送的信息截取的长度(若长度<mes的长度﹐则多余信
息被截掉)
其中客户端口﹐用户名常常放与一内表中﹐内表结构必须为结构uinfo
见示例 zbc400_lsl_send_message
14 .图形显示函数﹕GRAPH_2D(二维平面图), GRAPH_3D(三维立体图)
CALL FUNCTION 'GRAPH_2D'
EXPORTING
mail_allow = 'X'
titl = l_title
TABLES
data = t_graph.
参数﹕ title : 图形的标题
data: 存放数据的内表
GRAPH_3D 函数用法同 GRAPH_2D .
示例﹕ZBAK_ZPP000222_LSL
15 .函数CS_WHERE_USED_MAT(逆查BOM)
说明﹕取的物料的上层物料
CALL FUNCTION 'CS_WHERE_USED_MAT'
EXPORTING
datub = sy-datum
datuv = sy-datum
matnr = t_afru-matnr
* POSTP = ' '
* RETCODE_ONLY = ' '
* STLAN = ' '
werks = '1000'
* IMPORTING
* TOPMAT =
TABLES
wultb = ltb
equicat = equicat
kndcat = kndcat
matcat = matcat
stdcat = stdcat
tplcat = tplcat
EXCEPTIONS
call_invalid = 1
material_not_found = 2
no_where_used_rec_found = 3
no_where_used_rec_selected = 4
no_where_used_rec_valid = 5
OTHERS = 6.
参数﹕datub: 当前日期
datuv: 当前日期
matnr: 要找回上层BOM物料的物料
werks: 工厂通常取’1000’
wultb: 所有的上层BOM物料存放在该表中(该表结构固定)
equicat: 固定结构﹐一定要
kndcat : 固定结构﹐一定要
matcat: 固定结构﹐一定要
stdcat : 固定结构﹐一定要
tplcat : 固定结构﹐一定要
示例: ZBAK_ZPP000222_LSL
BOM 展开函数(顺查BOM)
16 .只展开 BOM 的函数
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
EXPORTING
capid = pm_capid “应用程序 一般为 PP01
datuv = pm_datuv “通常为系统的当前日期
mtnrv = pm_mtnrv “要展开BOM 的物料
mehrs = 'X' “ x 表示多层展开﹐space 表示只展开第一层
werks = pm_werks “ 通常为 1000
IMPORTING
topmat = selpool
dstst = dstst_flg
TABLES
stb = stb “展开的 BOM 存放在该内表
matcat = matcat “下面含有组件的物料存放在该内表
17 .展开与特性相关的特定款号的 BOM
CALL FUNCTION 'CS_BOM_EXPL_ KND_V1'
EXPORTING
capid = pm_capid “应用程序 一般为 PP01
datuv = pm_datuv “通常为系统的当前日期
mtnrv = pm_mtnrv “要展开BOM 的物料
cuobj = vbap_wa-cuobj “与特性相关的组态
mehrs = 'X' “ x 表示多层展开﹐space 表示只展开第一层
werks = pm_werks “ 通常为 1000
IMPORTING
topmat = selpool
dstst = dstst_flg
TABLES
stb = stb “展开的 BOM 存放在该内表
matcat = matcat “下面含有组件的物料存放在该内表
范例见系统报表程序 RCS12001
1 说明﹕内表 stb, matcat 结构固定, 输出参数 selpool , dstst_flg 固定,
其固定结构如下:
内表:
DATA: BEGIN OF stb OCCURS 1000.
INCLUDE STRUCTURE stpox.
DATA: END OF stb.
DATA: BEGIN OF matcat OCCURS 50.
INCLUDE STRUCTURE cscmat.
DATA: END OF matcat.
输出参数:
DATA: BEGIN OF selpool.
INCLUDE STRUCTURE cstmat.
DATA: END OF selpool.
DATA: dstst_flg LIKE csdata-xfeld.
2 说明﹕内表 stb 中的数据按第一层顺序号排序﹐如第一层组件下还有BOM,
则其BOM显示在其下面﹐并依次分层(下面BOM 也按顺序号排列)
stb 下的重要字段说明如下﹕
stufe : 在整个 BOM 中的层次
tdidx : 对应 matcat-index ﹐标志直属哪个物料下的 BOM
ojtxb : 上层物料的物料说明
ojtxp : 本身物料说明
idnrk : 组件名(即物料)
stlkn : 在各自 BOM 中的顺序号
matkl : 该物料群组
mtart : 物料类型 (成品﹐半成品﹐原料)
matcat 下的重要字段 (表matcat 存放下面还有BOM 的物料)
matnr : 物料号
index : 顺序号
函数 : SO_NEW_DOCUMENT_SEND_API1
功能﹕向SAP 用户的收信箱中发送Email(内容存与内表中)
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data = email_send
document_type = 'RAW'
put_in_outbox = 'X'
put_in_outbox = ''
TABLES
object_content = it_data
receivers = email_rece.
说明﹕document_data : 发送Email 之属性
object_content : 发送之内容
receivers : 收件者
SAP-Function_01的更多相关文章
- SAP CRM 性能小技巧
导言 本页面打算收集SAP CRM实施中可以用于避免性能问题的注意事项,重要的事项会由图标标识. 如果你有其他的技巧想要说出来,别犹豫! 性能注意事项 通用 缓存读取类访问,特别是在性能关键的地方,比 ...
- SAP CRM 树视图(TREE VIEW)
树视图可以用于表示数据的层次. 例如:SAP CRM中的组织结构数据可以表示为树视图. 在SAP CRM Web UI的术语当中,没有像表视图(table view)或者表单视图(form view) ...
- SAP CRM 显示消息/在消息中进行导航
向用户展示消息,在任何软件中都是十分重要的. 在SAP CRM WEB UI中展示消息,不是一项很难的任务,只需要创建消息并在之后调用方法来显示它 消息类和消息号: 我在SE91中创建了如下的消息类和 ...
- BPM与 SAP & Oracle EBS集成解决方案分享
一.需求分析 SAP和Oracle EBS都是作为全球顶级的的ERP产 品,得到了众多客户的青睐.然而由于系统庞大.价格昂贵以及定位不同,客户在实施过程中经常会面临以下困惑: 1.SAP如何实现&qu ...
- 【SAP业务模式】之ICS(四):组织单元的配置
SAP的ICS业务后台配置主要有以下几个配置点: 1.组织单元的配置(公司代码.销售组织.工厂.采购组织等): 2.主数据的部分: 3.订单和开票的定价过程: 4.开票输出类型: 5.公司间发票的配置 ...
- 【SAP业务模式】之ICS(三):前台操作
本片博文开始讲解SAP前台是如何实现ICS业务模式的. 一.VA01开立销售订单 我这里为了方便,创建了一个订单类型ZMIV作为公司间销售的订单类型,其实公司间销售订单跟标准的销售订单是一致的.同时, ...
- 【SAP业务模式】之ICS(一):业务详述
PS:本专题系列讲述如何在SAP系统中实现ICS的业务模式,本系列博文系原创,如要转载引用,请保持原文一致并注明出处! SAP系统自身功能非常强大,支持多种业务模式,通过前台后台的配置就可以实现多种效 ...
- SAP自定义权限对象
SAP系统自带了很多的权限对象,每一个运行画面都有非常多的权限用到.不过标准的权限对象并不一定适合于用在客户自己开发的程序里面,所以每个ABAPer都应该会自己开发一套权限对象,并引用在程序代码里面. ...
- 基于SAP的中国式数据分析浅谈
大数据时代,虽然多数企业数据的应用并不能称得上是“大数据”,但也证实了数据应用的重要性和影响力.确实,数据作为企业发展的信息沉淀,已成为企业的重要资产,如何有效利用数据是每个企业必须面临的课题. 这里 ...
- SAP CRM 客户控制器与数据绑定
当用户从视图离开时,视图将失去它的数据.解决这个问题,需要引入客户控制器(Custom Controller)(译者注:SAP CRM客户端中,不同地方的Custom Controller会翻译为“客 ...
随机推荐
- 【spring boot】application.properties官方完整文档【参考使用】
官方地址: https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ 进入搜索: Appendice ...
- DB11 TCP数据协议拆包接收主要方法
北京地标(DB11) 据接收器. /// <summary> /// DB11协议拆包器 /// </summary> public class SplictProtocol ...
- Aliyun-CentOS7.3 Init
Aliyun-CentOS7.3 Init 一.概述 查看系统版本 $ cat /etc/redhat-release $ uname -a 修改主机名 $ vi /etc/hostname $ re ...
- 2016.10.17 yaml文件里的labels和Pod、RC、Service的对应关系
在看kubernetes的例子时,出现了一个疑问. Pod.RC.Service的yaml文件里,都出现了labels,还有labelSelector.有些不太清楚,因此就这点来学习下. 接上文: ...
- 「工具」Dubbo可视化测试工具的设计和实现
「工具」Dubbo可视化测试工具的设计和实现 学习了:https://blog.csdn.net/qq355667166/article/details/78914453
- POJ-1190-生日蛋糕-DFS(深搜)-枚举-多重剪枝
题目链接: 这个题目非常好,有难度:能够好好的多做做: #include<iostream> #include<string> #include<cstdio> # ...
- hdu2222Keywords Search字典树入门……
#include<iostream> #include<cstring> using namespace std; struct node { int num; node *n ...
- 使用Hadoop自己的类操作HDFS
package hdfs; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.I ...
- Chrome 插件 CrxMouse 去除后门优化版
说明 CrxMouse 是一款挺不错的 Chrome 插件.仅仅是据说这个插件会在后台偷偷的上传用户的浏览数据,无论上传的内容是不是涉及隐私数据,总让人认为不放心,可是因为插件本身功能还是挺好用的,所 ...
- (二)关于jQuery
jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗旨是“write Less, ...