SOP-RMA Link for Core Required Parts


SOP-RMA Link for Core Required Parts

Problem Definition

ACME Co sells and services fire, sprinkler and security systems. Repair is an important part of the business. With some items, sale of a new part requires return of an old part (or “core”).

Return of the Cores is managed using the Field Service RMA. When a Salesperson creates a Sales Order for a “core required” part, they notify another employee who creates the RMA. Usually there are one or two lines on the order, but there can be over 20.

Manually creating the RMA is error prone. It is too easy for the salesperson to forget to have the RMA created, resulting in parts that do not get returned because there isn’t an RMA.

ACME Co would like to automatically create an RMA for “core required” parts.

Design Features


An enhancement will be created that automatically creates an RMA when the Salesperson is done with a Sales Order. The RMA will open automatically for the Salesperson to print the RMA Form, and, any subsequent changes to the Sales Order will be synced to the RMA without user intervention.


Navigation: Tools >> Setup >> Sales >> ACME Co Setup

Field Function
Unit Cost The Item must have a unit cost >= the amount specified. The amount can be $0.
Op Codes This is Item User Category #3. Items must have one of the specified Op Codes to be a “core return required” item.

This window is used to control the parameters used by the software that determine which Items required a core return.

The following logic is used to determine if an Item Number added to a Sales Order is a “core required” part.

  • It ends with -RC in the Item Number
  • It has a companion “spare” or “salvage” Item Number that can be found by swapping -RC for -S in the Item Number
  • It meets the additional criteria specified in the Setup window (i.e. it has a Unit Cost >= $250, and it has one of the Op Codes listed in the window).


There is no user interface for this feature.

As Items are added to an Order, if they meet the Core Required criteria (see Setup), they will be automatically added to an RMA. See Create RMA below.

When an Order is saved, and the Order is linked to an RMA, the user will be prompted: Do you want to view the RMA?

    • If they answer YES, the RMA will open in the RMA Entry/Update window

An Additional Menu item will be added to Sales Transaction Entry to access the linked RMA: Additional >> View RMA.

Additional Changes to Sales Transaction Entry:

  • Changes cannot be made to the Sales Order if the linked RMA is open in RMA Entry/Update
    • GP does not normally track when an RMA is open in the RMA Entry/Update window. The enhancement will add activity tracking on RMAs so that it can tell when a user has an RMA open.
    • To automatically fix an RMA that gets “stuck” in the activity table (such as the computer loses power when the RMA is open), the enhancement will automatically clear the Activity table for a User ID when the log-in to GP.
  • Changes made to the Order automatically update the RMA
    • Adding an Item to the Order adds it to the RMA
    • Removing an Item from the Order removes it from the RMA. If there are no Items on the Order, the RMA is deleted.
    • Changing a Quantity on the Order updates the Quantity on the RMA
    • Changes to the Customer information (Address ID, address info, etc) do NOT update the RMA once it has been created. When the first Core Required item is added to an Order, that will cause the RMA to be created. At that point the Customer information is retrieved and set on the RMA.
  • An Order cannot be Voided or Deleted until the linked RMA is Deleted/Voided
    • The user will be warned of the condition, and the linked RMA will open automatically.
    • In the event the RMA cannot be deleted or voided, the link can still be broken by removing the Order Number from the Origin Document field.
  • A Sales Batch cannot be deleted if one or more documents in the Batch is linked to an RMA
    • The user will be warned that links exist, however no further assistance will be provided in locating the document. The user will need to manually locate the linked RMAs and delete/void the RMAs.
  • When an Order is transferred to Invoice, the “Invoice” field on the RMA Additional Fields will be updated
    • If an Order is partially transferred, each time it is transferred to Invoice it will update the RMA with the most recent Invoice Number.

Create RMA

As Core Required items are added to an Order, their corresponding “salvage” item will be added to an RMA. The RMA will be created as described below.

Header Field Source
RMA Number Next RMA Number generated by Service
RMA Type Hard-coded, always CORE-REC
RMA Status Hard-coded, always NEW
RMA Reason Code Hard-coded, always COR
Customer ID Customer from Sales Order
Address ID Ship To Address ID from the Sales Order. Address fields from the Sales Ship To Address Entry window. NOTE: this information is retrieved from the Order when the RMA is field created. Subsequent changes to the Address Info on the Sales Order do NOT synchronize to the RMA.
Origin None
Origin Document SOP Order Number
Office ID Hard-coded, always LOU
Site ID Return Location Code from the RMA Type. Return To address fields from the Site Maintenance window for the Return Location Code.
Bill To Customer ID Customer ID from Sales Order, unless a different Customer ID is specified in the SVC Customer Extension window.
Bill To Address ID Bill To Address ID from the Customer Master
Currency ID Multi-currency is NOT used
Customer PO Customer PO from Sales Order
RMA Additional Fields Source
Text #1 (Order Number) SOP Order Number
Text #2 (Invoice) When the Order is transferred to Invoice, the SOP Invoice Number will be added to this field.
Text #3 (Payment Terms) SOP Payment Terms ID
Text #5 (Salesperson) SOP Salesperson ID
Date/Time Entered System Date/Time when the RMA is auto-created (System Date is the actual date, versus User Date which may not be the actual date).
RMA Line Field Source
Type Hard-coded, always CORE-REQ
Return Item Number As described in Setup, the -RC item from the Sales Order will be changed to a -S item. The -S item will be added to the RMA.
Quantity The SOP Line Quantity Ordered.
U of M There is only one U of M for all items, called “One”. The RMA will always be created using the Base U of M for an Item. If needed, the SOP Line Quantity will be converted to the Qty In Base.
Unit Price Retrieved from Item Price list
Unit Cost The Item’s current Actual/Standard cost
RMA Line Status Same as Header
Office ID Same as Header
Return Site ID & Address fields Same as Header
Ship to Address ID and Address Fields Same as Header
Shipping Method Customer’s Shipping Method from Customer Maintenance
Customer PO Same as Header
Return Price Level If Service Setup has Use Return Price Level marked, the Price Level provided is used. The Return Price Level must exist on the Item’s Price List. Otherwise the Price Level from the Order is used.
Entered Date/Time Same as RMA Additional Fields window