Receive RMA Order As An Internal Shipment

(Doc ID 1622119.1)

Last updated on MARCH 02, 2017

Applies to:

Siebel Field Service - Version 8.1.1.10 [23021] and later
Information in this document applies to any platform.

Goal

We are implementing siebel to support a completely internal Field Service process. That is the accounts where service is occurring are company locations set up as inventory locations and where cycle counting is done, etc.

Field techs that uninstall defective assets from a store need to ship multiple assets from multiple RMA orders together in a single shipment. OOTB Siebel assumes that an RMA is shipped from a customer and receiving is done at the order level. We need to modify shipping to be able to create a shipment containing lines from multiple orders. When clicking Process Shipments, I have trapped the vanilla method and reset the Shipment Status back to Shipped (RMA orders are updated to Closed in vanilla since I assume it is expected they are shipped to customers that will not be processing receipts). I have been able to do this successfully.

We need to modify receiving so that RMA Advance Exchange orders appear in the 'FS All Pending Internal Orders List Applet', 'FS Receiving Internal' BC on the Receiving screen. I have modified the search specs to do this as well. I have made the RMA receiving view a copy of the 'FS Receiving Internal view' view so that the correct BCs are in context. I have also removed the search specs on 'FS Receiving internal Form applet'. I am now able to drill down on an RMA Advance Exchange based Shipment record to the 'FS Receiving RMA view', and create a record in the 'FS Receiving Action' BC and an asset record in the 'FS Order Item Action Assets Rcv'. But when I click 'Process Receipts' I get an error:

ObjMgrSqlLog Detail 4 00000002525c0e2c:0 2013-10-14 15:52:15 SELECT statement with ID: 18CC6940
SELECT
  T1.CONFLICT_ID,
  T1.LAST_UPD,
  T1.CREATED,
  T1.LAST_UPD_BY,
  T1.CREATED_BY,
  T1.MODIFICATION_NUM,
  T1.ROW_ID,
  T2.NAME,
  T1.APPLNT_GRP_ID,
  T17.FST_NAME,
  T17.LAST_NAME,
  T1.BACKUP_ORDER_ID,
  T1.FULFLMNT_MODE_CD,
  T10.STATUS_CD,
  T1.PREV_ORDER_REV_ID,
  T1.ROOT_ORDER_ID,
  T1.FULFLMNT_CRIT_CD,
  T25.ATP_STATUS_CD,
  T25.ATP_STATUS_DT,
  T2.NAME,
  T1.ACCNT_ADDR_ID,
  T6.CONTRACT_VIS_FLG,
  T1.ACCNT_ID,
  T2.LOC,
  T2.OU_NUM,
  T1.ACTIVE_FLG,
  T1.AGREE_ID,
  T1.APPR_BY_POSTN_ID,
  T19.ARRIVAL_DT,
  T1.STATUS_DT,
  T1.AUTO_RECV_FLG,
  T25.AVAIL_DT,
  T1.EAI_ORDER_NUM,
  T1.EAI_EXPRT_STAT_CD,
  T4.NAME,
  T1.BL_OU_ID,
  T4.LOC,
  T1.BL_ADDR_ID,
  T1.BL_CON_ID,
  T1.BILLABLE_FLG,
  T6.NAME,
  T1.BILL_ACCNT_ID,
  T1.CARRIER_PRIO_CD,
  T1.CARRIER_CD,
  T1.STATUS_CHG_FLG,
  T1.CMPND_PROD_NUM,
  T17.EMAIL_ADDR,
  T17.FST_NAME,
  T1.CONTACT_ID,
  T17.LAST_NAME,
  T17.PR_PER_ADDR_ID,
  T17.WORK_PH_NUM,
  T1.CRDT_COMMENTS,
  T1.CRDT_STATUS_CD,
  T12.CC_NUM,
  T12.CCNUM_ENCRPKEY_REF,
  T1.CURCY_CD,
  T2.MASTER_OU_ID,
  T1.CUSTOMER_ID,
  T19.DEPARTURE_DT,
  T1.DEST_INVLOC_ID,
  T8.NAME,
  T1.DISCNT_PERCENT,
  T1.DISCNT_AMT,
  T1.DISCNT_RC_AMT,
  T1.DISCNT_RC_PCT,
  T13.BU_ID,
  T1.ORDER_EXCH_DT,
  T1.FREEZE_FLG,
  T1.FRGHT_AMT,
  T1.FRGHT_TERMS_CD,
  T1.FRGHT_TERMS_INFO,
  T1.HOLD_FLG,
  T1.CMPNS_STATUS_CD,
  T1.INTEGRATION_ID,
  T1.LOY_MEMBER_ID,
  T9.MEM_NUM,
  T14.NON_PRTCPT_FLG,
  T2.OU_TYPE_CD,
  T1.ORDER_DT,
  T1.ORDER_NUM,
  T1.PRIO_CD,
  T18.NAME,
  T1.ORDER_CAT_CD,
  T1.ORDER_TYPE_ID,
  T2.PO_PAY_MAX_AMT,
  T1.PAR_ORDER_ID,
  T1.PAYTO_OU_ID,
  T1.PAYTO_ADDR_ID,
  T1.PAYTO_CON_ID,
  T12.PAY_TYPE_CD,
  T1.PAYMENT_TERM_ID,
  T25.BL_CITY,
  T25.BL_COUNTRY,
  T25.BL_ZIPCODE,
  T25.BL_STATE,
  T25.BL_ADDR,
  T25.BL_ADDR_LINE_2,
  T25.SH_CITY,
  T25.SH_COUNTRY,
  T25.SH_ZIPCODE,
  T25.SH_STATE,
  T25.SH_ADDR,
  T25.SH_ADDR_LINE_2,
  T11.NAME,
  T1.PRI_LST_ID,
  T11.PRIMDL_ID,
  T2.PR_ADDR_ID,
  T3.CITY,
  T3.COUNTRY,
  T3.ZIPCODE,
  T3.STATE,
  T5.ZIPCODE,
  T1.BU_ID,
  T1.PAY_OU_ID,
  T1.PR_PAYMENT_ID,
  T1.PR_POSTN_ID,
  T24.CITY,
  T24.COUNTRY,
  T24.ZIPCODE,
  T24.STATE,
  T1.QUOTE_ID,
  T13.BU_ID,
  T1.REQ_SHIP_DT,
  T25.RESERVE_TM_INTRVL,
  T25.RSRV_TM_INTRVL_CD,
  T1.RTRN_REASON_CD,
  T15.NAME,
  T1.RTRN_OU_ID,
  T15.LOC,
  T1.RTRN_ADDR_ID,
  T1.RTRN_CON_ID,
  T16.INTEGRATION_ID,
  T1.REV_NUM,
  T1.REVISION_DT,
  T20.NAME,
  T1.SERV_ACCNT_ID,
  T25.SHIP_COMPLETE_FLG,
  T23.NAME,
  T1.SHIP_OU_ID,
  T23.INTEGRATION_ID,
  T23.LOC,
  T1.SHIP_ADDR_ID,
  T1.SHIP_CON_ID,
  T1.SHIP_METH_CD,
  T25.SINGLE_SRC_FLG,
  T1.SRC_INVLOC_ID,
  T21.INTEGRATION_ID,
  T21.NAME,
  T21.RECV_TO_ADDR_ID,
  T22.ZIPCODE,
  T1.STATUS_CD,
  T1.TAX_AMT,
  T1.TAX_EXEMPT_FLG,
  T1.TAX_EXEMPT_NUM,
  T1.TAX_EXEMPT_REASON,
  T1.TAX_LIST_ID,
  T1.TAX_PERCENT,
  T17.DFLT_ORDER_PROC_CD,
  T1.BILL_PROFILE_ID,
  T7.NAME,
  T1.X_ORDER_SUB_TYPE,
  T1.BLOCK_DLVRY_CD,
  T26.ADDR,
  T26.ADDR_LINE_2,
  T26.CITY,
  T26.COUNTRY,
  T26.STATE,
  T26.ZIPCODE,
  T27.ADDR,
  T29.FST_NAME,
  T29.LAST_NAME,
  T30.ADDR,
  T30.ADDR_LINE_2,
  T30.CITY,
  T30.COUNTRY,
  T30.STATE,
  T30.ZIPCODE,
  T3.ROW_ID,
  T4.ROW_ID,
  T5.ROW_ID,
  T6.ROW_ID,
  T7.ROW_ID,
  T8.ROW_ID,
  T9.ROW_ID,
  T2.ROW_ID,
  T10.ROW_ID,
  T11.ROW_ID,
  T12.ROW_ID,
  T14.ROW_ID,
  T13.ROW_ID,
  T15.ROW_ID,
  T16.ROW_ID,
  T17.ROW_ID,
  T18.ROW_ID,
  T19.ROW_ID,
  T20.ROW_ID,
  T22.ROW_ID,
  T23.ROW_ID,
  T24.ROW_ID,
  T21.ROW_ID,
  T25.ROW_ID,
  T25.PAR_ROW_ID,
  T25.MODIFICATION_NUM,
  T25.CREATED_BY,
  T25.LAST_UPD_BY,
  T25.CREATED,
  T25.LAST_UPD,
  T25.CONFLICT_ID,
  T25.PAR_ROW_ID,
  T26.ROW_ID,
  T27.ROW_ID,
  T28.ROW_ID,
  T29.ROW_ID,
  T30.ROW_ID
  FROM
  SIEBEL.S_ORDER T1
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT T2 ON T1.ACCNT_ID = T2.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T3 ON T2.PR_ADDR_ID = T3.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT T4 ON T1.BL_OU_ID = T4.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T5 ON T1.BL_ADDR_ID = T5.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT T6 ON T1.BILL_ACCNT_ID = T6.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_INV_PROF T7 ON T1.BILL_PROFILE_ID = T7.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_INVLOC T8 ON T1.DEST_INVLOC_ID = T8.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_LOY_MEMBER T9 ON T1.LOY_MEMBER_ID = T9.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORDER T10 ON T1.PAR_ORDER_ID = T10.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_PRI_LST T11 ON T1.PRI_LST_ID = T11.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_SRC_PAYMENT T12 ON T1.PR_PAYMENT_ID = T12.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_DOC_QUOTE T13 ON T1.QUOTE_ID = T13.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT_TNTX T14 ON T13.BU_ID = T14.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT T15 ON T1.RTRN_OU_ID = T15.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_CONTACT T16 ON T1.RTRN_CON_ID = T16.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_CONTACT T17 ON T1.CONTACT_ID = T17.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORDER_TYPE T18 ON T1.ORDER_TYPE_ID = T18.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_QUOTE_TNTX T19 ON T1.QUOTE_ID = T19.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT T20 ON T1.SERV_ACCNT_ID = T20.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_INVLOC T21 ON T1.SRC_INVLOC_ID = T21.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T22 ON T21.RECV_TO_ADDR_ID = T22.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORG_EXT T23 ON T1.SHIP_OU_ID = T23.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T24 ON T1.SHIP_ADDR_ID = T24.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ORDER_DTL T25 ON T1.ROW_ID = T25.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T26 ON T1.SHIP_ADDR_ID = T26.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T27 ON T1.RTRN_ADDR_ID = T27.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_PARTY T28 ON T1.BL_CON_ID = T28.ROW_ID
  LEFT OUTER JOIN SIEBEL.S_CONTACT T29 ON T1.BL_CON_ID = T29.PAR_ROW_ID
  LEFT OUTER JOIN SIEBEL.S_ADDR_PER T30 ON T1.BL_ADDR_ID = T30.ROW_ID
  WHERE
  (T1.TEST_ORDER_FLG = 'N') AND
  (T1.ROW_ID = ?)

ObjMgrSqlLog Detail 4 00000002525c0e2c:0 2013-10-14 15:52:15 Bind variable 1: 8-1GSC

ObjMgrBusCompLog Error 1 00000002525c0e2c:0 2013-10-14 15:52:15 (bcshipping.cpp (669)) SBL-SFS-00258: Need "From Inventory" to generate inventory transactions.

I am not sure what fields the OOTB Process Receipts method uses to create inventory transactions so that I can insure it is populated. Can you please tell me what field to populate?
 

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms