1) It is possible to release an order line independently of other order lines
    and order header.
   Yes you can using the shipping transaction form.(From pick release you can release
 complete order and not independently the lines).
 Immediately after the order is booked, we can come to the shipping
 transaction form, pull up that order, and for a specific line, we can
 “Launch Pick Release”. We can also subsequently create a delivery for this
 order line and then ship the order as well. Hence we can ship an order line
 independently of the other order lines.
 Pick release can also be used to release lines independently, by providing
 conditional scheduled ship dates ,request dates,in which case, it will release
 those specific lines.
 
2) Once The order is booked ,are the delivery details/lines created ??
  Yes. immediately after the order is booked, the delivery lines are created (not deliveries)
  (which can be seen from the wsh_delivery_details which reference the sales
  order). However once the deliveries are created (either automatically after
  the pick release or manually based on the system options), these deliveries
  lines are asssigned to the delivery created. Only after
  the deliveries are created we can ship (or ship confirm) them.
3) What is Defer Interface?
   There is a flag in global parameters setting which is Defer Interface.
   Typically once the order is ship confirmed, then the
 trip stop report is printed and the order is ready for interfacing to AR.
 However if the defer interface flag is set, then even after the ship confirmation,
    the trip stop process does not pick this up and is subsequently not invoiced.
 Defer Interface flag can also be set at the ship confirm window level.
 
4)How do we apply credit holds to Orders :
 One way of applying a credit hold for an order (based on the customer credit)
 is to use the credit management. Another way is to specify within the OM,
 the credit limit at the customer or site level as follows,
  Customer => Profile : Amounts
 
   We can specify both order credit limit (which is specific to an order)or credit
   limit(which is entire credit limit).
 
5).What are Deliveries and Delivery Lines, and which one is created first?
  Lets take an example. Let us say there is a sales order which consists of
   two lines. Once the order is booked, two delivery lines are created automatically.
   If there are two order lines, there will be two delivery lines,so for each
   order line, there is a delivery line.  Then as a next step, we assign these
   delivery lines to a delivery. And if the autocreate is checked, then automatically
   a delivery is created after pick relase  and the two delivery lines are assigned
   to the newly created delivery.
    
6) What are Container Items :
    Container Items are also inventory items,which are flagged as “Container”
 in the Physical Attributes tab. Usually they are not Customer orderable,
 customer ordered ,invoicable etc. ;
    Items => Physical  Attributes => Container Area.
 
    We can also set the item as a Vehicle as the case may be.
 
7) What is packing the Items :    
   Usually we  Pack the Items, that is when we need to define the Container Item
   Relationship,which is defined here,
      Setup => Shipping => Container Load Details.
 
 Here you specify the relationship between the regular items (like say Printer)
 and the container items (like Box, Carton)and the maximum quantity that can
 be filled in that container etc.
 
 Once that is done, we should be able to do the packing.
  
   8) What is partial cancelling of the order line.
   If you change the order quantity say from an original value of 50 to ,say, 45,
   then the orderline is said to be partially cancelled.
   write more about this
  
   9) What is splitting the order lines and how does pick release help in the case
   of split lines ?
   Let us say we have an order which requires multiple shipments over time, then 
   you would split the order line, rather than creating multiple order lines.
   So in each split line, we specify the quantity and the request data,warehouse
   from where it should be shipped. Based on this, the scheduled ship dates are
   also populated accordingly for each split line. 
   Once this is done, during the pick release process, we can specify up to which
   schedule date /request date we want the lines to be released and then accordingly
   the lines will be released.
  
10. What are line sets,ship sets, arrival set, fulfillment sets?
      Line set is a generic term,which you specify at the order header level,
    which can be a ship set, arrival set or fulfillment set.
    If you specify a ship set,say 1, for a group of lines, then during pick
    release we can release the lines based on that ship set number.
    Also a line can belong to a ship set or arrival set,but not both.
       
 
13). What are backflush transactions ?
 Backflush transactions are those WIP (workin process) transactions which pull
 the inventory for the manufacturing operation. It is an issue (outgoing from
 inventory) operation and not a receipt operation. 
  
14) What are the examples of ShipOnly and InvoiceOnly orders.
    Ship only orders are those where we just ship the item to the customer and do
   not invoice them. Example of shiponly orders are demo items, and sample
   items,which the customer uses and probably returns them after.
 Invoice Only Orders are those where we just invoice the customer,but we do not
   ship any item.Example of Invoiceonly order could be a subscription item
   where we just invoice the customer for that month,but we donot ship
   any item.
    
15) What are trips and stops and how they are related to deliveries.
   A trip consists of atleast two stops, one the pick-up point and one a drop-off
   point. When we ship confirm a delivery,a program called “Interface Trip Stop”
   is automatically run which creates a trip stop and the delivery is assigned
   to that trip.
 
16)What are the different kinds of Orders
       Regular sales order, RMA, Drop ship, Internal Sales order.    
  
17) What are the possible reasons the inventory quantity can be driven negative
   for reservable items.
   Usually when we pick release, a quantity is reserved and if there is not enough
   quantity then the reservation does not happen, and the pick release will fail.
   However after a successful reservation , when we come to the delivery lines,
   we can change the shipped quantity on the delivery lines as well. If that shipped
   qauntity is more than the requested quantity and if that quantity is more than
   the available quantity, (and if negative quantities are  allowed) then the
   inventory quantity can be made negative. if negative quantities are  allowed for
   that inventory organization, then those records might be stuck in the inventory
   interface.
  
18) Can we change an order after we book it ???
    Yes, as long you dont violate any processing constraints.
 
19) What is the difference between Pick Release and Pick confirmation.
 Pick release is the process that you do in Order Management which will create a
 move order and it goes thru approval, allocation and transaction.
 Pick Confirmation is an inventory operation which is basically transacting a
 move order which results in a subinventory transfer of the material from the source
 subinventory to staging subinventory.
    Hence Pick Release will internally call pick confirmation process.
  
