Order Inserts

by Molly Mathe 4. March 2010 10:35

You may wish to include promotional/informational material with certain of your inventory items.  For example, if someone buys a book on starting a business, you may wish to insert your catalog on small business products.  You may even wish or need to tie the shipment of the main inventory item to the availability and inclusion of the insertion--and have the main item go on backorder if the insertion is out of stock. The Order Inserts feature allows you to accomplish all of this.  Inclusion of the order inserts, which are created as separate Advantage inventory items, is based on rules that you maintain. 

System Option

This feature is activated by a system option, INSRTSEL.  This PRO-level option specifies the default (active) insert select set currently in use.  If this is blank, it is assumed that no order insert handling is in use. Only one Insert Select Set can be used at a time.

You can also specify the insert select to use for certain individual processes that can send out Order Inserts, at process request time.  The processes below include run-time options for Order Inserts selects.  If the run-time option is blank, the select identified in the INSRTSEL system option is used; if that is also blank, the Order Insert feature is not activated.

Processes that allow entry of an Order Insert select at run-time:

MST390
MST391
BCL360

Insert Assignment Rules

Each order-line is evaluated against your Insert Assignment Rules that are set up at the PROSEL workspace, as shown below:

 

This workspace allows you to set up an assignment structure that can have up to four levels with selection criteria at each level.  This workspace allows you to set up sophisticated assignment rules in the same way as other Advantage selects (e.g., the A/R billing selection and CIR renewal selection).

You can create assignment rules so that the inserts ship, for example, whenever the customer orders any product from a particular product class.  Or, alternatively, you can look at the customer's buying history and base assignment of the insertion on that.

At the lowest level, you indicate the Insert Set to use, as shown below.

In this example the CATALOG insert set is going to be used.  The order with order-lines falling into this lowest level would not be held if the insert item(s) is out of stock.  Nor would the insert item(s) be duplicated if they had already been assigned to an earlier order-line.

If an insert assignment set is set up to hold order lines and one or more insert items is unavailable, the order line is put on backorder and all other inserts for that order line are also put on backorder. The PRO360 – Backorder Fill process tracks and fills these backorders (main item + insert) when the insert becomes available. If rush-ship is requested for an item whose insert is out-of-stock (and the lowest level logic indicates that the order-line is to be held), a message is displayed stating that rush-ship for the item is not available.

If an order qualifies for two different insert assignment sets, each of which contain the same insert item, and one set allows duplicate items but the other one does not, the results will depend on the order in which the sets are processed.  If the set that allows duplicates is processed first, then the item is added once to the order.  If the set that does not allow duplicates is processed first, then the insert item is added twice.

Order Evaluation and Inventory Update

As orders are added at MSTDAT/OLN and MSTDAT/FST, the view routines query the order insert select logic to determine if order-lines for inserts need to be added to the order.  If so, these order-lines are automatically added by the system.

Inserts are always added with a quantity of 1, regardless of the quantity ordered for the main item.

The following order types do qualify for order inserts:

Invoiceable
Gratis
Preview

 The following order types do not qualify for order inserts:

Warehouse transfer
Miscellaneous
Proforma
Credit (return)
 Invoiceable order with postship = Y

These insert records may be viewed by Customer Service at the SVCDAT/OLN view…as they are included as separate lines directly on the order.

Insert items are marked with price source of 'INS', which can be seen at the MSTDAT/PRO and SVCDAT/OLN views during an Inquire function. 

  

How to Force a Shipped Order into Backorder

by Molly Mathe 5. November 2009 15:34

Although it’s a rare occurrence, sometimes when you place an order, there will be a quantity in stock that is no longer there when the order finally posts via PRO205. In these cases, the shipped quantity on the order is set, but since the warehouse does not have enough stock to fulfill it, the PRO205 will not post the order. The PRO205.REPORT will give the error message “Not enough quantity available to fill this order.” The steps below illustrate how to force these order lines into backorder.

Forcing an order line to backorder

  1. Route to MSTDAT/PRO.
  2. Search for the order.
  3. Use the CS function to change the order status from I to P.
  4. Highlight the line in error and use the CQ function to change the shipped qty to 0.
  5. Answer the popup box “Do you want to backorder the remaining quantity?” as follows:
    • If you wish to backorder the line, click YES
    • If you wish to force the item into Lost Sales, click NO
  6. Use the CS function to change the order status back to I.

NOTE: Forcing a backorder is only to be done if the physical warehouse does not have stock on hand (in order for PRO205 to change the status to B and allow PRO360 to fill it when inventory is received in the warehouse). If the order did indeed ship from the physical warehouse and your quantities at INVDAT/WHS were just incorrect, you would need to do an Inventory Adjustment to correct the quantities to match what was in the physical warehouse and allow the order to post.

