Untitled

 avatar
unknown
plain_text
2 months ago
2.6 kB
4
Indexable
READ TABLE lt_hdr INDEX 1 ASSIGNING <fs_hdr>.

        CHECK sy-subrc EQ 0.

        ls_iaq_opt_df-planningmarket = <fs_hdr>-planningmarketid.
        ls_iaq_opt_df-season         = <fs_hdr>-season.

        " Process articles and their child segments

        LOOP AT <fs_hdr>-articles ASSIGNING <fs_article>.
          CHECK <fs_article> IS ASSIGNED.
          " Extract article-level fields
          ls_iaq_opt_df-orderno = <fs_article>-orderno.
          ls_iaq_opt_df-vbeln   = <fs_article>-inbound_delivery.
          ls_iaq_opt_df-satnr   = <fs_article>-article_number.

          " Process store article rankings (child of articles)
**          READ TABLE <fs_article>-str_article_rank ASSIGNING <fs_str_art_rank> INDEX 1.
**          CHECK <fs_str_art_rank> IS ASSIGNED.
          LOOP AT <fs_article>-str_article_rank ASSIGNING <fs_str_art_rank>.
            " Extract store article ranking fields
            ls_iaq_opt_df-customer_to      = <fs_str_art_rank>-store.
            ls_iaq_opt_df-allo_perc        = <fs_str_art_rank>-allo_perc.
            ls_iaq_opt_df-str_rank_article = <fs_str_art_rank>-store_art_ranking.

            " Process variants (child of articles)
            LOOP AT <fs_article>-variants ASSIGNING <fs_variant>.
              CHECK  <fs_variant> IS ASSIGNED.
              " Extract variant-level fields
              ls_iaq_opt_df-matnr = <fs_variant>-variant.

              " Process store variant rankings (child of variants)
**              READ TABLE <fs_variant>-str_variant_rank ASSIGNING <fs_str_var_rank> INDEX 1.
**              CHECK <fs_str_var_rank> IS ASSIGNED.
              LOOP AT <fs_variant>-str_variant_rank ASSIGNING <fs_str_var_rank>.
                " Extract store variant ranking fields
                ls_iaq_opt_df-quantity         = <fs_str_var_rank>-qty.
                ls_iaq_opt_df-str_rank_variant = <fs_str_var_rank>-store_var_ranking.

                " Append the processed record to the final table
                APPEND ls_iaq_opt_df TO lt_iaq_opt_df_indata.
                CLEAR ls_iaq_opt_df.

              ENDLOOP. " End of variants loop
              UNASSIGN: <fs_variant> , <fs_str_var_rank> .
            ENDLOOP. " End of articles loop
          ENDLOOP.
        ENDLOOP.
        UNASSIGN: <fs_article>, <fs_str_art_rank>.
*        ENDIF.

        ".. Fetching all the existing entries from DB for Planning market
        me->fetch_iaq_fcast_db(
          EXPORTING
            it_iaq_fcast_inb = lt_iaq_opt_df_indata
          IMPORTING
            et_iaq_fcast_db = DATA(lt_iaq_fcast_db)
        ).
Editor is loading...
Leave a Comment