Error Occured in CRM_ORDER_MAINTAIN . Kindly help asap.

I have written folowing code but exception occurs in changing parameter lt_exception of FM maintain.What can be the possible error.
msg no - 0004
REPORT  ZTEST_PROGRAM.
*Internal tables
Data : lt_partner           TYPE              crmt_partner_comt,
       lt_sales             TYPE              crmt_sales_comt,
       lt_orgman            TYPE              crmt_orgman_comt,
       lt_status            TYPE              crmt_status_comt,
       lt_customer_h        TYPE              CRMT_SERVICE_H_COMT,
       lt_input_field       TYPE              crmt_input_field_names_tab,
       lt_exception         TYPE              crmt_exception_t,
       lt_crm_save          TYPE              crmt_object_guid_tab,
       lt_orderadm_h        TYPE              crmt_orderadm_h_comt,
       lt_saved_objects     TYPE              crmt_return_objects,
       lt_objects_not_saved TYPE              CRMT_OBJECT_GUID_TAB,
       lt_input             TYPE              crmt_input_field_tab.
*Structures
Data : ls_partner           TYPE                      crmt_partner_com,
       ls_sales             TYPE                      crmt_sales_com,
       ls_orgman            TYPE                      crmt_orgman_com,
       ls_status            TYPE                      crmt_status_com,
       ls_input             TYPE                      crmt_input_field,
       ls_input_field       TYPE                      crmt_input_field_names,
       ls_crm_save          TYPE                      crmt_object_guid,
       ls_saved_objects     LIKE LINE OF              lt_saved_objects,
       ls_orderadm_h        TYPE                      crmt_orderadm_h_com,
       ls_customer_h        TYPE                      CRMT_SERVICE_H_COM.
*Variables
Data : lv_guid              TYPE                      guid_16,
       lv_timezone          TYPE                      timezone,
       lv_timestamp         TYPE                      timestamp,
       lv_log_handle        TYPE                      balloghndl.
GET GUID
CALL FUNCTION 'GUID_CREATE'
    IMPORTING
      ev_guid_16 = lv_guid.
Filling status data
  CLEAR ls_status.
  ls_status-ref_guid        = lv_guid.
  ls_status-ref_kind        = 'A'.
  ls_status-status          = 'E0003'.
  ls_status-user_stat_proc  = 'CRMORDER'.
  ls_status-activate        = 'X'.
  APPEND ls_status TO lt_status.
Filling the partner data
  CLEAR ls_partner.
  ls_partner-ref_guid           = lv_guid.
  ls_partner-ref_kind           = 'A'.
  ls_partner-ref_partner_handle = '0001'.
  ls_partner-kind_of_entry      = 'C'.
  ls_partner-partner_fct        = '00000001'. " Sold to Party
  ls_partner-partner_no         = '190'.
  ls_partner-display_type       = 'BP'.
  ls_partner-no_type            = 'BP'.
  INSERT ls_partner INTO TABLE lt_partner.
Input Fields for Partner Data that are to be changed
  CLEAR ls_input.
    ls_input-ref_guid = lv_guid.
    ls_input-ref_kind = 'A'.
    ls_input-logical_key  = '0001'.
    ls_input-objectname = 'PARTNER'.
    ls_input_field-fieldname = 'DISPLAY_TYPE'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'KIND_OF_ENTRY'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'NO_TYPE'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'PARTNER_FCT'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'PARTNER_NO'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input-field_names[] = lt_input_field[].
    INSERT ls_input INTO TABLE lt_input.
Prepare Organisation Data
  Clear ls_orgman.
  ls_orgman-ref_guid              = lv_guid.
  ls_orgman-ref_kind              = 'A'.
  ls_orgman-sales_group_ori       = 'A'.
  ls_orgman-sales_orgr_ori        = 'A'.
  ls_orgman-division_ori          = 'A'.
  ls_orgman-dis_channel_ori       = 'A'.
  APPEND ls_orgman TO lt_orgman.