20) What is retroactive billing ??
  
21) what is shipping document set??
   A shipping document set is a set of shipping documents,which you specify at the time
   of ship confirm,so that Oracle shipping wil print all those documents. And they are
      Bill of Lading => A receipt given by the carrier to the customer,acknowledging
         the goods being shipped and specifying terms of delivery.
      Waybill =>it is identical to Bill of Lading, but it is not a document of title.
      Commercial Invoice=> prints all confirmed shipped item in a delivery along with value.
      Mailing Label => address label showing where we are shipping.
      Pack Slip  => slip which shows the contents of the package.
      Vehicle Load Sheet Summary =>specifies the loading sequence of items in a delivery.
   
 Please note that the document set need not consist of all of the documents.
 
22) Is it possible to book an order with out any line items ? What would be the
 business scenario for this kind of order ??
  Yes.
 
23) What is packing slip ?
   Let us say we have an order consisting of 10 items. A pack slip mentions all the
   items. Basically it is just a confirmation from our side ,what we are shipping.
   A bill of lading is a document from the carrier what we are shipping. 
 
24) What is pick slip?
   A pick slip is a document printed by the move order process in Inventory,which
   tells what has been picked.
 
25) Does the order header close immediately after all the order lines are closed??
        
26)What is the backordered status in the delivery lines mean ?
   The term “backorder” or “backordered” is a status,which means that during
 pick release, that item is not having enough stock and hence the status of
 the order line or shipping line changes to backorder. Please remember that
 backordered is just a status, it does not initiate any kind of drop ship
 process,to purchase that item from a supplier etc. To resolve this issue ,you
 will have to manually do a receipt for that item and have enough quantity onhand.
 
27) What are the different modules which Order Management will interact with ?
 
 Order Management interaacts with different modules based on different kinds
 of items, pricing, type of shipping etc
     Inventory (for pick release, shipconfirm)
  Pricing,Advanced Pricing  (for formula, attributes, qualifiers, modifiers)
  Shipping Execution (shipping transactions ex delivery,trips,stops)
  Manufacturing (for BOM Items, assemblies etc before/after booking process)
  Purchasing (for drop ship, internal sales order, RMA receipts)
   
28) If aline is stuck at Shipped status, and is not closed, then what is the
 difference between running Workflow Background Process in Inventory versus
 Order management,coz running from Inventory is pushing to AR ?
  
 
29) Does Order Header close immediately once all the order lines statuses are closed?
 
 No. The standard functionality of the Order header closed an order header at
 the month end even if all the lines are closed in the middle of the month. So
 even if we run the  Workflow Background Process for Order Header, the status
 will not change to Closed for the Order Header. However this does not stop
 interfacing the lines to AR. 
 
30) Can you explain the difference between the Subinventory Transfer,Move Order,
 Inter-org Transfer And Internal Sales Order?
 
 
31) Explain the process of backorder during the ship confirm process.
   
   We know that during the pick release process ,if there is not enough quantity
   the delivery line status will automatically change to backordered. Now even
   during the ship confirm, we can do a back order. During pick release the quantity
   has moved from source to staging subinventory.
   Sometimes we may not ship the entire quantity that is pick released. The business
   reason for this could be that we need that material for some urgent or important
   customers and hence we might partially ship the quantity. And this is done in
   the following steps as follows.
 
 — In the delivery line, the requested qty(say 100) and shipped qty is null. Let
 us say we want to ship only 60 and not the remaining 40. So in the shipped qty
 you enter 60, so the backordered quatity will be 40
 
 — In the ship confirm window, in the unspecified quantities list box change it
 to “Backorder”. Then the 60 will be shipped and the remaning 40 will need to be
 pick released.
 
 — Now come to the sales order and look at the lines, the original line will be
 split into two lines one with 60 ,having status of shipped and one with 40 having
 a status of “Awaiting shipping”.
 
 — Do an explict subinventory transfer back from staging to source subinventory as
 this will not happen automatically.
  
 Hence understand the status “backordered” ,the quantity needs to be pick released
 again.
 
32).  what is the difference between bookings and revenue ?
 typically revenue is referred to as current sales while booking is referred to
 as the projected future revenue.
 
33)   what is the difference between billing and invoicing ?
 Billing is a generic term used for AR invoices, credit memos,debit memos etc,
 while invoicing information specifically refers to AR invoices.
 
34)   what is item conversion and customer conversion ?
 Lets say we have Oracle ERP A and ERP B and we are trying to convert items
 from A to B. Then, when you bring an item X from A to B system, then that
 id/code will be preserved.
 The other option is to create corresponding new items in system B for each
 item in system A and then try to reference the items from system A.
 
35)   What is customer conversion and how does it affect order management ?
 Basically when we are integrating two systems, then we need to bring in the
 customers of one system to another,so we can transact in the new system
 i.e we can create orders.
 Hence if we are bringing open orders from system A to B, then we need to
 do the item/customer conversion, because the open orders in the new system
 will be referring to the old item numbers or customer numbers. For new
 orders, that means the orders themselves are created in the new system.
 
36)  what is business alignment ?
 Business alignment is basically business aligning with IT. For ex, IT might
 implement a new version of oracle ERP with new features ,then the business
 should agree to the change and be able to adapt to the changes.
 
37).  What is a Managed Service Point :
 Means some company XYZ takes care of a particular functionality (like billing
 invoice,check printing) in some other company ,say like Cisco. And for this
 service, cisco pays them a flat usually monthly payment. Usually the managed
 services provider works remotely from the company i.e managed services offerer.
 
