* cleanup

* Delete src/02/z2ui5_cl_cc_scroll.clas.abap

* Delete src/02/z2ui5_cl_cc_scroll.clas.xml

* Delete src/21 directory

* Delete src/22 directory

* Delete src/98 directory

* abaplint fixes

* naming

* clenaup cc

* z2ui5_cl_cc_file_uploader.clas.abap aktualisieren

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* z2ui5_cl_cc_focus.clas.abap aktualisieren

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* z2ui5_cl_cc_geolocation.clas.abap aktualisieren

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* z2ui5_cl_cc_info.clas.abap aktualisieren

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* z2ui5_cl_cc_messaging.clas.abap aktualisieren

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* cleanup

* cleanup

* Update src/02/01/z2ui5_cl_cc_file_uploader.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

---------

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
This commit is contained in:
oblomov 2023-11-30 09:59:50 +01:00 committed by GitHub
parent e277f26fce
commit 417b6708ba
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
68 changed files with 3841 additions and 5134 deletions

View File

@ -72,7 +72,7 @@ CLASS Z2UI5_CL_FW_APP IMPLEMENTATION.
lx_error = lx_error->previous.
ENDWHILE.
DATA(view) = client->factory_view( )->_ns_m( )->shell( )->illustratedmessage(
DATA(view) = z2ui5_cl_ui5=>_factory( )->_ns_m( )->shell( )->illustratedmessage(
enableformattedtext = abap_true
illustrationtype = `sapIllus-ErrorScreen`
title = `500 Internal Server Error`
@ -99,7 +99,7 @@ CLASS Z2UI5_CL_FW_APP IMPLEMENTATION.
).
DATA(page) = client->factory_view( )->_ns_m( )->shell(
DATA(page) = z2ui5_cl_ui5=>_factory( )->_ns_m( )->shell(
)->page( shownavbutton = abap_false ).
page->headercontent(

View File

@ -35,25 +35,12 @@ CLASS z2ui5_cl_fw_client IMPLEMENTATION.
ENDMETHOD.
METHOD z2ui5_if_client~cursor_set.
* mo_handler->ms_next-s_set-s_cursor = VALUE #(
* id = id
* cursorpos = cursorpos
* selectionend = selectionend
* selectionstart = selectionstart ).
ENDMETHOD.
METHOD z2ui5_if_client~get.
result = VALUE #(
event = mo_handler->ms_actual-event
check_launchpad_active = mo_handler->ms_actual-check_launchpad_active
t_event_arg = mo_handler->ms_actual-t_event_arg
* t_scroll_pos = mo_handler->ms_actual-t_scroll_pos
* t_message_manager = mo_handler->ms_actual-t_message_manager
s_draft = CORRESPONDING #( mo_handler->ms_db )
check_on_navigated = mo_handler->ms_actual-check_on_navigated
s_config = z2ui5_cl_fw_handler=>ss_config ).
@ -103,19 +90,6 @@ CLASS z2ui5_cl_fw_client IMPLEMENTATION.
ENDMETHOD.
METHOD z2ui5_if_client~timer_set.
* mo_handler->ms_next-s_set-s_timer-interval_ms = interval_ms.
* mo_handler->ms_next-s_set-s_timer-event_finished = event_finished.
ENDMETHOD.
METHOD z2ui5_if_client~title_set.
* mo_handler->ms_next-s_set-title = val.
ENDMETHOD.
METHOD z2ui5_if_client~nest_view_display.
@ -192,20 +166,6 @@ CLASS z2ui5_cl_fw_client IMPLEMENTATION.
ENDMETHOD.
METHOD z2ui5_if_client~scroll_position_set.
* mo_handler->ms_next-s_set-t_scroll = val.
ENDMETHOD.
METHOD z2ui5_if_client~url_param_set.
mo_handler->ms_next-s_set-search = val.
mo_handler->ms_actual-s_config-search = val.
ENDMETHOD.
METHOD z2ui5_if_client~view_destroy.
mo_handler->ms_next-s_set-s_view-check_destroy = abap_true.
@ -270,12 +230,6 @@ CLASS z2ui5_cl_fw_client IMPLEMENTATION.
ENDMETHOD.
METHOD z2ui5_if_client~factory_view.
result = z2ui5_cl_ui5=>_factory( check_popup ).
ENDMETHOD.
METHOD z2ui5_if_client~_bind_clear.
mo_handler->ms_db-t_attri[ name = val ]-check_dissolved = abap_false.
@ -285,32 +239,6 @@ CLASS z2ui5_cl_fw_client IMPLEMENTATION.
DELETE mo_handler->ms_db-t_attri.
ENDIF.
ENDLOOP.
RETURN.
* DATA(lr_in) = REF #( val ).
*
* FIELD-SYMBOLS <app> TYPE any.
* DATA object TYPE REF TO object.
* ASSIGN ('MO_HANDLER->MS_DB-APP') TO <app>.
* object = CAST #( <app> ).
*
* LOOP AT mo_handler->ms_db-t_attri REFERENCE INTO DATA(lr_bind).
** WHERE check_ready = abap_true.
*
* FIELD-SYMBOLS <attri> TYPE any.
* DATA(lv_name) = `OBJECT->` && lr_bind->name.
* ASSIGN (lv_name) TO <attri>.
*
* IF sy-subrc = 0.
* DATA lr_ref TYPE REF TO data.
* GET REFERENCE OF <attri> INTO lr_ref.
* IF lr_in = lr_ref.
* DELETE mo_handler->ms_db-t_attri.
* RETURN.
* ENDIF.
* ENDIF.
*
* ENDLOOP.
ENDMETHOD.
@ -374,16 +302,4 @@ CLASS z2ui5_cl_fw_client IMPLEMENTATION.
ENDMETHOD.
METHOD z2ui5_if_client~message_manager_add.
* mo_handler->ms_next-s_set-s_message_manager-t_message = val.
ENDMETHOD.
METHOD z2ui5_if_client~message_manager_clear.
* mo_handler->ms_next-s_set-s_message_manager-check_clear = abap_true.
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,10 @@ CLASS z2ui5_cl_fw_db DEFINITION
PUBLIC SECTION.
TYPES:
types ty_S_db2 type z2ui5_t_fw_01.
TYPES:
BEGIN OF ty_s_db,
id TYPE string,
id_prev TYPE string,
@ -19,7 +22,8 @@ CLASS z2ui5_cl_fw_db DEFINITION
CLASS-METHODS create
IMPORTING
!id TYPE string
!db TYPE ty_s_db .
!db TYPE ty_s_db.
CLASS-METHODS load_app
IMPORTING
!id TYPE clike
@ -31,7 +35,7 @@ CLASS z2ui5_cl_fw_db DEFINITION
!id TYPE clike
!check_load_app TYPE abap_bool DEFAULT abap_true
RETURNING
VALUE(result) TYPE z2ui5_t_draft .
VALUE(result) TYPE ty_S_db2.
CLASS-METHODS cleanup.
@ -47,7 +51,7 @@ ENDCLASS.
CLASS z2ui5_cl_fw_db IMPLEMENTATION.
CLASS Z2UI5_CL_FW_DB IMPLEMENTATION.
METHOD cleanup.
@ -60,7 +64,7 @@ CLASS z2ui5_cl_fw_db IMPLEMENTATION.
seconds = 60 * 60 * 4
).
DELETE FROM z2ui5_t_draft WHERE timestampl < @lv_four_hours_ago.
DELETE FROM z2ui5_t_fw_01 WHERE timestampl < @lv_four_hours_ago.
COMMIT WORK.
ENDMETHOD.
@ -71,15 +75,15 @@ CLASS z2ui5_cl_fw_db IMPLEMENTATION.
db-app->id = id.
DATA(lv_xml) = trans_any_2_xml( db ).
DATA(ls_draft) = VALUE z2ui5_t_draft( uuid = id
uuid_prev = db-id_prev
uuid_prev_app = db-id_prev_app
uuid_prev_app_stack = db-id_prev_app_stack
uname = z2ui5_cl_fw_utility=>func_get_user_tech( )
timestampl = z2ui5_cl_fw_utility=>time_get_timestampl( )
data = lv_xml ).
DATA(ls_draft) = VALUE ty_s_db2( id = id
id_prev = db-id_prev
id_prev_app = db-id_prev_app
id_prev_app_stack = db-id_prev_app_stack
uname = z2ui5_cl_fw_utility=>func_get_user_tech( )
timestampl = z2ui5_cl_fw_utility=>time_get_timestampl( )
data = lv_xml ).
MODIFY z2ui5_t_draft FROM @ls_draft.
MODIFY z2ui5_t_fw_01 FROM @ls_draft.
IF sy-subrc <> 0.
RAISE EXCEPTION TYPE z2ui5_cx_fw_error
EXPORTING
@ -126,15 +130,15 @@ CLASS z2ui5_cl_fw_db IMPLEMENTATION.
IF check_load_app = abap_true.
SELECT SINGLE *
FROM z2ui5_t_draft
WHERE uuid = @id
FROM z2ui5_t_fw_01
WHERE id = @id
INTO @result.
ELSE.
SELECT SINGLE uuid, uuid_prev, uuid_prev_app, uuid_prev_app_stack
FROM z2ui5_t_draft
WHERE uuid = @id
SELECT SINGLE id, id_prev, id_prev_app, id_prev_app_stack
FROM z2ui5_t_fw_01
WHERE id = @id
INTO CORRESPONDING FIELDS OF @result.
ENDIF.

View File

@ -7,9 +7,6 @@ CLASS z2ui5_cl_fw_handler DEFINITION
TYPES:
BEGIN OF ty_s_next2,
t_scroll TYPE z2ui5_if_client=>ty_t_name_value_int,
title TYPE string,
search TYPE string,
BEGIN OF s_view,
xml TYPE string,
check_destroy TYPE abap_bool,
@ -44,16 +41,6 @@ CLASS z2ui5_cl_fw_handler DEFINITION
check_destroy TYPE abap_bool,
check_update_model TYPE abap_bool,
END OF s_popover,
BEGIN OF s_cursor,
id TYPE string,
cursorpos TYPE string,
selectionstart TYPE i,
selectionend TYPE i,
END OF s_cursor,
BEGIN OF s_timer,
interval_ms TYPE i,
event_finished TYPE string,
END OF s_timer,
BEGIN OF s_msg_box,
type TYPE string,
text TYPE string,
@ -61,10 +48,6 @@ CLASS z2ui5_cl_fw_handler DEFINITION
BEGIN OF s_msg_toast,
text TYPE string,
END OF s_msg_toast,
BEGIN OF s_message_manager,
t_message TYPE z2ui5_if_client=>ty_t_message_manager,
check_clear TYPE abap_bool,
END OF s_message_manager,
END OF ty_s_next2.
TYPES:
@ -266,33 +249,6 @@ CLASS Z2UI5_CL_FW_HANDLER IMPLEMENTATION.
CATCH cx_root.
ENDTRY.
TRY.
DATA(lo_message) = so_body->get_attribute( `OMESSAGEMANAGER` ).
z2ui5_cl_fw_utility=>trans_ref_tab_2_tab(
EXPORTING
ir_tab_from = lo_message->mr_actual
IMPORTING
t_result = result->ms_actual-t_message_manager ).
CATCH cx_root.
ENDTRY.
TRY.
DATA(lo_scroll) = so_body->get_attribute( `OSCROLL` ).
z2ui5_cl_fw_utility=>trans_ref_tab_2_tab(
EXPORTING
ir_tab_from = lo_scroll->mr_actual
IMPORTING
t_result = result->ms_actual-t_scroll_pos ).
CATCH cx_root.
ENDTRY.
TRY.
DATA(lo_cursor) = so_body->get_attribute( `OCURSOR` ).
result->ms_actual-s_cursor-id = lo_cursor->get_attribute( `ID` )->get_val( ).
CATCH cx_root.
ENDTRY.
IF ss_config-search CS `scenario=LAUNCHPAD`.
result->ms_actual-check_launchpad_active = abap_true.
ENDIF.
@ -322,14 +278,6 @@ CLASS Z2UI5_CL_FW_HANDLER IMPLEMENTATION.
lo_resp->add_attribute( n = `ID`
v = ms_db-id ).
IF ms_next-s_set-search IS INITIAL.
lo_resp->add_attribute( n = `SEARCH`
v = ms_actual-s_config-search ).
ELSE.
lo_resp->add_attribute( n = `SEARCH`
v = ms_next-s_set-search ).
ENDIF.
result = lo_resp->mo_root->stringify( ).
z2ui5_cl_fw_db=>create( id = ms_db-id db = ms_db ).
@ -384,7 +332,7 @@ CLASS Z2UI5_CL_FW_HANDLER IMPLEMENTATION.
TRY.
DATA(ls_draft) = z2ui5_cl_fw_db=>read( id = result->ms_db-id check_load_app = abap_false ).
result->ms_db-id_prev_app_stack = ls_draft-uuid_prev_app_stack.
result->ms_db-id_prev_app_stack = ls_draft-id_prev_app_stack.
CATCH cx_root.
result->ms_db-id_prev_app_stack = ms_db-id_prev_app_stack.
ENDTRY.

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>Z2UI5_T_DRAFT</TABNAME>
<TABNAME>Z2UI5_T_FW_01</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<CLIDEP>X</CLIDEP>
@ -13,7 +13,7 @@
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>Z2UI5_T_DRAFT</TABNAME>
<TABNAME>Z2UI5_T_FW_01</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
@ -29,7 +29,7 @@
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>UUID</FIELDNAME>
<FIELDNAME>ID</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
@ -40,7 +40,7 @@
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>UUID_PREV</FIELDNAME>
<FIELDNAME>ID_PREV</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000064</INTLEN>
@ -50,7 +50,7 @@
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>UUID_PREV_APP</FIELDNAME>
<FIELDNAME>ID_PREV_APP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000064</INTLEN>
@ -60,7 +60,7 @@
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>UUID_PREV_APP_STACK</FIELDNAME>
<FIELDNAME>ID_PREV_APP_STACK</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000064</INTLEN>
@ -93,12 +93,6 @@
<MASK> STRG</MASK>
</DD03P>
</DD03P_TABLE>
<TABL_EXTRAS>
<TDDAT>
<TABNAME>Z2UI5_T_DRAFT</TABNAME>
<CCLASS>CUS_DEV_SUP_DA</CCLASS>
</TDDAT>
</TABL_EXTRAS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abap2UI5 - obsolet</CTEXT>
<CTEXT>abap2UI5 - cc fw</CTEXT>
</DEVC>
</asx:values>
</asx:abap>

