Lab delivery file

Version 9.4 by Roelof Zwaan on 2021/11/23 11:40

Creating a Delivery file and binding them to a customer

This chapter contains the information needed to understand the lab delivery file. A Lab delivery file only has to be updated when there are changes. Otherwise TerraIndex will always show the last imported file.

What is a lab delivery file

A lab delivery file contains the Customer code of the customer that will be sending the lab assignment. It also contains the analyses that can be requested from the a lab by the customer. A Lab delivery file needs to be custom for every user and needs to be a XML file

The file hereis the file that is used for the examples in the document: Lab delivery file

File structure

In the image below the main structure of the XML file is shown. Every table is described in more detail later on in this chapter.

1637578596081-339.png

Attribute nameDescriptionUnit
versieSIKB version. This always must be: 9.0.0string
laboratoriumA number given by TerraIndex to the lab when requesting to connect to TerraIndexinteger
taal

The language of the Delivery file in a three-letter code:

- dut = Dutch

- eng = English

This depends on the XSD used.

string
koppeltabelA table to connect the “Analysepakketten” and the “Debiteurentabel”-
analysepakkettenA table containing the name and lab code of analysis packages-
categorieenA table containing all the possible lab categories-
analysetabelA table containing all the analyses for an analysis packages-
debiteurtabelA table of all the customer codes that are available for the company-
urgentietabelA table containing a list of time frames in which the lab results need to be returned-

Structure explanation analysepakketten

This table contains all the analyses packages that your lab supports. The “analysepakketcode” is your own identification code for the analysis packages.

1637578642613-182.png

Attribute nameDescriptionUnit
analysepakketcodeThe identification code of the lab for their analysis package codestring
omschrijvingThe name/description of the analysis package (This will also be shown in the user interface)string
volgordeField is redundant and does not have to be filled instring

Structure explanation categorieen

“Categorie” does not need a lot of explanation. A category is a group defined by the lab where certain values in the “koppeltabel” can be grouped under. A category is determined by the lab and can be used in the “koppeltabel”

1637578815582-615.png

Attribute nameDescriptionUnit
CategoriecodeThe category code of the category of the labstring
OmschrijvingThe name/description of the category (This will also be shown in the user interface)string
volgordeField is redundant and does not have to be filled ininteger

Analysetabel

This table contains all the analyses that a analyses package can contain. Be sure the “analysepakketcode” corresponds to a code in the table: “analysepakketten”. The analysecode is your own identification code for the analyses.

1637578915565-695.png

Attribute nameDescriptionUnit
AnalysepakketcodeThe analyse package code that corresponds to a code in the “analysepakkettenstring
AnalyseA table containing ale the analyses that should be in this analysis package-
Analyse > analysecodeThe identification code of the lab for the analysesstring
Analyse > omschrijvingThe name\description of the analysis (This will also be shown in the user interface)string

Structure explanation debiteurtabel

A customer can have multiple “debiteuren”. There always needs to be one “debiteur” so that a lab assignment can be send. But for example when there is a price agreement for a certain project a new “debiteur” can be added. Or when a company has multiple offices every office can have its own “debiteur”

1637578988501-147.png

Attribute nameDescriptionUnit
klantcodeThe customer code(s) for the companystring
omschrijvingDe name\description of the customer codestring

Structure explanation koppeltabel

The “koppeltabel” is one of the most important sections of the XML. The “koppeltabel” defines the combination of Analysespackages, custeromcode, categories and sampletype. Without a combination in this table a customer will not be able to send in lab assignments to the laboratory.

1637579085996-197.png

Attribute nameDescriptionunit
AnalysepakketcodeThe analysepackagecode that corresponds to a code in the analysepakketstring
klantcodeA code that corresponds to a code in debiteurenstring
monstersoortAn SIKB code that determins to which matrix the analyses belongs. Sampletype
Codegroup 51 in the Attachments for all possible codes

integer

 

categoriecodeA code that corresponds to a category code in “categoriestring

Structure explanation urgentietabel

This table contains a list with different delivery times for analyses results. For example 5 work days, overnight, within 48 hours and so on. The “urgentie code” is a code given by the lab.

1637579214994-369.png

Attribute nameDescriptionUnit
urgentiecodeThe code of the lab for when the analysis results need to be returned to the customerstring
omschrijvingThe name/ description of the urgentiestring

Column mapping from Dutch to English

In the table below all the keys in the example XML with are shown their English counterparts from the XSD. The colours correspond to the parent. For example. DeliveryData has children that is why this one is coloured dark red in the English column and also coloured dark red in the left column.

Parent EnglishDutchEnglish
-labaanleveringDeliveryData
DeliveryDataversieVersion
DeliveryDatakenmerkversionDeliveryData
DeliveryDatalaboratoriumLaboratory
DeliveryDatataalLanguage
DeliveryDatakoppeltabelLinks
DeliveryDataanalysepakkettenanalysesSets
DeliveryDataCategorieenCategories
DeliveryDataAnalysetabelAnalysisSets
DeliveryDataDebiteurtabelClients
DeliveryDataurgentietabelurgencies
LinksKoppelingLink
LinkAnalysepakketAnalysisSetId
LinkKlantcodeClientId
LinkMonstersoortSampleKind
LinkcategoriecodeCategoryId
AnalysisSetsAnalysepakketAnalysisSet
AnalysisSetAnalysepakketcodeAnalysisSetId
AnalysisSetOmschrijvingDescription
AnalysisSetvolgordeSequence
CategoriesCategoriecategory
CategoryCategoriecodeCategoryId
CategoryomschrijvingDescription
CategoryvolgordeSequence
AnalysesLinksPakketAnalysisLink
AnalysisLinkAnalysepakketcodeAnalysisSetId
AnalysisLinkAnalyseAnalysis
AnalysisAnalysecodeAnalysisId
AnalysisomschrijvingDescription
ClientsdebiteurClient
ClientKlantcodeClientId
ClientOmschrijvingDescription
UrgenciesUrgentieUrgency
UrgencyUrgentiecodeUrgencyId
UrgencyomschrijvingDescription