Tags:

Using Related Items

by Molly Mathe 6. October 2009 12:00

There may be times when you have an item that cannot be purchased separately, but must be included with another item, for instance personalization services, shrink-wrapping, or logos.  Advantage uses the related items feature to handle cases like this, and prohibits the entry of a related item.  It must be added with another item.

Set-up of related item

Related items are set up at INVDAT like any other item.  However, the related item check box must be checked.  You must also set up a warehouse record for the item.  Depending on the nature of the related item, it can either be stocked in inventory or set up as a non-stocked item.

Adding Related Item to Order

After adding the primary item to the order, you can right-click in the line section at MSTFST to add the related item.

Selecting Add Related Order Line… will bring up a dialog box to enter the related item and optionally override the descriptions.  Using the drop-down on the Related Item Number field will show only items at INVDAT that have the related item box checked.

The related item will be related to the order line that was entered before it.  If you later delete that line from the order, it will automatically delete the related order line.

Promotion-Exclusive Items

by Molly Mathe 11. September 2009 16:06

With the 2008R1 release (and later), you can set up an item to be valid for only those promotions under which it has been specifically defined as a promotion item at CPNPMO/ITM.

When this setting is used, the item cannot be added under a different promotion, even when the promotion is set up to allow additional items.  This would allow you, for example, to protect an item from being sold under the wrong promotion---one intended for another owning organization, for example.

Defining the item at INVDAT


Order Entry
The order entry edit that prohibits addition of promotion-exclusive items to "non-participating" promotions is in place at the following places:

  • Order entry views (e.g., MSTDAT/FST, /CIR)
  • Uploads (e.g., CIR125, PRO301)
  • Web orders

If you try to add a “promotion exclusive” item to an order under a promotion that it is not defined on, you will receive a message alerting you that the item is exclusive to specific promotion codes, and cannot be ordered under that promotion.

Restoring Premium on Reinstate

by Molly Mathe 17. June 2009 13:37

In Advantage, a non-pay cancel transaction causes the customer to lose any premium set they would have received on a paid order.  As of 2009R1, however, there is an option to restore a premium set if the customer later reinstates.

If the subscription is later reinstated, you have the option of allowing the customer to receive the premium set--you simply set the CIR option PRMSTREI ("Restore Premium Set on REI?") to Y to enable this handling; the default setting is N.

When the option is set to Y, and a subscription with a pending premium set is non-pay cancelled, MST391 places the premium set into a special status ("H" – Held).  These sets are retained in the MSTPRM-M table, in case the non-pay cancelled sub is later reinstated.

If you have set the PRMSTREI option to Y, and the sub is reinstated, Advantage will remove the hold on the premium set and process it normally through the system (this occurs automatically and silently---there is no message at the time of the REI).  From a premium set point of view, it is as if the subscription had never been cancelled.

Please note these points about the feature:

  • If the composition of the premium set has been changed between the time of cancellation and the time of reinstatement---for example, if items were added to or deleted from a sequence, or if whole sequences were added or deleted---the restored set does not reflect these changes.  The customer receives the same premium items as he/she would have had the sub not been cancelled.
  • Use of this feature could inflate the number of records in your MSTPRM-M table.  You can use the MST840 process to selectively purge these records.

Tags:

Using Search Filters

by Molly Mathe 12. May 2009 14:45

Smart Searches allow users to restrict the display of table entries to those of most interest to the user. Using the “Search For” field, you can enter a search string that would limit the display to only those entries that satisfy the string. 

Using the “Search For” field

There are different ways you can enter your search string, which will then result in different entries appearing:

  • Entry of a string returns matches on the exact string (e.g., ZA will return all matches on that string).
  • Entry of strings separated by spaces returns matches that satisfy all strings (e.g., Z(space) A will return all matches that contain both a Z and an A).
  • Use of double quotes will perform an exact (literal) search on the string (e.g., "Z(space)A" will return all matches that contain that exact string---a Z and an A separated by a space).

Using Multiple Criteria in a Smart Search 

Some Smart Searches allow you to filter on multiple types of criteria. For example, the Smart Search at MSTDAT/CTG allows you to search on Control Group Date, Control Group ID, Description, and Owner. However, what if you wanted to search by Control Group Date and Control Group ID? Instead of using the Green filter button, you can enter both “search for’s” in the field.

In the screenshot above, in order to bring up the 3/23/09 ZUPL00 control group and not the 3/23/09 MMATH control group, you could type 3/23/09 ZUPL00 in the Search for field and it would limit the search where 3/23/09 is in any of the fields and ZUPL00 is in any of the fields. Keep in mind that what you enter in the field can be in any of the available columns.