View File

@ -1,42 +1,14 @@
CLASS z2ui5_cl_cc_file_uploader DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
class Z2UI5_CL_CC_FILE_UPLOADER definition
public
final
create public .
PUBLIC SECTION.
METHODS control
IMPORTING
!value TYPE clike OPTIONAL
!path TYPE clike OPTIONAL
!placeholder TYPE clike OPTIONAL
!upload TYPE clike OPTIONAL
!icononly TYPE clike OPTIONAL
!buttononly TYPE clike OPTIONAL
!buttontext TYPE clike OPTIONAL
!uploadbuttontext TYPE clike OPTIONAL
!checkdirectupload TYPE clike OPTIONAL
!filetype TYPE clike OPTIONAL
!visible TYPE clike OPTIONAL
!style TYPE clike OPTIONAL
!icon TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(r_js) TYPE string.
public section.
class-methods GET_JS
returning
value(R_JS) type STRING .
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
@ -46,35 +18,6 @@ ENDCLASS.
CLASS Z2UI5_CL_CC_FILE_UPLOADER IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `FileUploader`
ns = `z2ui5`
t_prop = VALUE #( ( n = `placeholder` v = placeholder )
( n = `upload` v = upload )
( n = `path` v = path )
( n = `value` v = value )
( n = `iconOnly` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( icononly ) )
( n = `buttonOnly` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( buttononly ) )
( n = `visible` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( visible ) )
( n = `buttonText` v = buttontext )
( n = `uploadButtonText` v = uploadbuttontext )
( n = `fileType` v = filetype )
( n = `style` v = style )
( n = `icon` v = icon )
( n = `checkDirectUpload` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( checkdirectupload ) ) ) ).
ENDMETHOD.
METHOD get_js.
r_js = `jQuery.sap.declare("z2ui5.FileUploader");` && |\n| &&
@ -246,11 +189,4 @@ CLASS Z2UI5_CL_CC_FILE_UPLOADER IMPLEMENTATION.
ENDMETHOD.
METHOD load_cc.
DATA(js) = get_js( ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( js )->get_parent( ).
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_FILE_UPLOADER</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>ui5 control - file uploader</DESCRIPT>
<DESCRIPT>cc - file uploader</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -5,30 +5,11 @@ CLASS z2ui5_cl_cc_focus DEFINITION
PUBLIC SECTION.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view optional.
METHODS control
IMPORTING
focusid TYPE clike OPTIONAL
selectionstart TYPE clike OPTIONAL
selectionend TYPE clike OPTIONAL
setupdate TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
@ -37,28 +18,6 @@ ENDCLASS.
CLASS Z2UI5_CL_CC_FOCUS IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `Focus`
ns = `z2ui5`
t_prop = VALUE #(
( n = `setUpdate` v = setupdate )
( n = `selectionStart` v = selectionstart )
( n = `selectionEnd` v = selectionend )
( n = `focusId` v = focusid )
) ).
ENDMETHOD.
METHOD get_js.
result = `jQuery.sap.declare("z2ui5.Focus");` && |\n| &&
@ -102,9 +61,4 @@ CLASS Z2UI5_CL_CC_FOCUS IMPLEMENTATION.
ENDMETHOD.
METHOD load_cc.
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( get_js( ) )->get_parent( ).
ENDMETHOD.
ENDCLASS.

View File

@ -5,35 +5,11 @@ CLASS z2ui5_cl_cc_geolocation DEFINITION
PUBLIC SECTION.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
finished TYPE clike OPTIONAL
longitude TYPE any OPTIONAL
latitude TYPE any OPTIONAL
altitude TYPE any OPTIONAL
accuracy TYPE any OPTIONAL
altitudeaccuracy TYPE any OPTIONAL
speed TYPE any OPTIONAL
heading TYPE any OPTIONAL
enablehighaccuracy TYPE any OPTIONAL
timeout TYPE any OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(r_js) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
@ -41,39 +17,6 @@ ENDCLASS.
CLASS z2ui5_cl_cc_geolocation IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `Geolocation`
ns = `z2ui5`
t_prop = VALUE #(
( n = `finished` v = finished )
( n = `longitude` v = longitude )
( n = `latitude` v = latitude )
( n = `altitude` v = altitude )
( n = `accuracy` v = accuracy )
( n = `altitudeAccuracy` v = altitudeaccuracy )
( n = `speed` v = speed )
( n = `heading` v = heading )
( n = `enableHighAccuracy` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( enablehighaccuracy ) )
( n = `timeout` v = timeout )
) ).
ENDMETHOD.
METHOD load_cc.
data(js) = get_js( ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( js )->get_parent( ).
ENDMETHOD.
METHOD get_js.

View File

@ -0,0 +1,45 @@
CLASS z2ui5_cl_cc_history DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
CLASS-METHODS get_js
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS Z2UI5_CL_CC_HISTORY IMPLEMENTATION.
METHOD get_js.
result = `jQuery.sap.declare("z2ui5.History");` && |\n| &&
`sap.ui.require(["sap/ui/core/Control"], (Control)=>{` && |\n| &&
` "use strict";` && |\n| &&
` return Control.extend("z2ui5.History", {` && |\n| &&
` metadata: {` && |\n| &&
` properties: {` && |\n| &&
` search: {` && |\n| &&
` type: "string"` && |\n| &&
` },` && |\n| &&
` }` && |\n| &&
` },` && |\n| &&
` setSearch(val) {` && |\n| &&
` this.setProperty("search", val);` && |\n| &&
` history.replaceState(null, null, window.location.pathname + val );` && |\n| &&
` },` && |\n| &&
` renderer(oRm, oControl) {}` && |\n| &&
` });` && |\n| &&
` });`.
ENDMETHOD.
ENDCLASS.

View File

@ -3,9 +3,9 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_XML_VIEW_CC_FACTORY</CLSNAME>
<CLSNAME>Z2UI5_CL_CC_HISTORY</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>cc - xml view factory</DESCRIPT>
<DESCRIPT>cc - history.replaceState</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -5,69 +5,17 @@ CLASS z2ui5_cl_cc_info DEFINITION
PUBLIC SECTION.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
finished TYPE clike OPTIONAL
ui5_version TYPE any OPTIONAL
ui5_gav TYPE any OPTIONAL
ui5_theme TYPE any OPTIONAL
device_os TYPE any OPTIONAL
device_systemtype TYPE any OPTIONAL
device_browser TYPE any OPTIONAL
preferred parameter FINISHED
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(r_js) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_cc_info IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
method control.
result = mo_view.
mo_view->_generic( name = `Info`
ns = `z2ui5`
t_prop = VALUE #( ( n = `ui5_version` v = ui5_version )
( n = `ui5_gav` v = ui5_gav )
( n = `finished` v = finished )
( n = `ui5_theme` v = ui5_theme )
( n = `device_os` v = device_os )
( n = `device_systemtype` v = device_systemtype )
( n = `device_browser` v = device_browser )
) ).
ENDMETHOD.
METHOD load_cc.
data(js) = get_js( ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( js )->get_parent( ).
ENDMETHOD.
CLASS Z2UI5_CL_CC_INFO IMPLEMENTATION.
METHOD get_js.

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_INFO</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>cc - browser info</DESCRIPT>
<DESCRIPT>cc - frontend info</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -18,27 +18,11 @@ CLASS z2ui5_cl_cc_messaging DEFINITION
END OF ty_s_item.
TYPES ty_t_items TYPE STANDARD TABLE OF ty_s_item WITH DEFAULT KEY ##NEEDED.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
items TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
@ -46,25 +30,6 @@ ENDCLASS.
CLASS z2ui5_cl_cc_messaging IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `Messaging`
ns = `z2ui5`
t_prop = VALUE #( ( n = `items` v = items )
) ).
ENDMETHOD.
METHOD get_js.
result = `try { jQuery.sap.require("sap.ui.core.Messaging"); jQuery.sap.declare("z2ui5.Messaging");` && |\n| &&
@ -152,9 +117,4 @@ CLASS z2ui5_cl_cc_messaging IMPLEMENTATION.
ENDMETHOD.
METHOD load_cc.
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( get_js( ) )->get_parent( ).
ENDMETHOD.
ENDCLASS.

View File

@ -1,4 +1,4 @@
CLASS z2ui5_cl_cc_scroll DEFINITION
CLASS z2ui5_cl_cc_scrolling DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
@ -12,65 +12,28 @@ CLASS z2ui5_cl_cc_scroll DEFINITION
END OF ty_s_item.
TYPES ty_t_item TYPE STANDARD TABLE OF ty_s_item WITH DEFAULT KEY ##NEEDED.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
setupdate TYPE clike OPTIONAL
items TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_cc_scroll IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `Scroll`
ns = `z2ui5`
t_prop = VALUE #(
( n = `setUpdate` v = setupdate )
( n = `items` v = items )
) ).
ENDMETHOD.
CLASS z2ui5_cl_cc_scrolling IMPLEMENTATION.
METHOD get_js.
result = `debugger; jQuery.sap.declare("z2ui5.Scroll");` && |\n| &&
result = `jQuery.sap.declare("z2ui5.Scrolling");` && |\n| &&
`sap.ui.require([` && |\n| &&
` "sap/ui/core/Control",` && |\n| &&
`], (Control) => {` && |\n| &&
` "use strict";` && |\n| &&
|\n| &&
` return Control.extend("z2ui5.Scroll", {` && |\n| &&
` return Control.extend("z2ui5.Scrolling", {` && |\n| &&
` metadata: {` && |\n| &&
` properties: {` && |\n| &&
` setUpdate: { type: "boolean" , defaultValue: true},` && |\n| &&
@ -122,10 +85,4 @@ CLASS z2ui5_cl_cc_scroll IMPLEMENTATION.
`});`.
ENDMETHOD.
METHOD load_cc.
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( get_js( ) )->get_parent( ).
ENDMETHOD.
ENDCLASS.

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_SCROLL</CLSNAME>
<CLSNAME>Z2UI5_CL_CC_SCROLLING</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>cc - Scrolling</DESCRIPT>
<STATE>1</STATE>

View File

@ -5,27 +5,11 @@ CLASS z2ui5_cl_cc_timer DEFINITION
PUBLIC SECTION.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view optional.
METHODS control
IMPORTING
finished TYPE clike OPTIONAL
delayms TYPE clike OPTIONAL
checkrepeat TYPE clike OPTIONAL
checkActive TYPE clike OPTIONAL
PREFERRED PARAMETER finished
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
@ -33,31 +17,9 @@ ENDCLASS.
CLASS Z2UI5_CL_CC_TIMER IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `Timer`
ns = `z2ui5`
t_prop = VALUE #( ( n = `delayMS` v = delayms )
( n = `finished` v = finished )
( n = `checkActive` v = checkActive )
( n = `checkRepeat` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( checkrepeat ) )
) ).
ENDMETHOD.
METHOD get_js.
result = ` jQuery.sap.declare("z2ui5.Timer");` && |\n| &&
result = `jQuery.sap.declare("z2ui5.Timer");` && |\n| &&
`sap.ui.require([` && |\n| &&
` "sap/ui/core/Control"` && |\n| &&
`], (Control) => {` && |\n| &&

View File

@ -5,23 +5,11 @@ CLASS z2ui5_cl_cc_title DEFINITION
PUBLIC SECTION.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view optional.
METHODS control
IMPORTING
title TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
@ -29,24 +17,6 @@ ENDCLASS.
CLASS Z2UI5_CL_CC_TITLE IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `Title`
ns = `z2ui5`
t_prop = VALUE #( ( n = `title` v = title ) ) ).
ENDMETHOD.
METHOD get_js.
result = `jQuery.sap.declare("z2ui5.Title");` && |\n| &&

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abap2UI5 - view renderer v1 (xml)</CTEXT>
<CTEXT>abap2UI5 - cc ext</CTEXT>
</DEVC>
</asx:values>
</asx:abap>

View File

