Validation function provides a toolset for validation of the database, publish process or individual presentations. A set of validation rules may be applied and result will be presented as reports.
...
Validation rule name | Description | Options | Mandatory |
---|---|---|---|
BackingPartRelation | Used to validate that backing part relation between presentation and backing part is correct. If a few errors are found, a manual edit to remove and restore backing part relation will correct it. When many items are found perhaps support is needed to correct data in the database in other manners. The Mandatory setting makes the validation turned on for publication at all times. | none | Yes |
CatalogueConfiguration
| Validation will check catalogue root nodes according to the catalogue.config file.
| SuppressModel | |
CatalogueInheritedSpecification | Check for items without specifications inherited from containing catalogue. Note: This validation rule is added in version 4.5.2. | SpecTypeCode PartSkipItemStatus PresentationSkipItemStatus | |
CatalogWithoutDocumentation | Used to validate that a catalogue has documents attached at a defined location. | SkipItemStatus DocumentNodePIRegEx | |
CatalogWithoutSpareParts | Used to validate that a catalogue has part assemblies attached at a defined location. The catalogue is searched for nodes matching the regular expression. Such nodes may not lack presentations, or have presentations with an insufficient item status. | SkipItemStatus DocumentNodePIRegEx PartModuleItemStatusCode PartItemStatusCode PartModuleTypeCode | |
ContentSetFileValidation | Check for files which does not have file extension ending, eg missing .pdf in the file name. This validator can be configured for Documents, Images and ContentSets. | ||
DocumentFileValidation
| Check for strange Document disk file names and non-existing files Note: This validation rule is added in version 4.5.
| none | |
DocumentDiskSizeValidation | Check for large documents. Warning option sets file size in MB for warning, Error option sets file size in MB for error. Default is 10 and 40 MB. Note: This validation rule is added in version 5.3.0 | Warning Error | |
DocumentUrlValidation | Check for strange Document Url names, when a document file is found by an Url to an external server Note: This validation rule is added in version 4.5. | none | |
DuplicatePartNumber | Check for duplicate part numbers. Note: This validation rule is added in version 5.1.8. | none | |
EmptyReplacement | Used to validate that replacements are not empty, a part is not replaced by null. Correct any errors by removing or completing the replacement. Recommended to have this turned on for publication. | none | Yes |
ImageFileValidation | Check for large images. Warning option sets file size in MB for warning, Error option sets file size in MB for error. Default is 1 and 2 MB. Recommended to have this turned on for publication. | Warning Error | |
ImageFileValidation
| Used to validate that images have an image size, height or width may not be null or zero. It is recommended to have this turned on for publication.
| none | |
ImageDiskSizeValidation | Check for large documents. Warning option sets file size in MB for warning, Error option sets file size in MB for error. Note: This validation rule is added in version 5.3.0 | ||
LargeChainReplacement | Used to validate if a replacement has more than X replacement parts, where X is defined in the settings dialogue (see https://signifikant.atlassian.net/wiki/spaces/ASKB/pages/472842241/Using+Replacements+and+No+Longer+Available+functionality#Limit-number-of-replacements). Note: This validation rule is added in version 5.1.6 | MaxChain DenyOptionalReplacements | |
LoopingReplacement | Used to validate if replacements are looping, e.g. A replaced by B which is replaced by A. Correct any error by breaking replacement chain loop. Then run validation again to conform that all loops are indeed removed. Note: This validation rule is added in version 4.5. | none | Yes |
PresentationItem | Check for mismatch in relations Presentations - Parts, Part modules, Documents etc. Validate that the database is consistent by comparing related database tables for inconsistencies. This is a technical check and failure can not be solved by the editor, but need support. | none | |
PresentationName | Used to validate that presentations have a name. The name of a presentation is normally a vital piece of data, but sometimes when IncludeInheritNodeInfo attribute is set, a presentation name is still displayed from a related node name. For a few validation errors, use the Manager to manually set a proper name. When many presentations are missing the name, import functions may be used to copy names from other systems, i.e. during a project start. | SkipItemStatus IncludeInheritNodeInfo Skip SuppressNotInUse | |
PresentationSpecification | Used to validate that presentations hare mandatory specifications according to definition of mandatory specifications. See Defining enumerables, mandatory specifications and specification columns in Manager. | SkipItemStatus Skip | |
PartModuleIllustration | Used to validate that part assemblies have an illustration. Review all reported items and provide an illustration, in the Manager. | SkipItemStatus SkipKits | |
PartModuleHotspot
| Used to validate that part assemblies have hotspots that matches part list, the hotspot id and the row position shall match. Four different scenarios are identified.
| SkipItemStatus SkipKits | |
PartModuleMissingHotspot | Check for part assemblies with illustrations, where rows have no corresponding hot spot. Provide a match row/hot spot with the Manager. | SkipKits | |
PartModuleWithoutHotspot | Look for part assemblies which has an illustration but no hotspots at all. Provide a match row/hot spot with the Manager. | SkipKits | |
RequiredSpecification | Check for items without specifications. Suppress items with a ItemStatus, include only some specification types by Code, include items of specified presentation type/base type. | SpecTypeCode SkipItemStatus PresentationType | |
SpecificationReplacement | Check for parts with specification of type with PersistentIdentity according to the SpecPIValue, and at the same time contains replacements. | SpecPiValue SkipItemStatus | |
SpecificationValue | Check specification values by comparing the specification type with the string, numerical or text value of the specification. For a text type, the text value may not be undefined. For a data value the string value may not be null. Errors may be corrected manually in the specification repository. | ||
MandatoryLanguage | Check for texts without sufficient translations, a list of Mandatorylanguage codes may be considered - or all language codes. | MandatoryLanguage | |
MissingTranslations | Texts without any translation is reported. Use Manager to check if a text is not in use, delete such texts. else provide translations on all languages, or one language independent text. | ||
UnusedSpecificationType | Check for unused specification types, where no specification is found of the type | none | |
UnnamedSpecificationType | The database contains unnamed specification types, provide a name in the Manager. | ||
RegionSpecification | Check for parts with region different from that of containing catalogue. Note: This validation rule is not active. | RegionTypeCode PartItemStatusCode SkipItemStatus | |
ReferenceTable | Check for mismatch in relations tables. First instance is the PresentationImages relation table where a missing constraint may accept that the Image_Id is zero. | none |
Options
Option key | Option value | Description | Sample |
---|---|---|---|
DocumentNodePIRegEx | regex | A regex to identify a node where information is to be found. The regex will be matched on the persistent id of the node. | %_Documents |
SparePartNodePIRegEx | regex | A regex to identify a node where information is to be found. The regex will be matched on the persistent id of the node. | %_SpareParts |
empty | empty-value | Placeholder, to create elements in the configuration file as support for the user. It is never active. | |
MandatoryLanguage | comma separated list of language codes | A list of languages that must exist in translation for the translation to be validated ok. Separate values by comma, space, semi colon. | en-GB,sv-SE |
Skip | SampleInfoBaseType | Application information base type not to consider when validating data. | Part, Document, ContentSet |
SkipKits | true / false | If option is true, validation will not be executed on part assemblies which has kit = true. | |
SkipItemStatus | text | If option is true, presentation will not be validated if it has item status = text. | |
SuppressNotInUse | true / false | If true, item will not be checked provided that there are no references to the item. This option is added in version 5.1. | |
IncludeInheritNodeInfo | true / false | If true, the attributes inherited from node will be included in the validation. | |
SuppressModel | comma separated list of identities | Skip catalogues with the listed identities. | |
SpecTypeCode | code | Defines the code of a specification type that will be validated | Region, Code1, Code2 |
PartSkipItemStatus | ItemStatus | Parts with ItemStatus will be skipped. Separated by comma. | |
PresentationSkipItemStatus | ItemStatus | Presentations (catalogues) with ItemStatus will be skipped. Separated by comma. | |
SpecPiValue | code | Supply of specification type persistent identity to use in the validator db search | |
PresentationType | comma separated list of code | Defines presentation types or base types | Part, Kit |
PartModuleItemStatusCode | comma separated list of code | Skip part modules with ItemStatus according to the Code value. | Publish,PublishAll |
PartItemStatusCode | comma separated list of code | Skip parts with ItemStatus according to the Code value. | PublishPart,PublishpartAll |
PartModuleTypeCode | comma separated list of code | Skip part modules with presentation types with a code in the value list. | Kit |
DocumentItemStatusCode | comma separated list of code | Skip documents with ItemStatus according to the Code value. | Publish,PublishAll |
RegionTypeCode | code | Region is located by specification type code | Region |
MaxChain | integer | Max number of allowed replacement parts, 0 meaning no limit | 10 |
DenyOptionalReplacements | true / false | Check for optional replacements and deny |
...
When making status change to one or several presentations
It is possible to mark itemstatuses to require validation. When changing item status to a status where validation must be successful will disable the possibility to add that item status to the item if validation fails.
Info |
---|
Note that validation cannot be executed on an item before it has been saved the first time. So changing item status on a new item before it is saved is not possible. From version 5.2 it will be blocked. |
...
Configuration of validation is controlled by the file located in C:\ProgramData\Signifikant\Assert\validation.config.
The configuration contains general settings and a set of rules, each for a separate validation task.
...
Info |
---|
Mandatory validationA setting attribute Mandatory enables a validation regardless of the Enable attribute, and regardless of the Validate checkbox for a publication. I.e. the Backing Part relation task may be configured to be run at every publish, regardless of publication settings. |
...
Validation rule | Usage | Options | Description of option | ||
---|---|---|---|---|---|
PresentationName | Will check that presentation has a name. |
| Accept that presentation miss a name, where it is fetched from the referring node. | ||
| Skip this check on the named presentation types. | ||||
Translation | Will check translations for all texts which are in use. A texts must have translations for all languages in the mandatory list. |
| Consider validation successful if translation exist for the named languages. Languages must correspond to data languages defined in Manager. | ||
PresentationSpecification | Compare specifications defined in specification-columns.config with the ones assigned to presentations. Log all presentation where not all mandatory specification types are represented. I.e. there are missing specifications on some presentations. Also see Defining enumerables, mandatory specifications and specification columns in Manager. |
| Skip this check on the named presentation types. | ||
PartModuleIllustration | Will check that part assemblies have one or more illustrations. |
| Skip this check on part assemblies which are marked as kit. | ||
PresentationItem | This is a consistency check for the database. Lookup any Presentation item where corresponding Part, Illustration, Document etc. item is missing. | ||||
BackingPartRelation | Will check that each backing part has a corresponding presentation. This validation rule will always be run at publish if the Mandatory attribute is defined in settings. | ||||
PartModuleHotspot | Will check that part assemblies with illustrations have hotspots. |
| Skip this check on part assemblies which are marked as kit. |
...