在採購訂單螢幕的左上角有個特殊的按鈕,可以通過它建立、檢視或刪除採購訂單的附件。這個按鈕是使用gos(generic object service)工具實現的,可以把gos理解為乙個連線文件和sap內各種物件的乙個工具,包括,採購訂單(me23n),會計憑證(fb03)等等都用到了gos。
下面就是me22n修改採購訂單時的gos,可以看到能為這個po建立附件,也能檢視附件清單。
下面的例子程式是用來讀取po附件文件的名稱和內容,其中用到了2個fm bds_gos_connections_get so_document_read_api1。
bds_gos_connections_get:用來獲取gos的連線12
3456
78910
1112
1314
1516
1718
1920
2122
2324
2526
2728
2930
3132
3334
3536
3738
3940
4142
4344
4546
4748
4950
5152
5354
5556
57reportytest_gos_export_attachment.
parameters:p_ebelntypeekko-ebeln.
data:lv_logical_systemlikebapibds01-log_system,
classnamelikebapibds01-classname,
gos_objkeylikeswotobjid-objkey,
lt_gos_connectionslikebdn_conoccurs1withheaderline.
data:lv_idtypesofolenti1-doc_id,
ls_doc_datatypesofolenti1,
lt_object_headertypestandard table ofsolisti1withheaderline,
lt_object_contenttypestandard table ofsolisti1withheaderline,
lt_hextypestandard table ofsolixwithheaderline.
call function'own_logical_system_get'
importing
own_logical_system=lv_logical_system
exceptions
own_lv_logical_system_not_defined=1
others=2.
.gos_objkey=p_ebeln."採購訂單
call function'bds_gos_connections_get'
exporting
logical_system=lv_logical_system
classname='bus2012'"用來標識採購訂單
objkey=gos_objkey
client=sy-mandt
tables
gos_connections=lt_gos_connections
exceptions
no_objects_found=1
internal_error=2
internal_gos_error=3
others=4.
loop atlt_gos_connections.
lv_id=lt_gos_connections-loio_id.
call function'so_document_read_api1'
exporting
document_id=lv_id
importing
document_data=ls_doc_data
tables
object_header=lt_object_header
object_content=lt_object_content
contents_hex=lt_hex
exceptions
document_id_not_exist=1
operation_no_authorization=2
x_error=3
others=4.
break-point.
endloop.
程式裡加了個斷點,執行時能看到 lt_object_content和 lt_object_header中的內容,乙個儲存了附件名字(baidusap.txt)和型別(asc),另外乙個儲存了內容。
txt檔案的內容:
me23n採購訂單中檢視到的文件清單:
以上。
採購訂單收貨
migo收貨,其中,101是收貨,102是對收貨的沖銷 進去以後第一行是灰色的,是因為被選中了,在明細那裡可以改數量,勾選確定的話可以檢查正確了可以過賬 這個是計畫協議的收貨,在ekko裡面,計畫協議的型別 bsart 是lp 計畫協議是由mrp跑出來的,採購訂單是由前台錄入的,我理解計畫協議就是由...
採購訂單 退貨
本文件屬於mm模組,描述的是採購流程的退貨訂單。當之前採購的貨物已入庫並向 商結算,由於某種原因 如發現質量問題 需退回給 商,就可以建立退貨型採購訂單。退貨型採購訂單後續操作也需要收貨,並進行發票校驗。其中收貨的移動型別是161,發票校驗採用貸方憑證 與發票類作法相反 二 操作 此示例資料與建立標...
自動建立採購訂單
在實際業務中,常常出現到貨物料沒有訂單或訂單未批准的現象,按照sap的標準流程,應該拒絕收貨。但在實際業務中,這些物料可能是緊急採購的急件,如不及時處理,將會影響生產計畫的安排。對於這種特殊情況,其實sap有很靈活的處理方式,即由收貨自動建立訂單。需要說明的是,這種操作方式並不是sap推薦的,不應在...