Nexeed
    • Introduction
    • User Manual
      • General descriptions
        • Result lists
        • Scope Concept
      • Basic setup
        • Connection management
        • Scope Management
          • Configuration Scopes
          • Reporting Scopes
      • Traceability
        • Types of evaluations
        • Search Forms for creating an evaluation
        • Part Protocol
          • Quick Search
          • Extended Search
          • Part View
          • Process View
          • Component View
          • Part Information
          • Process Information
        • Forward Search
          • Quick Search
          • Extended Search
        • Backward Search
        • Tool Usage
        • Packaging Information
          • Quick Search
          • Extended Search
      • Archiving
        • Enable archiving
        • Monitoring
      • Quality Gate
        • Types of Quality Gate Checks
        • Working with Test Specifications
        • Testing of Test Specifications
          • Basic test client
          • Expert test client
          • JSON based test client
      • Terms and definitions
        • Archiving states
        • Connection states
        • Measurement state
        • Packaging data
        • Part blocks
        • Part data
        • Part states
        • Part types
        • Process data
        • Process states
        • SPC session data
        • Test Specifications
    • Developer documentation
      • API documentation
        • Data Browser HTTP API
        • Data Collector HTTP API
        • Quality Gate HTTP API
        • Archiving Bridge Adapter HTTP API
      • Quality Gate Checks
        • Structuring of Test Specifications
        • Input and output parameters
          • Check Block List
          • Check Complete (location based)
          • Check Complete (process based)
          • Check Component
          • Bypass Check Complete
          • Check Trace Mapping
          • Check Characteristics
      • Troubleshooting
Part Traceability
  • Industrial Application System
  • Core Services
    • Block Management
    • Deviation Processor
    • ID Builder
    • Multitenant Access Control
    • Notification Service
    • Ticket Management
    • Web Portal
  • Shopfloor Management
    • Andon Live
    • Global Production Overview
    • KPI Reporting
    • Operational Routines
    • Shift Book
    • Shopfloor Management Administration
  • Product & Quality
    • Product Setup Management
    • Part Traceability
    • Process Quality
    • Setup Specs
  • Execution
    • Line Control
    • Material Management
    • Order Management
    • Packaging Control
    • Rework Control
  • Intralogistics
    • AGV Control Center
    • Stock Management
    • Transport Management
  • Machine & Equipment
    • Condition Monitoring
    • Device Portal
    • Maintenance Management
    • Tool Management
  • Enterprise & Shopfloor Integration
    • Archiving Bridge
    • Data Publisher
    • Direct Data Link
    • Engineering UI
    • ERP Connectivity
    • Gateway
    • Information Router
    • Master Data Management
    • Orchestrator

Nexeed Learning Portal

  • Part Traceability
  • Developer documentation
  • Quality Gate Checks
  • Input and output parameters
  • Check Complete (location based)

Check Complete (location based)

The Check Complete / Check Complete 2 file is a configuration file for the location based Check Complete Quality Gate check. The schema and example provided illustrates how to structure the Check Complete XML file.

Location based schema

