A Trip to Bhimashankar

A Trip to Bhimashankar

Bhimashankar is famous pilgrimage destination for one of the 12 Jyotirlings in India. Bhimashankar lies around 125 kms from Pune and 250 Kms from Mumbai. On Mumbai-Pune highway after pimpri-chinchwad a road to left goes to Nashik, popularly known as Nasik phata. It will take you to Bhimashankar via Rajguru Nagar – Manchar –Ghodegaon – Bhimashankar. Another alternative road from Mumbai is via – Malshej Ghats.

We have recently visited this place on the occasion of one of my friend’s birthday. We were eight people and so we have booked one cab from Pune. Our initial plan was to go early as soon as possible as these places are very good to visit in the early morning. However we managed to start our trip by 7.30 in the morning. It took nearly two and half hour to reach our destination. This is the month of January and so the climate was pretty good, not so hot as well as not so cold.

On our way to Bhimashankar, the cool and calm countryside of Maharashtra attracted us a lot. We felt very relaxed after a long coding, testing and deployment periods in our so called IT life. Here are few pics.  

We had our breakfast at a nearby shop and then visited the temple. The temple was not so big as I expected. But what I surprised to see that lot of pilgrims from North India came here to visit as a group by bus.

Bhimashankar is also declared as wildlife sanctuary. The dense vegetation is home to varieties of birds and animals. Leopards, barking deers, langurs, sambhar deers, wild boars, shekhrus, skews (Squirrels without stripes), civet cats (jungle cat), jackals, hyenas are the common inhabitants of Bhimashankar.

Few places near Bhimashankar to see are: Ghodegaon, Dimbhe Dam, Kondwal waterfall, Hanuman Lake, Gupt Bhimashankar, Origin of River Bhima, Nag Phani etc.

After visiting the temple, we went to see the Dimbhe Dam and I must say this is one of the most beautiful dam I have ever seen in my life. It is surrounded by beautiful hills and the water was clear blue. We also saw fresh water fishes roaming feely there.

After spending a plenty of time there with my friends, we finally headed towards Pune with capturing lots of memories and photos of our trip. It was a great weekend one day trip for us.


Autonomous Transactions in Oracle

Autonomous Transactions in Oracle

Autonomous Transaction is a new feature in ORACLE starting from 8i. It allows setting up independent transactions that can be called from within other transactions. It lets you suspend the main transaction (without committing or rolling back), perform some DML operations, commit or roll back those operations (without any effect on the main transaction), and then return to the main transaction.

Being independent of the main transaction (almost like a separate session), an autonomous transaction does not see the uncommitted changes from the main transaction. It also does not share locks with the main transaction. Changes committed by an autonomous transaction are visible to other sessions/transactions immediately, regardless of whether the main transaction is committed or not. These changes also become visible to the main transaction when it resumes, provided its isolation level is set to READ COMMITTED (which is the default).

The following types of PL/SQL blocks can be defined as autonomous transactions:

  • Stored procedures and functions.
  • Local procedures and functions defined in a PL/SQL declaration block.
  • Packaged procedures and functions.
  • Type methods.
  • Top-level anonymous blocks.

Any of the routines can be marked as autonomous simply by using the following syntax anywhere in the declarative section of the routine (putting it at the top is recommended for better readability):

Example of an autonomous transactions:

  FOR i IN 3 .. 10 LOOP
    INSERT INTO at_test (id, description)
    VALUES (i, 'Description for ' || i);

Order to Cash (O2C) Cycle

Order to Cash (O2C) Cycle

Order to Cash means Customer’s Order Placing to Vendor’s Cash Receiving. When your final product is ready to be sold, you market it. The customer gets fascinated with the marketing campaign and decides to buy your product and from here starts the O2C cycle.

Step 1] Order Entry:

Customer sends details of order or sales dept brings order from customers. After that the order is entered in Order Management (OM)

Navigation: Order Management Super User> Orders Returns >Sales Orders

Here we need to enter the Customer Details (Customer Name , Number, Contact Ship to and Bill to address etc.), Order type. In the Lines tab we need to enter the Item to be ordered and the quantity required. Here we can also check the availability of the order. Here we can save the order. Once saved the Order Status is changed to ‘Entered’.

Key Tables:

  • OE_ORDER_HEADERS_ALL – All header information is stored here.
  • OE_ORDER_LINES_ALL – All the line information is stored here.

Step 2] Order Book :

When we book the order, we are just confirming and freezing our order.

The final step in the Sales Order Entry process is to Book the order. This signifies that the Order Entry process is complete and that the order is eligible for the next stage in the line flow for this order, as defined by its Transaction Type. Select the Book Order button. The Entry Status of the Order will change to Booked.

After Order Booking:

Order Header: Booked

Order Line : Awaiting Shipping

Shipping Transaction form: Ready to release

Table Level :

  • OE_ORDER_HEADERS_ALL : Flow_Status_code –Booked
  • OE_ORDER_LINES_ALL : Flow_Status_code – Awaiting Shipping
  • WSH_DELIVERY_DETAILS : Released_Status – R ( means – Ready to release)

