{"id":1361,"date":"2018-06-19T06:55:05","date_gmt":"2018-06-19T06:55:05","guid":{"rendered":"http:\/\/www.se80.co.uk\/training-education\/?p=1361"},"modified":"2019-02-18T11:27:08","modified_gmt":"2019-02-18T11:27:08","slug":"crm-order-maintain-recursive-call","status":"publish","type":"post","link":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/","title":{"rendered":"Recursive call error of function module \u2018CRM_ORDER_MAINTAIN\u2019"},"content":{"rendered":"<p>The SAP CRM Recursive call error for SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the FM i.e. calling it while already within a call to CRM_ORDER_MAINTAIN. Also happens via function module CRM_ORDER_MAINTAIN_MULTI_OW which also performs the recursive check.<\/p>\n<blockquote class=\"\"><p>Function module CRM_ORDER_MAINTAIN &nbsp;appears several times in the current hierarchy for the calls. This is not scheduled. There is an error in the program.<\/p><\/blockquote>\n<p><strong>&#8220;MESSAGE_TYPE_X&#8221;<\/strong><\/p>\n<p><strong>&#8220;SAPLCRM_ORDER_OW&#8221; or &#8220;LCRM_ORDER_OWU01&#8221;<\/strong><\/p>\n<p><strong>&#8220;CRM_ORDER_MAINTAIN_MULTI_OW&#8221;<\/strong><\/p>\n<h2>Solution for crm Recursive call<\/h2>\n<p>Try using different function modules to perform the CRM updates such as:<\/p>\n<h3>CRM_STATUS_MAINTAIN_OW to Update status values usking<\/h3>\n<p>This FM updates the STATUS values<\/p>\n<p>CALL FUNCTION &#8216;CRM_STATUS_MAINTAIN_OW&#8217;EXPORTINGit_status_com              = lt_user_status*         IT_STATUS_COMINT           =*         IV_CHECK_ONLY              = FALSE*         IV_TRACE                   =*         IV_NO_1O_MAINTAIN          = FALSE*         IV_FORCE_1O_MAINTAIN       = FALSE*         IV_GET_ACTUAL_EXCPN        = FALSECHANGINGct_input_field_names       = lt_input_field_namesEXCEPTIONSnot_allowed                = 1error_occurred             = 2warning_occurred           = 3OTHERS                     = 4.<\/p>\n<h3 class=\"\">CRM_ORDER_I_MAINTAIN_SINGLE_OW to update ORDERADM values<\/h3>\n<p>Enter your text here&#8230;<\/p>\n<h3>Check if within CRM_ORDER_MAINTAIN update<\/h3>\n<p>DATA:   lv_raise_exceptions TYPE  crmt_boolean VALUE &#8216;X&#8217;,        lv_recursive_call TYPE  i,        lv_maintain_active TYPE  i,        lv_recursive_save TYPE  i.<\/p>\n<p>* For the OW function modules to work it needs to be within an CRM_ORDER_MAINTAIN* update but too many recursive calls to this can cause SAP DUMP** CRM_ORDER_CHECK_RECURSIVE_OW check if you are already within an update and can use* The OW functionsCALL FUNCTION &#8216;CRM_ORDER_CHECK_RECURSIVE_OW&#8217;  EXPORTING    iv_raise_exceptions         = lv_raise_exceptions  IMPORTING    ev_recursive_call           = lv_recursive_call    ev_maintain_active          = lv_maintain_active    ev_recursive_save           = lv_recursive_save  EXCEPTIONS    recursive_call              = 2    recursive_save              = 4    call_without_order_maintain = 6    OTHERS                      = 8.<\/p>\n<p>* If return code is call_without_order_maintain then you need to perform update* using the CRM_ORDER_MAINTAINIF sy-subrc  = 6.  &#8221;    CALL FUNCTION &#8216;CRM_ORDER_MAINTAIN&#8217;  &#8221;      EXPORTING  &#8221;        it_status         = &#8221; new status details  &#8221;      CHANGING  &#8221;        ct_orderadm_i     = &#8221; orderadm_i values  &#8221;        ct_input_fields   = &#8221; input_field values  &#8221;      EXCEPTIONS  &#8221;        error_occurred    = 1  &#8221;        document_locked   = 2  &#8221;        no_change_allowed = 3  &#8221;        no_authority      = 4  &#8221;        OTHERS            = 5.* Else you can use OW function modulesELSE.*   Call an alternate OW function module such as CRM_STATUS_MAINTAIN_OW to update STATUS  &#8221;        CALL FUNCTION &#8216;CRM_STATUS_MAINTAIN_OW&#8217;  &#8221;          EXPORTING  &#8221;            it_status_com        = &#8221; new status details  &#8221;          CHANGING  &#8221;            ct_input_field_names = &#8221; input_field values  &#8221;          EXCEPTIONS  &#8221;            not_allowed          = 1  &#8221;            error_occurred       = 2  &#8221;            warning_occurred     = 3  &#8221;            OTHERS               = 4.ENDIF.<\/p>\n<h2>Other CRM update FM&#8217;s to check<\/h2>\n<p>CRM_ORDER_COPY_SINGLE_OWCRM_ORDER_H_MAINTAIN_OW CRM_ORDER_I_MAINTAIN_MULTI_OWCRM_ORDER_I_MAINTAIN_SINGLE_OWCRM_ORDER_MAINTAINCRM_ORDER_MAINTAIN_MULTI_OWCRM_ORDER_MAINTAIN_SINGLE_OWCRM_STATUS_COMINT_SAVE_OWCRM_STATUS_EXPORT_DATA_UICRM_STATUS_MAINTAIN_MUL_OWCRM_STATUS_MAINTAIN_OW<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The SAP CRM Recursive call error for SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the FM i.e. calling it while already within a call to CRM_ORDER_MAINTAIN. Also happens via function module CRM_ORDER_MAINTAIN_MULTI_OW which also performs the recursive check. Function module CRM_ORDER_MAINTAIN &nbsp;appears several times in the current hierarchy for the calls. This [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[46],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN<\/title>\n<meta name=\"description\" content=\"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the same FM, can be easily fixed by used alternate update FM.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN\" \/>\n<meta property=\"og:description\" content=\"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the same FM, can be easily fixed by used alternate update FM.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/\" \/>\n<meta property=\"og:site_name\" content=\"SAP Help, Training and Education\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-19T06:55:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-02-18T11:27:08+00:00\" \/>\n<meta name=\"author\" content=\"se80\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"se80\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/\",\"url\":\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/\",\"name\":\"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN\",\"isPartOf\":{\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/#website\"},\"datePublished\":\"2018-06-19T06:55:05+00:00\",\"dateModified\":\"2019-02-18T11:27:08+00:00\",\"author\":{\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/#\/schema\/person\/ddc6a049c1b0790f62d70278be75e511\"},\"description\":\"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the same FM, can be easily fixed by used alternate update FM.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.se80.co.uk\/training-education\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Recursive call error of function module \u2018CRM_ORDER_MAINTAIN\u2019\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/#website\",\"url\":\"https:\/\/www.se80.co.uk\/training-education\/\",\"name\":\"SAP Help, Training and Education\",\"description\":\"Learn SAP\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.se80.co.uk\/training-education\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/#\/schema\/person\/ddc6a049c1b0790f62d70278be75e511\",\"name\":\"se80\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.se80.co.uk\/training-education\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3fd4e388f05bf3c763e46cd1f77afeb2?s=96&d=retro&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3fd4e388f05bf3c763e46cd1f77afeb2?s=96&d=retro&r=g\",\"caption\":\"se80\"},\"url\":\"https:\/\/www.se80.co.uk\/training-education\/author\/se80\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN","description":"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the same FM, can be easily fixed by used alternate update FM.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/","og_locale":"en_US","og_type":"article","og_title":"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN","og_description":"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the same FM, can be easily fixed by used alternate update FM.","og_url":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/","og_site_name":"SAP Help, Training and Education","article_published_time":"2018-06-19T06:55:05+00:00","article_modified_time":"2019-02-18T11:27:08+00:00","author":"se80","twitter_card":"summary_large_image","twitter_misc":{"Written by":"se80","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/","url":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/","name":"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN","isPartOf":{"@id":"https:\/\/www.se80.co.uk\/training-education\/#website"},"datePublished":"2018-06-19T06:55:05+00:00","dateModified":"2019-02-18T11:27:08+00:00","author":{"@id":"https:\/\/www.se80.co.uk\/training-education\/#\/schema\/person\/ddc6a049c1b0790f62d70278be75e511"},"description":"CRM Recursive call of SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the same FM, can be easily fixed by used alternate update FM.","breadcrumb":{"@id":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.se80.co.uk\/training-education\/crm-order-maintain-recursive-call\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.se80.co.uk\/training-education\/"},{"@type":"ListItem","position":2,"name":"Recursive call error of function module \u2018CRM_ORDER_MAINTAIN\u2019"}]},{"@type":"WebSite","@id":"https:\/\/www.se80.co.uk\/training-education\/#website","url":"https:\/\/www.se80.co.uk\/training-education\/","name":"SAP Help, Training and Education","description":"Learn SAP","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.se80.co.uk\/training-education\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.se80.co.uk\/training-education\/#\/schema\/person\/ddc6a049c1b0790f62d70278be75e511","name":"se80","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.se80.co.uk\/training-education\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3fd4e388f05bf3c763e46cd1f77afeb2?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3fd4e388f05bf3c763e46cd1f77afeb2?s=96&d=retro&r=g","caption":"se80"},"url":"https:\/\/www.se80.co.uk\/training-education\/author\/se80\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/posts\/1361"}],"collection":[{"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/comments?post=1361"}],"version-history":[{"count":16,"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/posts\/1361\/revisions"}],"predecessor-version":[{"id":1380,"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/posts\/1361\/revisions\/1380"}],"wp:attachment":[{"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/media?parent=1361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/categories?post=1361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.se80.co.uk\/training-education\/wp-json\/wp\/v2\/tags?post=1361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}