Consistent Currency Rates Handling Across Main and Sub Orders
The Main Order – Sub Order feature in R2 allows you to group multiple orders under a single Main Order, enabling unified invoicing. When the Main Order is invoiced, all associated Sub Orders are combined into one or more invoices, with charges such as Items, Labor, and other costs consolidated based on the Main Order’s payment settings (e.g., Pay At, Billing Terms, Payment Terms).
This feature is also helpful in operational scenarios where a single order would otherwise become too long and difficult to manage throughout its lifecycle. Splitting such orders into manageable Sub Orders under a Main Order simplifies tracking, fulfillment, and billing.
In multi-currency environments, R2 applies conversion rates from the Conversion Rate master to the orders based on the creation date. These rates are visible on both the Main Order and its Sub Orders. There is an option to enforce consistent currency conversion rates across Main Order and its Sub Orders. This option ensures that Sub Orders automatically inherit conversion rates from the Main Order and the rates remain non-editable in the Sub Orders, maintaining consistency throughout the grouped orders.
How this works?
There is a flag called ‘Default Main Order Info to Sub Order’ in Order > Default screen. Enabling this flag ensures, the Sub Orders to inherit the Main Order conversion rates and conversion rates on sub orders remain non-editable.
Enabling ‘Default Main Order Info to Sub Order’ flag also ensures that many other properties/values are inherited from Main Order like Dates, PO No., etc. However, this topic explains only how this flag controls the behavior of conversion rates.

Figure 1.0: Flag true in Main Order
When ‘Default Main Order Info to Sub Order’ is TRUE on Main Order
Newly created Sub Orders inherit conversion rates from Main Order and sets the Flag ‘Default Main Order Info to Sub Order’ as True on Sub Orders.

Figure 1.1: Main Order having conversion rates as follows

Figure 1.2: Sub Order inherits conversion rates same as Main Order
The Sub Order’s conversion rate fields become read-only.
If the Main Order conversion rate is changed,
If Sub Order is not in use
You will see prompt as sown below
Figure 1.3: Prompt shown when Conversion rates change on Main Order when Sub Order not in use
On clicking ‘Yes’ Recalculate Price Options will be shown and the conversion rate which is applied on main order will be applied to sub order as well. And it recalculates Price, Cost, Tax, Amount, etc. according to option selected accross Min Order and Sub Orders.
If Sub Order is in use
The error message is displayed as follows
Figure 1.4: Error shown if Sun Order is in use
Click on ‘Details’ to see which sub order is sharing this main order rates
Figure 1.5: Shows details of Sub Order In use
Changing ‘Default Main Order Info to Sub Order’ Flag on Sub Orders
Sub Order’s ‘Default Main Order Info to Sub Order’ flag changed From TRUE → FALSE
Conversion rates on Sub Order remains unchanged.
Conversion rates on Sub Order become editable. Upon editing the conversion rate it will recalculate prices on respective Sub Order only.

Figure 1.6: Conversion rates editable on sub order if Sub Order’s ‘Default Main Order Info to Sub Order’ flag changed From TRUE → FALSE
Whenever you update Main Order rates, it will no longer effect the rates on Sub Orders where the flag is set to False.

Figure 1.7: Main Order Conversion rates changed

Figure 1.8: Sub Order conversion rates remains same
Sub Order’s ‘Default Main Order Info to Sub Order’ flag changed From FALSE → TRUE
If Main Order is in use → update fails (show error).

Figure 1.9: If you change Sub Orders flag from False to True prompt is shown
If you click yes the below error is shown.

Figure 2.0: Error shown if Main Order is in use
If Main Order not in use:
Prompt is shown as follows
Figure 2.1: Flag changes if Main Order not in use
Sub Order inherits the Main Order conversion rates and displays the Recalculate Price Options dialog.
Figure 2.2: Recalculate prompt is shown
On clicking ‘Ok’
Sub Order values updated as per the option chosen and updated conversion rates.
Conversion rates become non-editable.
Whenever Main Order rate changes it affect this Sub Order as well.

Figure 2.3: Main Order Conversion rates

Figure 2.4: Sub Order Conversion rates copied with Main Order Conversion rates
When ‘Default Main Order Info to Sub Order’ is FALSE on Main Order
On Sub Order Creation
Flag is auto-set to
FALSE
and flag becomes non-editable.

Figure 2.5: Sub Order’s Flag becomes false and non editable
Conversion rates are retrieved from master data based on creation date
Rates are independent across Main and Sub Orders.

Figure 2.6: Main Order rates are independent

Figure 2.7: Sub Order rates are independent
Changing Main Order’s Flag from FALSE → TRUE
Prompts to save

Figure 2.8: Changing Main Order from False to True
On confirmation if no Sub Orders with
flag = TRUE
are in use,Copies the Main Order conversion rates to all Sub Orders where Flag is True.
And shows Recalculate Price Options.
Recalculates values on Sub Orders whose conversion rates are copied.
Saves all changes.
If any Sub Order is in use/locked → show error and reverts back Flag to False.
Changing Main Order’s Flag from TRUE → FALSE
No prompt shown.
Manual save required.
Does not immediately change Sub Order flags.
On Main Order closure → flags on all Sub Orders reset to
FALSE
.Conversion rate fields on Sub Orders become editable.
Transaction Currency Change on Main Order
Prompt is shown as follows:
Figure 2.9: When Transaction Currency is changed
On confirmation:
If any Sub Order is in use (regardless of flag), the below error is shown.
Figure 3.0: Error shown if Sub Order is in use
If none are in use → shows Recalculate Price Options.
Figure 3.1: If none are in use Recalculate option is shown
Currency and conversion rate updates apply to Main Order and all Sub Orders.
Recalculates amounts (Price, Cost, Tax, etc.) and click save.
Site Change on Main Order Quote
You can change the site on Main Order, when all it's Sub Orders are in Quote status.
Upon changing site, if any Sub Order is locked → show error and revert changes.
If no Sub Orders are in use → proceed with update.
If New Site Currency ≠ Old Site Currency
When Main Order flag = TRUE
Site currency updated on Main and Sub Orders.

Figure 3.3: Site Currency updated on Main Order

Figure 3.4: Site Currency updated on Sub Order
Conversion rates reloaded from currency conversion rates master to the Main Order and all the Sub Orders where flag = FALSE.
Conversion rates are copied from Main Order to all the Sub Orders where flag = TRUE.

Figure 3.5: Site Currency rates updated on Main Order

Figure 3.6: Site Currency rates updated on Sub Order
Shows Recalculate Price Options.
Figure 3.7: Recalculate option is shown
Recalculates and saves the updated amounts as per the options chosen.
When Main Order flag = FALSE
Site currency updated.
Conversion Rates on Main Order and all Sub Orders are reloaded from master.
Shows Recalculate Price Options.
Recalculates and saves the updated amounts as per the options chosen.
If New Site Currency = Old Site Currency
When flag = TRUE on Main Order and some/all its sub orders:
Rates reloaded from master on Main Order and on Sub Orders where flag = FALSE.
Rates on Sub orders where flag is TRUE will be copied from Main Order.
Override Pricing prompt appears (regardless of item price/labor group status).
On confirmation, recalculate prices and amounts.
When flag = FALSE on Main Order and its sub orders:
All rates reloaded from master.
Override Pricing prompt appears.
Recalculate and save changes.
Sub Order Linking via Sub Order Maintenance
In R2, you can manually link Sub Orders to a Main Order using the Sub Order Maintenance utility. This explains how the ‘Default Main Order Info to Sub Order’ flag and conversion rates behaves during this linking process:
If the Main Order’s flag is TRUE:
The system does not override the flag values on the Sub Orders.
This means each Sub Order retains whatever flag value it already had before linking—TRUE or FALSE.
This behavior and provides flexibility in cases where only certain Sub Orders follows the Main Order’s rates.
If the Main Order’s flag is FALSE:
The system automatically sets the flag to FALSE on all Sub Orders being linked.
This behavior is to maintain consistency: if the Main Order is not controlling Sub Orders, then the Sub Orders not follows its conversion rates.
Linking Sub Orders to a Main Order does not change any conversion rates. The currency rates remain as they were on the Sub Orders. The values will only change if you later edit the conversion rate or toggle the flag after linking.
Upgrade Impact
What happens after R2 is upgraded with this enhancement:
Existing Orders (before upgrade):
All existing Main Orders and Sub Orders remain untouched by default.
Their flag statuses and currency conversion rates will not change automatically.
This is done to preserve historical integrity and avoid unintentional data changes.
After Upgrade – When user performs any action:
The new behavior is triggered only if:
You change the conversion rate on the Main Order or Sub Order,
Or you change the flag status (‘Default Main Order Info to Sub Order’) on either the Main or Sub Order.
For your convenience/ ease of understanding here is the table given
Scenario | Main Order Flag | Sub Order Flag | Sub Order Editable? | Conversion Rate Source | Special Behavior / Error |
---|---|---|---|---|---|
Create Sub Order when Main Order flag = TRUE | TRUE | Auto-set to TRUE | ❌ Read-Only | Copied from Main Order | Updates when Main Order changes |
Sub Order flag manually changed TRUE → FALSE | TRUE | Changed to FALSE | ✅ Editable | Retains last copied values | Further Main Order changes do not affect this Sub Order |
Sub Order flag manually changed FALSE → TRUE If Main Order in use | TRUE | Attempt to change → TRUE | ❌ Not allowed | — | ❌ Error shown; cannot proceed |
Sub Order flag manually changed FALSE → TRUE If Main Order not in use | TRUE | Changed to TRUE | ❌ Becomes Read-Only | Copied from Main Order | Prompt: Recalculate options shown |
Main Order flag = FALSE at time of Sub Order creation | FALSE | Auto-set to FALSE🔒 Non-editable | ✅ Editable | From currency master (based on date) | Rates between Main and Sub are independent |
Main Order flag changed FALSE → TRUE If Sub Orders not in use | Becomes TRUE | All remain unchanged initially | ❌ Read-Only for flag=TRUE Sub Orders | Recalculated from Main Order | Recalculate dialog shown |
Main Order flag changed FALSE → TRUE If Some Sub Orders in use | Becomes TRUE | — | — | — | ❌ Error shown, changes reverted |
Main Order flag changed TRUE → FALSE | Becomes FALSE | No change immediately | ✅ Editable after Main Order is closed | From master (if edited later) | On Main Order closure, all Sub Order flags reset to FALSE |
Main Order conversion rate changed If Sub Orders with flag=TRUE not in use | TRUE | TRUE | ❌ Read-Only | Copied from Main Order | Recalculate prompt shown |
Main Order conversion rate changed If Sub Orders with flag=TRUE are in use | TRUE | TRUE | ❌ Read-Only | No update | ❌ Error shown; list of in-use Sub Orders displayed |
Sub Orders linked via Maintenance If Main Order flag = TRUE | TRUE | Sub Orders retain existing values (TRUE or FALSE) | Depends on individual Sub Orders | No change | Flexible behavior (existing design) |
Sub Orders linked via Maintenance If Main Order flag = FALSE | FALSE | All Sub Order flags set to FALSE | ✅ Editable | Retain original values | Enforced consistency |
Transaction Currency changed on Main Order If Main Order flag = TRUE | TRUE | TRUE | ❌ Read-Only | From Main Order | Recalculate prompt if Sub Orders not in use; ❌ Error if in use |
Transaction Currency changed on Main Order If Main Order flag = FALSE | FALSE | FALSE | ✅ Editable | From master (based on currency date) | Prompt shown → Recalculation applies independently |
Site Changed (Site Currency ≠ previous) If Main Order flag = TRUE | TRUE | TRUE | ❌ Read-Only | Copied from Main Order | Recalculate prompt shown |
Site Changed (Site Currency ≠ previous) If Main Order flag = FALSE | FALSE | FALSE | ✅ Editable | Loaded from master | Recalculate prompt shown |