SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

BSEG и ее индексные таблицы



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP
View previous topic :: View next topic  
Author Message
july7
Старший специалист
Старший специалист



Joined: 10 Oct 2007
Posts: 109
Location: Киров

PostPosted: Wed Nov 21, 2007 2:23 pm    Post subject: BSEG и ее индексные таблицы Reply with quote

Добрый день!
Для получения данных по дебиторам использую таблицы BSAD и BSID. Но в этих таблицах вроде нет сторнированных документов. Можно ли как-то, не обращаясь к BSEG, получить суммы по сторнированным документам?
Спасибо.
Back to top
View user's profile Send private message
vga
Мастер
Мастер


Age: 200
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Wed Nov 21, 2007 4:09 pm    Post subject: Reply with quote

Ну почему же. Проверил в продуктиве, у нас много документов с заполненным полем Сторно
BSID-XNEGP
BSAD-XNEGP
Back to top
View user's profile Send private message Blog Visit poster's website
july7
Старший специалист
Старший специалист



Joined: 10 Oct 2007
Posts: 109
Location: Киров

PostPosted: Wed Nov 21, 2007 6:59 pm    Post subject: Reply with quote

но это же красное сторно, пока смотрю в сторону bsad-augbl Sad
Back to top
View user's profile Send private message
vga
Мастер
Мастер


Age: 200
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Wed Nov 21, 2007 10:07 pm    Post subject: Reply with quote

1)
Quote:
Если заполнены bkpf-stblg, bkpf-stjah, то документ сторнированный или сторно. У сторнированного документа заполнено bkpf-stgrd, у сторно - пусто.


2) http://www.sapfans.com/forums/viewtopic.php?t=41784

Нашел такой код, тянущий из заголовка bkpf-stblg для индексов bsid, bsad. Может это решение, если сделать join bsid и bkpf?

Code:
REPORT YTEST022 NO STANDARD PAGE HEADING
                   LINE-SIZE 146 LINE-COUNT 65
                   MESSAGE-ID zsfi.

TABLES : bkpf, bseg, kna1, skat, bsid, bsad.

DATA : BEGIN OF itab OCCURS 0,
         bukrs LIKE bsid-bukrs,
         zuonr LIKE bseg-zuonr,
         budat LIKE bsid-budat,
         zfbdt LIKE bsid-zfbdt,
         augdt LIKE bsid-augdt,
         belnr LIKE bsid-belnr,
         buzei LIKE bsid-buzei,
         dmbtr LIKE bsid-dmbtr,
         sgtxt LIKE bsid-sgtxt,
         bschl LIKE bsid-bschl,
         gsber LIKE bsid-gsber,
         stblg LIKE bkpf-stblg,
         gjahr LIKE bsid-gjahr,
         kunnr LIKE kna1-kunnr,
       END OF itab.


selectION-SCREEN SKIP 2.
selectION-SCREEN BEGIN OF BLOCK bk WITH FRAME TITLE t1.
selectION-SCREEN SKIP 1.
select-OPTIONS : p_bukrs FOR bsid-bukrs OBLIGATORY MEMORY ID buk,
                 p_gsber FOR bsid-gsber,
                 p_budat FOR bkpf-budat OBLIGATORY DEFAULT sy-datum,
                 p_kunnr FOR kna1-kunnr,
                 p_zfbdt FOR bsid-zfbdt,
                 p_zuonr FOR bsid-zuonr.

selectION-SCREEN SKIP 1.
selectION-SCREEN END OF BLOCK bk.

INITIALIZATION.
  t1 = ’select-OPTION’.

TOP-OF-PAGE.
  PERFORM title.

START-OF-selectION.
  PERFORM get_data.
  PERFORM display.

*&------------------------------------------------*
*&      Form  GET_DATA
*&------------------------------------------------*
*       text
*-------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*-------------------------------------------------*
FORM get_data.
  CLEAR itab.
  REFRESH itab.

  select bukrs zuonr budat zfbdt augdt belnr buzei dmbtr sgtxt gsber
         gjahr kunnr
    INTO CORRESPONDING FIELDS OF itab
    FROM bsid
   WHERE bukrs IN p_bukrs
     AND kunnr in p_kunnr
*    AND hkont EQ ’0012050101’
     AND zuonr IN p_zuonr
     AND UMSKS EQ ’W’
     AND UMSKZ EQ ’W’
     AND bschl EQ ’09’
     AND zfbdt IN p_zfbdt
     AND gsber IN p_gsber
     AND budat IN p_budat.

   IF sy-subrc = 0.
      APPEND itab.
   ENDIF.

   CLEAR itab.
  ENDselect.

  select bukrs zuonr budat zfbdt augdt belnr buzei dmbtr sgtxt gsber
         gjahr kunnr
    INTO CORRESPONDING FIELDS OF itab
    FROM bsad
   WHERE bukrs IN p_bukrs
     AND kunnr in p_kunnr
