2012-06-18 59 views
0

我想總結一些價值觀,但它不斷給我奇怪的價值觀。我發佈代碼來幫助,併發布圖片。總和工作不正常abap

at end of kunnr.  

soma-waers = <fs_main-waers. 
soma-wrbtr = <fs_main-wrbtr. 
soma-fwste = <fs_main-fwste. 
soma-hwaer = <fs_main-hwaer. 
soma-dmbtr = <fs_main-dmbtr. 
soma-hwste = <fs_main-hwste. 
APPEND soma TO it_soma. 



LOOP AT it_soma INTO soma. 
    IF sy-tabix = 1. 


    FORMAT COLOR COL_TOTAL INTENSIFIED OFF. 
    SUM. 
    WRITE: "/ sy-uline(137), 
     /sy-vline NO-GAP, 
      'Subtotal' NO-GAP, 
      '-' NO-GAP, 
      soma-waers, 
      63 sy-vline NO-GAP, 
      64 soma-wrbtr NO-GAP, 
      sy-vline NO-GAP, 
      soma-fwste NO-GAP, 
      sy-vline NO-GAP, 
      soma-hwaer NO-GAP, 
      sy-vline NO-GAP, 
      soma-dmbtr NO-GAP, 
      sy-vline NO-GAP, 
      soma-hwste NO-GAP, 
      sy-vline NO-GAP, 
     /sy-uline(137). 


    ELSE. 
    ENDIF. 

ENDLOOP. 

ENDAT. 

enter image description here

回答

-1

我需要以清除內部表結束。它現在工作正常。謝謝。

3

我認爲你犯了一個錯誤的代碼序列。

LOOP裏面,您可以使用AT-ENDAT。不要在您的代碼中使用AT-ENDAT內的LOOP

您的代碼應更多像這樣:

LOOP AT it_soma INTO soma. 
    AT END OF kunnr.  
    FORMAT COLOR COL_TOTAL INTENSIFIED OFF. 
    SUM. 
    WRITE: "/ sy-uline(137), 
     /sy-vline NO-GAP, 
      'Subtotal' NO-GAP, 
      '-' NO-GAP, 
      soma-waers, 
      63 sy-vline NO-GAP, 
      64 soma-wrbtr NO-GAP, 
      sy-vline NO-GAP, 
      soma-fwste NO-GAP, 
      sy-vline NO-GAP, 
      soma-hwaer NO-GAP, 
      sy-vline NO-GAP, 
      soma-dmbtr NO-GAP, 
      sy-vline NO-GAP, 
      soma-hwste NO-GAP, 
      sy-vline NO-GAP, 
     /sy-uline(137). 
    ENDAT. 
ENDLOOP. 

問題的其它來源:

  • 您的表必須進行排序