Step 3] Launch Pick Release :

Pick Release is the process in which the items on the sales order are taken out from inventory.

Navigation: Order Management Super User> Shipping > Release sales Orders > Release sales order

Based On rule: Select the Grouping rule the reaming details will default in Order, Shipping and Inventory tab

Order Tab:

  • Order Number: Select the Order Number. Values for the Order Type and Customer fields of this form default to those for the order number you enter here.
  • Ship Set: Select the Ship Set to be released. The Order Number must be selected first.

Shipping Tab:

  • Auto creates Deliveries : Select Yes in this box to automatically create deliveries for  delivery lines once they are released
  • Release Sequence Rule: Select Rule to specify the order in which the picking lines are released.
  • Auto Pick Confirm –Yes/No

Inventory tab:

  • Warehouse: Select the Warehouse
  • Sub inventory: Select the Sub inventory
  • Pick Slip Grouping Rule: To determine how released picking lines are grouped onto pick slips.
  • Default Stage Sub inventory: Select the Default Stage Sub inventory

Click on Execute Now Button to complete the pick release of the order. Normally pick release SRS program runs in background . Once the program get completed these are the table get affected:

  • OE_ORDER_LINES_ALL (flow_status_code ‘PICKED’ )
  • WSH_DELIVERY_DETAILS (released_status ‘S’ ‘submitted for release’ )
  • mtl_txn_request_headers
  • mtl_txn_request_lines
  • Mtl_material_transactions_temp (link to above tables through move_order_header_id/line_id

Step 4] Pick Confirm the Order:

If Auto Pick Confirm in the above step is set to NO, then the following should be done.                             

Navigation: Inventory Super User > Move Order> Transact Move Order

In the HEADER tab, enter the BATCH NUMBER (from the above step) of the order. Click FIND. Click on VIEW/UPDATE Allocation, then Click TRANSACT button. Then Transact button will be deactivated then just close it and go to next step.

  • Items are transferred from salable to staging Sub inventory.
  • mtl_material_transactions
  • mtl_transaction_accounts
  • wsh_delivery_details (released_status ‘Y’ ‘Released’ )
  • wsh_delivery_assignments

Step 5] Ship Confirm the Order:

The Shipping Transaction window provides a centralized workbench that consolidates three major shipping functions: planning, pick releasing, and ship confirming.

Navigation: Order Management Super User>Shipping >Transactions.

Here ship confirm interface program runs in background . Data are removed from wsh_new_deliveries.

  • oe_order_lines_all (flow_status_code ‘shipped’)
  • wsh_delivery_details (released_status ‘C’ ‘Shipped’)
  • mtl_transaction_interface
  • mtl_material_transactions(linked through Transaction source header id)
  • mtl_transaction_accounts

Data are deleted from mtl_demand, mtl_reservations and Item is deducted from mtl_onhand_quantities.

Step 6] Enter Invoices in Receivables:

Run workflow background Process. Workflow Background Process inserts the records in RA_INTERFACE_LINES_ALL with

  • INTERFACE_LINE_ATTRIBUTE1 =   Order_number
  • INTERFACE_LINE_ATTRIBUTE3 =    Delivery_id

Then it spawns Auto invoice Master Program and Auto invoice import program which creates Invoice for that particular Order.

Navigation: Order Management >view >Requests

Underlying tables:

  • RA_CUSTOMER_TRX_ALL will have the Invoice header information. The column INTERFACE_HEADER_ATTRIBUTE1 will have the Order Number.
  • RA_CUSTOMER_TRX_LINES_ALL will have the Invoice lines information. The column INTERFACE_LINE_ATTRIBUTE1 will have the Order Number.


In this stage order line level table get updated with Flow status and open flag .

  • oe_order_lines_all (flow_status_code ‘shipped’, open_flag “N”)


This is last step of Order Processing . In this stage only oe_order_lines_all table get updated .

  • oe_order_lines_all (flow_status_code ‘closed’, open_flag “N”)

At the top of Mahabaleshwar

At the top of Mahabaleshwar

Located in the misty green mountain ranges of the Western Ghats, Mahabaleshwar is an idyllic summer retreat and is blessed with some of the finest natural wonders. This place was once upon a time the most favored summer getaway for the British and one can still sense the colonial charm here. There are many interesting things about Mahabaleshwar that draw large number of tourists from all parts of India. Its scenic points, temples and a salubrious climate attract nature lovers or seekers of solitude.

As a part of our one day trip to Mahabaleshwar, we reached at its top in the morning to enjoy the cool mountain air, lush greenery, breathtaking valleys and soaring mountain peaks. Here are few pics taken at that time.

GL Tables

GL Tables

General Ledger tables can be grossly classified into following 5 categories. Here are few important tables in each category.

Ledgers Tables:

GL_LEDGERS: Stores information about the ledgers defined in the Accounting Setup Manager and the ledger sets defined in the Ledger Set form. Each row includes the ledger or ledger set name, short name, description, ledger currency, calendar, period type, chart of accounts, and other information.

GL_CODE_COMBINATIONS: Stores valid account combinations for each Accounting Flexfield structure within your Oracle General Ledger application.