38). What are the checklist of items that happen while booking the order ?
 Scheduling,
 Credit check,
 Checking Hold if they exists,
 Repricing,
 Process Price adjustments (apply modifiers),
 Payments (Authorization of credit cards)
 Sales credit verified,
 Constraints are validated,
 System parameters are validated,
 tax calculation,
 Configuration Validation,
 Workflow progress based on the type of order,
 Shipping data are populated,
 IB(Install Base), CZ(Configurator) are populated.
 
39). How do you fulfill the software Orders versus tangible item orders ?
 
For tangible items orders, fulfilment is shipping the order; and the IB instances are
created once the item is shipped. For software orders;  the two ways of fulfillment are
Ship the cd box or fulfill it online (by downloading etc);
        If it is fulfilled online, the IB instance is immediately created with out the serial number;
        And once the product is shipped, that is when the IB instance can be updated
 with the right serial#.(you cant put a serial# on the box).
 
40). How do you ship the orders which you frequently ship the items together ?
 
For ex, let us say you very frequently ship the order consisiting of one cd, one hardware
token and one user manual. Then it makes sense to group them into a BOM(bill of material)
Kit. That is a BOM of the type of Kit. A kit is a group of components,but a kit itself is not
shippable although the component items are shippable. Also ensure that the on hand exists
for all the component items so the pick release/ship confirm will not fail.
 
41). what is defer interface (at ship confirm) in order management ?
 Basically at the time of ship confirmation, if the Defer interface is checked/enabled
 then the Interface Trip Stop program is not run. If the Defer interface is not
 checked/enabled then the Interface Trip Stop program is run. The interface trip stop
 program basically updates the inventory,reduces the on hand quantity and also updates
 the order lines status to closed from shipped.
 
42). At what point of time the onhand quantity gets decremented ?
So once the ship confirm completes and if the defer interface is not set, that is when the
 inventory interface happens and the onhand quantity is decremented to reflect the
 correct status in inventory.
 
43). Once the order is shipped, how can we see the delivery lines ?
Once the order is shipped, we can pull up that order in the shipping transactions find form,
 by selecting null from the line status field.
 We can also run the report like “Shipped Delivery Lines report” and provide the order number to
 see the delivery# details etc.
 
        Shipping => Interfaces => Run => Shipped Delivery Lines report    
 
44)  Profile option for seeing the output file ?
The profile option to see the output file and the log file is starting with “Viewer%”
 
45). you can have an item which is not inventory item, but it could be a customer orderable item?
Yes. for ex, service item, which are not inventory items (because they are not stockable/shippable) however a customer can order the service item.
 
46). What are the different scenarios of ordering service from OM ?
Consider these situations :
You can order service from OM for an item
    which the customer has on the same order
            This is a simple case.
    the customer already owns the item,
            Then you should know that order number,line#,shipment#,date of service start. Done on the service tab.
    or the item should be there in Oracle installed base.
            Then you should know the item instance# or item serial number,called reference number in the form. And if the item does
             not exist in the Installedbase,then you should create it manually.
 
47). where do you define a fulfillment flow. ??
 Each order type will have a workflow for header/line attached to it and the order lines
 will flow those steps.
 
48). Does defer interface defer OM/AR interface ?
 No the defer Interface is basically defers the shipping module writing the status
 back to the OM/inventory interface. However only after this writeback(interface trip stop
 program completion), the line status at the order level changes from shipped to closed and
 at the shipping line status changes from closed to Interfaced.
  And only after the Orderline status is closed, it can be interfaced to AR(if it is an invoicable
 item).
 
49). How do you fulfill a service item order  ???
 Lets us say there is a consulting service order. Usually these kinds of orders
 are fulfilled after the serviced is delivered. the regular orders as fulfilled
 once the item is shipped.while these orders are fulfilled once the service is
 performed and the timesheet is filled,approved the appropriate authority and sent over.
 
50).  Why is that in OM, once a sales order is created for a customer, a credit hold is
 automatically applied?
 It may or may not be. It is decided by the workflow process.
 
51).   I understand that BOM’s should be defined if the warranty has to be automatically
  created upon purchase of a product. What if the customer does not implement BOM?
 When you purchase OM, the basic functionality of BOM is provided by default.
 
52). Does the workflow background process need to be run with deferred processes yes?
 Yes to clear the waiting processes,if any.
 
53).  Can the delivery lines in Shipping module be sourced from Other modules than OM?
 The sources for the delivery lines are Order Management,Project Contracts and Shipping.
 
54). What is credit managment module and what is its functionality ?
 Credit Management is a separate module which basically checks whether the customer
 credit is in good holding and if not,it will put the customer order on hold.
 Credit management can be hooked up to the OM/AR/Collections as different touch points. 
 (just like ipayments module).
 
 
55). Is a move order created for a non-reservable items ?
 No, when you created a non-reservable item and pick release a sales order for that item,
 then there will not be a move order and hence there will not be a reservation or
 the item movement from the current subinventory to the staging inventory.So the item
 stays in the place where it is currently. This is said to be looser inventory control.
 
55 a).What is the difference between pick releasing a Reservable Item versus
      Non-reservable Item?
   Usually the inventory items are by default reservable and when an order with
   a reservable item is pick released , then during the allocation and transaction
   process, the material reservation is made and move order is transacted.
  
   However when a order with a non-reservable item is pick released, then during
   during the pick release process,then there is no allocation required.
  
56) What are the conditions under which the inventory quantity can be driven
   negative(for non-reservable items)?
   Usually when the items are non-reservable, then the pick release process will
   not check for the item quantity and there is no reservation involved. Hence
   when you shipconfirm ,there is a chance that sufficient quantity might not be
   there to ship.
   So if there is insufficient quantity in an inventory organization ,&
     if negative quantities are allowed in that organization , &
   if the item and subinventory both are reservable (if an item is reservable
   but a subinventory is not, the item quantity in that subinventory is not
   reservable),
 Then if the above conditions are satisifed, the inventory quantity can be
 driven negative.
 
 
