transport request 实现原理
通常情況下,對于單純的報(bào)表類型的簡單構(gòu)造的源代碼,我們很容易實(shí)現(xiàn)其在不同系統(tǒng)之間的共享,COPY and PASTE 然后創(chuàng)建激活就可以了,但是對于不是由純字符型構(gòu)成的開發(fā)對象,比如說一個(gè)包含了很多DYNPRO的復(fù)雜程序或者是很多嵌套結(jié)構(gòu)從而需要依次分別手動創(chuàng)建的大型程序,要實(shí)現(xiàn)從一個(gè)系統(tǒng)到另一個(gè)系統(tǒng)的共享就不是特別的直觀。
SAPLink(http://wiki.sdn.sap.com/wiki/display/ABAP/SAPlink)就是為了這個(gè)目的而開發(fā)的一個(gè)開源工具,但是在使用之前我們必須先安裝這個(gè)工具,這又造成了一些不方便,假設(shè)我們開發(fā)了一些工具,需要在不同的項(xiàng)目中使用,如果我們每次都要先安裝一個(gè)SAPLink,再用SAPLink來安裝我們的工具的話,就會顯得特別麻煩。
下面將會向大家介紹一個(gè)完全使用SAP標(biāo)準(zhǔn)功能來實(shí)現(xiàn)這個(gè)功能的具體步驟,假設(shè)的場景是我們有兩個(gè)演示系統(tǒng)RS6和CM1,我們在系統(tǒng)RS6上開發(fā)了很多ABAP對象,現(xiàn)在希望能夠?qū)S6上的ABAP對象快速的移植到CM1上面來(RS6和CM1完全不相關(guān),也沒有傳輸路徑)。
[外鏈圖片轉(zhuǎn)存失敗(img-v9Bkzo8M-1563802788174)(https://user-images.githubusercontent.com/5669954/32713250-65a65b40-c883-11e7-85e8-659263887996.png)]
2.下一步是Release這個(gè)CR (change request)RS6K907449, 這一步完成之后我們
就會看到在Application Server上兩個(gè)文件已經(jīng)生成了(T_CODE; AL11)。
第一個(gè)文件, Cofiles: /usr/sap/trans/cofiles/K907449.RS6
[外鏈圖片轉(zhuǎn)存失敗(img-Zf2uPDBb-1563802788176)(https://user-images.githubusercontent.com/5669954/32713251-65dee0e6-c883-11e7-8b83-764e0830a49a.png)]
第二個(gè)文件, Data: /usr/sap/trans/data/R907449.RS6
[外鏈圖片轉(zhuǎn)存失敗(img-X31rL8ji-1563802788176)(https://user-images.githubusercontent.com/5669954/32713252-6615fcd4-c883-11e7-9631-42b263aeefdb.png)]
3.然后我們使用CG3Y這個(gè)事務(wù)代碼將這兩個(gè)文件下載到本地,他們就會在后面的傳輸中被用到.
[外鏈圖片轉(zhuǎn)存失敗(img-hw6htkBt-1563802788177)(https://user-images.githubusercontent.com/5669954/32713253-664c6a8a-c883-11e7-967d-c1a8039c9111.png)]
*對于另外一個(gè)文件R907449.RS6執(zhí)行同樣的操作即可
[外鏈圖片轉(zhuǎn)存失敗(img-AIYvEjyJ-1563802788178)(https://user-images.githubusercontent.com/5669954/32713254-6682bc98-c883-11e7-8c76-2641f51ed0cc.png)]
*對于文件R907449.RS6, 將路徑改為‘\SAPCM01\sapmnt\trans\data\R907449.RS6′.即可
5.文件上傳之后我們需要使用事務(wù)代碼STMS將這個(gè)CR RS6K907449導(dǎo)入到Import Queue中。
[外鏈圖片轉(zhuǎn)存失敗(img-vlXMK7fD-1563802788179)(https://user-images.githubusercontent.com/5669954/32713255-66bba8b4-c883-11e7-8eb6-b4804143ddfe.png)]
在彈出的對話框中輸入這個(gè)CR:
[外鏈圖片轉(zhuǎn)存失敗(img-qRuTDLDn-1563802788179)(https://user-images.githubusercontent.com/5669954/32713257-66eef32c-c883-11e7-84dc-5e2a88059dbd.png)]
6.在CR被添加到Import Queue里面后,我們就可以正式開始導(dǎo)入了:
[外鏈圖片轉(zhuǎn)存失敗(img-Z3JQaCyr-1563802788180)(https://user-images.githubusercontent.com/5669954/32713259-672556a6-c883-11e7-8e40-d819c33a2e55.png)]
7.導(dǎo)入成功后我們雙擊這個(gè)CR就可以看到所有的ABAP對象都被移植到了新的系統(tǒng)
[外鏈圖片轉(zhuǎn)存失敗(img-bDxCLd7M-1563802788180)(https://user-images.githubusercontent.com/5669954/32713261-67b57592-c883-11e7-9e37-c4a521fc3786.png)]
可以看到采用SAP標(biāo)準(zhǔn)功能實(shí)現(xiàn)復(fù)雜ABAP對象的遷移是比較簡單的,我們不需要安裝任何的第三方工具,我們所要做的僅僅是創(chuàng)建一個(gè)CR將所有對象包含,然后Release這個(gè)CR, 得到兩個(gè)文件( KXXXXXX.SystemId & RXXXXXX.SystemId ),最后按照傳輸步驟導(dǎo)入到新系統(tǒng)即可.這種方法對于很多可重用的對象的遷移是非常有幫助的,同時(shí)由于我們使用的是SAP標(biāo)準(zhǔn)功能,所以對于幾乎所有類型的ABAP對象都有很好的支持。
tcode CG3Y, CG3Z
each time you release a TR, system creates 2 files for it.
cofile: metadata of a TR
data file: a content of TR itself
/usr/sap/trans/cofiles/K.XXX
/usr/sap/tran/data/R.XXX
BAdI for TR release
[外鏈圖片轉(zhuǎn)存失敗(img-kk35aPTE-1563802788181)(https://user-images.githubusercontent.com/5669954/33642514-46b13a6c-da75-11e7-8e2e-cf4913bafad0.png)]
總結(jié)
以上是生活随笔為你收集整理的transport request 实现原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NULL和INITIAL的区别 and
- 下一篇: 关于URL指向的icon的存储问题