@ -14,11 +14,7 @@ CLASS z2ui5_cl_cc_bwipjs DEFINITION
END OF ty_s_barcode.
TYPES ty_t_barcode TYPE STANDARD TABLE OF ty_s_barcode WITH EMPTY KEY.
CONSTANTS cv_src TYPE string VALUE `https://cdnjs.cloudflare.com/ajax/libs/bwip-js/4.1.1/bwip-js-min.js`.
METHODS load_lib
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CONSTANTS cv_src TYPE string VALUE `https://cdnjs.cloudflare.com/ajax/libs/bwip-js/4.1.1/bwip-js-min.js` ##NEEDED.
class-METHODS get_t_barcode_types
RETURNING
@ -28,83 +24,18 @@ CLASS z2ui5_cl_cc_bwipjs DEFINITION
RETURNING
VALUE(r_js) TYPE string.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
bcid TYPE clike OPTIONAL
text TYPE clike OPTIONAL
scale TYPE clike OPTIONAL
height TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_cc_bwipjs IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD load_lib.
result = mo_view->_cc_plain_xml( `<html:script type="text/javascript" src="` && cv_src && `" />` ).
ENDMETHOD.
METHOD get_t_barcode_types.
result = VALUE #(
( sym = 'ean5' desc = 'EAN-5' text = '90200' opts = 'includetext guardwhitespace' )
( sym = 'ean2' desc = 'EAN-2' text = '05' opts = 'includetext guardwhitespace' )
( sym = 'ean13' desc = 'EAN-13' text = '9520123456788' opts = 'includetext guardwhitespace' )
( sym = 'upca' desc = 'UPC-A' text = '012345000058' opts = 'includetext' )
( sym = 'isbn' desc = 'ISBN' text = '978-1-56581-231-4 90000' opts = 'includetext guardwhitespace' )
( sym = 'qrcode' desc = 'QR Code' text = 'http://goo.gl/0bis' opts = 'eclevel=M' )
).
ENDMETHOD.
METHOD load_cc.
data(js) = get_js( ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( js ).
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `bwipjs`
ns = `z2ui5`
t_prop = VALUE #( ( n = `bcid` v = bcid )
( n = `text` v = text )
( n = `scale` v = scale )
( n = `height` v = height )
) ).
ENDMETHOD.
CLASS Z2UI5_CL_CC_BWIPJS IMPLEMENTATION.
METHOD get_js.
r_js = `debugger; jQuery.sap.declare("z2ui5.bwipjs");` && |\n| &&
r_js = `jQuery.sap.declare("z2ui5.bwipjs");` && |\n| &&
|\n| &&
` sap.ui.require([` && |\n| &&
` "sap/ui/core/Control",` && |\n| &&
@ -172,4 +103,17 @@ CLASS z2ui5_cl_cc_bwipjs IMPLEMENTATION.
ENDMETHOD.
METHOD get_t_barcode_types.
result = VALUE #(
( sym = 'ean5' desc = 'EAN-5' text = '90200' opts = 'includetext guardwhitespace' )
( sym = 'ean2' desc = 'EAN-2' text = '05' opts = 'includetext guardwhitespace' )
( sym = 'ean13' desc = 'EAN-13' text = '9520123456788' opts = 'includetext guardwhitespace' )
( sym = 'upca' desc = 'UPC-A' text = '012345000058' opts = 'includetext' )
( sym = 'isbn' desc = 'ISBN' text = '978-1-56581-231-4 90000' opts = 'includetext guardwhitespace' )
( sym = 'qrcode' desc = 'QR Code' text = 'http://goo.gl/0bis' opts = 'eclevel=M' )
).
ENDMETHOD.
ENDCLASS.

View File