Click to unfold
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="TestConfig" targetNamespace="http://tempuri.org/TestConfig.xsd" xmlns:mstns="http://tempuri.org/TestConfig.xsd" xmlns="http://tempuri.org/TestConfig.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
  <xs:annotation>
    <xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
      <DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
        <Connections />
        <Tables />
        <Sources />
      </DataSource>
    </xs:appinfo>
  </xs:annotation>
  <xs:element name="TestConfig" msdata:IsDataSet="true" msdata:Locale="en-US" msprop:Generator_DataSetName="TestConfig" msprop:Generator_UserDSName="TestConfig">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="Location" msprop:Generator_TableClassName="LocationDataTable" msprop:Generator_TableVarName="tableLocation" msprop:Generator_TablePropName="Location" msprop:Generator_RowDeletingName="LocationRowDeleting" msprop:Generator_RowChangingName="LocationRowChanging" msprop:Generator_RowEvHandlerName="LocationRowChangeEventHandler" msprop:Generator_RowDeletedName="LocationRowDeleted" msprop:Generator_UserTableName="Location" msprop:Generator_RowChangedName="LocationRowChanged" msprop:Generator_RowEvArgName="LocationRowChangeEvent" msprop:Generator_RowClassName="LocationRow" maxOccurs="79228162514264337593543950335">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="LocationID" msprop:Generator_ColumnVarNameInTable="columnLocationID" msprop:Generator_ColumnPropNameInRow="LocationID" msprop:Generator_ColumnPropNameInTable="LocationIDColumn" msprop:Generator_UserColumnName="LocationID" type="xs:unsignedLong" />
              <xs:element name="LineNo" msprop:Generator_ColumnVarNameInTable="columnLineNo" msprop:Generator_ColumnPropNameInRow="LineNo" msprop:Generator_ColumnPropNameInTable="LineNoColumn" msprop:Generator_UserColumnName="LineNo" type="xs:int" />
              <xs:element name="StatNo" msprop:Generator_ColumnVarNameInTable="columnStatNo" msprop:Generator_ColumnPropNameInRow="StatNo" msprop:Generator_ColumnPropNameInTable="StatNoColumn" msprop:Generator_UserColumnName="StatNo" type="xs:int" />
              <xs:element name="StatIdx" msprop:Generator_ColumnVarNameInTable="columnStatIdx" msprop:Generator_ColumnPropNameInRow="StatIdx" msprop:Generator_ColumnPropNameInTable="StatIdxColumn" msprop:Generator_UserColumnName="StatIdx" type="xs:int" />
              <xs:element name="FuNo" msprop:Generator_ColumnVarNameInTable="columnFuNo" msprop:Generator_ColumnPropNameInRow="FuNo" msprop:Generator_ColumnPropNameInTable="FuNoColumn" msprop:Generator_UserColumnName="FuNo" type="xs:int" />
              <xs:element name="WorkPos" msprop:Generator_ColumnVarNameInTable="columnWorkPos" msprop:Generator_ColumnPropNameInRow="WorkPos" msprop:Generator_ColumnPropNameInTable="WorkPosColumn" msprop:Generator_UserColumnName="WorkPos" type="xs:int" />
              <xs:element name="ToolPos" msprop:Generator_ColumnVarNameInTable="columnToolPos" msprop:Generator_ColumnPropNameInRow="ToolPos" msprop:Generator_ColumnPropNameInTable="ToolPosColumn" msprop:Generator_UserColumnName="ToolPos" type="xs:int" />
              <xs:element name="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_UserColumnName="Name" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="TestSuite" msprop:Generator_TableClassName="TestSuiteDataTable" msprop:Generator_TableVarName="tableTestSuite" msprop:Generator_TablePropName="TestSuite" msprop:Generator_RowDeletingName="TestSuiteRowDeleting" msprop:Generator_RowChangingName="TestSuiteRowChanging" msprop:Generator_RowEvHandlerName="TestSuiteRowChangeEventHandler" msprop:Generator_RowDeletedName="TestSuiteRowDeleted" msprop:Generator_UserTableName="TestSuite" msprop:Generator_RowChangedName="TestSuiteRowChanged" msprop:Generator_RowEvArgName="TestSuiteRowChangeEvent" msprop:Generator_RowClassName="TestSuiteRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="TestSuiteId" msprop:Generator_ColumnVarNameInTable="columnTestSuiteId" msprop:Generator_ColumnPropNameInRow="TestSuiteId" msprop:Generator_ColumnPropNameInTable="TestSuiteIdColumn" msprop:Generator_UserColumnName="TestSuiteId" type="xs:unsignedLong" />
              <xs:element name="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_UserColumnName="Name" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Test" msprop:Generator_TableClassName="TestDataTable" msprop:Generator_TableVarName="tableTest" msprop:Generator_TablePropName="Test" msprop:Generator_RowDeletingName="TestRowDeleting" msprop:Generator_RowChangingName="TestRowChanging" msprop:Generator_RowEvHandlerName="TestRowChangeEventHandler" msprop:Generator_RowDeletedName="TestRowDeleted" msprop:Generator_UserTableName="Test" msprop:Generator_RowChangedName="TestRowChanged" msprop:Generator_RowEvArgName="TestRowChangeEvent" msprop:Generator_RowClassName="TestRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="TestID" msprop:Generator_ColumnVarNameInTable="columnTestID" msprop:Generator_ColumnPropNameInRow="TestID" msprop:Generator_ColumnPropNameInTable="TestIDColumn" msprop:Generator_UserColumnName="TestID" type="xs:unsignedLong" />
              <xs:element name="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_UserColumnName="Name" type="xs:string" minOccurs="0" />
              <xs:element name="componentClass" msprop:Generator_ColumnVarNameInTable="columncomponentClass" msprop:Generator_ColumnPropNameInRow="componentClass" msprop:Generator_ColumnPropNameInTable="componentClassColumn" msprop:Generator_UserColumnName="componentClass" type="xs:string" minOccurs="0" />
              <xs:element name="DataBase" msprop:Generator_ColumnVarNameInTable="columnDataBase" msprop:Generator_ColumnPropNameInRow="DataBase" msprop:Generator_ColumnPropNameInTable="DataBaseColumn" msprop:Generator_UserColumnName="DataBase" type="xs:unsignedLong" minOccurs="0" />
              <xs:element name="TestGroup" msprop:Generator_ColumnVarNameInTable="columnTestGroup" msprop:Generator_ColumnPropNameInRow="TestGroup" msprop:Generator_ColumnPropNameInTable="TestGroupColumn" msprop:Generator_UserColumnName="TestGroup" type="xs:unsignedLong" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="DataBase" msprop:Generator_TableClassName="DataBaseDataTable" msprop:Generator_TableVarName="tableDataBase" msprop:Generator_TablePropName="DataBase" msprop:Generator_RowDeletingName="DataBaseRowDeleting" msprop:Generator_RowChangingName="DataBaseRowChanging" msprop:Generator_RowEvHandlerName="DataBaseRowChangeEventHandler" msprop:Generator_RowDeletedName="DataBaseRowDeleted" msprop:Generator_UserTableName="DataBase" msprop:Generator_RowChangedName="DataBaseRowChanged" msprop:Generator_RowEvArgName="DataBaseRowChangeEvent" msprop:Generator_RowClassName="DataBaseRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="DataBaseId" msprop:Generator_ColumnVarNameInTable="columnDataBaseId" msprop:Generator_ColumnPropNameInRow="DataBaseId" msprop:Generator_ColumnPropNameInTable="DataBaseIdColumn" msprop:Generator_UserColumnName="DataBaseId" type="xs:unsignedLong" />
              <xs:element name="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_UserColumnName="Name" type="xs:string" minOccurs="0" />
              <xs:element name="ConnectionString" msprop:Generator_ColumnVarNameInTable="columnConnectionString" msprop:Generator_ColumnPropNameInRow="ConnectionString" msprop:Generator_ColumnPropNameInTable="ConnectionStringColumn" msprop:Generator_UserColumnName="ConnectionString" type="xs:string" minOccurs="0" />
              <xs:element name="SerialNumber" msprop:Generator_ColumnVarNameInTable="columnSerialNumber" msprop:Generator_ColumnPropNameInRow="SerialNumber" msprop:Generator_ColumnPropNameInTable="SerialNumberColumn" msprop:Generator_UserColumnName="SerialNumber" type="xs:boolean" minOccurs="0" />
              <xs:element name="Simulation" msprop:Generator_ColumnVarNameInTable="columnSimulation" msprop:Generator_ColumnPropNameInRow="Simulation" msprop:Generator_ColumnPropNameInTable="SimulationColumn" msprop:Generator_UserColumnName="Simulation" type="xs:boolean" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="TestLocations" msprop:Generator_TableClassName="TestLocationsDataTable" msprop:Generator_TableVarName="tableTestLocations" msprop:Generator_TablePropName="TestLocations" msprop:Generator_RowDeletingName="TestLocationsRowDeleting" msprop:Generator_RowChangingName="TestLocationsRowChanging" msprop:Generator_RowEvHandlerName="TestLocationsRowChangeEventHandler" msprop:Generator_RowDeletedName="TestLocationsRowDeleted" msprop:Generator_UserTableName="TestLocations" msprop:Generator_RowChangedName="TestLocationsRowChanged" msprop:Generator_RowEvArgName="TestLocationsRowChangeEvent" msprop:Generator_RowClassName="TestLocationsRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Id" msprop:Generator_ColumnVarNameInTable="columnId" msprop:Generator_ColumnPropNameInRow="Id" msprop:Generator_ColumnPropNameInTable="IdColumn" msprop:Generator_UserColumnName="Id" type="xs:unsignedLong" />
              <xs:element name="TestID" msprop:Generator_ColumnVarNameInTable="columnTestID" msprop:Generator_ColumnPropNameInRow="TestID" msprop:Generator_ColumnPropNameInTable="TestIDColumn" msprop:Generator_UserColumnName="TestID" type="xs:unsignedLong" minOccurs="0" />
              <xs:element name="LocationID" msprop:Generator_ColumnVarNameInTable="columnLocationID" msprop:Generator_ColumnPropNameInRow="LocationID" msprop:Generator_ColumnPropNameInTable="LocationIDColumn" msprop:Generator_UserColumnName="LocationID" type="xs:unsignedLong" minOccurs="0" />
              <xs:element name="SourceID" msprop:Generator_ColumnVarNameInTable="columnSourceID" msprop:Generator_ColumnPropNameInRow="SourceID" msprop:Generator_ColumnPropNameInTable="SourceIDColumn" msprop:Generator_UserColumnName="SourceID" type="xs:unsignedLong" minOccurs="0" />
              <xs:element name="StatusID" msprop:Generator_ColumnVarNameInTable="columnStatusID" msprop:Generator_ColumnPropNameInRow="StatusID" msprop:Generator_ColumnPropNameInTable="StatusIDColumn" msprop:Generator_UserColumnName="StatusID" type="xs:int" minOccurs="0" />
              <xs:element name="TargetID" msprop:Generator_ColumnVarNameInTable="columnTargetID" msprop:Generator_ColumnPropNameInRow="TargetID" msprop:Generator_ColumnPropNameInTable="TargetIDColumn" msprop:Generator_UserColumnName="TargetID" type="xs:unsignedLong" minOccurs="0" />
              <xs:element name="Rank" msprop:Generator_ColumnVarNameInTable="columnRank" msprop:Generator_ColumnPropNameInRow="Rank" msprop:Generator_ColumnPropNameInTable="RankColumn" msprop:Generator_UserColumnName="Rank" type="xs:int" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="TestGroup" msprop:Generator_TableClassName="TestGroupDataTable" msprop:Generator_TableVarName="tableTestGroup" msprop:Generator_TablePropName="TestGroup" msprop:Generator_RowDeletingName="TestGroupRowDeleting" msprop:Generator_RowChangingName="TestGroupRowChanging" msprop:Generator_RowEvHandlerName="TestGroupRowChangeEventHandler" msprop:Generator_RowDeletedName="TestGroupRowDeleted" msprop:Generator_UserTableName="TestGroup" msprop:Generator_RowChangedName="TestGroupRowChanged" msprop:Generator_RowEvArgName="TestGroupRowChangeEvent" msprop:Generator_RowClassName="TestGroupRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="TestGroupId" msprop:Generator_ColumnVarNameInTable="columnTestGroupId" msprop:Generator_ColumnPropNameInRow="TestGroupId" msprop:Generator_ColumnPropNameInTable="TestGroupIdColumn" msprop:Generator_UserColumnName="TestGroupId" type="xs:unsignedLong" />
              <xs:element name="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_UserColumnName="Name" type="xs:string" minOccurs="0" />
              <xs:element name="TestSuite" msprop:Generator_ColumnVarNameInTable="columnTestSuite" msprop:Generator_ColumnPropNameInRow="TestSuite" msprop:Generator_ColumnPropNameInTable="TestSuiteColumn" msprop:Generator_UserColumnName="TestSuite" type="xs:unsignedLong" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="AdditionalInfo" msprop:Generator_TableClassName="AdditionalInfoDataTable" msprop:Generator_TableVarName="tableAdditionalInfo" msprop:Generator_TablePropName="AdditionalInfo" msprop:Generator_RowDeletingName="AdditionalInfoRowDeleting" msprop:Generator_RowChangingName="AdditionalInfoRowChanging" msprop:Generator_RowEvHandlerName="AdditionalInfoRowChangeEventHandler" msprop:Generator_RowDeletedName="AdditionalInfoRowDeleted" msprop:Generator_UserTableName="AdditionalInfo" msprop:Generator_RowChangedName="AdditionalInfoRowChanged" msprop:Generator_RowEvArgName="AdditionalInfoRowChangeEvent" msprop:Generator_RowClassName="AdditionalInfoRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Id" msprop:Generator_ColumnVarNameInTable="columnId" msprop:Generator_ColumnPropNameInRow="Id" msprop:Generator_ColumnPropNameInTable="IdColumn" msprop:Generator_UserColumnName="Id" type="xs:unsignedLong" />
              <xs:element name="TestLocationID" msprop:Generator_ColumnVarNameInTable="columnTestLocationID" msprop:Generator_ColumnPropNameInRow="TestLocationID" msprop:Generator_ColumnPropNameInTable="TestLocationIDColumn" msprop:Generator_UserColumnName="TestLocationID" type="xs:unsignedLong" minOccurs="0" />
              <xs:element name="ParamName" msprop:Generator_ColumnVarNameInTable="columnParamName" msprop:Generator_ColumnPropNameInRow="ParamName" msprop:Generator_ColumnPropNameInTable="ParamNameColumn" msprop:Generator_UserColumnName="ParamName" type="xs:string" minOccurs="0" />
              <xs:element name="ParamIntValue" msprop:Generator_ColumnVarNameInTable="columnParamIntValue" msprop:Generator_ColumnPropNameInRow="ParamIntValue" msprop:Generator_ColumnPropNameInTable="ParamIntValueColumn" msprop:Generator_UserColumnName="ParamIntValue" type="xs:int" minOccurs="0" />
              <xs:element name="ParamRealValue" msprop:Generator_ColumnVarNameInTable="columnParamRealValue" msprop:Generator_ColumnPropNameInRow="ParamRealValue" msprop:Generator_ColumnPropNameInTable="ParamRealValueColumn" msprop:Generator_UserColumnName="ParamRealValue" type="xs:double" minOccurs="0" />
              <xs:element name="ParamStringValue" msprop:Generator_ColumnVarNameInTable="columnParamStringValue" msprop:Generator_ColumnPropNameInRow="ParamStringValue" msprop:Generator_ColumnPropNameInTable="ParamStringValueColumn" msprop:Generator_UserColumnName="ParamStringValue" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="RepositoryInfo" msprop:Generator_TableClassName="RepositoryInfoDataTable" msprop:Generator_TableVarName="tableRepositoryInfo" msprop:Generator_TablePropName="RepositoryInfo" msprop:Generator_RowDeletingName="RepositoryInfoRowDeleting" msprop:Generator_RowChangingName="RepositoryInfoRowChanging" msprop:Generator_RowEvHandlerName="RepositoryInfoRowChangeEventHandler" msprop:Generator_RowDeletedName="RepositoryInfoRowDeleted" msprop:Generator_UserTableName="RepositoryInfo" msprop:Generator_RowChangedName="RepositoryInfoRowChanged" msprop:Generator_RowEvArgName="RepositoryInfoRowChangeEvent" msprop:Generator_RowClassName="RepositoryInfoRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="revision" msprop:Generator_ColumnVarNameInTable="columnrevision" msprop:Generator_ColumnPropNameInRow="revision" msprop:Generator_ColumnPropNameInTable="revisionColumn" msprop:Generator_UserColumnName="revision" type="xs:string" minOccurs="0" />
              <xs:element name="author" msprop:Generator_ColumnVarNameInTable="columnauthor" msprop:Generator_ColumnPropNameInRow="author" msprop:Generator_ColumnPropNameInTable="authorColumn" msprop:Generator_UserColumnName="author" type="xs:string" minOccurs="0" />
              <xs:element name="commitDate" msprop:Generator_ColumnVarNameInTable="columncommitDate" msprop:Generator_ColumnPropNameInRow="commitDate" msprop:Generator_ColumnPropNameInTable="commitDateColumn" msprop:Generator_UserColumnName="commitDate" type="xs:string" minOccurs="0" />
              <xs:element name="URL" msprop:Generator_ColumnVarNameInTable="columnURL" msprop:Generator_ColumnPropNameInRow="URL" msprop:Generator_ColumnPropNameInTable="URLColumn" msprop:Generator_UserColumnName="URL" type="xs:string" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
    <xs:unique name="key4">
      <xs:selector xpath=".//mstns:Location" />
      <xs:field xpath="mstns:LocationID" />
    </xs:unique>
    <xs:unique name="key2">
      <xs:selector xpath=".//mstns:TestSuite" />
      <xs:field xpath="mstns:TestSuiteId" />
    </xs:unique>
    <xs:unique name="key3">
      <xs:selector xpath=".//mstns:Test" />
      <xs:field xpath="mstns:TestID" />
    </xs:unique>
    <xs:unique name="key1">
      <xs:selector xpath=".//mstns:DataBase" />
      <xs:field xpath="mstns:DataBaseId" />
    </xs:unique>
    <xs:unique name="PK_TESTLOCATION" msdata:PrimaryKey="true">
      <xs:selector xpath=".//mstns:TestLocations" />
      <xs:field xpath="mstns:Id" />
    </xs:unique>
    <xs:unique name="PK_TESTGROUP" msdata:PrimaryKey="true">
      <xs:selector xpath=".//mstns:TestGroup" />
      <xs:field xpath="mstns:TestGroupId" />
    </xs:unique>
    <xs:unique name="PK_ADDITIONALINFO">
      <xs:selector xpath=".//mstns:AdditionalInfo" />
      <xs:field xpath="mstns:Id" />
    </xs:unique>
    <xs:keyref name="Rel_TestLocations_AdditionalInfo" refer="PK_TESTLOCATION" msprop:rel_Generator_UserChildTable="AdditionalInfo" msprop:rel_Generator_ChildPropName="GetAdditionalInfoRows" msprop:rel_Generator_UserRelationName="Rel_TestLocations_AdditionalInfo" msprop:rel_Generator_ParentPropName="TestLocationsRow" msprop:rel_Generator_RelationVarName="relationRel_TestLocations_AdditionalInfo" msprop:rel_Generator_UserParentTable="TestLocations">
      <xs:selector xpath=".//mstns:AdditionalInfo" />
      <xs:field xpath="mstns:TestLocationID" />
    </xs:keyref>
    <xs:keyref name="Rel_TestSuite_TestGroup" refer="key2" msprop:rel_Generator_UserChildTable="TestGroup" msprop:rel_Generator_ChildPropName="GetTestGroupRows" msprop:rel_Generator_UserRelationName="Rel_TestSuite_TestGroup" msprop:rel_Generator_ParentPropName="TestSuiteRow" msprop:rel_Generator_RelationVarName="relationRel_TestSuite_TestGroup" msprop:rel_Generator_UserParentTable="TestSuite" msdata:AcceptRejectRule="Cascade">
      <xs:selector xpath=".//mstns:TestGroup" />
      <xs:field xpath="mstns:TestSuite" />
    </xs:keyref>
    <xs:keyref name="Rel_Location_TestLocations" refer="key4" msprop:rel_Generator_UserChildTable="TestLocations" msprop:rel_Generator_ChildPropName="GetTestLocationsRows" msprop:rel_Generator_UserRelationName="Rel_Location_TestLocations" msprop:rel_Generator_ParentPropName="LocationRow" msprop:rel_Generator_RelationVarName="relationRel_Location_TestLocations" msprop:rel_Generator_UserParentTable="Location" msdata:AcceptRejectRule="Cascade">
      <xs:selector xpath=".//mstns:TestLocations" />
      <xs:field xpath="mstns:LocationID" />
    </xs:keyref>
    <xs:keyref name="Rel_Test_TestLocations" refer="key3" msprop:rel_Generator_UserChildTable="TestLocations" msprop:rel_Generator_ChildPropName="GetTestLocationsRows" msprop:rel_Generator_UserRelationName="Rel_Test_TestLocations" msprop:rel_Generator_ParentPropName="TestRow" msprop:rel_Generator_RelationVarName="relationRel_Test_TestLocations" msprop:rel_Generator_UserParentTable="Test" msdata:AcceptRejectRule="Cascade">
      <xs:selector xpath=".//mstns:TestLocations" />
      <xs:field xpath="mstns:TestID" />
    </xs:keyref>
    <xs:keyref name="Rel_TestGroup_Test" refer="PK_TESTGROUP" msprop:rel_Generator_UserChildTable="Test" msprop:rel_Generator_ChildPropName="GetTestRows" msprop:rel_Generator_UserRelationName="Rel_TestGroup_Test" msprop:rel_Generator_RelationVarName="relationRel_TestGroup_Test" msprop:rel_Generator_UserParentTable="TestGroup" msprop:rel_Generator_ParentPropName="TestGroupRow" msdata:AcceptRejectRule="Cascade">
      <xs:selector xpath=".//mstns:Test" />
      <xs:field xpath="mstns:TestGroup" />
    </xs:keyref>
    <xs:keyref name="Rel_DataBase_Test" refer="key1" msprop:rel_Generator_UserChildTable="Test" msprop:rel_Generator_ChildPropName="GetTestRows" msprop:rel_Generator_UserRelationName="Rel_DataBase_Test" msprop:rel_Generator_RelationVarName="relationRel_DataBase_Test" msprop:rel_Generator_UserParentTable="DataBase" msprop:rel_Generator_ParentPropName="DataBaseRow" msdata:AcceptRejectRule="Cascade">
      <xs:selector xpath=".//mstns:Test" />
      <xs:field xpath="mstns:DataBase" />
    </xs:keyref>
  </xs:element>
