

METHOD process_event .
DATA ls_row TYPE zcl_lst_schulung=>ty_list.
CHECK wd_this->lo_html IS BOUND.
IF io_event->mv_event_id EQ 'EV_SELECTED_ROW'.
io_event->mo_event_data->get_value(
EXPORTING
iv_key = 'SELECTED_ROW'
IMPORTING
ev_value = ls_row
).
IF ls_row-videolink IS INITIAL.
wd_this->lo_html->set_html( '<p align="center"><b>Es wurde kein Video ausgewählt</b></p>' ).
ELSE.
DATA(l_string) = '<video width="100%" height="100%" controls autoplay preload="none">'
&& '<source src=" ' && ls_row-videolink && '" type="video/mp4">'
&& 'Browser unterstützt keine Videos'
&& '</video>'.
wd_this->lo_html->set_html( l_string ).
ENDIF.
elseif io_event->mv_event_id NE if_fpm_guibb_list=>gc_guibb_list_on_cell_action "Speichern und Auswahl in Liste ignorieren
AND io_event->mv_event_id NE if_fpm_constants=>gc_event-save
AND io_event->mv_event_id NE if_fpm_constants=>gc_event-edit.
wd_this->lo_html->set_html( '<p align="center"><b>Es wurde kein Video ausgewählt</b></p>' ).
ENDIF.
ENDMETHOD.


METHOD if_fpm_guibb_form~process_event.
TYPES: BEGIN OF ty_mailadress,
mailadress TYPE char100,
END OF ty_mailadress.
DATA mt_mailadress TYPE TABLE OF ty_mailadress. "Mailadressen
io_event->mo_event_data->get_value(
EXPORTING
iv_key = 'DIALOG_BOX_ID'
IMPORTING
ev_value = m_dialog_box_id
).
io_event->mo_event_data->get_value(
EXPORTING
iv_key = 'DIALOG_BUTTON_ACTION'
IMPORTING
ev_value = m_button
).
"Pflichtefelder prüfen
IF ( ms_rueckmeldung-kunde IS INITIAL OR ms_rueckmeldung-name IS INITIAL OR ms_rueckmeldung-telefon IS INITIAL )
AND NOT ( m_button EQ if_fpm_constants=>gc_dialog_action_id-close OR m_button EQ if_fpm_constants=>gc_dialog_action_id-cancel ).
et_messages = VALUE #( ( msgid = 'ZN_SCHULUNG' msgno = '002' severity = 'E' ) ).
ev_result = if_fpm_constants=>gc_event_result-failed.
RETURN.
ENDIF.
IF m_button EQ if_fpm_constants=>gc_dialog_action_id-ok. "Anfrage senden
"Mailadressen holen
CONSTANTS:lv_function_id TYPE if_fdt_types=>id VALUE '005056AD48AD1ED7B28C9B8E681414E6'.
DATA:lv_timestamp TYPE timestamp,
lt_name_value TYPE abap_parmbind_tab,
ls_name_value TYPE abap_parmbind,
lr_data TYPE REF TO data,
lx_fdt TYPE REF TO cx_fdt.
FIELD-SYMBOLS <la_any> TYPE any.
GET TIME STAMP FIELD lv_timestamp.
cl_fdt_function_process=>get_data_object_reference( EXPORTING iv_function_id = lv_function_id
iv_data_object = '_V_RESULT'
iv_timestamp = lv_timestamp
iv_trace_generation = abap_false
IMPORTING er_data = lr_data ).
ASSIGN lr_data->* TO <la_any>.
TRY.
cl_fdt_function_process=>process( EXPORTING iv_function_id = lv_function_id
iv_timestamp = lv_timestamp
IMPORTING ea_result = <la_any>
CHANGING ct_name_value = lt_name_value ).
CATCH cx_fdt INTO lx_fdt.
ENDTRY.
mt_mailadress = CORRESPONDING #( <la_any> ).
IF mt_mailadress IS NOT INITIAL.
DATA(lo_bcs_message) = NEW cl_bcs_message( ).
lo_bcs_message->set_sender( 'dummy@mail.de' ).
lo_bcs_message->set_subject( |{ SWITCH #( m_dialog_box_id WHEN 'CALL' THEN 'Rückruf' WHEN 'WEBINAR' THEN 'Webinar' ) } angefordert für { ms_rueckmeldung-kunde }({ sy-sysid }/{ sy-mandt })| ).
LOOP AT mt_mailadress ASSIGNING FIELD-SYMBOL(<ls_mailadress>).
lo_bcs_message->add_recipient( CONV #( <ls_mailadress> ) ).
ENDLOOP.
lo_bcs_message->set_importance('H').
lo_bcs_message->set_send_immediately( abap_true ).
lo_bcs_message->set_main_doc(
EXPORTING
iv_contents_bin = get_mail_body( ) " Hauptdokument, 1. Bodypart (binär)
iv_doctype = 'htm' " Dokumententyp
).
TRY.
lo_bcs_message->send( ).
et_messages = VALUE #( ( msgid = 'ZN_SCHULUNG' msgno = '003' severity = 'S' ) ).
CATCH cx_bcs_send INTO DATA(lo_cx).
et_messages = VALUE #( ( severity = 'E' plaintext = lo_cx->get_longtext( ) ) ).
ENDTRY.
ELSE.
et_messages = VALUE #( ( msgid = 'ZN_SCHULUNG' msgno = '004' severity = 'E' ) ).
ENDIF.
ENDIF.
ENDMETHOD.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 27 | |
| 24 | |
| 20 | |
| 20 | |
| 14 | |
| 13 | |
| 13 | |
| 12 | |
| 12 | |
| 11 |