1

私は SAP を初めて使用し、解決方法がわからない問題に直面しています。

プロパティを '' (空) に設定していますが、そのように表示されません。

チェックボックスがオンになっているときに特定のフィールドを「表示のみ」に設定する既存のロジックがあります。これを拡張して、これらのフィールド内のデータをクリアするように取り組んでいます。元のロジックがどのように実装されたかにより、この変更は "Get_..." メソッドで処理されます (機能するようになったら、イベント ハンドラーに移動される可能性があります)。

現在、ロジックはプロパティを空に設定しています (これはデバッグで確認済みです)。ただし、Web ページは元の値を保持します。コードの簡略化された概要を以下に示します (短くシンプルにするために、すべての try キャッチなどを削除しています)。

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 ''

このほとんどは「Set_...」メソッドから取得されました。どんな助けでも大歓迎です。

4

1 に答える 1

0

この問題は、ケースが完了する前の CRM ブラウザの自動保存が原因です。これにより、値がキャッシュされているかのようにレンダリングされます。

注 2104051 はこれを解決します。

于 2015-11-18T17:34:44.497 に答える