<?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 Re: MV45AFZZ values update problem in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552593#M250549</link>
    <description>&lt;P&gt;ok, but this should be the solution regarding this question, I have searched and tried a lot of things, and this worked&lt;/P&gt;</description>
    <pubDate>Fri, 28 Jan 2022 08:29:49 GMT</pubDate>
    <dc:creator>Raphael_Sommer</dc:creator>
    <dc:date>2022-01-28T08:29:49Z</dc:date>
    <item>
      <title>MV45AFZZ values update problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552589#M250545</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a very annoying problem with this user-exit MV45AFZZ...&lt;/P&gt;&lt;P&gt;It is annoying, because it is working in the 99% of the cases and in 1% it is not working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When I'm testing my code it is always working fine. In 99% of the cases it is working fine. But there are several documents when the code is not running. In these cases ppl who are working with the module are calling me, I'm testing it in the same system with the same values and the document is perfect for me.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It seems like some kind of database locking problem, but I don't know how to solve this bug.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is within the code-part between the &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;gt;&amp;gt;&amp;gt; NyT and &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;&amp;lt;&amp;lt; NyT lines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem occurs, when VBAK-AUART &amp;lt;&amp;gt; 'BV'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The code:&lt;/P&gt;&lt;P&gt;FORM USEREXIT_MOVE_FIELD_TO_VBAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*{   INSERT         MEDK900234                                        1&lt;/P&gt;&lt;P&gt;*RH&lt;/P&gt;&lt;P&gt;   tables: zvonz, "table 4 route - plant association&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          vbep,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           zmaxacs,&lt;/P&gt;&lt;P&gt;           zmaxany,&lt;/P&gt;&lt;P&gt;           usr05,&lt;/P&gt;&lt;P&gt;           konv.&lt;/P&gt;&lt;P&gt;DATA: T_KONV LIKE KONV occurs 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   DATA: WVBAK LIKE VBAK .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   data: begin of wvbap occurs 0,&lt;/P&gt;&lt;P&gt;      VBELN  like vbap-VBELN,&lt;/P&gt;&lt;P&gt;      POSNR  like vbap-posnr,&lt;/P&gt;&lt;P&gt;      MATNR  like vbap-matnr,&lt;/P&gt;&lt;P&gt;      matkl  like vbap-matkl,&lt;/P&gt;&lt;P&gt;   end of wvbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****eddigiek melyik héten&lt;/P&gt;&lt;P&gt;    data: begin of wvbep occurs 0,&lt;/P&gt;&lt;P&gt;      VBELN  like vbap-VBELN,&lt;/P&gt;&lt;P&gt;      POSNR  like vbap-posnr,&lt;/P&gt;&lt;P&gt;      MATNR  like vbap-matnr,&lt;/P&gt;&lt;P&gt;      edatu  like vbep-edatu,&lt;/P&gt;&lt;P&gt;      whet   like scal-week,&lt;/P&gt;&lt;P&gt;      matkl  like vbap-matkl,&lt;/P&gt;&lt;P&gt;      vrkme  like vbep-vrkme,&lt;/P&gt;&lt;P&gt;      bmeng  like vbep-bmeng,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   end of wvbep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data: begin of wvbepsum occurs 0,&lt;/P&gt;&lt;P&gt;      MATNR  like vbap-matnr,&lt;/P&gt;&lt;P&gt;      matkl  like vbap-matkl,&lt;/P&gt;&lt;P&gt;      whet   like scal-week,    "200512&lt;/P&gt;&lt;P&gt;      vrkme  like vbep-vrkme,&lt;/P&gt;&lt;P&gt;      bmeng  like vbep-bmeng,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   end of wvbepsum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;******aminek vizsgáljuk&lt;/P&gt;&lt;P&gt; data: begin of wvbepapa occurs 0,&lt;/P&gt;&lt;P&gt;      VBELN  like vbap-VBELN,&lt;/P&gt;&lt;P&gt;      POSNR  like vbap-posnr,&lt;/P&gt;&lt;P&gt;      edatu  like vbep-edatu,&lt;/P&gt;&lt;P&gt;      whet   like scal-week,&lt;/P&gt;&lt;P&gt;      MATNR  like vbap-matnr,&lt;/P&gt;&lt;P&gt;      matkl  like vbap-matkl,&lt;/P&gt;&lt;P&gt;      vrkme  like vbep-vrkme,&lt;/P&gt;&lt;P&gt;      bmeng  like vbep-bmeng,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   end of wvbepapa.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data: begin of wvbepasum occurs 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MATNR  like vbap-matnr,&lt;/P&gt;&lt;P&gt;      matkl  like vbap-matkl,&lt;/P&gt;&lt;P&gt;      whet   like scal-week,&lt;/P&gt;&lt;P&gt;      bmeng  like vbep-bmeng,&lt;/P&gt;&lt;P&gt;      vrkme  like vbep-vrkme,&lt;/P&gt;&lt;P&gt;   end of wvbepasum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data:  whet  like scal-week,&lt;/P&gt;&lt;P&gt;         wdb   like vbep-bmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   If  SVBAP-TABIX = 0.  "létrehozás&lt;/P&gt;&lt;P&gt;   clear wvbak.&lt;/P&gt;&lt;P&gt;   if  not vbak-vgbel is initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     SELECT   SINGLE     * FROM  VBAK&lt;/P&gt;&lt;P&gt;                           INTO  WVBAK&lt;/P&gt;&lt;P&gt;             WHERE  VBELN  = vbak-vgbel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     if Wvbak-VBTYP = 'G'.             "szerz.&lt;/P&gt;&lt;P&gt;        if not vbap-posnr is initial  and     "000001&lt;/P&gt;&lt;P&gt;               vbap-vgbel is initial.&lt;/P&gt;&lt;P&gt;                 vbap-vgbel = vbak-vgbel.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;     endif.   "g&lt;/P&gt;&lt;P&gt;   endif.      "not vbak-vgbel is initial&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;gt;&amp;gt;&amp;gt; NyT 2006.07.25 - Kiszállítási hely és Kiszállító gyár&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;meghatározás áthelyezése a bizonylat mentéséhez tartozó exitb&amp;amp;#337;l ide&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF vbak-auart = 'BV'.              "azonnali kiszállítás&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM usr05&lt;/P&gt;&lt;P&gt;     WHERE bname = sy-uname AND&lt;/P&gt;&lt;P&gt;           parid = 'WRK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        vbap-werks = usr05-parva.&lt;/P&gt;&lt;P&gt;        vbap-vstel = usr05-parva.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   ELSE.                     "nem azonnali kiszállítás&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM zvonz&lt;/P&gt;&lt;P&gt;      WHERE route = vbap-route AND&lt;/P&gt;&lt;P&gt;            spart = vbap-spart.&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0. "Ha SPART nincs töltve&lt;/P&gt;&lt;P&gt;      SELECT SINGLE * FROM zvonz&lt;/P&gt;&lt;P&gt;        WHERE route = vbap-route.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      vbap-werks = zvonz-werks.&lt;/P&gt;&lt;P&gt;      vbap-vstel = zvonz-vstel.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.    "auart&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;&amp;lt;&amp;lt; NyT 2006.07.25&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.  "létrehozás&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Sep 2006 10:00:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552589#M250545</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-04T10:00:22Z</dc:date>
    </item>
    <item>
      <title>Re: MV45AFZZ values update problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552590#M250546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try to use XVBAP instead of VBAP struture. At run time,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;XVBAP will have the current item values and VBAP gets filled from XVBAP only.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Solved the problem?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Sep 2006 10:54:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552590#M250546</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-09-04T10:54:46Z</dc:date>
    </item>
    <item>
      <title>Re: MV45AFZZ values update problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552591#M250547</link>
      <description>&lt;P&gt;Hello, I had to change region of Shipt To Party from ADRC in MV45AFZZ when sales order gets saved.&lt;/P&gt;&lt;P&gt;I tried it with changing xvbadr but i did not work.&lt;/P&gt;&lt;P&gt;The solution which worked for me is with function modules around ADDR_UPDATE if address exists on database and  ADDR_MAINTAIN_COMPLETE if only address handle exits but not on databse. I added the form in &lt;STRONG&gt;MV45AFZZ USER_SAVE_DOCUMENT_PREPARE&lt;/STRONG&gt;:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  UPDATE_WE_ADDRESS_REGION
