Saltar al contenido

Definir un modelo de datos simple y un servicio OData con CDS

El es db/ un directorio es donde se definen las entidades y se establecen las relaciones. Piense en ello como el esquema completo, independientemente de cualquier consumo previsto.

Para mantener las cosas lo más simples posible, debe definir una entidad individual, con solo unos pocos campos y (al menos en este tutorial) sin relaciones con entidades adicionales.

Utilice el menú contextual en el db/ nodo en la vista del Explorador para crear un nuevo archivo; Dale un nombre schema.cds.

Es hora de definir su entidad, mostrando una versión simplificada de la Products entidad al servicio de Northwind. Aquí está todo el tema que debería abordar. schema.cds.

Trate de resistir la tentación de copiar / pegar este material; en su lugar, escríbalo y familiarícese con el soporte completo para CBT que tiene App Studio, a través de la extensión SAP CDS Language Support. Cuando inicie sesión, tampoco tendrá que preocuparse por el formato; la extensión también lo hará por usted (utilice el menú contextual o la paleta de comandos para invocar la función “Formato de documento”).

namespace northbreeze;

entity Products {
    key ProductID    : Integer;
        ProductName  : String;
        UnitsInStock : Integer;
}

¿Es esto todo lo que se requiere para el servicio OData? Vamos a averiguar.

Terminal abierto (ruta del menú) Terminal -> Nueva terminal) y eso debería proporcionarle un shell Bash y colocarlo automáticamente en el directorio raíz del proyecto que ha abierto en su espacio de trabajo, es decir northbreeze. Verá un mensaje que contiene su nombre de usuario genérico en el espacio de desarrollo de su App Studio, más prominentemente el nombre del directorio en el que se encuentra (ingrese el comando pwd para ver el nombre completo, si tiene curiosidad) y el carácter de indicador de shell tradicional $.

user: northbreeze $

El kit de desarrollo CBT se instala automáticamente en los espacios de desarrollo de App Studio creados con el tipo “SAP Cloud Business Application” (como habrá hecho en el tutorial de requisitos previos), incluida la herramienta de línea de comandos principal. cds. Una de las características de cdsArsenal es el watch un comando que iniciará el tiempo de ejecución y se reiniciará cuando se detecten cambios. También utilizará automáticamente una capa de persistencia en la memoria proporcionada por SQLite, que es suficiente para lo que necesitamos aquí en nuestras exploraciones.

Prompt, ingrese cds watch, y respetando el resultado, que debe verse como:

user: northbreeze $ cds watch

cds serve all --with-mocks --in-memory?
( watching: cds,csn,csv,ts,mjs,cjs,js,json,properties,edmx,xml,env... )

[cds] - model loaded from 1 file(s):

  ../db/schema.cds

[cds] - using bindings from: { registry: '~/.cds-services.json' }
[cds] - connect to db > sqlite { database: ':memory:' }
/> successfully deployed to sqlite in-memory db


[cds] - launched in: 1634.029ms
[cds] - server listening on { url: 'http://localhost:4004' }
[ terminate with ^C ]


    No service definitions found in loaded models
    Waiting for some to arrive...

Esto ya nos dice bastante mal; sin embargo, lo más importante para nosotros es la línea “No se encuentran definiciones de servicio en los modelos cargados – Esperando que lleguen algunos…”.

Tiene una entidad definida, en un espacio de nombres, pero aún no la ha revelado en una definición de servicio. Además, si navega hasta el puerto 4004 al que App Studio le solicitó que se conecte, verá una página de bienvenida que describe lo que se está sirviendo y la lista de puntos finales de servicio está actualmente vacía.

Entonces, lo siguiente es crear una definición de servicio. Usted puede cds watch proceso en ejecución, y notará y responderá a cualquier cosa que agregue o cambie más adelante.

Hecho

Inicie sesión para responder la pregunta