Input Fields for Organization Data that are to be changed
  ls_input-ref_guid = lv_guid.
  ls_input-ref_kind = 'A'.
  ls_input-objectname = 'ORGMAN'.
  ls_input_field-fieldname = 'SALES_GROUP_ORI'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'SALES_ORGR_ORI'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'DIVISION_ORI'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input-field_names[] = lt_input_field[].        " Contains all fields to updatd
  INSERT ls_input INTO TABLE lt_input.
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
EXTERNAL REFERENCE DATA And Requested Delivery Date Data
  ls_sales-ref_guid       = lv_guid.
  ls_sales-po_number_sold = 'A'. " PO Reference
  ls_sales-ref_kind       = 'A'.
Get the user Time Zone
  CALL FUNCTION 'TZON_GET_USER_TIMEZONE'
    EXPORTING
      if_username             = sy-uname
    IMPORTING
      ef_timezone             = lv_timezone
    EXCEPTIONS
      no_timezone_customizing = 1
      no_valid_user           = 2
      OTHERS                  = 3.
  IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
Convert Requested delivery date into Timestamp
  CALL FUNCTION 'BBP_PD_CONVERT_DATETIME_TO_TS'
    EXPORTING
      iv_date             = sy-datum
     iv_time              = sy-uzeit
      iv_time_zone        = lv_timezone
   IMPORTING
     ev_timestamp        = lv_timestamp
    EV_TIMESTAMPL       =
   EXCEPTIONS
     convert_error       = 1
     OTHERS              = 2
  IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
  ls_sales-req_dlv_date   = lv_timestamp. " Requested delivery date time stamp
  ls_sales-req_timezone   = lv_timezone.  " User timezone
  ls_sales-po_date_sold = sy-datum.
  APPEND ls_sales TO lt_sales.
Input fields for Sales Data that are to be changed
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
ls_input-ref_guid = lv_guid.
  ls_input-ref_kind = 'A'.
  ls_input-objectname = 'SALES'.
  ls_input_field-fieldname = 'PO_NUMBER_SOLD'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'REQ_DLV_DATE'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input-field_names[] = lt_input_field[].        "Contains all fields to updatd
  INSERT ls_input INTO TABLE lt_input.
Prepare Data for Orderadm_h
  CLEAR ls_orderadm_h.
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
  ls_orderadm_h-guid            = lv_guid.
  ls_orderadm_h-process_type    = 'ZEDL'.
  ls_orderadm_h-description     = 'ACB'. " Order Description
  ls_orderadm_h-posting_date    = sy-datum.
  ls_orderadm_h-descr_language  = 'EN'.
  ls_orderadm_h-template_type   = 'D'.
  ls_orderadm_h-mode            = 'A'.
  APPEND ls_orderadm_h TO lt_orderadm_h.
  CLEAR ls_input.
  ls_input-ref_guid = lv_guid.
  ls_input-ref_kind = 'A'.
  ls_input-objectname = 'ORDERADM_H'.
  ls_input_field-fieldname = 'MODE'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'DESCRIPTION'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'PROCESS_TYPE'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input-field_names[] = lt_input_field[].    "Contains all fields to updatd
  INSERT ls_input INTO TABLE lt_input.
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
Prepare Data for customer_h
ls_customer_h-ref_guid = lv_guid.
Ls_customer_h-mode = 'A'.
*Ls_customer_h-customer_ext = 'b'.
APPEND ls_customer_h to lt_customer_h.
Call bapi to create and update order
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
EXPORTING
  IT_OPPORT_H                   =
  IT_LEAD_H                     =
  IT_ACTIVITY_H                 =
  IT_LAWREF_H                   =
   IT_SALES                      =  lt_sales
  IT_PRICING                    =
  IT_PRICING_I                  =
  IT_PRIDOC                     =
   IT_ORGMAN                     =  lt_orgman
  IT_SHIPPING                   =
  IT_ACTIVITY_I                 =
  IT_PRODUCT_I                  =
  IT_BATCH                      =
  IT_FINPROD_I                  =
  IT_STRUCT_I                   =
  IT_CONFIG                     =
  IT_PAYPLAN                    =
  IT_PAYPLAN_D                  =
  IT_CUSTOMER_H                 =
  IT_CUSTOMER_I                 =
  IT_SERVICE_H                  =
  IT_SERVICE_I                  =
  IT_SERVICE_ASSIGN             =
  IT_QUALIF                     =
  IT_APPOINTMENT                =
  IT_TEXT                       =
  IT_SCHEDLIN_I                 =
   IT_PARTNER                    =  lt_partner
  IT_SERVICE_OS                 =
  IT_REFOBJ                     =
  IT_SUBJECT                    =
  IT_CANCEL                     =
  IT_CANCEL_IR                  =
  IT_CANCEL_DATES               =
   IT_STATUS                     =  lt_status
  IT_BILLPLAN                   =
  IT_BILLING                    =
  IT_ORDPRP_I                   =
  IT_ORDPRP_I_D                 =
  IT_ORDPRP_OBJL_I_D            =
  IT_CUMULATED_I                =
  IT_SERVICEPLAN_I              =
  IT_SERVICEPLAN_IE             =
  IT_PRICE_AGREEMENTS_BBP       =
  IT_PRICE_AGREEMENTS_CRM       =
  IT_CONFIG_FILTER              =
  IT_AC_ASSIGN                  =
  IT_SURVEY                     =
  IT_EXTENSION                  =
  IT_ACTIVE_SWITCH              =
  IT_UBB_CTR_I                  =
  IT_UBB_CR_I                   =
  IT_UBB_VOL_I                  =
  IT_APO_I                      =
  IT_CHNGPROC_I                 =
  IT_EXT_REF                    =
  IT_DOC_FLOW_PNT               =
  IT_CHNGPROC_H                 =
  IT_FUND_H                     =
  IT_CLA_H                      =
  IT_SRV_REQ_H                  =
  IT_APPROVAL                   =