57). What are the consequences of allowing /disallowing negative balances in inventory?
 If you do not allow negative balances in your inventory it will block any shipment
 (delivery) where a line is shipping more than the quantity available in inventory.
 The error is generally human. You accidentally enter a larger Ship Quantity than you picked.
 The whole delivery will be stuck in the Inventory Open Interface.
 To solve the problem either go through the entire delivery and find out which line
 was overshipped. Then move the required quantity to the staging area and resubmit
 all the lines in the Inventory Open Interface. Now run the Interface Trip Stop – SRS
 in Order Management. This should do the trick.
 
 Otherwise, allow negative balances in your inventory. And resubmit etc. When the
 delivery has been processed there will be a negative balance in the staging area.
 
Research onthis. if the shipped quantity is more than the requested quantity for the reservable vs non reservable items
do a copmlete flow on this. ??
 
 
58). How to create a Manual Delivery in OM ?
 Navigate to Shipping Transaction Form
 Ensure that radio button is on deliveries in the top right corner (ie in “Search For” region)
 Click On find button (You can enter a few criteria to make the search faster)
 Once the results screen opens, click on the general create button green “+” icon at
  the top left menu.
 It will create a new record. Enter all required details and save.
 Now you can come to the shipping trx form ,find delivery lines for a sales order and
  assign the manually created delivery above to these delivery lines.
 
 This can be understood in the way that when we create a customer, the first thing
 that comes up is the customer search screen,so that we can find existing customers,so
 that there are no duplicate customer entries.
 
59). what is the difference betweeen manual delivery vs automatic delivery ?
 
 Actually the difference is when you are creating Automatically, the system will
 create one delivery for the lines involved but if you want to do it your way i.e.
 either club deliveries or may be have a delivery for each line seperately then it’s of use.
 
 To my knowledge if you don’t have a seperate Trip Planning or Delivery Planning department
 it should be left to create aumoatically as you won’t be getting benefited much by that.
 
 
59).  How do you fulfil an RMA order?
  Standard tangible orders(with tangible items) are fulfilled by physically shipping those
items. However return orders(like return only, rma only, rma with credit etc) are fulfilled
after we receive that item into the inventory. So the steps would be
 – First book the rma order and note that order #.
 – then go to purchasing/receipts and in the customer tab, receive that item
  into inventory. check to see if the onhand has increased,ensure that the
  receving transaction processor is running.
 
 
60). What are the steps involved in shipping of an ATO Item  ?
 
  For ATO model you cannot ship the item immediately after booking. Please
  find the following steps.
 
 Click the actions button and select progress order. This will run a concurrent
   program called autocreate final assembly. If you see the output of the
   request you will get the job no.
 
 Query the job in discrete job window and check whether it is released.
   If not release it.
 
 Transact the job in move transaction form.
 Complete the job
 
 Now query your sale order and check the line status. It will be Awaiting
   Shipping.
 
 Now you can ship the order.
61). What is lead time ?
 The generic lead time definition suggests it is the amount of time between the
 placing of an order and the receipt of the goods ordered.
 Usually we can see it as the time difference. So we can have different kinds of
 lead times like Transit lead time & Delivery Lead Time etc.
 
62).  What is the difference between Operating Unit Id and Inventory Org id?
 
 As mentioned before, usually whenever we are dealing with org id’s in the
 Purchasing,OM, we are referring to the operating unit id, while in the
 inventory we are referring to the inventory org id.Now when we enter lines
 in OM, we choose an inventory item id. Now this inventory item is corresponding
 to the inventory organization id that is specified in the Warehouse id.
 Actually the warehouse id corresponds to the Inventory Organization Id.
 Incidentally the warehouse id is present both at the header level as well
 as the line level.  Also we can even mention what is the subinventory from
 which this item should come at the order line level.
 So what this effectively means is that we can place sales orders having
 two lines corresponding to the two different inventory organization ids as the
 warehouse id is present also at the line level.
 
63). What are defaulting rules in Order Management ?
 
  Generally while we are creating an order online/offline, certain information
  defaults based on the defaulting rules. these defaulting rules can be defined from the
   setup => rules => defaulting.
  One important point to note here is that when we create a default rule for each
  attribute, we mention what is called the default sourcing rules. Here we specify
  the sequence in which this attribute will be sourcing. An an ex, consider
  a bill to attribute, we specify the sequence as
           shipto. billto
        customer.billto
        blanketheader.billto
        agreement.billto.
 which means if the shipto entity does not have the billto info,then it goes
 to the customer and gets the billto, and if it does not find there to
 it goes to blanketheader and gets it etc.     
 
64). Explain the terms, Manufacturer, distributor,reseller, retailer?
    A Manufacturer manufactures or produces the goods etc.
    A Distributor buys the goods from the Manufacturer, stocks them and sells them
 to the resellers or retailers(although he may not stock them sometimes).
    Reseller(also called Value Added Resellers,VAR’s) will get the goods from a distributor
 and sells it to the consumers. Remember they add value,rather than just selling like
 that. For ex; they buy a computer and they can add a one year ext warranty for that
 for a price and then sell it.
    Retailer is also a reseller,however they usually dont add value,they just sell like that.
 
64a). What is the difference in buy-stock-sell vs sell-source-ship model?
    The traditional model of buy-stock-sell is distributors will buy goods, stock and sell
 them; in this model the lead time for the order fulfilment is very less.
    The new model is sell-source-ship ,where we take the order and source those orders
 from an external supplier (at that point of time) and then ship, here the lead time
 is more,however it results in cost savings. This is typically the drop ship model.
 
65). How does the receiving system recognize the difference between receipt of a regular PO
 versus drop ship PO???? i.e what is that specific flag that recognizes the difference ?
   I believe when an order line is marked as with source type “External”, then it make
   an entry into a drop ship sources store(i.e oe_drop ship sources which stores the
   order header and line id info).
   And when the receiving system looks for a PO, it looks in this table if it is a drop
   ship PO, and if it is then it does a logical receipt of the goods.
 
