2012-07-02 25 views
0

我有一個報告,從bsis,bsas,bsid,bsad,vbrk,bkpf和bset獲取信息。問題是當有兩個相同號碼的發票時,報表將信息從第一行復制到第二行。因此,如果第一行中的發票編號爲4.140,206的稅金總額爲第二行中的相同稅額,但值爲40.140,64。 我能做什麼?我必須在哪裏使用buzei字段? 繼承人德代碼:當相同belnr,報告只從第一行獲取信息

SELECT SINGLE kbetr fwste hwste 
     FROM bset 
     INTO (<fs_main>-kbetr, <fs_main>-fwste, <fs_main>-hwste) 
     WHERE belnr = <fs_main>-belnr 
     AND bukrs IN bukrs 
     AND gjahr IN gjahr. 

我試圖獲得buzei,它仍然給了我同樣的線的兩倍。 下面的代碼,我上面的代碼之前做:

SELECT c~kunnr a~belnr d~spart c~bldat c~waers c~wrbtr a~hwaer c~dmbtr c~buzei 
     INTO CORRESPONDING FIELDS OF TABLE lt_data 
     FROM (((bsis AS f 
     INNER JOIN bkpf AS a ON f~belnr = a~belnr) 
     INNER JOIN bsid AS c ON c~belnr = a~belnr) 
     INNER JOIN vbrk AS d ON d~vbeln = c~belnr) 
     WHERE a~gjahr IN gjahr 
     AND a~bukrs IN bukrs 
     AND a~blart = 'R1' 
     AND f~hkont = '0034930020' 
     AND (c~mwskz = 'L0' OR c~mwskz = 'L1' OR c~mwskz = 'L2'). 
+0

我試圖得到buzei,它仍然給了我兩次相同的線。 這是我在上面的代碼之前做的代碼: –

回答

0

發現問題。我在錯誤的表格中選擇錯誤的字段。 BKPF只給了我一條線,而BSET給了我兩條線。所以,我改變了從那裏獲取字段的表,並且它工作得很好。謝謝。

1

- 你必須使用對你的病情一部分的所有重點領域的「選擇」,以獲得一個「單一」行。否則,表格可能不會返回給你一行,但你會得到第一行。

- 所以你必須在你的選擇中使用BUZEI字段。

希望它是有益的

塔拉