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

Write under



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP
View previous topic :: View next topic  
Author Message
XXX_:)
Аналитик
Аналитик


Age: 40
Joined: 01 Feb 2008
Posts: 387
Location: Воронеж

PostPosted: Mon Apr 18, 2011 2:39 pm    Post subject: Write under Reply with quote

Есть 2 подпрограммы. Обе стандартнтые, но первая расширенная. Вот код 1-ой
Code:
  DATA:
    ls_text TYPE char18.

  ls_text = 'Остаток/Перерасход'. "#EC *

  PERFORM write_tab USING text-g00.

  LOOP AT f_vsch.
    IF sy-tabix = 1.
      FORMAT INTENSIFIED.
      WRITE: /1 text-g01,
                 text-g02,
                 text-g03,
                 text-g04,
                 text-g04,
                 text-g05,
                 text-g06,
*              text-g07, 83 space.                          "WTLK003797
                 text-g07,                              "WTLK003797
              83 space,                                    "WTLK003797
             /1 text-b17,                              "WTLK003797
               ls_text,
              83 space.                                    "WTLK003797
      FORMAT INTENSIFIED OFF.
    ENDIF.
    WRITE: / f_vsch-vorsc CURRENCY f_vsch-waers UNDER text-g01,
             f_vsch-waers UNDER text-g02,
             f_vsch-kursv UNDER text-g03,
             f_vsch-ffact UNDER text-g04,
             f_vsch-tfact UNDER text-g04,
             f_vsch-vorhw CURRENCY sy-waers UNDER text-g05,
             f_vsch-kassa UNDER text-g06,
*            f_vsch-datvs dd/mm/yyyy under text-g07, 83 space.WTLK003797
             f_vsch-datvs DD/MM/YYYY UNDER text-g07,        "WTLK003797
             83 space,                                      "WTLK003797
           / f_vsch-paycurr UNDER text-b17,                 "WTLK003797
              f_vsch-zztypav UNDER ls_text,
             83 space.                                      "WTLK003797

  ENDLOOP.
  IF sy-subrc = 0.                     "At least one loop
*    ULINE /(83).   "WBGK004637
    ULINE /(132).                                           "WBGK004637
  ENDIF.




Добавлен тут кусок с ls_text. Выводится дополнительное поле.
После нее можно выводить еще одну таблицу. Вот код ее вывода. тут вообще стандарт
Code:

* Begin of MAW_EUVAT
  DATA lv_fwste_txt            TYPE c LENGTH 20.
  DATA lv_vat_posting_type_txt TYPE c LENGTH 10.
  DATA lv_vat_changed_man_txt  TYPE c LENGTH 10.

  lv_fwste_txt            = cl_fitv_util=>get_data_element_text(
                                          iv_data_element = 'WMWST'
                                          iv_medium_label = abap_true ).
  WRITE lv_fwste_txt TO lv_fwste_txt RIGHT-JUSTIFIED.

  lv_vat_posting_type_txt = cl_fitv_util=>get_data_element_text(
                                          iv_data_element = 'PTRV_VAT_POSTING_TYPE'
                                          iv_short_label = abap_true ).
  WRITE lv_vat_posting_type_txt TO lv_vat_posting_type_txt RIGHT-JUSTIFIED.

  lv_vat_changed_man_txt  = cl_fitv_util=>get_data_element_text(
                                          iv_data_element = 'PTRV_VAT_CHANGED_MAN'
                                          iv_short_label = abap_true ).
  WRITE lv_vat_changed_man_txt TO lv_vat_changed_man_txt RIGHT-JUSTIFIED.
* End of MAW_EUVAT

  PERFORM write_tab USING text-s00.
  LOOP AT f_rot.
    RESERVE 5 LINES.
    FORMAT INTENSIFIED.
    WRITE: /1(10)  text-s19,
            (10)  text-s02,
            (10)  text-s08,
            (10) text-x20,
            (10) text-s11,
            (10) text-s12,
            83 space.
    FORMAT INTENSIFIED OFF.
    WRITE: / f_rot-line  UNDER text-s19,
             f_rot-lgart UNDER text-s02,
             f_rot-c1znr UNDER text-s08,
             f_rot-belnr UNDER text-x20,
             f_rot-v0typ UNDER text-s11,
             f_rot-v0znr UNDER text-s12,
             83 space.
    FORMAT INTENSIFIED.
    WRITE: /1(10)  text-s18,
            (21)  text-s16,
            (10)  text-s17,
            (20) text-b15,
*           Begin of MAW_EUVAT
            (20) lv_fwste_txt ,
            (10) lv_vat_posting_type_txt,
            (10) lv_vat_changed_man_txt,
*           End of MAW_EUVAT
            83 space.
    FORMAT INTENSIFIED OFF.
    WRITE: / f_rot-waers UNDER text-s18,
             f_rot-betrg CURRENCY sy-waers UNDER text-s16,
             f_rot-mwskz UNDER text-s17,
             f_rot-txjcd UNDER text-b15,
*            Begin of MAW_EUVAT
             f_rot-fwste            UNDER lv_fwste_txt,
             f_rot-vat_posting_type UNDER lv_vat_posting_type_txt,
             f_rot-vat_changed_man  UNDER lv_vat_changed_man_txt,
*            End of MAW_EUVAT
             83 space.
    FORMAT INTENSIFIED.

    WRITE: /(132) sy-uline.
  ENDLOOP.


Так вот если срабатывает вот эта часть кода из 1 программы
Code:
WRITE....
....
ls_text,
....

WRITE:....
....
 f_vsch-zztypav UNDER ls_text,
....


То когда вторая программа отрисовывает свою табличку, то
Code:
    WRITE: ....
             f_rot-betrg CURRENCY sy-waers UNDER text-s16,
....

Записывает некоторую сумму. А следом за этим стоит
Code:
f_rot-fwste            UNDER lv_fwste_txt,
и вместо того чтобы записать эту сумму под своим текстом lv_fwste_txt перезаписывает значение f_rot-betrg.

Тексты text-s16 = "Сумма"
lv_fwste_txt = "Сумма налога"

Если в первой программе поменять местами тексты и соответственно порядок вывода строк
Code:
           / f_vsch-paycurr UNDER text-b17,                 "WTLK003797
              f_vsch-zztypav UNDER ls_text,

то при печати следующей таблицы все будет корректно. Может быть кто то знает, что за механизм не срабатывает и почему. Любопытно.

_________________
Hормальные люди делают вещи намного более безумные чем всё, что делают сумасшедшие (c) С.Лем
Back to top
View user's profile Send private message Blog
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.