Giter VIP home page Giter VIP logo

ui5-cc-spreadsheetimporter's People

Contributors

github-actions[bot] avatar lemaiwo avatar marcxgambit avatar marianfoo avatar wridgeu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

ui5-cc-spreadsheetimporter's Issues

improve searching for tables in view

improve this line
https://github.com/marianfoo/ui5-cc-excelUpload/blob/27572e52082d63f85b2fb67936069eb4b94dca39/src/controller/ExcelUpload.ts#LL75C4-L75C74

let tables = domRef.querySelectorAll("[id$='::LineItem-innerTable']");

maybe with something like this

sap.ui.core.Element.registry.filter(function(element){
    if(element.isA("sap.m.Table")){
        console.log(element.isActive())
        return element
    }
})

or

 this.test = sap.ui.getCore().byId("ui5.isu.msb.createmeterread::RunObjectPage").findElements(true).filter(function(element){
    if(element.isA("sap.m.Table")){
        console.log(element.isActive())
        return element
    }
})

Multiple Version Deployment

Requirement

the module should be able to be deployed in a FLP context with multiple versions on a single app.
As in:

  • App1 --> ui5-excelUpload v0.1.0
  • App2 --> ui5-excelUpload v0.2.5
  • App3 --> ui5-excelUpload v0.1.1
  • App4 --> ui5-excelUpload v0.1.0

Challenge

The problem is currently that the namespaces in the FLP collide.
That means when a user calls App1 the module is called with v0.1.0 and the namespace thirdparty.customControl.excelUpload.
If the user calls App1 afterwards the module will not be loaded again because the namespace is the same.
That means the modules should be in the namespace of the app.
The ui5-tooling-modules for example does this with the parameter addToNamespace but only with non-ui5 modules.

Link Checker Report

Summary

Status Count
πŸ” Total 167
βœ… Successful 159
⏳ Timeouts 0
πŸ”€ Redirected 0
πŸ‘» Excluded 7
❓ Unknown 0
🚫 Errors 1

Errors per input

Errors in docs/pages/Checks.md

  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/docs/Events | Failed: Cannot find file

Full Github Actions output

Working version with Object Page / List Report / Freestyle V2/V4

Able to use this in a Object Page and List Report with V2/V4

  • Using in List Report V2
  • Using in List Report V4
  • Using in Object Page V2
  • Using in Object Page V4
  • Using in Freestyle V2
  • Using in Freestyle V4
  • Using in Non Draft V2
  • Using in Flexible Programming Model
  • add option to always activate drafts when possible
  • write doc

CAP Example Apps and wdi5 tests

Apps

  • Fiori Elements V2 List Report Draft
  • Fiori Elements V2 Object Page Draft
  • Fiori Elements V2 List Report Non Draft
  • Fiori Elements V2 Object Page Non Draft
  • Freestyle V2 Non Draft
  • Freestyle V2 Non Draft Button Control
  • Freestyle V2 Non Draft Button Control Standalone
  • Freestyle V2 Draft
  • Freestyle V2 Non Draft OpenUI5
  • Fiori Elements V4 List Report
  • Fiori Elements V4 Object Page
  • Fiori Elements V4 Typescript
  • Freestyle V4
  • FPM V4

wdi5 tests

  • Fiori Elements V2 List Report Draft
  • Fiori Elements V2 Object Page Draft
  • Fiori Elements V2 List Report Non Draft
  • Fiori Elements V2 Object Page Non Draft
  • Freestyle V2 Non Draft
  • Freestyle V2 Non Draft Button Control
  • Freestyle V2 Non Draft Button Control Standalone
  • Freestyle V2 Draft
  • Freestyle V2 Non Draft OpenUI5
  • Fiori Elements V4 List Report
  • Fiori Elements V4 Object Page
  • Fiori Elements V4 Typescript
  • Freestyle V4
  • FPM V4

Link Checker Report

Summary