Select Detail Searches

The Select Set Maintenance dialog at Advantage select views includes search capabilities to allow you to quickly access a particular level within the select; this may be of use if you are performing maintenance on a very large select, and you know the exact level you need to access.

You can enter the level number(s) you are searching for, separated by spaces (that is, you need not supply the periods between numbers).  A search on "10 20" and "10.20" would yield the same results.

The search returns all levels that include the criteria, regardless of their order within the select levels.  A search on "10 30" would return all levels that include those numbers---both those where 10 occurs first (e.g., 001.10.30) and those where 30 occurs first (e.g., 001.30.10).

Although Advantage assigns leading zeroes where necessary in level numbers, these need not be entered as part of the search criteria.  To find level 010, you need only enter "10".

Using Coupons

by Molly Mathe 14. April 2009 14:01

A coupon is a discount program you set up to offer a percentage or dollar discount on the order, based on certain parameters. You can allow use of the coupon based on such variables as the promotion code on the order line, the specific items ordered, the owning organization of the product ordered, etc.

The discount is applied only to the "eligible" lines on the order (such discounts are spread proportionally across the eligible lines). In addition, you can set up a particular coupon to allow/disallow repeated uses by the same bill-to customer and access usage statistics for individual customers, as well as the general stats for a coupon "program"---number of uses, sales with and without the coupon discount, etc.

CPNTBL/COU – Coupon Setup

You set up coupons at the CPNTBL/COU view. Coupons can be attached to a promotion, or be valid for a group of promotions, items, owning organizations, etc.

Entering Coupons with the Order

Coupons can be applied to any line items that may be entered on a Master Order at MSTDAT/FST. This includes:

  • CIR
  • PRO
  • CEM
  • AMB
  • MBR

Coupon discounting is supported at the FST entry view (as well as other entry points that support order scripting---for example, the Next Release tab at SVCDAT/BCL).

At MSTDAT/FST, a "Coupon" button is available for inclusion with the order entry script. This allows the rep to enter the coupon at any point of the order (once the order details phase is started, and up until the point that the payment dialog is displayed).

Multiple coupons may be used per order---however, the end result of the order is that only one coupon may be applied per line. In some cases, two or more coupons may be applicable to the same line, in which case the user must inform Advantage which coupon to honor for that line (see "Resolving Coupon Conflicts" below).

The following terminology and distinctions may be useful in understanding this:

  • A coupon is assigned to an order (i.e. entered by the rep). This means is the coupon is available to its order lines, but does not necessarily mean that the coupon will actually be used by any of the order lines.
  • A coupon is applicable to an order line if it meets the inclusion and exclusion rules for that coupon.
  • A coupon is applied to one or more order lines, as long as it is applicable to that line, and the system has not previously applied another coupon to the line.
  • A coupon qualifies for a discount if the sum of the order lines to which that coupon is applied meets the criteria (minimum order quantity, minimum order amount) that has been defined for the coupon.

How Coupon Discounts Work

Coupon discounts work just like other discounts. A monetary or % amount is subtracted from the list price of the item(s) in question when a coupon is used on a sale. Coupon discounts are placed into their own discount "bucket" allowing combination codes to rule whether, say, a promotion discount and a coupon discount are added together or compounded together, or whether the highest discount takes precedence.

Coupon discounts will be applied prior to any calculation of tax. That is, tax is calculated based on the discounted amount.

What if the total discount of the coupon is more than the total of the qualifying lines? For example, suppose you offer a $20 off discount, yet qualifying lines 1, 3, and 5 add up to only $18.50. In these cases, the customer loses the remainder of the coupon (or in other words, only $18.50 worth of discounting is applied to the order). In these situations, a message is displayed to the rep during online order entry.

NOTE: For more information on using coupons, see Online Help or request a webinar training session with Doug Moore (dmoor@advantagecs.com).

Process_Notification Capsule

by Molly Mathe 1. February 2009 11:32



 

As of revision 2008R2, Advantage calls a process notification procedure at the end of every process request and can be set up to send a variety of notifications, as you choose. Process_Notification.cap should be put in your advantage\local\custom_cli folder and then modified based on the types of notification desired.

When modifying the capsule, place the notification command before the RETURN TRUE line in the boolean Notify procedure. Remember, any capsules must be declared before using them.

// Called when a process ends
DEFINE BOOLEAN NOTIFY( // Status. FALSE on failure
CHARACTER 8 REQ_NAME, // Request name
DATE START_DATE, // date when the process started
CHARACTER 8 START_TIME, // time when the process started
CHARACTER 1 TYPE, // Type of the process (P or J)
CHARACTER 1 STATUS, // Status (D, E, etc.)
CHARACTER 8 JSM_NAME, // Report name
INTEGER USE_TIME) // Number of minutes that the request was active
// Place custom notification here.
RETURN TRUE
END-DEFINE

