DJ Adams

Blog posts tagged "cap"

  1. Quiet cds test output - two ways

    Reducing CAP server log output during tests, in two different ways, via a profile encapsulated set of log level configurations, or via the new cds test command.

  2. Modelling contained-in relationships with compositions in CDS

    A short study of the features of CDS for modelling classic contained-in relationships, with a focus on the details, and a lean towards anonymous aspects.

  3. Using @capire modules from GitHub Packages

    Here's how to access and use the @capire namespaced modules that reside in the NPM registry which is part of GitHub Packages.

  4. CDS source formatting and readability

    Embracing a modern approach to source code formatting for human-centric modelling in CAP

  5. Upcoming talks in autumn 2025

    I'm writing this mostly to organise myself and get my preparations in order!

  6. Neovim configuration for file and module navigation in CDS models

    In this post I describe how I extended my Lua-based Neovim configuration for CDS filetypes to improve navigation to referenced files and modules.

  7. A reCAP intro to the cds REPL

    Here's a summary of my talk on the cds REPL at this year's reCAP event.

  8. A modern and clean Neovim setup for CAP Node.js - configuration and diagnostics

    In this post I describe my re-worked basic setup for working with CAP Node.js in Neovim, focusing on the configuration and digging into the LSP based diagnostic facilities.

  9. Point free coding and function composition

    In this post I explore and show examples of the concepts of point free coding, of chains of functions through which data flows, and of function composition.

  10. FP, function chains and CAP model loading

    Understanding functional programming approaches, no matter how trivial, can help in other areas. Here I explain how being comfortable with function chains helped in working out why a required (but unused) service was being loaded into the overall CDS model in a CAP project.

  11. Level up your CAP skills by learning how to use the cds REPL

    These are notes I wrote for my talk at SAP Inside Track Madrid on 20 March 2025. I wrote them partly to think about what I wanted to say, and partly to share the info in written form too. Note that the idea is to introduce the concepts and show some basic examples for cds REPL "initiates". Nothing too exotic.

  12. TASC Notes - Part 9

    These are the notes summarising what was covered in The Art and Science of CAP part 9, one episode in a mini series with Daniel Hutzel to explore the philosophy, the background, the technology history and layers that support and inform the SAP Cloud Application Programming Model.

  13. TASC Notes - Part 8

    These are the notes summarising what was covered in The Art and Science of CAP part 8, one episode in a mini series with Daniel Hutzel to explore the philosophy, the background, the technology history and layers that support and inform the SAP Cloud Application Programming Model.

  14. TASC Notes - Part 7

    These are the notes summarising what was covered in The Art and Science of CAP part 7, one episode in a mini series with Daniel Hutzel to explore the philosophy, the background, the technology history and layers that support and inform the SAP Cloud Application Programming Model.

  15. CAP Node.js plugins - part 3 - writing our own

    This blog post accompanies part 3 of a three part series where we explore the CDS Plugin mechanism in CAP Node.js to find out how it works. In part 1 we looked at the plugin mechanism itself and how it worked. In part 2 we used the cds REPL to start our CAP service running and to introspect it. In this part we'll use what we learned and discovered in the first two parts to write our own plugin.

  16. CAP Node.js plugins - part 2 - using the REPL

    This blog post accompanies part 2 of a three part video series where we explore the CDS Plugin mechanism in CAP Node.js to find out how it works. In part 1 we looked at the plugin mechanism itself and how it worked. In this part we use the cds REPL to start our CAP service running and to explore it - to introspect it.

  17. CAP Node.js Plugins

  18. TASC Notes - Part 6

  19. TASC Notes - Part 5

  20. TASC Notes - Part 4

  21. The elements of programming with respect to CDL and SICP

  22. The Art and Science of CAP

  23. TASC Notes - Part 3

  24. TASC Notes - Part 2

  25. Flattening the hierarchy with mixins

  26. Five reasons to use CAP

  27. Separating concerns and focusing on the important stuff

  28. Restricting access via facets with masked elements

  29. Keeping things simple in domain modelling with CDS

  30. CAP Node.js plugins - part 1 - how things work

  31. TASC Notes - Part 1

  32. Automatic validation in OData and REST calls with CAP

  33. Turning an OData expand into a cds.ql CQL query with a projection function in CAP

  34. Digging into CSN diffs for CDS models

  35. Defining a custom 'after' handler in CAP with 'each'

  36. Controlling automatic HTTP requests in CAP Node.js design time loops

  37. Simple script for previewing CDS models in CSN - cdsray

  38. Using @cap-js/sqlite in CF for your CAP services

  39. Running non-production CAP services in CF

  40. Easily add an explicit cds.requires.db to your CAP project's package.json

  41. Improve your CAP dev container shell prompt

  42. Avoid design time CAP server restarts when maintaining local data files

  43. CAP, CDS, CDL, CSN and jq - finding associations

  44. CAP, CORS and custom headers

  45. ISO content for common CAP types

  46. Successful double CodeJam in Wroclaw and Warsaw

  47. Developing CAP in containers - three ways

  48. SAP CodeJam report - service integration with CAP in Guetersloh, DE

  49. SAP CodeJam on Service Integration with CAP in Brescia

  50. A deep dive into OData and CDS annotations

  51. SAP CodeJam on Service Integration with CAP in Utrecht

  52. Mission 'Use CAP and SAP Cloud SDK to Extend S/4HANA' - an overview

  53. CAP is important because it's not important

  54. Tech Aloud podcast - an introduction

  55. Monday morning thoughts: growth is upwards

See all tags.