view · edit · sidebar · attach · print · history

Index | Niklaus.20180214-lighthouse >>

20180228-gtin

Summary

  • Missing, erroneous GTINs in oddb2xml
  • Add link oddb.org "Android generika App Download"
  • Keep in Mind

Commits

Index

Missing, erroneous GTINs in oddb2xml

We got the following info from refdata:

In Ihrer Email vom 9. Februar verweisen Sie für über 2000 Artikel aus dem Sortiment der Parapharmazie auf Fehlermeldungen wegen unkorrekter Feldlänge und Auffüllen mit führenden Nullen.

Rückfragen unsererseits bei HCI Solutions einerseits und Bestätigungen meiner ehemaligen Kollegen von GS1 Schweiz haben ergeben, dass diese GTIN gültig sind, aus den Nummernkreisen der jeweiligen Hersteller stammen und gemäss dem GS1 General Specifications bzw. GTIN Allocation Rules vergeben wurden. HCI hat uns zudem mitgeteilt, dass die GTIN seit Jahren in dieser Form publiziert werden: der Webservice liefert einen String mit einer maximalen Länge von 14 Zeichen aus.

GTIN selbst können 8, 12, 13 oder 14 Zeichen lang sein (https://de.wikipedia.org/wiki/Global_Trade_Item_Number)


<xs:element name="GTIN" nillable="false">
<xs:annotation><xs:documentation xml:lang="EN">Reference number (GTIN = Global trade item number)</xs:documentation></xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="14"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Von Seiten GS1 Schweiz stammt die folgende Hintergrundinformation:

Es gibt GTINs mit den Längen 8, 12, 13 und 14 Stellen.  

GTIN-8 ist vorgesehen für sehr kleine Produkte, wo Platz sehr beschränkt ist.  

GTIN-12 resp. UPC Code, kommt aus der Fusion von GS1 und der UPC vor über 10 Jahren. 

GTIN-13 und GTIN-14 sind die in Europa gebräuchlichen GTINs.

Zum Prüfen von GTINs gibt es das GS1 Informationssystem GEPIR, also www.gepir.ch oder der globale Zugriff (http://gepir.gs1.org/). Dort kann eine GTIN auf Ihre Gültigkeit geprüft werden. Entweder kommt der Markeninhaber als Rückmeldung zurück oder der Hinweis, dass dieses Mitglied seine Daten hat schützen lassen oder ein Hinweis, dass GTIN ungültig oder nicht bekannt ist.

Aus den monierten Datensätzen wurde pro GCP eine der GTINs in GEPIR geprüft. Diese stammen von den Firmen Smith & Nephew, Salter, Hollister, RepoMed, McDavidKeeGuard, Roche Diabetes und Teleflex. Wobei Roche und Teleflex GTIN-13 verwenden.

Zur Datenspeicherung werden GTINs oftmals auf 14 Stellen aufgefüllt, also mit führenden NULL, welches die Prüfziffer nicht verändert. Es gibt aber auch die Möglichkeit GTINs in Ihrer Länge von 8, 12, 13 oder 14 Stellen Länge zu speichern. 

Bei GEPIR existiert eine Version PREMIUM, welche zur Prüfung von GTINs in Applikationen eingebaut werden könnte.

Using the http://gepir.gs1.org/index.php/search-by-gtin one does get a correct answer for the following testes GTINs

  • 899071000756
  • 05708932938747
  • 40495576
  • 96077580 (DA 675 Hearing Aid batteries)

Looking at the log oddb2xml I think it is not correct to always generate a GTIN (eg. as seen in the log via BagXmlExtractor: Setting missing GTIN 7680461170349 in SwissmedicNo8 46117034 BagDossierNo 14667 PackId 766 Arteoptic.), as this GTIN is not found via GEPIR. But why does it not have a GTIN?

Looking at the Preparations.xml I see two packs

 <Preparation ProductCommercial="525">
    <NameDe>Arteoptic</NameDe>
    <NameFr>Arteoptic</NameFr>
    <NameIt>Arteoptic</NameIt>
    <DescriptionDe>Gtt Opht 1 % </DescriptionDe>
    <DescriptionFr>gtt opht 1 % </DescriptionFr>
    <DescriptionIt>coll 1 % </DescriptionIt>
    <AtcCode>S01ED05</AtcCode>
    <SwissmedicNo5>46117</SwissmedicNo5>
    <FlagItLimitation>Y</FlagItLimitation>
    <OrgGenCode />
    <FlagSB20>N</FlagSB20>
    <CommentDe />
    <CommentFr />
    <CommentIt />
    <VatInEXF>N</VatInEXF>
    <Packs>
      <Pack ProductKey="525" PackId="765">
        <DescriptionDe>Fl 5 ml</DescriptionDe>
        <DescriptionFr>fl 5 ml</DescriptionFr>
        <DescriptionIt>bot 5 ml</DescriptionIt>
        <SwissmedicCategory>B</SwissmedicCategory>
        <SwissmedicNo8>46117018</SwissmedicNo8>
        <FlagNarcosis>N</FlagNarcosis>
        <FlagModal />
        <BagDossierNo>14667</BagDossierNo>
        <GTIN>7680461170189</GTIN>
<..>
        <Status>
          <IntegrationDate>15.03.1985</IntegrationDate>
          <ValidFromDate>15.03.1985</ValidFromDate>
          <ValidThruDate>31.12.9999</ValidThruDate>
          <StatusTypeCodeSl>0</StatusTypeCodeSl>
          <StatusTypeDescriptionSl>Initialzustand</StatusTypeDescriptionSl>
          <FlagApd>N</FlagApd>
        </Status>
      </Pack>
      <Pack ProductKey="525" PackId="766">
        <DescriptionDe>3 Fl 5 ml</DescriptionDe>
        <DescriptionFr>3 fl 5 ml</DescriptionFr>
        <DescriptionIt>3 bot 5 ml</DescriptionIt>
        <SwissmedicCategory>B</SwissmedicCategory>
        <SwissmedicNo8>46117034</SwissmedicNo8>
        <FlagNarcosis>N</FlagNarcosis>
        <FlagModal />
        <BagDossierNo>14667</BagDossierNo>
        <GTIN />
<...>
        <Status>
          <IntegrationDate>15.03.1985</IntegrationDate>
          <ValidFromDate>15.03.1985</ValidFromDate>
          <ValidThruDate>31.12.9999</ValidThruDate>
          <StatusTypeCodeSl>0</StatusTypeCodeSl>
          <StatusTypeDescriptionSl>Initialzustand</StatusTypeDescriptionSl>
          <FlagApd>N</FlagApd>
        </Status>
      </Pack>
    </Packs>

Why does one package have a defined GTIN and the other one not? Using grep -c "GTIN />" downloads/Preparations.xml I see that we we have 608 empty GTIN in Preparations.xml.

Fixed the problem with commit Handle GTIN with size of 8,12,14 correctly

Add link oddb.org "Android generika App Download"

Must add this link on the homepage below the iPad/iPhone Link.

Trying to run the spec tests failed with

  8) ch.oddb.org snapback should work following a search via IKSNR
     Failure/Error: @browser.text_field(:name, 'email').set(user)

     Selenium::WebDriver::Error::UnknownError:
       unknown error: call function result missing 'value'
         (Session info: chrome=65.0.3325.88)
         (Driver info: chromedriver=2.30.477691 (6ee44a7247c639c0703f291d320bdf05c1531b57),platform=Linux 4.5.4 x86_64)

Calling sudo emerge chromedriver fixed the problem.

Pushed commit Added link to android generika app

Making the snapback spec tests work again. Pushed commit Make snapback spec tests work again

view · edit · sidebar · attach · print · history
Page last modified on February 28, 2018, at 04:52 PM