diff options
Diffstat (limited to 'scripts/klinik_anamnese-getEcogStatus.js')
| -rw-r--r-- | scripts/klinik_anamnese-getEcogStatus.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/klinik_anamnese-getEcogStatus.js b/scripts/klinik_anamnese-getEcogStatus.js new file mode 100644 index 0000000..763b683 --- /dev/null +++ b/scripts/klinik_anamnese-getEcogStatus.js @@ -0,0 +1,30 @@ +// To be included in Script "Beim Neuanlegen" of form "DNPM Klink/Anamnese" + +executePluginMethod('DNPMHelper', 'getEcogStatus', {PatientId: getPatient().id}, (resp) => { + if (resp.status.code === 1) { + // Hack: Get version id of ECOG status as stored in Database + // by using initial empty entry and its version. + // Since OS always creates an initial empty entry for subforms + // this can be used to get required version id from within a form script. + let version = getFieldValue('ECOGVerlauf')[0].ECOG.version; + + // Abort if no version available. + if (version == null) { + return; + } + + let uf = resp.result + .map(item => { + let date = item.date.match(/^\d{4}-\d{2}-\d{2}/); + let ecog = []; + ecog.val = item.status; + ecog.version = version; + return { + Datum: [date ? date[0] : null, 'exact'], ECOG: ecog + }; + }) + // Ignore items without valid values + .filter(item => item.Datum[0] && (item.ECOG >= 0 && item.ECOG <= 5)); + setFieldValue('ECOGVerlauf', uf); + } +}, false);
\ No newline at end of file |