</xs:schema>

Location based example

Click to unfold
<?xml version="1.0" standalone="yes"?>
<TestConfig xmlns="http://tempuri.org/TestConfig.xsd">
  <Location>
    <LocationID>0</LocationID>
    <LineNo>1</LineNo>
    <StatNo>1</StatNo>
    <StatIdx>1</StatIdx>
    <FuNo>1</FuNo>
    <WorkPos>1</WorkPos>
    <ToolPos>1</ToolPos>
    <Name>newLocation</Name>
  </Location>
  <TestSuite>
    <TestSuiteId>0</TestSuiteId>
    <Name>newTestSuite</Name>
  </TestSuite>
  <Test>
    <TestID>0</TestID>
    <Name>newTest</Name>
    <componentClass />
    <DataBase>0</DataBase>
    <TestGroup>0</TestGroup>
  </Test>
  <DataBase>
    <DataBaseId>0</DataBaseId>
    <Name>newDataBase</Name>
    <ConnectionString>connString</ConnectionString>
    <SerialNumber>false</SerialNumber>
  </DataBase>
  <TestLocations>
    <Id>0</Id>
    <TestID>0</TestID>
    <LocationID>0</LocationID>
    <SourceID>0</SourceID>
    <TargetID>0</TargetID>
  </TestLocations>
  <TestGroup>
    <TestGroupId>0</TestGroupId>
    <Name>newTestGroup</Name>
    <TestSuite>0</TestSuite>
  </TestGroup>
  <AdditionalInfo>
    <Id>0</Id>
    <TestLocationID>0</TestLocationID>
    <ParamName>FinalState</ParamName>
    <ParamIntValue>1</ParamIntValue>
  </AdditionalInfo>
  <RepositoryInfo revision="$Revision: $" author="$Author: $" commitDate="$Date: $" URL="$HeadURL: $" />