Period Tables:

GL_PERIODS: Stores information about the accounting periods you define using the Accounting Calendar form.

GL_PERIOD_SETS: Stores the calendars you define using the Accounting Calendar form.

GL_PERIOD_TYPES: Stores the period types you define using the Period Types form. Each row includes the period type name, the number of periods per fiscal year, and other information.

Journal Tables:

GL_JE_BATCHES: Stores journal entry batches. Each row includes the batch name, description, status, running total debits and credits, and other information.

GL_JE_HEADERS: Stores journal entries. There is a one-to-many relationship between journal entry batches and journal entries. Each row in this table includes the associated batch ID, the journal entry name and description, and other information about the journal entry.

GL_JE_LINES: Stores the journal entry lines that you enter in the Enter Journals form. There is a one-to-many relationship between journal entries and journal entry lines. Each row in this table stores the associated journal entry header ID, the line number, the associated code combination ID, and the debits or credits associated with the journal line.

GL_JE_SOURCES: Stores journal entry source names and descriptions. Each journal entry in your Oracle General Ledger application is assigned a source name to indicate how it was created. This table corresponds to the Journal Sources form.

GL_JE_CATEGORIES: Stores journal entry categories. Each row includes the category name and description.

Conversion and consolidation tables:

GL_CONSOLIDATION: Stores information about your consolidation mappings. Each row includes a mapping’s ID, name, description, and other information. This table corresponds to the first window of the Consolidation Mappings form. You need one row for each consolidation mapping you define.

GL_CONSOLIDATION_ACCOUNTS: Stores the account ranges that you enter when you consolidate balances using the Transfer Consolidation Data form. This table corresponds to the Account Ranges window of the Transfer Consolidation Data form.

GL_DAILY_RATES: Stores the daily conversion rates for foreign currency transactions. It replaces the GL_DAILY_CONVERSION_RATES table. It stores the rate to use when converting between two currencies for a given conversion date and conversion type.

GL_DAILY_BALANCES: Stores daily aggregate balances for detail and summary balance sheet accounts in sets of books with average balances enabled.

Budgeting tables:

GL_BUDGET_TYPES: Stores information about budget types. Oracle General Ledger supports only one budget type, ‘STANDARD’. Therefore, this table always contains only one row.

GL_BUDGET_ASSIGNMENTS: Stores the accounts that are assigned to each budget organization. Each row includes the currency assigned to the account and the entry code for the account. The entry code is either ‘E’ for entered or ‘C’ for calculated. This table corresponds to the Account Assignments window of the Define Budget Organization form.

GL_BUDGET_INTERIM: It is used internally by Oracle General Ledger applications to post budget balances to the GL_BALANCES table. Rows are added to this table whenever you run the budget posting program. The budget posting program updates the appropriate budget balances in GL_BALANCES based on the rows in this table, and then deletes the rows in this table that it used.

Interface Tables:

GL_INTERFACE: It is used to import journal entry batches through Journal Import. You insert rows in this table and then use the Import Journals window to create journal batches.

GL_INTERFACE_CONTROL: It is used to control Journal Import execution. Whenever you start Journal Import from the Import Journals form, a row is inserted into this table for each source and group id that you specified. When Journal Import completes, it deletes these rows from the table.

GL_BUDGET_INTERFACE: It is used to upload budget data into your Oracle General Ledger application from a spreadsheet program or other external source. Each row includes one fiscal year’s worth of budget amounts for an account.

Happy New Year and 2010 Review

Hi Friends.

Happy new year to all of you. Wish this new year will bring joy and colors to your life. Again thanks a lot for viewing the blog and posting your valuable comments. Here is a summary of this blog for the year 2010  that I got from WordPress and I would like to share this with the viewers who helped to get good compliments from the WordPress Team. Thanks a lot.

The stats helper monkeys at WordPress.com mulled over how this blog did in 2010, and here’s a high level summary of its overall blog health:

Healthy blog!

The Blog-Health-o-Meter™ reads Wow.

Crunchy numbers

Featured image

The average container ship can carry about 4,500 containers. This blog was viewed about 18,000 times in 2010. If each view were a shipping container, your blog would have filled about 4 fully loaded ships.

In 2010, there were 108 new posts, not bad for the first year! There were 223 pictures uploaded, taking up a total of 29mb. That’s about 4 pictures per week.

In 2010, 128 different countries visited the site with Top 5 visits from INDIA, USA,UK,CANADA and PAKISTAN.

The busiest day of the year was December 9th with 382 views. The most popular post that day was AP invoice interface.

Where did they come from?

The top referring sites in 2010 were en.wordpress.com, google.co.in, spiritdaily.com, google.com, and spiritdaily.net.

Some visitors came searching, mostly for imdjkoch, create report in oracle, multiple canvases oracle, and did someone say photography isn’t art.

Attractions in 2010

These are the posts and pages that got the most views in 2010.


AP invoice interface August 2010


Home June 2010
1 comment


HZ tables in Oracle Receivables July 2010


Fundamentals of object sharing in Oracle Forms 10g July 2010


Triggers in Oracle Forms September 2010