66). What is the logical receipt of goods in the system?
  The logical receipt means the onhand quantity does not go up in the inventory. Basically
  the system increments and decrement in one transaction and onhand remains same. This happens
  in the case of drop ship PO receipt of goods.
 
67).How do you do a drop ship order across operating units i.e you create an drop ship
   order in US to ship a product from an australia supplier to your australia customer?
 
  Basically cross OU/ledger functionality is available only in R12 and not in 11i.
  The only difference is a couple of steps
 First, set the receiving or in the sales order line as cross OU,receiving org.
 second, receive the PO in the desitination OU/ledger and follow the same stepsfrom thereon.
 Third, intercompany transactions for this transfer.
XML Publisher supports the common programming construct “if”,”if-then-else”. This is extremely useful when you need to test a condition and conditionally show a result.

We can use if condition directly by writing <?IF?> condition <?END IF?>

Example:
<?if:P_PM_YN=’N’?> Yes <?end if?>
But for If-else we need to use extended function.
 
Method 1:

<?xdofx:if element_condition then result1 else result2 end if?>

Example:

<?xdofx:if INVOICE_AMOUNT > 5000 then ’Higher’
else
if INVOICE_AMOUNT <3000 then ’Lower’
else
’Equal’
end if?>
 
Method 2:
Syntax:

<?xdoxslt:ifelse(condition,true,false)?>

Example: 

<?xdoxslt:ifelse(20=21,’yes 20 and 21 are equal’,’No 20 and 21 are not equal’)?>

Ans: No 20 and 21 are not equal

 

Using OR Condition in XML RTF Template:

Syntax:

<?if:XMLfield=value1 or XMLfield=value2?> display value <?end if?>

Example:

<?if:sum(AVALUE)=0 or sum(BVALUE)=0?>0<?end if?>

You can use whichever is applicable to your requirement.
The deferred COGS of goods account is the new feature introduced in Release 12. The basic fundamental behind the enhancement is that the COGS is now directly matched to the Revenue. The same was not possible till now.

Prior to this enhancement, the value of goods shipped from inventory were expensed to COGS upon ship confirm, despite the fact that revenue may not yet have been earned on that shipment. With this enhancement, the value of goods shipped from inventory will be put in a Deferred COGS account. As percentages of Revenue are recognized, a matching percentage of the value of goods shipped from inventory will be moved from the Deferred COGS account to the COGS account, thus synchronizing
the recognition of revenue and COGS in accordance with the recommendations of generally accepted accounting principles.

The Matching Principle is a fundamental accounting directive that mandates that revenue and its associated cost of goods sold must be recognized in the same accounting period. This enhancement will automate the matching of Cost of Goods Sold (COGS) for a sales order line to the revenue that is billed for that sales order line.

The deferral of COGS applies to sales orders of both non-configurable and configurable items (Pick-To-Order and Assemble-To-Order). It applies to sales orders from the customer facing operating units in the case of drop shipments when the new accounting flow introduced in 11.5.10 is used. And finally, it also applies to RMAs that references a sales order whose COGS was deferred. Such RMAs will be accounted using the original sales order cost in such a way that it will maintain the latest known COGS recognition percentage. If RMAs are tied to a sales order, RMAs will be accounted for such that the distribution of credits between deferred COGS and actual COGS will maintain the existing proportion that Costing is aware of.  If RMAs are not tied to a sales order, there is no deferred COGS.

SETUP and ACCOUNTING :
To set the deferred COGS account.

Inventory — Setup — Organization — Parameters — Other Accounts
A new account is added which is referred as the Deferred COGS accounts. 

Please note that when upgrading from a pre R12 version the DEFERRED_COGS_ACCOUNT will be populated if it is null with the cost_of_goods_sold_account on the organization parameter. This can then be changed accordingly if a different account is required.

NEW ACCOUNTING :

Release 12 : 
When a Sales order is shipped the following accounting takes place:

Inventory Valuation Account : Credit.
                   Deferred COGS account : Debit

Once the revenue is recognised, you would need to decide the percentage you wish to recognize the Revenue. A COGS recognition transaction will be created to reflect a change in the revenue recognition percentage for a sales order line.

The steps to generate such transactions are as follows:
1. Run the Collect Revenue Recognition Information program. This program will collect the change in revenue recognition percentage based on AR events within the user specified date range.
2. Run the Generate COGS Recognition Events. This program will create the COGS recognition transaction for each sales order line where there is a mismatch between the latest revenue recognition percentage and the current COGS recognition percentage.

Note that users can choose how often they want to create the COGS Recognition Events.

Navigation to run the COGS recognition request :
– Cost > COGS Recognition > Collect Revenue Recognition Information
– Cost > COGS Recognition > Generate COGS Recognition Events
– Cost > View Transactions > Material Transactions

The distribution for the COGS Recognition transaction associated with the Sales Order transaction now would be as follows:

       Deferred COGS : Debit revenue percentage
       COGS               : Credit (Actual revenue percentage )

Thus, essentially the recognized COGS balance is to move the value from Deferred COGS to COGS.

This particular COGS recognition transaction actually correspond to a revenue recognition percentage change.

You can view the transactions as :
Navigation:
– Cost > View Transactions > Material Transactions > Distributions

A new COGS Revenue Matching Report shows the revenue and COGS information of sales order that fall within the user specified date range by sales order line

SIMPLER TERMS ( Table level details ) : 
Once the whole cycle is complete we will have 2 transactions lines in mtl_material_transactions.

1. Sales Order
2. COGS Recognition transaction

Accounting will be in mtl_transaction_accounts and the Subledger accounting tables as follows:

