<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic SMEN_BUFFC wrong menu_level in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754402#M2022015</link>
    <description>&lt;P&gt;I have written an SAP ABAP programme to manage favourites. Via the selection screen, a user can save a report with a name as a favourite among the favourites. A report can also be assigned to a folder if it was previously created in SAP via GUI. The user can do this by using the transaction code `/n` and then right clicking on 'Favourites' -&amp;gt; 'Insert Folder'.&lt;BR /&gt;&lt;BR /&gt;Now most things work, there is just one minor problem. When I create the first reports in the favourites folder by my program, and then create a folder by SAP GUI, the value of the column 'menu_level' of the two entries is set to '2'. However, this should be `1` because the folder and the report shortcut are in the root folder, i.e. in the first level.&lt;BR /&gt;&lt;BR /&gt;This does not happen when I start to create a folder and then add the reports with my program. The menu_level remains correct with the value '1'.&lt;BR /&gt;&lt;BR /&gt;Does anyone have an idea what the problem is and how I can fix it?&lt;BR /&gt;Here is my current, complete code:&lt;BR /&gt;&lt;BR /&gt; &lt;/P&gt;
  &lt;P&gt;```&lt;BR /&gt; REPORT z_report_fav.&lt;BR /&gt; &lt;BR /&gt; TYPE-POOLS: vrm.&lt;BR /&gt; &lt;BR /&gt; DATA: ls_smen_buffc TYPE smen_buffc,&lt;BR /&gt; lv_max_object_id TYPE smen_buffc-object_id,&lt;BR /&gt; lv_max_sort_order TYPE smen_buffc-sort_order,&lt;BR /&gt; lt_folders TYPE TABLE OF smen_buffc,&lt;BR /&gt; ls_folder TYPE smen_buffc,&lt;BR /&gt; lt_vrm_values TYPE vrm_values,&lt;BR /&gt; ls_vrm_value TYPE LINE OF vrm_values.&lt;BR /&gt; &lt;BR /&gt; CLASS lcl_menu_level DEFINITION.&lt;BR /&gt; PUBLIC SECTION.&lt;BR /&gt; METHODS: get_menu_level IMPORTING parent_id TYPE smen_buffc-parent_id&lt;BR /&gt; RETURNING VALUE(menu_level) TYPE i.&lt;BR /&gt; ENDCLASS.&lt;BR /&gt; &lt;BR /&gt; CLASS lcl_menu_level IMPLEMENTATION.&lt;BR /&gt; METHOD get_menu_level.&lt;BR /&gt; DATA lv_parent_id TYPE smen_buffc-parent_id.&lt;BR /&gt; lv_parent_id = parent_id.&lt;BR /&gt; menu_level = 1.&lt;BR /&gt; &lt;BR /&gt; WHILE lv_parent_id &amp;lt;&amp;gt; 1.&lt;BR /&gt; SELECT SINGLE parent_id INTO lv_parent_id FROM smen_buffc WHERE object_id = lv_parent_id.&lt;BR /&gt; IF sy-subrc = 0.&lt;BR /&gt; menu_level = menu_level + 1.&lt;BR /&gt; ELSE.&lt;BR /&gt; EXIT.&lt;BR /&gt; ENDIF.&lt;BR /&gt; ENDWHILE.&lt;BR /&gt; ENDMETHOD.&lt;BR /&gt; ENDCLASS.&lt;BR /&gt; &lt;BR /&gt; SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.&lt;BR /&gt; PARAMETERS: p_user TYPE sy-uname DEFAULT sy-uname,&lt;BR /&gt; p_report TYPE extdreport OBLIGATORY,&lt;BR /&gt; p_desc TYPE char100sm OBLIGATORY,&lt;BR /&gt; p_folder TYPE smen_buffc-text AS LISTBOX VISIBLE LENGTH 30.&lt;BR /&gt; SELECTION-SCREEN END OF BLOCK b1.&lt;BR /&gt; &lt;BR /&gt; INITIALIZATION.&lt;BR /&gt; SELECT * FROM smen_buffc INTO TABLE lt_folders WHERE uname = p_user AND reporttype = space.&lt;BR /&gt; &lt;BR /&gt; LOOP AT lt_folders INTO ls_folder.&lt;BR /&gt; ls_vrm_value-key = ls_folder-object_id.&lt;BR /&gt; ls_vrm_value-text = ls_folder-text.&lt;BR /&gt; APPEND ls_vrm_value TO lt_vrm_values.&lt;BR /&gt; ENDLOOP.&lt;BR /&gt; &lt;BR /&gt; CALL FUNCTION 'VRM_SET_VALUES'&lt;BR /&gt; EXPORTING&lt;BR /&gt; id = 'P_FOLDER'&lt;BR /&gt; values = lt_vrm_values.&lt;BR /&gt; &lt;BR /&gt; AT SELECTION-SCREEN OUTPUT.&lt;BR /&gt; LOOP AT SCREEN.&lt;BR /&gt; IF screen-name = 'P_USER'.&lt;BR /&gt; screen-input = 0.&lt;BR /&gt; MODIFY SCREEN.&lt;BR /&gt; ENDIF.&lt;BR /&gt; ENDLOOP.&lt;BR /&gt; &lt;BR /&gt; START-OF-SELECTION.&lt;BR /&gt; DATA: lo_menu_level TYPE REF TO lcl_menu_level.&lt;BR /&gt; CREATE OBJECT lo_menu_level.&lt;BR /&gt; &lt;BR /&gt; ls_smen_buffc-uname = p_user.&lt;BR /&gt; ls_smen_buffc-report = p_report.&lt;BR /&gt; ls_smen_buffc-text = p_desc.&lt;BR /&gt; ls_smen_buffc-reporttype = 'RE'.&lt;BR /&gt; &lt;BR /&gt; SELECT MAX( object_id ) INTO lv_max_object_id FROM smen_buffc WHERE uname = p_user.&lt;BR /&gt; IF sy-subrc &amp;lt;&amp;gt; 0.&lt;BR /&gt; lv_max_object_id = 0.&lt;BR /&gt; ENDIF.&lt;BR /&gt; &lt;BR /&gt; IF p_folder IS INITIAL.&lt;BR /&gt; ls_smen_buffc-parent_id = 1.&lt;BR /&gt; ELSE.&lt;BR /&gt; ls_smen_buffc-parent_id = p_folder.&lt;BR /&gt; ENDIF.&lt;BR /&gt; &lt;BR /&gt; ls_smen_buffc-menu_level = lo_menu_level-&amp;gt;get_menu_level( ls_smen_buffc-parent_id ).&lt;BR /&gt; &lt;BR /&gt; SELECT MAX( sort_order ) INTO lv_max_sort_order FROM smen_buffc WHERE uname = p_user AND parent_id = ls_smen_buffc-parent_id.&lt;BR /&gt; IF sy-subrc &amp;lt;&amp;gt; 0.&lt;BR /&gt; lv_max_sort_order = 0.&lt;BR /&gt; ENDIF.&lt;BR /&gt; &lt;BR /&gt; ls_smen_buffc-object_id = lv_max_object_id + 1.&lt;BR /&gt; ls_smen_buffc-sort_order = lv_max_sort_order + 10.&lt;BR /&gt; &lt;BR /&gt; INSERT INTO smen_buffc VALUES ls_smen_buffc.&lt;BR /&gt; &lt;BR /&gt; IF sy-subrc = 0.&lt;BR /&gt; COMMIT WORK AND WAIT.&lt;BR /&gt; MESSAGE 'Der Favorit wurde erfolgreich erstellt.' TYPE 'S'.&lt;BR /&gt; ELSE.&lt;BR /&gt; MESSAGE 'Fehler beim Einfügen der Daten.' TYPE 'E'.&lt;BR /&gt; ENDIF. &lt;BR /&gt;```SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; }.L0S32 { color: #3399FF; }.L0S33 { color: #4DA619; }.L0S52 { color: #0000FF; }.L0S55 { color: #800080; }.L0S70 { color: #808080; }&lt;/P&gt;</description>
    <pubDate>Fri, 15 Sep 2023 10:35:45 GMT</pubDate>
    <dc:creator>defaultuser-1</dc:creator>
    <dc:date>2023-09-15T10:35:45Z</dc:date>
    <item>
      <title>SMEN_BUFFC wrong menu_level</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754402#M2022015</link>
      <description>&lt;P&gt;I have written an SAP ABAP programme to manage favourites. Via the selection screen, a user can save a report with a name as a favourite among the favourites. A report can also be assigned to a folder if it was previously created in SAP via GUI. The user can do this by using the transaction code `/n` and then right clicking on 'Favourites' -&amp;gt; 'Insert Folder'.&lt;BR /&gt;&lt;BR /&gt;Now most things work, there is just one minor problem. When I create the first reports in the favourites folder by my program, and then create a folder by SAP GUI, the value of the column 'menu_level' of the two entries is set to '2'. However, this should be `1` because the folder and the report shortcut are in the root folder, i.e. in the first level.&lt;BR /&gt;&lt;BR /&gt;This does not happen when I start to create a folder and then add the reports with my program. The menu_level remains correct with the value '1'.&lt;BR /&gt;&lt;BR /&gt;Does anyone have an idea what the problem is and how I can fix it?&lt;BR /&gt;Here is my current, complete code:&lt;BR /&gt;&lt;BR /&gt; &lt;/P&gt;
  &lt;P&gt;```&lt;BR /&gt; REPORT z_report_fav.&lt;BR /&gt; &lt;BR /&gt; TYPE-POOLS: vrm.&lt;BR /&gt; &lt;BR /&gt; DATA: ls_smen_buffc TYPE smen_buffc,&lt;BR /&gt; lv_max_object_id TYPE smen_buffc-object_id,&lt;BR /&gt; lv_max_sort_order TYPE smen_buffc-sort_order,&lt;BR /&gt; lt_folders TYPE TABLE OF smen_buffc,&lt;BR /&gt; ls_folder TYPE smen_buffc,&lt;BR /&gt; lt_vrm_values TYPE vrm_values,&lt;BR /&gt; ls_vrm_value TYPE LINE OF vrm_values.&lt;BR /&gt; &lt;BR /&gt; CLASS lcl_menu_level DEFINITION.&lt;BR /&gt; PUBLIC SECTION.&lt;BR /&gt; METHODS: get_menu_level IMPORTING parent_id TYPE smen_buffc-parent_id&lt;BR /&gt; RETURNING VALUE(menu_level) TYPE i.&lt;BR /&gt; ENDCLASS.&lt;BR /&gt; &lt;BR /&gt; CLASS lcl_menu_level IMPLEMENTATION.&lt;BR /&gt; METHOD get_menu_level.&lt;BR /&gt; DATA lv_parent_id TYPE smen_buffc-parent_id.&lt;BR /&gt; lv_parent_id = parent_id.&lt;BR /&gt; menu_level = 1.&lt;BR /&gt; &lt;BR /&gt; WHILE lv_parent_id &amp;lt;&amp;gt; 1.&lt;BR /&gt; SELECT SINGLE parent_id INTO lv_parent_id FROM smen_buffc WHERE object_id = lv_parent_id.&lt;BR /&gt; IF sy-subrc = 0.&lt;BR /&gt; menu_level = menu_level + 1.&lt;BR /&gt; ELSE.&lt;BR /&gt; EXIT.&lt;BR /&gt; ENDIF.&lt;BR /&gt; ENDWHILE.&lt;BR /&gt; ENDMETHOD.&lt;BR /&gt; ENDCLASS.&lt;BR /&gt; &lt;BR /&gt; SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.&lt;BR /&gt; PARAMETERS: p_user TYPE sy-uname DEFAULT sy-uname,&lt;BR /&gt; p_report TYPE extdreport OBLIGATORY,&lt;BR /&gt; p_desc TYPE char100sm OBLIGATORY,&lt;BR /&gt; p_folder TYPE smen_buffc-text AS LISTBOX VISIBLE LENGTH 30.&lt;BR /&gt; SELECTION-SCREEN END OF BLOCK b1.&lt;BR /&gt; &lt;BR /&gt; INITIALIZATION.&lt;BR /&gt; SELECT * FROM smen_buffc INTO TABLE lt_folders WHERE uname = p_user AND reporttype = space.&lt;BR /&gt; &lt;BR /&gt; LOOP AT lt_folders INTO ls_folder.&lt;BR /&gt; ls_vrm_value-key = ls_folder-object_id.&lt;BR /&gt; ls_vrm_value-text = ls_folder-text.&lt;BR /&gt; APPEND ls_vrm_value TO lt_vrm_values.&lt;BR /&gt; ENDLOOP.&lt;BR /&gt; &lt;BR /&gt; CALL FUNCTION 'VRM_SET_VALUES'&lt;BR /&gt; EXPORTING&lt;BR /&gt; id = 'P_FOLDER'&lt;BR /&gt; values = lt_vrm_values.&lt;BR /&gt; &lt;BR /&gt; AT SELECTION-SCREEN OUTPUT.&lt;BR /&gt; LOOP AT SCREEN.&lt;BR /&gt; IF screen-name = 'P_USER'.&lt;BR /&gt; screen-input = 0.&lt;BR /&gt; MODIFY SCREEN.&lt;BR /&gt; ENDIF.&lt;BR /&gt; ENDLOOP.&lt;BR /&gt; &lt;BR /&gt; START-OF-SELECTION.&lt;BR /&gt; DATA: lo_menu_level TYPE REF TO lcl_menu_level.&lt;BR /&gt; CREATE OBJECT lo_menu_level.&lt;BR /&gt; &lt;BR /&gt; ls_smen_buffc-uname = p_user.&lt;BR /&gt; ls_smen_buffc-report = p_report.&lt;BR /&gt; ls_smen_buffc-text = p_desc.&lt;BR /&gt; ls_smen_buffc-reporttype = 'RE'.&lt;BR /&gt; &lt;BR /&gt; SELECT MAX( object_id ) INTO lv_max_object_id FROM smen_buffc WHERE uname = p_user.&lt;BR /&gt; IF sy-subrc &amp;lt;&amp;gt; 0.&lt;BR /&gt; lv_max_object_id = 0.&lt;BR /&gt; ENDIF.&lt;BR /&gt; &lt;BR /&gt; IF p_folder IS INITIAL.&lt;BR /&gt; ls_smen_buffc-parent_id = 1.&lt;BR /&gt; ELSE.&lt;BR /&gt; ls_smen_buffc-parent_id = p_folder.&lt;BR /&gt; ENDIF.&lt;BR /&gt; &lt;BR /&gt; ls_smen_buffc-menu_level = lo_menu_level-&amp;gt;get_menu_level( ls_smen_buffc-parent_id ).&lt;BR /&gt; &lt;BR /&gt; SELECT MAX( sort_order ) INTO lv_max_sort_order FROM smen_buffc WHERE uname = p_user AND parent_id = ls_smen_buffc-parent_id.&lt;BR /&gt; IF sy-subrc &amp;lt;&amp;gt; 0.&lt;BR /&gt; lv_max_sort_order = 0.&lt;BR /&gt; ENDIF.&lt;BR /&gt; &lt;BR /&gt; ls_smen_buffc-object_id = lv_max_object_id + 1.&lt;BR /&gt; ls_smen_buffc-sort_order = lv_max_sort_order + 10.&lt;BR /&gt; &lt;BR /&gt; INSERT INTO smen_buffc VALUES ls_smen_buffc.&lt;BR /&gt; &lt;BR /&gt; IF sy-subrc = 0.&lt;BR /&gt; COMMIT WORK AND WAIT.&lt;BR /&gt; MESSAGE 'Der Favorit wurde erfolgreich erstellt.' TYPE 'S'.&lt;BR /&gt; ELSE.&lt;BR /&gt; MESSAGE 'Fehler beim Einfügen der Daten.' TYPE 'E'.&lt;BR /&gt; ENDIF. &lt;BR /&gt;```SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; }.L0S32 { color: #3399FF; }.L0S33 { color: #4DA619; }.L0S52 { color: #0000FF; }.L0S55 { color: #800080; }.L0S70 { color: #808080; }&lt;/P&gt;</description>
      <pubDate>Fri, 15 Sep 2023 10:35:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754402#M2022015</guid>
      <dc:creator>defaultuser-1</dc:creator>
      <dc:date>2023-09-15T10:35:45Z</dc:date>
    </item>
    <item>
      <title>Re: SMEN_BUFFC wrong menu_level</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754403#M2022016</link>
      <description>&lt;P&gt;Hello Fritz,&lt;/P&gt;&lt;P&gt;Thank you for visiting SAP Community to get answers to your questions. Since you're asking a question here for the first time, I recommend that you familiarize yourself with &lt;A href="https://community.sap.com/resources/questions-and-answers" target="test_blank"&gt;https://community.sap.com/resources/questions-and-answers&lt;/A&gt;, as it provides tips for preparing questions that draw responses from our members.&lt;/P&gt;&lt;P&gt;Feel free to take our Q&amp;amp;A tutorial at &lt;A href="https://developers.sap.com/tutorials/community-qa.html" target="test_blank"&gt;https://developers.sap.com/tutorials/community-qa.html&lt;/A&gt; as well, as that will also help you when preparing questions for the community.&lt;/P&gt;&lt;P&gt;By adding a picture to your profile you encourage your readers to respond.&lt;/P&gt;&lt;P&gt;Kind regards,&lt;BR /&gt;Anne&lt;/P&gt;</description>
      <pubDate>Fri, 15 Sep 2023 10:36:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754403#M2022016</guid>
      <dc:creator>AnnePetteroe</dc:creator>
      <dc:date>2023-09-15T10:36:00Z</dc:date>
    </item>
    <item>
      <title>Re: SMEN_BUFFC wrong menu_level</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754404#M2022017</link>
      <description>&lt;P&gt;As far as I remember, I had to manage other tables for favorites (I think there was an OSS note on copying favorites between users, and a treatment to avoid buffering?&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;SMENFAVDAT Date of Last Change to Favorites&lt;/LI&gt;&lt;LI&gt;SMEN_BUFFC Table for Storing Favorites&lt;/LI&gt;&lt;LI&gt;SMEN_BUFFI Links for Favorites&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Fri, 15 Sep 2023 13:03:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754404#M2022017</guid>
      <dc:creator>RaymondGiuseppi</dc:creator>
      <dc:date>2023-09-15T13:03:37Z</dc:date>
    </item>
    <item>
      <title>Re: SMEN_BUFFC wrong menu_level</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754405#M2022018</link>
      <description>&lt;P&gt;Please edit your question (Actions&amp;gt;Edit), select your code and press the button [CODE], which makes the code appear colored/indented, it'll be easier for people to look at it. Thanks! &lt;/P&gt;&lt;P&gt;PS: my poor eyes won't read it how it's currently formatted.&lt;/P&gt;</description>
      <pubDate>Fri, 15 Sep 2023 16:17:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/smen-buffc-wrong-menu-level/m-p/12754405#M2022018</guid>
      <dc:creator>Sandra_Rossi</dc:creator>
      <dc:date>2023-09-15T16:17:54Z</dc:date>
    </item>
  </channel>
</rss>