IMPORTING
   ET_EXCEPTION                  = lt_exception
CHANGING
   CT_ORDERADM_H                 = lt_orderadm_h
  CT_ORDERADM_I                 =
   CT_INPUT_FIELDS               =  lt_input
   CV_LOG_HANDLE                 =  lv_log_handle
  CT_PARTNER_ATTRIBUTES         =
  CT_DOC_FLOW                   =
EXCEPTIONS
   ERROR_OCCURRED                = 1
   DOCUMENT_LOCKED               = 2
   NO_CHANGE_ALLOWED             = 3
   NO_AUTHORITY                  = 4
   OTHERS                        = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ls_crm_save = lv_guid.
  INSERT ls_crm_save INTO TABLE lt_crm_save.
Saving the Order which is created by above function module
  CALL FUNCTION 'CRM_ORDER_SAVE'
    EXPORTING
      it_objects_to_save   = lt_crm_save
    IMPORTING
      et_saved_objects     = lt_saved_objects
     et_exception         = lt_exception  " Receiving objects that can be saved
     et_objects_not_saved = lt_objects_not_saved
    EXCEPTIONS
      document_not_saved   = 1
      OTHERS               = 2.
  IF sy-subrc <> 0.
   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
     write 'hello1'.
  ENDIF.
Commit the save
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      wait = 'X'.
  IF sy-subrc <> 0.
   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
     write 'hello2'.
  ENDIF.
Check Created order
  READ TABLE lt_saved_objects INTO ls_saved_objects INDEX 1.
READ TABLE lt_objects_not_saved INTO ls_saved_objects INDEX 1.
  write : lv_guid,ls_saved_objects-GUID,ls_saved_objects-OBJECT_ID.

I have written folowing code but exception occurs in changing parameter lt_exception of FM maintain.What can be the possible error.
msg no - 0004
REPORT  ZTEST_PROGRAM.
*Internal tables
Data : lt_partner           TYPE              crmt_partner_comt,
       lt_sales             TYPE              crmt_sales_comt,
       lt_orgman            TYPE              crmt_orgman_comt,
       lt_status            TYPE              crmt_status_comt,
       lt_customer_h        TYPE              CRMT_SERVICE_H_COMT,
       lt_input_field       TYPE              crmt_input_field_names_tab,
       lt_exception         TYPE              crmt_exception_t,
       lt_crm_save          TYPE              crmt_object_guid_tab,
       lt_orderadm_h        TYPE              crmt_orderadm_h_comt,
       lt_saved_objects     TYPE              crmt_return_objects,
       lt_objects_not_saved TYPE              CRMT_OBJECT_GUID_TAB,
       lt_input             TYPE              crmt_input_field_tab.
