BW
Important articles for quick-access: BW important programs / Function modules / Tables BW formula parameters Useful modern ABAP statements for BW transformations All BW related articles: https://pawelwiejkut.dev/tags/bw/
Important articles for quick-access: BW important programs / Function modules / Tables BW formula parameters Useful modern ABAP statements for BW transformations All BW related articles: https://pawelwiejkut.dev/tags/bw/

This tutorial group describes how to create a simple SAC App step by step. We are beginning from the new data model, and go through dropdowns, cascade filtering, design and popups. Everything step by step with screenshots and gifs. Create new model on SAC Simple APP on SAC Create and fill a dropdown in SAC APP Cascade filtering in SAC Design the app and create button to clean the filters Select dimensions by CheckBox and Button Create a popup to change dimensions order
You may wonder how to execute AMDP TRFN directly via ABAP. It seems that the best idea is to use the method below: cl_rstran_db_stat=>execute_haap( EXPORTING i_processing_phase = lr_request->if_rsbk_request~get_stage( )-stage_id i_target_request = lr_request->if_rsbk_request~get_requid( ) i_dtp = lr_dtp->n_dtp i_t_trfn = lr_request->if_rsbk_request~get_t_transformation( i_only_she_relevant = rs_c_true ) i_r_log = lr_request->if_rsbk_request~get_log( ) i_simulation = lr_request->get_simulation( ) i_th_bp = lt_bp i_r_outbound = lr_outbound IMPORTING e_r_analysis_rt = DATA(lr_analysis) ). DATA(lr_segment_outbound) = lr_outbound->get_segment( i_segid = 001 ). Unfortunately you can’t put data into this method - it always reads it from the ADSO table and provides only the result. For a complete use case please check out this repository.
How to insert the data into the BW ADSO on the BW on Hana and BW4HANA ? The easy way is just to use the official function module delivered by SAP Example ADSO: Example code: REPORT zadsoamdp. DATA: lt_data TYPE STANDARD TABLE OF /bic/aadsoamdp2, lt_msg TYPE rs_t_msg. APPEND VALUE #( field1 = '1' field2 = '2' ) TO lt_data. CALL FUNCTION 'RSDSO_DU_WRITE_API' EXPORTING i_adsonm = 'ADSOAMDP' it_data = lt_data IMPORTING et_msg = lt_msg EXCEPTIONS write_failed = 1 datastore_not_found = 2 OTHERS = 3. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. cl_demo_output=>display( EXPORTING data = lt_msg ).
Most of the objects are not modifiable on the quality or production systems, but we have exceptions like Infopackages on BW. Yesterday I have to check who deleted an object from the system and fortunately, there is the log for this operation. I will show you how to check this. We have to go to the transaction SGL1 and search for RSSM Now you should be able to find the impostor 🙂 ...
Toady short tutorial about extending the decision tree in the process chain. As you probably know decision three blocks can be extended. In our example, we want to run a delta info package in everyday processing, and depending on our customizing perform a full load. Process chain example: Customization table: Basically, if the value of param ISIP in our customer table is set to DELTA, we want to execute the delta info package. If param will be set to the FULL, execute ISIP in full mode. ...
Today I want to show you a simple way to debug a batch job. Sometimes you just want to debug some process witch default runs in batch. Everything looks simple but you should notice that breakpoints sometimes don’t work in these cases. The situation can be even worst when your job runs only a few seconds. First of all if your job works for a short time, you just should keep him working for a while. To do this you just can create an infinitive loop. So just go to your code and in property place paste: data: lv_wait. while lv_wait <> 1. endwhile. Now go to transaction sm50, click on „ALL work process” and then select your process. Remember that your background process could run on one of many application servers Click on Administration-> Program -> Debugging. After confirming the pop-up you should see a debugger.