POPUP FONKSİYONLARI

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.

Leave a Reply

Your email address will not be published. Required fields are marked *