@ -9,10 +9,8 @@ CLASS z2ui5_cl_cc_camera_picture DEFINITION
RETURNING
VALUE(r_js) TYPE string.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
@ -22,7 +20,7 @@ CLASS z2ui5_cl_cc_camera_picture IMPLEMENTATION.
METHOD get_js.
r_js = ` debugger; jQuery.sap.declare("z2ui5.CameraPicture"); sap.ui.require([` && |\n| &&
r_js = `jQuery.sap.declare("z2ui5.CameraPicture"); sap.ui.require([` && |\n| &&
` "sap/ui/core/Control"` && |\n| &&
`], function (Control) {` && |\n| &&
` "use strict";` && |\n| &&
@ -128,5 +126,4 @@ CLASS z2ui5_cl_cc_camera_picture IMPLEMENTATION.
`});`.
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_CAMERA_PICTURE</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>MediaService - take a picture</DESCRIPT>
<DESCRIPT>device capability - camera picture</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -0,0 +1,84 @@
CLASS z2ui5_cl_cc_demo_output DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
CLASS-METHODS get_style
RETURNING
VALUE(result) TYPE string.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_cc_demo_output IMPLEMENTATION.
METHOD get_style.
result = `<html:style type="text/css">body {` && |\n| &&
` font-family: Arial;` && |\n| &&
` font-size: 90%;` && |\n| &&
`}` && |\n| &&
`table {` && |\n| &&
` font-family: Arial;` && |\n| &&
` font-size: 90%;` && |\n| &&
`}` && |\n| &&
`caption {` && |\n| &&
` font-family: Arial;` && |\n| &&
` font-size: 90%;` && |\n| &&
` font-weight:bold;` && |\n| &&
` text-align:left;` && |\n| &&
`}` && |\n| &&
`span.heading1 {` && |\n| &&
` font-size: 150%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.heading2 {` && |\n| &&
` font-size: 135%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.heading3 {` && |\n| &&
` font-size: 120%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.heading4 {` && |\n| &&
` font-size: 105%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.normal {` && |\n| &&
` font-size: 100%;` && |\n| &&
` color:#000000;` && |\n| &&
` font-weight:normal;` && |\n| &&
`}` && |\n| &&
`span.nonprop {` && |\n| &&
` font-family: Courier New;` && |\n| &&
` font-size: 100%;` && |\n| &&
` color:#000000;` && |\n| &&
` font-weight:400;` && |\n| &&
`}` && |\n| &&
`span.nowrap {` && |\n| &&
` white-space:nowrap;` && |\n| &&
`}` && |\n| &&
`span.nprpnwrp {` && |\n| &&
` font-family: Courier New;` && |\n| &&
` font-size: 100%;` && |\n| &&
` color:#000000;` && |\n| &&
` font-weight:400;` && |\n| &&
` white-space:nowrap;` && |\n| &&
`}` && |\n| &&
`tr.header {` && |\n| &&
` background-color:#D3D3D3;` && |\n| &&
`}` && |\n| &&
`tr.body {` && |\n| &&
` background-color:#EFEFEF;` && |\n| &&
`}` && |\n| &&
`</html:style>`.
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_DEMO_OUTPUT</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>sap gui - cl_demo_output</DESCRIPT>
<DESCRIPT>cc for cl_demo_ouput</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -112,34 +112,6 @@
on_close_click TYPE string,
END OF ty_config.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
METHODS load_cc
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS constructor
IMPORTING
!view TYPE REF TO z2ui5_cl_xml_view.
METHODS load_lib
IMPORTING
!js_url TYPE clike OPTIONAL
!css_url TYPE clike OPTIONAL
!local_css TYPE abap_bool OPTIONAL
!local_js TYPE abap_bool OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS set_driver_configs
IMPORTING
!steps_config TYPE ty_config OPTIONAL
!highlight_config TYPE ty_config_steps OPTIONAL
!highlight_driver_config TYPE ty_config OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_css_local
RETURNING
VALUE(result) TYPE string.
@ -148,14 +120,6 @@
RETURNING
VALUE(result) TYPE string.
CLASS-METHODS get_js_cc_test2
RETURNING
VALUE(result) TYPE string.
CLASS-METHODS get_js_cc_test
RETURNING
VALUE(result) TYPE string.
CLASS-METHODS get_js_cc
RETURNING
VALUE(result) TYPE string.
@ -179,13 +143,6 @@ ENDCLASS.
CLASS Z2UI5_CL_CC_DRIVER_JS IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD get_css_local.
result = `` && |\n| &&
`.driver-active .driver-overlay,.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}` &&
@ -236,82 +193,6 @@ METHOD get_js_cc.
ENDMETHOD.
METHOD get_js_cc_test.
result = `debugger; jQuery.sap.declare("z2ui5.DriverJS"); sap.ui.require([ ],` && |\n| &&
` function() {` && |\n| &&
` "use strict";` && |\n| &&
|\n| &&
` var DriverJS = {};` && |\n| &&
|\n| &&
` DriverJS.highlight = function() {` && |\n| &&
|\n| &&
` if( driver !== undefined ) { if ( highlight_driver_config !== undefined ) { if (highlight_config !== undefined ) {` && |\n| &&
` driverObj = driver(highlight_driver_config);` && |\n| &&
` driverObj.highlight(highlight_config);` && |\n| &&
` } }};` && |\n| &&
` }` && |\n| &&
|\n| &&
` return DriverJS;` && |\n| &&
` }, /* bExport= */ true);`.
ENDMETHOD.
METHOD get_js_cc_test2.
result = `debugger; jQuery.sap.declare("z2ui5.DriverJS");` && |\n| &&
`sap.ui.require([` && |\n| &&
` "sap/ui/core/Control"` && |\n| &&
`], (Control) => {` && |\n| &&
` "use strict";` && |\n| &&
|\n| &&
` return Control.extend("z2ui5.DriverJS", {` && |\n| &&
` metadata : {` && |\n| &&
` properties: {` && |\n| &&
` title: {` && |\n| &&
` type: "string",` && |\n| &&
` defaultValue: ""` && |\n| &&
` },` && |\n| &&
` }` && |\n| &&
` },` && |\n| &&
|\n| &&
` init () {` && |\n| &&
|\n| &&
` },` && |\n| &&
|\n| &&
` drive() {` && |\n| &&
` if( driver !== undefined ) { if( config !== undefined ) {` && |\n| &&
` driverObj = driver(config);` && |\n| &&
` driverObj.drive();` && |\n| &&
` } };` && |\n| &&
` },` && |\n| &&
` highlight() {` && |\n| &&
` if( driver !== undefined ) { if ( highlight_driver_config !== undefined ) { if (highlight_config !== undefined ) {` && |\n| &&
` driverObj = driver(highlight_driver_config);` && |\n| &&
` driverObj.highlight(highlight_config);` && |\n| &&
` } }};` && |\n| &&
` },` && |\n| &&
` onAfterRendering() {` && |\n| &&
|\n| &&
` },` && |\n| &&
` renderer(oRm, oControl) {` && |\n| &&
` oButton = new Button({` && |\n| &&
` text: "highlight",` && |\n| &&
` press: function (oEvent) {` && |\n| &&
` oControl.highlight({` && |\n| &&
` someData : "some data I want to pass along with the event object"` && |\n| &&
` });` && |\n| &&
` }` && |\n| &&
` }); ` &&
` oRm.renderControl(oButton); ` && |\n| &&
` }` && |\n| &&
` });` && |\n| &&
`});`.
ENDMETHOD.
METHOD get_js_config.
DATA(ls_config) = i_steps_config.
@ -589,49 +470,4 @@ METHOD get_js_cc_test.
ENDMETHOD.
METHOD load_cc.
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( get_js_cc( ) )->get_parent( ).
ENDMETHOD.
METHOD load_lib.
* DATA(js) = ``.
DATA(css) = ``.
IF css_url IS INITIAL.
IF local_css = abap_true.
css = css && `<html:style>` && get_css_local( ) && `</html:style>` && |\n|.
css = css && get_css_local( ) && |\n|.
ENDIF.
ELSE.
css = css && css_url && |\n|.
ENDIF.
IF js_url IS INITIAL.
IF local_js = abap_true.
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( get_js_local( ) )->get_parent( ).
ENDIF.
ELSE.
result = mo_view->_generic( ns = `html` name = `script` t_prop = VALUE #( ( n = `src` v = js_url ) ) )->get_parent( ).
ENDIF.
result = mo_view->_generic( ns = `html` name = `style` )->_cc_plain_xml( css ).
ENDMETHOD.
METHOD set_driver_configs.
data(drive_js) = get_js_config(
i_steps_config = steps_config
i_highlight_config = highlight_config
i_highlight_driver_config = highlight_driver_config ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( drive_js ).
ENDMETHOD.
ENDCLASS.

View File

@ -5,29 +5,11 @@ CLASS z2ui5_cl_cc_font_awesome_icons DEFINITION
PUBLIC SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view .
METHODS load_icons
IMPORTING
!font_uri TYPE clike
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS load_animation_js
IMPORTING
!faw_js_url TYPE clike
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS constructor
IMPORTING
!view TYPE REF TO z2ui5_cl_xml_view.
CLASS-METHODS get_js_icon
IMPORTING
i_font_uri TYPE clike
!i_font_uri TYPE clike
RETURNING
VALUE(r_js) TYPE string.
VALUE(r_js) TYPE string .
PROTECTED SECTION.
PRIVATE SECTION.
@ -37,31 +19,9 @@ ENDCLASS.
CLASS z2ui5_cl_cc_font_awesome_icons IMPLEMENTATION.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD load_animation_js.
result = mo_view->_generic( ns = `html` name = `script` t_prop = VALUE #( ( n = `src` v = faw_js_url ) ) )->get_parent( ).
ENDMETHOD.
METHOD load_icons.
DATA(js) = get_js_icon( font_uri ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( js )->get_parent( ).
ENDMETHOD.
METHOD get_js_icon.
r_js = `debugger;` && |\n| &&
r_js = `` && |\n| &&
* `const metadataURI = "` && metadata_uri && `";` && |\n| &&
* `const oFontMetadata = ` && lcl_metadata=>get_fonts_metadata( ) && |\n| &&
* `const oFontBrandsMetadata = ` && lcl_metadata=>get_brands_fonts_metadata( ) && |\n| &&
@ -141,5 +101,4 @@ CLASS z2ui5_cl_cc_font_awesome_icons IMPLEMENTATION.
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_FONT_AWESOME_ICONS</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>font awsome icons load</DESCRIPT>
<DESCRIPT>font awsome icons library</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -5,76 +5,22 @@ CLASS z2ui5_cl_cc_spreadsheet DEFINITION
PUBLIC SECTION.
METHODS load_cc
IMPORTING
!columnconfig TYPE clike
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
tableid TYPE clike
type TYPE clike OPTIONAL
text TYPE clike OPTIONAL
icon TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
CLASS-METHODS get_js
IMPORTING
i_columnconfig TYPE clike
!i_columnconfig TYPE clike
RETURNING
VALUE(r_js) TYPE string.
VALUE(r_js) TYPE string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
CLASS Z2UI5_CL_CC_SPREADSHEET IMPLEMENTATION.
METHOD CONSTRUCTOR.
ME->MO_VIEW = VIEW.
ENDMETHOD.
METHOD control.
result = mo_view.
mo_view->_generic( name = `ExportSpreadsheet`
ns = `z2ui5`
t_prop = VALUE #( ( n = `tableId` v = tableid )
( n = `text` v = text )
( n = `icon` v = icon )
( n = `type` v = type )
) ).
ENDMETHOD.
METHOD load_cc.
DATA js TYPE string.
js = get_js( columnconfig ).
* result = mo_view->_cc_plain_xml( `<html:script>` && js && `</html:script>` ).
result = mo_view->_generic( ns = `html` name = `script` )->_cc_plain_xml( js ).
ENDMETHOD.
CLASS z2ui5_cl_cc_spreadsheet IMPLEMENTATION.
METHOD get_js.
r_js = ` jQuery.sap.declare("z2ui5.ExportSpreadsheet");` && |\n| &&
|\n| &&
` sap.ui.require([` && |\n| &&
` "sap/ui/core/Control",` && |\n| &&
` "sap/m/Button",` && |\n| &&

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_CC_SPREADSHEET</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>ui5 control - spreadsheet</DESCRIPT>
<DESCRIPT>ui5 spreadheet control</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abap2UI5 - custom controls fw (cc)</CTEXT>
<CTEXT>abap2UI5 - custom controls (cc)</CTEXT>
</DEVC>
</asx:values>
</asx:abap>

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abap2UI5 - view renderer v2 (ui5)</CTEXT>
<CTEXT>abap2UI5 - view parser v1 (xml)</CTEXT>
</DEVC>
</asx:values>
</asx:abap>

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_XML_VIEW</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abap2UI5 - view parser</DESCRIPT>
<DESCRIPT>abap2UI5 - view renderer</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -7,72 +7,68 @@ CLASS z2ui5_cl_xml_view_cc DEFINITION
METHODS camera_picture
IMPORTING
id TYPE clike OPTIONAL
value TYPE clike OPTIONAL
press TYPE clike OPTIONAL
autoplay TYPE clike OPTIONAL
OnPhoto TYPE clike OPTIONAL
!id TYPE clike OPTIONAL
!value TYPE clike OPTIONAL
!press TYPE clike OPTIONAL
!autoplay TYPE clike OPTIONAL
!onphoto TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS bwip_js
IMPORTING
bcid TYPE clike OPTIONAL
text TYPE clike OPTIONAL
scale TYPE clike OPTIONAL
height TYPE clike OPTIONAL
!bcid TYPE clike OPTIONAL
!text TYPE clike OPTIONAL
!scale TYPE clike OPTIONAL
!height TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS demo_output
IMPORTING
val TYPE clike OPTIONAL
!val TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS focus
IMPORTING
focusid TYPE clike OPTIONAL
selectionstart TYPE clike OPTIONAL
selectionend TYPE clike OPTIONAL
setupdate TYPE clike OPTIONAL
!focusid TYPE clike OPTIONAL
!selectionstart TYPE clike OPTIONAL
!selectionend TYPE clike OPTIONAL
!setupdate TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS geolocation
IMPORTING
finished TYPE clike OPTIONAL
longitude TYPE any OPTIONAL
latitude TYPE any OPTIONAL
altitude TYPE any OPTIONAL
accuracy TYPE any OPTIONAL
altitudeaccuracy TYPE any OPTIONAL
speed TYPE any OPTIONAL
heading TYPE any OPTIONAL
enablehighaccuracy TYPE any OPTIONAL
timeout TYPE any OPTIONAL
!finished TYPE clike OPTIONAL
!longitude TYPE any OPTIONAL
!latitude TYPE any OPTIONAL
!altitude TYPE any OPTIONAL
!accuracy TYPE any OPTIONAL
!altitudeaccuracy TYPE any OPTIONAL
!speed TYPE any OPTIONAL
!heading TYPE any OPTIONAL
!enablehighaccuracy TYPE any OPTIONAL
!timeout TYPE any OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS info_frontend
IMPORTING
finished TYPE clike OPTIONAL
ui5_version TYPE any OPTIONAL
ui5_gav TYPE any OPTIONAL
ui5_theme TYPE any OPTIONAL
device_os TYPE any OPTIONAL
device_systemtype TYPE any OPTIONAL
device_browser TYPE any OPTIONAL
!finished TYPE clike OPTIONAL
!ui5_version TYPE any OPTIONAL
!ui5_gav TYPE any OPTIONAL
!ui5_theme TYPE any OPTIONAL
!device_os TYPE any OPTIONAL
!device_systemtype TYPE any OPTIONAL
!device_browser TYPE any OPTIONAL
PREFERRED PARAMETER finished
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS spreadsheet_export
IMPORTING
tableid TYPE clike
type TYPE clike OPTIONAL
text TYPE clike OPTIONAL
icon TYPE clike OPTIONAL
!tableid TYPE clike
!type TYPE clike OPTIONAL
!text TYPE clike OPTIONAL
!icon TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
@ -89,41 +85,44 @@ CLASS z2ui5_cl_xml_view_cc DEFINITION
!checkdirectupload TYPE clike OPTIONAL
!filetype TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS messaging
IMPORTING
items TYPE clike OPTIONAL
!items TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS title
IMPORTING
title TYPE clike OPTIONAL
!title TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS scroll
METHODS history
IMPORTING
setupdate TYPE clike OPTIONAL
items TYPE clike OPTIONAL
!search TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS scrolling
IMPORTING
!setupdate TYPE clike OPTIONAL
!items TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS timer
IMPORTING
finished TYPE clike OPTIONAL
delayms TYPE clike OPTIONAL
checkrepeat TYPE clike OPTIONAL
checkactive TYPE clike OPTIONAL
!finished TYPE clike OPTIONAL
!delayms TYPE clike OPTIONAL
!checkrepeat TYPE clike OPTIONAL
!checkactive TYPE clike OPTIONAL
PREFERRED PARAMETER finished
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
!view TYPE REF TO z2ui5_cl_xml_view .
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
@ -133,7 +132,8 @@ ENDCLASS.
CLASS z2ui5_cl_xml_view_cc IMPLEMENTATION.
method bwip_js.
METHOD bwip_js.
result = mo_view.
mo_view->_generic( name = `bwipjs`
@ -144,21 +144,25 @@ method bwip_js.
( n = `height` v = height )
) ).
endmethod.
ENDMETHOD.
METHOD spreadsheet_export.
METHOD camera_picture.
result = mo_view.
mo_view->_generic( name = `ExportSpreadsheet`
mo_view->_generic( name = `CameraPicture`
ns = `z2ui5`
t_prop = VALUE #( ( n = `tableId` v = tableid )
( n = `text` v = text )
( n = `icon` v = icon )
( n = `type` v = type )
) ).
t_prop = VALUE #(
( n = `id` v = id )
( n = `value` v = value )
( n = `press` v = press )
( n = `OnPhoto` v = onphoto )
( n = `autoplay` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( autoplay ) )
) ).
ENDMETHOD.
METHOD constructor.
me->mo_view = view.
@ -166,6 +170,13 @@ endmethod.
ENDMETHOD.
METHOD demo_output.
result = mo_view->_cc_plain_xml( z2ui5_cl_cc_demo_output=>get_style( ) )->html( val ).
ENDMETHOD.
METHOD file_uploader.
result = mo_view.
@ -186,68 +197,21 @@ endmethod.
ENDMETHOD.
METHOD scroll.
METHOD focus.
result = mo_view.
mo_view->_generic( name = `Scroll`
mo_view->_generic( name = `Focus`
ns = `z2ui5`
t_prop = VALUE #(
( n = `setUpdate` v = setupdate )
( n = `items` v = items )
( n = `setUpdate` v = setupdate )
( n = `selectionStart` v = selectionstart )
( n = `selectionEnd` v = selectionend )
( n = `focusId` v = focusid )
) ).
ENDMETHOD.
METHOD timer.
result = mo_view.
mo_view->_generic( name = `Timer`
ns = `z2ui5`
t_prop = VALUE #( ( n = `delayMS` v = delayms )
( n = `finished` v = finished )
( n = `checkActive` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( checkactive ) )
( n = `checkRepeat` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( checkrepeat ) )
) ).
ENDMETHOD.
METHOD title.
result = mo_view.
mo_view->_generic( name = `Title`
ns = `z2ui5`
t_prop = VALUE #( ( n = `title` v = title ) ) ).
ENDMETHOD.
METHOD messaging.
result = mo_view.
mo_view->_generic( name = `Messaging`
ns = `z2ui5`
t_prop = VALUE #( ( n = `items` v = items )
) ).
ENDMETHOD.
METHOD info_frontend.
result = mo_view.
mo_view->_generic( name = `Info`
ns = `z2ui5`
t_prop = VALUE #( ( n = `ui5_version` v = ui5_version )
( n = `ui5_gav` v = ui5_gav )
( n = `finished` v = finished )
( n = `ui5_theme` v = ui5_theme )
( n = `device_os` v = device_os )
( n = `device_systemtype` v = device_systemtype )
( n = `device_browser` v = device_browser )
) ).
ENDMETHOD.
METHOD geolocation.
result = mo_view.
@ -268,39 +232,90 @@ endmethod.
ENDMETHOD.
METHOD focus.
METHOD info_frontend.
result = mo_view.
mo_view->_generic( name = `Focus`
mo_view->_generic( name = `Info`
ns = `z2ui5`
t_prop = VALUE #( ( n = `ui5_version` v = ui5_version )
( n = `ui5_gav` v = ui5_gav )
( n = `finished` v = finished )
( n = `ui5_theme` v = ui5_theme )
( n = `device_os` v = device_os )
( n = `device_systemtype` v = device_systemtype )
( n = `device_browser` v = device_browser )
) ).
ENDMETHOD.
METHOD messaging.
result = mo_view.
mo_view->_generic( name = `Messaging`
ns = `z2ui5`
t_prop = VALUE #( ( n = `items` v = items )
) ).
ENDMETHOD.
METHOD scrolling.
result = mo_view.
mo_view->_generic( name = `Scrolling`
ns = `z2ui5`
t_prop = VALUE #(
( n = `setUpdate` v = setupdate )
( n = `selectionStart` v = selectionstart )
( n = `selectionEnd` v = selectionend )
( n = `focusId` v = focusid )
( n = `setUpdate` v = setupdate )
( n = `items` v = items )
) ).
ENDMETHOD.
METHOD demo_output.
result = mo_view->_cc_plain_xml( z2ui5_cl_cc_demo_output=>get_style( ) )->html( val ).
ENDMETHOD.
METHOD camera_picture.
METHOD spreadsheet_export.
result = mo_view.
mo_view->_generic( name = `CameraPicture`
mo_view->_generic( name = `ExportSpreadsheet`
ns = `z2ui5`
t_prop = VALUE #(
( n = `id` v = id )
( n = `value` v = value )
( n = `press` v = press )
( n = `OnPhoto` v = OnPhoto )
( n = `autoplay` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( autoplay ) )
) ).
t_prop = VALUE #( ( n = `tableId` v = tableid )
( n = `text` v = text )
( n = `icon` v = icon )
( n = `type` v = type )
) ).
ENDMETHOD.
METHOD timer.
result = mo_view.
mo_view->_generic( name = `Timer`
ns = `z2ui5`
t_prop = VALUE #( ( n = `delayMS` v = delayms )
( n = `finished` v = finished )
( n = `checkActive` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( checkactive ) )
( n = `checkRepeat` v = z2ui5_cl_fw_utility=>boolean_abap_2_json( checkrepeat ) )
) ).
ENDMETHOD.
METHOD history.
result = mo_view.
mo_view->_generic( name = `History`
ns = `z2ui5`
t_prop = VALUE #( ( n = `search` v = search ) ) ).
ENDMETHOD.
METHOD title.
result = mo_view.
mo_view->_generic( name = `Title`
ns = `z2ui5`
t_prop = VALUE #( ( n = `title` v = title ) ) ).
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,7 @@
<VSEOCLASS>
<CLSNAME>Z2UI5_CL_XML_VIEW_CC</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abap2UI5 - view parser custom controls</DESCRIPT>
<DESCRIPT>abap2UI5 - view renderer cc</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DEVC" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abap2UI5 - view parser v2 (ui5)</CTEXT>
</DEVC>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abap2UI5 - custom controls add (cc)</CTEXT>
<CTEXT>abap2UI5 - view parser</CTEXT>
</DEVC>
</asx:values>
</asx:abap>

View File

@ -1,107 +0,0 @@
CLASS z2ui5_cl_cc_demo_output DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
METHODS constructor
IMPORTING
view TYPE REF TO z2ui5_cl_xml_view.
METHODS control
IMPORTING
val TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
class-methods get_style
RETURNING
VALUE(result) type string.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_cc_demo_output IMPLEMENTATION.
method get_style.
result = `<html:style type="text/css">body {` && |\n| &&
` font-family: Arial;` && |\n| &&
` font-size: 90%;` && |\n| &&
`}` && |\n| &&
`table {` && |\n| &&
` font-family: Arial;` && |\n| &&
` font-size: 90%;` && |\n| &&
`}` && |\n| &&
`caption {` && |\n| &&
` font-family: Arial;` && |\n| &&
` font-size: 90%;` && |\n| &&
` font-weight:bold;` && |\n| &&
` text-align:left;` && |\n| &&
`}` && |\n| &&
`span.heading1 {` && |\n| &&
` font-size: 150%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.heading2 {` && |\n| &&
` font-size: 135%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.heading3 {` && |\n| &&
` font-size: 120%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.heading4 {` && |\n| &&
` font-size: 105%;` && |\n| &&
` color:#000080;` && |\n| &&
` font-weight:bold;` && |\n| &&
`}` && |\n| &&
`span.normal {` && |\n| &&
` font-size: 100%;` && |\n| &&
` color:#000000;` && |\n| &&
` font-weight:normal;` && |\n| &&
`}` && |\n| &&
`span.nonprop {` && |\n| &&
` font-family: Courier New;` && |\n| &&
` font-size: 100%;` && |\n| &&
` color:#000000;` && |\n| &&
` font-weight:400;` && |\n| &&
`}` && |\n| &&
`span.nowrap {` && |\n| &&
` white-space:nowrap;` && |\n| &&
`}` && |\n| &&
`span.nprpnwrp {` && |\n| &&
` font-family: Courier New;` && |\n| &&
` font-size: 100%;` && |\n| &&
` color:#000000;` && |\n| &&
` font-weight:400;` && |\n| &&
` white-space:nowrap;` && |\n| &&
`}` && |\n| &&
`tr.header {` && |\n| &&
` background-color:#D3D3D3;` && |\n| &&
`}` && |\n| &&
`tr.body {` && |\n| &&
` background-color:#EFEFEF;` && |\n| &&
`}` && |\n| &&
`</html:style>`.
endmethod.
METHOD constructor.
me->mo_view = view.
ENDMETHOD.
METHOD control.
result = mo_view->_cc_plain_xml( get_style( ) )->html( val ).
ENDMETHOD.
ENDCLASS.

View File

@ -1,171 +0,0 @@
CLASS z2ui5_cl_xml_view_cc_factory DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
METHODS ui5_file_uploader
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_file_uploader.
METHODS ui5_spreadsheet
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_spreadsheet.
METHODS gui_demo_output
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_demo_output.
METHODS font_awesome
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_font_awesome_icons.
METHODS constructor
IMPORTING
i_view TYPE REF TO z2ui5_cl_xml_view.
METHODS bwip_js
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_bwipjs.
METHODS driver_js
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_driver_js.
METHODS timer
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_timer.
METHODS messaging
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_messaging.
METHODS title
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_title.
METHODS focus
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_focus.
METHODS scroll
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_scroll.
METHODS info
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_info.
METHODS geolocation
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_cc_geolocation.
PROTECTED SECTION.
DATA mo_view TYPE REF TO z2ui5_cl_xml_view.
PRIVATE SECTION.
ENDCLASS.
CLASS Z2UI5_CL_XML_VIEW_CC_FACTORY IMPLEMENTATION.
METHOD bwip_js.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD constructor.
me->mo_view = i_view.
ENDMETHOD.
METHOD driver_js.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD focus.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD font_awesome.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD geolocation.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD gui_demo_output.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD info.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD messaging.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD scroll.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD timer.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD title.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD ui5_file_uploader.
result = NEW #( mo_view ).
ENDMETHOD.
METHOD ui5_spreadsheet.
result = NEW #( mo_view ).
ENDMETHOD.
ENDCLASS.

View File

@ -29,7 +29,7 @@ CLASS z2ui5_cl_test_app_hello_world IMPLEMENTATION.
client->message_toast_display( |{ product } { quantity } - send to the server| ).
ENDCASE.
client->view_display( client->factory_view( )->_ns_m(
client->view_display( z2ui5_cl_ui5=>_factory( )->_ns_m(
)->shell(
)->page( title = 'abap2UI5 - z2ui5_cl_app_hello_world' )->_ns_ui(
)->simpleform( title = 'Hello World' editable = abap_true

View File

@ -40,7 +40,6 @@ CLASS Z2UI5_CL_FW_HTTP_HANDLER IMPLEMENTATION.
lt_config = VALUE #(
( n = `data-sap-ui-theme` v = `sap_horizon` )
( n = `src` v = `https://sdk.openui5.org/resources/sap-ui-cachebuster/sap-ui-core.js` )
* ( n = `data-sap-ui-libs` v = `sap.m` )
( n = `data-sap-ui-bindingSyntax` v = `complex` )
( n = `data-sap-ui-frameOptions` v = `trusted` )
( n = `data-sap-ui-compatVersion` v = `edge` ) ).
@ -50,7 +49,8 @@ CLASS Z2UI5_CL_FW_HTTP_HANDLER IMPLEMENTATION.
z2ui5_cl_cc_timer=>get_js( ) &&
z2ui5_cl_cc_focus=>get_js( ) &&
z2ui5_cl_cc_title=>get_js( ) &&
z2ui5_cl_cc_scroll=>get_js( ) &&
z2ui5_cl_cc_history=>get_js( ) &&
z2ui5_cl_cc_scrolling=>get_js( ) &&
z2ui5_cl_cc_info=>get_js( ) &&
z2ui5_cl_cc_geolocation=>get_js( ) &&
z2ui5_cl_cc_file_uploader=>get_js( ) &&
@ -88,508 +88,467 @@ CLASS Z2UI5_CL_FW_HTTP_HANDLER IMPLEMENTATION.
` ></script></head>` && |\n| &&
`<body class="sapUiBody sapUiSizeCompact" >` && |\n| &&
` <div id="content" data-handle-validation="true" ></div>` && |\n| &&
`` && |\n| &&
`<abc/>` && |\n|.
r_result = r_result && `<script>` && |\n| &&
` sap.ui.core.BusyIndicator.show();` && |\n| &&
` sap.ui.getCore().attachInit(function () {` && |\n| &&
` "use strict";` && |\n| &&
|\n| &&
` sap.ui.controller("z2ui5_controller", {` && |\n| &&
` onAfterRendering: function () {` && |\n| &&
|\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_CURSOR.ID !== '') {` && |\n| &&
` jQuery.sap.delayedCall(50, this, () => {` && |\n| &&
` var ofocus = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_CURSOR.ID).getFocusInfo();` && |\n| &&
` ofocus.selectionStart = sap.z2ui5.oResponse.PARAMS.S_CURSOR.SELECTIONSTART;` && |\n| &&
` ofocus.selectionEnd = sap.z2ui5.oResponse.PARAMS.S_CURSOR.SELECTIONEND;` && |\n| &&
` sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_CURSOR.ID).applyFocusInfo(ofocus);` && |\n| &&
` });` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.T_SCROLL) {` && |\n| &&
` // jQuery.sap.delayedCall(1, this, () => {` && |\n| &&
` sap.z2ui5.oResponse.PARAMS.T_SCROLL.forEach(item => {` && |\n| &&
` try {` && |\n| &&
` sap.z2ui5.oView.byId(item.N).scrollTo(item.V);` && |\n| &&
` } catch {` && |\n| &&
` try {` && |\n| &&
` var ele = '#' + sap.z2ui5.oView.byId(item.N).getId() + '-inner';` && |\n| &&
` $(ele).scrollTop(item.V);` && |\n| &&
` } catch { setTimeout( function( item ) { sap.z2ui5.oView.byId(item.N).scrollTo(item.V); } , 1 , item);}` && |\n| &&
` }` && |\n| &&
` // });` && |\n| &&
` }` && |\n| &&
` ` && |\n| &&
` );` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.CHECK_DESTROY == true) {` && |\n| &&
` sap.z2ui5.oController.PopupDestroy();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.XML) {` && |\n| &&
` sap.z2ui5.oController.PopupDestroy();` && |\n| &&
` sap.ui.core.Fragment.load({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_POPUP.XML,` && |\n| &&
` controller: sap.z2ui5.oController,` && |\n| &&
` }).then(oFragment => {` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oFragment.setModel(oview_model)` && |\n| &&
` sap.z2ui5.oView.addDependent(oFragment);` && |\n| &&
` oFragment.open();` && |\n| &&
` sap.z2ui5.oViewPopup = oFragment;` && |\n| &&
` });` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.checkNestAfter == false) {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML !== '') {` && |\n| &&
` sap.z2ui5.oController.NestViewDestroy( );` && |\n| &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML,` && |\n| &&
` controller: sap.z2ui5.oControllerNest,` && |\n| &&
` }).then(oView => {` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oView.setModel(oview_model);` && |\n| &&
` var oParent = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.ID);` && |\n| &&
` try { oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.METHOD_DESTROY](); } catch { }` && |\n| &&
` oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.METHOD_INSERT](oView);` && |\n| &&
` sap.z2ui5.checkNestAfter = true;` && |\n| &&
` sap.z2ui5.oViewNest = oView;` && |\n| &&
` // sap.z2ui5.oView.setModel( sap.z2ui5.oViewNest.getModel( ) );` && |\n| &&
` // sap.z2ui5.oLastView = oView;` && |\n| &&
` },);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.checkNestAfter2 == false) {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML !== '') {` && |\n| &&
` sap.z2ui5.oController.NestViewDestroy2( );` && |\n| &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML,` && |\n| &&
` controller: sap.z2ui5.oControllerNest2,` && |\n| &&
` }).then(oView => {` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oView.setModel(oview_model);` && |\n| &&
` var oParent = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.ID);` && |\n| &&
` try { oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.METHOD_DESTROY](); } catch { }` && |\n| &&
` oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.METHOD_INSERT](oView);` && |\n| &&
` sap.z2ui5.checkNestAfter2 = true;` && |\n| &&
` sap.z2ui5.oViewNest2 = oView;` && |\n| &&
` // sap.z2ui5.oView.setModel( sap.z2ui5.oViewNest.getModel( ) );` && |\n| &&
` // sap.z2ui5.oLastView = oView;` && |\n| &&
` },);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.CHECK_DESTROY == true) {` && |\n| &&
` sap.z2ui5.oController.PopoverDestroy();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML) {` && |\n| &&
` sap.z2ui5.oController.PopoverDestroy();` && |\n| &&
` sap.ui.core.Fragment.load({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML,` && |\n| &&
` controller: sap.z2ui5.oController,` && |\n| &&
` }).then(oFragment => {` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oFragment.setModel(oview_model)` && |\n| &&
` sap.z2ui5.oView.addDependent(oFragment);` && |\n| &&
` var oControl = sap.ui.getCore().byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` if (oControl === undefined) {` && |\n| &&
` oControl = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` }` && |\n| &&
` if (oControl === undefined) {` && |\n| &&
` oControl = sap.z2ui5.oViewNest.byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` }` && |\n| &&
` if (oControl === undefined) {` && |\n| &&
` oControl = sap.z2ui5.oViewNest2.byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` }` && |\n| &&
` oFragment.openBy(oControl);` && |\n| &&
` sap.z2ui5.oViewPopover = oFragment;` && |\n| &&
` });` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED !== '') {` && |\n| &&
` var oEvent = { 'EVENT': 'BUTTON_CHECK', 'METHOD': 'UPDATE' };` && |\n| &&
` oEvent.EVENT = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED;` && |\n| &&
` sap.z2ui5.checkTimerActive = true;` && |\n| &&
` setTimeout(() => {` && |\n| &&
` if (sap.z2ui5.checkTimerActive) {` && |\n| &&
` let method = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 0 ];` && |\n| &&
` let oArgs = [];` && |\n| &&
` oArgs.push( JSON.parse( (sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].split( '}' )[ 0 ] + '}').replaceAll( "'" , '"' ) ) );` && |\n| &&
` // let oArgsPara = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].split( '}' )[ 1 ].split( ',' ).slice(1);` && |\n| &&
` let oArgsPara = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].split( '}' )[ 1 ].split( '"' ).slice(1);` && |\n| &&
` // oArgsPara.forEach( ( item, index, arr ) => { arr[index] = item.replace( '"' , '' ); } );;` && |\n| &&
` oArgs = oArgs.concat( oArgsPara );` && |\n| &&
` if (method == 'onEvent'){ sap.z2ui5.oController.onEvent(...oArgs); }else{ sap.z2ui5.oController.onEventFrontend(...oArgs); }` && |\n| &&
` }` && |\n| &&
` }, sap.z2ui5.oResponse.PARAMS.S_TIMER.INTERVAL_MS, oEvent);` && |\n| &&
` }` && |\n| &&
` sap.ui.core.BusyIndicator.hide();` && |\n| &&
` if (sap.z2ui5.isBusy) { sap.z2ui5.isBusy = false; }` && |\n| &&
` if (sap.z2ui5.b) { sap.z2ui5.b.close(); }` && |\n| &&
` },` && |\n| &&
` PopupDestroy: () => {` && |\n| &&
` if (!sap.z2ui5.oViewPopup) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oViewPopup.close) {` && |\n| &&
` try { sap.z2ui5.oViewPopup.close(); } catch { }` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewPopup.destroy();` && |\n| &&
` },` && |\n| &&
` PopoverDestroy: () => {` && |\n| &&
` if (!sap.z2ui5.oViewPopover) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oViewPopover.close) {` && |\n| &&
` try { sap.z2ui5.oViewPopover.close(); } catch { }` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewPopover.destroy();` && |\n| &&
` },` && |\n| &&
` NestViewDestroy: () => {` && |\n| &&
` if (!sap.z2ui5.oViewNest) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewNest.destroy();` && |\n| &&
` },` && |\n| &&
` NestViewDestroy2: () => {` && |\n| &&
` if (!sap.z2ui5.oViewNest2) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewNest2.destroy();` && |\n| &&
` },` && |\n| &&
` ViewDestroy: () => {` && |\n| &&
` if (!sap.z2ui5.oView) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oView.destroy();` && |\n| &&
` },` && |\n| &&
` ` && |\n| &&
` onEventFrontend: (...args) => {` && |\n| &&
custom_js_oneventfrontend &&
` switch (args[0].EVENT) {` && |\n| &&
` case 'CROSS_APP_NAV_TO_PREV_APP': ` && |\n| &&
` var oCrossAppNavigator = sap.ushell.Container.getService("CrossApplicationNavigation"); ` && |\n| &&
` oCrossAppNavigator.backToPreviousApp();` && |\n| &&
` break;` && |\n| &&
` case 'CROSS_APP_NAV_TO_EXT': ` && |\n| &&
` var oCrossAppNavigator = sap.ushell.Container.getService("CrossApplicationNavigation");` && |\n| &&
|\n| &&
` const hash = ( oCrossAppNavigator.hrefForExternal({` && |\n| &&
` target: args[1],` && |\n| &&
` params: args[2]` && |\n| &&
` } )) || "";` && |\n| &&
|\n| &&
` if (args[3] === 'EXT') {` && |\n| &&
|\n| &&
` var url = window.location.href.split('#')[0] + hash;` && |\n| &&
` sap.m.URLHelper.redirect(url, true);` && |\n| &&
|\n| &&
` }` && |\n| &&
` else {` && |\n| &&
|\n| &&
` oCrossAppNavigator.toExternal({` && |\n| &&
` target: {` && |\n| &&
` shellHash: hash` && |\n| &&
` }` && |\n| &&
` });` && |\n| &&
|\n| &&
` }` && |\n| &&
` break;` && |\n| &&
` case 'LOCATION_RELOAD':` && |\n| &&
` window.location = args[1];` && |\n| &&
` break;` && |\n| &&
` case 'OPEN_NEW_TAB':` && |\n| &&
` window.open( args[1] , '_blank' );` && |\n| &&
` break;` && |\n| &&
` case 'POPUP_CLOSE':` && |\n| &&
` sap.z2ui5.oController.PopupDestroy();` && |\n| &&
` break;` && |\n| &&
` case 'POPOVER_CLOSE':` && |\n| &&
` sap.z2ui5.oController.PopoverDestroy();` && |\n| &&
` break;` && |\n| &&
` case 'NAV_CONTAINER_TO':` && |\n| &&
` var navCon = sap.z2ui5.oView.byId(args[1]);` && |\n| &&
` var navConTo = sap.z2ui5.oView.byId(args[2]);` && |\n| &&
` navCon.to(navConTo);` && |\n| &&
` break;` && |\n| &&
` case 'NEST_NAV_CONTAINER_TO':` && |\n| &&
` var navCon = sap.z2ui5.oViewNest.byId(args[1]);` && |\n| &&
` var navConTo = sap.z2ui5.oViewNest.byId(args[2]);` && |\n| &&
` navCon.to(navConTo);` && |\n| &&
` break;` && |\n| &&
` case 'NEST2_NAV_CONTAINER_TO':` && |\n| &&
` var navCon = sap.z2ui5.oViewNest2.byId(args[1]);` && |\n| &&
` var navConTo = sap.z2ui5.oViewNest.byId(args[2]);` && |\n| &&
` navCon.to(navConTo);` && |\n| &&
` break;` && |\n| &&
` case 'DRIVERJS_DRIVE':` && |\n| &&
` if( driver !== undefined ) { if( config !== undefined ) {` && |\n| &&
` driverObj = driver(config);` && |\n| &&
` driverObj.drive();` && |\n| &&
` } };` && |\n| &&
` break;` && |\n| &&
` case 'DRIVERJS_HIGHLIGHT':` && |\n| &&
` if( driver !== undefined ) { if ( highlight_driver_config !== undefined ) { if (highlight_config !== undefined ) {` && |\n| &&
` driverObj = driver(highlight_driver_config);` && |\n| &&
` driverObj.highlight(highlight_config);` && |\n| &&
` } }};` && |\n| &&
` break;` && |\n| &&
` }` && |\n| &&
` },` && |\n| &&
|\n| &&
` onEvent: function (...args) {` && |\n| &&
` // return;` && |\n| &&
` if ( sap.z2ui5.isBusy ) { if( sap.z2ui5.isBusy == true ){ sap.z2ui5.b = new sap.m.BusyDialog(); sap.z2ui5.b.open(); return; } } ` &&
` sap.z2ui5.isBusy = true; ` &&
` if (!window.navigator.onLine) {` && |\n| &&
` sap.m.MessageBox.alert('No internet connection! Please reconnect to the server and try again.');` && |\n| &&
` sap.z2ui5.isBusy = false; ` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.ui.core.BusyIndicator.show();` && |\n| &&
` sap.z2ui5.oBody = {};` && |\n| &&
` let isUpdated = false;` && |\n| &&
` if (sap.z2ui5.oViewPopup) {` && |\n| &&
` if (!sap.z2ui5.oViewPopup.isOpen || sap.z2ui5.oViewPopup.isOpen() == true) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oViewPopup.getModel().getData().EDIT;` && |\n| &&
` isUpdated = true;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'MAIN';` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if ( isUpdated == false ) { ` && |\n| &&
` if (sap.z2ui5.oViewPopover) {` && |\n| &&
` if (sap.z2ui5.oViewPopover.isOpen ) {` && |\n| &&
` if ( sap.z2ui5.oViewPopover.isOpen() == true) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oViewPopover.getModel().getData().EDIT;` && |\n| &&
` isUpdated = true;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'MAIN';` && |\n| &&
` } } sap.z2ui5.oViewPopover.destroy(); } }` && |\n| &&
` if (isUpdated == false){` && |\n| &&
` if (sap.z2ui5.oViewNest == this.getView() ) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oViewNest.getModel().getData().EDIT;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'NEST';` && |\n| &&
` isUpdated = true;` && |\n| &&
` } }` && |\n| &&
` if (isUpdated == false){` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oView.getModel().getData().EDIT;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'MAIN';` && |\n| &&
` }` && |\n| &&
|\n| &&
` sap.z2ui5.onBeforeRoundtrip.forEach( item => { if( item !== undefined) { item(); } })` && |\n| &&
` if (args[ 0 ].CHECK_VIEW_DESTROY){` && |\n| &&
` sap.z2ui5.oController.ViewDestroy();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.T_SCROLL) {` && |\n| &&
` sap.z2ui5.oBody.oScroll = sap.z2ui5.oResponse.PARAMS.T_SCROLL;` && |\n| &&
` sap.z2ui5.oBody.oScroll.forEach(item => {` && |\n| &&
` try {` && |\n| &&
` item.V = sap.z2ui5.oView.byId(item.N).getScrollDelegate().getScrollTop();` && |\n| &&
` } catch (e) {` && |\n| &&
` try {` && |\n| &&
` var ele = '#' + sap.z2ui5.oView.byId(item.N).getId() + '-inner';` && |\n| &&
` item.V = $(ele).scrollTop();` && |\n| &&
` } catch (e) { }` && |\n| &&
` }` && |\n| &&
` });` && |\n| &&
` }` && |\n| &&
` try { ` && |\n| &&
` sap.z2ui5.oBody.OMESSAGEMANAGER = []; ` && |\n| &&
` try { ` && |\n| &&
` var aMsg = sap.ui.getCore().getMessageManager().getMessageModel().getData(); ` && |\n| &&
` } catch (e) { aMsg = sap.ui.getCore().getMessageManager().getMessageModel().oMessageManager.oMessageModel.oData; } ` && |\n| &&
` aMsg.forEach( row => { ` && |\n| &&
` // sap.ui.getCore().getMessageManager().getMessageModel().oMessageManager.oMessageModel.oData.forEach( row => { ` && |\n| &&
` sap.z2ui5.oBody.OMESSAGEMANAGER.push( { type : row.type , message : row.message , additionaltext : row.additionalText , atargets : row.aTargets[ 0 ] } ); ` && |\n| &&
`} ) } catch (e) { } ` && |\n| &&
` sap.z2ui5.oBody.ID = sap.z2ui5.oResponse.ID;` && |\n| &&
` sap.z2ui5.oBody.ARGUMENTS = args;` && |\n| &&
` try { sap.z2ui5.oBody.OCURSOR = sap.ui.getCore().byId(sap.ui.getCore().getCurrentFocusedControlId()).getFocusInfo(); } catch (e) { }` && |\n| &&
|\n| &&
` if (sap.z2ui5.checkLogActive) {` && |\n| &&
` console.log('Request Object:');` && |\n| &&
` console.log(sap.z2ui5.oBody);` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oResponseOld = sap.z2ui5.oResponse;` && |\n| &&
` sap.z2ui5.oResponse = {};` && |\n| &&
` sap.z2ui5.oController.Roundtrip();` && |\n| &&
` },` && |\n| &&
` responseError: response => {` && |\n| &&
` document.write(response);` && |\n| &&
` },` && |\n| &&
` responseSuccess: response => {` && |\n| &&
|\n| &&
` sap.z2ui5.oResponse = JSON.parse(response);` && |\n| &&
|\n| &&
` if (sap.z2ui5.checkLogActive) {` && |\n| &&
` console.log('Response Object:');` && |\n| &&
` console.log(JSON.parse( JSON.stringify(sap.z2ui5.oResponse) ) );` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.XML !== '') {` && |\n| &&
` console.log('UI5-XML-View:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_VIEW.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Popup:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_POPUP.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Popover:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Nest:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Nest2:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
|\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.CHECK_DESTROY == true) { sap.z2ui5.oController.ViewDestroy(); }` && |\n| &&
|\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.XML !== '') {` && |\n| &&
|\n| &&
` sap.z2ui5.oController.ViewDestroy();` && |\n| &&
|\n| &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW.XML,` && |\n| &&
` controller: sap.z2ui5.oController,` && |\n| &&
` }).then(oView => {` && |\n| &&
` try{` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` try { oView.setModel(oview_model); } catch (e) { oView.setModel(oview_model); }` && |\n| &&
` } catch (e){ sap.m.MessageBox.error( 'Error while creating Main View - ' + e.message); }` && |\n| &&
` if (sap.z2ui5.oParent) {` && |\n| &&
` sap.z2ui5.oParent.removeAllPages();` && |\n| &&
` sap.z2ui5.oParent.insertPage(oView);` && |\n| &&
` } else {` && |\n| &&
` oView.placeAt("content")` && |\n| &&
` };` && |\n| &&
` sap.ui.getCore().getMessageManager().registerObject(oView, true);` && |\n| &&
` sap.z2ui5.oView = oView;` && |\n| &&
` },` && |\n| &&
` );` && |\n| &&
` } else {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` var main_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` main_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` sap.z2ui5.oView.setModel(main_model); }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` var nest_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` nest_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` sap.z2ui5.oViewNest.setModel(nest_model); }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` var nest2_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` nest2_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` sap.z2ui5.oViewNest2.setModel(nest2_model); }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.CHECK_UPDATE_MODEL == true) { sap.z2ui5.oViewPopup.setModel(new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL)); }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.CHECK_UPDATE_MODEL == true) { sap.z2ui5.oViewPopover.setModel(new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL)); }` && |\n| &&
` sap.z2ui5.oController.onAfterRendering();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.TITLE != "") {` && |\n| &&
` document.title = sap.z2ui5.oResponse.PARAMS.TITLE;` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_MSG_TOAST.TEXT !== '') {` && |\n| &&
` sap.m.MessageToast.show(sap.z2ui5.oResponse.PARAMS.S_MSG_TOAST.TEXT);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_MSG_BOX.TEXT !== '') {` && |\n| &&
` sap.m.MessageBox[sap.z2ui5.oResponse.PARAMS.S_MSG_BOX.TYPE](sap.z2ui5.oResponse.PARAMS.S_MSG_BOX.TEXT);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.SEARCH != "") {` && |\n| &&
` history.replaceState(null, null, window.location.pathname + '?' + sap.z2ui5.oResponse.SEARCH );` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_MESSAGE_MANAGER.CHECK_CLEAR == true) {` && |\n| &&
` sap.ui.getCore().getMessageManager().removeAllMessages(); ` && |\n| &&
` sap.ui.getCore().getMessageManager().registerObject(oView, true); ` && |\n| &&
` } ` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_MESSAGE_MANAGER.T_MESSAGE != "") {` && |\n| &&
` sap.z2ui5.oResponse.PARAMS.S_MESSAGE_MANAGER.T_MESSAGE.forEach( item => { ` && |\n| &&
` sap.ui.getCore().getMessageManager().addMessages( new sap.ui.core.message.Message({` && |\n| &&
` message: item.MESSAGE, ` && |\n| &&
` // persistent: true, // create message as transition message` && |\n| &&
` type: item.TYPE ` && |\n| &&
` }));}) } ` &&
` },` && |\n| &&
` readHttp: () => {` && |\n| &&
|\n| &&
` var xhr = new XMLHttpRequest();` && |\n| &&
` xhr.open("POST", sap.z2ui5.pathname, true);` && |\n| &&
` xhr.onload = (that) => {` && |\n| &&
` if (that.target.status !== 200) {` && |\n| &&
` sap.z2ui5.oController.responseError(that.target.response);` && |\n| &&
` } else {` && |\n| &&
` sap.z2ui5.oController.responseSuccess(that.target.response);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` xhr.send(JSON.stringify(sap.z2ui5.oBody));` && |\n| &&
` },` && |\n| &&
` Roundtrip: () => {` && |\n| &&
|\n| &&
` sap.z2ui5.checkTimerActive = false;` && |\n| &&
` sap.z2ui5.checkNestAfter = false;` && |\n| &&
` sap.z2ui5.checkNestAfter2 = false;` && |\n| &&
|\n| &&
` sap.z2ui5.oBody.OLOCATION = {` && |\n| &&
` ORIGIN: window.location.origin,` && |\n| &&
` PATHNAME: sap.z2ui5.pathname,` && |\n| &&
` SEARCH: window.location.search,` && |\n| &&
` VERSION: sap.ui.getVersionInfo().gav,` && |\n| &&
` CHECK_LAUNCHPAD_ACTIVE: sap.ushell !== undefined,` && |\n| &&
` STARTUP_PARAMETERS: sap.z2ui5.startupParameters,` && |\n| &&
` };` && |\n| &&
` if(sap.z2ui5.search) { sap.z2ui5.oBody.OLOCATION.SEARCH = sap.z2ui5.search; }` && |\n| &&
|\n| &&
` if (sap.z2ui5.readOData) {` && |\n| &&
` sap.z2ui5.readOData();` && |\n| &&
` } else {` && |\n| &&
` sap.z2ui5.oController.readHttp();` && |\n| &&
` }` && |\n| &&
` },` && |\n| &&
` });` && |\n| &&
|\n| &&
` if (!sap.z2ui5) {` && |\n| &&
` sap.z2ui5 = {};` && |\n| &&
` }` && |\n| &&
` if (!sap.z2ui5.pathname) {` && |\n| &&
` sap.z2ui5.pathname = window.location.pathname;` && |\n| &&
` // sap.z2ui5.pathname = ``/sap/bc/http/sap/y2ui5_http_handler``;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.checkNestAfter = false;` && |\n| &&
` jQuery.sap.require("sap.ui.core.Fragment");` && |\n| &&
` jQuery.sap.require("sap.m.MessageToast");` && |\n| &&
` jQuery.sap.require("sap.m.MessageBox");` && |\n| &&
` jQuery.sap.require("sap.ui.model.json.JSONModel");` && |\n| &&
` var xml = atob('PA==') + 'mvc:View controllerName="z2ui5_controller" xmlns:mvc="sap.ui.core.mvc" /' + atob('Pg==');` && |\n| &&
` var oView = sap.ui.xmlview({ viewContent: xml });` && |\n| &&
` sap.z2ui5.oController = oView.getController();` && |\n| &&
` var oViewNest = sap.ui.xmlview({ viewContent: xml });` && |\n| &&
` var oViewNest2 = sap.ui.xmlview({ viewContent: xml });` && |\n| &&
` sap.z2ui5.oControllerNest = oViewNest.getController();` && |\n| &&
` sap.z2ui5.oControllerNest2 = oViewNest.getController();` && |\n| &&
` sap.z2ui5.oBody = {};` && |\n| &&
` sap.z2ui5.oBody.APP_START = sap.z2ui5.APP_START;` && |\n| &&
` sap.z2ui5.oController.Roundtrip();` && |\n| &&
` sap.z2ui5.log = () => { console.log(sap.z2ui5.oResponse.OVIEWMODEL ); };` && |\n| &&
` sap.z2ui5.oController.oUtil = {}; ` && |\n| &&
` sap.z2ui5.oController.oUtil.oDate = {}; ` && |\n| &&
` sap.z2ui5.oController.oUtil.oDate.createObject = (s) => { return new Date(s); }` && |\n| &&
` jQuery.sap.declare("sap.z2ui5.Helper");` && |\n| &&
`sap.z2ui5.onBeforeRoundtrip = [];` && |\n| &&
`sap.z2ui5.Helper = {};` && |\n| &&
`sap.z2ui5.Helper.DateCreateObject = (s => new Date(s));` && |\n| &&
`sap.z2ui5.Helper.DateAbapTimestampToDate = (sTimestamp => new sap.gantt.misc.Format.abapTimestampToDate(sTimestamp));` && |\n| &&
`sap.z2ui5.Helper.DateAbapDateToDateObject = (d => new Date(d.slice(0,4), (d[4]+d[5])-1, d[6]+d[7]));` && |\n| &&
`sap.z2ui5.Helper.DateAbapDateTimeToDateObject = ((d,t = '000000') => new Date(d.slice(0,4), (d[4]+d[5])-1, d[6]+d[7],t.slice(0,2),t.slice(2,4),t.slice(4,6)));` && |\n| &&
`sap.z2ui5.JSON_MODEL_LIMIT = ` && json_model_limit && `;` && |\n| &&
`sap.z2ui5.checkLogActive = ` && z2ui5_cl_fw_utility=>boolean_abap_2_json( check_logging ) && `;` && |\n| &&
r_result = r_result && `<script>` && |\n| &&
` sap.ui.core.BusyIndicator.show();` && |\n| &&
` sap.ui.getCore().attachInit(function() {` && |\n| &&
` "use strict";` && |\n| &&
|\n| &&
` sap.ui.controller("z2ui5_controller", {` && |\n| &&
` onAfterRendering: function() {` && |\n| &&
|\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.CHECK_DESTROY == true) {` && |\n| &&
` sap.z2ui5.oController.PopupDestroy();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.XML) {` && |\n| &&
` sap.z2ui5.oController.PopupDestroy();` && |\n| &&
` sap.ui.core.Fragment.load({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_POPUP.XML,` && |\n| &&
` controller: sap.z2ui5.oController,` && |\n| &&
` }).then(oFragment=>{` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oFragment.setModel(oview_model)` && |\n| &&
` sap.z2ui5.oView.addDependent(oFragment);` && |\n| &&
` oFragment.open();` && |\n| &&
` sap.z2ui5.oViewPopup = oFragment;` && |\n| &&
` }` && |\n| &&
` );` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.checkNestAfter == false) {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML !== '') {` && |\n| &&
` sap.z2ui5.oController.NestViewDestroy();` && |\n| &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML,` && |\n| &&
` controller: sap.z2ui5.oControllerNest,` && |\n| &&
` }).then(oView=>{` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oView.setModel(oview_model);` && |\n| &&
` var oParent = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.ID);` && |\n| &&
` try {` && |\n| &&
` oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.METHOD_DESTROY]();` && |\n| &&
` } catch {}` && |\n| &&
` oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.METHOD_INSERT](oView);` && |\n| &&
` sap.z2ui5.checkNestAfter = true;` && |\n| &&
` sap.z2ui5.oViewNest = oView;` && |\n| &&
` }` && |\n| &&
` , );` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.checkNestAfter2 == false) {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML !== '') {` && |\n| &&
` sap.z2ui5.oController.NestViewDestroy2();` && |\n| &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML,` && |\n| &&
` controller: sap.z2ui5.oControllerNest2,` && |\n| &&
` }).then(oView=>{` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oView.setModel(oview_model);` && |\n| &&
` var oParent = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.ID);` && |\n| &&
` try {` && |\n| &&
` oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.METHOD_DESTROY]();` && |\n| &&
` } catch {}` && |\n| &&
` oParent[sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.METHOD_INSERT](oView);` && |\n| &&
` sap.z2ui5.checkNestAfter2 = true;` && |\n| &&
` sap.z2ui5.oViewNest2 = oView;` && |\n| &&
` }` && |\n| &&
` , );` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.CHECK_DESTROY == true) {` && |\n| &&
` sap.z2ui5.oController.PopoverDestroy();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML) {` && |\n| &&
` sap.z2ui5.oController.PopoverDestroy();` && |\n| &&
` sap.ui.core.Fragment.load({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML,` && |\n| &&
` controller: sap.z2ui5.oController,` && |\n| &&
` }).then(oFragment=>{` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` oFragment.setModel(oview_model)` && |\n| &&
` sap.z2ui5.oView.addDependent(oFragment);` && |\n| &&
` var oControl = sap.ui.getCore().byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` if (oControl === undefined) {` && |\n| &&
` oControl = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` }` && |\n| &&
` if (oControl === undefined) {` && |\n| &&
` oControl = sap.z2ui5.oViewNest.byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` }` && |\n| &&
` if (oControl === undefined) {` && |\n| &&
` oControl = sap.z2ui5.oViewNest2.byId(sap.z2ui5.oResponse.PARAMS.S_POPOVER.OPEN_BY_ID);` && |\n| &&
` }` && |\n| &&
` oFragment.openBy(oControl);` && |\n| &&
` sap.z2ui5.oViewPopover = oFragment;` && |\n| &&
` } ); }` && |\n| &&
` sap.ui.core.BusyIndicator.hide();` && |\n| &&
` if (sap.z2ui5.isBusy) {` && |\n| &&
` sap.z2ui5.isBusy = false;` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.b) {` && |\n| &&
` sap.z2ui5.b.close();` && |\n| &&
` }` && |\n| &&
` },` && |\n| &&
` PopupDestroy: ()=>{` && |\n| &&
` if (!sap.z2ui5.oViewPopup) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oViewPopup.close) {` && |\n| &&
` try {` && |\n| &&
` sap.z2ui5.oViewPopup.close();` && |\n| &&
` } catch {}` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewPopup.destroy();` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` PopoverDestroy: ()=>{` && |\n| &&
` if (!sap.z2ui5.oViewPopover) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oViewPopover.close) {` && |\n| &&
` try {` && |\n| &&
` sap.z2ui5.oViewPopover.close();` && |\n| &&
` } catch {}` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewPopover.destroy();` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` NestViewDestroy: ()=>{` && |\n| &&
` if (!sap.z2ui5.oViewNest) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewNest.destroy();` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` NestViewDestroy2: ()=>{` && |\n| &&
` if (!sap.z2ui5.oViewNest2) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewNest2.destroy();` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` ViewDestroy: ()=>{` && |\n| &&
` if (!sap.z2ui5.oView) {` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oView.destroy();` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` onEventFrontend: (...args)=>{` && |\n| && custom_js_oneventfrontend &&
` switch (args[0].EVENT) {` && |\n| &&
` case 'CROSS_APP_NAV_TO_PREV_APP':` && |\n| &&
` var oCrossAppNavigator = sap.ushell.Container.getService("CrossApplicationNavigation");` && |\n| &&
` oCrossAppNavigator.backToPreviousApp();` && |\n| &&
` break;` && |\n| &&
` case 'CROSS_APP_NAV_TO_EXT':` && |\n| &&
` var oCrossAppNavigator = sap.ushell.Container.getService("CrossApplicationNavigation");` && |\n| &&
` const hash = (oCrossAppNavigator.hrefForExternal({` && |\n| &&
` target: args[1],` && |\n| &&
` params: args[2]` && |\n| &&
` })) || "";` && |\n| &&
` if (args[3] === 'EXT') {` && |\n| &&
` var url = window.location.href.split('#')[0] + hash;` && |\n| &&
` sap.m.URLHelper.redirect(url, true);` && |\n| &&
` } else {` && |\n| &&
` oCrossAppNavigator.toExternal({` && |\n| &&
` target: {` && |\n| &&
` shellHash: hash` && |\n| &&
` }` && |\n| &&
` });` && |\n| &&
` }` && |\n| &&
` break;` && |\n| &&
` case 'LOCATION_RELOAD':` && |\n| &&
` window.location = args[1];` && |\n| &&
` break;` && |\n| &&
` case 'OPEN_NEW_TAB':` && |\n| &&
` window.open(args[1], '_blank');` && |\n| &&
` break;` && |\n| &&
` case 'POPUP_CLOSE':` && |\n| &&
` sap.z2ui5.oController.PopupDestroy();` && |\n| &&
` break;` && |\n| &&
` case 'POPOVER_CLOSE':` && |\n| &&
` sap.z2ui5.oController.PopoverDestroy();` && |\n| &&
` break;` && |\n| &&
` case 'NAV_CONTAINER_TO':` && |\n| &&
` var navCon = sap.z2ui5.oView.byId(args[1]);` && |\n| &&
` var navConTo = sap.z2ui5.oView.byId(args[2]);` && |\n| &&
` navCon.to(navConTo);` && |\n| &&
` break;` && |\n| &&
` case 'NEST_NAV_CONTAINER_TO':` && |\n| &&
` var navCon = sap.z2ui5.oViewNest.byId(args[1]);` && |\n| &&
` var navConTo = sap.z2ui5.oViewNest.byId(args[2]);` && |\n| &&
` navCon.to(navConTo);` && |\n| &&
` break;` && |\n| &&
` case 'NEST2_NAV_CONTAINER_TO':` && |\n| &&
` var navCon = sap.z2ui5.oViewNest2.byId(args[1]);` && |\n| &&
` var navConTo = sap.z2ui5.oViewNest.byId(args[2]);` && |\n| &&
` navCon.to(navConTo);` && |\n| &&
` break;` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
|\n| &&
` onEvent: function(...args) {` && |\n| &&
` if (sap.z2ui5.isBusy) {` && |\n| &&
` if (sap.z2ui5.isBusy == true) {` && |\n| &&
` sap.z2ui5.b = new sap.m.BusyDialog();` && |\n| &&
` sap.z2ui5.b.open();` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.isBusy = true;` && |\n| &&
` if (!window.navigator.onLine) {` && |\n| &&
` sap.m.MessageBox.alert('No internet connection! Please reconnect to the server and try again.');` && |\n| &&
` sap.z2ui5.isBusy = false;` && |\n| &&
` return;` && |\n| &&
` }` && |\n| &&
` sap.ui.core.BusyIndicator.show();` && |\n| &&
` sap.z2ui5.oBody = {};` && |\n| &&
` let isUpdated = false;` && |\n| &&
` if (sap.z2ui5.oViewPopup) {` && |\n| &&
` if (!sap.z2ui5.oViewPopup.isOpen || sap.z2ui5.oViewPopup.isOpen() == true) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oViewPopup.getModel().getData().EDIT;` && |\n| &&
` isUpdated = true;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'MAIN';` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (isUpdated == false) {` && |\n| &&
` if (sap.z2ui5.oViewPopover) {` && |\n| &&
` if (sap.z2ui5.oViewPopover.isOpen) {` && |\n| &&
` if (sap.z2ui5.oViewPopover.isOpen() == true) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oViewPopover.getModel().getData().EDIT;` && |\n| &&
` isUpdated = true;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'MAIN';` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oViewPopover.destroy();` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (isUpdated == false) {` && |\n| &&
` if (sap.z2ui5.oViewNest == this.getView()) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oViewNest.getModel().getData().EDIT;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'NEST';` && |\n| &&
` isUpdated = true;` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` if (isUpdated == false) {` && |\n| &&
` sap.z2ui5.oBody.EDIT = sap.z2ui5.oView.getModel().getData().EDIT;` && |\n| &&
` sap.z2ui5.oBody.VIEWNAME = 'MAIN';` && |\n| &&
` }` && |\n| &&
|\n| &&
` sap.z2ui5.onBeforeRoundtrip.forEach(item=>{` && |\n| &&
` if (item !== undefined) {` && |\n| &&
` item();` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` )` && |\n| &&
` if (args[0].CHECK_VIEW_DESTROY) {` && |\n| &&
` sap.z2ui5.oController.ViewDestroy();` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oBody.ID = sap.z2ui5.oResponse.ID;` && |\n| &&
` sap.z2ui5.oBody.ARGUMENTS = args;` && |\n| &&
|\n| &&
` if (sap.z2ui5.checkLogActive) {` && |\n| &&
` console.log('Request Object:');` && |\n| &&
` console.log(sap.z2ui5.oBody);` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oResponseOld = sap.z2ui5.oResponse;` && |\n| &&
` sap.z2ui5.oResponse = {};` && |\n| &&
` sap.z2ui5.oController.Roundtrip();` && |\n| &&
` },` && |\n| &&
` responseError: response=>{` && |\n| &&
` document.write(response);` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` responseSuccess: response=>{` && |\n| &&
|\n| &&
` sap.z2ui5.oResponse = JSON.parse(response);` && |\n| &&
|\n| &&
` if (sap.z2ui5.checkLogActive) {` && |\n| &&
` console.log('Response Object:');` && |\n| &&
` console.log(JSON.parse(JSON.stringify(sap.z2ui5.oResponse)));` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.XML !== '') {` && |\n| &&
` console.log('UI5-XML-View:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_VIEW.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Popup:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_POPUP.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Popover:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_POPOVER.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Nest:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML !== '') {` && |\n| &&
` console.log('UI5-XML-Nest2:');` && |\n| &&
` console.log(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.XML);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
|\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.CHECK_DESTROY == true) {` && |\n| &&
` sap.z2ui5.oController.ViewDestroy();` && |\n| &&
` }` && |\n| &&
|\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.XML !== '') {` && |\n| &&
|\n| &&
` sap.z2ui5.oController.ViewDestroy();` && |\n| &&
|\n| &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW.XML,` && |\n| &&
` controller: sap.z2ui5.oController,` && |\n| &&
` }).then(oView=>{` && |\n| &&
` try {` && |\n| &&
` var oview_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` oview_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` try {` && |\n| &&
` oView.setModel(oview_model);` && |\n| &&
` } catch (e) {` && |\n| &&
` oView.setModel(oview_model);` && |\n| &&
` }` && |\n| &&
` } catch (e) {` && |\n| &&
` sap.m.MessageBox.error('Error while creating Main View - ' + e.message);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oParent) {` && |\n| &&
` sap.z2ui5.oParent.removeAllPages();` && |\n| &&
` sap.z2ui5.oParent.insertPage(oView);` && |\n| &&
` } else {` && |\n| &&
` oView.placeAt("content")` && |\n| &&
` }` && |\n| &&
` ;sap.ui.getCore().getMessageManager().registerObject(oView, true);` && |\n| &&
` sap.z2ui5.oView = oView;` && |\n| &&
` }` && |\n| &&
` , );` && |\n| &&
` } else {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` var main_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` main_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` sap.z2ui5.oView.setModel(main_model);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` var nest_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` nest_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` sap.z2ui5.oViewNest.setModel(nest_model);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST2.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` var nest2_model = new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` nest2_model.setSizeLimit(sap.z2ui5.JSON_MODEL_LIMIT);` && |\n| &&
` sap.z2ui5.oViewNest2.setModel(nest2_model);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPUP.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` sap.z2ui5.oViewPopup.setModel(new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL));` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` sap.z2ui5.oViewPopover.setModel(new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL));` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oController.onAfterRendering();` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_MSG_TOAST.TEXT !== '') {` && |\n| &&
` sap.m.MessageToast.show(sap.z2ui5.oResponse.PARAMS.S_MSG_TOAST.TEXT);` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_MSG_BOX.TEXT !== '') {` && |\n| &&
` sap.m.MessageBox[sap.z2ui5.oResponse.PARAMS.S_MSG_BOX.TYPE](sap.z2ui5.oResponse.PARAMS.S_MSG_BOX.TEXT);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` readHttp: ()=>{` && |\n| &&
|\n| &&
` var xhr = new XMLHttpRequest();` && |\n| &&
` xhr.open("POST", sap.z2ui5.pathname, true);` && |\n| &&
` xhr.onload = (that)=>{` && |\n| &&
` if (that.target.status !== 200) {` && |\n| &&
` sap.z2ui5.oController.responseError(that.target.response);` && |\n| &&
` } else {` && |\n| &&
` sap.z2ui5.oController.responseSuccess(that.target.response);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` xhr.send(JSON.stringify(sap.z2ui5.oBody));` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` Roundtrip: ()=>{` && |\n| &&
|\n| &&
` sap.z2ui5.checkTimerActive = false;` && |\n| &&
` sap.z2ui5.checkNestAfter = false;` && |\n| &&
` sap.z2ui5.checkNestAfter2 = false;` && |\n| &&
|\n| &&
` sap.z2ui5.oBody.OLOCATION = {` && |\n| &&
` ORIGIN: window.location.origin,` && |\n| &&
` PATHNAME: sap.z2ui5.pathname,` && |\n| &&
` SEARCH: window.location.search,` && |\n| &&
` VERSION: sap.ui.getVersionInfo().gav,` && |\n| &&
` CHECK_LAUNCHPAD_ACTIVE: sap.ushell !== undefined,` && |\n| &&
` STARTUP_PARAMETERS: sap.z2ui5.startupParameters,` && |\n| &&
` };` && |\n| &&
` if (sap.z2ui5.search) {` && |\n| &&
` sap.z2ui5.oBody.OLOCATION.SEARCH = sap.z2ui5.search;` && |\n| &&
` }` && |\n| &&
|\n| &&
` if (sap.z2ui5.readOData) {` && |\n| &&
` sap.z2ui5.readOData();` && |\n| &&
` } else {` && |\n| &&
` sap.z2ui5.oController.readHttp();` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` ,` && |\n| &&
` });` && |\n| &&
|\n| &&
` if (!sap.z2ui5) {` && |\n| &&
` sap.z2ui5 = {};` && |\n| &&
` }` && |\n| &&
` if (!sap.z2ui5.pathname) {` && |\n| &&
` sap.z2ui5.pathname = window.location.pathname;` && |\n| &&
` // sap.z2ui5.pathname = ``/sap/bc/http/sap/y2ui5_http_handler``;` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.checkNestAfter = false;` && |\n| &&
` jQuery.sap.require("sap.ui.core.Fragment");` && |\n| &&
` jQuery.sap.require("sap.m.MessageToast");` && |\n| &&
` jQuery.sap.require("sap.m.MessageBox");` && |\n| &&
` jQuery.sap.require("sap.ui.model.json.JSONModel");` && |\n| &&
` var xml = atob('PA==') + 'mvc:View controllerName="z2ui5_controller" xmlns:mvc="sap.ui.core.mvc" /' + atob('Pg==');` && |\n| &&
` var oView = sap.ui.xmlview({` && |\n| &&
` viewContent: xml` && |\n| &&
` });` && |\n| &&
` sap.z2ui5.oController = oView.getController();` && |\n| &&
` var oViewNest = sap.ui.xmlview({` && |\n| &&
` viewContent: xml` && |\n| &&
` });` && |\n| &&
` var oViewNest2 = sap.ui.xmlview({` && |\n| &&
` viewContent: xml` && |\n| &&
` });` && |\n| &&
` sap.z2ui5.oControllerNest = oViewNest.getController();` && |\n| &&
` sap.z2ui5.oControllerNest2 = oViewNest.getController();` && |\n| &&
` sap.z2ui5.oBody = {};` && |\n| &&
` sap.z2ui5.oBody.APP_START = sap.z2ui5.APP_START;` && |\n| &&
` sap.z2ui5.oController.Roundtrip();` && |\n| &&
` sap.z2ui5.log = ()=>{` && |\n| &&
` console.log(sap.z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
` }` && |\n| &&
` ;` && |\n| &&
` sap.z2ui5.oController.oUtil = {};` && |\n| &&
` sap.z2ui5.oController.oUtil.oDate = {};` && |\n| &&
` sap.z2ui5.oController.oUtil.oDate.createObject = (s)=>{` && |\n| &&
` return new Date(s);` && |\n| &&
` }` && |\n| &&
` jQuery.sap.declare("sap.z2ui5.Helper");` && |\n| &&
` sap.z2ui5.onBeforeRoundtrip = [];` && |\n| &&
` sap.z2ui5.Helper = {};` && |\n| &&
` sap.z2ui5.Helper.DateCreateObject = (s=>new Date(s));` && |\n| &&
` sap.z2ui5.Helper.DateAbapTimestampToDate = (sTimestamp=>new sap.gantt.misc.Format.abapTimestampToDate(sTimestamp));` && |\n| &&
` sap.z2ui5.Helper.DateAbapDateToDateObject = (d=>new Date(d.slice(0, 4),(d[4] + d[5]) - 1,d[6] + d[7]));` && |\n| &&
` sap.z2ui5.Helper.DateAbapDateTimeToDateObject = ((d,t='000000')=>new Date(d.slice(0, 4),(d[4] + d[5]) - 1,d[6] + d[7],t.slice(0, 2),t.slice(2, 4),t.slice(4, 6)));` && |\n| &&
` sap.z2ui5.JSON_MODEL_LIMIT = ` && json_model_limit && `;` && |\n| &&
` sap.z2ui5.checkLogActive = ` && z2ui5_cl_fw_utility=>boolean_abap_2_json( check_logging ) && `;` && |\n| &&
lv_add_js && |\n| &&
` });` && |\n| &&
`</script>` && |\n| &&
`<abc/></body></html>`.
* ` sap.z2ui5.checkLogActive = ` && z2ui5_lcl_utility=>get_json_boolean( check_logging ) && `;` && |\n| &&
ENDMETHOD.

View File

@ -57,34 +57,15 @@ INTERFACE z2ui5_if_client
app TYPE REF TO z2ui5_if_app,
END OF ty_s_draft.
TYPES:
BEGIN OF ty_s_cursor,
id TYPE string,
cursorpos TYPE i,
selectionstart TYPE i,
selectionend TYPE i,
END OF ty_s_cursor.
TYPES:
BEGIN OF ty_s_message_manager,
type TYPE string,
message TYPE string,
additionaltext TYPE string,
atargets TYPE string,
END OF ty_s_message_manager,
ty_t_message_manager TYPE TABLE OF ty_s_message_manager WITH EMPTY KEY.
TYPES:
BEGIN OF ty_s_get,
event TYPE string,
t_event_arg TYPE string_table,
t_scroll_pos TYPE ty_t_name_value_int,
t_message_manager TYPE ty_t_message_manager,
check_launchpad_active TYPE abap_bool,
check_on_navigated TYPE abap_bool,
viewname TYPE string,
s_draft TYPE ty_s_draft,
s_cursor TYPE ty_s_cursor,
s_config TYPE ty_s_config,
END OF ty_s_get.
@ -96,15 +77,6 @@ INTERFACE z2ui5_if_client
METHODS view_model_update.
METHODS title_set
IMPORTING
val TYPE clike.
METHODS timer_set
IMPORTING
interval_ms TYPE clike OPTIONAL
event_finished TYPE clike.
METHODS nest_view_display
IMPORTING
val TYPE clike
@ -125,27 +97,10 @@ INTERFACE z2ui5_if_client
METHODS nest2_view_destroy.
METHODS nest2_view_model_update.
METHODS cursor_set
IMPORTING
id TYPE clike
cursorpos TYPE i
selectionstart TYPE i
selectionend TYPE i.
METHODS scroll_position_set
IMPORTING
val TYPE ty_t_name_value_int.
METHODS popup_display
IMPORTING
val TYPE clike.
METHODS message_manager_add
IMPORTING
val TYPE ty_t_message_manager.
METHODS message_manager_clear.
METHODS popup_model_update.
METHODS popup_destroy.
@ -182,10 +137,6 @@ INTERFACE z2ui5_if_client
text TYPE clike
type TYPE clike DEFAULT 'information'.
METHODS url_param_set
IMPORTING
val TYPE clike.
METHODS message_toast_display
IMPORTING
text TYPE string.
@ -235,10 +186,4 @@ INTERFACE z2ui5_if_client
IMPORTING
val TYPE data.
METHODS factory_view
IMPORTING
check_popup TYPE abap_bool DEFAULT abap_false
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_ui5.
ENDINTERFACE.