# Package at.chipkarte.client.das.soap

Interface und Klassen des Datenabfrageservice (DAS).

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  IDasService | Dieses Service stellt die Funktionalitäten des Datenabfrageservices (DAS) Version 7 zur Verfügung.

- Class Summary
  Class | Description
  --- | ---
  IEKOComparison | Detaildaten zu einem in der Arzneispezialität enthaltenen Wirkstoff.
  IEKOEconomicGrouping | Enthält das Ergebnis der Funktion `retrieveIEKOEconomicGrouping`.
  IEKOIngredient | Detaildaten zu einem in der Arzneispezialität enthaltenen Wirkstoff.
  IEKOIngredientReference | Die Referenzdaten (Name und ATC-Code) eines Wirkstoffes.
  IEKOMedicament | Detaildaten der in Vergelich gefundenen Arzneispezialität.

## Package at.chipkarte.client.das.soap Description

Interface und Klassen des Datenabfrageservice (DAS). Enthält den SOAP Endpoint `IDasService` sowie die dazu notwendigen Klassen.

## Allgemein

Die Abkürzung DAS steht für Datenabfrageservice.
Das Datenabfrageservice gliedert sich in folgende Unterservices:

- IEKO - Infotool für den Erstattungskodex

### Rechte

Für die Funktionen des Datenabfrageservice benötigt der Vertragspartner für die Durchführung das Recht DAS.CORE (Ausnahme: vertragspartnerunabhängige Funktionen zur Parameterwertermittlung).
Wird eine Funktion, welche dieses Recht benötigt, ohne das entsprechende Recht aufgerufen, erhält man die Exception AccessException.MISSING_DAS_CORE.
Mittels der Funktion getBerechtigungen() aus dem BASE Service ist es möglich, die Rechte des Vertragspartners abzufragen.

### Dynamische Ermittlung von Parameterwerten des e-card-Regelwerks

Es sind momentan keine Regelwerkswerte für die Nutzung des Datenabfrageservice notwendig.

### Online-/Offline-Status

Ob eine Verbindung für ein bestimmtes Service zum e-card-Serversystem besteht, sollte im Normalbetrieb NICHT abgefragt werden! Die Abfrage sollte nur durchgeführt werden um festzustellen, ab wann das Service wieder online ist, sofern zuvor Verbindungsprobleme aufgetreten sind.
Die empfohlene Frequenz für die Abfragen liegt in diesem Fall bei > 1 Minute.
Die Abfrage ist über eine REST-Schnittstelle durchzuführen:
GET https://services.ecard.sozialversicherung.at/<service-name>/<versionsnummer>/status (PROD-Instanz) bzw. GET https://services-a.ecard-test.sozialversicherung.at/<service-name>/<versionsnummer>/status (VPSWH-Instanz)
Ist der Server erreichbar, wird die Response HTTP 200 retourniert. Im Offline-Fall wird keine Response retourniert.

### Infotool für den Erstattungskodex (IEKO)

IEKO dient der Abfrage des ökonomischen Vergleichs und somit zur Unterstützung des elektronischen Erstattungskodex.

#### eEKO

Sowohl der elektronische Erstattungskodex (eEKO), als auch die Funktionalität von IEKO darf nur verwendet werden, wenn die Nutzungsbedingungen des Dachverbands der Sozialversicherungsträger akzeptiert werden.
Der elektronische Erstattungskodex ist zu finden auf www.sozialversicherung.at bzw. auf www.erstattungskodex.at.

#### IEKO

Anhand einer Pharmazentralnummer werden die ökonomisch günstigsten Arzneispezialitäten zurückgeliefert.
Es werden dabei nur Pharmazentralnummern des eEKO unterstützt.
Die zurückgelieferten ökonomischen Vergleichsdaten enthalten folgende Informationen:

- die in den Eingangsdaten (mittels Pharmazentralnummer spezifizierte) Arzneispezialität mit Name und Pharmazentralnummer
- die Daten des Wirkstoffes (identer Wirkstoff) mit Name und ATC-Code
- die Vergleichsdaten zur Arzneispezialität - pro gefundenem Vergleich:

- Arzneispezialität - mit allen Daten zur Arznei (inklusive aller enthaltenen Wirkstoffe)
- Vergleichsposition (Rang)
- Vergleichskennzeichen (1er, 2er oder 3er Vergleich)

Die retournierten Vergleichsdaten sind entsprechend für die Anzeige aufzubereiten.

##### Aufbereitung der Ergebnisse des ökonomischen Vergleichs

Eine Verwendung des eEKO und des IEKO in der VPSW ist nur unter Einhaltung der Richtlinien der Zertifizierungsstelle zulässig.
Bezüglich geltender Implementierungsvorgaben siehe Nutzungsbedingungen.
Ein auf den Nutzungsbedingungen basierender Aufbereitungsvorschlag könnte wie folgt aussehen:

## Funktionalität des DAS

Die Integration von DAS in die Vertragspartnersoftware ist optional.
Angebotene Funktionen:

- IEKO:

- ökonomischen Vergleichsdaten abfragen (retrieveEconomicGrouping())

### IEKO

#### ökonomischen Vergleichsdaten abfragen (retrieveEconomicGrouping())

Mit dieser Funktion werden die ökonomischen Vergleichsdaten zu der in den Eingangsdaten übergebenen Pharmazentralnummer ermittelt.
Das Rückgabeobjekt ist befüllt, wenn mindestens ein Vergleichsdatensatz ermittelt werden konnte (sofern es sich um eine Arzneispezialität des eEKO handelt, wird zumindest immer die gesuchte Arzneispezialität selbst retourniert).
Die Vergleichsdaten sind anhand des Rangs (äquivalent Kassenverkaufspreis/Einheit) sortiert.
Kann zu der angegebenen Pharmazentralnummer kein Ergebnis ermittelt werden (z.B. Pharmazentralnummer ist nicht bekannt, da nicht im eEKO), wird der Fehler DasException.IEKO_NO_COMPARISON_FOUND ausgegeben.
Hinweis bzgl. der zurückgelieferten Arzneispezialitäten-Daten in den Vergleichsdaten:
Die Arzneispezialitäten-Daten enthalten, sofern für die Arzneispezialität vorhanden, auch den Indikations- bzw. den Regeltext. Zur Übermittlung dieser Texte im Objekt stehen für jede der beiden Texte jeweils 2 Felder zur Verfügung:

- ohne Formatierung (indicationText + ruleText)
- mit Formatierung (indicationTextHTMLFormatted + ruleTextHTMLFormatted)
  Es handelt sich hierbei um eine HTML-Formatierung (Listen und Zeilenumbrüche).

Zusätzlich ist im Falle einer vorliegenden Suchtgiftvignette der Parameter ingredientNarcoticSign versorgt. In diesem Fall sollte bei der Anzeige der Medikationsdaten der Wert der Suchtgiftvignette hervorgehoben werden.
Für jede Arzneispezialität wird ein Beschreibungstext hinsichtlich der Rezeptpflicht der Arzneispezialität retourniert. Diese Beschreibung ist dem Benutzer bei Ansicht der Arzneispezialitäten-Daten entsprechend anzuzeigen.

##### Szenario 5 - IEKO - ökonomische Vergleichsdaten abfragen: