Im SL-FHIR-Export des BAG erscheinen einzelne Packungen zweimal unter derselben Swissmedic-Nummer: einmal richtig mit GTIN und Packungspreis, einmal ohne GTIN mit der Beschreibung „1 Stk" und dem Preis pro Stück.
Beide werden über package_by_ikskey auf dieselbe ODDB-Packung abgebildet, beide Preise geschrieben — und stehen bleibt, was zuletzt kam.
Beispiel Enflonsia (Zulassung 70145)
|
GTIN |
Beschreibung |
Publikumspreis |
Exfactory |
| korrekt |
7680701450026 |
Fertspr 10 Stk |
3545.85 |
3260.00 |
| Geist |
keine |
Fertspr 1 Stk |
354.60 |
0.00 |
Die Einzelpackung existiert im selben Bündel bereits korrekt als 70145001 (GTIN 7680701450019, 369.35). Der Geistereintrag trägt also die Nummer der 10er-Packung.
Dieselbe Konstellation bei 62502002 (Menveo, 5er) und 70403002 (Comirnaty LP.8.1, 10er).
Auswirkung, gemessen am 25.08.2026
Vollständiger Abgleich aller gespeicherten Publikumspreise gegen die GTIN-zugeordneten Preise des Exports:
geprueft 10 013
stimmt 10 010
weicht ab 2
kein Preis bei uns 1
| GTIN |
Produkt |
BAG |
ch.oddb.org |
Faktor |
| 7680701450026 |
Enflonsia 105 mg/0.7 mL |
3545.85 |
354.60 |
10 |
| 7680625020022 |
Menveo Pulver und Lösung |
188.75 |
37.75 |
5 |
Encepur, FSME Immun Junior und Comirnaty stehen zufällig richtig — welcher Preis bleibt, entscheidet die Reihenfolge im Bündel.
Was gemacht wurde
BsvFhirPlugin#ghost_pack? verwirft eine Packung ohne GTIN, wenn zur selben Zulassungsnummer eine mit GTIN vorliegt.
Ein pauschaler Filter wäre falsch gewesen: von 10255 Packungen im Export haben 55 keine GTIN, davon sind 49 die einzigen unter ihrer Nummer (Candesartan CPS und andere) und völlig legitim. Erst der Zwilling macht den Geist aus.
Regressionstests in test/test_plugin/bsv_fhir.rb, Klasse TestBsvFhirPluginGhostPack.
Offen
- Der Filter greift erst beim nächsten Import; Enflonsia und Menveo stehen bis dahin falsch.
- Beim BAG gemeldet (franziska.sendfeld@bag.admin.ch, 25.08.2026): sind die Einträge als Stückpreis beabsichtigt, oder Dubletten? Falls beabsichtigt, wäre eine eigene Kennzeichnung nötig, statt auf das Fehlen der GTIN schliessen zu müssen.
Im SL-FHIR-Export des BAG erscheinen einzelne Packungen zweimal unter derselben Swissmedic-Nummer: einmal richtig mit GTIN und Packungspreis, einmal ohne GTIN mit der Beschreibung „1 Stk" und dem Preis pro Stück.
Beide werden über
package_by_ikskeyauf dieselbe ODDB-Packung abgebildet, beide Preise geschrieben — und stehen bleibt, was zuletzt kam.Beispiel Enflonsia (Zulassung 70145)
Die Einzelpackung existiert im selben Bündel bereits korrekt als 70145001 (GTIN 7680701450019, 369.35). Der Geistereintrag trägt also die Nummer der 10er-Packung.
Dieselbe Konstellation bei
62502002(Menveo, 5er) und70403002(Comirnaty LP.8.1, 10er).Auswirkung, gemessen am 25.08.2026
Vollständiger Abgleich aller gespeicherten Publikumspreise gegen die GTIN-zugeordneten Preise des Exports:
Encepur, FSME Immun Junior und Comirnaty stehen zufällig richtig — welcher Preis bleibt, entscheidet die Reihenfolge im Bündel.
Was gemacht wurde
BsvFhirPlugin#ghost_pack?verwirft eine Packung ohne GTIN, wenn zur selben Zulassungsnummer eine mit GTIN vorliegt.Ein pauschaler Filter wäre falsch gewesen: von 10255 Packungen im Export haben 55 keine GTIN, davon sind 49 die einzigen unter ihrer Nummer (Candesartan CPS und andere) und völlig legitim. Erst der Zwilling macht den Geist aus.
Regressionstests in
test/test_plugin/bsv_fhir.rb, KlasseTestBsvFhirPluginGhostPack.Offen