</TestConfig>

Description

This section provides details about the configuration files used for the Quality Gate Checks.

Location element

This element describes the logical address or location of a process. The element has the following subelements:

Parameter Data Type Description

LocationID

int

Unique ID for the location. The content of this element must be unique within the configuration.

LineNo

int

Specifies the line number.

StatNo

int

Specifies the station number.

StatIdx

int

Specifies the station index; 0 = wildcard.

FuNo

int

Specifies the function unit; 0 = wildcard.

WorkPos

int

Specifies the work position; 0 = wildcard.

ToolPos

int

Specifies the tool position; 0 = wildcard.

Name

string

Process name. This name is used to reference the location later in the configuration.

The content of the LocationID element must be unique. If two or more Location elements share the same LocationID, the configuration cannot be loaded. In such a case, Quality Gate Check aborts the attempt to use the configuration file with an error message.

DataBase element

This element configures a data source. Within the Test Specification, multiple data sources can be assigned at the test level, meaning that quality data from different sources can be used. The DataBase element must contain all parameters necessary for establishing a database connection.

Parameter Data Type Description

DataBaseId

unsignedLong

Unique ID of the data source. The content of this element must be unique within the configuration.

Name

string

Descriptive name of the data source.

ConnectionString

string

A string that is used to establish the connection.

