IBM sterling oms interview questions and answers

In this post we collected Sterling OMS interview questions from different sources and consolidated for people who preparing for Sterling OMS interview. You might have good experience in Sterling OMS but when it comes to interview you should know exact terminology well. Hope these question helps.

Top interview questions for ibm sterling oms

  1. What is difference between schedule and release transactions ?
  2. Have you used Defaulting Component in OMS ? How and when it will be useful ?
  3. How inventory get Sync in your project ?
  4. What is the use of EOF during inventory Sync ?
  5. How Item Master loaded into OMS ?
  6. How communication happens with OMS, WMS and Websphere ?
  7. In your project does OMS maintains the inventory ?
  8. What are all the different Order Monitor Process used in your project ?
  9. Different Order types you had worked with ?
  10. Can you please talk about Sales Order pipeline and various status involved ?
  11. Can you please talk about Return Order pipeline and various status involved ?
  12. How payment process handled in return order process ?
  13. Sterling Agent and Integration server architecture ?
  14. How to write custom agent server? What are all the different way to implement ?
  15. How to start Integration Server?
  16. How Agent Server works?
    • When same agent server started 2 times what will happen ?
    • What is trigger message?
    • Agent Server with multi-thread? Which method takes care of running in thread getJobs() or executeJobs()
  17. triggerAgent.sh vs agentServer.sh
  18. How to add new status and modify the pipeline with new status?
  19. How task_q based transactions works?
  20. Reservation API ?
  21. What is different between custom table and hang-off table ?
  22. What process followed to create custom table in OMS ?
  23. Can you talk about payment process implemented in your project ?
  24. What is difference between GetOrderDetails vs GetOrderList API ?
  25. How RTAM implemented in your project (Real Time Inventory Monitor) ?
  26. How tracking information get updates from WMS to OMS ?
  27. Difference between advance exchange order vs exchange order ?
  28. How to create custom order number instead of YNumber in OMS ?
  29. How to apply custom order number creation only for Sales order ?
  30. Order Monitor how integrated with external monitor system ?
  31. Payment Processing Why not used in your application ?
  32. Association /Competitive Association /Cross Sell/Up Sell /Alternative

IBM Sterling Commerce Interview Question And Answer

What is DB customization or DB Extension.?

To store some cutom values (spectic to customer need), we can add column in the product table or add new table altogether. There is a speciic way to do database extenstion. We need to follow the product guide line and to the DB extension.

  • Adding column to the product table: To store some custom values we add column to product table.
  • Adding custom table : We can add a independent table in database throung extension.
  • Adding Hang-off table: We can add a database table as a child table of any product table. In this case child table is called hang-off table. Here also all product table does not support hang-off table. Check product documentation before adding it

Note: We can not add column any product table. All the product table do not support extension. We need to check product documentation whether table is extensionable or not (refer Entity Relationship Diagram (ERD) located in the install_dir/xapidocs/ERD directory.).
Now question is when we need to add column in the existing product table? when we should create a new independent table? When we should create a hang-off table.

  • when you need to store few custom values and mapping of your custom values with product entity is 1:1, you should add column to the related existing product product table
    Examples:
  • You need to store a set of values which are not directly related to any of the product entity (e.g. Order, Invoice, Shipment), you should create a independent table.
    Examples:
  • You need to store a set of values which are directly related to your product entity (e.g. Order, Invoice, Shipment), and it hold 1:n relationship with product entity, you should create a Hang-off table.
    Examples:

Advantages Of Hang-off Table: If we add a table as a hang-off table to any product table, Data can be retrieved or inserted thrugh product standard api. Even data can be purged using standard purge agent also.
Steps To Do Database Extension (DB customization):
To do the database customization, we need to make entries in the extension.xml file. In the xml entires there will be element and couple of attributes. Read the production document for details and should know the meaning and use of each atrribute.
High Label Steps are:

  1. Make entry in extension.xml
  2. build entity jar
  3. Do a ear deployment.

Once entity build is done it generates the SQL statements to add column or create table. You need to take those SQL statements, connect to databse and execute on the database.