Status Count
πŸ” Total 201
βœ… Successful 190
⏳ Timeouts 0
πŸ”€ Redirected 0
πŸ‘» Excluded 7
❓ Unknown 0
🚫 Errors 4

Errors per input

Errors in packages/ui5-cc-excelUpload-Button/CHANGELOG.md

Errors in docs/pages/Events.md

Errors in packages/ui5-cc-excelUpload-Generator/CHANGELOG.md

Errors in packages/ui5-cc-excelUpload/CHANGELOG.md

Full Github Actions output

Handle uploads with wrong data type

Currently, the data types expected are those specified by the metadata.
However, it is possible that other data types are transferred which lead to error in code or in backend.
No error message is shown currently.
Possible Datatypes to check:

  • Integer
    • could be string -> convert
    • could be double --> error
  • Double
    • could be string -> convert
    • could be integer
  • Dates/Timestamp
    • is always a integer
    • check if after parsing is valid date
    • DO NOT try to parse a string, too many options, maybe offer option to parse by dev

May be check while parsing data.

https://github.com/marianfoo/ui5-cc-excelUpload/blob/d07468833e292392f70a8fcd3ed2d95c473ef216/src/controller/ExcelUpload.ts#L521-L553

Other (more complicated option) is to check the datatypes provided by SheetJS
https://docs.sheetjs.com/docs/csf/cell/

Need to inform user about wrong data type

Draft activation fails for second batch when batchSize: 1 is used (version 0.11.1)

In have added excel upload function to List Report page.
The controller code is below and "batchSize" is set to 1, meaning that each record is to be sent in a separate batch.

                this.excelUpload = await this._controller.getAppComponent().createComponent({
                    usage: "excelUpload",
                    async: true,
                    componentData: {
                        context: this,
                        activateDraft: true,
                        columns: ["description", "customer_ID"],
                        mandatoryFields: ["customer_ID"],
                        batchSize: 1
                    }
                })

For the first record, draft activation is successful. However, for the second record draft activation fails.
image

In _getActionName method, oContext.getModel() returns undefined for the second record.
image

activateDraft (false) is not working in version 0.11.1

In have added excel upload function to List Report page.
The controller code is below and "activateDraft" is set to false.

                this.excelUpload = await this._controller.getAppComponent().createComponent({
                    usage: "excelUpload",
                    async: true,
                    componentData: {
                        context: this,
                        activateDraft: false,
                        columns: ["description", "customer_ID"],
                        mandatoryFields: ["customer_ID"],
                        batchSize: 0
                    }
                })

When I uploaded a file, records got activated. So, it seems activateDraft property is not checked.
image

Deployment with version V0_11_3

Hello,

I have a problem when deploying to my on-promise environment.

On the first attempt (deploy new) it generates the app normally, but on subsequent attempts it returns this error:

image

I redid all the configurations... even before this version, it was working normally.

If anyone can help me I would be very grateful!

Link Checker Report

Summary

Status Count
πŸ” Total 163
βœ… Successful 150
⏳ Timeouts 0
πŸ”€ Redirected 0
πŸ‘» Excluded 6
❓ Unknown 0
🚫 Errors 7

Errors per input

Errors in docs/pages/GettingStarted.md

  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/pages/Generator | Failed: Cannot find file
  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/pages/CentralDeployment | Failed: Cannot find file

Errors in docs/pages/CentralDeployment.md

  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/pages/GettingStarted | Failed: Cannot find file

Errors in examples/README.md

  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/examples/LICENSE | Failed: Cannot find file

Errors in docs/pages/Development/wdi5.md

  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/pages/Development/GitHubActions | Failed: Cannot find file

Errors in docs/pages/GettingStartedTEMPLATE.md

  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/pages/CentralDeployment | Failed: Cannot find file
  • [ERR] file:///home/runner/work/ui5-cc-excelUpload/ui5-cc-excelUpload/pages/Generator | Failed: Cannot find file

Full Github Actions output

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.