From bf162c23cc09a605832f0ba7ee22cab4b3ecaa27 Mon Sep 17 00:00:00 2001 From: D065023 Date: Wed, 29 Jan 2020 09:55:21 +0100 Subject: [PATCH] cleaner --- packages/bookshop/package.json | 11 +++++++++-- packages/bookshop/srv/cat-service.cds | 6 +++--- packages/bookshop/srv/cat-service.js | 5 ++--- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/bookshop/package.json b/packages/bookshop/package.json index d14fec46..2c0d37ce 100644 --- a/packages/bookshop/package.json +++ b/packages/bookshop/package.json @@ -4,6 +4,7 @@ "description": "A simple bookshop application, build in a self-contained all-in-one fashion, i.e. w/o reusing other packages.", "license": "SAP SAMPLE CODE LICENSE", "dependencies": { + "@sap/xb-msg-amqp-v100": "latest", "@sap/cds": "latest", "express": "*" }, @@ -18,10 +19,16 @@ "API_BUSINESS_PARTNER": { "kind": "odata", "model": "srv/external/API_BUSINESS_PARTNER", - "--credentials": { + "credentials": { "destination": "cap-api098" } + }, + "messaging": { + "kind": "enterprise-messaging", + "credentials": { + "prefix": "sap/S4HANAOD/c098/BO" + } } } } -} \ No newline at end of file +} diff --git a/packages/bookshop/srv/cat-service.cds b/packages/bookshop/srv/cat-service.cds index 36975e82..26fc8312 100644 --- a/packages/bookshop/srv/cat-service.cds +++ b/packages/bookshop/srv/cat-service.cds @@ -9,7 +9,7 @@ service CatalogService { } excluding { createdBy, modifiedBy }; @readonly entity Addresses as projection on A_BusinessPartnerAddress { - key AddressID, + key AddressID as ID, key BusinessPartner, StreetName, HouseNumber, @@ -18,8 +18,8 @@ service CatalogService { Country }; - event OrdersOutdated { - orders: array of my.Orders + event OrderOutdated { + ID: UUID; }; @requires_: 'authenticated-user' diff --git a/packages/bookshop/srv/cat-service.js b/packages/bookshop/srv/cat-service.js index 08f88457..e30e98d9 100644 --- a/packages/bookshop/srv/cat-service.js +++ b/packages/bookshop/srv/cat-service.js @@ -10,9 +10,8 @@ module.exports = cds.service.impl(async function () { bupaSrv.on('BusinessPartner/Changed', async msg => { console.log('>> Received message', msg.data) const BUSINESSPARTNER = msg.data.KEY[0].BUSINESSPARTNER - const orders = await cds.tx(msg).run(SELECT.from(Orders).where({ createdBy: BUSINESSPARTNER })) - this.emit('OrdersOutdated', { orders }) - console.log('<< Emitting message', { orders }) + const orders = await cds.tx(msg).run(SELECT('ID').from(Orders).where({ createdBy: BUSINESSPARTNER })) + orders.forEach(order => this.emit('OrderOutdated', order) && console.log('<< Emitting message', order)) }) /** Add some discount for overstocked books */