1. Introduction#
The "Template Configuration" feature was created to facilitate and save time for EINVOICING portal users regarding modifications to field configuration, labels, and form layout.It applies only to default forms and not to custom ones.💡
Access to this feature is granted only to those who have the admin role on the platform!
2. Instructions#
Then, select the pencil icon (Template Configuration)Available Actions#
Α. Template Configuration:Ability to customize the template according to the specific needs of the client. This feature allows the configuration of fields, labels, and template layout.Β. Configuration File:
This feature allows the import of an external JSON file, formatted by another company within the EINVOICING portal. The icon appears only when modifications have been made to the default template. By hovering over it, the number of modifications made to the template is displayed.•Remove existing configurations:By selecting this setting, the user removes all changes made to the template so far and keeps only the modifications from the Formatting File they upload.•Update Configurations: By selecting this setting, the user retains all the changes made to the template and updates it with the Formatting File they upload, adding the new modifications to the existing ones. If the user has modified a specific field X and uploads a file that also modifies field X, then chooses to update the formatting, the template will keep the change from the uploaded file.• Changes in the template's visualization affect all issued documents, including those that have been transmitted on a previous date.• The options "Remove Existing Formatting" and "Update Formatting" are only displayed if changes have already been made to the template through the "Form Formatting" feature.A. Template Configuration#
By selecting Template Configuration, we navigate to the section where we can perform:
• Formatting on each field individually
• Download the Formatting file to upload changes to another company or to the production environment
• Reset all the formatting changes we have made📌
The fields we see in the template are those that are filled in the specific JSON file. The changes apply to all templates, both past and future.
Field Configuration#
To format a specific field of the document, select the right column of the field.1.
Label: Ability to change the field title. The user is provided with the option to change the field name, both in English (en) and Greek (el), modifying the corresponding text before and after in each case.
2.
Order: Ability to change the display order of the specific field in the template.
3.
CssClasses: Ability to insert Bootstrap 4.1 for formatting the field.
• For right allignment : text-right
• For left allignment: text-left📌
Note: It only accepts commands related to Bootstrap.
4.
Format: Ability to select the display and layout method of the data. For example, the number of decimals to be displayed in the field, date format, etc.
5.
DefaultValue: The user is given the ability to set a default value for the specific field in the template.
6.
IsVisible: The user defines whether they want the field (title + value) to be displayed in the template.
7.
DisplayLabel: The user defines whether they want the field title to be displayed.
8.
DisplayNullValues: The user defines whether the field should be displayed when it has a null value.
9.
DisplayZeroValues: The user defines whether the field should be displayed when it has a 0 value.
10.
IsSecondaryField: It only applies to the details, and by selecting it, the field is moved to the second line.
11.
Reset: By selecting reset, the user restores the field to its original default values.
12.
Close: With this button, the user closes the field formatting without saving the changes.
13.
Save: All changes made to the field at that specific moment are saved.
Invoice Customization#
In the case where there are no documents in the template, I can upload a Formatting File by clicking on the "Management / Document Configuration" toolbar.Another feature supported at this point is document configuration through CSS:• Changing colors (section group, font):root {
--main-bg: #1381C5 !important;//color in section group
--main-bg-border: #0371b5 !important;
--main-bg-font-color: #fff !important; //font color in section groups
}.invoice .(The className of the field you want to hide.) {
display: none !important;
}**• Changing the font size and line spacing **.invoice * {
font-size: 10px;
line-height: 1.1em;
}.invoice .qrcode img {
height: 100px; }Β. Configuration File#
The formatting file that is created is a JSON file, which consists of objects that reflect the sections of the template where changes have been made (e.g., header, identity...). The fields "name" and "code" must always have the same value. Each object consists of the same fields.Fields:
"Name": "EliseCore.Details.Description1", // string
"Code": "EliseCore.Details.Description1", // string
"Label": "{en=Description|el=Περιγραφhh}", // string
"Order": 31, // integer
"CssClasses": "text-left", // string
"Format": "", // string
"IsVisible": true, // boolean
"DefaultValue": "", // string
"ValueIfNull": "", // string
"DisplayLabel": true, // boolean
"DisplayNullValues": false, // boolean
"DisplayZeroValues": true, // boolean
"IsSecondaryField": true // booleanThe "Format" field applies only to numeric fields (decimal, integer, long) and date fields (DateTime). It is ignored for other types of fields (text).For numeric types:
"0" Zero placeholder: Replaces the zero with the corresponding digit if one is present; otherwise, zero appears in the result string."#" Digit placeholder: Replaces the "#" symbol with the corresponding digit if one is present; otherwise, no digit appears in the result string.
Note that no digit appears in the result string if the corresponding digit in the input string is a non-significant 0. For example, 0003 ("####") -> 3.
"." Decimal point: Determines the location of the decimal separator in the result string.Examples:
1234.5678 ("00000") -> 01235
0.45678 ("0.00") -> 0,46
1234.5678 ("#####") -> 1235
0.45678 ("#.##", fr-FR) -> ,46
0.45678 ("0.00", fr-FR) -> 0,46
3 ("####") -> 3."d" The day of the month, from 1 to 31.
"dd" The day of the month with leading zeros, from 01 to 31.
"ddd" The abbreviated name of the day of the week. (Δευ, Τρί, Τετ, κλπ.)
"dddd" The full name of the day of the week. (Δευτέρα, Τρίτη, κλπ.)
"M" The month, from 1 to 12.
"MM" The month with leading zeros, from 01 to 12.
"MMM" The abbreviated name of the month. (Ιαν, Φεβ, Μαρ, Απρ, κλπ)
"MMMM" The full name of the month. (Ιανουάριος, Φεβρουάριος, Μάρτιος, κλπ)
"yy" The year, from 00 to 99.
"yyyy" The year as a four-digit number.
"h" The hour, using a 12-hour clock from 1 to 12.
"hh" The hour, using a 12-hour clock with leading zeros from 01 to 12.
"H" The hour, using a 24-hour clock from 0 to 23.
"HH" The hour, using a 24-hour clock with leading zeros from 00 to 23.
"m" The minute, from 0 to 59.
"mm" The minute with leading zeros, from 00 to 59.
"s" The second, from 0 to 59.
"ss" The second with leading zeros, from 00 to 59.
"tt" The AM/PM designator. (π.μ., μ.μ.)
FullDateTimePattern: dddd, MMMM d, yyyy h:mm:ss tt
Example: Δευτέρα, Μαΐου 28, 2012 11:35:00 π.μ.
LongDatePattern: dddd, MMMM d, yyyy
Example: Δευτέρα, Μαΐου 28, 2012
LongTimePattern: h:mm:ss tt
RFC1123Pattern: ddd, dd MMM yyyy HH:mm:ss GMT
Example: Δευ, 28 Μαΐ 2012 11:35:00 GMT
ShortDatePattern: M/d/yyyy
ShortTimePattern: h:mm tt
SortableDateTimePattern: yyyy-MM-ddTHH:mm:ss
Example: 2012-05-28T11:35:00
UniversalSortableDateTimePattern: yyyy-MM-dd HH:mm:ssZ
Example: 2012-05-28 11:35:00Z
YearMonthPattern: MMMM yyyy