Previous  Next          Contents  Index  Navigation  Glossary  Library

Defining a Sales Tax Location Flexfield Structure

Define Value Sets

You can use existing value sets if the value sets for your new structure have the same parent as an existing value set. For example, if your new structure is County.City, you can use the seeded AR_LOC_CITY value set for your 'City' segment, as this has 'County' as its parent. However, you must create a new value set for the county segment, as the seeded 'County' value set has a parent and your new value set does not.

Use the Define Value Set window to define new value sets. Query one of the default value sets provided by Receivables and copy all of the values except for the Name, Description and WHERE/ORDER BY values. Enter a name and description that reflects the kind of value set you are defining. For example, if you are defining a value set for the parent 'County' segment, you might call it 'AR_LOC_COUNTY_NO_PARENT'.

If you are defining a value set for the parent segment of your Sales Tax Location Flexfield structure, you must enter the following SQL clause in the WHERE/ORDER BY field:

where AR_LOCATION_VALUES.location_segment_qualifier||'' =
'<segment_name>'

If you are defining the value set for the segments other than the parent segment, you must enter the following SQL clause in the WHERE/ORDER BY field:

where AR_LOCATION_VALUES.location_segment_qualifier||'' =
'<segment_name>'
AND AR_LOCATION_VALUES.parent_segment_id = nvl(:$PARENT_VALUE_SET$,
AR_LOCATION_VALUES.parent_segment_id)

Define a New Sales Tax Location Flexfield Structure

After you define your value sets, you need to define your Sales Tax Location Flexfield structure in the Key Flexfield Segments window. Query 'Sales Tax Location Flexfield' in the Flexfield Title field; Receivables will return all the seeded Sales Tax Location Flexfield structures in the Structures region. To enter your new Sales Tax Location Flexfield structure, choose New Record from the Edit menu. Be sure to use a unique name for your new structure.

When you define each segment of your Sales Tax Location Flexfield structure, make sure you define them in the order of their dependencies. For example, if you are defining a new two segment structure using county and city, and county is your parent segment, define county as your first segment and city as your second segment. When you assign columns to each segment, make sure you assign them in ascending order, starting with LOCATION_ID_SEGMENT_1. In the example above you would assign LOCATION_ID_SEGMENT_1 to your first segment (County) and LOCATION_ID_SEGMENT_2 (City) to your second segment.

Use this window to also assign your new value sets and flexfield qualifiers to each segment. You should only enable one 'Location' qualifier for each segment. In the example above you would enable the County qualifier for the County segment and the City qualifier for the City segment. You must also enable your Tax Account and Exempt Level qualifiers as described above, then freeze your new structure.

Define Your Descriptive Flexfield Contexts

After defining your new Sales Tax Location Flexfield structure, you must define contexts for the following descriptive flexfields in the Descriptive Flexfield Segments window.

Query each flexfield by entering the flexfield name in the Title field of the Descriptive Flexfield zone and 'Receivables' in the Application field. Receivables displays the seeded context values (one for each seeded Sales Tax Location Flexfield structure) in the Context Field Values region. Select New Record from the Edit menu to create a row where you can enter your new context field value. The value that you enter in the Name field must be set to the ID of your new Sales Tax Location Flexfield structure. Use the following SQL script to determine the ID:

$  sqlplus <AOL username>/<AOL password>
SQL> select id_flex_structure_name, id_flex_num from fnd_id_flex_structures where id_flex_code = 'RLOC';

After entering the Flexfield structure ID in the Name field and a description in the Description field, enter the segments and associated value sets for this Descriptive Flexfield. Define the same number of segments for each of the descriptive flexfields as you defined for your Sales Tax Location Flexfield structure. The only exception to this rule is the Override Sales Tax Rates flexfield. As the override only applies to segments above the City segment, this structure should only include the segments that you defined above the City segment for which you want to allow overrides. For example, if your Sales Tax Location Flexfield has County.City as the structure, the Override Sales Tax Rates Flexfield should have just one segment relating to County for its structure.

Attention: If you wish to use the override feature, you must include City in your Sales Tax Location Flexfield structure.

Hence, using our County.City example, you would create your new descriptive flexfields as follows:

Sales Tax Rate Assignment Flexfield

Column: LOCATION1_RATE Value Set: AR_SALES_TAX_RATES

Column: LOCATION2_RATE Value Set: AR_SALES_TAX_RATES

Item Exception Rate Assignment Flexfield

Column: LOCATION1_RATE Value Set: AR_SALES_TAX_RATES

Column: LOCATION2_RATE Value Set: AR_SALES_TAX_RATES

Item Exception Rate Location Flexfield

Column: LOCATION_ID_SEGMENT_1 Value Set: AR_LOC_COUNTY_NO_PARENT

Column: LOCATION_ID_SEGMENT_2 Value Set: AR_LOC_CITY

Exempt Regions Flexfield

Column: LOCATION_ID_SEGMENT_1 Value Set: AR_LOC_COUNTY_NO_PARENT

Column: LOCATION_ID_SEGMENT_2 Value Set: AR_LOC_CITY

Override Sales Tax Rates Flexfield

Column: OVERRIDE_RATE1 Value Set: AR_SALES_TAX_RATES

Note: AR_LOC_COUNTY_NO_PARENT has been used in this example, as this is the name given to the new value set in our previous example.

Be sure to freeze all five descriptive flexfield definitions when they are complete.

Specify Your Location Flexfield Structure System Option

After defining your new Sales Tax Location Flexfield structure, value sets, and your descriptive flexfield contexts, you must choose your Sales Tax Location Flexfield structure in the Location Flexfield Structure field of the System Options window. Upon saving this change, Receivables submits three concurrent programs. These concurrent programs create PL*SQL packages to interface between the tax windows and tax tables. Use the View Requests window to verify that these three concurrent requests have completed without error. The following is an example of the comments that should be displayed at the end of the log files:

No errors  
APP-43157 Expansion completed without any errors 
										 
Concurrent process completed successfully 

Attention: You cannot update your Sales Tax Location Flexfield structure once you have entered customer addresses or transactions.

If Your Concurrent Programs Fail

If your concurrent programs fail, check the following:

See Also

Setting Up Tax

Calculating Tax

Customizing Your Sales Tax Location Flexfield Structure


         Previous  Next          Contents  Index  Navigation  Glossary  Library