创建文档[BAPI_DOCUMENT_CREATE2]

bapi ‘BAPI_DOCUMENT_CREATE2‘可以模拟前台的tcode CV01N创建文档。

CV01N 前台操作,简单介绍如下:

输入document,type,part 和version相关内容,回车进入下一屏幕,

输入描述,设置status和authorization group,然后点击保存即可。

下面是模拟上述操作的例子代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

REPORT ztest_cv01n.

DATA: lwa_documentdata TYPE bapi_doc_draw2.

data: lwa_return TYPE bapiret2.

DATA: lit_cl_allocs  TYPE tt_dms_bapi_class_allocation,

lwa_cl_allocs LIKE LINE OF lit_cl_allocs.

DATA:l_documenttype    LIKE  bapi_doc_aux-doctype,    "document type

l_documentnumber  LIKE  bapi_doc_aux-docnumber,  "document no.

l_documentpart    LIKE  bapi_doc_aux-docpart,    "document part

l_documentversion LIKE  bapi_doc_aux-docversion. "version

DATA: lit_descriptions TYPE TABLE OF bapi_doc_drat,   "Description

lwa_descriptions TYPE bapi_doc_drat.            "Description

lwa_documentdata-documenttype   = ‘TS1‘.

lwa_documentdata-documentnumber = ‘596096009‘.

CALL FUNCTION ‘CONVERSION_EXIT_ALPHA_INPUT‘

EXPORTING

input  = lwa_documentdata-documentnumber

IMPORTING

output = lwa_documentdata-documentnumber.

lwa_documentdata-documentversion = ‘00‘.

lwa_documentdata-documentpart    = ‘000‘.

lwa_documentdata-statusintern    = ‘SP‘.  "Lock

lwa_documentdata-authoritygroup  = ‘SHW‘. "authority group

*lwa_cl_allocs-classtype = ‘017‘.

*lwa_cl_allocs-classname = ‘SCK_DMS‘.

*APPEND lwa_cl_allocs TO lit_cl_allocs.

CLEAR lwa_descriptions.

CALL FUNCTION ‘CONVERSION_EXIT_ISOLA_OUTPUT‘

EXPORTING

input  = sy-langu

IMPORTING

output = lwa_descriptions-language_iso.

lwa_descriptions-description = ‘Stone test‘.

APPEND lwa_descriptions TO lit_descriptions.

CALL FUNCTION ‘BAPI_DOCUMENT_CREATE2‘

EXPORTING

documentdata         = lwa_documentdata

IMPORTING

documenttype         = l_documenttype

documentnumber       = l_documentnumber

documentpart         = l_documentpart

documentversion      = l_documentversion

return               = lwa_return

TABLES

*   characteristicvalues = lt_char_vals

classallocations     = lit_cl_allocs

documentdescriptions = lit_descriptions

*   objectlinks          = lt_obj_links

*   DOCUMENTSTRUCTURE    =

*   DOCUMENTFILES        =

*   LONGTEXTS            =

*   COMPONENTS           =

.

IF lwa_return-type = ‘S‘ OR

lwa_return-type = ‘W‘ OR

lwa_return-type IS INITIAL.

CALL FUNCTION ‘BAPI_TRANSACTION_COMMIT‘

EXPORTING

wait = ‘X‘.

ELSE.

CALL FUNCTION ‘BAPI_TRANSACTION_ROLLBACK‘

* IMPORTING

*   RETURN        =

.

以上。

原文地址:https://www.cnblogs.com/lvdong18847870057/p/12533525.html

时间: 2024-08-30 05:56:10

创建文档[BAPI_DOCUMENT_CREATE2]的相关文章

创建文档和自定义的qt assistant

利用qt制作帮助文档 1.         创建文档即是一些html文件,这里可以使用qt提供的工具像是qdoc 和Doxygen生成帮助的html文档. 2.         组织文档结构用于qt assistant a)         创建qt help project(.qhp) i.              定义命名空间 命名空间必须是唯一的,除此之外还要设置虚拟文件夹,作为文档集合的通用文件夹.这里每个每个文档集合对应一个命名空间,而这些文档集合的相互共享是通过虚拟文件夹来实现的.