*Structures
Data : ls_partner           TYPE                      crmt_partner_com,
       ls_sales             TYPE                      crmt_sales_com,
       ls_orgman            TYPE                      crmt_orgman_com,
       ls_status            TYPE                      crmt_status_com,
       ls_input             TYPE                      crmt_input_field,
       ls_input_field       TYPE                      crmt_input_field_names,
       ls_crm_save          TYPE                      crmt_object_guid,
       ls_saved_objects     LIKE LINE OF              lt_saved_objects,
       ls_orderadm_h        TYPE                      crmt_orderadm_h_com,
       ls_customer_h        TYPE                      CRMT_SERVICE_H_COM.
*Variables
Data : lv_guid              TYPE                      guid_16,
       lv_timezone          TYPE                      timezone,
       lv_timestamp         TYPE                      timestamp,
       lv_log_handle        TYPE                      balloghndl.
GET GUID
CALL FUNCTION 'GUID_CREATE'
    IMPORTING
      ev_guid_16 = lv_guid.
Filling status data
  CLEAR ls_status.
  ls_status-ref_guid        = lv_guid.
  ls_status-ref_kind        = 'A'.
  ls_status-status          = 'E0003'.
  ls_status-user_stat_proc  = 'CRMORDER'.
  ls_status-activate        = 'X'.
  APPEND ls_status TO lt_status.
Filling the partner data
  CLEAR ls_partner.
  ls_partner-ref_guid           = lv_guid.
  ls_partner-ref_kind           = 'A'.
  ls_partner-ref_partner_handle = '0001'.
  ls_partner-kind_of_entry      = 'C'.
  ls_partner-partner_fct        = '00000001'. " Sold to Party
  ls_partner-partner_no         = '190'.
  ls_partner-display_type       = 'BP'.
  ls_partner-no_type            = 'BP'.
  INSERT ls_partner INTO TABLE lt_partner.
Input Fields for Partner Data that are to be changed
  CLEAR ls_input.
    ls_input-ref_guid = lv_guid.
    ls_input-ref_kind = 'A'.
    ls_input-logical_key  = '0001'.
    ls_input-objectname = 'PARTNER'.
    ls_input_field-fieldname = 'DISPLAY_TYPE'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'KIND_OF_ENTRY'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'NO_TYPE'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'PARTNER_FCT'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input_field-fieldname = 'PARTNER_NO'.
    INSERT ls_input_field INTO TABLE lt_input_field.
    ls_input-field_names[] = lt_input_field[].
    INSERT ls_input INTO TABLE lt_input.
Prepare Organisation Data
  Clear ls_orgman.
  ls_orgman-ref_guid              = lv_guid.
  ls_orgman-ref_kind              = 'A'.
  ls_orgman-sales_group_ori       = 'A'.
  ls_orgman-sales_orgr_ori        = 'A'.
  ls_orgman-division_ori          = 'A'.
  ls_orgman-dis_channel_ori       = 'A'.
  APPEND ls_orgman TO lt_orgman.
Input Fields for Organization Data that are to be changed
  ls_input-ref_guid = lv_guid.
  ls_input-ref_kind = 'A'.
  ls_input-objectname = 'ORGMAN'.
  ls_input_field-fieldname = 'SALES_GROUP_ORI'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'SALES_ORGR_ORI'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'DIVISION_ORI'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input-field_names[] = lt_input_field[].        " Contains all fields to updatd
  INSERT ls_input INTO TABLE lt_input.
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
EXTERNAL REFERENCE DATA And Requested Delivery Date Data
  ls_sales-ref_guid       = lv_guid.
  ls_sales-po_number_sold = 'A'. " PO Reference
  ls_sales-ref_kind       = 'A'.
