update utility functions (#499)

* update nav container and frontend method

* update date functions

* update

* update client event handling

* update constants

* update

* update utility functions

* update
This commit is contained in:
oblomov 2023-08-17 19:09:43 +02:00 committed by GitHub
parent 4a23162072
commit ffc3b52533
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 87 additions and 40 deletions

View File

@ -158,11 +158,13 @@ CLASS Z2UI5_CL_FW_APP IMPLEMENTATION.
href = `https://github.com/oblomov-dev/abap2UI5-demos` ). href = `https://github.com/oblomov-dev/abap2UI5-demos` ).
ENDIF. ENDIF.
form->content( `form` )->label( )->button( data(cont) = form->content( `form` ).
cont->label( ).
cont->button(
text = 'Continue...' text = 'Continue...'
press = client->_event( val = `DEMOS` check_view_destroy = abap_true ) press = client->_event( val = `DEMOS` check_view_destroy = abap_true )
enabled = xsdbool( mv_check_demo = abap_true ) enabled = xsdbool( mv_check_demo = abap_true ) )->get( ).
)->button( visible = abap_false )->link( text = 'More on GitHub...' cont->button( visible = abap_false )->link( text = 'More on GitHub...'
target = '_blank' target = '_blank'
href = 'https://github.com/abap2UI5/abap2UI5-documentation/blob/main/docs/links.md' ). href = 'https://github.com/abap2UI5/abap2UI5-documentation/blob/main/docs/links.md' ).

View File

