# KOADX Modelling Tool Cheat Sheet

Note: This example, a Logistics Tracking System, is also shown in the Product Demonstration video and in the full Modelling Tool User Guide.

## 1: Create a new model

- Click +New, enter your model name.
- Select Configuration which is currently C# .Net 8 / SQL Server 2022.
- Save & Close or continue to configure.

## 2: Configuring your model

- Click Configure to access the following tabs, complete all tabs:
- Save Answers button is only enabled after completing all sections.
- Choose C# .Net 8, set a Root Namespace (e.g., LogTrk).
- Select SQL Server 2022, complete tenanting details.
- Save & Close, then proceed.
- Add dropdown lists (picklists) using +New.
- Select SQL Server 2022, complete tenanting details.
- Then Save & Close. Repeat the process for all your system lookups.
- Save Answers and proceed.

---

## 5: Roles

- For role-based user management add information here.
- Define user roles for security and workflow.
- Use +New, enter a name and display name.
- Save & Close, then proceed.
- You will see Roles appear in a listing, just like Lookups, and when you have finished entering them click Next Step.

## 6: Data Classes

- You must have at least one Data Class with one Property in your model.
- Add +New data classes with at least one property.
- Avoid restricted names (warnings provided).
- Use Manage Properties to add fields (see 9).
- Assign workflows (see 10).
- Restrict API access if needed (see 11).

## 7: Relationships

- Click +New to define parent-child relationships.
- Set a name, display name, and plural display name.
- Add properties if needed.

## 8: Finishing Model Entry and Building Your Code

- Click Finished after completing the setup.
- Use the editor of your choice to view.
- Re-run the build if changes are made.

---

## 9: Managing Properties

- Types include:  
  - **String (set size, default value)**  
  - **Date/Time (full or date-only, default to UTC)**  
  - **Integer/Long Integer**  
  - **Decimal (precision & scale)**  
  - **Boolean (true/false toggle)**  
  - **Lookup (select from predefined lists)**

For each Property Type you need to give it a Name / Display Name and on each dialog, there are also **Mandatory and Include in Summary fields.** If Mandatory is switched on, when an API call creates the data class or relationship, a value of that property must be supplied. Failure to supply the value will generate an error message.

## 10: Managing Workflow

This is where you enter information about how your data moves through your system. For example, in Logistics Tracking, how an order is processed along a shipping pipeline, and who can do what to the associated information. Workflows are available for Data Classes and Relationships.

- Define Workflow States (e.g., Proposed → Active → Archived).
- Use +New to add states.
- Set an Initial State (starting point of workflow).
- Define State Transitions (who can move between states).

## 11: Managing API Endpoint Restrictions

Additional role-based restrictions can be added to any of the API endpoints, for both data classes and relationships. Against a data class/relationship, click the green padlock icon, and the following dialog appears.

- Control role-based access to API actions.
- Click the padlock icon to restrict operations (e.g., deleting a supplier location).
- Assign specific roles (e.g., only Supplier Admins can delete suppliers).  
KOADX Modelling Tool Slim from full Guide v0.5 06/03/2025 3 | P a g e
