<?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: Customer Function Exit in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-function-exit/m-p/3325719#M796658</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Akas,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     i am sending the doc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The enhancement MB_CF001 includes a function module that is called up&lt;/P&gt;&lt;P&gt; immediately before the COMMIT WORK when a goods movement is posted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; All the material document data is passed on to this function module from&lt;/P&gt;&lt;P&gt; the following tables:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   MKPF    (Material document header)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   MSEG    (Material document items)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   VM07M   (Update data)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; This data can be passed on to other programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Note&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The enhancement does not write any data to the material document, that&lt;/P&gt;&lt;P&gt; is, it is not possible to change material document data before the&lt;/P&gt;&lt;P&gt; update posting takes place.&lt;/P&gt;&lt;P&gt; If the enhancement MB_CF001 (component: Function module&lt;/P&gt;&lt;P&gt; EXIT_SAPLMBMB_001 with Include ZXMBCU01) is implemented incorrectly, an&lt;/P&gt;&lt;P&gt; inconsistency may occur between documents and stocks as well as between&lt;/P&gt;&lt;P&gt; material documents and accounting documents. Such inconsistencies can be&lt;/P&gt;&lt;P&gt; caused by the following elements in the user exit, for example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   COMMIT WORK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   Remote function call (CALL FUNCTION .. DESTINATION)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   Separate updates on the document or stock tables (for example, an&lt;/P&gt;&lt;P&gt;     update on table MBEW, MARD, MSEG)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   Unlocking data (for example, through DEQUEUE_ALL)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The enhancement MB_CF001 is called in the update function module&lt;/P&gt;&lt;P&gt; MB_POST_DOCUMENT. If a COMMIT WORK or a Remote Function Call is set in&lt;/P&gt;&lt;P&gt; the enhancement, a complete ROLL BACK is not possible in the case of an&lt;/P&gt;&lt;P&gt; update termination, since data has already been written until the COMMIT&lt;/P&gt;&lt;P&gt; or the remote function call in the database. Consequently, an&lt;/P&gt;&lt;P&gt; asynchronous status (for example, a material document without accounting  document), which can only be repaired with considerable effort, may be&lt;/P&gt;&lt;P&gt; the result.&lt;/P&gt;&lt;P&gt; The enhancement MB_CF001 is not suited for customer-specific updates on&lt;/P&gt;&lt;P&gt; the stock tables, because such updates can destroy the standard&lt;/P&gt;&lt;P&gt; inventory update if they are not programmed incrementally (see Note&lt;/P&gt;&lt;P&gt; 6899), or if they do not take the material blocks into account.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Unlocking data (for example, using DEQUEUE_ALL) is also very important,&lt;/P&gt;&lt;P&gt; as the data to be updated is no longer protected against external&lt;/P&gt;&lt;P&gt; updates, and inconsistencies can result from parallel updates.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Before you activate an enhancement, check thoroughly that the user exit&lt;/P&gt;&lt;P&gt; does not contain high priority source code positions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; If data inconsistencies have already occurred in your system,&lt;/P&gt;&lt;P&gt; inconsistencies that can be traced back to the user exits, remove the&lt;/P&gt;&lt;P&gt; high priority source code positions immediately before they cause&lt;/P&gt;&lt;P&gt; further inconsistencies.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 23 Jan 2008 08:31:40 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-23T08:31:40Z</dc:date>
    <item>
      <title>Customer Function Exit</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-function-exit/m-p/3325718#M796657</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;   I don&amp;#146;t have any idea about MB_CF001 enhancement for MIGO, can any body help me?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Jan 2008 08:28:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-function-exit/m-p/3325718#M796657</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-23T08:28:20Z</dc:date>
    </item>
    <item>
      <title>Re: Customer Function Exit</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/customer-function-exit/m-p/3325719#M796658</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Akas,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     i am sending the doc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The enhancement MB_CF001 includes a function module that is called up&lt;/P&gt;&lt;P&gt; immediately before the COMMIT WORK when a goods movement is posted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; All the material document data is passed on to this function module from&lt;/P&gt;&lt;P&gt; the following tables:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   MKPF    (Material document header)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   MSEG    (Material document items)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   VM07M   (Update data)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; This data can be passed on to other programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Note&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The enhancement does not write any data to the material document, that&lt;/P&gt;&lt;P&gt; is, it is not possible to change material document data before the&lt;/P&gt;&lt;P&gt; update posting takes place.&lt;/P&gt;&lt;P&gt; If the enhancement MB_CF001 (component: Function module&lt;/P&gt;&lt;P&gt; EXIT_SAPLMBMB_001 with Include ZXMBCU01) is implemented incorrectly, an&lt;/P&gt;&lt;P&gt; inconsistency may occur between documents and stocks as well as between&lt;/P&gt;&lt;P&gt; material documents and accounting documents. Such inconsistencies can be&lt;/P&gt;&lt;P&gt; caused by the following elements in the user exit, for example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   COMMIT WORK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   Remote function call (CALL FUNCTION .. DESTINATION)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   Separate updates on the document or stock tables (for example, an&lt;/P&gt;&lt;P&gt;     update on table MBEW, MARD, MSEG)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; o   Unlocking data (for example, through DEQUEUE_ALL)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; The enhancement MB_CF001 is called in the update function module&lt;/P&gt;&lt;P&gt; MB_POST_DOCUMENT. If a COMMIT WORK or a Remote Function Call is set in&lt;/P&gt;&lt;P&gt; the enhancement, a complete ROLL BACK is not possible in the case of an&lt;/P&gt;&lt;P&gt; update termination, since data has already been written until the COMMIT&lt;/P&gt;&lt;P&gt; or the remote function call in the database. Consequently, an&lt;/P&gt;&lt;P&gt; asynchronous status (for example, a material document without accounting  document), which can only be repaired with considerable effort, may be&lt;/P&gt;&lt;P&gt; the result.&lt;/P&gt;&lt;P&gt; The enhancement MB_CF001 is not suited for customer-specific updates on&lt;/P&gt;&lt;P&gt; the stock tables, because such updates can destroy the standard&lt;/P&gt;&lt;P&gt; inventory update if they are not programmed incrementally (see Note&lt;/P&gt;&lt;P&gt; 6899), or if they do not take the material blocks into account.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Unlocking data (for example, using DEQUEUE_ALL) is also very important,&lt;/P&gt;&lt;P&gt; as the data to be updated is no longer protected against external&lt;/P&gt;&lt;P&gt; updates, and inconsistencies can result from parallel updates.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Before you activate an enhancement, check thoroughly that the user exit&lt;/P&gt;&lt;P&gt; does not contain high priority source code positions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; If data inconsistencies have already occurred in your system,&lt;/P&gt;&lt;P&gt; inconsistencies that can be traced back to the user exits, remove the&lt;/P&gt;&lt;P&gt; high priority source code positions immediately before they cause&lt;/P&gt;&lt;P&gt; further inconsistencies.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Jan 2008 08:31:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/customer-function-exit/m-p/3325719#M796658</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-23T08:31:40Z</dc:date>
    </item>
  </channel>
</rss>

