Closed schoenenb closed 6 years ago
Tom hat was gezaubert:
The actual problem was that IO exceptions thrown from a component would make the scheduler crash. This is fixed.
Ich werde nun die Schnittstelle nochmals zu einem Komplettexport forcieren.
Merci :) Kannst du Bescheid geben, wenn der Export durch ist, dass ich das an WS weiterleiten kann?
...der Gesamtexport 2018 liegt im Schnittstellenverzeichnis \\Wdp3270\optinomic$\honos_interface
zum Import durch PABS bereit.
=> Ich beobachte nun dieses File: Bei Erfolg wandert dieses in Archive
(close issue) ansonsten in Failed
.
Hmm... => Failed
=> E-Mail:
Lieber Herr Graf, Herr Vögeli
Gemäss unserer Besprechung haben wir unsere Schnittstelle auf INCREMENT (Neue Einträge / Veränderungen) umgestellt. => Dies scheint auch gut zu funktionieren, was ich aus den Files \Wdp3270\optinomic$\honos_interface\Archive lesen kann.
Klinik Südhang hatte mir nun berichtet, dass einige 2018’er Messungen fehlen würden:
Failed
verschoben.=> Darf ich Sie bitten, das folgende 2018’ er File zum „Import“ zu überreden. Danke!
Ich kann darin keine Fehler erkennen. Allenfalls CR/LF Thematik, da dieses File „manuell“ angestossen wurde?
Für Fragen sehe ich Ihnen gerne zur Verfügung.
Mit freundlichen Grüssen Beat Ottiger
Zudem wird ab sofort sichergestellt, dass es keine "leeren" datum_erhebung_honos
mehr haben kann wenn das Austrittsdatum unbekannt ist.
https://github.com/Optinomic/apps/commit/37313bcf2803605aad5a6017301bc4eba2b31ca5
Bei folgendem Fall wurden keine HoNOS-Daten ins Pabs übertragen (Austritt am 6.3.18): http://optinomic.cust.local/client.new/#/patient/1068/stay/1781/app/ch.suedhang.apps.honos.production/template/scores_table Findest du heraus, ob das ein anderer Sonderfall ist?
...ich habe die HoNOS von diesem PAT/FALL nochmals angestossen und hat perfekt funktioniert. Sollte nun somit eingelesen sein.
...was hier der Sonderfall ist - gute Frage: Was ich mir vorstelle könnte ist:
=> Beobachten wir mal weiter. Alle anderen wurden korrekt eingelesen? Or?
Hmm, sollte eigentlich nicht sein, da es ein regulärer Austritt war. Alle anderen wurden korrekt eingelesen (oder Wale hat es nicht bemerkt ;)). Habe jetzt aber gerade gesehen, dass bei einem anderen Austritt vom 6.3. der Austritts-HoNOS im Pabs noch fehlt, der Eintritt ist jedoch drin: http://optinomic.cust.local/client.new/#/patient/3660/stay/5537/app/ch.suedhang.apps.honos.production/template/scores_table
Bei beiden diesen Fällen ist im Psychologie-Doc der Austritt noch nicht abgeschlossen - kann es etwas damit zu tun haben? Oder liefert die Schnittstelle fortlaufend Daten ans Pabs?
Hier ist das effektive Erfassungsdatum 2018-03-09 vs. dem angegebenen Datum 2018-03-06 => Exporte müssen auf das "Filled-Date" prüfen um die "heutigen" Erfassungen mitzubekommen.
Werde dies heute am späteren Nachmittag angehen. Fix des Exports und nochmaliger Komplettexport 2018 - damit allfällige "Missings" drin sind.
Fixed by https://github.com/Optinomic/apps/commit/52255a8167771d76c4dd0fafce153eaf854d99de => Fehler war die Rückdatierung.
Gesamtexport: Erfolgreich eingelesen => Sollten alle Daten drin sein!
Hmm, d.h. auch bei zukünftigen Rückdatierungen funktioniert die Schnittstellenübertragung, richtig? Andernfalls müssten wir die Therapeuten informieren, dass sie NICHT mehr rückdatieren sollen. Das war drum die bisherige Anleitung, damit das Datum dann stimmt, auch wenn sie's später ausfüllen oder es vom QM später eingegeben wird...
...ab sofort - alles GUT! :-)
Eine (kleine) Bitte: Könntest du bei folgenden 5 Personen den HoNOS nochmals anstossen?
http://optinomic.cust.local/client.new/#/patient/3115/stay/5611/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3594/stay/5502/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3693/stay/5612/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3661/stay/5539/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/1844/stay/5566/app/ch.suedhang.apps.honos.production/template/scores_table
Ich bin die Daten von Januar bis März mal durchgegangen und bei diesen Fällen musste ich eine bis 3 Variablen ändern und dachte, die werden einfach wieder überschrieben. Oder würde es funktionieren, wenn ich sie aus dem pabs rauslösche, dass es dann die neuen Zahlen reinspült, wenn im pabs noch nichts drin ist?
Folgendes Procedere habe ich soeben ausgeführt:
http://optinomic.cust.local/api/#/admin/tools/sql
Einstellungen: CSV, File-Download, No-Header, Comma(,)
SELECT
-- START: Optinoimc Default | Needed for Export-Toolbox
survey_response_view.patient_id as optinomic_patient_id,
survey_response_view.stay_id as optinomic_stay_id,
survey_response_view.event_id as optinomic_event_id,
survey_response_view.survey_response_id as optinomic_survey_response_id,
survey_response_view.filled as optinomic_survey_filled,
((cast(response AS json))->>'id') as optinomic_limesurvey_id,
-- END: Optinoimc Default | Needed for Export-Toolbox
patient.cis_pid as cis_pid,
CONCAT(patient.cis_pid, '00', RIGHT((stay.cis_fid/100)::text,2)) as medstatfid,
stay.cis_fid/100 as fid,
((cast(response AS json))->>'FID') as fid_survey,
'PH' as Rekordart,
71286515 as betriebsnummer_bur,
CASE WHEN ((cast(response AS json))->>'q401V04')~E'^\\d+$' THEN ((cast(response AS json))->>'q401V04')::integer ELSE 3 END as zeitpunkt_honos,
((cast(response AS json))->>'q401V05') as dropoutcode_honos,
((cast(response AS json))->>'q401V06') as spezifikation_dropout_honos_andere,
CASE (CASE WHEN ((cast(response AS json))->>'q401V04')~E'^\\d+$' THEN ((cast(response AS json))->>'q401V04')::integer ELSE 3 END)
WHEN 1 THEN to_char(stay.start, 'YYYYMMDD')
WHEN 2 THEN
CASE (CASE WHEN (to_char(stay.stop, 'YYYYMMDD') IS NULL OR to_char(stay.stop, 'YYYYMMDD') = '') THEN 1 ELSE 2 END)
WHEN 1 THEN TO_CHAR(TO_DATE(((cast(response AS json))->>'q402V00'), 'YYYY-MM-DD'), 'YYYYMMDD')
WHEN 2 THEN to_char(stay.stop, 'YYYYMMDD')
END
ELSE TO_CHAR(TO_DATE(((cast(response AS json))->>'q402V00'), 'YYYY-MM-DD'), 'YYYYMMDD')
END as datum_erhebung_honos,
((cast(response AS json))->>'H1[402V01]') as honos_h1,
((cast(response AS json))->>'H1[402V02]') as honos_h2,
((cast(response AS json))->>'H1[402V03]') as honos_h3,
((cast(response AS json))->>'H1[402V04]') as honos_h4,
((cast(response AS json))->>'H1[402V05]') as honos_h5,
((cast(response AS json))->>'H1[402V06]') as honos_h6,
((cast(response AS json))->>'H1[402V07]') as honos_h7,
((cast(response AS json))->>'H1[402V08]') as honos_h8,
((cast(response AS json))->>'q402V09') as honos_h8a,
((cast(response AS json))->>'q402V10') as honos_h8b,
((cast(response AS json))->>'H2[402V11]') as honos_h9,
((cast(response AS json))->>'H2[402V12]') as honos_h10,
((cast(response AS json))->>'H2[402V13]') as honos_h11,
((cast(response AS json))->>'H2[402V14]') as honos_h12
FROM "survey_response_view"
LEFT JOIN patient ON(survey_response_view.patient_id = patient.id)
LEFT JOIN stay ON(survey_response_view.stay_id = stay.id)
WHERE module = 'ch.suedhang.apps.honos.production'
AND ((cast(response AS json))->>'q401V04') != ''
AND stay.cis_fid is not null
AND survey_response_view.patient_id != '1169'
AND survey_response_view.patient_id != '387'
AND survey_response_view.patient_id != '1'
ORDER BY patient.cis_pid, stay.cis_fid;
Example: 201803290816.csv
=> 201803290816_full
Extension .csv entfernen. Die Erweiterung _full
dient lediglich als Zeichen, dass dieses File manuell angestossen wurde.
Copy File to \\Wdp3270\optinomic$\honos_interface
. (Allenfalls Berechtigung bei Thömu anfragen für dieses Share.) Einige Minuten abwarten.
Bei Erfolg wird das File in \\Wdp3270\optinomic$\honos_interface\Archive
verschoben. Allenfalls auch direkt in PABS kontrollieren.
Danke tuusig! Ganz so schnell wär's nicht nötig gewesen, aber bei Prio2 habe ich immer das Gefühl, dass es liegen bleibt... ;)
Bevor ich was kaputte: Die Schnittstelle hat am 14.5. letztmals HoNOS-Daten geliefert. Kann ich das nach deiner Anleitung von oben manuell anstossen, oder läuft da etwas nicht mehr?
...das oben beschriebene Szenario kann auf jeden Fall ausgelöst werden. Vielleicht sowieso gut vor der Server-Umstellerei. :-)
Voilà, wieder mal zu früh gestürmt: die seither herausgezogenen HoNOS-Daten sind im "failed" Ordner gelandet. Abgesehen von den Zahlen sehe ich aber keine Unterschiede zu den "archive"-Files. Liegt das Problem bei Pabs?
...hmm - alle im "failed"? Strange. Versuche mal das "_full" Szenario von Oben. Falls dies ebenfalls "failed" - dann muss PABS kontaktiert werden.
Kann ich mich da selber melden, oder brauchen die mehr Infos von der Schnittstelle?
Du kannst Dich selber melden. Joel.Voegeli@agb70.ch war nebst Daniel.Graf@agb70.ch daran beteiligt. Einfach die "Files" mitsenden mit dem Hinweis, dass diese in "Failed" landen. Was wie wo - müssten sie wissen.
Fehlen allenfalls "Datum" Angaben in den Files? War mal ein Thema.
Wie wäre die neue Adresse zur Pabs-Schnittstelle? Von AGB70 habe ich bisher noch keine Antwort erhalten.
\srv-appl-02\optinomic$
=> Ach ja... wie gewohnt kann die Reaktion dauern. Ist denn PABS schon auf dem neuen System?
Seit heute Mittag
Von den 77 Austritten 2018 fehlen bei folgenden 6 Fällen die HoNOS-Angaben im PABS. Die Antworten sind in Optinomic vorhanden und ich habe soweit keine Auffälligkeiten feststellen können. Da ich mich mit der Schnittstelle nicht auskenne, gebe ich die Frage drum gleich weiter: @ottigerb könntest du dem bitte nachgehen?
http://optinomic.cust.local/client.new/#/patient/2862/stay/1800/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/1484/stay/1822/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3091/stay/1812/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3555/stay/1799/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3648/stay/5523/app/ch.suedhang.apps.honos.production/template/scores_table http://optinomic.cust.local/client.new/#/patient/3612/stay/1835/app/ch.suedhang.apps.honos.production/template/scores_table