In some cases, users need to bind the financial data in a report against the full account name in the Chart of Accounts or Standard Chart of Accounts. This is necessary whenever duplicate account names exist in the same report (P&L, Balance Sheet, etc). The duplicate account names might be segregated by section (existing in both Income vs COGS) or might be subaccounts found in multiple sections, such as the example below:
In a traditional template, where the CoA or SCoA is being rendered based upon the %%accounts%% macro (or any of its variations), the financial data will bind to the account names based upon the "full account name". Looking at the above example, in a traditional template, the $50,000 from "Carpet" would bind to the corresponding account because the %%accounts%% macro is binding the value based upon the full account name called "Income:Residential Sales:Carpet".
Similarly, when the $150,000 value is bound to the second "Carpet" account this is because the binding looks to the full account name called "Income:Commercial Sales:Carpet", as opposed to just looking for a "Carpet" account anywhere in the Profit & Loss report.
When Issues Can Arise
An issue can arise when users with duplicate account names in a single report type (P&L, Balance Sheet, etc) don't utilize the %%accounts%% macro to automate the CoA or SCoA generation in a report template.
For example, there are times when listing out the account names comes in handy in a report template; such as desiring to show all account names at all times even if no value exists for the account. Under this methodology a user must actually key in all of their account names on the report. Therefore, the binding of the financial data to the account name is not controlled by the %%accounts%% macro, which uses the full account name path.
ie: "Income:Commercial Sales: Carpet"
Instead, the financial data is bound simply by the account name itself.
The issue arises when the users list out the account names in the report template (verses using the %%accounts%% macro) AND has duplicate account names at any place in the report. Another example of this would be if a user is reporting based upon a SCoA and lists out the "Unmapped" account for each account type section. The "Unmapped" account is not unique and would be considered a duplicate if it is manually listed out.
When a user needs to list out the account names in a report template and duplicates exist, a resolution can be found by entering the full account name string in the chart of accounts column (Column A). The format shown below must be precise, even case sensitive, but if all account names are entered in the following format this will make the financial data bind against the full account name, based upon the account name path.
The below screenshot (available as a download at the bottom of this article) shows how to enter the (case sensitive) full account name format into a report template, when needed.