@ -161,10 +161,11 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` setTimeout(() => {` && |\n| && ` setTimeout(() => {` && |\n| &&
` if (sap.z2ui5.checkTimerActive) {` && |\n| && ` if (sap.z2ui5.checkTimerActive) {` && |\n| &&
` let method = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 0 ];` && |\n| && ` let method = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 0 ];` && |\n| &&
` // let oEvent = JSON.parse( sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].replaceAll( "'" , '"' ) );` && |\n| && ` let oArgs = [];` && |\n| &&
` let oArgs = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].split( ',' );` && |\n| && ` oArgs.push( JSON.parse( (sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].split( '}' )[ 0 ] + '}').replaceAll( "'" , '"' ) ) );` && |\n| &&
` oArgs[ 0 ] = JSON.parse( oArgs[ 0 ].replaceAll( "'" , '"' ) );` && |\n| && ` let oArgsPara = sap.z2ui5.oResponse.PARAMS.S_TIMER.EVENT_FINISHED.split( '(' )[ 1 ].split( ')' )[ 0 ].split( '}' )[ 1 ].split( ',' ).slice(1);` && |\n| &&
` oArgs[ 1 ] = oArgs[1].trim().replaceAll( '"' , '' ); ` && |\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| && ` if (method == 'onEvent'){ sap.z2ui5.oController.onEvent(...oArgs); }else{ sap.z2ui5.oController.onEventFrontend(...oArgs); }` && |\n| &&
` }` && |\n| && ` }` && |\n| &&
` }, sap.z2ui5.oResponse.PARAMS.S_TIMER.INTERVAL_MS, oEvent);` && |\n| && ` }, sap.z2ui5.oResponse.PARAMS.S_TIMER.INTERVAL_MS, oEvent);` && |\n| &&
@ -412,7 +413,16 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` sap.z2ui5.oBody.APP_START = sap.z2ui5.APP_START;` && |\n| && ` sap.z2ui5.oBody.APP_START = sap.z2ui5.APP_START;` && |\n| &&
` sap.z2ui5.oController.Roundtrip();` && |\n| && ` sap.z2ui5.oController.Roundtrip();` && |\n| &&
` sap.z2ui5.log = () => { console.log(sap.z2ui5.oResponse.OVIEWMODEL ); };` && |\n| && ` sap.z2ui5.log = () => { console.log(sap.z2ui5.oResponse.OVIEWMODEL ); };` && |\n| &&
` });` && |\n| && ` sap.z2ui5.oController.oUtil = {}; ` && |\n| &&
` sap.z2ui5.oController.oUtil.oDate = {}; ` && |\n| &&
` sap.z2ui5.oController.oUtil.oDate.createObject = (s) => { debugger; return new Date(s); }` && |\n| &&
` jQuery.sap.declare("z2ui5.Helper");` && |\n| &&
`z2ui5.Helper = {};` && |\n| &&
`z2ui5.Helper.DateCreateObject = (s => new Date(s));` && |\n| &&
`z2ui5.Helper.DateAbapTimestampToDate = (sTimestamp => new sap.gantt.misc.Format.abapTimestampToDate(sTimestamp));` && |\n| &&
`z2ui5.Helper.DateAbapDateToDateObject = (d => new Date(d.slice(0,4), (d[4]+d[5])-1, d[6]+d[7]));` && |\n| &&
`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| &&
` });` && |\n| &&
`</script>` && |\n| && `</script>` && |\n| &&
`<abc/></html>`. `<abc/></html>`.

View File

@ -410,14 +410,20 @@ CLASS z2ui5_cl_xml_view DEFINITION
METHODS get_parent METHODS get_parent
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS get METHODS get
IMPORTING
name TYPE string OPTIONAL
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS get_child METHODS get_child
IMPORTING IMPORTING
!index TYPE i DEFAULT 1 !index TYPE i DEFAULT 1
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS columns METHODS columns
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
@ -758,8 +764,8 @@ CLASS z2ui5_cl_xml_view DEFINITION
METHODS image METHODS image
IMPORTING IMPORTING
!src TYPE clike OPTIONAL !src TYPE clike OPTIONAL
!class TYPE clike OPTIONAL !class TYPE clike OPTIONAL
!height TYPE clike OPTIONAL !height TYPE clike OPTIONAL
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS date_picker METHODS date_picker
@ -991,14 +997,22 @@ CLASS z2ui5_cl_xml_view DEFINITION
IMPORTING IMPORTING
!htmltext TYPE clike OPTIONAL !htmltext TYPE clike OPTIONAL
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS _generic METHODS _generic
IMPORTING IMPORTING
!name TYPE clike !name TYPE clike
!ns TYPE clike OPTIONAL !ns TYPE clike OPTIONAL
!t_prop TYPE z2ui5_if_client=>ty_t_name_value OPTIONAL !t_prop TYPE z2ui5_if_client=>ty_t_name_value OPTIONAL
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view . VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS _generic_property
IMPORTING
!val TYPE z2ui5_if_client=>ty_s_name_value OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS cc_file_uploader METHODS cc_file_uploader
IMPORTING IMPORTING
!value TYPE clike OPTIONAL !value TYPE clike OPTIONAL
@ -1388,7 +1402,7 @@ CLASS z2ui5_cl_xml_view DEFINITION
METHODS icon_tab_filter METHODS icon_tab_filter
IMPORTING IMPORTING
!items TYPE clike OPTIONAL !items TYPE clike OPTIONAL
!showall TYPE abap_bool OPTIONAL !showall TYPE abap_bool OPTIONAL
!icon TYPE clike OPTIONAL !icon TYPE clike OPTIONAL
!iconcolor TYPE clike OPTIONAL !iconcolor TYPE clike OPTIONAL
@ -1570,13 +1584,13 @@ CLASS z2ui5_cl_xml_view DEFINITION
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view. VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS Nav_Container METHODS Nav_Container
IMPORTING IMPORTING
!initialPage TYPE clike OPTIONAL !initialPage TYPE clike OPTIONAL
!id TYPE clike OPTIONAL !id TYPE clike OPTIONAL
!defaultTransitionName TYPE clike OPTIONAL !defaultTransitionName TYPE clike OPTIONAL
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view. VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS pages METHODS pages
RETURNING RETURNING
@ -1611,7 +1625,7 @@ CLASS z2ui5_cl_xml_view DEFINITION
!confirm TYPE clike OPTIONAL !confirm TYPE clike OPTIONAL
!selectionChange TYPE clike OPTIONAL !selectionChange TYPE clike OPTIONAL
RETURNING RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view. VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
PROTECTED SECTION. PROTECTED SECTION.
@ -1638,7 +1652,7 @@ ENDCLASS.
CLASS Z2UI5_CL_XML_VIEW IMPLEMENTATION. CLASS z2ui5_cl_xml_view IMPLEMENTATION.
METHOD actions. METHOD actions.
@ -1769,6 +1783,7 @@ CLASS Z2UI5_CL_XML_VIEW IMPLEMENTATION.
METHOD button. METHOD button.
result = me. result = me.
_generic( name = `Button` _generic( name = `Button`
ns = ns ns = ns
@ -2484,7 +2499,18 @@ CLASS Z2UI5_CL_XML_VIEW IMPLEMENTATION.
METHOD get. METHOD get.
result = mo_root->mo_previous.
IF name IS INITIAL.
result = mo_root->mo_previous.
RETURN.
ENDIF.
IF mo_parent->mv_name = name.
result = mo_parent.
ELSE.
result = mo_parent->get( name ).
ENDIF.
ENDMETHOD. ENDMETHOD.
@ -3561,28 +3587,28 @@ CLASS Z2UI5_CL_XML_VIEW IMPLEMENTATION.
METHOD Table_Select_Dialog. METHOD Table_Select_Dialog.
result = _generic( name = `TableSelectDialog` result = _generic( name = `TableSelectDialog`
t_prop = VALUE #( ( n = `confirmButtonText` v = confirmButtonText ) t_prop = VALUE #( ( n = `confirmButtonText` v = confirmButtonText )
( n = `contentHeight` v = contentHeight ) ( n = `contentHeight` v = contentHeight )
( n = `contentWidth` v = contentWidth ) ( n = `contentWidth` v = contentWidth )
( n = `draggable` v = z2ui5_cl_fw_utility=>get_json_boolean( draggable ) ) ( n = `draggable` v = z2ui5_cl_fw_utility=>get_json_boolean( draggable ) )
( n = `growing` v = z2ui5_cl_fw_utility=>get_json_boolean( growing ) ) ( n = `growing` v = z2ui5_cl_fw_utility=>get_json_boolean( growing ) )
( n = `growingThreshold` v = growingThreshold ) ( n = `growingThreshold` v = growingThreshold )
( n = `multiSelect` v = z2ui5_cl_fw_utility=>get_json_boolean( multiSelect ) ) ( n = `multiSelect` v = z2ui5_cl_fw_utility=>get_json_boolean( multiSelect ) )
( n = `noDataText` v = noDataText ) ( n = `noDataText` v = noDataText )
( n = `rememberSelections` v = z2ui5_cl_fw_utility=>get_json_boolean( rememberSelections ) ) ( n = `rememberSelections` v = z2ui5_cl_fw_utility=>get_json_boolean( rememberSelections ) )
( n = `resizable` v = z2ui5_cl_fw_utility=>get_json_boolean( resizable ) ) ( n = `resizable` v = z2ui5_cl_fw_utility=>get_json_boolean( resizable ) )
( n = `searchPlaceholder` v = searchPlaceholder ) ( n = `searchPlaceholder` v = searchPlaceholder )
( n = `showClearButton` v = z2ui5_cl_fw_utility=>get_json_boolean( showClearButton ) ) ( n = `showClearButton` v = z2ui5_cl_fw_utility=>get_json_boolean( showClearButton ) )
( n = `title` v = title ) ( n = `title` v = title )
( n = `titleAlignment` v = titleAlignment ) ( n = `titleAlignment` v = titleAlignment )
( n = `items` v = items ) ( n = `items` v = items )
( n = `search` v = search ) ( n = `search` v = search )
( n = `confirm` v = confirm ) ( n = `confirm` v = confirm )
( n = `cancel` v = cancel ) ( n = `cancel` v = cancel )
( n = `liveChange` v = liveChange ) ( n = `liveChange` v = liveChange )
( n = `selectionChange` v = selectionChange ) ( n = `selectionChange` v = selectionChange )
( n = `visible` v = z2ui5_cl_fw_utility=>get_json_boolean( visible ) ) ) ). ( n = `visible` v = z2ui5_cl_fw_utility=>get_json_boolean( visible ) ) ) ).
ENDMETHOD. ENDMETHOD.
@ -3972,4 +3998,13 @@ CLASS Z2UI5_CL_XML_VIEW IMPLEMENTATION.
result = result2. result = result2.
ENDMETHOD. ENDMETHOD.
METHOD _generic_property.
INSERT val INTO TABLE mt_prop.
result = me.
ENDMETHOD.
ENDCLASS. ENDCLASS.