Transaction 1:
Inventory Valuation Account : Credit. (item_cost)
             Deferred COGS account : Debit (item_cost) 

Transaction 2:
Deferred COGS : Credit (Actual revenue percentage)
              COGS : Debit (Actual revenue percentage ) 
1) Can a flexfield qualifier be changed after it has been created?
Ans)  No.

Once a segment qualifier has been designated for a specific segment and has been saved, it will permanently have the attributes with that qualifier.
For example, you accidentally designate the cost center segment as the natural account segment. Even though you do not compile this, the system saves the changes. And once it has been saved, it will have all the attributes designated for the natural account qualifier, even after it has been changed back, resaved with the correct qualifier and compiled. This is the inherent functionality of the software.
Unfortunately, there is no real easy solution for this issue. The only option is to create a new chart of accounts and attach a new set of books.

2) How to delete a segment value?
Ans) There is no supported way to delete a segment value. Segment values can only be disabled not deleted.

3) Is there a way to load values for a specific segment outside of the form?
Ans) iSetup is the Oracle product that provides supported APIs to load values into Oracle Applications flexfields.
To load code combinations ADI may be used. Uploading zero amount journals will create new code combinations.
In this case Dynamic Insertion should be enabled and all account segment values need to exist before the new account code combinations will be dynamically created.


4) What are the different types of Journals in General Ledger ?
Ans)  

1. Functional Currency Jv: This Journal, we enter Local Currency transaction purpose.

2. Foreign Currency Jv: this Journal, we enter other than local currency transaction purpose…before we define exchange rates

3.Suspense Jv: this Journal, whenever debit is not equal to credit that time, we enable in set of books window Suspense button, then it works otherwise it’s not working

4.Tax Jv: this Journal, calculate taxation of Purchased items

5.Reverse Jv: this Journal whenever we enter recurring journal, at the time of we using..We have two methods…one is Debit to Credit and second one is sign (+ to -)

6.Recurring Jv :this one is We define one template, we use Periodically, these are 3 types
1.Standard 2.Skeleton 3.Formula

7.Mass Allocation Jv :Set of Expenses or Set of Revenue allocate different parts using Formula A*B/C 
A is Total Cost Pool..B is Usage Factor…C is Total Usage Factor…

8. Batch JV: Group of Journal we enter at a time, We Define Control Amount

9. Stat JV: This JV we have one side of Amount either debit or Credit…..
 
5)  What is average Balance In Oracle Financials? 
Ans) The Average Balance feature of Oracle General Ledger provides organizations with the ability to track average and end-of-day balances, report average balance sheets, and create custom reports using both standard and average balances. Average balance processing is particularly important for financial institutions, since average balance sheets are required, in addition to standard balance sheets, by many regulatory agencies. Many organizations also use average balances for internal management reporting and
Profitability analysis.
The difference between an average and standard balance sheet is that balances are expressed as average amounts rather Than actual period-end amounts. An average balance is computed as the sum of the actual daily closing balance for a balance sheet account, divided by the number of calendar Days in the reporting period .


6) Is there a limit to the number of periods in a budget year or how many years a budget can span?
Ans) One can define budgetary control for n number of years however, one year can have maximum of 60 fiscal periods)
7) What is a funding budget?
Ans) A budget against which accounting transactions are checked for available funds when budgetary control is enable for your set of books.
8) What is planning budget
Ans) The plan for the future expenses is planning budget. It is a paper work. There is no funds requirement. It does not require journals. There are no restrictions for estimating of funds.
9) I was able to post a budget journal to a closed period, why? 
Ans) Yes you can do so, reason being budget journal is not linked with your accounting period. Once you have open the budget period then you can book budget journal for that whole period.
 10) What is the specific purpose of assigning Balancing Segment Values to the Legal Entity in Accounting Manager Setup (as once assigned, the same value is not allowed to be selected for any other Legal Entity), if this value is usable for the Operating Unit(s) that does not have this Legal Entity Context? 
Ans) Summary of key facts:

1. Common COA Structure used for Primary and Secondary Ledgers
2. Ledger shared by Multiple Legal Entities
3. Specific Balancing Segment Values assigned to Specific Legal Entity (Overlap not allowed)
4. Specific Legal Entity Vision Operations Assigned to Payables Manager OU for Legal Entity Context
5. User preference set to Access Vision Operations OU by Default in Payables

Conclusion and Findings:
1. Balancing Segment Value Assignment to the Multiple Legal Entities, sharing the same Ledger does not seem to restrict the user of these Balancing Segment Values in the Feeder, Operating Unit specific Modules Like AP, wherein Legal Entity Context is passed to the OU through the link of the Primary Ledger.

2. However, access to these Balancing Segment Values could be controlled through Security Rules being assigned to the Value Set and the Respective Responsibility

3. The Key question is: If Legal Entity having the context to the Operating Unit that shares the common Ledger does not have assignment to it, what impact it has on the integrity of data when this access is otherwise allowed, except through Security Rules?
11) What are the interface tables in General Ledger ?
Ans)
GL_BUDGET_INTERFACE 
GL_DAILY_RATES_INTERFACE 
GL_IEA_INTERFACE 
GL_INTERFACE 
GL_INTERFACE_CONTROL 
GL_INTERFACE_HISTORY 
 12) What is DFF.
Question: What does DFF mean?
Answer: DFF is a mechanism that lets us create new fields in screens that are delivered by Oracle. 

Question: Oh good, but can these new fields be added without modifying/customization of the screen?.
Answer: Yes, certainly. Only some setup is needed, but no programmatic change is needed to setup DFF.

Question: Why the word Descriptive in Name DFF?
Answer: I think Oracle used this terminology because by means of setup…you are describing the structure of these new fields. Or may be Oracle simply used a silly word to distinguish DFF from KFF(discussed in latter training lesson).

