Entitlement import files
Definitions of each type of record that may be imported into an AppClarity entitlement repository.
The following tables show each category, sub-category, and the record types that can be imported. The 11 sub-categories are visible as tabs in the home page of an entitlement repository.
Note
The Manual uploadfeature available in AppClarity 6.1 no longer exists in AppClarity 7.x . When importing entitlements you must use the Entitlement.tsv connector.
Entitlement information is managed using various fields, in 11 sub-categories (one of which is not used), which map directly to columns in a import file. TSV and CSV files are both supported, but the documentation here refers to TSV.
Import files must have the following:
All columns must have column headings
Column headings must not have spaces
The Version column must be named Version and not Version/Number as it did in some older export files
Please note the following:
When using a simple editor like notepad ensure you leave the tab/comma delimiters between headings
Any column heading with an incorrect name is ignored; this allows additional columns to be used as notes or extra information
Columns can be in any order; it may help you to standardize on the column order listed below
In the tables below, mandatory means the column and value are expected. If a mandatory column or value is omitted you will see caveats reported
Ensure date formats are correct. When editing a file using Excel, the date columns should have their number format set asTextinstead ofDate, otherwise you will see integers instead of dates when saved as a TSV/CSV file.Textensures that whatever you type will remain unchanged.
Note
Use the ISO 8601 date format for date fields: yyyy/mm/dd or yyyy-mm-dd
When exporting dates from other SQL servers, the format may be different due to the region settings of the source server, for example mm-dd-yyyy for English (US). To ensure dates are imported correctly, changing the data format to ISO 8601 is recommended, or you should ensure the SQL Server instance hosting the AppClarity database uses the same or equivalent region settings. In most cases SQL Server will intelligently convert dates, but you should review your imports to be sure.
Tip
You should test your system with a few test entitlements before you do any bulk imports.
Base Entitlement (1)
Column | Mandatory | Default if not specified | Datatype | Notes | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EntitlementId | No | Auto-generated GUID | String | Identity id of this entitlement. This is auto-generated as a GUID if this entitlement was created in the user-interface. | ||||||||||||||||||||||||
ParentEntitlementId | No | String | Identity id of the parent entitlement linked to this entitlement. This is auto-generated as a GUID if this entitlement was created in the user-interface, and it is linked to a parent Entitlement. If ParentEntitlementId is specified, then you must have a matching EntitlementId earlier in the import file, or you already know the EntitlementId has been imported previously. From AppClarity 8.1 an entitlement can only have one parent or none. When exporting from AppClarity 5.2, if any entitlement has multiple parents then only one will be used, and the ParentEntitlementId of the others will exported into the comments column, and appear in the comments field when imported into AppClarity 8.1. WarningFinding the EntitlementId from the database or UI is not supported currently. | |||||||||||||||||||||||||
EntitlementType | Yes | String | Valid values are:
Once imported it can not be changed. | |||||||||||||||||||||||||
Identifier | No | String | Appears in pages as Custom identifier. Enter any alphanumeric text that will help identify the entitlement. | |||||||||||||||||||||||||
LicenseType | No | Perpetual for License and Maintenance. NA for Agreement. | String | Valid values are:
Agreement is always 'NA' | ||||||||||||||||||||||||
StartDate | No | Calulated as EndDate - DurationInMonths for Agreements and Subscription. If neither is set then today’s date. If DurationInMonths is not set, then 12 is the default. Today's date for Perpetual. | Date | When the entitlement starts applying. | ||||||||||||||||||||||||
EndDate | Yes/no depending on other fields. | Calculated as StartDate + DurationInMonths for Agreements and Subscription. If DurationInMonths is not set then 12 is the default. It is set only for Agreements and Subscription. | Date | This is last date of entitlement. | ||||||||||||||||||||||||
DurationInMonths | No | Calculated as EndDate - StartDate. If either of these are missing then 12 is the default. It is set only for Agreements and Subscription. | Decimal | For how long the entitlement is applicable after start date. For example, if start date if Jan 14, 2016 and Durationmonths is 24 months then end date would be Jan 14, 2018 | ||||||||||||||||||||||||
ProductSKU | No | String | Product SKU | |||||||||||||||||||||||||
IsEntitlementProduct | No | FALSE | Boolean | Is the entitlement entered an SKU based from Catalog | ||||||||||||||||||||||||
Vendor | Yes if ProductSKU is not present for License and Maintenance. Yes for Agreement. | String | Vendor. The name of product Vendor. | |||||||||||||||||||||||||
Title | Yes if ProductSKU is not present for License and Maintenance. No for Agreement. | String | For license and maintenance pages, this is Product title; the name of the product. For agreement page, this is Name. | |||||||||||||||||||||||||
Version | No | String | For license and maintenance pages, this is Version; the version of product. Version can be given in any format depending on chosen Version Type. For agreement page, this is Number. | |||||||||||||||||||||||||
VersionType | No | AllVersions | String |
| ||||||||||||||||||||||||
Edition | Yes if ProductSKU is not present for License and Maintenance. No for Agreement. | String | Edition. The name of product edition. | |||||||||||||||||||||||||
IsEditionBased | No | FALSE | Boolean | If edition is available then True otherwise False. | ||||||||||||||||||||||||
IsRenewal | No | FALSE | Boolean | Entitlement types that needs to be renewed (has an end date). | ||||||||||||||||||||||||
IsUpgrade | No | FALSE | Boolean | This specifies rights, if upgrade rights are allowed. | ||||||||||||||||||||||||
IsQuantityUnlimited | No | FALSE | Boolean | If the number of licenses purchased is unlimited then True otherwise False. If True then Quantity is ignored. | ||||||||||||||||||||||||
Quantity | Yes if IsQuantityUnlimited is FALSE for License and Maintenance. No for Agreement. | Integer | Number of licenses purchased. | |||||||||||||||||||||||||
MetricType | No | Device | String | Valid values are:
Agreement is always 'NA' | ||||||||||||||||||||||||
OtherMetric | No | String | Used only if Metric Type is 'Other' | |||||||||||||||||||||||||
IsVersionUpgradeRight | No | TRUE | Boolean | Whether the entitlement is applicable on the later versions of chosen product version. Only applicable, and automatically enabled, if Vendor is Microsoft Corporation, and SA is selected. | ||||||||||||||||||||||||
IsVersionUpgradeRightPersistent | No | TRUE | Boolean | Version upgrade persists after maintenance is expired. If this right is False, then the license rights resets back to original version at the time of purchase of perpetual license when maintenance expires. Only applicable, and automatically enabled, Vendor is Microsoft Corporation, and SA is selected. | ||||||||||||||||||||||||
IsVersionDowngradeRight | No | FALSE | Boolean | Whether the entitlement is applicable on the previous versions of chosen product version. By default these rights are active | ||||||||||||||||||||||||
IsVersionDowngradeRightPersistent | No | FALSE | Boolean | Version downgrade persists after maintenance is expired. If this right is False, then the license rights resets back to original version at the time of purchase of perpetual license when maintenance expires. | ||||||||||||||||||||||||
IsEditionDowngradeRight | No | FALSE | Boolean | Whether the entitlement is applicable on the previous editions of chosen product edition. | ||||||||||||||||||||||||
IsEditionDowngradeRightPersistent | No | FALSE | Boolean | Edition downgrade persists after maintenance is expired. If this right is False, then the license rights resets back to original edition at the time of purchase of perpetual license when maintenance expires. | ||||||||||||||||||||||||
IsMultiInstanceRight | No | FALSE | Boolean | Whether the same license is applicable on multiple installations. | ||||||||||||||||||||||||
IsSoftwareAssurance | No | FALSE | Boolean | SA is applicable only for Microsoft Corporation products. On selecting SA Version upgrade rights are automatically set to True. | ||||||||||||||||||||||||
SecondaryUseCountRight | No | FALSE | Boolean/Int | This refers to the use right to allow users to use same product on their second device free of cost (example one office desktop and one home laptop) with their single device-based license | ||||||||||||||||||||||||
Currency | No | USD | 3 chars | ISO 4217 currency code. The code must match one of the codes already existing in the database. Please contact 1E if you need to add additional codes to the database.
| ||||||||||||||||||||||||
UnitCost | No | 0 | Decimal | Cost of licence per unit | ||||||||||||||||||||||||
TotalCost | Yes for Agreement. | For License and Maintenance, the value is automatically calculated if Unit Cost Type is OnceOff, and values are povided in Quantity and Unit Cost. | Decimal | For Agreement, this value must be supplied. It appears as License Cost in the Agreement page. For License and Maintenance, do not provide a value. It will be automatically calculated if Unit Cost Type is OnceOff, and values are povided in Quantity and Unit Cost. | ||||||||||||||||||||||||
UnitCostType | No | OnceOff | String | Valid values are:
| ||||||||||||||||||||||||
Comments | No | String | Used for any comments you want to import. If an AppClarity 5.2 entitlement includes any of the following product details, these will be exported in the comments field:
ParentEntitlementId - In AppClarity 7.0 an entitlement can only have one parent or none. When exporting from AppClarity 5.2, if any entitlement has multiple parents then only one will be used in the ParentEntitlementId column, and the ParentEntitlementId of the others will appear here in the Comments column. | |||||||||||||||||||||||||
MasterAllocationPercentage | No | Integer | Not supported. This is to handle complex agreement scenarios; currently not supported. There are Agreements where total amount is fixed and can be distributed among various entitlements in that agreement. This defines the percentage of that amount allocated to this entitlement. |
FOSSDetail (3)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
FossDetail.FossDetailId | No | String | WarningDo not use for imports. | |
FossDetail.IsFoss | No | Boolean | This value is true only if the granted rights fulfil the requirements of the definition of free software maintained by the Free Software Foundation (FSF) | |
FossDetail.CopyLeft | No | String | This value provides information on whether derivative works (which are always allowed for open source software) are themselves required to be open source software. There are three allowed values:
| |
FossDetail.TrademarkRestrictions | No | String | FOSS trademark restrictions |
Internal Order (4)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
InternalOrder.InternalOrderId | No | String | WarningDo not use for imports. | |
InternalOrder.Number | No | String | Free text but recommendation is integer | |
InternalOrder.LineItemNumber | No | String | Free text but recommendation is integer | |
InternalOrder.Date | No | Date | Date |
Licensor Detail (5)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
LicensorDetail.LicensorDetailId | No | NULL | String | WarningDo not use for imports. |
LicensorDetail.Name | No | NULL | String | The name of the licensor, could be the vendor or a VAR |
LicensorDetail.Number | No | NULL | String | This is intended as a reference to a licensor source other than an invoice, e.g. to an on-line portal of license purchases. Free text but recommendation is integer |
LicensorDetail.Date | No | NULL | Date | Date |
Miscellaneous Details (6)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
MiscellaneousDetail.MiscellaneousDetailId | No | NULL | String | WarningDo not use for imports. |
MiscellaneousDetail.ManagementGroup | No | NULL | String | The entitlement can be associated with the specified Management Group. WarningThe management group must already exist. NoteIn the current version of AppClarity, associations with management groups do not affect compliance calculations. Calculations apply to all devices in the repository, irrespective of Management Groups. |
MiscellaneousDetail.BusinessUnit | No | NULL | String | May be covered by Management Group, but may not - in the VA, this is the Pillar the software is associated with. (Kapil Makhija) |
MiscellaneousDetail.Sponsor | No | NULL | String | Name of the person who manages the budget associated with an agreement (likely used only on agreements, but could be extended to individual entitlements) |
Audit Detail (7)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
AuditDetail.AuditDetailId | No | NULL | String | WarningDo not use for imports. |
AuditDetail.Auditor | No | NULL | String | Names of organisations entitled to perform the audit including, if appropriate, the licensor organisation and third party organisations according to what was agreed in the contract. |
AuditDetail.Frequency | No | NULL | String | Definition of the highest agreed frequency of the audit expressed in months |
AuditDetail.Tool | No | NULL | String | Name of the tool(s) which are approved for use in the audit. |
AuditDetail.NoticePeriod | No | NULL | Integer | Notice period expressed in months |
AuditDetail.Scope | No | NULL | String | Defines what part of the software customer organisation is allowed to be audited. |
AuditDetail.Clause | No | NULL | String | Provides additional information on what could trigger the audit. |
Contract (8)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
Contract.ContractId | No | NULL | String | Identity id of the contract. This is auto-generated as a GUID if the entitlement was created in the user-interface. WarningDo not use for imports. |
Contract.Data | No | NULL | String | WarningDo not use for imports. |
Contract.Name | No | NULL | String | Name of the contract. |
Contract.Number | No | NULL | Integer | Contract number |
Contract.StartDate | Yes | NULL | Date | When the contracts starts applying |
Contract.Link | No | NULL | String | A link to a referenced contract (not uploaded) |
Contract.Resource | No | NULL | String | Name of the person who manages the agreement (likely used only on agreements, but could be extended to individual entitlements) |
Contract.TechnicalResource | No | NULL | String | Name of the person who knows the technical details behind licensing, or product information for an agreement (likely only used on agreements, but could be extended to individual entitlements) |
Contract.FileName | NULL | If there is any attachment - then what? (currently not supported through tsv file) |
Direct Supplier (9)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
DirectSupplier.DirectSupplierId | No | NULL | String | WarningDo not use for imports. |
DirectSupplier.Number | No | NULL | String | Free text but recommendation is integer |
DirectSupplier.LineItemNumber | No | NULL | Integer | LineItemNumber |
DirectSupplier.Date | No | NULL | Date | Date |
Invoice Detail (10)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
InvoiceDetail.InvoiceDetailId | No | NULL | String | WarningDo not use for imports. |
InvoiceDetail.Number | No | NULL | String | Free text but recommendation is integer |
InvoiceDetail.LineItemNumber | No | NULL | Integer | Line item number |
InvoiceDetail.Date | No | NULL | Date | Date |
Purchase Order Detail (11)
Column | Mandatory | Default | Datatype | Notes |
---|---|---|---|---|
PurchaseOrderDetail.PurchaseOrderDetailId | No | NULL | String | WarningDo not use for imports. |
PurchaseOrderDetail.Number | No | NULL | String | Free text but recommendation is integer |
PurchaseOrderDetail.LineItemNumber | No | NULL | Integer | LineItemNumber |
PurchaseOrderDetail.Date | No | NULL | Date | Date |