diff --git a/db-service/lib/cqn2sql.js b/db-service/lib/cqn2sql.js index 3b081eb8d..ddb3ce880 100644 --- a/db-service/lib/cqn2sql.js +++ b/db-service/lib/cqn2sql.js @@ -4,12 +4,6 @@ const cqn4sql = require('./cqn4sql') const _simple_queries = cds.env.features.sql_simple_queries const _strict_booleans = _simple_queries < 2 -const BINARY_TYPES = { - 'cds.Binary': 1, - 'cds.LargeBinary': 1, - 'cds.hana.BINARY': 1, -} - const { Readable } = require('stream') const DEBUG = (() => { @@ -42,6 +36,12 @@ class CQN2SQLRenderer { } } + BINARY_TYPES = { + 'cds.Binary': 1, + 'cds.LargeBinary': 1, + 'cds.hana.BINARY': 1, + } + static _add_mixins(aspect, mixins) { const fqn = this.name + aspect const types = cds.builtin.types @@ -565,7 +565,7 @@ class CQN2SQLRenderer { buffer += '"' } else { - if (elements[key]?.type in BINARY_TYPES) { + if (elements[key]?.type in this.BINARY_TYPES) { val = transformBase64(val) } buffer += `${keyJSON}${JSON.stringify(val)}` @@ -613,7 +613,7 @@ class CQN2SQLRenderer { buffer += '"' } else { - if (elements[this.columns[key]]?.type in BINARY_TYPES) { + if (elements[this.columns[key]]?.type in this.BINARY_TYPES) { val = transformBase64(val) } buffer += `${sepsub}${val === undefined ? 'null' : JSON.stringify(val)}` diff --git a/hana/lib/HANAService.js b/hana/lib/HANAService.js index 7925db4e1..4e9d29885 100644 --- a/hana/lib/HANAService.js +++ b/hana/lib/HANAService.js @@ -544,7 +544,7 @@ class HANAService extends SQLService { this.values = values return false } - if (x.element?.type?.indexOf('Binary') > -1) { + if (x.element?.type in this.BINARY_TYPES) { blobs[this.column_name(x)] = null return false }