Question: Are these DFF’s flexible?
Answer: A little flexible, for example, depending upon the value in a field, we can make  either Field1 or Field2  to appear in DFF. 

Question: So we create new fields in existing screen, but why the need of doing so?
Answer: Oracle delivers a standard set of fields for each screen, but different customers have different needs, hence Oracle lets us create new fields to the screen.

Question: Are these new fields that get created as a result of DFF free text?
I mean, can end user enter any junk into the new fields that are added via DFF?
Answer: If you attach a value set to the field(at time of setup of dff), then field will no longer be free text. The entered value in the field will be validated, also a list of valid values will be provided in LOV. 

Question : Will the values that get entered by the user in dff fields be updated to database?
Answer: Indeed, this happens because for each field that you create using DFF will be mapped to  a column in Oracle Applications.

Question: Can I create a DFF on any database column?
Answer: Not really. Oracle delivers a predefined list of columns for each table that are meant for DFF usage. Only those columns can be mapped to DFF segments. These columns are named similar to ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3 ETC. Usually Oracle provides upto 15 columns, but this number can vary.  

Question: Can I add hundreds of fields to a given screen?
Answer: This depends on the number of attribute columns in the table that screen uses. Also, those columns must be flagged as DFF enabled in DFF Registration screen. Don’t need to worry much about this because all the ATTRIBUTE columns are by default flagged for their DFF usage.

Question: Hmmm, I can see that DFFs are related to table and columns…
Answer: Yes correct. Each DFF is mapped to one table. And also each segment(or call it field) is mapped to one of the attribute columns in that table.

Question: I want these fields to appear in screen only when certain conditions are met. Is it possible?
Answer: Yes, we have something known as Context Sensitive Descriptive Flexfields.

In Order to do this, we will follow the below steps(screenshots will follow) :- 
1.    Navigate to the DFF Registration screen in Oracle Apps and query on Table AP_BANK_BRANCES. Now click on Reference Field
2.    Navigate to DFF Segments screen and query on the Title of the “Bank Branch” and Unfreeze the Flexfield and add segments as to Section “GLOBAL Data Elements” as shown in screenshots.
13)   What is Journal Import?
Ans) Journal import is an interface used to bring journal entries from legacy systems and other modules into the General Ledger.(Specifically Journal Import gets entries from legacy data into the GL base tables.

The tables populated during journal Import are
GL_JE_BATCHES,
GL_JE_HEADERS,
GL_JE_LINES,
GL_IMPORT_REFERENCES


14) What is the use of GL_Interface?
Ans) Gl_Interface is the primary interface table of General ledger. It acts as an interface between data originating from other modules such as AP,AR, Legacy data and the Gl Base tables.

15) What is Actual Flag?
Ans) Actual flag represents the Journal type.
A-Actual
B-Budget
E- Encumbrance.

16) What is Encumbrance?
Ans) It is a process of Reservation of funds for anticipated expenditure from a budget. Encumbrance integrates GL, Purchasing and Payables modules.

17) How many Key Flex Fields are there in General Ledger?
Ans)  One. Accounting Key Flex Field.

18) How many types of Budgets are there?
Ans) Two Types.
Expenditure Budgets
Revenue Budgets.

19)What are Spot Rate, Corporate Rate, Transaction Calendar and Accounting Calendar?
Ans) Spot Rate:
An exchange rate which you enter to perform conversion based on the rate on a specific date. It applies to the immediate delivery of currency.

 Corporate Rate:
An Exchange rate that we define to standardize rates for our company. This rate is the standard market rate determined by the senior financial management for use through out the organization.

 User Rate:
Conversion rate that is defined by the user.
EMU Fixed Rate: An exchange rate that is provided automatically by the General Ledger while entering journals. It uses a foreign currency that has a fixed relationship with the euro.
Transaction Calendar: Defines the business days and holidays for any calendar.
Accounting Calendar: Defines different types of calendars namely Fiscal, Federal Fiscal, Month etc.

20)What is Security Rule?
Ans) Security Rules are defined to control the access of a flexfield segment value (Financial information) at a responsibility level.

21) What are Cross Validation & ADI?
Ans) CVS – Cross validate segments – Allows only valid code combinations.
ADI – Allow dynamic inserts. – Allows any code combination irrespective of validity.
ADI would prevail if both of CVS and ADI are checked.

22)What is Translation?
Ans) Translation is a process used to convert functional currency to other reporting currencies at the account balances level.

23)What is Revaluation?
Ans) It is process used to revalue assets and liabilities denominated in foreign currency into functional currency based on period end exchange rate we specify. Unrealized gains/losses are resulted because of exchange rate fluctuations which are recorded in unrealized gain/loss account in GL.

24)What is FSG (Financial Statement Generator)?
Ans) Financial statement generator feature helps us to generate reports such as balance sheets and income statements with out programming. It also provides a high degree of control on the rows, columns, contents and calculations on the report. Different components such as row set, column set, content set, row order, display set have to be defined before a statement is generated, of which row set and column set are mandatory.

25) What is Consolidation?
Ans) Consolidation is a period-end process of combining the financial results of separate business subsidiaries with the parent company to form a single combined statement of financial results.

26) At what level General Ledger data is secured?
Ans) GL data is secured at Set of Book level. Subledger module data is secured at Responsibility level (i.e., at Operating Unit Level).

27) Difference between Primary Ledger and Secondary Ledger in R12 ?
Ans) Primary ledger:
The primary ledger acts as the primary accounting representation

