From c7d6851130aa5c69c81e9414bd3a8a2b790d7ad5 Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Wed, 27 Sep 2023 16:24:43 +0200 Subject: Verschiebe Formularscripte in Verzeichnis `/scripts` --- scripts/klinik_anamnese-getEcogStatus.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 scripts/klinik_anamnese-getEcogStatus.js (limited to 'scripts/klinik_anamnese-getEcogStatus.js') 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 -- cgit v1.2.3