SerialNumber

boolean

The data source can interpret serial numbers.

Simulation

boolean

The data source is simulated using XML files. This function is intended for testing purposes only.

Only one data source per configuration may interpret serial numbers (SerialNumber = TRUE). If there are several such data sources, Quality Gate Checks will not be able to resolve the serial numbers correctly, as it is unclear which data source should be used.

TestSuite element

This element defines a test suite. It serves as a grouping element for the various test groups in the configuration. The element contains the following sub-elements:

Parameter Data Type Description

TestSuiteId

unsignedLong

Unique ID of the test suite. The content of this element must be unique within the configuration.

Name

string

Descriptive name of the test suite.

TestGroup element

This element defines a test group. Within the configuration, TestGroup serves as a grouping mechanism for various tests. The element contains the following sub-elements:

Parameter Data Type Description

TestGroupId

unsignedLong

Unique ID of the test group. The content of this element must be unique within the configuration.

Name

string

Descriptive name of the test group.

TestSuite

unsignedLong

Reference to a TestSuite element that contains the test suite for the test group.

Test element

This element defines a test. It is a central element within the configuration, serving both as the grouping element for individual rules and as the means by which the origin of the data and the selection of the component to be checked is determined. The element contains the following sub-elements:

A test without configured rules (see subsequent chapter) is not applicable and is therefore ignored. Such tests are not considered in the test evaluation.