*     AND hkont EQ ’0012050101’
     AND zuonr IN p_zuonr
     AND UMSKS EQ ’W’
     AND UMSKZ EQ ’W’
     AND bschl EQ ’09’
     AND zfbdt IN p_zfbdt
     AND gsber IN p_gsber
     AND budat IN p_budat.

   IF sy-subrc = 0.
      APPEND itab.
   ENDIF.

   CLEAR itab.
 ENDselect.

 LOOP AT itab.

   select SINGLE stblg
     INTO CORRESPONDING FIELDS OF itab
     FROM bkpf
    WHERE bukrs EQ itab-bukrs
      AND belnr EQ itab-belnr
      AND gjahr EQ itab-gjahr
      AND stblg EQ ’ ’.

   IF sy-subrc EQ 0.

*     select single kunnr
*       INTO CORRESPONDING FIELDS OF itab
*       FROM bseg
*      WHERE bukrs EQ itab-bukrs
*        AND belnr EQ itab-belnr
*        AND gjahr EQ itab-gjahr
*        AND buzei EQ itab-buzei
*        AND kunnr IN p_kunnr.
*     IF sy-subrc EQ 0.
         MODIFY itab INDEX sy-tabix.
         CLEAR itab.
*      ELSE.
*         __delete itab.
*         CLEAR  itab.
*      ENDIF.

   ELSE.
      __delete itab.
      CLEAR itab.

   ENDIF.

 ENDLOOP.

ENDFORM.                    " GET_DATA

*&---------------------------------------------------*
*&      Form  TITLE
*&---------------------------------------------------*
*       text
*----------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------*
FORM title.

   SKIP 1.
   WRITE: /1(160) ’BILL OF EXCHANGE LIST’ CENTERED.
   SKIP 1.
   WRITE: /02   ’USER :’,        sy-uname,
           20   ’PRINT DATE :’,  sy-datum,
          130   ’PAGE:’,         sy-pagno.

   ULINE.
   FORMAT COLOR COL_HEADING INTENSIFIED ON.
   WRITE :/ sy-vline,
           (04) ’CUST’       CENTERED, sy-vline,
           (20) ’NAME’       CENTERED, sy-vline,
           (09) ’BILL.NO’    CENTERED, sy-vline,
           (08) ’POST.DATE’  CENTERED, sy-vline,
           (08) ’DUE.DATE’   CENTERED, sy-vline,
           (08) ’CLEA.DATE’  CENTERED, sy-vline,
           (11) ’DOC.NO’     CENTERED, sy-vline,
           (13) ’AMOUNT’     CENTERED, sy-vline,
           (32) ’TEXT’       CENTERED, sy-vline,
           (02) ’BA’         CENTERED, sy-vline.
   FORMAT INTENSIFIED OFF.
   ULINE.

ENDFORM.                    " TITLE

*&---------------------------------------------------*
*&      Form  DISPLAY
*&---------------------------------------------------*
*       text
*----------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------*
FORM display.
DATA name1 LIKE kna1-name1.
SORT  itab BY kunnr budat zfbdt.

 LOOP AT itab.
   select SINGLE name1 INTO name1
     FROM kna1
    WHERE kunnr = itab-kunnr.

   WRITE :/ sy-vline,  02(06) itab-kunnr,
        08  sy-vline,  09(22) name1,
        31  sy-vline,  32(11) itab-zuonr,
        43  sy-vline,  44(10) itab-budat,
        54  sy-vline,  55(10) itab-zfbdt.

        IF itab-augdt EQ ’00000000’.
   WRITE :65 sy-vline, 66(10) ’’.
        ELSE.
   WRITE :65 sy-vline, 66(10) itab-augdt.
        ENDIF.

   WRITE :76 sy-vline,  77(10) itab-belnr,
                        87(03) itab-buzei,
          90 sy-vline,  91(15) itab-dmbtr,
         106 sy-vline, 108(33) itab-sgtxt,
         141 sy-vline, 142(04) itab-gsber,
         146 sy-vline.

   AT LAST.
   FORMAT COLOR 3.
   SUM.
   WRITE : sy-uline(146).
   WRITE :/1  sy-vline,   2(29) ’TOTAL’  CENTERED,
          31  sy-vline,  86(20) itab-dmbtr,
         146  sy-vline.
   WRITE : sy-uline(146).
   ENDAT.
   CLEAR : itab.

ENDLOOP.

ENDFORM.                    " DISPLAY
Back to top
View user's profile Send private message Blog Visit poster's website
july7
Старший специалист
Старший специалист



Joined: 10 Oct 2007
Posts: 109
Location: Киров

PostPosted: Thu Nov 22, 2007 10:46 am    Post subject: Reply with quote

vga, спасибо за помощь! Smile
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.