No code way to display list of Users from Admin Area onto a Page

Is there a No code way to display list of Users from Admin Area onto a Page?

1 Like

No; the closest you could currently get is

  1. make a module to reflect your users
  2. make a workflow to catch create/update/delete for users
  3. update your module from step 1
  4. show that module in a record list on your page
1 Like

Basically maintain a duplicate of Users in a Module?
(Making sure I understood your suggested solution)
Thank you!

1 Like

Well yea; there isn’t a page block which would show a list of users.
Or…

Iirc, in the reporter web app, you can define a data source which pulls from the system-defined user list.
You could then use the report page block to show that data source inside compose.
That could work so pick your poison

I am intending to use it for a User-Picker, not the Listing as a Report.
Of course, applying appropriate filters, not ALL the Users.

Users should also have one or more “User defined Columns” so we can use them for filtering by applications or something else. Right now it is only possible by Role.

Most other platforms provide these in a no-code way as basic needs.

I bet but we never really needed it so it flew under our radar

The questions about features and how to do something, if implemented, will only enhance the Corteza offering. I don’t have the skills to implement, otherwise I would have contributed to this great project.

1 Like

We use the approach suggested by @tjerman

For us, keeping core user roles and permissions in admin is a good thing. The custom module for userprofiles associated with a userID gives us the flexibility to append data, filter, report etc.

We use the following 2 workflows to:

  1. Create a userprofile record when a new userID is created in Admin
  2. Update the userprofile if and when a userID is suspended in Admin