Parameter Data Type Description

TestId

unsignedLong

Unique ID of the test. The content of this element must be unique within the configuration.

Name

string

Descriptive name of the test.

componentClass

string

Defines the component for which the test is performed.

DataBase

unsignedLong

Reference to a DataBase element that configures the database to be used.

TestGroup

unsignedLong

Reference to a TestGroup element that contains the test group for the test.

In a database, result data for multiple components may be stored. It is therefore imperative to specify the correct component class. If several components with the same classification are identified, the most recently installed component is used. If the test is to be performed on a main part, the component class must be set to an empty string (""). Defining componentClass is mandatory.

TestLocation element

This element assigns a facility to a test. This is called a rule. This element has the following sub-elements:

A test must contain at least one rule with Rank = 1. A test group must contain at least one test with at least one configured rule with Rank = 1. Otherwise, the Quality Gate Check will report an error that all tests in the test group are not applicable!

Parameter Data Type Description

Id

unsignedLong

Unique ID of the rule. This ID must be unique within the configuration.

TestID

unsignedLong

ID of the test element to which the rule is assigned.

LocationID

unsignedLong

ID of the associated facility.

SourceID

unsignedLong

ID of the Location element that defines the preceding process.

StatusID

int

Expected processing status of the process to be checked.

TargetID

