POPUP_TO_INFORM
Ekranda en az 2 en fazla 4 satırlık bilgi gösteren popup pencere açar. Pencere başlığı ve 4 satırlık bilgi için 4 ayrı parametre alır.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
TITEL |
|
|
|
|
X |
Pencere başlık metni |
TXT1 |
|
|
|
|
X |
Birinci satır metni |
TXT2 |
|
|
|
|
X |
İkinci satır metni |
TXT3 |
|
|
SPACE |
X |
X |
Üçüncü satır metni |
TXT4 |
|
|
SPACE |
X |
X |
Dördüncü satır metni |
DATA : lv_titel(35),
lv_txt1(80),
lv_txt2(80),
lv_txt3(80),
lv_txt4(80).
lv_titel = ‘Pencere başlığı’.
lv_txt1 = ‘Birinci satır’.
lv_txt2 = ‘İkinci satır’.
lv_txt3 = ‘Üçüncü satır’.
lv_txt4 = ‘Dördüncü satır’.
CALL FUNCTION ‘POPUP_TO_INFORM’
EXPORTING
titel = lv_titel
txt1 = lv_txt1
txt2 = lv_txt2
txt3 = lv_txt3
txt4 = lv_txt4.
POPUP_TO_CONFIRM_DATA_LOSS
Saklanmayan bilgilerin kaybolacağı ile ilgili uyarı veren popup ekran açar. Kullanıcı “Evet”, “Hayır” veya “İptal” butonlarından birisini seçerek iletiyi onaylayabilir. Kullanıcının tıkladığı buton “ANSWER” parametresi ile fonksiyondan döner.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
DEFAULTOPTION |
|
|
‘J’ |
X |
X |
Varsayılan seçim butonu |
TITEL |
|
|
|
|
X |
Pencere başlık metni |
START_COLUMN |
LIKE |
SY-CUCOL |
25 |
X |
X |
Pencerenin başlangıç pozisyonu (sütun) |
START_ROW |
LIKE |
SY-CUROW |
6 |
X |
X |
Pencerenin başlangıç pozisyonu (satır) |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
|
ANSWER |
|
|
X |
Seçilen buton değeri |
|
|
|
|
|
|
|
|
|
|
|
DATA : lv_titel(70),
lv_answer(1).
lv_titel = ‘Pencere başlığı’.
CALL FUNCTION ‘POPUP_TO_CONFIRM_DATA_LOSS’
EXPORTING
defaultoption = ‘Y’
titel = lv_titel
start_column = 25
start_row = 6
IMPORTING
answer = lv_answer.
WRITE lv_answer.
Bir buton seçildikten sonra ekrana seçilen butonu yazar.
POPUP_TO_CONFIRM
Kullanıcıdan teyit almak için kullanılır. Pencere başlığı, 2 satırlık metin alanı, uyarı ikonu ve pencere ekran pozisyonu gibi parametreler alır. Tıklanan buton “ANSWER” parametresi ile fonksiyondan döner.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
TITLEBAR |
|
|
SPACE |
X |
X |
Pencere başlık metni |
DIAGNOSE_OBJECT |
LIKE |
DOKHL-OBJECT |
SPACE |
X |
X |
Dökümantasyon nesnesi |
TEXT_QUESTION |
|
|
|
|
X |
Soru metni |
TEXT_BUTTON_1 |
|
|
‘Ja'(001) |
X |
X |
Birinci buton metni |
ICON_BUTTON_1 |
LIKE |
ICON-NAME |
SPACE |
X |
X |
Birinci buton ikonu |
TEXT_BUTTON_2 |
|
|
‘Nein'(002) |
X |
X |
İkinci buton metni |
ICON_BUTTON_2 |
LIKE |
ICON-NAME |
SPACE |
X |
X |
İkinci buton ikonu |
DEFAULT_BUTTON |
|
|
‘1’ |
X |
X |
Varsayılan seçim butonu |
DISPLAY_CANCEL_BUTTON |
|
|
‘X’ |
X |
X |
İptal butonunu göster |
USERDEFINED_F1_HELP |
LIKE |
DOKHL-OBJECT |
SPACE |
X |
X |
Kullanıcı tanımlı yardım için doküman nesnesi |
START_COLUMN |
LIKE |
SY-CUCOL |
25 |
X |
X |
Pencerenin başlangıç pozisyonu (sütun) |
START_ROW |
LIKE |
SY-CUROW |
6 |
X |
X |
Pencerenin başlangıç pozisyonu (satır) |
POPUP_TYPE |
LIKE |
ICON-NAME |
|
X |
X |
Popup ikonu |
IV_QUICKINFO_BUTTON_1 |
TYPE |
TEXT132 |
SPACE |
X |
|
Mouse birinci butonun üzerinde iken görüntülenecek metin |
IV_QUICKINFO_BUTTON_2 |
TYPE |
TEXT132 |
SPACE |
X |
|
Mouse ikinci butonun üzerinde iken görüntülenecek metin |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
|
ANSWER |
|
|
X |
Seçilen buton değeri |
|
EXCEPTIONS |
Exception |
Tanım |
TEXT_NOT_FOUND |
|
|
|
|
|
|
|
|
|
|
|
Örnek 1: Basit bir teyit alma örneği.
REPORT zpp_r_test.
DATA lv_answer(1).
CALL FUNCTION ‘POPUP_TO_CONFIRM’
EXPORTING
titlebar = ‘Uyarı’
text_question = ‘Devam etmek istiyor musunuz?’
iv_quickinfo_button_1 = ‘Birinci buton bilgilendirme metni’
IMPORTING
answer = lv_answer.
WRITE lv_answer.
Bir buton seçildikten sonra ekrana seçilen butonun değerini yazar.
Örnek 2: Doküman metni gösteren ve pencere pozisyonu değiştirilen bir teyit alma örneği.
DATA lv_answer(1).
DATA : lt_parameter TYPE STANDARD TABLE OF spar,
ls_parameter TYPE spar.
ls_parameter-param = ‘M1’.
ls_parameter-value = ‘— Metin parametresi —‘.
APPEND ls_parameter TO lt_parameter.
CALL FUNCTION ‘POPUP_TO_CONFIRM’
EXPORTING
titlebar = ‘Uyarı’
diagnose_object = ‘BZAL_MSG1’
text_question = ‘Devam etmek istiyor musunuz?’
display_cancel_button = ‘X’
start_column = 30
start_row = 10
IMPORTING
answer = lv_answer
TABLES
parameter = lt_parameter.
WRITE lv_answer.
Bir buton seçildikten sonra ekrana seçilen butonun değerini yazar.
Örnek 3: Buton üzerinde ikon gösteren bir teyit alma örneği.
DATA lv_answer(1).
CALL FUNCTION ‘POPUP_TO_CONFIRM’
EXPORTING
titlebar = ‘Uyarı’
text_question = ‘Tüm kayıtlar silinecek!’
text_button_1 = ‘Sil’
icon_button_1 = ‘ICON_DELETE’
text_button_2 = ‘İptal’
icon_button_2 = ‘ICON_CANCEL’
default_button = ‘2’
display_cancel_button = ‘ ‘
IMPORTING
answer = lv_answer
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
WRITE lv_answer.
Bir buton seçildikten sonra ekrana seçilen butonun değerini yazar.
Örnek 4: Popup parametresi eklenmiş başka bir örnek.
DATA lv_answer(1).
CALL FUNCTION ‘POPUP_TO_CONFIRM’
EXPORTING
titlebar = ‘Uyarı’
text_question = ‘Çıkmak için iptale tıklayın’
text_button_1 = ‘Devam’
icon_button_1 = ‘ICON_CHECKED’
text_button_2 = ‘İptal’
icon_button_2 = ‘ICON_CANCEL’
display_cancel_button = ‘ ‘
popup_type = ‘ICON_MESSAGE_ERROR’
IMPORTING
answer = lv_answer.
WRITE lv_answer.
Bir buton seçildikten sonra ekrana seçilen butonun değeri yazılır.
POPUP_GET_VALUES
Popup pencereye eklenen alanlardan değerler alınmasını sağlar. Değer kontrolü, pencere başlığı, pencere pozisyonu parametrelerini alır. “RETURNCODE” parametresi döner. “FIELDS” internal tablosu ile ekranda gösterilecek alan bilgileri fonksiyona aktarılır. Seçilen değer yine “FIELDS” tablosundan geri döner.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
NO_VALUE_CHECK |
|
|
SPACE |
X |
X |
Veri tipi kontrolü yapılmamasını sağlar |
POPUP_TITLE |
|
|
|
|
X |
Pencere başlık metni |
START_COLUMN |
|
|
‘5’ |
X |
X |
Pencerenin başlangıç pozisyonu (sütun) |
START_ROW |
|
|
‘5’ |
X |
X |
Pencerenin başlangıç pozisyonu (satır) |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
RETURNCODE |
|
|
X |
Kullanıcı yanıtı |
TABLES |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
FIELDS |
LIKE |
SVAL |
|
Popup’ ta gösterilecek alanları, özellikler ve değerleri tutar |
EXCEPTIONS |
Exception |
Tanım |
ERROR_IN_FIELDS |
Alan bilgilerinde hata var |
Örnek: SPFLI tablosundan uçuş hava yolu ve uçuş bağlantı numarası alanından değer alan örnek.
DATA : gt_fields TYPE STANDARD TABLE OF sval,
gs_fields TYPE sval,
gv_returncode(1) TYPE c.
gs_fields-tabname = ‘SPFLI’ .
gs_fields-fieldname = ‘CARRID’ .
gs_fields-field_obl = ‘X’ .
APPEND gs_fields TO gt_fields.
CLEAR gs_fields.
gs_fields-tabname = ‘SPFLI’ .
gs_fields-fieldname = ‘CONNID’ .
APPEND gs_fields TO gt_fields.
CALL FUNCTION ‘POPUP_GET_VALUES’
EXPORTING
no_value_check = ‘ ‘
popup_title = ‘Uçuş seçiniz’
start_column = ‘5’
start_row = ‘5’
IMPORTING
returncode = gv_returncode
TABLES
fields = gt_fields
EXCEPTIONS
error_in_fields = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
LOOP AT gt_fields INTO gs_fields.
WRITE :/ ‘Alan ismi:’ ,gs_fields-fieldname,
‘Alan değeri:’, gs_fields-value.
ENDLOOP.
Seçim yapıldıktan sonra değerler ekrana yazdırılır.
POPUP_TO_DECIDE_LIST
Bir liste içerisinden seçim yapılmasını sağlar. Pencere başlığı, 3 satırlık metin alanı, pencere ekran pozisyonu gibi parametreler alır. Seçilen diğer “ANSWER” parametresi ve “t_spopli” internal tablosu ile fonksiyondan döner.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
CURSORLINE |
LIKE |
SY-LILLI |
1 |
X |
X |
Varsayılan liste satırı |
MARK_FLAG |
|
|
SPACE |
X |
X |
Checkbox şeklinde seçim yapılmasını sağlar. Birden fazla seçim yapılabilir |
MARK_MAX |
|
|
1 |
X |
X |
MARK_FLAG ‘X’ parametresi ile kullanıldığında maksimum seçim yapılabilecek satırı sayısı. |
START_COL |
LIKE |
SY-CUCOL |
0 |
X |
X |
Pencerenin başlangıç pozisyonu (sütun) |
START_ROW |
LIKE |
SY-CUROW |
0 |
X |
X |
Pencerenin başlangıç pozisyonu (satır) |
TEXTLINE1 |
|
|
|
|
X |
İlk metin alanı |
TEXTLINE2 |
|
|
SPACE |
X |
X |
İkinci metin alanı |
TEXTLINE3 |
|
|
SPACE |
X |
X |
Üçüncü metin alanı |
TITEL |
|
|
|
|
X |
Pencere başlık metni |
DISPLAY_ONLY |
|
|
SPACE |
X |
X |
Sadece liste değerlerini gösterir. Seçim yapılmasına izin vermez. |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
ANSWER |
|
|
X |
Seçilen buton değeri |
TABLES |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
T_SPOPLI |
LIKE |
SPOPLI |
|
Seçim listesi ve seçilenlerin olduğu tablo |
EXCEPTIONS |
Exception |
Tanım |
NOT_ENOUGH_ANSWERS |
|
TOO_MUCH_ANSWERS |
|
TOO_MUCH_MARKS |
|
Örnek 1: Bir listeden yalnızca bir seçime izin veren örnek.
DATA : lt_sel_tab TYPE STANDARD TABLE OF spopli,
ls_sel_tab TYPE spopli,
lv_answer(1).
ls_sel_tab-varoption = ‘Seçenek 1’.
APPEND ls_sel_tab TO lt_sel_tab.
ls_sel_tab-varoption = ‘Seçenek 2’.
APPEND ls_sel_tab TO lt_sel_tab.
CALL FUNCTION ‘POPUP_TO_DECIDE_LIST’
EXPORTING
cursorline = 1
start_col = 60
start_row = 4
textline1 = ‘Satır 1’
textline2 = ‘Satır 2’
titel = ‘Seçim yapınız’
IMPORTING
answer = lv_answer
TABLES
t_spopli = lt_sel_tab
EXCEPTIONS
not_enough_answers = 1
too_much_answers = 2
too_much_marks = 3
OTHERS = 4.
WRITE lv_answer.
Listeden seçim yaptıktan sonra ekrana seçilen satır numarasını yazar.
Örnek2: Bir listeden birden fazla seçim yapılabilmesine olanak sağlayan örnek.
DATA : lt_sel_tab TYPE STANDARD TABLE OF spopli,
ls_sel_tab TYPE spopli,
lv_answer(1).
ls_sel_tab-varoption = ‘Seçenek 1’.
APPEND ls_sel_tab TO lt_sel_tab.
ls_sel_tab-varoption = ‘Seçenek 2’.
APPEND ls_sel_tab TO lt_sel_tab.
ls_sel_tab-varoption = ‘Seçenek 3’.
APPEND ls_sel_tab TO lt_sel_tab.
ls_sel_tab-varoption = ‘Seçenek 4’.
APPEND ls_sel_tab TO lt_sel_tab.
CALL FUNCTION ‘POPUP_TO_DECIDE_LIST’
EXPORTING
cursorline = 2
mark_flag = ‘X’
mark_max = 4
start_col = 60
start_row = 10
textline1 = ‘Açıklama satırı 1’
titel = ‘Seçim yapınız’
IMPORTING
answer = lv_answer
TABLES
t_spopli = lt_sel_tab
EXCEPTIONS
not_enough_answers = 1
too_much_answers = 2
too_much_marks = 3
OTHERS = 4.
LOOP AT lt_sel_tab INTO ls_sel_tab WHERE selflag = ‘X’.
WRITE / ls_sel_tab-varoption.
ENDLOOP.
Listeden seçilenler daha sonra ekrana yazdırılırlar.
POPUP_WITH_TABLE_DISPLAY
Bir tablo içerisinden bir satırın seçilmesini sağlar. Pencere başlığı, başlangıç, bitiş pozisyonu ve gösterilecek tabloyu parametre olarak alır. Seçilen satırı “CHOISE” parametresi ile döner.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
ENDPOS_COL |
TYPE |
INT4 |
|
|
X |
Pencerenin bitiş pozisyonu (sütun) |
ENDPOS_ROW |
TYPE |
INT4 |
|
|
X |
Pencerenin bitiş pozisyonu (satır) |
STARTPOS_COL |
TYPE |
INT4 |
|
|
X |
Pencerenin başlangıç pozisyonu (sütun) |
STARTPOS_ROW |
TYPE |
INT4 |
|
|
X |
Pencerenin başlangıç pozisyonu (satır) |
TITLETEXT |
TYPE |
CHAR80 |
|
|
X |
Pencere başlık metni |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
CHOISE |
LIKE |
SY-TABIX |
X |
Seçilen satır numarası |
TABLES |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
VALUETAB |
|
|
|
Seçim tablosu |
EXCEPTIONS |
Exception |
Tanım |
BREAK_OFF |
|
|
|
|
|
|
|
|
|
TYPES: BEGIN OF ly_valuetab,
alan1(40),
alan2(40),
END OF ly_valuetab.
DATA : lt_valuetab TYPE STANDARD TABLE OF ly_valuetab,
ls_valuetab TYPE ly_valuetab,
lv_choise TYPE sy-tabix.
ls_valuetab-alan1 = ‘Birinci satır, birinci sütun’.
ls_valuetab-alan2 = ‘Birinci satır, ikinci sütun’.
APPEND ls_valuetab TO lt_valuetab.
ls_valuetab-alan1 = ‘İkinci satır, birinci sütun’.
ls_valuetab-alan2 = ‘İkinci satır, ikinci sütun’.
APPEND ls_valuetab TO lt_valuetab.
CALL FUNCTION ‘POPUP_WITH_TABLE_DISPLAY’
EXPORTING
endpos_col = 80
endpos_row = 5
startpos_col = 1
startpos_row = 1
titletext = ‘Seçim yapınız’
IMPORTING
choise = lv_choise
TABLES
valuetab = lt_valuetab
EXCEPTIONS
break_off = 1
OTHERS = 2.
WRITE lv_choise.
Listeden bir seçim yaptıktan sonra, seçilen satır numarası ekrana yazdırılır.
REUSE_ALV_POPUP_TO_SELECT
Bir tablo içerisinden bir veya daha fazla seçim yapılmasını sağlar veya sadece tabloyu görüntüler. Pencere başlığı, başlangıç, bitiş pozisyonu ve gösterilecek tablo gibi parametreler alır. Seçilen satırı “ES_SELFIELD” parametresi ile döner.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
I_TITLE |
|
|
|
X |
X |
Pencere başlık metni |
I_SELECTION |
|
|
‘X’ |
X |
X |
Gösterilen listeden seçim yapılmasına izin verir |
I_ALLOW_NO_SELECTION |
TYPE |
CHAR1 |
|
X |
X |
Bir değer seçilmeden de devam edilmesini sağlar |
I_ZEBRA |
|
|
SPACE |
X |
X |
Gölgeli gösterimi sağlar. |
I_SCREEN_START_COLUMN |
|
|
0 |
X |
X |
Pencerenin başlangıç pozisyonu (sütun) |
I_SCREEN_START_LINE |
|
|
0 |
X |
X |
Pencerenin başlangıç pozisyonu (satır) |
I_SCREEN_END_COLUMN |
|
|
0 |
X |
X |
Pencerenin bitiş pozisyonu (sütun) |
I_SCREEN_END_LINE |
|
|
0 |
X |
X |
Pencerenin bitiş pozisyonu (satır) |
I_CHECKBOX_FIELDNAME |
|
|
|
X |
X |
Checkbox olarak gösterilecek alan |
I_LINEMARK_FIELDNAME |
|
|
|
X |
X |
Satır seçimindeki renk bilgisi |
I_SCROLL_TO_SEL_LINE |
|
|
‘X’ |
X |
X |
Varsayılan seçime yönlendirme |
I_TABNAME |
|
|
|
|
X |
Gösterilecek tablo |
I_STRUCTURE_NAME |
LIKE |
DD02L-TABNAME |
|
X |
X |
Gösterilecek tablo structure’ ı |
IT_FIELDCAT |
TYPE |
SLIS_T_FIELDCAT_ALV |
|
X |
X |
Gösterilecek tablo field catalogu’ u |
IT_EXCLUDING |
TYPE |
SLIS_T_EXTAB |
|
X |
X |
Gizlenecek ALV fonksiyonları |
I_CALLBACK_PROGRAM |
LIKE |
SY-REPID |
|
X |
X |
Fonksiyonu çalıştıran program |
I_CALLBACK_USER_COMMAND |
TYPE |
SLIS_FORMNAME |
|
X |
X |
USER_COMMAND kullanılacaksa alt rutin ismi |
IS_PRIVATE |
TYPE |
SLIS_DATA_CALLER_EXIT |
|
X |
X |
Sadece dahili kullanım göstergesi |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
ES_SELFIELD |
TYPE |
SLIS_SELFIELD |
X |
Seçilen satır bilgileri |
E_EXIT |
|
|
X |
Kullanıcı tarafından iptal edildi göstergesi |
TABLES |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
T_OUTTAB |
|
|
|
Seçim tablosu |
EXCEPTIONS |
Exception |
Tanım |
PROGRAM_ERROR |
Program hatası |
|
|
|
|
|
|
|
|
|
|
|
Örnek 1: Seçim yapılmasına izin vermeyen sadece tablo içeriğini gösteren örnek.
DATA lt_spfli TYPE STANDARD TABLE OF spfli.
SELECT * FROM spfli INTO CORRESPONDING FIELDS OF TABLE lt_spfli.
CALL FUNCTION ‘REUSE_ALV_POPUP_TO_SELECT’
EXPORTING
i_title = ‘Uçuş bilgileri’
i_allow_no_selection = ‘X’
i_tabname = ‘SPFLI’
i_structure_name = ‘SPFLI’
i_zebra = ‘X’
TABLES
t_outtab = lt_spfli
EXCEPTIONS
program_error = 1
OTHERS = 2.
Örnek 2: ALV içerisinde seçilen satır numarasını gösteren örnek.
TYPE-POOLS: slis.
DATA: lt_outtab TYPE spfli OCCURS 0,
ls_selfield TYPE slis_selfield,
lv_exit(1).
START-OF-SELECTION.
SELECT * FROM spfli INTO TABLE lt_outtab.
CALL FUNCTION ‘REUSE_ALV_POPUP_TO_SELECT’
EXPORTING
i_title = ‘Seçim yapınız’
i_selection = ‘X’
i_zebra = ‘ ‘
i_screen_start_column = 0
i_screen_start_line = 0
i_screen_end_column = 0
i_screen_end_line = 0
i_scroll_to_sel_line = ‘X’
i_tabname = ‘LT_OUTTAB’
i_structure_name = ‘SPFLI’
IMPORTING
es_selfield = ls_selfield
e_exit = lv_exit
TABLES
t_outtab = lt_outtab
EXCEPTIONS
program_error = 1
OTHERS = 2.
WRITE ls_selfield-tabindex.
Listeden bir seçim yaptıktan sonra, seçilen satır numarası ekrana yazdırılır.
Örnek 3: ALV içerisinde mara tablosundan ilk 10 kayıt gösterilir. Seçilen malzeme kodu “MM03” işlem koduna aktarılır ve malzeme bilgileri gösterilir.
TYPE-POOLS slis.
DATA: lt_mara TYPE STANDARD TABLE OF mara,
ls_mara TYPE mara.
DATA: lv_selfield TYPE slis_selfield,
lv_exit TYPE c.
SELECT * UP TO 10 ROWS INTO TABLE lt_mara FROM mara.
CALL FUNCTION ‘REUSE_ALV_POPUP_TO_SELECT’
EXPORTING
i_title = ‘Malzeme seçimi’
i_tabname = ‘LT_MARA’
i_structure_name = ‘MARA’
IMPORTING
es_selfield = lv_selfield
e_exit = lv_exit
TABLES
t_outtab = lt_mara.
IF lv_exit IS INITIAL.
READ TABLE lt_mara INTO ls_mara INDEX lv_selfield-tabindex.
IF sy-subrc = 0.
SET PARAMETER ID ‘MAT’ FIELD ls_mara-matnr.
CALL TRANSACTION ‘MM03’ AND SKIP FIRST SCREEN.
ENDIF.
ENDIF.
Örnek 4: Seçim yapılacak ALV içerisinde tanımlı dil anahtarları gösterilir. ALV’ de T002 tablosunun tüm alanları değil field cataloga eklenen alanlar gösterilir. Seçilen dil anahtarına göre yeni bir ALV içerisinde seçim yapılan dili kullanan ülkeler gösterilir.
TYPE-POOLS: slis.
TYPES: BEGIN OF t_t002,
checkbox TYPE c,
spras TYPE t002-spras,
sptxt TYPE t002t-sptxt,
END OF t_t002.
DATA : lt_t002 TYPE STANDARD TABLE OF t_t002,
lt_t005 TYPE STANDARD TABLE OF t005.
TYPES: t_fieldcat TYPE slis_fieldcat_alv,
t_layout TYPE slis_layout_alv.
DATA : ls_fieldcat TYPE t_fieldcat,
ls_layout TYPE t_layout.
DATA lt_fieldcat TYPE STANDARD TABLE OF t_fieldcat.
DATA lv_program TYPE sy-repid.
CLEAR: ls_fieldcat, lt_fieldcat[].
ls_fieldcat-fieldname = ‘SPRAS’.
ls_fieldcat-tabname = ‘LT_T002’.
ls_fieldcat-seltext_m = ‘Dil Anahtarı’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = ‘SPTXT’.
ls_fieldcat-tabname = ‘LT_T002’.
ls_fieldcat-seltext_m = ‘Tanım’.
APPEND ls_fieldcat TO lt_fieldcat.
SELECT a~spras sptxt
FROM t002 AS a
INNER JOIN t002t AS b ON a~spras = b~sprsl
INTO CORRESPONDING FIELDS OF TABLE lt_t002
WHERE b~spras = sy-langu.
CALL FUNCTION ‘REUSE_ALV_POPUP_TO_SELECT’
EXPORTING
i_title = ‘Seçim yapınız’
i_tabname = ‘LT_T002’
i_checkbox_fieldname = ‘CHECKBOX’
it_fieldcat = lt_fieldcat
i_callback_program = lv_program
TABLES
t_outtab = lt_t002.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CHECK sy-subrc = 0.
DELETE lt_t002 WHERE checkbox NE ‘X’.
SELECT *
FROM t005
INTO CORRESPONDING FIELDS OF TABLE lt_t005
FOR ALL ENTRIES IN lt_t002
WHERE spras = lt_t002-spras.
lv_program = sy-repid.
CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY’
EXPORTING
i_callback_program = lv_program
i_structure_name = ‘T005’
TABLES
t_outtab = lt_t005.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Resmi dili seçilen değer olan ülkeler listelenir.
Örnek 5: Üç satır ve bir sütundan oluşan, bazı ALV fonksiyonları gizlenmiş bir örnek. Sadec
TYPE-POOLS: slis.
TYPES: BEGIN OF t_outtab,
text(60) TYPE c,
END OF t_outtab.
DATA: lt_outtab TYPE STANDARD TABLE OF t_outtab,
ls_outtab TYPE t_outtab,
lt_fieldcat TYPE slis_t_fieldcat_alv,
ls_fieldcat TYPE slis_fieldcat_alv,
lt_excluding TYPE slis_t_extab,
ls_excluding TYPE slis_extab,
lv_exit TYPE c.
ls_outtab-text = ‘İlk satır’. APPEND ls_outtab TO lt_outtab.
ls_outtab-text = ‘İkinci satır’. APPEND ls_outtab TO lt_outtab.
ls_outtab-text = ‘Üçüncü satır’. APPEND ls_outtab TO lt_outtab.
ls_fieldcat-col_pos = 1.
ls_fieldcat-fieldname = ‘TEXT’.
ls_fieldcat-outputlen = 60.
ls_fieldcat-seltext_m = ‘Açıklamalar’.
APPEND ls_fieldcat TO lt_fieldcat.
ls_excluding-fcode = ‘&ETA’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘%SC’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘%SC+’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&OUP’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&ODN’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&ILT’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&OL0’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&CRB’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&CRL’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&CRR’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&CRE’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&ALL’. APPEND ls_excluding TO lt_excluding.
ls_excluding-fcode = ‘&SAL’. APPEND ls_excluding TO lt_excluding.
CALL FUNCTION ‘REUSE_ALV_POPUP_TO_SELECT’
EXPORTING
i_title = ‘Bilgilendirme’
i_selection = ”
i_screen_start_column = 1
i_screen_start_line = 1
i_screen_end_column = 62
i_screen_end_line = 10
i_tabname = ‘LT_OUTTAB’
it_fieldcat = lt_fieldcat
it_excluding = lt_excluding
IMPORTING
e_exit = lv_exit
TABLES
t_outtab = lt_outtab.
POPUP_TO_SELECT_MONTH
Yıl ve ay bilgisi sormak için kullanılır.
IMPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Başlanıç d. |
Ops. |
Dğr atn. |
Parametre açıklaması |
ACTUAL_MONTH |
LIKE |
ISELLIST-MONTH |
|
|
X |
Varsayılan yıl ve ay |
FACTORY_CALENDAR |
LIKE |
TFACD-IDENT |
SPACE |
X |
X |
Fabrika takvimini dikkate al |
HOLIDAY_CALENDAR |
LIKE |
THOCI-IDENT |
SPACE |
X |
X |
Tatil takvimini dikkate al |
LANGUAGE |
LIKE |
SY-LANGU |
SY-LANGU |
X |
X |
Dil |
START_COLUMN |
LIKE |
SY-SCOLS |
8 |
X |
X |
Pencerenin başlangıç pozisyonu (sütun) |
START_ROW |
LIKE |
SY-SROWS |
5 |
X |
X |
Pencerenin başlangıç pozisyonu (satır) |
EXPORT |
Parametre |
Tanım tipi |
İlişkili tip |
Dğr atn. |
Parametre açıklaması |
SELECTED_MONTH |
LIKE |
ISELLIST-MONTH |
X |
Seçilen yıl ve ay değeri |
RETURN_CODE |
LIKE |
SY-SUBRC |
X |
İşlem sonucu |
EXCEPTIONS |
Exception |
Tanım |
FACTORY_CALENDAR_NOT_FOUND |
Fabrika takvimi bulunamadı |
HOLIDAY_CALENDAR_NOT_FOUND |
Tatil takvimi bulunamadı |
MONTH_NOT_FOUND |
Ay bulunamadı |
DATA : lv_month TYPE isellist-month,
lv_code TYPE sy-subrc.
CALL FUNCTION ‘POPUP_TO_SELECT_MONTH’
EXPORTING
actual_month = ‘201304’
language = sy-langu
start_column = 8
start_row = 5
IMPORTING
selected_month = lv_month
return_code = lv_code
EXCEPTIONS
factory_calendar_not_found = 1
holiday_calendar_not_found = 2
month_not_found = 3
OTHERS = 4.
IF lv_code = 0.
WRITE : lv_month, lv_code.
ENDIF.
Seçilen ay, yıl ve işlem sonucu ekrana yazdırılır.