draft cleanup and change of event arguments (#264)

* update

* update
This commit is contained in:
oblomov 2023-06-09 12:20:49 +02:00
parent 4ffc8396a0
commit d496a0801c
6 changed files with 46 additions and 73 deletions

View File

@ -110,7 +110,7 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` }` && |\n| &&
` },` && |\n| &&
|\n| &&
` onEvent: function (oEvent, isHoldView, vData , vData2 , vData3 ) {` && |\n| &&
` onEvent: function (oEvent) {` && |\n| &&
|\n| &&
` if (!window.navigator.onLine) {` && |\n| &&
` sap.m.MessageBox.alert('No internet connection! Please reconnect to the server and try again.');` && |\n| &&
@ -144,10 +144,7 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` });` && |\n| &&
` }` && |\n| &&
` this.oBody.ID = sap.z2ui5.oResponse.ID;` && |\n| &&
` this.oBody.oEvent = oEvent;` && |\n| &&
` this.oBody.oEvent.vData = vData;` && |\n| &&
` this.oBody.oEvent.vData2 = vData2;` && |\n| &&
` this.oBody.oEvent.vData3 = vData3;` && |\n| &&
` this.oBody.ARGUMENTS = arguments;` && |\n| &&
|\n| &&
` if (sap.z2ui5.checkLogActive) {` && |\n| &&
` console.log('Request Object:');` && |\n| &&
@ -156,7 +153,7 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` sap.z2ui5.oResponseOld = sap.z2ui5.oResponse;` && |\n| &&
` sap.z2ui5.oResponse = {};` && |\n| &&
` sap.z2ui5.oBody = this.oBody;` && |\n| &&
` sap.z2ui5.Roundtrip(isHoldView);` && |\n| &&
` sap.z2ui5.Roundtrip(oEvent.isHoldView);` && |\n| &&
` },` && |\n| &&
` Roundtrip: function (isHoldView) {` && |\n| &&
` sap.z2ui5.checkTimerActive = false;` && |\n| &&
@ -164,8 +161,6 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` sap.z2ui5.oView.destroy();` && |\n| &&
` } }` && |\n| &&
` var xhr = new XMLHttpRequest();` && |\n| &&
` // var url = "/sap/bc/http/sap/y2ui5_http_handler/";` && |\n| &&
` // xhr.open("POST", url, true);` && |\n| &&
` xhr.open("POST", sap.z2ui5.pathname , true);` && |\n| &&
` xhr.onload = function (that) {` && |\n| &&
|\n| &&
@ -226,7 +221,6 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
` var oView = sap.ui.xmlview({ viewContent: xml });` && |\n| &&
` sap.z2ui5.Roundtrip = oView.getController().Roundtrip;` && |\n| &&
` sap.z2ui5.oController = oView.getController();` && |\n| &&
` // sap.z2ui5.pathname = window.location.pathname;` && |\n| &&
` sap.z2ui5.Roundtrip(false);` && |\n| &&
` sap.z2ui5.onAfter = () => {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.TITLE != "") {` && |\n| &&
@ -332,4 +326,4 @@ CLASS Z2UI5_CL_HTTP_HANDLER IMPLEMENTATION.
ENDDO.
ENDMETHOD.
ENDCLASS.
ENDCLASS.

View File

@ -1168,36 +1168,30 @@ CLASS z2ui5_lcl_fw_db IMPLEMENTATION.
METHOD read.
IF check_load_app = abap_true.
SELECT SINGLE *
FROM z2ui5_t_draft
WHERE uuid = @id
INTO @result.
z2ui5_lcl_utility=>raise( when = xsdbool( sy-subrc <> 0 ) ).
ELSE.
SELECT SINGLE uuid, uuid_prev, uuid_prev_app, uuid_prev_app_stack
FROM z2ui5_t_draft
WHERE uuid = @id
INTO CORRESPONDING FIELDS OF @result.
z2ui5_lcl_utility=>raise( when = xsdbool( sy-subrc <> 0 ) ).
ENDIF.
z2ui5_lcl_utility=>raise( when = xsdbool( sy-subrc <> 0 ) ).
ENDMETHOD.
METHOD cleanup.
DATA lv_timestampl TYPE timestampl.
DATA lv_ts_now TYPE timestampl.
GET TIME STAMP FIELD lv_ts_now.
DATA(lv_time) = sy-uzeit.
lv_time = lv_time - ( 60 * 60 * 4 ).
DATA(lv_ts_four_hours_ago) = cl_abap_tstmp=>subtractsecs(
tstmp = lv_ts_now
secs = 60 * 60 * 4 ).
CONVERT DATE sy-datum TIME lv_time
INTO TIME STAMP lv_timestampl TIME ZONE sy-zonlo.
DELETE FROM z2ui5_t_draft WHERE timestampl < @lv_timestampl.
DELETE FROM z2ui5_t_draft WHERE timestampl < @lv_ts_four_hours_ago.
COMMIT WORK.
ENDMETHOD.
@ -1318,13 +1312,6 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
json = `"` && <val> && `"`
CHANGING
data = <attribute> ).
" WHEN 'C'.
" CASE lr_attri->type.
" WHEN `ABAP_BOOL` OR `ABAP_BOOLEAN` OR `XSDBOOLEAN`.
" <attribute> = xsdbool( <val> = `true` ).
" WHEN OTHERS.
" <attribute> = <val>.
"° ENDCASE.
WHEN OTHERS.
<attribute> = <val>.
ENDCASE.
@ -1334,11 +1321,18 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
CATCH cx_root.
ENDTRY.
DATA(lo_arg) = mo_body->get_attribute( `ARGUMENTS` ).
TRY.
result->ms_actual-event = mo_body->get_attribute( `OEVENT` )->get_attribute( `EVENT` )->get_val( ).
result->ms_actual-event_data = mo_body->get_attribute( `OEVENT` )->get_attribute( `vData` )->get_val( ).
result->ms_actual-event_data2 = mo_body->get_attribute( `OEVENT` )->get_attribute( `vData2` )->get_val( ).
result->ms_actual-event_data3 = mo_body->get_attribute( `OEVENT` )->get_attribute( `vData3` )->get_val( ).
result->ms_actual-event = lo_arg->get_attribute( `0` )->get_attribute( `EVENT` )->get_val( ).
CATCH cx_root.
ENDTRY.
TRY.
DO.
DATA(lv_val) = lo_arg->get_attribute( CONV string( sy-index ) )->get_val( ).
INSERT lv_val INTO TABLE result->ms_actual-t_event_arg.
ENDDO.
CATCH cx_root.
ENDTRY.
@ -1408,7 +1402,6 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
result->ms_db-id_prev_app = ms_db-id.
result->ms_db-id_prev = ms_db-id.
" result->ms_next-s_set-path = `test`. "ms_next-s_set-path.
CLEAR ms_next.
ENDMETHOD.
@ -1449,7 +1442,8 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
RETURN.
ENDIF.
DATA(lr_in) = REF #( value ).
DATA lr_in TYPE REF TO data.
GET REFERENCE OF value INTO lr_in.
LOOP AT ms_db-t_attri REFERENCE INTO DATA(lr_attri)
WHERE bind_type <> cs_bind_type-one_time.
@ -1652,9 +1646,7 @@ CLASS z2ui5_lcl_fw_client IMPLEMENTATION.
result = VALUE #( BASE CORRESPONDING #( mo_handler->ms_db )
event = mo_handler->ms_actual-event
event_data = mo_handler->ms_actual-event_data
event_data2 = mo_handler->ms_actual-event_data2
event_data3 = mo_handler->ms_actual-event_data3
t_event_arg = mo_handler->ms_actual-t_event_arg
t_scroll_pos = mo_handler->ms_actual-t_scroll_pos
t_req_header = z2ui5_cl_http_handler=>client-t_header
t_req_param = z2ui5_cl_http_handler=>client-t_param
@ -1698,26 +1690,13 @@ CLASS z2ui5_lcl_fw_client IMPLEMENTATION.
METHOD z2ui5_if_client~_event.
IF data IS INITIAL.
DATA(lv_data) = `''`.
ELSE.
lv_data = data.
ENDIF.
result = `onEvent( { 'EVENT' : '` && val && `', 'METHOD' : 'UPDATE' , 'isHoldView' : ` && z2ui5_lcl_utility=>get_json_boolean( hold_view ) && ` }`.
IF data2 IS INITIAL.
DATA(lv_data2) = `''`.
ELSE.
lv_data2 = data2.
ENDIF.
LOOP AT t_arg REFERENCE INTO DATA(lr_arg).
result = result && `,` && lr_arg->*.
ENDLOOP.
IF data3 IS INITIAL.
DATA(lv_data3) = `''`.
ELSE.
lv_data3 = data3.
ENDIF.
result = `onEvent( { 'EVENT' : '` && val && `', 'METHOD' : 'UPDATE' } , ` && z2ui5_lcl_utility=>get_json_boolean( hold_view )
&& ` , ` && lv_data && ` , ` && lv_data2 && ` , ` && lv_data3 && ` )`.
result = result && `)`.
ENDMETHOD.
@ -1740,4 +1719,4 @@ CLASS z2ui5_lcl_fw_client IMPLEMENTATION.
ENDMETHOD.
ENDCLASS.
ENDCLASS.