How do you test there extension is successful or not?

  1. If you are adding column, you can invoke product api and check it. Example: If you added column in item table, you should invoke get Item List api and pass your column xml name in the output template under Extn tag.
  2. If you are adding custom table, you need to create a service in Application Manager and invoke that service from api tester
  3. If you are adding a Hang-Off table, invoke product api with proper tempalte. Example, if you added hang-off table on order header table, use get Order List. or create Order api. There is way to pass the element and column names related to hang-off table in the api template. Its under Extn tab (For details follow product documentation)

What are the mandatory columns in custom table or hang-off table?

  • Primary Key column: Its data type has to be Key(defined in data type.xml) OR Any numeric data type
  • create time stamp: Its data type has to be TimeStamp(defined in data type.xml)
  • modify time stamp: Its data type has to be TimeStamp(defined in Data Type.xml)
  • create user id: Its data type has to be UserId(defined in data type.xml)
  • modify user id: Its data type has to be UserId(defined in data type.xml)

Nice to have / should have columns(Optional columns): A custom or hang-off table can have the following column(Optional):

  • create user id: Its data type has to be ProgramID(defined in data type.xml)
  • modify program id: Its data type has to be ProgramID(defined in data type.xml)
  • lock id: Its data type has to be Lock id(defined in data type.xml)
  • modify user id: Its data type has to be UserId(defined in data type.xml)

What is the use of data type.xml?

data type.xml is a xml file where all the data type defination are stored. Its a prodcut file and you can view it after installation. Example: In Extions.xml when we add a custom table we made entry for serverid column some thing like:
<Attribute ColumnName=”serverid” data type=”text” DefaultValue=”0″ Description=”server ID”/>

Here the data type ‘text’ is defined in data type.xml. ‘text’ is not a standard Database (e.g. Oracle) data type. When we do entity jar build, the data type ‘text’ is translated actual database data type(Varchar2).

One customer want to disable cache for common code values? How would you cache common code values

There is a dbclassCache.properties proerty file where all the DB cache related information is there. There is a property for COMMON CODE tables to enable cache. Just override that value according to your need in customer_overrides.properties. set .enabled=false in customer_overrides.properties to disable cache for common codes

How do you implement subscription order? One customer sell Magazine on yearly subscription and would like to fufill their order using Sterling Commerce What would be your design?

There is a document type Master Order document type and process type master order fulfillment process type in OMS. Master Order can be used to fulfill the subscription order.
A master order is a document indicating expected recurring sales of multiple products or same product over a period of time. A master order is typically created for a customer to purchase a series of products for shipping at different time with some interval. For master order we can have seperate financial and fulfillment rule setup similar to sales order (DocType 0001). As Master order has different document type and process type, it is having different set of statuses, transaction and pipelines.

What is draft order? Is confirm Draft Order and create Order same?

Draft order is a Order document with DraftOrderFlag=Y. Draft Order means order is not confirmed. Its in draft staus which can undergo some changes before confirming it. There is a transaction to create draft order (createDraftOrder). It move the order to 1000 status. There is a another trasaction to confirm the draft order (confirmDraftOrder) and move it to created status(1100).
CreateOrder is a seperate transaction to create an order (confirm order). It directly moves to the order to created (status). confirmDartOrder and createOrder are two different transaction and their events are also different. One common thing is they both can move order to created status (1100).

What is Legal Entity?

Legal entity usually represent a company’s presence in specific country.
If an organization operates in US and UK, there should be two legal entity. one for US and anoter for UK.

What is Key differences between DropShip PO and Procurement PO And Market Place?

    • In Procurement PO, item comes companies warehouse and then delivered to customer. It’s treated as customer sale
    • In DropShip PO, item directly delivered to customer address from manufacturer. It’s treated as customer sale
    • In MarketPlace order, item directly delivered to customer address from seller. It’s NOT treated as Company sale. Company just take the commission.

Statuses are different for Procurement PO and DropShip PO.

What is purchase order? How to implement it? I mean, what are the key configuration required to implement PO