{


  "workflows": [
    {
      "handle": "systemusers__aftercreate",
      "enabled": true,
      "meta": {
        "name": "System Users - afterCreate",
        "description": "",
        "visual": null
      },
      "keepSessions": 0,
      "steps": [
        {
          "stepID": "4",
          "kind": "function",
          "ref": "composeRecordsNew",
          "arguments": [
            {
              "target": "module",
              "value": "userprofiles",
              "type": "Handle"
            },
            {
              "target": "namespace",
              "value": "namespavename",
              "type": "Handle"
            }
          ],
          "results": [
            {
              "target": "userprofile",
              "expr": "record",
              "type": "ComposeRecord"
            }
          ],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "4",
              "parent": "1",
              "value": "make User Profile",
              "xywh": [
                2600,
                1880,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "6",
          "kind": "expressions",
          "ref": "",
          "arguments": [
            {
              "target": "userprofile.values.User",
              "expr": "user.userID",
              "type": "Any"
            },
            {
              "target": "userprofile.values.Email",
              "expr": "user.email",
              "type": "Any"
            },
            {
              "target": "userprofile.values.UserName",
              "expr": "user.name",
              "type": "Any"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "6",
              "parent": "1",
              "value": "set Values",
              "xywh": [
                2600,
                2000,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "8",
          "kind": "function",
          "ref": "composeRecordsCreate",
          "arguments": [
            {
              "target": "record",
              "expr": "userprofile",
              "type": "ComposeRecord"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "8",
              "parent": "1",
              "value": "create User Profile",
              "xywh": [
                2600,
                2120,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "10",
          "kind": "termination",
          "ref": "",
          "arguments": null,
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "10",
              "parent": "1",
              "value": "end",
              "xywh": [
                2880,
                1880,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "14",
          "kind": "expressions",
          "ref": "",
          "arguments": [
            {
              "target": "hello",
              "type": "Any"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": true,
              "id": "14",
              "parent": "1",
              "value": "Define and mutate scope variables",
              "xywh": [
                2600,
                2240,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "16",
          "kind": "function",
          "ref": "composeRecordsUpdate",
          "arguments": [
            {
              "target": "record",
              "expr": "userprofile",
              "type": "ComposeRecord"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": true,
              "id": "16",
              "parent": "1",
              "value": "Compose record update",
              "xywh": [
                2600,
                2360,
                200,
                80
              ]
            }
          }
        }
      ],
      "paths": [
        {
          "parentID": "4",
          "childID": "6",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "7",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "parentID": "6",
          "childID": "8",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "9",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "parentID": "16",
          "childID": "10",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "11",
              "parent": "1",
              "points": [],
              "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "parentID": "8",
          "childID": "14",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "15",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "parentID": "14",
          "childID": "16",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "17",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        }
      ],
      "triggers": [
        {
          "resourceType": "system:user",
          "eventType": "afterCreate",
          "constraints": [],
          "enabled": true,
          "stepID": "4",
          "meta": {
            "description": "",
            "visual": {
              "defaultName": true,
              "edges": [
                {
                  "childID": "4",
                  "meta": {
                    "description": "",
                    "label": "",
                    "visual": {
                      "id": "5",
                      "parent": "1",
                      "points": [],
                      "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;",
                      "value": null
                    }
                  },
                  "parentID": "3"
                }
              ],
              "id": "3",
              "parent": "1",
              "value": "System user - afterCreate",
              "xywh": [
                2360,
                1880,
                200,
                80
              ]
            }
          }
        }
      ]
    }
  ]
}
{
  "workflows": [
    {
      "handle": "systemusers_afterupdatesuspend",
      "enabled": true,
      "meta": {
        "name": "System Users - afterUpdateSuspend",
        "description": "",
        "visual": null
      },
      "keepSessions": 0,
      "steps": [
        {
          "stepID": "3",
          "kind": "expressions",
          "ref": "",
          "arguments": [
            {
              "target": "userprofile.values.User",
              "expr": "user.userID",
              "type": "Any"
            },
            {
              "target": "userprofile.values.Email",
              "expr": "user.email",
              "type": "Any"
            },
            {
              "target": "userprofile.values.UserName",
              "expr": "user.name",
              "type": "Any"
            },
            {
              "target": "userprofile.values.isSuspended",
              "expr": "user.suspendedAt ? true : false",
              "type": "Boolean"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "3",
              "parent": "1",
              "value": "set Values",
              "xywh": [
                2520,
                2240,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "4",
          "kind": "termination",
          "ref": "",
          "arguments": null,
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "4",
              "parent": "1",
              "value": "end",
              "xywh": [
                2840,
                1960,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "7",
          "kind": "function",
          "ref": "composeRecordsUpdate",
          "arguments": [
            {
              "target": "record",
              "expr": "userprofile",
              "type": "ComposeRecord"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "7",
              "parent": "1",
              "value": "update User Profile",
              "xywh": [
                2520,
                2360,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "16",
          "kind": "function",
          "ref": "composeRecordsSearch",
          "arguments": [
            {
              "target": "module",
              "value": "userprofiles",
              "type": "Handle"
            },
            {
              "target": "namespace",
              "value": "namespacename",
              "type": "Handle"
            },
            {
              "target": "query",
              "expr": "\"User = \" + user.userID",
              "type": "String"
            },
            {
              "target": "limit",
              "expr": "1",
              "type": "UnsignedInteger"
            },
            {
              "target": "incTotal",
              "value": "true",
              "type": "Boolean"
            }
          ],
          "results": [
            {
              "target": "usersearch",
              "expr": "records",
              "type": "ComposeRecord"
            },
            {
              "target": "usertotal",
              "expr": "total",
              "type": "UnsignedInteger"
            }
          ],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": true,
              "id": "16",
              "parent": "1",
              "value": "Compose records search",
              "xywh": [
                2280,
                1960,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "17",
          "kind": "gateway",
          "ref": "excl",
          "arguments": null,
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": true,
              "id": "17",
              "parent": "1",
              "value": "Exclusive",
              "xywh": [
                2520,
                1960,
                200,
                80
              ]
            }
          }
        },
        {
          "stepID": "20",
          "kind": "expressions",
          "ref": "",
          "arguments": [
            {
              "target": "userprofile",
              "expr": "usersearch[0]",
              "type": "ComposeRecord"
            }
          ],
          "results": [],
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "defaultName": false,
              "id": "20",
              "parent": "1",
              "value": "set Record variable",
              "xywh": [
                2520,
                2120,
                200,
                80
              ]
            }
          }
        }
      ],
      "paths": [
        {
          "parentID": "3",
          "childID": "7",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "11",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "parentID": "16",
          "childID": "17",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "18",
              "parent": "1",
              "points": [],
              "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "expr": "usertotal == 1 ",
          "parentID": "17",
          "childID": "20",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "19",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": "Found"
            }
          }
        },
        {
          "parentID": "20",
          "childID": "3",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "21",
              "parent": "1",
              "points": [],
              "style": "exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "parentID": "7",
          "childID": "4",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "22",
              "parent": "1",
              "points": [],
              "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;",
              "value": null
            }
          }
        },
        {
          "expr": "usertotal != 1 ",
          "parentID": "17",
          "childID": "4",
          "meta": {
            "name": "",
            "description": "",
            "visual": {
              "id": "23",
              "parent": "1",
              "points": [],
              "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;",
              "value": "not found"
            }
          }
        }
      ],
      "triggers": [
        {
          "resourceType": "system:user",
          "eventType": "afterUpdate",
          "constraints": [],
          "enabled": true,
          "stepID": "16",
          "meta": {
            "description": "",
            "visual": {
              "defaultName": true,
              "edges": [
                {
                  "childID": "16",
                  "meta": {
                    "description": "",
                    "label": "",
                    "visual": {
                      "id": "15",
                      "parent": "1",
                      "points": [],
                      "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;",
                      "value": null
                    }
                  },
                  "parentID": "9"
                }
              ],
              "id": "9",
              "parent": "1",
              "value": "System user - afterUpdate",
              "xywh": [
                2000,
                1960,
                200,
                80
              ]
            }
          }
        },
        {
          "resourceType": "system:user",
          "eventType": "afterSuspend",
          "constraints": [],
          "enabled": true,
          "stepID": "16",
          "meta": {
            "description": "",
            "visual": {
              "defaultName": true,
              "edges": [
                {
                  "childID": "16",
                  "meta": {
                    "description": "",
                    "label": "",
                    "visual": {
                      "id": "25",
                      "parent": "1",
                      "points": [],
                      "style": "exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;",
                      "value": null
                    }
                  },
                  "parentID": "24"
                }
              ],
              "id": "24",
              "parent": "1",
              "value": "System user - afterSuspend",
              "xywh": [
                2000,
                2080,
                200,
                80
              ]
            }
          }
        }
      ]
    }
  ]
}
2 Likes