*&amp;amp;---------------------------------------------------------------------*
*       Update Region of WE
*----------------------------------------------------------------------*

FORM update_we_address_region USING p_region.

  FIELD-SYMBOLS: &amp;lt;fs_badr&amp;gt; LIKE xvbadr,
                 &amp;lt;fs_vbpa&amp;gt; LIKE xvbpa.

  DATA: ls_addr1_sel      TYPE ADDR1_SEL,
        ls_addr1_value    TYPE ADDR1_VAL,
        ls_addr1_data     TYPE ADDR1_DATA,
        lt_return         TYPE TABLE OF ADDR_ERROR,
        lv_return_code    TYPE AD_RETCODE,
        lv_address_handle TYPE AD_HANDLE.

  LOOP AT xvbpa[] ASSIGNING &amp;lt;fs_vbpa&amp;gt; WHERE parvw = 'WE'.
    READ TABLE xvbadr[] ASSIGNING &amp;lt;fs_badr&amp;gt; WITH KEY adrnr = &amp;lt;fs_vbpa&amp;gt;-adrnr.
    IF sy-subrc eq 0.
      &amp;lt;fs_badr&amp;gt;-regio = p_region.
      clear: ls_addr1_sel, ls_addr1_value, ls_addr1_data, lv_return_code.
      ls_addr1_sel-addrnumber  =  &amp;lt;fs_badr&amp;gt;-adrnr.
      call function 'ADDR_GET'
        exporting
          address_selection = ls_addr1_sel
        importing
          address_value     = ls_addr1_value
        exceptions
          parameter_error   = 1
          address_not_exist = 2
          version_not_exist = 3
          internal_error    = 4
          others            = 5.

      " case if address exists on database already
      IF sy-subrc EQ 0.
        MOVE-CORRESPONDING ls_addr1_value TO ls_addr1_data.
        ls_addr1_data-region = p_region.
        REFRESH lt_return.
        CALL FUNCTION 'ADDR_UPDATE'
          EXPORTING
            address_data              = ls_addr1_data
            address_number            = ls_addr1_value-addrnumber
            nation                    = ls_addr1_value-nation
            check_empty_address       = ' '
            check_address             = ' '
          IMPORTING
            returncode                = lv_return_code
          TABLES
            error_table               = lt_return
          EXCEPTIONS
            address_not_exist         = 1
            parameter_error           = 2
            version_not_exist         = 3
            internal_error            = 4
            OTHERS                    = 5.
        IF sy-subrc EQ 0 AND lv_return_code NE 'E'.
          CALL FUNCTION 'ADDR_MEMORY_SAVE'
            EXCEPTIONS
              address_number_missing       = 1
              person_number_missing        = 2
              internal_error               = 3
              database_error               = 4
              reference_missing            = 5
            OTHERS                         = 6.
          IF sy-subrc EQ 0.
            CALL FUNCTION 'ADDR_MEMORY_CLEAR'
             EXCEPTIONS
               unsaved_data_exist       = 1
               internal_error           = 2
               OTHERS                   = 3.
            IF sy-subrc &amp;lt;&amp;gt; 0.
            ENDIF.
          ENDIF.
        ENDIF.
      ELSE.
        " case if address handle exists but not on database
        lv_address_handle = &amp;lt;fs_badr&amp;gt;-adrnr.
        DATA: lt_addr_complete TYPE SZADR_ADDR1_COMPLETE.
        CALL FUNCTION 'ADDR_GET_COMPLETE'
         EXPORTING
           ADDRHANDLE                    = lv_address_handle
         IMPORTING
           ADDR1_COMPLETE                = lt_addr_complete
         EXCEPTIONS
           PARAMETER_ERROR               = 1
           ADDRESS_NOT_EXIST             = 2
           INTERNAL_ERROR                = 3
           WRONG_ACCESS_TO_ARCHIVE       = 4
           ADDRESS_BLOCKED               = 5
           OTHERS                        = 6.

        IF sy-subrc EQ 0.
          READ TABLE lt_addr_complete-addr1_tab INDEX 1 ASSIGNING FIELD-SYMBOL(&amp;lt;fs_complete_addr&amp;gt;).
          IF sy-subrc EQ 0.
            &amp;lt;fs_complete_addr&amp;gt;-data-region = p_region.
            REFRESH lt_return.

            DATA: lv_update_kz TYPE AD_UPDFLAG.
            lv_update_kz = 'U'.
            CALL FUNCTION 'ADDR_MAINTAIN_COMPLETE'
              EXPORTING
                updateflag                          = lv_update_kz
                addr1_complete                      = lt_addr_complete
                address_group                       = 'SD01'
               CONSIDER_CONSNUMBER_FOR_INSERT       = 'X'
               IV_TIME_DEPENDENT_COMM_DATA          = 'X'
             IMPORTING
               RETURNCODE                           = lv_return_code
             TABLES
               ERROR_TABLE                          = lt_return
             EXCEPTIONS
               PARAMETER_ERROR                      = 1
               ADDRESS_NOT_EXIST                    = 2
               HANDLE_EXIST                         = 3
               INTERNAL_ERROR                       = 4
               ADDRESS_BLOCKED                      = 5
               OTHERS                               = 6.
            IF sy-subrc &amp;lt;&amp;gt; 0.
