Saya baru mengenal SAP, dan saya mengalami masalah yang saya tidak yakin bagaimana cara mengatasinya.
Saya menyetel properti ke '' (kosong), tetapi tidak ditampilkan seperti itu.
Ada logika yang menetapkan bidang tertentu ke 'Hanya Tampilan' ketika kotak centang dicentang. Saya berupaya memperluas ini untuk menghapus data apa pun yang ada dalam bidang tersebut. Karena cara logika asli diimplementasikan, perubahan ini ditangani dalam metode "Get_..." (dapat dipindahkan ke event handler setelah saya membuatnya berfungsi).
Saat ini, logika menyetel properti menjadi kosong (saya telah mengonfirmasinya dengan debug); namun, halaman web tetap mempertahankan nilai aslinya. Garis besar kode yang dipersingkat ada di bawah (semua tangkapan percobaan, dll. dihapus agar tetap singkat dan sederhana):
DATA: current TYPE REF TO if_bol_bo_property_access.
DATA: dref TYPE REF TO data.
current = collection_wrapper->get_current( ).
dref = current->get_property( 'FIRSTNAME' ).
* If condition
DATA: copy TYPE REF TO data.
FIELD-SYMBOLS:
<nval> TYPE ANY,
<oval> TYPE ANY.
ASSIGN dref->* TO <oval>.
CREATE DATA copy LIKE <oval>.
CLEAR value.
TRY.
CALL METHOD if_bsp_model_util~convert_from_string
EXPORTING
data_ref = copy
value = value
attribute_path = attribute_path.
CATCH cx_sy_conversion_error.
RAISE EXCEPTION TYPE cx_bsp_conv_failed
EXPORTING
name = 'FIRSTNAME'.
ENDTRY.
current->set_property_as_string(
iv_attr_name = 'FIRSTNAME'
iv_value = value ).
value = current->get_property_text( 'FIRSTNAME' ). "Check empty ''
Sebagian besar diambil dari metode 'Set_...'. Bantuan apa pun akan dihargai.