1.建立銷售訂單使用的bapi
bapi_salesorder_createfromdat2
但是 business object限制為 bus2032
使用fm:
data
lv_objtype
type
oj_name .
ls_header
-sd_doc_cat為銷售訂單型別,即型別為:vbak-vbtyp
call
function
'sd_object_type_determine'
exporting
i_document_type
= ls_header-sd_doc_cat
importing
e_business_object
= lv_objtype
exceptions
others = 1
. 如果lv_objtype = bus2032
則可以使用bapi_salesorder_createfromdat2
如果其他的業務物件則使用fm: sd_salesdocument_create建立銷售訂單
2.關於銷售訂單的增強使用
引數 extensionin
舉個例子,例如vbkd的資料 vbkd- traty
vbkd- trmtyp
大家應該可以看出來vbkd 資料中, 雖然分為vbeln posnr 但是一般只會使用vbeln欄位,posnr 為空,
此時,vbkd 資料 一般都可以在bapi引數
order_header_in 找到,但是vbkd-
traty
卻在bapi 中沒有.
所以我們需要做增強.
首先 我們要確認使用 bape_vbak 和bape_vbakx兩個結構
ls_bapiparex-
structure
= 'bape_vbak'
.ls_bape_vbak-traty
= ls_bapisdhd1_vbkd-traty.
ls_bape_vbak-vsart
= ls_bapisdhd1_vbkd-vsart.
ls_bape_vbak-trmtyp
= ls_bapisdhd1_vbkd-trmtyp.
ls_bape_vbak-sdabw
= ls_bapisdhd1_vbkd-sdabw.
ls_bapiparex-valuepart1
= ls_bape_vbak.
ls_bapiparex
to et_bapiparex.
ls_bapiparex-
structure
= 'bape_vbakx'
.ls_bape_vbakx-traty
= cns_x.
ls_bape_vbakx-vsart
= cns_x.
ls_bape_vbakx-trmtyp
= cns_x.
ls_bape_vbakx-sdabw
= cns_x.
ls_bapiparex-valuepart1
= ls_bape_vbakx.
其次:vbakkoz 需要增加traty . vbakkozx 也新增相應的控制欄位traty type bapiupdate
然後請注意,
order_header_inx-updateflag = space . !! 這點很重要.詳細邏輯請找:
se38:fv45kfak_vbak_fuellen_vbakkom
EffectiveC 一些心得
effective c 也看了好多遍了,但一直走馬觀花的看,不久就忘了,最近想重拾起來寫點心得,3.11 resource management 首先是智慧型指標 在c 11之前auto ptr是智慧型指標的主流,滿足raii的所有要求。raii的概念其實也不難 下面大段抄襲概念 raii是c 的發...
IOCP的一些心得
iocp的工作執行緒的個數一般設定為processors 2 2,這是綜合考慮了工作執行緒可能是等待 掛起 正在執行的狀態。如果你測試出更好的結果,以你的為標準。iocp的工作執行緒由系統排程和優化,不要去干預執行緒的排程,除非你自信能超越系統的排程。在遇到奇怪的問題時,可以嘗試減少iocp工作執行...
Qt 的一些心得
一.背景刷成黑色,前景色設為白色。方法一 paltette方式,經測試,該方法不會影響到其他控制項,推薦使用 qpalette bgpal palette bgpal.setcolor qpalette background,qcolor 0,0 0,255 qpalette background,...