View File

@ -895,7 +895,7 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
ENDIF.
DATA(lv_id) = CONV string( <val> ).
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"600"},"ID": "` && lv_id && `" ,"oEvent":{"EVENT":"BUTTON_POST","METHOD":"UPDATE"}}`.
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"600"},"ID": "` && lv_id && `" ,"ARGUMENTS":{"EVENT":"BUTTON_POST","METHOD":"UPDATE"}}`.
z2ui5_cl_http_handler=>client = VALUE #( body = lv_request ).
lv_response = z2ui5_cl_http_handler=>http_post( ).
@ -940,7 +940,7 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
ENDIF.
DATA(lv_id) = CONV string( <val> ).
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"700"},"ID": "` && lv_id && `" ,"oEvent":{"EVENT":"BUTTON_POST","METHOD":"UPDATE"}}`.
DATA(lv_request) = `{"oUpdate":{"QUANTITY":"700"},"ID": "` && lv_id && `" ,"ARGUMENTS": { "0" : {"EVENT":"BUTTON_POST","METHOD":"UPDATE"} } }`.
z2ui5_cl_http_handler=>client = VALUE #( body = lv_request ).
lv_response = z2ui5_cl_http_handler=>http_post( ).
@ -1167,4 +1167,4 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
ENDMETHOD.
ENDCLASS.
ENDCLASS.

View File

@ -312,6 +312,7 @@ CLASS z2ui5_cl_xml_view DEFINITION
submit TYPE clike OPTIONAL
valueHelpRequest TYPE clike OPTIONAL
enabled TYPE clike OPTIONAL
class TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
@ -1020,7 +1021,7 @@ ENDCLASS.
CLASS z2ui5_cl_xml_view IMPLEMENTATION.
CLASS Z2UI5_CL_XML_VIEW IMPLEMENTATION.
METHOD actions.
@ -2121,6 +2122,7 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
( n = `value` v = value )
( n = `id` v = id )
( n = `valueHelpRequest` v = valueHelpRequest )
( n = `class` v = class )
) ).
ENDMETHOD.
@ -2743,6 +2745,7 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
ENDMETHOD.
METHOD panel.
result = _generic(
@ -2755,6 +2758,7 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
ENDMETHOD.
METHOD vbox.
result = _generic(
@ -2837,4 +2841,4 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
result = result2.
ENDMETHOD.
ENDCLASS.
ENDCLASS.

View File

@ -77,4 +77,4 @@ CLASS lcl_utility IMPLEMENTATION.
ENDMETHOD.
ENDCLASS.
ENDCLASS.

View File

@ -11,9 +11,7 @@ INTERFACE z2ui5_if_client
TYPES:
BEGIN OF ty_s_get,
event TYPE string,
event_data TYPE string,
event_data2 TYPE string,
event_data3 TYPE string,
t_event_arg TYPE string_table,
id TYPE string,
id_prev TYPE string,
id_prev_app TYPE string,
@ -93,11 +91,9 @@ INTERFACE z2ui5_if_client
METHODS _event
IMPORTING
val TYPE clike
data TYPE clike OPTIONAL
data2 TYPE clike OPTIONAL
data3 TYPE clike OPTIONAL
hold_view TYPE abap_bool DEFAULT abap_false
val TYPE clike
hold_view TYPE abap_bool DEFAULT abap_false
t_arg TYPE string_table OPTIONAL
RETURNING
VALUE(result) TYPE string.
@ -105,4 +101,4 @@ INTERFACE z2ui5_if_client
RETURNING
VALUE(result) TYPE string.
ENDINTERFACE.
ENDINTERFACE.