Creating New Data Entry Apps in Application Studio

I’ve been looking at version 2024.2, and I was trying to convert one of our classic SDK forms to an Application Studio app.

Are there any templates/examples/documentation available for doing this? The New Application wizard appears to only support creating dashboards.

In looking at some of the built-in apps, there appear to be quite a lot of things that would have to be manually added otherwise.

1 Like

Kenan Thompson Yes GIF by Paramount+

1 Like

That’s what I figured. There is an idea entered to address this: https://epicor.ideas.aha.io/ideas/KIN-I-4044

Unfortunately, it hasn’t gotten very many votes.

Since there’s no easy way to do this out of the box, here’s another question: Does Application Studio provide service interfaces (REST APIs)? That would make automating this stuff at least possible.

Kinda, sorta. You can download the json of a Kinetic Application via REST. Follow the REST calls in Application Studio.

https://server/instance/api/v1/Ice.LIB.MetaFXSvc/GetApp?request=...

I haven’t studied it deeply, but I guess if you stick to the schema, you should be able to start something. :thinking:

The response looks something like this:

{
    "returnObj": {
        "AllowVersions": true,
        "PersonalizationNotLoaded": false,
        "HasOrphans": false,
        "Layout": {
            "namespace": "App.UD06Entry.UD06Form",
            "name": "UD06Form",
            "guid": "2dcd1674-5e34-4d98-b493-c75747027376",
            "caption": "UD06 Maintenance",
            "viewType": "Apps",
            "height": 446,
            "width": 1440,
            "components": [
                {
                    "id": "pcgLandingPage",
                    "sourceTypeId": "metafx-panel-card-grid",
                    "model": {
                        "guid": "3bb86d3e-f907-4099-b78e-4396f57a6d00",
                        "title": "UD Codes",
                        "autoFillContainer": true,
                        "invalidated": false,
                        "expanded": true,
                        "customizable": true,
                        "personalizable": true,
                        "disabled": false,
                        "readonly": false,
                        "hidden": false,
                        "gridModel": {
                            "id": "grdLandingPage",
                            "collapseGroups": true,
                            "epBinding": "LandingPage",
                            "autoLoadColumns": false,
                            "activeCurrencyType": "BASE",
                            "editOptions": {
                                "editMode": 0,
                                "updateOnChange": true
                            },
                            "providerModel": {
                                "svc": "Ice.BO.UD06Svc",
                                "svcPath": "GetRows"
                            },
                            "columns": [
                                {
                                    "field": "Key1",
                                    "isLink": true
                                },
                                {
                                    "field": "Key2"
                                },
                                {
                                    "field": "Key3"
                                },
                                {
                                    "field": "Key4"
                                },
                                {
                                    "field": "Key5"
                                },
                                {
                                    "field": "Character01"
                                }
                            ]
                        },
                        "footer": {},
                        "actionData": [],
                        "viewOptions": [
                            {
                                "description": "All",
                                "isDefault": true
                            }
                        ],
     ...

Compare that with the ZIP file exported since I think there are three or four folders involved to organize the pieces. If you can structure a zip file, you may have a starting point. :person_shrugging: Just a thought.

1 Like