Get the user Time Zone
  CALL FUNCTION 'TZON_GET_USER_TIMEZONE'
    EXPORTING
      if_username             = sy-uname
    IMPORTING
      ef_timezone             = lv_timezone
    EXCEPTIONS
      no_timezone_customizing = 1
      no_valid_user           = 2
      OTHERS                  = 3.
  IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
Convert Requested delivery date into Timestamp
  CALL FUNCTION 'BBP_PD_CONVERT_DATETIME_TO_TS'
    EXPORTING
      iv_date             = sy-datum
     iv_time              = sy-uzeit
      iv_time_zone        = lv_timezone
   IMPORTING
     ev_timestamp        = lv_timestamp
    EV_TIMESTAMPL       =
   EXCEPTIONS
     convert_error       = 1
     OTHERS              = 2
  IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
  ls_sales-req_dlv_date   = lv_timestamp. " Requested delivery date time stamp
  ls_sales-req_timezone   = lv_timezone.  " User timezone
  ls_sales-po_date_sold = sy-datum.
  APPEND ls_sales TO lt_sales.
Input fields for Sales Data that are to be changed
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
ls_input-ref_guid = lv_guid.
  ls_input-ref_kind = 'A'.
  ls_input-objectname = 'SALES'.
  ls_input_field-fieldname = 'PO_NUMBER_SOLD'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'REQ_DLV_DATE'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input-field_names[] = lt_input_field[].        "Contains all fields to updatd
  INSERT ls_input INTO TABLE lt_input.
Prepare Data for Orderadm_h
  CLEAR ls_orderadm_h.
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
  ls_orderadm_h-guid            = lv_guid.
  ls_orderadm_h-process_type    = 'ZEDL'.
  ls_orderadm_h-description     = 'ACB'. " Order Description
  ls_orderadm_h-posting_date    = sy-datum.
  ls_orderadm_h-descr_language  = 'EN'.
  ls_orderadm_h-template_type   = 'D'.
  ls_orderadm_h-mode            = 'A'.
  APPEND ls_orderadm_h TO lt_orderadm_h.
  CLEAR ls_input.
  ls_input-ref_guid = lv_guid.
  ls_input-ref_kind = 'A'.
  ls_input-objectname = 'ORDERADM_H'.
  ls_input_field-fieldname = 'MODE'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'DESCRIPTION'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input_field-fieldname = 'PROCESS_TYPE'.
  INSERT ls_input_field INTO TABLE lt_input_field.
  ls_input-field_names[] = lt_input_field[].    "Contains all fields to updatd
  INSERT ls_input INTO TABLE lt_input.
  CLEAR: ls_input, ls_input_field.
  REFRESH lt_input_field.
Prepare Data for customer_h
ls_customer_h-ref_guid = lv_guid.
Ls_customer_h-mode = 'A'.
*Ls_customer_h-customer_ext = 'b'.
APPEND ls_customer_h to lt_customer_h.
Call bapi to create and update order
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
EXPORTING
  IT_OPPORT_H                   =
  IT_LEAD_H                     =
  IT_ACTIVITY_H                 =
  IT_LAWREF_H                   =
   IT_SALES                      =  lt_sales
  IT_PRICING                    =
  IT_PRICING_I                  =
  IT_PRIDOC                     =
   IT_ORGMAN                     =  lt_orgman
  IT_SHIPPING                   =
  IT_ACTIVITY_I                 =
  IT_PRODUCT_I                  =
  IT_BATCH                      =
  IT_FINPROD_I                  =
  IT_STRUCT_I                   =
  IT_CONFIG                     =
  IT_PAYPLAN                    =
  IT_PAYPLAN_D                  =
  IT_CUSTOMER_H                 =
  IT_CUSTOMER_I                 =
  IT_SERVICE_H                  =
  IT_SERVICE_I                  =
  IT_SERVICE_ASSIGN             =
  IT_QUALIF                     =
  IT_APPOINTMENT                =
  IT_TEXT                       =
  IT_SCHEDLIN_I                 =
   IT_PARTNER                    =  lt_partner
  IT_SERVICE_OS                 =
  IT_REFOBJ                     =
  IT_SUBJECT                    =
  IT_CANCEL                     =
  IT_CANCEL_IR                  =
  IT_CANCEL_DATES               =
   IT_STATUS                     =  lt_status
  IT_BILLPLAN                   =
  IT_BILLING                    =
  IT_ORDPRP_I                   =
  IT_ORDPRP_I_D                 =
  IT_ORDPRP_OBJL_I_D            =
  IT_CUMULATED_I                =
  IT_SERVICEPLAN_I              =
  IT_SERVICEPLAN_IE             =
  IT_PRICE_AGREEMENTS_BBP       =
  IT_PRICE_AGREEMENTS_CRM       =
  IT_CONFIG_FILTER              =
  IT_AC_ASSIGN                  =
  IT_SURVEY                     =
  IT_EXTENSION                  =
  IT_ACTIVE_SWITCH              =
  IT_UBB_CTR_I                  =
  IT_UBB_CR_I                   =
  IT_UBB_VOL_I                  =
  IT_APO_I                      =
  IT_CHNGPROC_I                 =
  IT_EXT_REF                    =
  IT_DOC_FLOW_PNT               =
  IT_CHNGPROC_H                 =
  IT_FUND_H                     =
  IT_CLA_H                      =
  IT_SRV_REQ_H                  =
  IT_APPROVAL                   =