跟我学SharePoint 2013视频培训课程——怎样创建文档库并上传文档(8)

课程简介 第8天,怎样在SharePoint 2013怎样创建文档库并上传文档. 视频 SharePoint 2013 交流群 41032413

为Github项目创建文档

有两种编写方式: In reStructuredText In Markdown In reStructuredText  工具:  pip install sphinx sphinx-autobuild 克隆你的仓库到本地:  git clone https://github.com/yourusername/yourrepository.git 在仓库根目录内创建文档: mkdir docs & cd docs sphinx-quickstart //按照提示一路下去,会生成index.rs

js性能优化篇创建文档碎片

大家都知道,大量的操作DOM会引起页面的渲染变慢,文档碎片是指一个临时的文档,把创建的dom放到文档里面,不要每次操作都操作DOM,提高页面的效率.下面我们就来看一下如何运用创建文档碎片. 首先,我们了解下向页面创建dom发生了什么. for(var i=0;i<5000;i++){ var oSpan=document.createElement('span') document.body.appendChild(oSpan) } 如果我们向以上代码一样,向页面插入很多dom元素,这种渲染的过

mfc创建文档视图过程

一.如何创建文档视图界面: 创建新的文档视图界面,只需要调用CDocTemplate::OpenDocumentFile(strpath)即可.(strpath为要打开的文档路径,如果是NULL,则生成新的文档). 二.上面这个函数为何能够生成文档视图对象? 因为 1.它调用了CDocTemplate::CreateNewDocument()函数生成了CDocument对象: 2.它调用了CDocTemplate::CreateNewFrame()函数生成了CFrameWnd对象: 3.在生成文

DocumentFragment(创建文档碎片节点)

使用DocumentFragment进行缓存操作,引发一次回流和重绘: 在更新少量节点的时候可以直接向document.body节点中添加,但是当要向document中添加大量数据是,如果直接添加这些新节点,这个过程非常缓慢,因为每添加一个节点都会调用父节点的appendChild()方法,为了解决这个问题,可以创建一个文档碎片,把所有的新节点附加其上,然后把文档碎片一次性添加到document中. 假如想创建十个段落,使用常规的方式可能会写出这样的代码: 1 2 3 4 5 6 for(var

Avalondock 第二步 创建文档面板

上一篇已经介绍了如何创建一个停靠面板,本章主要介绍,文档面板的定义.文档面板和可停靠面板很相似 建立文档面板LayoutDocumentPane LayoutDocumentPane:文档窗格类,与LayoutAnchorablePane类似,也是可停靠控件的容器,文档窗格类中可以放置可停靠控件LayoutAnchorable,也可以放置文档控件LayoutDocument,LayoutDocunemtPane会自动占满窗体的窗体布局中的剩余空间. 代码如下所示: <avalondock:Doc

HTML链接:创建文档内链接

文档内链接作用:在同一个网页界面实现不同位置的跳转 实现效果:当我浏览一个页面滚动到不同位置需要返回某个特定的位置时可以一键返回 如下:当我下滑到文档二处需要快速返回到文档一处时,只要点击文档二就会自动返回到文档一处的位置 实现代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>hhh</title>

【笔记】科普createDocumentFragment() 创建文档碎片节点

上一篇文章说到了动态添加文本节点的方法那如果我们要添加多个文本节点或者元素节点呢? 大家可能会想到用循环然后逐个逐个添加 但是别忘了js 还提供了创建一个文本碎片的方法 createDocumentFragment(); 这个方法怎么用呢? 其实这个方法就相当于一个收集器 把所有要添加的元素收集起来再打包添加到body里面 思路就是这样以下分享一下代码 <!DOCTYPE html> <html lang="en"> <head> <meta