Possible Notifications:

  •  Did the process end in error or warning? If so, send an email to the sysadmin:
    CAPSULE EMAIL EMAIL
    IF STATUS = 'E' THEN
    EXEC EMAIL.SEND('admin@yourcompany.com', 'Admin', REQ_NAME & ' has errored', REQ_NAME & ' has errored out - Please investigate.')
    ELSE-IF STATUS ='W' THEN
    EXEC EMAIL.SEND('admin@yourcompany.com', 'Admin', REQ_NAME & ' has ended in warning', REQ_NAME & ' has had an abnormal ending.')
    END-IF
  •  Did the process run longer than normal? If so, send an email to the sysadmin:
    CAPSULE EMAIL EMAIL
    IF USE_TIME > 300 THEN
    EXEC EMAIL.SEND('admin@yourcompany.com', 'Admin', REQ_NAME & ' - Long runtime', REQ_NAME & ' ran for ' & USE_TIME & ' minutes.')
    END-IF
  • When the process completes, run a custom .BAT file:
    IF REQ_NAME = 'ARP310' THEN
    MOVE "%CLIUTLLOC%/INVOICES.BAT " & REQ_NAME to SYSTEM_COMMAND SYSTEM SYSTEM_COMMAND '' LOG 104
    END-IF
  • When the process completes, run a SQL statement.
    IF REQ_NAME = 'PRO310' THEN
    MOVE "%CLIUTLLOC%/PICK_TICKET.BAT " & REQ_NAME to SYSTEM_COMMAND SYSTEM SYSTEM_COMMAND '' LOG 104
    END-IF
  • Send an email to the CIRC manager when the CIR410 finishes.
    IF REQ_NAME = 'CIR410' THEN
    EXEC EMAIL.SEND('cirmgr@yourcompany.com', 'Circ Mgr', 'CIR410', 'CIR410 has completed.')
    END-IF
  • Send an email when a specific job stream finishes (where CDSEND is last process in job stream).
    IF JSM_NAME = 'ARPNITE' AND REQ_NAME = 'CDSEND' THEN
    EXEC EMAIL.SEND('admin@yourcompany.com', 'Admin', JSM_NAME & ' completed', JSM_NAME & ' has completed.')
    END-IF

Tags:

Tech Tip

Using Subscription Adjustment Reasons

by Molly Mathe 1. January 2009 11:48

 
 

You can attach a reason code to all customer service subscription adjustment transactions and also have a note automatically created with the transaction. This way, you have a visible customer service audit trail of all such changes that may be quickly referenced. You might want to know, for example, why the customer is changing the number of copies or migrating from one publication to another.

You define the valid values by operation code for these transactions at the CIRTBL/RSN –Subscription Adjustment Reason view.

Create Customer Note controls whether a customer note should be automatically created at order entry time for a transaction using this reason code.

The note is automatically generated when the transaction is entered. If the transaction is deleted before posting, the attached note is deleted as well. The note contains:

  •  Operation code for the transaction
  •  Reason Code
  •  Reason Code meaning

In addition, you can indicate that the note is to be automatically marked complete at time of creation. The system marks the note complete by populating the current date into the Action/Done field. This might be useful, for example, if no letter is being produced, and there is no further action to take.

Credit Reason permits you to define a valid ARP reason code for those transactions that result in a credit. You may define whatever values make sense. You may prefer to set the ARP code to the same value as the CIR reason code, or you may leave it blank. CIR210 uses this value to set the credit reason code in ARP.

Tags:

General | Tech Tip

Display Refund Amount for MOD

by Molly Mathe 1. November 2008 12:00
When you perform a MOD/CUS transaction at MSTDAT/SVC, you have several options as to the disposition of any credit balance. You can write it off, apply it to another order, etc.

You can also refund the credit to the customer by entering REFUND in the Apply-to field. When you do this, the system first uses the credit to pay off any remaining balance on the subscription and then refunds the balance to the customer (if the subscription is fully paid, the entire credit amount will be refunded).

In these refund scenarios, the order recap display that is shown at transaction wrap-up now also displays the amount being refunded to the customer - as a separate field.

Note that this is the expected refund amount, at the time that the transaction occurs. Other subsequent actions within the system could affect the ultimate amount refunded.

Tags:

Tech Tip

Powered by BlogEngine.NET 1.5.0.7

Advantage Computing Systems is the proven leader in premium in-house fulfillment and marketing software for medium to large publishers of digital or print magazines, journals, newsletters, electronic products, content, directories, conferences and events, catalogs & books.