Purchase order is a chained order. When Organization does not have inventory, they procure it from supplier (vendor) and fulfil the customer order. There two type of procurement. 1.) Drop-Ship – Vendor directly deliver the item to customer address. 2.) Wrap n Lable – Company bring the item to ware house and then ship it to customer address from warehouse. . Or it could be a situation, Company allowes vendor to uses company’s platform(website) to sell their item (market place). . Both the cases Purchase Order is created to fulfill the customer order.
Implemting PO fulfillment in IBM Sterling Commerce is not very easy. You can follow the below steps to implent PO.

  • Mark the item procurable in SBC or Application Manager
  • Change the Configuration for ShipNode (e.g.DC) so that it can procure item from other node.
  • Mark vendor organization is a separate Legal Entity .
  • Create Distribution Group and add Vendor DC in this distribution group.
  • Add Distribution Group in sourcing rule for your fulfillment type. You can configure it with default fulfillment type also

Once above seting is done. Adjust inventory in vendor DC so that it will have available quantity to fulfill the order.
Now create an order. Schedule it. Order will move to Awaiting Chain Order Create status. It means sales order is ready to cut the PO.
Invoke createChainOrder api to create the PO. There is a out of the box agent also which does the same thing(cut the PO). A sample participant setup is given blelow to implement PO. Purchase Order Implementation

Basic Java interview questions

  1. You have order with 300 lines how to find the unique node name along with sum of order qty using Java? Which Data Structure can be used ?
          <Order>
             <OrderLine Node=”Node1″ Quantity=”10″ />
             <OrderLine Node=”Node1″ Quantity=”20″ />
             <OrderLine Node=”Node2″ Quantity=”10″ />
          </Order
          Need to print Node1=30 and Node2=10
         Answer : HashMap<String,Integer>
2. How to get only the unique node names ?
<Order>
<OrderLine Node=”Node1″ Quantity=”10″ />
<OrderLine Node=”Node1″ Quantity=”20″ />
<OrderLine Node=”Node2″ Quantity=”10″ />
</Order
Need to print Node1 and Node 2
Answer : Set<String>
SQL
Emp ID (PK) Employee Name Manager ID
1 James 2
2 Steve
3 Mark 2
Query to print Employee name and manager name
Answer :
CREATE TABLE EMP(
   EMP_ID INT,
   EMP_NAME VARCHAR (20),
   MANGER_ID INT,
   PRIMARY KEY( EMP_ID )
);
insert into emp values (‘1′,’James’,’2′);
insert into emp values (‘2′,’Steve’,”);
insert into emp values (‘3′,’Mark’,’2′);
select a.emp_name as emp_name,b.emp_name as manager_name from emp a, emp b
where
a.MANGER_ID = b.emp_id
and
a.MANGER_ID is not null;
Result:
James Steve
Mark Steve
General Questions
1. Any experience on SOAP ?
2. Any experience on REST web services ?
3. How about JSP and servlets ?

 

FAQ

Q: What is a Pick Slip Report?
A: Pick slip is a shipping document that the pickers use to locate items in thewarehouse/ inventory to ship for an order.

Q: At what stage an order cannot be cancelled?
A: If the order is Pick Confirmed, it cannot be cancelled.

Q: When the order import program is run it validates and the errors occurred can be seen in?
A: Order Management Responsibility >Orders, Returns : Import Orders> Corrections.

Q: What is the difference between purchase order (PO) and sales order?
A: Purchase Order: The document which is created and sent to supplier when we need to purchase something. (Buying)Sales Order: The document which is created when customer places an order to buy something.

Q: What are primary and secondary price lists?
A: Price list contains information on items and its prices. The pricing engine uses secondary price lists when it cannot determine the price for an item using the price list assigned to an order.

Q: Name some tables in shipping/order/move order/inventory?
A: WSH_DELIVERY_DETAILS,WSH_NEW_DELIVERIES, OE_ORDER_HEADERS_ALL, OE_ORDER_LINES _ALL, MTL_SYTEM_ITEMS_B, MTL_MATERIAL_TRANSACTIONS

Q: How is move order generated?
A: When the order is pick released.

Q: What does Back ordered mean in OM?
A: An unfulfilled customer order due to non-existence of the ordered items in the Inventory.

Q: What are picking rules?
A: A user-defined set of criteria to define the priorities Order Management useswhen picking items out of finished goods inventory to ship to a customer. Picking rules are defined in Oracle Inventory.

Q: What is drop ship in OM?
A: A method of fulfilling sales orders by selling products without handling, stocking,or delivering them. The selling company buys a product from a supplier and has the supplier ship the product directly to customers.

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *