自己做的ALV例子(DN List)

上一篇 / 下一篇  2008-06-28 17:26:05 / 个人分类:ABAP ALV

  SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S31 { font-style. italic; color: #808080; } .L1S32 { color: #3399FF; } .L1S33 { color: #4DA619; } .L1S52 { color: #0000FF; } ITPUB个人空间+{Wa2E1V v
*&---------------------------------------------------------------------*ITPUB个人空间*v*u;w7t+R'Wzbc.N
*& Report  ZPPR013A                                                    *ITPUB个人空间/dC/j:?,\ O]-O
*&                                                                     *
r6\E.A!EW(Nr(Du`S0*&---------------------------------------------------------------------*
-kw&Y?^/e6w0*&                                                                     *
'@w#h1KQQ1p0*&                                                                     *ITPUB个人空间/aUVz Q e1S
*&---------------------------------------------------------------------*
9V(cb v St]S.m0
_3k.wn(^L0REPORT ZPPR013A  NO STANDARD PAGE HEADING..ITPUB个人空间Qr8T K$ryL

Mc@OE~5|w[-|0TABLES: LIKP,   "SD Document: Delivery Header DataITPUB个人空间)aPomz:Jnb
        LIPS,   "SD document: Delivery: Item data
D!P gZ(C EyN kV0        VBAK,ITPUB个人空间,Yd&Al)y;k${
        VBAP,
CN J,e%iW0        VBKD,ITPUB个人空间9["Ze:i#c l
        VBUK,   "Sales Document: Header Status and Administrative Data
/fWs-I'|;`Em+NG0        T001W,ITPUB个人空间6~e|3A;}5x/E
        KONH,ITPUB个人空间_ CCP vqL:N;B;D$^d
        KONP,ITPUB个人空间_ FxjTO|!s
        KONV.
uYnS:Sk^I^ e)_OO0ITPUB个人空间%w g2|!\%Wk.eJSI
DATABEGIN OF ST_DN OCCURS 0,
B#ZN M7jBmQ0        VBELN LIKE LIKP-VBELN,ITPUB个人空间+Iq3L/K5E$w
        LFDAT LIKE LIKP-LFDAT,ITPUB个人空间 Y0]?1B@;o*B] X
        DNMON(6TYPE C,
j/_%_6kH G?0        KUNNR LIKE LIKP-KUNNR,ITPUB个人空间 z PMd/|%q'x kO
        KUNAG LIKE LIKP-KUNAG,
f\4Og6p?a;`0        WERKS LIKE LIPS-WERKS,
d3@^,t*q2US9syz0        LGORT LIKE LIPS-LGORT,
pCN;|5z!g3E;hD0        POSNR LIKE LIPS-POSNR,
3M[(FiYaR:o-P0        MATNR LIKE LIPS-MATNR,
B#t@\3^6Ty(bcTE0        MAKTX LIKE MAKT-MAKTX,
|"P+v.FZ/rf)[0        VFLAG(1TYPE C,ITPUB个人空间]~PVG
        LFIMG LIKE LIPS-LFIMG,
y#|/I9R,GWo$|0        VRKME LIKE LIPS-VRKME,
$Nd?M4JL;P7B8B0        VFACT TYPE P DECIMALS 2,ITPUB个人空间'S1j}7Ln
        BUQTY LIKE LIPS-LFIMG,ITPUB个人空间iD'ZC(^^ K;gE,Z.H
        MEINS LIKE LIPS-MEINS,ITPUB个人空间:ZQ(\1T2dQ!Tx
        CHARG LIKE LIPS-CHARG,ITPUB个人空间1[ wZ(U\'{T'q
        NTGEW LIKE LIPS-NTGEW,
A%jHNK V+@;v:G0        BRGEW LIKE LIPS-BRGEW,ITPUB个人空间?0H x{(bg#d
        VGBEL LIKE LIPS-VGBEL,ITPUB个人空间e#T5lhE%W`&? s
        VGPOS LIKE LIPS-VGPOS,ITPUB个人空间7k.lz!n s ]
        NTPRI TYPE P DECIMALS 4,ITPUB个人空间 d]T0z nd
        WAERK LIKE VBAP-WAERK,ITPUB个人空间)N:WP"?-XN
        NTAMT LIKE VBAP-NETWR,ITPUB个人空间0Vc|:F3?r*^
        NTPR2 TYPE P DECIMALS 4"SO PRICE USD
4v|\*J"M-]0v:Z0        NTAM2 LIKE VBAP-NETWR,   "SO AMOUNT USD
]0iA}?I9Q:l5KSu0        NTAM3 LIKE VBAP-NETWR,   "SHIP AMOUNT USD
1~f.cVV@+`"?8c{0        BSTKD LIKE VBKD-BSTKD,ITPUB个人空间i md$\:U]
        WBSTK LIKE VBUK-WBSTK,ITPUB个人空间Q@ PC"R'U'w
        FKSTK LIKE VBUK-FKSTK,ITPUB个人空间^ G \8J3I IR
        INVNO LIKE VBRP-VBELN,
/}d$}Lc0        INMON(6TYPE C,
+U_.bK `+E0        FKDAT LIKE VBRK-FKDAT,
kH^fT+h"NxG0        NETWR LIKE VBRP-NETWR,ITPUB个人空间"U R$iY3n~2w
      END OF ST_DN.
0j"U4B G Cun _uP0DATA IT_DN LIKE ST_DN OCCURS 0 WITH HEADER LINE.
'@7{3tKv1Sy0
Lz U+ota$f@0type-pools: slis.ITPUB个人空间*[4ugJ _n~8F](D#Nv
data: i_fieldcat  type slis_t_fieldcat_alv,ITPUB个人空间$h9v#M/B Q1W{
      l_fieldcat  type slis_fieldcat_alv,ITPUB个人空间VQ^)yp3xdq
      xevents     type slis_t_event,ITPUB个人空间a%j&K8UE1Qu$K1N
      is_event    type slis_alv_event,
[xt4T+]mW0      slis_ev_top type slis_formname value 'TOP-OF-PAGE',ITPUB个人空间#v.|3M5yy'_`
      v_repid     type sy-repid,ITPUB个人空间Q \0]2_9h*L[6?
      gs_tab_head type slis_tabname.ITPUB个人空间&MsBNhF
ITPUB个人空间}u,l w Z
ITPUB个人空间ja|;E@~6j
SELECTION-SCREEN BEGIN OF BLOCK VEN WITH FRAME TITLE TEXT-100.
"]+q7S WoZ3A0SELECT-OPTIONS:
w'z&F G}/~5J0  WBS   FOR LIPS-PS_PSP_PNR,
\/o7c m%wU0}0  DNNO  FOR LIKP-VBELN,
["i'DoM cYT/n,I0  PDATE FOR LIKP-WADAT_IST,
e`6P3z pM*K0  MATNO FOR LIPS-MATNR,ITPUB个人空间4z'|T:?9_
  PLANT FOR LIPS-WERKS,ITPUB个人空间 a:G__8g&Y%dw0|5p
  LOCAT FOR LIPS-LGORT,
f:f.T7? p(M/p'S0  CUSTO FOR LIKP-KUNNR,
-aj4S!l6{4z0  SALTO FOR LIKP-KUNAG,
UB6M Xn|f0  SOTYP FOR VBAK-AUART,ITPUB个人空间/M7W)?$QLC
  SONO  FOR LIPS-VGBEL,ITPUB个人空间xI k q#[e g*IZ
  GSTAT FOR VBUK-WBSTK,
D0o^9^f/Y"x0  BSTAT FOR VBUK-FKSTK.
te M5vdc0* ISTAT FOR VBUK-FKIVK.
9Rt T7W(a4P$^0SELECTION-SCREEN SKIP.
.VM2Z3z(S/d'`%Kk+p0PARAMETERS: BATCH TYPE C AS CHECKBOX DEFAULT 'X'.ITPUB个人空间 V#DjW?(A3q
SELECTION-SCREEN END OF BLOCK VEN.ITPUB个人空间'Dp*Cb c.Q,|%B#Z0A[
ITPUB个人空间~rfr:`3o#U[

c7{;jXw y(o.e q0START-OF-SELECTION.ITPUB个人空间%x"},B)c@N q7a;T ~

|X,q'N(W"t"L Y'G0  PERFORM GET_DATA.ITPUB个人空间W,x,Y.T_"xN9wiT`\

+OZYU`$D0T0  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
7^2Q:SP O i8D0    EXPORTINGITPUB个人空间c;z(g*M@
      I_LIST_TYPE     = 0ITPUB个人空间[.bv1q#qsr4X
    IMPORTING
#va,o|!w X/j,@(~"D0      ET_EVENTS       = xevents
6Y+d.ve`0    EXCEPTIONSITPUB个人空间 `t o&nP@d/OER
      LIST_TYPE_WRONG = 1
*GD%]E$@t1I ^,m0      OTHERS          = 2.
M ~*~(a&`0  IF SY-SUBRC <> 0.ITPUB个人空间!{Q W"` j'Z\ uNq
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
R|,\nl8j0            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
?y'l7G(x"N9ir0  ENDIF.
UR1~mG'{$QC5n0ITPUB个人空间Z*| }5N R aC/^W
  read table xevents with key name = slis_ev_top into is_event.
(|'t#Zg|\0  if sy-subrc = 0.ITPUB个人空间5[Y SlDh
    move slis_ev_top to is_event-form.ITPUB个人空间Oe'u9N U*d
    append is_event to xevents.ITPUB个人空间0t#o:m-K,k$^"Uz%w%G:S%D
  endif.
$A];u `~L0
f`8k$gt-Z\5^`6u0  gs_tab_head = 'ST_DN'.
3i8x_5nq0
$P)Xd.KC+t0  v_repid = sy-repid.
#u0P$Xho8]P0ITPUB个人空间b,J|7C.r)W1eS"F)G1[
  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'ITPUB个人空间 J V`ye,b6u8~ t
    EXPORTINGITPUB个人空间y"Y c4p2qrd
      I_PROGRAM_NAME         = v_repid
G P.rG&XFjoCH0      I_INTERNAL_TABNAME     = gs_tab_head
N AW2`h"vFr0      I_CLIENT_NEVER_DISPLAY = 'X'
f G@3e9d-\%] M$^O0      I_INCLNAME             = v_repidITPUB个人空间hp'`4Z\~6a,HrMm*q&K
    CHANGING
I,P r X2e0      CT_FIELDCAT            = i_fieldcat
.x1cVG#m7o ` ~f0    EXCEPTIONS
J R BoBY@0      INCONSISTENT_INTERFACE = 1
^_-h c;~3S0      PROGRAM_ERROR          = 2
)CDc O ra0      OTHERS                 = 3.ITPUB个人空间9R'~(LF;y9D
  IF SY-SUBRC <> 0.ITPUB个人空间;}cq;rl-]0q
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
`^9V#A^E0L]0            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
Y$ICt)s DZZ ~4y Z0  ENDIF.
] O(bSwQ0ITPUB个人空间xf@K1D|d-|1T8|
  PERFORM BUILD_FIELDCAT.
$m_%Xu RL0ITPUB个人空间5|-x*W8LC hl L w
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
!pt"]-T_)J3FEq H*z0    EXPORTING
6ClF2cV0      I_BYPASSING_BUFFER      = 'X'
0a7zK.TS UT0      I_BUFFER_ACTIVE         = ' 'ITPUB个人空间m%j v)d]D@8U
      I_CALLBACK_PROGRAM      = v_repid
.JK-u xsV0      I_CALLBACK_TOP_OF_PAGE  = 'TOP-OF-HEAD'ITPUB个人空间 L;f0?}wE
      i_callback_user_command = 'USER_COMMAND'
;fdm/A1AU4C0      IT_FIELDCAT             = i_fieldcat
DC/Yl8G{W0      I_SAVE                  = 'A'
nP`4`!b\4Mw0B#C:t0      IT_EVENTS               = xeventsITPUB个人空间jXj.W'IGl
    TABLES
H u8]y B8f2V0      T_OUTTAB                = it_dn
/D;F xaY$tk3|2F Z0    EXCEPTIONSITPUB个人空间,D MU5m-B|-o-GB
      PROGRAM_ERROR           = 1ITPUB个人空间.A;G @\C
      OTHERS                  = 2.ITPUB个人空间4`5rlT)`xy
  IF SY-SUBRC <> 0.
gme t,y&[Ml9E0    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNOITPUB个人空间0P{ T~O&M'],Ey
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
8^_VVgb2@9}!u0  ENDIF.
K:S8t!T$z9LSf0ITPUB个人空间Ov$@!j,xmy
*&---------------------------------------------------------------------*ITPUB个人空间/AoiWQ"a KI`
*&      Form  user_command
s0hDx#`0*&---------------------------------------------------------------------*ITPUB个人空间 T!a:`+NllK}4@
*       textITPUB个人空间Ze"mjn,v
*----------------------------------------------------------------------*ITPUB个人空间:L5E)CGA%`H
*      -->R_UCOMM      text
H V6CgM;L,M0XO;l0*      -->RS_SELFIELD  textITPUB个人空间 s*q`7Z \G S
*----------------------------------------------------------------------*ITPUB个人空间~F6t {$G
FORM user_command USING r_ucomm LIKE sy-ucomm
|q,k0[/v ^N!j0                      rs_selfield TYPE slis_selfield.ITPUB个人空间$W)Bc n*Um,?\ p

*K5e%U+LDW+E0
0m \g*?*l`&a8g0  IF rs_selfield-fieldname EQ 'VBELN'.
(E$NZI2c Qi0    READ TABLE IT_DN INDEX rs_selfield-tabindex.ITPUB个人空间yj%B+i8u|lj$c
    SET PARAMETER ID'VL' FIELD IT_DN-VBELN.ITPUB个人空间gQ$Ck0_ [/g+w-t
    CASE r_ucomm.
{WS+l+NuGZ7r K c0      WHEN '&IC1'.
w MG5y9H2s]0        CALL TRANSACTION 'VL03N' AND SKIP FIRST SCREEN.ITPUB个人空间)a nn#w2z0r1n!U
    ENDCASE.
*fUF/?e%T ^-j0  ENDIF.ITPUB个人空间R.a8V\-MQ8G

z-]'?x5uD[ Ud0  IF rs_selfield-fieldname EQ 'MATNR'.
"r}-L-cHE.`#e0    SET PARAMETER ID 'MXX' FIELD 'K'.ITPUB个人空间-}3W2tIK5c sN u"f"o,E:N
    READ TABLE IT_DN INDEX rs_selfield-tabindex.
4eOi(If0    SET PARAMETER ID'MAT' FIELD IT_DN-MATNR.ITPUB个人空间Y$trw0K/U:L0D2d:mSq
    CASE r_ucomm.
"b I4V\)j-SZ0      WHEN '&IC1'.
1uy*yY:iRs?8n0        CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.ITPUB个人空间,qS/fk'Y/?~+ay
    ENDCASE.
)^&icp6T-N8]0  ENDIF.ITPUB个人空间&P!Ta6@|!?:C
ENDFORM.                    "user_commandITPUB个人空间^ u%pvJ4[

-W7h9h|qD O0ITPUB个人空间"j*_ x] AP9Rt:V
*&---------------------------------------------------------------------*ITPUB个人空间w3k{*f$pN0@c
*&      Form  BUILD_FIELDCAT
O [)f-Ti8Iq b0*&---------------------------------------------------------------------*
@b}7_~[/M0*       text
\;dpfjw0[&d0*----------------------------------------------------------------------*ITPUB个人空间0U,D&{\:xpa$G?
FORM BUILD_FIELDCAT.
R_@)KjCu0  loop at i_fieldcat into l_fieldcat.
0@A/aRr i0    if sy-langu = 'E'.
Z*SsXx-K#L0      case l_fieldcat-fieldname.
*p&l;sa,X'}:U.M0        when 'VBELN'.
+{!W1[w+u3gZ0          l_fieldcat-hotspot = 'X'.ITPUB个人空间7i.\Gj'X!?
        when 'DNMON'.ITPUB个人空间C(n3@:d&w
          l_fieldcat-seltext_s = 'Month'.
V5j l j8uQ n0          l_fieldcat-seltext_m = 'DN Month'.ITPUB个人空间A+oZ&y6j uFX%I
          l_fieldcat-seltext_l = 'DN Month'.ITPUB个人空间$LE v%X-Mf(huZ
        when 'VFLAG'.
:?7]3w8T7Z0          l_fieldcat-seltext_s = '+/-'.ITPUB个人空间,~xM1J8FkQ D
        when 'VFACT'.ITPUB个人空间pgCgW2m\
          l_fieldcat-seltext_s = 'Conversion'.ITPUB个人空间E*g#? Tg
          l_fieldcat-seltext_m = 'Conversion'.ITPUB个人空间;k!p7e8_*\*A8kKD
          l_fieldcat-seltext_l = 'Conversion Factor'.
%Bx:PCV w0        when 'NTPRI'.ITPUB个人空间 Hvo'X:c{ R-z
          l_fieldcat-seltext_s = 'Price'.
.C4])t0Zjw0          l_fieldcat-seltext_m = 'Sales Price'.ITPUB个人空间 ?\H6b7lk0U;An.eO
          l_fieldcat-seltext_l = 'Sales Price'.ITPUB个人空间D e(j!l8J%~
        when 'INMON'.
br%s v1[!p0          l_fieldcat-seltext_s = 'Month'.
N[ Z4r IBy\0          l_fieldcat-seltext_m = 'Bill.Month'.ITPUB个人空间 T;gT+_]{
          l_fieldcat-seltext_l = 'Billing Month'.
5K/zb\"|!Ky0        when 'NTGEW'.
){W0Ol1w4}"\6vT$R0          l_fieldcat-seltext_s = 'Net(KG)'.
0euFJ3bu[{0          l_fieldcat-seltext_m = 'Net weight(KG)'.ITPUB个人空间1@$rO-@%zne
          l_fieldcat-seltext_l = 'Net weight(KG)'.
~kn M/P0        when 'BRGEW'.
'V!U|DU|$^0          l_fieldcat-seltext_s = 'Gross(KG)'.
C jUAV0          l_fieldcat-seltext_m = 'Gross weight(KG)'.
sN hd;L!jFm3F1^`0          l_fieldcat-seltext_l = 'Gross weight(KG)'.
cVU%rqW*l ?0        when 'NTPR2'.ITPUB个人空间n{!M:fU4su9E
          l_fieldcat-seltext_s = 'Price(USD)'.ITPUB个人空间k-Z0J }W!v8S&`#A
          l_fieldcat-seltext_m = 'Sales Price(USD)'.
|A[;L4c*k }m1\0          l_fieldcat-seltext_l = 'Sales Price(USD)'.
X(VS6E&?4p:CQ^g0        when 'NTAM2'.ITPUB个人空间8Qp"p_Z'l-UG
          l_fieldcat-seltext_s = 'Amount(USD)'.
7rm W+y&kT0          l_fieldcat-seltext_m = 'Sales Amount(USD)'.
.` kPz`1hpJ3g0          l_fieldcat-seltext_l = 'Sales Amount(USD)'.ITPUB个人空间#uA y9{"UA }P^k
        when 'NTAM3'.ITPUB个人空间C-m QN!I
          l_fieldcat-seltext_s = 'Amount(USD)'.ITPUB个人空间5TM'\7Ql ^
          l_fieldcat-seltext_m = 'Shipped Amount(USD)'.
7y3t'v2|P9^0          l_fieldcat-seltext_l = 'Shipped Amount(USD)'.
+l8lIwk#\,q"hm4h1{0      endcase.
1Dy3^"O2^ Z&l0    else.
)Lh:w5vCu^v0      case l_fieldcat-fieldname.ITPUB个人空间jQF8ACo%V
        when 'DNMON'.
(K ~8Ina$v3i0          l_fieldcat-seltext_s = '月'.
rTo X1N`0          l_fieldcat-seltext_m = '交货月'.
)] @?j6q2M9YP0          l_fieldcat-seltext_l = '交货月'.ITPUB个人空间0h{9a7XP Cf4o
        when 'VFLAG'.
6H Z)^Db4Wq0          l_fieldcat-seltext_s = '+/-'.ITPUB个人空间Y+Jg3baq,C{
        when 'VFACT'.
6A.ic(N {.PM5N+Y0          l_fieldcat-seltext_s = '比率'.ITPUB个人空间tC&@8k9M
          l_fieldcat-seltext_m = '比率'.ITPUB个人空间z0L9r;Jy3}(U2K
          l_fieldcat-seltext_l = '比率'.ITPUB个人空间 ^jhoV:i
        when 'NTPRI'.
y0V)K`+` c#D0          l_fieldcat-seltext_s = '价格'.ITPUB个人空间3[ _ALl*lFZ%c
          l_fieldcat-seltext_m = '销售价格'.
r6_$Uj%pJ/j0          l_fieldcat-seltext_l = '销售价格'.ITPUB个人空间j'x h$^}3N1B
        when 'INMON'.
$N|SM&Nj y0n4C#O0          l_fieldcat-seltext_s = '月'.
:FK;Kl;^/|oI5Dj0          l_fieldcat-seltext_m = '发票月'.ITPUB个人空间`1t4pD Dc)Y
          l_fieldcat-seltext_l = '发票月'.ITPUB个人空间6}[,Q'y4T@7i|
        when 'NTGEW'.
"N&Yv%cL-VT0          l_fieldcat-seltext_s = '净重(KG)'.ITPUB个人空间 Y3v o2^glyz
          l_fieldcat-seltext_m = '净重(KG)'.ITPUB个人空间8z Z)Mq%U$o
          l_fieldcat-seltext_l = '净重(KG)'.
7nJz?8xY)TL1DD0        when 'BRGEW'.ITPUB个人空间l3j%RV|'m;Gk4B
          l_fieldcat-seltext_s = '毛重(KG)'.
2K*Bg,T;_Q-x({0          l_fieldcat-seltext_m = '毛重(KG)'.
iM}qK'WeS0          l_fieldcat-seltext_l = '毛重(KG)'.ITPUB个人空间jA(Qn9` m
        when 'NTPR2'.
U[&P$k9}0          l_fieldcat-seltext_s = '价格(USD)'.
O0B)V7}h)Yt'R#[Y0          l_fieldcat-seltext_m = '销售价格(USD)'.ITPUB个人空间!BE5vX*B&p&{
          l_fieldcat-seltext_l = '销售价格(USD)'.ITPUB个人空间%T;u0B&bdI-caP
        when 'NTAM2'.ITPUB个人空间C A-R!q}:x
          l_fieldcat-seltext_s = '总价值(USD)'.ITPUB个人空间 e9Mfy#Q ?q2Y db
          l_fieldcat-seltext_m = '总价值(USD)'.
'l O6U S.X6ys;U0NB0          l_fieldcat-seltext_l = '总价值(USD)'.ITPUB个人空间1V4[&`kE9n:\
        when 'NTAM3'.
4N'W:["D;h!L$C y~0          l_fieldcat-seltext_s = '走货价值(USD)'.
N]E&kp f0          l_fieldcat-seltext_m = '走货价值(USD)'.
a9Vw.[.]C0          l_fieldcat-seltext_l = '走货价值(USD)'.
2}wrF-K0      endcase.
jk}An7j(c0    endif.
I1}`!UO&VT T*xse0ITPUB个人空间)Y u(aQ fxk
    modify i_fieldcat from l_fieldcat.ITPUB个人空间 x%@Dk)TV u
  endloop.ITPUB个人空间0l^R7vTW*[
ENDFORM.                    "BUILD_FIELDCAT
([*l1zsrK!c2I-w:H0
:_u;Xr*_&M h0*&---------------------------------------------------------------------*ITPUB个人空间v)mP7KFGesH
*&      Form  top-of-head
nt#J_F!}t0*&---------------------------------------------------------------------*ITPUB个人空间s`~"d#Dj6Z
*       textITPUB个人空间 Q_i [x s#zc0},K
*----------------------------------------------------------------------*ITPUB个人空间"oe_L c"n G"b@2rz
form top-of-head.ITPUB个人空间T-h!Cm6y_teE
  data: t_header type slis_t_listheader,
/gM/cH7i/zA0        wa_header type slis_listheader.ITPUB个人空间*[0hs\M^
ITPUB个人空间d"|{?[$Y9t S+s
  data v_value1(18type c.ITPUB个人空间_PpN+T[ E7nh vz
  data v_value2(18type c.ITPUB个人空间%w+{l%aeqB#c8^
  data v_info(60type c.ITPUB个人空间DX%^!B$] x}
ITPUB个人空间3pV*L!T,LZ5B!w
  if wbs is not initial.
r/y%kH(?0    v_value1 = wbs-low.
0FhU ["r?n/Z\0    v_value2 = wbs-high.ITPUB个人空间9u6B8KxY,E
    concatenate v_value1 ' To ' v_value2 into v_info separated by space.
9m*lT-d#]&~8v0
m:@T[;DEU\0    clear wa_header.ITPUB个人空间g)c{y R
    wa_header-typ = 'S'.ITPUB个人空间1A#@)QU w e
    if sy-langu = '1'.
3FgRRZ8U,RPR0      wa_header-key = 'WBS 项目       '.
*wf!X qj aR)i)be B0    else.
i!F d7F7@-@$P&y0      wa_header-key = 'WBS Element    '.
7c){JMUrFU0    endif.
"[X3P \.^^xS0    wa_header-info = v_info.
I,k&y"vS4UMa'h0    append wa_header to t_header.
J5b }L-A(TTn_0  endif.
j_2{2Q(o ^B0*-----------------------------------------------------------
e8IzC#OK1lb0  if dnno is not initial.
%bc`el&q+Z B'WN3o$B0    v_value1 = dnno-low.
.Hd!O+pC#f0    v_value2 = dnno-high.
+G({W;E}P4m+] y L1C0    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间:CY9CC3A Z"iN:S4I
ITPUB个人空间M3NYk H_$[%t d
    clear wa_header.
q!Q`Y S @a%w;Z0    wa_header-typ = 'S'.
C xW+V&c^ C2S[0u0    if sy-langu = '1'.
G,I/FK$lnt3K*m0      wa_header-key = '交货单号       '.ITPUB个人空间 wz_,TYpW c
    else.
$`6nt2u|J"{%@ O0      wa_header-key = 'DN Number      '.
([0xYO],b uo0    endif.
5tR^1fm2}P&u0    wa_header-info = v_info.
1K0me*D.y1B`0    append wa_header to t_header.
9} e0~2\Wj u"o0  endif.
9cCa&N`+dU0*-----------------------------------------------------------
wv+B7Ht,m0  if pdate is not initial.
+j!C5G l&HoIav4E0    v_value1 = pdate-low.
@oz6J;TF0    v_value2 = pdate-high.ITPUB个人空间P5ZYX_c
    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间)js3W0H(t ob P

1X(S?^_V0    clear wa_header.
Y$o9_j7m0    wa_header-typ = 'S'.
:}&}{x5N)_0    if sy-langu = '1'.ITPUB个人空间@'tn%y3g
      wa_header-key = '实际发货日期   '.
z)]1NOx } Jz0    else.ITPUB个人空间w0w*_rsH
      wa_header-key = 'Posting Date   '.ITPUB个人空间.j-D \ @uY C
    endif.ITPUB个人空间S UaONT$QlH$K
    wa_header-info = v_info.
cQn v"c0    append wa_header to t_header.ITPUB个人空间%_0lVl2mB*\8C\/n
  endif.ITPUB个人空间BL4hn2hea
*-----------------------------------------------------------ITPUB个人空间LG"hk X(k
  if matno is not initial.
`)zV N4h8I7y0    v_value1 = matno-low.ITPUB个人空间+V;WS"B/^ k^1\`
    v_value2 = matno-high.ITPUB个人空间,FR0Lk;I.ZI
    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间;R _:^`D8w/^
ITPUB个人空间 ZXLq&q9qJ'c0R
    clear wa_header.
W*K1X-O1IW0    wa_header-typ = 'S'.
D$_swj!I S/g0    if sy-langu = '1'.
KTzx}%d,}&X0      wa_header-key = '物料编号       '.ITPUB个人空间%|T/d9]I!Q
    else.
B$]O&TL"l6g0      wa_header-key = 'Material       '.ITPUB个人空间"[(a7W$KdgY:I@y
    endif.ITPUB个人空间'PR&Ek]zOTR*Qe
    wa_header-info = v_info.
%iS}#x;uC,QG c0    append wa_header to t_header.ITPUB个人空间2T+o#{(q+@x7d0K]t-E
  endif.ITPUB个人空间B|&Mc;bb)x
*-----------------------------------------------------------ITPUB个人空间0I l0a%h8I.I
  if plant is not initial.ITPUB个人空间fVW Mg/G'Yr
    v_value1 = plant-low.ITPUB个人空间6?p\#l&G2LM\1T4y
    v_value2 = plant-high.ITPUB个人空间s GOA~)s
    concatenate v_value1 ' To ' v_value2 into v_info separated by space.
9tmP9L Uf+E/{8g0ITPUB个人空间:[4`psWE"w Hx
    clear wa_header.ITPUB个人空间|$^&{:U0mQuNI%mM
    wa_header-typ = 'S'.
d}9l6qcW] T)c0    if sy-langu = '1'.
0X0vzIcj n0      wa_header-key = '工厂           ' .ITPUB个人空间E MMp{|TTg
    else.ITPUB个人空间dkl~ l
      wa_header-key = 'Plant          '.
b$k1FW7_ m3[ H0    endif.
a-yMVxa0    wa_header-info = v_info.ITPUB个人空间I3@:e3EN*`#L-I"w
    append wa_header to t_header.ITPUB个人空间/Qrhe3o
  endif.
6x"I@-kY5g_9F0*-----------------------------------------------------------ITPUB个人空间yLz}.l-z%?
  if locat is not initial.
)i0M(_+Te+G1E0    v_value1 = locat-low.
@({#g,A"E9Nm/]0    v_value2 = locat-high.ITPUB个人空间!U \-k&mR3^~
    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间&O;C9{(|?&[+g qp

kvJ|/M6^q0    clear wa_header.
u,W'xP"jY|u1t'y0    wa_header-typ = 'S'.
7n3o2M(Nr*T%p0    if sy-langu = '1'.
p0lB6ha)Hgp)r0      wa_header-key = '仓位           '.
Z0{1gQV(n0    else.
$_&S2n+QC0      wa_header-key = 'Location       '.
'VpgLG9c5y;]p0    endif.
4Mt`;}:A0    wa_header-info = v_info.ITPUB个人空间V0UQ"z-n%X-R
    append wa_header to t_header.ITPUB个人空间0rJ@p@4o'{m
  endif.ITPUB个人空间8P/NFj*@_/p/J
*-----------------------------------------------------------ITPUB个人空间7OkB%S K0q/][
  if custo is not initial.
%sy7Z _8^Q0    v_value1 = custo-low.
BQeO C.\.n)?0    v_value2 = custo-high.
P)l \0jzfU[}0    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间J~I.W)]S!`

&@2i3u+n)?Vg0    clear wa_header.
B1G7k G9PS$CHd d0    wa_header-typ = 'S'.ITPUB个人空间*\UQ|:_
    if sy-langu = '1'.
$s G/R&Ts,S0      wa_header-key = '送达方         '.ITPUB个人空间q? ~ R ~C-^Q
    else.
n6f2Q[-^0D0      wa_header-key = 'Ship-to Party  '.ITPUB个人空间-fj+}[*EK3x;tT
    endif.ITPUB个人空间o'G!@ \o.xin
    wa_header-info = v_info.
T'Ln6v2LXbG0    append wa_header to t_header.ITPUB个人空间&w#VK#p!m)oK-h,QT
  endif.
(yD t7Dl7E0*-----------------------------------------------------------
[Kc1yB7Bt0  if salto is not initial.
"TNmC%]/E@tZ {0    v_value1 = salto-low.
5`1oY1p0myh|n0    v_value2 = salto-high.
L#DZ}u5_7A1QBlq0    concatenate v_value1 ' To ' v_value2 into v_info separated by space.
Y!q-X:U4o j0ITPUB个人空间 Hsa9B%[N
    clear wa_header.ITPUB个人空间7T%\,r8GZ
    wa_header-typ = 'S'.
y/c_ E/M0    if sy-langu = '1'.ITPUB个人空间,[~ xI+D
      wa_header-key = '售达方         '.ITPUB个人空间'Q+rg)| En7NJ!p~!u
    else.
S@C9q(R0      wa_header-key = 'Sold-to Party  '.
#QBxt7W1qR,\0    endif.
H|T7V)A \!|0    wa_header-info = v_info.
%Aq~xK.`"Q t0    append wa_header to t_header.ITPUB个人空间.}G:J } Z_
  endif.
I#T!T$u ?4so0*-----------------------------------------------------------
4Y0CSB9N.f.B7x[0  if sotyp is not initial.
wu;z(wz.GW]0    v_value1 = sotyp-low.ITPUB个人空间:T7u r EWr&r
    v_value2 = sotyp-high.ITPUB个人空间;tmY1{O r
    concatenate v_value1 ' To ' v_value2 into v_info separated by space.
y?SY ^E_(A0ITPUB个人空间bD[\ D#b
    clear wa_header.ITPUB个人空间:A8S Cn1eg;FA*g
    wa_header-typ = 'S'.ITPUB个人空间!O#~ F*G3tb:I
    if sy-langu = '1'.
:{$eWb*x)?"GI0      wa_header-key = '订单类型       '.ITPUB个人空间1K\2QS.R
    else.ITPUB个人空间i3m5Jo,_)LP^ P,j
      wa_header-key = 'SO Type        '.ITPUB个人空间G,Tp[8_a)K~h
    endif.
p&|y9S4J mh:@$w0    wa_header-info = v_info.ITPUB个人空间 f/Y$d!iV rU ?B
    append wa_header to t_header.
TO*I^$L&hT0  endif.ITPUB个人空间yh#K:Tf|h!g!r[
*-----------------------------------------------------------ITPUB个人空间*Y l3DT4L i/FF(t{P
  if sono is not initial.
x9T+M v8Ec%[0    v_value1 = sono-low.
#[Bm:r?aC0    v_value2 = sono-high.
l$Ie8eXoJ0    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间,Zc v X K%ib7L

)GX.NwB%B0T4M"i0    clear wa_header.ITPUB个人空间R.JH;T-T"z_/o v'q*H
    wa_header-typ = 'S'.
5?:X T V8Ai y0    if sy-langu = '1'.ITPUB个人空间$Vh p9H2F
      wa_header-key = '销售订单       '.ITPUB个人空间Hd-Q3{ww
    else.ITPUB个人空间2xq!N u{u)} i
      wa_header-key = 'SO. Number     '.ITPUB个人空间0Q!`p#w u4Q)OS
    endif.
`(~C#U;Uey0    wa_header-info = v_info.ITPUB个人空间YqXB8v f3[@
    append wa_header to t_header.ITPUB个人空间e D/V;dG:p@4V)J
  endif.
$?8o2~6?$K]0*-----------------------------------------------------------
,E w~o-f$q0  if gstat is not initial.
!p7q8@vx0    v_value1 = gstat-low.ITPUB个人空间r@;q am6E
    v_value2 = gstat-high.
m6M,e0A!l0    concatenate v_value1 ' To ' v_value2 into v_info separated by space.
4["lA BL6Pms0
I a.]2j(cbz'ytk0    clear wa_header.
]&f9UxBB0    wa_header-typ = 'S'.
['j/mWi\/m0    if sy-langu = '1'.ITPUB个人空间 _lt9{@ \A'e
      wa_header-key = '发货状态       '.
_:Y{qz&S+M \0    else.ITPUB个人空间]"qCPH1A9V*?
      wa_header-key = 'GoodsIss Status'.
Kv @s#uUUA2N&w0    endif.
4c0?%_vj)|.x&k0    wa_header-info = v_info.
Ud L V ~\3m2@ F0    append wa_header to t_header.
[d$?8{ b_e$\0  endif.ITPUB个人空间2]r3x O-x$K8\5U-j^8u
*-----------------------------------------------------------ITPUB个人空间sB:EFW
  if bstat is not initial.
.mT JB0v3_0    v_value1 = bstat-low.
hY,H0]$b|L0    v_value2 = bstat-high.
rDS.Y6E2G j-x0    concatenate v_value1 ' To ' v_value2 into v_info separated by space.ITPUB个人空间j*O:M f2oNt7c-M-C

-N \2[;rOF*A0    clear wa_header.ITPUB个人空间"u8LJT_ k{}gt
    wa_header-typ = 'S'.ITPUB个人空间|p[SW`n Q4h
    if sy-langu = '1'.
9~ K p{7|3g;\3v0      wa_header-key = '开票凭证状态   '.
v8|Yi,S~4W0    else.
)}_ `#R7t5u0      wa_header-key = 'Bill Doc.Status'.
Jo d}g0    endif.
bh+]x,m*T+EiT0    wa_header-info = v_info.ITPUB个人空间@y#`Nn P r.OzA
    append wa_header to t_header.ITPUB个人空间? \ ]Y'wq V.pW
  endif.
oI:R ^5X7qf @n6Z0*-----------------------------------------------------------
#J,SJw)r&G0
b:r oY)k,M,E1q0  call function 'REUSE_ALV_COMMENTARY_WRITE'ITPUB个人空间hz:ov5{O
    EXPORTINGITPUB个人空间)X`n%@(}$JM
      it_list_commentary = t_header.ITPUB个人空间WiwH ks/a3t"T
ITPUB个人空间Z`Pqy:mU
endform.                    "top-of-headITPUB个人空间!`6S|m]cfJ
*&---------------------------------------------------------------------*ITPUB个人空间 S U:x$lz1cm
*&      Form  GET_DATAITPUB个人空间M:Hb;gnk a u
*&---------------------------------------------------------------------*ITPUB个人空间!RuQ*Q|c)y A
*       text
6Sds5B*b9j2B0*----------------------------------------------------------------------*ITPUB个人空间1i#U-[!|X'FH
FORM GET_DATA.ITPUB个人空间#Z/z2y*Z+u;i0a?
ITPUB个人空间`\7gm!Yn
  DATA WA_LIKP LIKE LIKP OCCURS 10 WITH HEADER LINE.
My,LT*TW8I:E9M0  DATA WA_LIPS LIKE LIPS OCCURS 10 WITH HEADER LINE.
i @p.u:~ NS_ a0  DATA WA_VBAP TYPE VBAP.ITPUB个人空间4eDUN x
  DATA WA_VBRK TYPE VBRK.
|1rvYz3Jz0  DATA WA_VBRP TYPE VBRP.ITPUB个人空间t yI9["Yli%l
  DATA WA_VBKD TYPE VBKD.
M4Xm/_Xoq'{I0  DATA WA_VBAK TYPE VBAK.ITPUB个人空间&S-L(dQh4R!OS4Wqoi
  DATA VA_KONV TYPE KONV.ITPUB个人空间0bMh(XDO]1m,E1AU
  DATA V_FLAG(2TYPE C.
u$Z:AUU|b@0  DATA V_NTPR  TYPE P DECIMALS 4.
X+aU0t$Y4vO9Z L]0  DATA V_NTPR2 TYPE P DECIMALS 4.ITPUB个人空间y%hDRQ0S_J
  DATA V_NTAM2 TYPE VBAP-NETWR.
h4i0VeE-ey:PX)s h0  DATA V_NTAM3 TYPE VBAP-NETWR.ITPUB个人空间)K|WrP0@gBq
  DATA V_PRSDT TYPE VBKD-PRSDT.ITPUB个人空间gJ&F3Z |B GPn9L
ITPUB个人空间7r[0Y-vsY
  DATABEGIN OF WA_VBUK OCCURS 10,ITPUB个人空间%s(NwYbdd
          WBSTK TYPE VBUK-WBSTK,ITPUB个人空间C A(mdzU9g
          FKSTK TYPE VBUK-FKSTK,ITPUB个人空间 l`LsK1t1Hj
          FKIVK TYPE VBUK-FKIVK,ITPUB个人空间W]$Qe^)JQ4j0W@
        END OF WA_VBUK.ITPUB个人空间`3k)o$`NgP