unsignedLong

ID of the Location element that defines the subsequent process.

Rank

int

Determines the rank at which the rule is defined. If the preceding process should not be verified, the SourceID element must have no value. Similarly, if it cannot be ensured that the same process always follows the current process, the TargetID element must be empty.

AdditionalInfo element

This element allows additional conditions to be appended to a rule. These additional conditions are checked when the respective rule is applied. If one of the additional conditions fails, the rule is considered violated.

Parameter Data Type Description

Id

unsignedLong

Unique ID of the additional condition. The content of this element must be unique within the configuration.

TestLocationID

unsignedLong

Reference to a TestLocations element that contains the rule for the additional condition.

ParamName

string

Keyword that defines the additional condition.

ParamIntValue

int

Depending on the keyword used, the default value must be defined as an integer.

ParamRealValue

double

Depending on the keyword used, the default value must be defined as a real number.

ParamStringValue

string

Depending on the keyword used, the default value must be defined as a string.

For additional conditions, the following keywords can be used:

Parameter Name (ParamName) Configuration Column Description

FinalState

ParamIntValue

Checks that the final state of the part (the last station result) matches the status defined in the rule. Allowed inputs:

  • FinalState = (null) or 0: additional condition disabled

  • FinalState = 1: additional condition enabled

PartStateEqual

