IBM Sterling Commerce interview question and answer related to OMS implementation. . .
This page lists down the common interview question and answers on OMS
implementation by IBM Sterling Commerce. It has question related to
basic customization and advanced business requirment implementation.
Main objective of this page is to guide you to answer interview
questions and provide detail usnderstanding on IBM Sterling OMS
implementation. Here I documented question and answer from my OMS
implementation experience. Many question asked from the project where
you have worked on. So go-through your project implementation documents
and try to give a thought why those design and implementation decision
were taken. You need to read the api documentation and IBM Knowledge
centre documentation.
Support
Whatsapp No. 7439236696 for any question / suggestion |
Questions and Answers:
51).
Have you used/implemented any user exit? Can
you give on example?
Yes. I have implemented UserExit. Couple of them are beforCreateOrder
UE, getOrderNo UE.
- beforCreateOrder - implemented this UE to stamp the
fulfillment type one the order line based on the some other
attribute(e.g. LineType) present in the create order xml comming from
ATG / Magento / Commerce Tool (CT)
- getOrderNo UE - implemented this UE to generate the
order order no based on custom logic when order no. is not present in
the create Order xml.
Subsequent Questions:
- You could have generate the order no. in the beforeCreateOrder
UE itself. Why you have used getOrderNo UE?
- Can you tell me a situation where we should use
beforeCreateOrder UE to generate the order no. instead of getOrderNo
UE?
- What are the benifits/advantages of UE to put custom logic as
part of UE implementation?
Note:
To know the answers of the Subsequent questions, you may join our
training courses.
52).
What are the precaution you should take when
you are implementing user exit
UE is invoked as part of parent transaction. Example - getOrderNo UE is
invoked as part of create order transaction and if anything goes wrong,
transaction will be roleback and order will not be created. So be
careful when implemting UE.
Please consider following points when implementing UE.
- If you are invoking any external service, be careful about the
response time of that service. You should set a timeout for the
external service and you should handle the situation if service does
not respond with the SLA timelimit
- Do not call other API from UE which can modify data. Example -
We should call changeOrder transaction from Recalculate Header Tax UE
53).
How do you calculate tax for an order in IBM
Sterling Commerce?
54).
What are the difference between get Order
Details and getOrderList APi?
55).
How payment processing happens for return
order?
56).
Customer wants to charge their customer
first on the Gift Card, then Credit Card. How would you implement
57).
What are the configuration required to
enable payment processing for an enterprise?
58).
Order audit informations are heavy. Customer
wants to store order audit information in some external database (not
in OMS database). How would you implement it?
59).
What is DateType? what is the use of it?
60).
What is Milestone? what is the use of it?
61).
By default order numbers are starts with'Y'
(e.g. Y00000000129)? One customer (ABC Corp.) wants to generate order
number starting with '1' and having digit only (e.g. 170002789 ). How
would you implement it?
62).
What smart sourcing?
Smart souricing was introduced in 9.3 version of Sterling commerce.
Context: Earlier stores used to be used in selling the items only (POS
transaction only). From last 10 years stores are participating in
fulfillment process. Customer are shipping items from stores. Now
stores are mini ware-house. Number of stores in the fulfillment network
of a company are more (1000+). So during availability enquiry or
scheduling it was taking long time to findout from where to source. In
case of normal sourcing, the distance for all 1,000 nodes has to be
calculated to the address before they are filtered out to be considered
for sourcing.
. Smart sourcing helps in reducing the nodes to
be processed for sourcing, but still provides the best possible option.
So instead of looking into all the 1000 nodes, look/check only the
SMART NODES to inventory options.In normal the cases, inventory is
there only in 1 or 2 store but it was ending up checking all the 1000
stores where there is no inventory at all and it was unnecessary
wastage of time.
To overcome this Smart Sourcing was
introduced.
Smart sourcing is used to dynamically determine
the nodes to consider for sourcing items.
Now
question is where we get the list of Smart Nodes or How do we determine
smart node list instead of all 1000 stores.? To have the Smart Node
list, we need to use RTAM. It needs to be run on the sytem and
node-level RTAM for all nodes that are to be considered for smart
sourcing must. Smart Sourcing uses the requested delivery method to
look up node-level RTAM data. If Smart Sourcing cannot find the
requested delivery method, the shipping delivery method is used. It is
assumed that RTAM is monitoring at least shipping.
What configuration are required to enable SMART sourcing?
- In the sorurcing rule configuration, you need to check the
check Box "Smart Sorucing Allowed". It is checked by default.
- At Global level one more check box.
- Need to Run RTAM and node level monitoring allowed/on.
A line is required for smart sourcing when it meets all of the following
criteria:
- Smart sourcing is enabled at global level.
- current sourcing rule allows for smart sourcing.
- Sourcing added more than the configurable number of nodes
63).
One grocery retailer they they want to do
substitution at the time of picking and packing the shipment.
Example: Let say customer ordered a 2KG pack sugar. But in the store
currently there is no 2KG pack. But there are many 1KG pack. In such
situation customer wants to replace one 2KG pack sugar with two 1kg
pack sugar with same price (not charging extra to customer). What would
be your solution to implement this requirement
64).
What regiomn schema?
65).
One US Retailer ship order from both store
and DC. But they want to prioratize Store over the DC. Their
requirement is If any store within the 300 miles of radious of ShipTo
address can ship the entire order, select that store as fulfillment
node. Otherwise look into the entire network (including DC) and fulfill
the order from nearest node
66).
One retailer wants to fufill their prime
customer orders from primary DC (DC1). And if inventory is not their in
the DC1, they like to procure from nearby store and fulfill it.
67).
One retailer wants to fufill their prime
customer orders from primary DC (DC1). And if inventory is not their in
the DC1, they like to procure from nearby store and fulfill it.
68).
Have used unschedule transation? In which
situation, this transaction is used?
69).
Have you used release consolidation? How it
works
70).
What are the differences between Order
Invoice and Shipment Invoice
71).
One customer selling head-set free with
mobile. retailer they they want to ship it to customer together (in one
shipment). How would you implement this requirement?
72).
What is sourcing rule?
73).
What are the difference Promotions and
Awards in Order Management System of IBM Sterling Commerce?
74).
What procurement rule?
75).
One retailer want to sell personalized item
or promotional item(e.g. Customer name printed to T-shirt, Logo printed
on the item ). How would you implement this reqdF
76).
What are the differences between
findInventory and getStoreAvailability API. Rather in which situation
you should use getStoreAvailability api and in which situation you
should use findInventoyrAPI
77).
What is unassigned inventory?
78).
How do you implement store prioratization
for procurement. Suppose there is two store 660 and 689. DC does not
have inventory, it wants to procure it from store. Inventory and
capacity is there in both 660 and 689 stores. But you want to give
priority to store 689 over 660 for procurement. How would you implement
this requirement
Easiest way is put 689 in P1 distribution group amd 660 in P2
distribution group.
But here main purpose of asking this question is when they both (689 and
660) are in the same group.
There is no way to provide node priority, in procurement distribution
group. Product does not support it.
Distance between nodes is not considered in the procument rule for store
prioratization.
Case 1: Landed Cost Enabled
When landed cost is enabled, procurement sourcing is only optimized
based on cost. The node with the lowest cost of procurement will take
the highest priority and therefore be selected. Distance will not be
taken into consideration when procuring between nodes. OMS will find the
node that provides the cheapest option for procurement and optimize
based on that. Sourcing engine does not pickup picking up the stores
randomly. If two ore more nodes endup with same cost, it does tie-break
picking a random one among the same cost stores. Otherwise it will be
picking based on cost optimization (not distance). The store that costs
the least may not always be the nearest store. Sterling Order Management
Software enables you to specify landed cost parameters to be considered
for evaluation during order promising, if the "Cost, Number of
Shipments" optimization type has been selected in your scheduling rule.
Promising selects the sourcing option with the least landed cost. Landed
cost comprises item cost, handling cost, and transportation cost, node
priority cost, shipment delay cose which can be configured separately.
When landed cost optimization is enabled, it takes precedence over
optimization by the number of shipments.
You acheive it through customization.
You can implement OMPGetExternalCostForOptionsUE and assign the cost in
such a way that 689 got the less cost over 660.
Case 2: When landed cost optimization is disabled
When landed cost optimizatio is disabled, optimization by the number of
shipments is used.
You may go-through the following documents for more details:-
https://www.ibm.com/docs/en/order-management-sw/10.0?topic=controls-configuring-landed-cost-optimization
https://www.ibm.com/docs/en/order-management-sw/10.0?topic=sourcing-scheduling-rules
79).
One US retailer wants to select node based
on inventory depth. Node which has maximum availability would like to
release the order to that node. How would you implement this
requirement.
80).
What are the new feature added in Version
10?
- Sourcing Audit: Sourcing and Scheduling rules
determines the best ship node to source the items to an order. With
the help of sourcing audit, we can find the effectiveness of the
current sourcing and scheduling configuration setup. Sourcing audit
provides us the insight of various aspects of sourcing and scheduling
process. It helps us to identify the exact reasons why the ship node
was selected as a sourcing location to fulfill the order.
- GDPR(General Data Protection Regulation compliance):
Now it became compliant of GDPR() laws for personal data protection
- In-built Integration with IV( Inventory Visibility):
- In-built Integration with IV( Inventory Visibility):
- In-built BOPIS capability:
- In-built OMS Chat Bot (Watson Assistant For OMS):
- Data Driven Modeling (DDM) framework:
- Agent and Integration Server Dashboard in SMA:
- Property management UI in SMA:
- Support for data driven modeling is introduced in
Visual Modeler and Configurator.:
81).
What are the new feature added in Version
9.5?
- Asynchronous inventory update for large orders (line > 20)
- Web Store is supported by Mobile. Webstore on mobile.
Consistent look and feel. Support extented to the user interface
through anglarJS
- Installation Using Docker. One click deployment
- Asynchronous Capacity calculation
- In-build intehgrtation with IV
82).
What are the new feature added in Version
9.4?
- Change in Licensing =. Available as Professional Edition and
Enterprise License
- Support of REST service. Earlier it used to support only SOAP
service
- Web based sterling store (WebStore) started from 9.4
- Support for JMS topic started from 9.4
- Multiple price type for a item
- Pre configured B2C template and pre-configured installation
- Call center for commerce
- Online documentation through knowledge center
83).
What are the new feature added in Version
9.3?
- Smart Sourcing and Smart distribution Group
- Direct Integration between WCS and Sterling
- Payment enhanancement. Partial cash back.
84).
What are the new feature added in Version
9.21?
- Support for debit card
- Cash back
- Payment processing on return order
- Enhancement on pricing and promotion. Multiple price list
- Consistent return policy
- Manager override
- Data Sync architecture
- Sharding
85).
What are the new feature added in Version
9.0?
86).
What are the new feature added in Version
8.5?
87).
What are the new feature added in Version
8.0?
- First renamed the product as Sterling Multichannel Fulfillment
Solution
- Folder Structure. Earlier it used to be runtime.
- Implementation of UE enterprise specific
- Config data versioning
- Queue group monitoring
- Support for pagination in few list apis.
- Configure service with enterprise indentifier
- Introduction of Model item.- Model item is an item which
represents a set of item. Because of this search result will be
minimum.
- Encryption of credit card name expirey date. You can log how
many time a user is accessing the credit card information
- Automatically copy the item instruction to order line
instruction
- Automatically copy the item instruction to order line
instruction
- You can do the return invoice even if return item has been
received by the warehouse
- You can do the return invoice even if return item has been
received by the warehouse
- Adding stop delivery instruction even if item has been
shipped.
- Started supported blind return from 8.0
- Added pagination in callcenter UI and Look and feel was much
better comare to earlier verison 7.11
88).
What is OMOC? What are the differences from
normal on premise installation.
89).
What is IBM Sterling Fulfillment Optimizer
90).
What is IV?
91).
What is developer toolkit(DTK)?
92).
What are the differences between
getSupplyCorrectionUE and getAvailabilityCorrectionForItemListUE?
Rather in which context you will prefer to use
getAvailabilityCorrectionForItemListUE over getSupplyCorrectionUE
93).
What are the differences between userExit
and event?
Both userExit and Events are customization/plugin point. Customization
point means its the place where we can plugged in custom logic(code) to
execute as part of transaction.
Both are completely different. And has different purpose of altogether.
UserExit:
Its a hook where we can pluging our custom code to ovverride the product
default behavior. This user exits are predefined for transaction and
apis. Based on our business requriements, we need to identify the right
userExit and implement it to override the default behavior.
Example: You have noticd that if you create a order from webconsole or
through api tester(not passing order number in input xml). product
generate order number starting with 'Y' (e.g. Y000100000234). But
cutomer said they want to generate order number starting wtih 'K' as
their organization name starts with K.Now question is how would you
fufill this requirement? Product is generating order number starting
with 'Y' as they have default logic(product code) implementation to
generate order number starting with 'Y' But our customer doesn't want
that behavior. So we can override that behavior(order number generation
starting with'Y') thorugh UE inplementation. We can implement
GetOrderNoUE to override the product default behavior(implementation
logic). UE can be used to external service also within the transactional
context.
Once you give the above answer, following subsequent question
interviewer may ask you above answer.
- Can I add the logic to generate order number starting with 'K'
in beforeCreateOrderUE instead of GetOrderNoUE
- I want generate order number starting with 'K' for sales order
only not for return order. What I need to do for that
- I want generate order number starting with 'K' only for UK
business unit only. Not for US business unit. How to do that?
Event:
Event are raised on certain stage of the transaction. Mainly it is
raised to expose/send data(xml message) to other systems(external
world). Example - ON_SUCCESS event is raised when order gets created
successfylly. we use this event to send update (message) to other
systems (e.g. ATG, SAP). Prouct just raise the event and expose the data
(event XML). Its up to the implementor how to use this message.
Sometimes we put the message to the JMS queue or invoke some other
service passing that message. What data will be exposed as part of an
event is governed by the event template.
Event call Action. Action call service. We provide custom logic as part
of the service implementation. One event can invoke a chain of
actions(sequential exectuion). One action can invoke 'n' numeber of
service (parallel execution).
To understand how product code invoke our custom java code on
runtime ( custom methods), please go-through the Java Reflection API.
It will give you confidence
Event does not return any value. Where as
user exit always return a value (document).
94).
Can I attach a Listiner in order pipeline to
Listen to WorkOrder pipeline ?
What is Base Document, DocumentType and Process Type?
95).
What is Base Document, DocumentType and
Process Type?
96).
Business rules are define at Prcocess Type
or Document Type level?
97).
Can I change the DocumentType of sales
order(0001)?
98).
What is tired order, chained order, derived
order?
99).
What do you mean by Chained Order Creation
By Proces"?
100).
What are the differences between
ExceptionType, ExceptionTypeRole and OrganizationExceptionType? How
they are used?
Support
Whatsapp No. 7439236696 for any question / suggestion |