Optinomic / apps

Optinomic applications
1 stars 2 forks source link

Act-Info Austritt werden nicht angezeigt #163

Closed SonjaKaufmann closed 6 years ago

SonjaKaufmann commented 6 years ago

Bei diversen Patienten werden im Datensatz vorhandene Resultate nicht in der Graphik angezeigt z.B. http://optinomic.cust.local/client.new/#/patient/3289/stay/1597/app/ch.suedhang.apps.actinfo_aus.production/template/ActInfo

http://optinomic.cust.local/client.new/#/patient/2202/stay/1686/app/ch.suedhang.apps.actinfo_aus.production/template/ActInfo

ottigerb commented 6 years ago

Bei diesen Patienten liegt ein JavascriptError "JS execution failed: [stdin]:201\…pile (module.js:410:26)\n at node.js:578:27\n vor. Es sieht so aus als würden wir über Am 9.11.2017 gab Herr B... an, Nichtraucher zu sein. stolpern. => Tauche hier mal ein.

Frage:

Erwartet wäre der Text (z.B. Bei Austritt bestand eine gering ausgeprägte körperliche Nikotinabhängigkeit. (∑=0). Bei Austritt wurde folgende Abstinenzmotivation angegeben: Erste Schritte zum Rauchstop unternommen, Planung weiterer Schritte ist sinnvoll.) bei Fagerström - oder?

ottigerb commented 6 years ago

Danke für den Hinweis! Fixed by https://github.com/Optinomic/apps/commit/d44babb227df264b5d8419e81bec06b2444bef87 .

Calculation /recompute ist angestossen - jedoch noch nicht beendet! Ich werde folgende Test's durchführen:

Patient/Fall : 2202 / 1686 & Patient/Fall : 3289 / 1597

=> falls i.O. => Close!

ottigerb commented 6 years ago

Confirmed - working! :-)

schoenenb commented 6 years ago

Funktioniert leider wieder nicht mehr - ev. weil ich die App neu geladen habe? Weil der Zusatz von stay.start und stay.stop im export.sql nicht funktioniert hat, habe ich den sql_init ganz aus der opapp von actinfo_aus_production gelöscht, um die App wieder aktivieren zu können.

ottigerb commented 6 years ago

sql_init - Maaan! Anyway: M.E. werden nun die Calculations nochmals gerechnet. OK - let's wait and see - prüfe doch die oben genannten Testfälle nach dem Mittagessen nochmals. Hopefully CLOSE!

schoenenb commented 6 years ago

Das klingt gut, hab mir noch gedacht, ob ich einfach etwas warten sollte. Werde mich am Nami nochmals melden. Soll ich die Änderungen vom act-info Eintritt sicherheitshalber reverten? Eigentlich ist es ja egal, solange niemand auf die Idee kommt, die App zu deaktivieren.

ottigerb commented 6 years ago

Rervert - öhm... ich würde eher ein "OPAPP_OLD" oder sowas erstellen. Eintritt? Dieses Issue bezieht sich auf "Austritt" - sind nun die Eintritt-Berechnungen nicht mehr vorhanden? Anyway: Nachmittag.

schoenenb commented 6 years ago

Neinnein, ich habe bloss die export.sql-Dateien bei beiden geändert, aber zum Testen nur die Austritts-app deaktiviert.

schoenenb commented 6 years ago

Hab's eben versucht bei den beiden Kandidaten von oben und beim Fridolin Müller - leider weiterhin keine Ausgabe der Austrittsdaten.

ottigerb commented 6 years ago

...versuche mal "/recompute" bei diesen PID's / app / calculation anzustossen.

ottigerb commented 6 years ago

Note to myself:

/stays/1686/survey_responses/ch.suedhang.apps.actinfo_aus.production/full liefert ein calculations_all : Array(0).
=> Issue eröffnet @ https://github.com/ottigerb/therapy-server/issues/492

ottigerb commented 6 years ago

Fixed by https://github.com/ottigerb/therapy-server/issues/492

@schoenenb Folgendes ist vielleicht interessant zu lesen:

I added a column manual to calculation values to differentiate calculation values marked outdated automatically from clicks on "Recompute now".

The priority order is now: Patient calculation manually marked outdated. User calculation manually marked outdated. Patient calculation automatically marked outdated. User calculation automatically marked outdated. Normal loop over all modules and their calculations. (starting with patient calculations) Whenever there is an outdated calculation, the normal loop is interrupted (after it finishes the calculation it's currently computing) and the outdated calculation is recomputed. When there are no outdated calculations left, the loop is resumed at the same place it was stopped.

Also, for calculations automatically marked outdated, it waits at least 15 minutes from the latest precomputation. This is not the case for manually-marked calculation, so the "Recompute now" button works as a user would expect. I've also relaxed the conditions to delete obsolete calculations. It will wait at least a week before removing calculations from a module that has been uninstalled or whose calculations has been renamed/removed.

For new calculations, we still need to wait for the loop to consider them. This can take more or less time depending on the load on the calculation daemon. Making the daemon faster would still help even with the changes I've just made. Let's see if the situation gets better.

schoenenb commented 6 years ago

Was bei mir noch nicht ganz angekommen ist: was bedeutet (manually / automatically marked) outdated? Dass die calculation an sich überarbeitet und per commit hochgeladen wurde? Dass Daten geändert und eine Neuberechnung angefordert wurde?

What's going one here is that it gets continually interrupted by outdated calculations so it rarely has time to compute new calculations. https://github.com/ottigerb/therapy-server/issues/492#issuecomment-361866524

Geht's hier bei "new calculations" um die Berechnung neu erfasster Daten oder von neu erstellten calculations?

ottigerb commented 6 years ago

Manually: API-CALL /recompute absetzen. Automatically: Wenn Optinomic automatisch erkennt dass neue Daten vorhanden sind oder sich die Calculation verändert/überarbeitet hat/ist.

Bzgl. der zweiten Frage: Aktueller Stand des "Unwissens" ist:

  1. User-App-Calculations wurden berechnet
  2. Eine Patient-App-Calculations wurde berechnet
  3. Neu gerechnete Patient-Calc meldete der User-App-Calc - outdated, neu berechnen!
  4. Zurück auf 1.

=> Somit wurde viel "Berechnungszeit" generiert, welche durch die gezielte Reihenfolge behoben wurde. Auch wurde das ganze Handling verzögert. Z.B. bei Deinstallation der App werden nicht sofort deren Calculations gelöscht.

ottigerb commented 6 years ago

Ah ja... das könnte noch interessant sein:

Possible new issue: Why sql_init was not working?

Tom:

The error I found in the log was something like can't rename view column "vzax100" to "klinikeintritt".

Gibt/gab es allenfalls klinikeintritt doppelt?

In Zukunft wäre vielleicht folgendes Vorgehen sinnvoll:

  1. SQL der sql_init in SQL-Toolbox testen.
  2. Dummy Patient-App erstellen mit der neuen sql_init => Falls dies alles i.O. sql_init in Zielapp einpflegen.
schoenenb commented 6 years ago

Nein, die Variable "Klinikeintritt" existiert sonst nicht.

... can't rename view column "vzax100" to "klinikeintritt"

Heisst für mich, dass es die bisher an dieser Stelle stehende Variable nicht ersetzen kann. vzax100 steht nun an 3. statt wie bisher an 1. Stelle.

Die SQL-Abfragen hatte ich alle bereits in der SQL-Toolbox getestet, den 2. Teil kann ich mal ausprobieren. Oder einfach gleich ein Export für die neue Export-Toolbox machen. :)