ParamIntValue

Specifies the state the part must be in. This condition refers to the overall status (PartState) of the queried main part.

PartStateNotEqual

ParamIntValue

Specifies the state the part must not be in. This condition refers to the overall status (PartState) of the queried main part.

ValidAfter

ParamStringValue

Defines the time from which the part is considered valid.

MinCycle

ParamIntValue

Specifies the minimum number of times a part must be processed at a station (regardless of status).

MaxCycle

ParamIntValue

Specifies the maximum number of times a part can be processed at a station (regardless of status).

MinTimer

ParamIntValue

Verifies the minimum station process time against this value.

MaxTimer

ParamIntValue

Verifies the maximum station process time against this value.

MaxCycleDependsOnResultState

ParamIntValue

Specifies the maximum number of times a part can be processed at a station (depending on the status).

MinCycleDependsOnResultState

ParamIntValue

Specifies the minimum number of times a part must be processed at a station (depending on the status).

PackState

ParamIntValue

Boolean value provided as ParamInt:

  • > 0: Part is packaged.

  • Any other value: Part is not packaged.

Without specifying additional conditions, no specific check is performed. Only the existence of the record as defined in the rule is accepted. It is not possible to define multiple PartStateEqual or PartStateNotEqual conditions for a rule (currently not applicable).

The overall result of the test groups is a logical OR combination of the tests within each group. If multiple tests within a group fail, the error cannot be attributed to a specific test. Therefore, it is recommended to create a separate test group with a test solely for monitoring time using MinTimer and MaxTimer.

Contents

© Robert Bosch Manufacturing Solutions GmbH 2023-2025, all rights reserved

Changelog Corporate information Legal notice Data protection notice Third party licenses