* Implement suitable error handling here
            ENDIF.
           ENDIF.
        ENDIF.
      ENDIF.
    ENDIF.
  ENDLOOP.
ENDFORM.&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 28 Jan 2022 08:15:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552591#M250547</guid>
      <dc:creator>Raphael_Sommer</dc:creator>
      <dc:date>2022-01-28T08:15:04Z</dc:date>
    </item>
    <item>
      <title>Re: MV45AFZZ values update problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552592#M250548</link>
      <description>&lt;P&gt;Hi &lt;SPAN class="mention-scrubbed"&gt;raphael.sommer&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;you have to create your own question on this forum&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jan 2022 08:25:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552592#M250548</guid>
      <dc:creator>FredericGirod</dc:creator>
      <dc:date>2022-01-28T08:25:48Z</dc:date>
    </item>
    <item>
      <title>Re: MV45AFZZ values update problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552593#M250549</link>
      <description>&lt;P&gt;ok, but this should be the solution regarding this question, I have searched and tried a lot of things, and this worked&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jan 2022 08:29:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552593#M250549</guid>
      <dc:creator>Raphael_Sommer</dc:creator>
      <dc:date>2022-01-28T08:29:49Z</dc:date>
    </item>
    <item>
      <title>Re: MV45AFZZ values update problem</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552594#M250550</link>
      <description>&lt;P&gt;oh, sorry, this was a proposal, I read too fast &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jan 2022 08:42:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mv45afzz-values-update-problem/m-p/1552594#M250550</guid>
      <dc:creator>FredericGirod</dc:creator>
      <dc:date>2022-01-28T08:42:04Z</dc:date>
    </item>
  </channel>
</rss>