IMPORTING
   ET_EXCEPTION                  = lt_exception
CHANGING
   CT_ORDERADM_H                 = lt_orderadm_h
  CT_ORDERADM_I                 =
   CT_INPUT_FIELDS               =  lt_input
   CV_LOG_HANDLE                 =  lv_log_handle
  CT_PARTNER_ATTRIBUTES         =
  CT_DOC_FLOW                   =
EXCEPTIONS
   ERROR_OCCURRED                = 1
   DOCUMENT_LOCKED               = 2
   NO_CHANGE_ALLOWED             = 3
   NO_AUTHORITY                  = 4
   OTHERS                        = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ls_crm_save = lv_guid.
  INSERT ls_crm_save INTO TABLE lt_crm_save.
Saving the Order which is created by above function module
  CALL FUNCTION 'CRM_ORDER_SAVE'
    EXPORTING
      it_objects_to_save   = lt_crm_save
    IMPORTING
      et_saved_objects     = lt_saved_objects
     et_exception         = lt_exception  " Receiving objects that can be saved
     et_objects_not_saved = lt_objects_not_saved
    EXCEPTIONS
      document_not_saved   = 1
      OTHERS               = 2.
  IF sy-subrc <> 0.
   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
     write 'hello1'.
  ENDIF.
Commit the save
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      wait = 'X'.
  IF sy-subrc <> 0.
   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
     write 'hello2'.
  ENDIF.
Check Created order
  READ TABLE lt_saved_objects INTO ls_saved_objects INDEX 1.
READ TABLE lt_objects_not_saved INTO ls_saved_objects INDEX 1.
  write : lv_guid,ls_saved_objects-GUID,ls_saved_objects-OBJECT_ID.

Similar Messages

Maybe you are looking for

  • Export to Text failing when Report height is more than 23 inches

    I have a problem while exporting to Text, when report height is more than 23 inches. It's failing with "an unhandled exception occurred in crw32.exe [3856]" Both Crystal Reports 2008 and Crystal Reports XI Release 2 are failing. Export to PDF is work

  • Apple ID already set up, but not getting email to reset

    Trying to set up apple IDs for my boys, but the website says their email address have already been used. I hit the send the reset my password by email, but got no email. Anyone familiar with this issue?

  • How security is handled in HR-BW reporting? Specially for Payroll data.

    Hi, how security is handled in HR-BW reporting? Specially for Payroll data, how security handled? any Idea will be appriciated. Thanks Ali

  • Making processing on an internal table generic

    Hi, I'm trying to make more generic a processing on an internal table. Here's the idea : "DELETE FROM TABLE T_VBAP every lines that do not exist IN table T_VBAK USING column VBELN for comparison" You can see below the (not generic) version of this fu

  • What can be deleted

    Hello everyone, I'm getting out of memory error when ever I try to do anything on fcp 4.5 h.d, I have many months of footage which some I have deleted recently.I am not sure which files at this point that I can delete safely without harming the files