This man is too old to remember everything in his brain. Right now, he needs a place to write down what he has studied.
標籤
4GL
(1)
人才發展
(10)
人物
(3)
太陽能
(4)
心理
(3)
心靈
(10)
文學
(31)
生活常識
(14)
光學
(1)
名句
(10)
即時通訊軟體
(2)
奇狐
(2)
爬蟲
(1)
音樂
(2)
產業
(5)
郭語錄
(3)
無聊
(3)
統計
(4)
新聞
(1)
經濟學
(1)
經營管理
(42)
解析度
(1)
遊戲
(5)
電學
(1)
網管
(10)
廣告
(1)
數學
(1)
機率
(1)
雜趣
(1)
證券
(4)
證券期貨
(1)
ABAP
(15)
AD
(1)
agentflow
(4)
AJAX
(1)
Android
(1)
AnyChart
(1)
Apache
(14)
BASIS
(4)
BDL
(1)
C#
(1)
Church
(1)
CIE
(1)
CO
(38)
Converter
(1)
cron
(1)
CSS
(23)
DMS
(1)
DVD
(1)
Eclipse
(1)
English
(1)
excel
(5)
Exchange
(4)
Failover
(1)
Fedora
(1)
FI
(57)
File Transfer
(1)
Firefox
(3)
FM
(2)
fourjs
(1)
Genero
(1)
gladiatus
(1)
google
(1)
Google Maps API
(2)
grep
(1)
Grub
(1)
HR
(2)
html
(23)
HTS
(8)
IE
(1)
IE 8
(1)
IIS
(1)
IMAP
(3)
Internet Explorer
(1)
java
(4)
JavaScript
(22)
jQuery
(6)
JSON
(1)
K3b
(1)
ldd
(1)
LED
(3)
Linux
(117)
Linux Mint
(4)
Load Balance
(1)
Microsoft
(2)
MIS
(2)
MM
(51)
MSSQL
(1)
MySQL
(27)
Network
(1)
NFS
(1)
Office
(1)
OpenSSL
(1)
Oracle
(126)
Outlook
(3)
PDF
(6)
Perl
(60)
PHP
(33)
PL/SQL
(1)
PL/SQL Developer
(1)
PM
(3)
Postfix
(2)
postfwd
(1)
PostgreSQL
(1)
PP
(50)
python
(5)
QM
(1)
Red Hat
(4)
Reporting Service
(28)
ruby
(11)
SAP
(234)
scp
(1)
SD
(16)
sed
(1)
Selenium
(3)
Selenium-WebDriver
(5)
shell
(5)
SQL
(4)
SQL server
(8)
sqlplus
(1)
SQuirreL SQL Client
(1)
SSH
(2)
SWOT
(3)
Symantec
(2)
T-SQL
(7)
Tera Term
(2)
tip
(1)
tiptop
(24)
Tomcat
(6)
Trouble Shooting
(1)
Tuning
(5)
Ubuntu
(37)
ufw
(1)
utf-8
(1)
VIM
(11)
Virtual Machine
(2)
VirtualBox
(1)
vnc
(3)
Web Service
(2)
wget
(1)
Windows
(19)
Windows
(1)
WM
(6)
Xvfb
(2)
youtube
(1)
yum
(2)
2012年11月19日 星期一
ZCL_IM_SHP_TAB_CUST_ITEM
客製DN new tab
METHOD IF_EX_LE_SHP_TAB_CUST_ITEM~ACTIVATE_TAB_PAGE .
DATA: CHINAORDERTYPE TYPE EKKO-CHINAORDERTYPE.
FIELD-SYMBOLS: <LS_XLIPS> TYPE LIPSVB.
CASE IS_LIKP-LFART.
WHEN 'NL' OR 'NLR'.
READ TABLE IT_XLIPS ASSIGNING <LS_XLIPS>
WITH KEY VBELN = IS_LIKP-VBELN.
CHECK SY-SUBRC EQ 0.
SELECT CHINAORDERTYPE INTO CHINAORDERTYPE FROM EKKO
WHERE EBELN EQ <LS_XLIPS>-VGBEL.
EXIT.
ENDSELECT.
IF SY-SUBRC EQ 0.
CASE CHINAORDERTYPE.
WHEN '3'.
IF IS_LIKP-LFART EQ 'NLR'.
EF_CAPTION = 'Goods Movement Data'.
EF_POSITION = 11.
EF_PROGRAM = 'SAPLZM008'.
EF_DYNPRO = '2000'.
ENDIF.
WHEN 'D'.
EF_CAPTION = 'Goods Movement Data'.
EF_POSITION = 11.
EF_PROGRAM = 'SAPLZM008'.
EF_DYNPRO = '1000'.
ENDCASE.
ENDIF.
ENDCASE.
EF_CAPTION = 'LED Specification'.
EF_POSITION = 12.
EF_PROGRAM = 'SAPLZM008'.
EF_DYNPRO = '3000'.
ENDMETHOD.
METHOD IF_EX_LE_SHP_TAB_CUST_ITEM~TRANSFER_DATA_TO_SUBSCREEN .
CASE IS_LIKP-LFART.
WHEN 'NL' OR 'NLR'.
CALL FUNCTION 'Z_SHPTAB_ITEM_GR_PUSH'
EXPORTING
IM_LIPS = IS_LIPS
IM_TRANTYPE = IF_TRTYP.
ENDCASE.
CALL FUNCTION 'Z_SHPTAB_ITEM_GR_PUSH'
EXPORTING
IM_LIPS = IS_LIPS
IM_TRANTYPE = IF_TRTYP
IM_LIKP = IS_LIKP
TABLES
IT_XLIPS = IT_XLIPS.
ENDMETHOD.
FUNCTION Z_SHPTAB_ITEM_GR_PUSH.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" REFERENCE(IM_LIPS) TYPE LIPS
*" REFERENCE(IM_TRANTYPE) TYPE TRTYP
*" REFERENCE(IM_LIKP) TYPE LIKP
*" TABLES
*" IT_XLIPS TYPE SHP_LIPS_T OPTIONAL
*"----------------------------------------------------------------------
LIPS-REFDOCNR = IM_LIPS-REFDOCNR.
LIPS-REFDOCITEM = IM_LIPS-REFDOCITEM.
TRANTYPE = IM_TRANTYPE.
MOVE-CORRESPONDING IM_LIPS TO LIPS.
MOVE-CORRESPONDING IM_LIKP TO LIKP.
IT_LIPS[] = IT_XLIPS[].
IMPORT IT_ZST046 FROM MEMORY ID 'ZST046'.
FREE MEMORY ID 'ZST046'.
*20101110 BY SM IF IT_ZST046[] IS INITIAL.
LOOP AT IT_LIPS INTO WA_LIPSVB.
*20110119 BY SM 找不到DN及ITEM 的才從ZST045讀取
READ TABLE IT_ZST046 WITH KEY POSNR = WA_LIPSVB-POSNR "因為VL01N進來時不會有DN NO.
MATNR = WA_LIPSVB-MATNR. "若該項次有異動料號時也要能判斷正確
* READ TABLE IT_ZST046 WITH KEY VBELN = WA_LIPSVB-VBELN
* POSNR = WA_LIPSVB-POSNR.
IF SY-SUBRC = 4. "找不到的才從ZST045讀取
*20110119 BY SM 若是找不到,有可能是該項次料號異動,該item在IT_ZST046 & ZST046的資料要刪除
*否則會有Double item資料的情形
DELETE IT_ZST046 WHERE POSNR = WA_LIPSVB-POSNR.
* MODIFY IT_ZST046.
DELETE FROM ZST046 WHERE VBELN = WA_LIPSVB-VBELN AND POSNR = WA_LIPSVB-POSNR.
SELECT *
INTO CORRESPONDING FIELDS OF IT_ZST046
FROM ZST045
WHERE VBELN = WA_LIPSVB-VGBEL
AND POSNR = WA_LIPSVB-VGPOS
*20101022 BY SM 增加客戶及料號判斷,才可以抓到正確的資料
AND KUNNR = IM_LIKP-KUNAG
AND MATNR = WA_LIPSVB-MATNR.
IT_ZST046-VBELN = WA_LIPSVB-VBELN.
IT_ZST046-POSNR = WA_LIPSVB-POSNR.
APPEND IT_ZST046.
ENDSELECT.
ENDIF. " END OF 找不到的才從ZST045讀取
ENDLOOP.
*20101110 ENDIF.
ENDFUNCTION.
FUNCTION Z_SHPTAB_ITEM_GR_PUSH.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" REFERENCE(IM_LIPS) TYPE LIPS
*" REFERENCE(IM_TRANTYPE) TYPE TRTYP
*" REFERENCE(IM_LIKP) TYPE LIKP
*" TABLES
*" IT_XLIPS TYPE SHP_LIPS_T OPTIONAL
*"----------------------------------------------------------------------
LIPS-REFDOCNR = IM_LIPS-REFDOCNR.
LIPS-REFDOCITEM = IM_LIPS-REFDOCITEM.
TRANTYPE = IM_TRANTYPE.
MOVE-CORRESPONDING IM_LIPS TO LIPS.
MOVE-CORRESPONDING IM_LIKP TO LIKP.
IT_LIPS[] = IT_XLIPS[].
IMPORT IT_ZST046 FROM MEMORY ID 'ZST046'.
FREE MEMORY ID 'ZST046'.
*20101110 BY SM IF IT_ZST046[] IS INITIAL.
LOOP AT IT_LIPS INTO WA_LIPSVB.
*20110119 BY SM 找不到DN及ITEM 的才從ZST045讀取
READ TABLE IT_ZST046 WITH KEY POSNR = WA_LIPSVB-POSNR "因為VL01N進來時不會有DN NO.
MATNR = WA_LIPSVB-MATNR. "若該項次有異動料號時也要能判斷正確
* READ TABLE IT_ZST046 WITH KEY VBELN = WA_LIPSVB-VBELN
* POSNR = WA_LIPSVB-POSNR.
IF SY-SUBRC = 4. "找不到的才從ZST045讀取
*20110119 BY SM 若是找不到,有可能是該項次料號異動,該item在IT_ZST046 & ZST046的資料要刪除
*否則會有Double item資料的情形
DELETE IT_ZST046 WHERE POSNR = WA_LIPSVB-POSNR.
* MODIFY IT_ZST046.
DELETE FROM ZST046 WHERE VBELN = WA_LIPSVB-VBELN AND POSNR = WA_LIPSVB-POSNR.
SELECT *
INTO CORRESPONDING FIELDS OF IT_ZST046
FROM ZST045
WHERE VBELN = WA_LIPSVB-VGBEL
AND POSNR = WA_LIPSVB-VGPOS
*20101022 BY SM 增加客戶及料號判斷,才可以抓到正確的資料
AND KUNNR = IM_LIKP-KUNAG
AND MATNR = WA_LIPSVB-MATNR.
IT_ZST046-VBELN = WA_LIPSVB-VBELN.
IT_ZST046-POSNR = WA_LIPSVB-POSNR.
APPEND IT_ZST046.
ENDSELECT.
ENDIF. " END OF 找不到的才從ZST045讀取
ENDLOOP.
*20101110 ENDIF.
ENDFUNCTION.
method if_ex_le_shp_tab_cust_item~transfer_data_from_subscreen .
* case cs_likp-lfart.
* when 'NL' or 'NLR'.
call function 'Z_SHPTAB_ITEM_GR_POP'
IMPORTING
ex_lips = cs_lips.
* endcase.
endmethod.
function z_shptab_item_gr_pop.
*"----------------------------------------------------------------------
*"*"Local interface:
*" EXPORTING
*" REFERENCE(EX_LIPS) TYPE LIPS
*"----------------------------------------------------------------------
*ex_lips-refdocnr = lips-refdocnr.
*ex_lips-refdocitem = lips-refdocitem.
free memory id 'ZST046'.
export it_zst046 to memory id 'ZST046'.
endfunction.
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言