Accounting parameter values may have relations as described in the table below.
By default, accounting parameter values do not have any relations to any other accounting parameter values. This means that when an accounting code is selected in the UI, the row cells in other columns will not change and the user can select any other code in those cells.
It is possible to set up relations in Settings --> Accounting Parameters --> Click on an accounting parameter -->Relations tab
There are 9 possible effects in the invoice lines accounting parameters depending on the accounting parameter relation settings.
- No relation set
When the account is set, no other related accounting parameter is required or set automatically. - Requirement (UI: Require specific)
- If 1 requirement is set it will be selected automatically.
- If 2 or more requirements are set, the user must select one of them.
- Suggestion (UI: Suggest)
This means the user may select one of the suggestions OR any other code OR leave the cell blank.
- If 1 suggestion is set, it will be selected automatically.
- If 2 or more suggestions are set, none will be selected automatically but they will be displayed as suggestions when the user selects the cell.
- AnyValue (UI: Require Any)
The user must select any of the available values. Leaving the cell blank is not permitted. - NotApplicable (UI: Forbid)
The cell will be disabled and it will not be possible to select any of the values. - RequirementOrNoValue (UI: "Requirement or no value", "krav eller ingen verdi")
- If 1 requirement is set it will be selected automatically. The user may still remove the cell value to leave a blank cell.
- If 2 or more requirements are set, the user must select one of them OR leave the cell blank.
Invoice Line GUI Effects
Here we see 5 types of relations between Account and VAT Code and Interim: [
Requirement, Suggestion, NotApplicable, AnyValue, RequirementOrNoValue ]
Example 1: Operation Requirement
However, if the accounting code 123
has a relation of operation "Requirement" to VatCode 4
, then this VatCode will be automatically selected for the user.
Example: When selecting a code with required relations, the required relations are set automatically and locked.
Example 2: Operation Suggestion
An accounting parameter value 123
of type "AccountingCode" may have multiple relations to individual dimension value codes, 4,5,6
all with "operation" set to Suggestion
. As a result, the user will see those suggestions 4,5,6
appear in the dimension value cell whenever the Accounting Code 123
is selected in the UI.
Note:
- If there is one relation with operation suggestion, it will be selected automatically.
- If there are 2 or more relations with operation suggestion, the suggestions will not be selected automatically but only be listed when clicking in the cell.
- It is still possible to select any other value in the dimension value cell without restrictions.
Example: When selecting a code with suggested relations, each suggestion is listed.
Example 3: Operation AnyValue
An accounting code 123
with relation to VatCodes of operation AnyValue
will accept any VatCode except blank.
Example: Operation: AnyValue (not blank)When the user selects a code with AnyValue
as relation, some value other than blank has to be selected.
Example 4: Operation NotApplicable
An accounting code 123
with relation to VAT Code and operation NotApplicable
will disable the VatCode field.
Example: VAT Code and Interim has been disabled since the relation operation was set to NotApplicable
for both
Allowed operations for each relation
For example: An AccountingCode may have a relation to VAT Code with operation Requirement, Suggestion, NotApplicable or AnyValue
Accounting Parameter |
Transaction Type |
Category Type |
VAT Code |
Interim |
Dimensions |
AccountingCode |
|
|
|
|
|
Fixed Asset |
|
|
|
|
|
Project |
|
|
|
|
|
Customer |
|
|
|
|
|
Supplier |
|
|
|
|
|
VAT Code |
|
|
|
|
|
Dimensions |
|
|
|
|
|
Creating such a relation will result in difficulties when selecting accounting parameters in the UI.
We do not recommend creating relations between account types since the UI will then automatically switch from the selected account type to the related account type which may not be desired.
Effect of operations in API and UI
The relations and operations determine which invoice line columns are automatically filled in (required) or contain suggestions (suggested) codes and which are disabled or allows any value.
Operation |
Integration APIImport |
Semine Settings |
Semine Invoice Line GUIfor controllers |
Integration APIExport |
|
Value must be filled in. Max 1 requirement relation per relation type. |
Same as Integration API Import |
The related "Requirement" parameter value is filled in automatically for the related column |
Value must be filled |
|
Value must be filled in. Relations to multiple suggestions is possible. |
Same as Integration API Import |
The user must select among all suggested values or blank. |
Value may be filled |
|
Value must be blank. |
Same as Integration API Import |
The user cannot enter any value in the cell.The cell is disabled for the related column. |
Value must be blank |
|
Value must be blank. |
Same as Integration API Import |
The user must select any value in the given cell.Cannot select blank. |
Value must be filled |
Code example
Below is an example of an AccountingCode-A
with relations to cDimensionCodeValue-R1
, AccountingCode-B
, VatCode-R1
and TransactionTypeCode-R1
.All relations of the same type
, must have the same operation
.
- Dimension
The relation totype: Dimension
needs an extra propertytypeCode:
which is the name of the dimension in addition the regularcode
property which is one of the values of that dimension. - Interim
As hinted from the code name below, anInterim
code is really just a regular GL Accounting Code where the relation typeInterim
is used - VatCode
TheVatCode
has to be a regularVatCode
available in the system. - TransactionTypeCode
TheTransactionTypeCode
has to be a regularTransactionTypeCode
available in the system.
[
{
"code": "{{AccountingCode-A}}",
"status": "Active",
"relations": [
{
"typeCode": "{{cDimensionCode-A}}",
"code": "{{cDimensionCodeValue-R1}}",
"type": "Dimension",
"operation": "Requirement"
},
{
"code": "{{AccountingCode-B}}",
"type": "Interim",
"operation": "Requirement"
},
{
"code": "{{VatCode-R1}}",
"type": "VatCode",
"operation": "Requirement"
},
{
"code": "{{TransactionTypeCode-R1}}",
"type": "TransactionType",
"operation": "Requirement"
}
],
"description": []
}
]
Comments
0 comments
Article is closed for comments.