SampleSampletypeA worked example you read or clone. Evidence: it demonstrates, it never provides.See every one →What this type is →by a community orgby a community orgoriginPublished by a community organisation, so it outlives any one maintainer.See every one →Starting point

spreadsheetimporter/sample-odata-api-upload

A UI5 app that lists an on-premise system's OData services from the Gateway catalogue, takes one of their entity sets and opens the Spreadsheet Importer against it at runtime.

Reads the Gateway catalogue service at /sap/opu/odata/IWFND/catalogservice;v=2/, lists the services it returns and then the entity sets of the one selected, builds a table from that entity type's properties, and opens ui5-cc-spreadsheetimporter against it, so the upload target is chosen while the app runs rather than written into it. The organisation's other examples wire the component to one table in one app; here the OData V2 model is built from whichever service is picked, and columns are named only for the GWSAMPLE_BASIC sales order set, the target the repository's GWSAMPLE_BASIC_SalesOrderSet.xlsx matches. It runs against a system you can already reach instead of deploying anywhere: ui5-middleware-simpleproxy forwards /sap/opu/odata/ to a base URI with the user and password read from .env and sap-client 001 in the query. The README is the ui5-typescript-helloworld template's, so what the app does is in webapp/manifest.json, Main.view.xml and the Main controller rather than in its documentation.

Facts

Last pushLicenceApache-2.0

Where it sits

Lives in
Demonstrates
Importing and exporting table dataUI5Importing and exporting table datacapabilityGetting a file somebody supplies, a spreadsheet, a CSV or a JSON dump, into tables with its columns mapped and its values checked, and getting table content back out as a file. Data shipped with an application for development and demonstration is [seed data](capability:seed-data).
Requires
ui5-cc-spreadsheetimporterui5-cc-spreadsheetimporterartifactThe dialog the Excel Upload button opens is the component's own: the app declares it as the component usage spreadsheetImporter and its Main controller creates that usage before calling openSpreadsheetUploadDialog.

Who is behind it

Spreadsheet ImporterSpreadsheet ImporterOrganisationMaintains this
In the atlas: maintains 9
@spreadsheetimporter
maintainerMarian ZeisPersonContributes to this
In the atlas: maintains 35, contributes to 86, wrote 25
@marianfoo
1 contributor

What it declares

Every artifact

Type
Sample
Origin
By a community org

As a sample

Form
A reference application

Connections2

README

quoted from spreadsheetimporter/sample-odata-api-upload under Apache-2.0, read
spreadsheetimporter/sample-odata-api-upload/README.mdOn GitHub

UI5 Application com.spreadsheetimporter.apiupload

Insert the purpose of this project and some interesting info here...

Description

This app demonstrates a TypeScript setup for developing UI5 applications. The central entry point for all information about using TypeScript with UI5 is at https://sap.github.io/ui5-typescript.

The template is inspired by the SAP-samples/ui5-typescript-helloworld project which also contains a detailed step-by-step guide. It explains how this setup is created and how all the bits and pieces fit together.

Requirements

Either npm or yarn for dependency management.

Preparation

Use npm (or yarn) to install the dependencies:

npm install

(To use yarn, just do yarn instead.)

Run the App

Execute the following command to run the app locally for development in watch mode (the browser reloads the app automatically when there are changes in the source code):

npm start

As shown in the terminal after executing this command, the app is then running on http://localhost:8080/index.html. A browser window with this URL should automatically open.

(When using yarn, do yarn start instead.)

Debug the App

In the browser, you can directly debug the original TypeScript code, which is supplied via sourcemaps (need to be enabled in the browser's developer console if it does not work straight away). If the browser doesn't automatically jump to the TypeScript code when setting breakpoints, use e.g. Ctrl/Cmd + P in Chrome to open the *.ts file you want to debug.

Build the App

Unoptimized (but quick)

Execute the following command to build the project and get an app that can be deployed:

npm run build

The result is placed into the dist folder. To start the generated package, just run

npm run start:dist

Note that index.html still loads the UI5 framework from the relative URL resources/..., which does not physically exist, but is only provided dynamically by the UI5 tooling. So for an actual deployment you should change this URL to either the CDN or your local deployment of UI5.

(When using yarn, do yarn build and yarn start:dist instead.)

Optimized

For an optimized self-contained build (takes longer because the UI5 resources are built, too), do:

npm run build:opt

To start the generated package, again just run:

npm run start:dist

In this case, all UI5 framework resources are also available within the dist folder, so the folder can be deployed as-is to any static web server, without changing the bootstrap URL.

With the self-contained build, the bootstrap URL in index.html has already been modified to load the newly created sap-ui-custom.js for bootstrapping, which contains all app resources as well as all needed UI5 JavaScript resources. Most UI5 resources inside the dist folder are for this reason actually not needed to run the app. Only the non-JS-files, like translation texts and CSS files, are used and must also be deployed. (Only when for some reason JS files are missing from the optimized self-contained bundle, they are also loaded separately.)

(When using yarn, do yarn build:opt and yarn start:dist instead.)

Check the Code

Do the following to run a TypeScript check:

npm run ts-typecheck

This checks the application code for any type errors (but will also complain in case of fundamental syntax issues which break the parsing).

To lint the TypeScript code, do:

npm run lint

(Again, when using yarn, do yarn ts-typecheck and yarn lint instead.)

License

This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

Apache-2.0, read

Details

Sources3
Added by handdiscovered here, spreadsheetimporter organisation repositorieschecked
github.com/spreadsheetimporter/sample-odata-api-uploadtree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
discovered viaAdded by hand · spreadsheetimporter organisation repositories
first seen in the atlas
ecosystem and domainui5, data-and-persistence
Contributors1

From the repository’s contributor list, .

History in the atlas1
  1. First seen.
For your agent
Ref
artifact:spreadsheetimporter-sample-odata-api-upload
JSON
/artifacts/spreadsheetimporter-sample-odata-api-upload.json
MCP
Connecting an agent