Secondary Leger:
Secondary ledgers represent the primary ledger’s accounting data in another accounting representation that differs in one or more of the following ways: 
chart of accounts
accounting calendar/period type combination
currency
subledger accounting method
ledger processing options
Use secondary ledgers for supplementary purposes, such as consolidation, statutory reporting, or adjustments for one or more legal entities within the same accounting setup. For example, use a primary ledger for corporate accounting purposes that uses the corporate chart of accounts and subledger accounting method, and use a secondary ledger for statutory reporting purposes that uses the statutory chart of accounts and subledger accounting method. This allows you to maintain both a corporate and statutory representation of the same legal entity’s transactions in parallel. 
Assign one or more secondary ledgers to each primary ledger for an accounting setup. 
The secondary ledgers assigned can only perform the accounting for the legal entities within the same accounting setup. 

There are several complicated things you may need to do with flexfields in your forms but one of them is simple and very common: create a foreign key on the accounting flexfield. It is easy to get lost in the Oracle Application Developer’s Guide because it tries to cover comprehensively what can be done with flexfields. But there is nothing to show you the basics step-by-step, which is what we will attempt in this article.
The end result of what we show is illustrated in Figure 1: one field that brings up the standard flexfield popup when the user asks for a list of values.
Figure 1: The end result of this step-by-step article.
A basic conceptual understanding of what flexfields are is necessary in order to understand what follows. There is a very good 2-3 page explanation in the chapter “Flexfields” of the Oracle Application Developer’s Guide.

Step 1: Create a FK Column

First you need to define a column in the base table maintained by your form. This column will be the foreign key on the unique ID of the combination table, in our case: GL_CODE_COMBINATIONS. So you need a number(38) mandatory column in your table.

Step 2: Create a Flexfield hidden item

In your form you need to create a hidden item for the FK column. This field needs to be hidden, that is set to canvas null. It should use the TEXT_ITEM property class which comes from the Oracle Application template. Set the query length to 2000 just to be on the safe side. Figure 2 shows an example of such hidden ID.
Figure 2: Hidden field to hold the Flexfield reference. 
Figure 2: Hidden field to hold the Flexfield reference.

Step 3: Create a Flexfield display item

Now we want to create a non-database text item that will display the concatenated values of the segments of the accounting field. This item should use the TEXT_ITEM property class and be assigned to the appropriate canvas where you want users to see it. You then need to assign to it the dummy LOV ‘ENABLE_LIST_LAMP’ which comes from the Oracle Application template. Make sure that property ‘Validate from list’ is set to No. This ensures that the List lamp works properly for your flexfield. Figure 3 shows an example of such displayed field. We only show the most relevant item properties.
Figure 3: Displayed field to show the concatenated values of the Flexfield. 
Figure 3: Displayed field to show the concatenated values of the Flexfield.

Step 4: Create the Flexfield definition

Then there is a little bit of PL/SQL to do in order to define your flexfield. This is done with the WHEN-NEW-FORM-INSTANCE trigger. It is always a good practice to do the actual work in a procedure or package as is illustrated in listing A. There are several reasons for this but this is out of the scope of this article. Note: the code in listing A is an abbreviated version of the real code: we have left out the comments and the error handling in order to keep this article as short as possible.
Listing A: Dynamic Flexfield definition

procedure initialize is     cursor get_cao is        select  to_char(id_flex_num)        from    fnd_id_flex_structures        where   id_flex_structure_code = ‘ACCOUNTING_FLEXFIELD’                and id_flex_code = ‘GL#’;     v_cao    varchar2(1000);            begin    open get_cao;    fetch get_cao into v_cao;    if get_cao%notfound then        v_cao := ‘101’;    end if;    close get_cao;       app_standard.event(‘WHEN-NEW-FORM-INSTANCE’);    fnd_key_flex.define(      BLOCK=>’COMBO’,      FIELD=>’ACCOUNT_FLEXFIELD’,      APPL_SHORT_NAME=>’SQLGL’,      CODE=>’GL#’,      NUM=>v_cao,      ID=>’CODE_COMBINATION_ID’,      DESCRIPTION=>”,      TITLE=>’____ Your nice user friendly title here _____’,      VALIDATE=>’FULL’,      QBE_IN=>’Y’,      DERIVE_ALWAYS=>’Y’,      updateable => ”,      VRULE=>’\nSUMMARY_FLAG\nI\nAPPL=SQLGL;NAME=GL_NO_PARENT_SEGMENT_ALLOWED\nN’,      where_clause => ‘summary_flag != ”Y”’,      QUERY_SECURITY =>’Y’);  end initialize;

Step 5: Code several event triggers

Then, all that is left to do is to program a few events:
  • WHEN-VALIDATE-ITEM
  • WHEN-NEW-ITEM-INSTANCE
  • POST-QUERY
  • PRE-QUERY
  • KEY-LISTVAL
The code is shown in Listing B.
We always try to put this code in the form level triggers as it is more convenient and consistent than doing it at block or item level, especially when you have more than one foreign key flexfield in the form. Only in the case of very large and complicated forms would we do otherwise.
If you are updating someone else’s form, you may need to check that no block or item triggers are overriding your form level triggers. Check also the execution style of your form level triggers. Whether your trigger should fire in mode Before, After or Override will depend on your context.
Listing B: Event programming for the Flexfields.

WHEN-VALIDATE-ITEM    if ( :system.mode = ‘NORMAL’ ) then       fnd_flex.event( ‘WHEN-VALIDATE-ITEM’ );    end if;WHEN-NEW-ITEM-INSTANCE    app_standard.event(‘WHEN-NEW-ITEM-INSTANCE’);    fnd_flex.event(‘WHEN-NEW-ITEM-INSTANCE’ );POST-QUERY–Loads the flexfields (in our case, it populates–the concatenated field on execute query).    FND_FLEX.EVENT(‘POST-QUERY’);PRE-QUERY–If you don’t do this, whatever query criteria you may enter in— the concatenated flex field, it is not taken into account.    FND_FLEX.EVENT(‘PRE-QUERY’ );KEY-LISTVAL    APP_STANDARD.EVENT(‘KEY-LISTVAL’);    FND_FLEX.EVENT(‘KEY-LISTVAL’ );