Vecticum User Guide and Administration

website·Indexed 31 days ago

https://docs.vecticum.com

Comprehensive documentation for Vecticum, covering HR management, employee training programs, business trip approvals and expense reconciliation, absence substitutions, and person card management. Includes administrative guides for workflow system steps, MS Word templates, widgets, and tenancy configuration.

Tokens
59.1K
Snippets
193
Records
454
Agent score
50%

What's inside Vecticum

  1. Overview of Vecticum Expressions

    Expressions are back-end logic definitions used to calculate values and update document attributes. They are configured under Administration -> Metadata -> Expressions. Expressions are typically triggered by the 'Workflow Step System' execution; in the 'Action' section of a workflow step, you specify the 'Action key' (the attribute key) that should receive the value returned by the expression. They can be executed automatically, manually, or via button clicks.
  2. Understand the Vecticum substitution document lifecycle

    A substitution document manages the 'Out of Office' status and the designated substitute for an employee.

    • Initial State: Upon creation, the document is set to 'Approved'.
    • Activation: When the 'Date from' is reached (or if the document was created with a past date), a system trigger sets the employee's 'Out of Office' status to true and assigns the 'Substitution person'.
    • Deactivation: Once the 'Date to' has passed, the system automatically changes the substitution status to 'Archived', sets 'Out of office' to false, and removes the substitution assignment.
  3. Understand built-in Vecticum email notifications

    Vecticum provides two primary built-in notification types:

    1. New Workflow Task Assignment: Sent immediately when a task is assigned to a performer. The email includes a navigation button leading directly to the document with the active task.
    2. Daily Group Notification: A summary email sent daily (approximately 9:00 AM EEST) to performers. It lists all tasks that are near their deadline or overdue. If a user belongs to multiple companies within Vecticum, they receive a separate notification for each company.
  4. Distinguish between Workflow Steps and Workflow Step Systems

    Vecticum divides workflow steps into two categories based on who or what performs the action:

    • Workflow Step: Used to create tasks for System users (workflow performers). One or more users are designated to act on these steps.
    • Workflow Step System: Used for automated actions that do not require manual user intervention.
  5. Manually register a user or set a password

    If an invited person encounters problems registering via the email invitation, an administrator can manually register them. From the person's account overview, click the Registration page button to access the manual registration interface where you can create a password for the user.
  6. Understand Object Types and Classes in Vecticum

    An Object Type serves as a template for objects created within the application. For example, 'Person' is a predefined object type for individuals. Business-specific documents or classification records (e.g., 'Employment and Compensation' or 'Employment Contract Type') should be created as separate object types.

    Object Types are further divided into sub-types called Classes. Every Object Type must have at least one associated Class. Classes represent specific variations of the main object type; for instance, an 'Employment and Compensation' object type might have classes for 'Employment and Compensation' (the contract), 'Amendment of the employment contract', and 'Termination'.

  7. Create a new documentation version in Docusaurus

    Use the Docusaurus CLI to snapshot the current state of your docs folder into a versioned release. This process copies the docs folder into a new directory under versioned_docs/ and updates the versions.json file. After creating a version, the site will host both the released version and a 'next' version for upcoming, unreleased changes.
    npm run docusaurus docs:version 1.0
  8. Perform Intercompany Write in workflow steps

    The 'Create (Intercompany Write)' action allows the creation of documents in a different company connected via tenancy. The expression must return an object with params and documents (or an array of documents).

    Params Configuration:

    • saveLookupToParent (boolean): If true, saves a lookup of the created document back to the parent document.
    • lookupAtributeKey (string): The key where the lookup is saved (default: 'createdDoc').
    • isLookupMultiselect (boolean): Set to true if multiple documents are created and should be saved as an array of lookups.

    Document Data:

    • companyId: The ID of the recipient company.
    • authorUid: Since employee IDs differ across companies, send the uid of the employee. The recipient company should use a default expression to map this uid to the local authorId attribute.
    return {
      params: {
        saveLookupToParent: true,
        lookupAtributeKey: 'createdDoc',
        isLookupMultiselect: false
      },
      documents: {
        companyId: '${executingCompanyId.companyId}',
        _facet: '${_facet}',
        name: '${name}',
        authorUid: '${authorId.uid.id}',
        status: ${status}
      }
    };
  9. Compare a Text attribute value against a Number attribute

    To compare a value from a Text type attribute with a Number type attribute, you must first convert the text value to a number using the Number() function. This is useful for visibility or requirement logic based on numeric thresholds stored as text.
    // stringText is the key for the Text type attribute
    // numberCalc is the key for the Number type attribute 
    (Number('${stringText}') > ${numberCalc})
  10. Create standalone pages in Docusaurus

    To create a standalone page in Docusaurus, add a Markdown (.md) or React (.js/.jsx) file to the src/pages directory. The file path determines the URL route of the page.
    src/pages/index.js      → localhost:3000/
    src/pages/foo.md        → localhost:3000/foo
    src/pages/foo/bar.js    → localhost:3000/foo/bar