QR-code op aanvoerbrief 2.01.0: Specificaties velden Door: Datum 1e versie: Datum laatste wijziging Huidige Versie:
Bert Velthuijs 5 april 2012 (versie 0.01.0) 20 september 2012 2.01.0
Wijzigingen 19 juli 2012
Upgrade naar versie 1 & redactionele aanpassingen
20 september 2012
Upgrade naar versie 2
1
1. Inleiding Dit document hoort bij het “QR-Code op aanvoerbrief: Specificaties” document en geeft een overzicht van de velden die in de QR-code opgenomen kunnen of moeten worden. Voor elk gegeven is aangegeven welke tag er aan gekoppeld is, of het boolean, numeriek of alfanumeriek is, en wat de lengte van het veld is (in tekens). Voor de verschillende veilingen is aangegeven welke keuzes zij gemaakt hebben, zowel voor de eigenschappen van de QR-code, als voor de velden die zij in hun QR-code willen coderen. Andere relevante documenten: ●
“QR-Code op aanvoerbrief: Specificaties”: voor de algehele structuur van de data in de QR-Code
●
“QR-code op aanvoerbrief: Achtergrondinformatie”: voor een verantwoording van gemaakte keuzes, en algemene informatie over QR-codes.
2. Criteria voor het opnemen van een gegeven in de QR-code In de QR-code is slechts een beperkte ruimte beschikbaar. Daarom kan niet altijd alle informatie die b.v. in een EAB verstuurd wordt, in de QR-code gecodeerd worden, en moeten er keuzes gemaakt worden. Uitgangspunten voor deze keuzes zijn: 1) Gegevens die belangrijk zijn voor het veilproces moeten opgenomen worden. 2) Gegevens die nodig zijn voor de routing van een kar, worden al groot afgedrukt op de aanvoerbrief. Als deze gegevens niet nodig zijn voor de administratieve systemen, heeft het geen nut deze in de QR-code op te nemen. Voorbeeld: veilgroep. Er is gedacht vanuit de informatiebehoefte, niet vanuit de manier waarop nu bepaalde gegevens in een EAB gecodeerd of op een papieren aanvoerbrief afgedrukt worden.
3. Metadata Op dit moment is de volgende metadata gespecificeerd: Naam
Lengte (in bytes)
Toelichting
SWL
3
3-letterige code als identificatie van de softwareleverancier, als standaard ASCII
SW-versie
2
2 bytes, vrij in te vullen door de softwareleverancier.
De grootte van het blok metadata is dus 5.
2
4. Kolomdefinities In de volgende tabellen worden de kolomdefinities gegeven die in de huidige versie gespecificeerd zijn. Verklaring van de verschillende titels in de tabellen: In het blok 'Algemeen': Veldnaam
Beschrijvende naam van het gegeven dat in dit veld opgeslagen wordt.
Tag
Een uniek ID dat aan het gegeven gekoppeld is. Dat het ID uniek is, wil niet zeggen dat er geen velden met hetzelfde ID in een QR-code voor kunnen komen. productkenmerk-velden b.v. kunnen meerdere keren voorkomen, omdat er meerdere productkenmerken aan hetzelfde product gekoppeld kunnen zijn.
Tp
Dit is het datatype van het veld: - N=numeriek, A=alfanumeriek, B=binair, gevolgd door de lengte van het veld, of - 'Bit' voor 1/0 (boolean). Bij numerieke data is de lengte het aantal posities bij decimale weergave, bij alfanumerieke of binaire data is de lengte het aantal tekens.
Opmerking Indien van toepassing wordt hier wat extra uitleg gegeven. KL
Indicatie of een veld bij een klokbrief verplicht is ('V'), optioneel is ('O'), of niet van toepassing ('-').
BB
Zelfde als KL, maar dan voor directe handel (connect, bemiddeling, etc.)
Bits max
Het aantal bits dat het opnemen van een veld in de QR-code kost, als het datatype + lengte in de kolom Tp aangehouden wordt. Het is dus niet de breedte van het veld in bits. Een veld in de brief-data kost 16 bits voor de kolomdefinitie + veldbreedte in bits. Bij partij-data is het 16 bits + het aantal partijen (n) x veldbreedte in bits. De waarden in deze kolom zijn zelf eenvoudig uit te rekenen, het is bedoeld om het rekenwerk bij implementatie door een veiling te vereenvoudigen.
In de blokken voor invulling door de veiling: Tp
Het door de veiling gekozen type indien het afwijkt van het algemeen vastgestelde type.
KL, BB
Aantal bits dat een gegeven in totaal kost, bij de keuzes die de veiling gemaakt heeft. Als er meerdere voorkomens van een gegeven zijn (b.v. productkenmerk), is dit het totaal van alle voorkomens. Is hier een aantal bits ingevuld, dan betekent dit dat dit veld ingevuld moet worden als dat van toepassing is. Normaal gesproken gelden hiervoor dezelfde regels als bij invulling van de aanvoerbrief, dus b.v. voor een keurcode: invullen als de kwaliteit van het product daar aanleiding toe geeft, ordernummer: invullen als de koper of agent dit gegeven heeft. Als er een streepje ingevuld is, betekent dit dat het veld door de veiling niet geselecteerd is. Het veld mag wel ingevuld worden, b.v. t.b.v. andere partijen, maar het hoeft niet.
4.1 Downgraden Zoals beschreven in de “QR-code op aanvoerbrief: Specificaties”, mogen kolomdefinities gedegradeerd worden. Dit kan gebeuren door de veiling (b.v. van een alphanumeriek briefnummer naar een numeriek briefnummer), maar ook door de coderende software, aan de hand van de actuele data. De hier gegeven data-types geeft dus het data-type van de informatie aan. Voor meer details zie het genoemde document.
3
4.2 Brief-gegevens Algemeen Veldnaam
Tag
Tp
Opmerking
Plantion KL
BB Bits Tp max
Bits KL
BB
Veilingcode
1
N1
1 = Plantion, 2 = FloraHolland
V
V
20
20
20
Briefnummer
2
A6
Nummer van deze aanvoerbrief
V
V
52
N6 36
36
Aanvoerdernummer 3
N6
Administratienummer van de aanvoerder bij de veiling
V
V
36
36
36
Verkoopmethode
4
Bit
0=Klok, 1=BB.
V
V
17
17
17
Nummer eerste brief
5
A6
Alleen voor de volgbrieven van een GP.
O
O
52
N6 36
36
Kartype
6
N2
Volgens data-elementenlijst, data-element 8155
V
V
23
23
23
Aantal karren
7
N3
Totaal aantal karren dat bij deze brief hoort [1]
O
O
26
26
26
Aantal losse platen
8
N4
Totaal aantal platen dat bij deze brief hoort [2]
O
O
30
30
30
Aantal fusten GP
9
N4
Totaal aantal fusten van een GP. [3]
O
O
30
30
30
Kopernummer
10
N6
Administratienummer van de koper bij de veiling
-
O
36
-
36
Afleverlocatie koper 11
N13 EAN-code afleverlocatie, volgens de Florecom locatiecodelijst
-
O
60
-
60
Vervolgtransport
12
N13 EAN-code vervolgtransporteur, volgens de FE bedrijfscodelijst
-
O
60
-
60
BB-IB
13
N1
1=Zelfbesteld/IB, 0=anders
-
O
20
-
20
BDO
14
Bit
0=via veilingdistributie, 1=buiten veilingdistributie om
-
O
17
-
17
Plantenpaspoort
15
A13
O
O
94
-
-
Veil- / Afl.datum
16
N6
DDMMJJ. Voor Klok de veildatum, voor BB de afleverdatum
V
V
36
36
36
Aflevertijd
17
N4
HHMM
-
O
30
-
-
Admnr CC-ver.
18
N6
Administratienummer voor CC-verrekening
O
O
36
-
-
Admnr fustver.
19
N6
Administratienummer voor fustverrekening
O
O
36
-
-
Briefvolgnummer
20
N1
Volgnummer bij meer brieven op 1 kar. In geval van 1 brief op de kar wordt hier nul ingevuld.
O
O
20
-
-
Aantal partijen
21
N1
Aantal partijen op deze brief
V
V
4
4
4
Totaal brief: 291 489
[1]
Bij meerdere brieven op 1 kar, wordt bij de eerste brief 1 ingevuld, en bij de volgende brieven 0.
[2]
Bij meerdere brieven op 1 kar, wordt bij de eerste brief het aantal bledden op die kar ingevuld, en bij de volgende brieven 0.
[3]
Nul invullen als het geen GP is.
4.3 Partij-gegevens Algemeen Veldnaam
Tag
Tp
Opmerking
Plantion KL BB
Bits max
Tp
Bits KL
BB
Partijvolgnr
129
N1
1=A, 2=B enz. [1]
O
O
16+n*4
40
40
Aantal Fusten
130
N4
Aantal fusten op deze kar
V
V
16+n*14
100
100
Stuks/Fust
131
N4
V
V
16+n*14
100
100
Fustcode
132
N3
V
V
16+n*10
76
76
Productcode
133
N7
VBN artikelcode
V
V
16+n*24
160
160
Productkenmerk waarde
134.. A3 149
Productkenmerken volgens presentatiepositie (133 is positie 1, 134 positie 2, etc. Het aantal door de veiling gewenste productkenmerken is rechts in de tabel tussen haakjes aangegeven. [2]
O
O
16+n*18
496 (4)
496 (4)
Productkenmerk type+waarde
150
A6
Eerste 3 posities geven het type aan en de volgende 3 posities de waarde. Voorbeeld: “S20045”.Het aantal voorkomens wordt bepaald door de veiling, en is rechts in de tabel aangegeven [3]
O
O
16+n*36
-
-
Keurcode1 (K01) 151
N3
Negatieve keurcode
O
O
16+n*10
76
76
Keurcode2 (K02) 152
N3
Negatieve keurcode
O
O
16+n*10
76
76
Pos-code1 (P01) 153
N2
Positieve keurcode
O
O
16+n*7
58
58
Pos-code2 (P02) 154
N2
Positieve keurcode
O
O
16+n*7
58
58
Pos-code3 (P03) 155
N2
Positieve keurcode
O
O
16+n*7
58
58
Prijs
156
N7
Prijs in tienden eurocenten [4]
-
O
16+n*24
-
160
Fotoreferentie
157
A26 Alleen de eerste referentie (Voor KOA belangrijk)
O
O
16+n*156
952
-
Ordernr Koper
158
A13
-
V
16+n*78
-
484
Ordernr Veiling
159
A13
-
O
16+n*78
-
280
N13
Totaal partij: 2250
2222
[1]
Bij meerdere brieven op 1 kar steeds weer bij 1 beginnen te tellen.
[2]
Er zijn tags gedefinieerd voor 16 productkenmerken volgens presentatiepositie. Op het moment van schrijven van de specificatie zijn er maximaal 6 door de veiling gespecificeerd, 10 zijn er dus gereserveerd voor de toekomst. De eerste vier kenmerken komen overeen met de 4 sorteringvakjes op de papieren brief. Deze velden coderen alleen de waarde van het kenmerk, het type is af te leiden uit de artikelcode in combinatie met de presentatiepositie en de tabel “regulatory_feature_type”, beheerd door de stichting Florecom.
[3]
Er kunnen meerdere voorkomens hiervan aanwezig zijn, allen met dezelfde tag. Deze tag mag niet gebruikt worden voor K01,K02, P01,P02 of P03, omdat daar een veel efficiëntere codering voor bestaat, middels de tags 151 t/m 155. Deze wijze van coderen van productkenmerken heeft het voordeel dat er geen tabel nodig is om het type te achterhalen, echter kost het wel het dubbele aantal bits.
[4]
Als een kweker er voor kiest om de prijs niet op de brief af te drukken, hoeft de prijs ook niet in de QR-Code.
4.4 Verantwoording voor het niet opnemen van bepaalde gegevens Gegeven
Reden
Eindvestiging, zoals ingevuld op de PAB
Wordt nu ook niet in de EAB meegestuurd.
Veilgroep
Is niet van belang voor de adminstratie, uitsluitend voor de routing, en daarbij wordt nu de aanvoerbrief zelf gebruikt.
Karnummer
Wordt nu ook al van de kar zelf gescand. Hoeft dus niet in de QR-code.
GP-indicator
Niet van belang voor de administratie, staat groot op de aanvoerbrief.
Eenkoopskar Kwaliteit
Afleidbaar uit Keur1 en Keur2.
Registratie code
Dit is alleen van belang voor de kweker, en deze zal dit gegeven al in zijn eigen EAB-pakket hebben staan.
Informatiecode
Specifiek FloraHolland, en zij hebben dit niet in hun QR-spec opgenomen.
Veilvolgorde
Alleen interessant voor het opstellen van de karren, niet voor de administratie.
5. Versies Het toevoegen, wijzigen, of verwijderen van een algemene kolomdefinitie zal er toe leiden dat het minor versienummer in de QR-code opgehoogd wordt, en het document versienummer weer bij nul begint. Het wijzigen van de keuzes van een veiling heeft tot gevolg dat slechts het document versienummer ophoogt. Het versienummer van dit document is als volgt samengesteld: <Major versienummer QR-code> . <Minor versienummer QR-code> .
.
6. QR-code Plantion 6.1 Algemeen ●
De QR-code wordt linksboven op de brief afgedrukt, afmeting maximaal 50 x 50 mm groot.
●
De QR-code wordt alleen afgedrukt op blanco A4-papier geprinte aanvoerbrieven.
●
Iedere brief heeft een eigen QR-code met de informatie van de betreffende brief.
●
Versie afhankelijk van de hoeveelheid te coderen data, foutcorrectie-niveau M of Q. M lijkt de beste keuze, deze wordt in de ISO specificatie als standaard genoemd.
6.2 Datagebruik door Plantion Welke versie QR-code geschikt is, hangt af van de hoeveelheid data die opgeslagen moet worden. In onderstaande tabel is de maximum hoeveelheid data aangegeven. KL
BB
Overhead [bytes]
12
12
Brief [bytes]
37
62
Partij [bytes]
281
278
331
352
Totaal
Dit is een maximum, bij enkele praktijktests van volledig ingevulde brieven kwam de hoeveelheid data niet boven de 200 bytes.
7