* demos

* demos
This commit is contained in:
oblomov 2023-05-12 08:21:56 +02:00
parent 8309642e55
commit 53992d94d8
2 changed files with 68 additions and 34 deletions

View File

@ -110,6 +110,9 @@ CLASS z2ui5_cl_app_demo_35 IMPLEMENTATION.
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->header_content(
)->link(
text = 'Demo' target = '_blank'
href = 'https://twitter.com/OblomovDev/status/1656904560953237508'
)->link(
text = 'Source_Code' target = '_blank'
href = z2ui5_cl_xml_view=>hlp_get_source_code_url( app = me get = client->get( ) )

View File

@ -74,8 +74,8 @@ CLASS z2ui5_cl_app_demo_49 DEFINITION PUBLIC.
DATA mt_sort TYPE STANDARD TABLE OF ty_S_sort.
data:
begin of ms_layout,
DATA:
BEGIN OF ms_layout,
BEGIN OF s_table,
check_zebra TYPE abap_bool,
title TYPE string,
@ -83,7 +83,7 @@ data:
selmode TYPE string,
END OF s_table,
t_filter TYPE STANDARD TABLE OF ty_S_filter,
end of ms_layout.
END OF ms_layout.
TYPES:
BEGIN OF s_combobox,
@ -93,6 +93,12 @@ data:
TYPES ty_t_combo TYPE STANDARD TABLE OF s_combobox WITH EMPTY KEY.
CLASS-METHODS encode_base64
IMPORTING
val TYPE string
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
DATA client TYPE REF TO z2ui5_if_client.
@ -160,7 +166,7 @@ CLASS z2ui5_cl_app_demo_49 IMPLEMENTATION.
WHEN 'BUTTON_CUSTOM'.
client->popup_message_box( `custom action called` ).
when 'BUTTON_START'.
WHEN 'BUTTON_START'.
SELECT FROM z2ui5_t_draft
FIELDS uuid, uuid_prev, timestampl, uname
@ -350,20 +356,20 @@ ms_view-t_tab = CORRESPONDING #( mt_table ).
)->button( text = `Start` press = client->_event( `BUTTON_START` ) type = `Emphasized`
).
data(lo_box) = page->header( )->dynamic_page_header( pinnable = abap_true
DATA(lo_box) = page->header( )->dynamic_page_header( pinnable = abap_true
)->flex_box( alignItems = `Start` justifyContent = `SpaceBetween` ).
data(lt_filter) = ms_layout-t_filter.
DELETE lt_filter where selkz = abap_false.
DATA(lt_filter) = ms_layout-t_filter.
DELETE lt_filter WHERE selkz = abap_false.
loop at lt_filter REFERENCE INTO data(lr_filter)
where selkz = abap_true.
LOOP AT lt_filter REFERENCE INTO DATA(lr_filter)
WHERE selkz = abap_true.
lo_box->input( description = lr_filter->name ).
endloop.
ENDLOOP.
lo_box->button( text = `Change Filter (` && shift_right( conv string( lines( lt_filter ) ) ) && `)` press = client->_event( `POPUP_FILTER` ) ).
lo_box->button( text = `Change Filter (` && shift_right( CONV string( lines( lt_filter ) ) ) && `)` press = client->_event( `POPUP_FILTER` ) ).
@ -702,7 +708,9 @@ ms_view-t_tab = CORRESPONDING #( mt_table ).
lv_row = lv_row && cl_abap_char_utilities=>cr_lf.
ENDLOOP.
data(lv_bas64enc) = cl_web_http_utility=>encode_base64( lv_row ).
DATA lv_bas64enc TYPE string.
lv_bas64enc = encode_base64( lv_row ).
i_view->zz_plain( `<html:iframe src="data:text/csv;base64,` && lv_bas64enc && `" hidden="hidden" />`).
@ -710,4 +718,27 @@ ms_view-t_tab = CORRESPONDING #( mt_table ).
ENDMETHOD.
METHOD encode_base64.
TRY.
CALL METHOD ('CL_WEB_HTTP_UTILITY')=>encode_base64
EXPORTING
unencoded = val
RECEIVING
encoded = result.
CATCH cx_sy_dyn_call_illegal_class.
DATA(classname) = 'CL_HTTP_UTILITY'.
CALL METHOD (classname)=>encode_base64
EXPORTING
unencoded = val
RECEIVING
encoded = result.
ENDTRY.
ENDMETHOD.
ENDCLASS.