<?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: IDOC_Error_raising in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381942#M186323</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Subhash,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can code something like this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) I want to Raise IDOC_ERROR if the conditions are not met.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;* Check if right IDOC type
  loop at idoc_contrl.
    if idoc_contrl-idoctp &amp;lt;&amp;gt; 'SOPGEN01'.
      raise wrong_function_called.
    endif.
  endloop.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) I want to write those error messages in teh IDOC status record.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;* Fill status records of IDOC with status after posting
  loop at idoc_contrl.
    clear idoc_status.
    idoc_status-docnum = idoc_contrl-docnum.
    if sy-subrc = 0.
      idoc_status-status = '53'. "OK!
    else.
      idoc_status-msgid = sy-msgid.
      idoc_status-msgty = sy-msgty.
      idoc_status-msgno = sy-msgno.
      idoc_status-msgv1 = sy-msgv1.
      idoc_status-msgv2 = sy-msgv2.
      idoc_status-msgv3 = sy-msgv3.
      idoc_status-msgv4 = sy-msgv4.
      idoc_status-status = '51'.         "ERROR!
*     Fill Return variables
      clear return_variables.
      return_variables-doc_number = idoc_contrl-docnum.
*     return_variables-wf_param = c_wf_par_processed_idocs.
      return_variables-wf_param = 'Error_IDOCs'.
      append return_variables.
    endif.
    append idoc_status.
  endloop.

* Fill result of whole processing
  workflow_result = 0.
  in_update_task = true.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ferry Lianto&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 16 Jun 2006 12:09:46 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-06-16T12:09:46Z</dc:date>
    <item>
      <title>IDOC_Error_raising</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381941#M186322</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;I want two scenarios while processing the IDOCS:--&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) I want to Raise IDOC_ERROR if the conditions are not met.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) I want to write those error messages in teh IDOC status record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have made a Single Perform to raise error and will call that PERFORM for the required segment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please tell me how to proceed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Jun 2006 11:48:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381941#M186322</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-16T11:48:09Z</dc:date>
    </item>
    <item>
      <title>Re: IDOC_Error_raising</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381942#M186323</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Subhash,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can code something like this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) I want to Raise IDOC_ERROR if the conditions are not met.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;* Check if right IDOC type
  loop at idoc_contrl.
    if idoc_contrl-idoctp &amp;lt;&amp;gt; 'SOPGEN01'.
      raise wrong_function_called.
    endif.
  endloop.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) I want to write those error messages in teh IDOC status record.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;* Fill status records of IDOC with status after posting
  loop at idoc_contrl.
    clear idoc_status.
    idoc_status-docnum = idoc_contrl-docnum.
    if sy-subrc = 0.
      idoc_status-status = '53'. "OK!
    else.
      idoc_status-msgid = sy-msgid.
      idoc_status-msgty = sy-msgty.
      idoc_status-msgno = sy-msgno.
      idoc_status-msgv1 = sy-msgv1.
      idoc_status-msgv2 = sy-msgv2.
      idoc_status-msgv3 = sy-msgv3.
      idoc_status-msgv4 = sy-msgv4.
      idoc_status-status = '51'.         "ERROR!
*     Fill Return variables
      clear return_variables.
      return_variables-doc_number = idoc_contrl-docnum.
*     return_variables-wf_param = c_wf_par_processed_idocs.
      return_variables-wf_param = 'Error_IDOCs'.
      append return_variables.
    endif.
    append idoc_status.
  endloop.

* Fill result of whole processing
  workflow_result = 0.
  in_update_task = true.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ferry Lianto&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please reward points if helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Jun 2006 12:09:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381942#M186323</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-16T12:09:46Z</dc:date>
    </item>
    <item>
      <title>Re: IDOC_Error_raising</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381943#M186324</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;if the data is wrong. then create an entry in the status table.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
  IF L_E1EDK03-IDDAT = C_016 AND L_DATUM &amp;gt; SY-DATUM.
      CALL METHOD APPEND_STATUS_TABLE
        EXPORTING
          DOCNUM = IDOC_NUM
          MSGID  = 'VV'
          MSGTY  = 'E'
          MSGNO  = '027'
          MSGV1  = TEXT-003
          MSGV2  = TEXT-004
          MSGV3  = ' '
          MSGV4  = ' '.
    ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;METHOD APPEND_STATUS_TABLE.

  DATA:L_STATUS LIKE LINE OF  IT_STATUS.

  L_STATUS-STATUS = '51'.
  L_STATUS-DOCNUM = V_IDOC.
  L_STATUS-MSGTY  = MSGTY.
  L_STATUS-MSGID  = MSGID.
  L_STATUS-MSGNO  = MSGNO.
  L_STATUS-MSGV1  = MSGV1.
  L_STATUS-MSGV2  = MSGV2.
  L_STATUS-MSGV3  = MSGV3.
  L_STATUS-MSGV4  = MSGV4.
  L_STATUS-REPID  = 'SAPLZSD_SCS'.
  APPEND L_STATUS TO IT_STATUS.
  CLEAR  L_STATUS.

ENDMETHOD.     "Append_status_table&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Jun 2006 12:33:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381943#M186324</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-16T12:33:50Z</dc:date>
    </item>
    <item>
      <title>Re: IDOC_Error_raising</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381944#M186325</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Like Ferry has mentioned, update the status record that automatically give a RED flag to the IDOC status.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You don't have raise a exception separately.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ravi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Jun 2006 12:37:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-error-raising/m-p/1381944#M186325</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-16T12:37:10Z</dc:date>
    </item>
  </channel>
</rss>

