Project model
A YTCC project holds everything one plant or system needs: its screens, its signal and driver configuration and its users. Screens are kept in files and configuration in a database, so the parts of a project are stored in different places.
Parts of a project
Page. A screen. Each page has a name, a size, a background and its own objects and layers. A page can require users to sign in and can be limited to certain roles. One page is the start page that opens first at runtime.
Object. Anything placed on a page: a shape, a text, a tank, a gauge, a button. An object has a position, belongs to a layer and can react to clicks, for example by opening a popup.
Layer. A named group of objects on one page. Layers belong to their page. When a layer is hidden, its objects are not shown at all.
Symbol. A reusable drawing made of objects, with its own size and parameters. You place it on pages as many times
as you need. Each placed copy has its own size and its own parameter values, so one pump symbol can show P-101 in
one place and P-102 in another.
Popup. A small window with its own objects and parameters, opened from a page, for example when an operator clicks an object. A popup can have a title bar, can be movable and can close with Esc. In the editor's explorer, popups are listed under Modals.
Layout. A set of objects shown together with pages, such as a header or a navigation bar. The Global Layout appears on every page unless a page turns it off. In addition, each page can choose one named layout, and many pages can choose the same one. At runtime, layout objects are drawn on top of the page's own objects.
Folder. Pages, symbols, popups and layouts can be sorted into folders, and folders can be nested.
Where a project is stored
| Part | Stored in |
|---|---|
| Pages, symbols, popups, layouts, shared scripts | Files on the server, in the project's folder |
| Images and other uploaded files | Files on the server, in the project's folder |
| Users, roles and their sessions | Files on the server, one set per project |
| Audit log | A file on the server, one per project |
| Drivers, devices, signals, alarms, areas and zones | The project's PostgreSQL database |
A backup of a project therefore has to include both the files and the database.