ITPUB个人空间SS6] ]C1i3}7Dp @ X
  DATA V_POSDAT TYPE LIKP-WADAT.ITPUB个人空间C7g8qE*a*C2WE$O0N
  DATA V_INVQTY TYPE LIPS-LFIMG.ITPUB个人空间7JT}&hC
  DATA V_NETWGT TYPE LIPS-NTGEW.
6ah5B-G8B2E0  DATA V_GROWGT TYPE LIPS-BRGEW.
&]p/]7ddC6o0  DATA V_AUART  TYPE VBAK-AUART.
|A#d5`y8_#~ ?0  DATA V_FACTOR TYPE P DECIMALS 2.ITPUB个人空间3n2xa0e7[Z,r
  DATA DN_MONTH(6TYPE C.
!Q#H2}[.G#}~*k0[0  DATA IN_MONTH(6TYPE C.ITPUB个人空间 xX {3XNgS
  DATA V_FKDAT   TYPE VBRK-FKDAT.
.Z'Ti`],E3l0  DATA V_MAKTX   TYPE MAKT-MAKTX.ITPUB个人空间C}iV;q"|\
  DATA V_NUMBER  TYPE KONV-KNUMV.
;n+@;S M!Uiz#R8z?&Y7z0  DATA WA_KONV   TYPE KONV.
o(ou3Y BV#F0  DATA V_NUMBER1 TYPE KONV-KNUMV.ITPUB个人空间|9b'xL2Yek
  DATA V_NETWR1  TYPE VBRP-NETWR.
B1~w([ AoJsg0
Y-] FQaD ELh}1}0  CLEAR IT_DN.ITPUB个人空间9QFd {r;e[?!J
  REFRESH IT_DN.
V$Z(V.Ig/\-US)n-Z*t0
!V7k:F+Yyv5Py:k(~0*-----------------------------------------------------------------------
/A+N%m.dN;UE0  CLEAR WA_LIKP.
fo+X,KhBXKtH0  REFRESH WA_LIKP.
\5y\h]6_Q(chC0  SELECT VBELN KUNNR WADAT WADAT_IST BOLNR KUNAGITPUB个人空间d4K ~I P%o*_
    INTO CORRESPONDING FIELDS OF TABLE WA_LIKPITPUB个人空间*^6u)En0C*Z%{6k h[
    FROM LIKPITPUB个人空间a7e+JHX}9e
    WHERE  VBELN IN DNNO AND KUNNR IN CUSTOITPUB个人空间_D$m xne"c
           AND KUNAG IN SALTO
y~0? B*~_ L0           AND ( WADAT_IST IN PDATE OR
2B3J~.ln;q8e0           ( WADAT_IST EQ SPACE AND WADAT IN PDATE ) ) ANDITPUB个人空间L{4eO,Ax2Ek
           VBELN IN ( SELECT VBELN FROM VBUK WHERE WBSTK IN GSTAT ANDITPUB个人空间-Nqz OVj
                              FKSTK IN BSTAT ) ANDITPUB个人空间uujfh1@ N$V6OC{
           VBELN IN ( SELECT VBELN FROM LIPS WHERE MATNR IN MATNO ANDITPUB个人空间8|1EC.F&g$Vu
                                WERKS IN PLANT AND LGORT IN LOCAT AND
2bW4n(e4H^@0                                PS_PSP_PNR IN WBS ANDITPUB个人空间 H rkox@ W%@
                                VGBEL IN SONO  ANDITPUB个人空间9G'[([X5a
                                VGBEL IN ( SELECT VBELN FROM VBAK WHEREITPUB个人空间%md5s;l"L|U,V~t
                                           AUART IN SOTYP ) )ITPUB个人空间0~^B+ol$fj0uvDn;Y;{
    ORDER BY VBELN.ITPUB个人空间 inBMJz)W

6e;VoS6dDj0  LOOP AT WA_LIKP.ITPUB个人空间N\7{4C|P:D
ITPUB个人空间4Df2L8Dk0s G G ^)s
*  Get the Posting Date
ro#DCwf0    CLEAR V_POSDAT.
0q M4r#K6J5[%Fq1hH\0    IF WA_LIKP-WADAT_IST EQ SPACE OR WA_LIKP-WADAT_IST EQ '00000000'.ITPUB个人空间5?p3d0U.M2\,g
      V_POSDAT = WA_LIKP-WADAT.ITPUB个人空间gw`I$B0O3k J
    ELSE.
7h O*~[-g E0      V_POSDAT = WA_LIKP-WADAT_IST.
l7{0@3jz0    ENDIF.
D.G&oh7fF+D0
@*X&jQK L L9C0    CLEAR DN_MONTH.ITPUB个人空间-b&]*O(us#a_ c
    DN_MONTH = V_POSDAT+0(6).ITPUB个人空间D s6nL~}1e3@

5i'\9F:^6} ~&T0*  GET DN Overall Status
H&['rW-z?/votm0    CLEAR WA_VBUK.ITPUB个人空间 C)d(lchA"RI
    SELECT WBSTK FKSTK FKIVK
?8K6J^|1^p:p5u0      FROM VBUK
(CA9_x N0      INTO WA_VBUK
!rcLTl0      WHERE VBELN = WA_LIKP-VBELN.
mW"X oE0k1F0ITPUB个人空间bhlBU+Fq
      APPEND WA_VBUK.
#kG$Ij!wG*E1z_0    ENDSELECT.ITPUB个人空间&uz'UM(r~+\[;L

$^.g ^Ob|^0    CLEAR WA_LIPS.
&b tco@6_}w0    REFRESH WA_LIPS.
*I6ME Gw,|7Y4IA4BG0    IF BATCH EQ SPACE.ITPUB个人空间v0xs)}:Y f
      SELECT WERKS LGORT&nb

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-08-31  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 5338
  • 日志数: 762
  • 文件数: 1
  • 书签数: 4
  • 建立时间: 2008-01-17
  • 更新时间: 2008-08-29

RSS订阅

Open Toolbar