There are a number of ways you can get involved with National Tea Day www.nationalteaday.co.uk least of all you can ensure you get a good brew on for elevenses. Maybe nip out at lunch time and get a packet of scones and share afternoon tea with your work colleagues. Ask for donations in a Tea Cup and pick a local charity!
There’s an awful lot of tea drunk by engineers at 3SL towers…….
Now the tricky bit, how on earth do we make this blog entry have something to do with Cradle? Ah! Multivalue Picklist Categories is how. If you have a set of premises that you manage, these can be set as items within Cradle. Each café could have a number of supplies that the café offers, and these could be recorded in a multiple value category.
If there was a shortage of Oolong, it would be simple to run a query to list each of the premises that need to be contacted. For further reading on categories, you could read ‘Multiple Value Categories’
When setting up a single value pick list or multiple category, you can define any number of possible values. These can be chosen by a user as the value of the category in an item.
However, over time, category values may no longer be relevant.
Removing the values from the project schema would be the wrong course of action as values could still exist in items (possibly in old baselines) that would raise errors in item integrity checks and could cause problems when data is imported. For example, data that used to be valid can no longer be imported unless extra import options are selected to ignore the validation of data.
Set Category Values as Obsolete
Instead of deleting those values from the project schema, you can set category values as obsolete so that the value can no longer be entered by users but the historical values remain valid.
In this example, Project A might have been completed so is no longer valid to set for future items. Also, Department 1 might not be responsible for any future items but they were responsible for historical ones.
Once set, any items that had been set to the obsolete value remain valid. However, users can only enter the values that are currently valid; not the ones that are marked as obsolete.
When querying the database, you can still set the query criteria to search for items that are marked as obsolete.
Any validation checks on items in the database will return without error because the value remains defined in the schema.
In a project, you may wish to enter a supporting reference number for an item of data. For example, an Equipment Number. This number might require a given format.
You can achieve this by creating a user-defined category with no category values defined and include a Category Verification Test using a Regular Expression.
In this example, the regular expression ^[A-Z]{4}(?:-[0-9]{5})?$ can be broken down into:
Regular Expression
Description
^
The beginning of the string
[A-Z]{4}
The project code must be 4 alpha characters long in uppercase
If you now create or modify an item of data, Cradle will present you with an error message on saving if the category value does not match what you have specified in the Category Verification Test.
Here the validation test would fail because you have not included a hyphen separator.
You will also receive an error if the incorrect case is used. E.g. demo-12345.
However, if you enter a value such as DEMO-12345, this would save without any warning or error message.
Summary
Regular expressions can be used in many areas of the tool. Using this functionality to enforce an input in free text categories can be a very useful feature.
There are occasions where you want a number of components of an item to be unique, aside from its Identifier. Attribute sets allow you to specify combinations of attributes that are to be unique for an item type.
Set Components
They can be defined for requirements and system notes. Each attribute set can contain one or more attributes chosen from:
Key
Category (single value and multiple value categories)
Sets
You can define as few as one or as many as thirty three attributes (all categories and the key) for each set.
An item type can have multiple attribute sets.
In Practice
As an easy to explain concept, this example shows an asset register. The managers of the multiple Town Lodge sites each have assets installed in the building. To aid maintenance and asset recording, they want to ensure combination of:
the Building it’s in
the Location within the building
the Item type for the equipment
and an identifying index
are unique.
By setting each of these components as categories in the ASSET item type, and then selecting Attribute Sets adding an Attribute Set called “Asset identifier” made from these categories, they can check for uniqueness.
As the user is assigning new items into the asset register, when they attempt to save the item, a uniqueness check is calculated. In this instance the combination has been used before, so the user is not allowed to save this item. In this case all they need to do is up the index of the ‘routers’ in the reception area. Obviously this can be any meaningful combination for your project.
Note:
These Attribute Sets checks are not as restrictive as an item’s identity. You would not be allowed to create a duplicate ID/Version/Draft of an item in the database. It is applied when editing and saving an item. This allows you to freely copy items without having to decide on multiple unique combinations at the instant of copying. On subsequently editing and attempting to save the item, the checks would be performed. In a similar manner to ‘Mandatory Categories’.
Did you know you can Colour Code your Frames to match the Priority you have set in Categories?
To enable this colour code you will need to navigate to Project Setup, inside here go to Item Definitions – Categories. For my example I have used Req Priority, in my Category Values I have :
URGENT – Red
MEDIUM – Orange
LOWEST – Yellow
TBD – Blue
Ensure you have assigned this Category to a Frame in an Item Type. For my example I have put mine into Item Type – Requirements and the Frame is TEXT
As you can see in my example, whenever I change my Req Priority the text colour changes in “Detailed Description” Frame.
For further information regarding Frames click here
If you require only some users to be able to make a change to a category or categories, then you can use a skill to stop other users from accessing it but they will still be able to see the options set.
Setting the skill on a category
In Project Setup, select the Item Type the category is set for. With the Assign Categories dialog open, select the category you wish to restrict. There is a ‘Required skill:’ option which can be set differently for each category in each item type. This means that a category can be used Requirements and SYSTEM REQs but have different skills for each item type and so can be altered by different users.
Once Project Setup is Saved and Closed any users that now login, that do not have the required, will be able to see the option set but not alter it.
Using the DEMO project as an example, I set the category skill for Req Priority to REQUIREMENT. The ADMIN user does not have the REQUIREMENT skill and so once set, is able to see the as option set but not able to alter it.
When logged in as REQMAN who does have the REQUIREMENT skill, they can see and alter the category option.
This restriction works throughout WorkBench including in queries, forms and Item Properties.
There are a number of ways you can get involved with National Tea Day www.nationalteaday.co.uk/ least of all you can ensure you get a good brew on for elevenses. Maybe nip out at lunch time and get a packet of scones and share afternoon tea with your work colleagues. Ask for donations in a Tea Cup and pick a local charity!
There’s an awful lot of Tea drunk by engineers at 3SL towers…….
Now the tricky bit, how on earth do we make this blog entry have something to do with Cradle? Ah! Multivalue Picklist Categories is how. If you have a set of premises that you manage, these can be set as items within Cradle. Each café could have a number of supplies that the café offers, and these could be recorded in a multiple value category.
If there was a shortage of Oolong, it would be simple to run a query to list each of the premises that need to be contacted. For further reading on categories, you could read ‘Multiple Value Categories’
In the database each item can have a number of categories assigned to it. These are indexes by which you want to sort and retrieve your items. Some values are plainly single, an item’s Customer Approval can’t be Approved and Rejected at the same time. However, Colours could be Red and Blue on the same item. These are multiple value categories. They are used to classify an item when the attribute itself can have multiple non mutually exclusive values.
The values that can be held by the category are defined in the Project Schema. Each value is allocated to a ‘slot’ each item holds a set of flags indicating which slots (values) are ‘selected’ for that item.
When shown in a View or Form, the values for the slots are shown to the user.
New Cradle-7.2 Project Setup Feature
It’s now even easier to set up multiple value categories in Project Setup.
The new options are:
Clear – Clears the value from the list but leaves the slot blank
Copy – Copies the selected value
Paste – Pastes the copied value into the selected slot
Delete – Deletes the value and all values below this value are moved up
Insert – Inserts a slot so you can add a value, all values below this slot are moved down
Up – Exchanges the currently selected slot with the one above it
Down – Exchanges the currently selected slot with the one below it
There is consequence on existing items in the database for all of the operations above so a warning message will be shown when attempting one of these operations.
If slots 1, 2, 3 are Red, Blue and Green and item AA1 has flags set for 1, 2 it will be seen as Red and Blue. If a subsequent change is made to the schema (after items exist as drafts or baseline items), making slot 1, 2, 3 Red, Orange, Blue and Green, will result in item AA1 being defines as Red and Orange. This is because the flags tally with the slot. Users should query on existing data to see which items will be affected and subsequently update those they wish to change individually, or using “Item Properties”.
In Cradle you can define Rule Sets for your Item Types which can be used in a number of ways. You are able to auto set a category based on your rules. Your formula, for example, could produce a RAG (Red Amber Green) risk report from two categories such as Probability and Impact categories.
However, you’re not just limited to red, amber and green. If you can define a rule and pick a colour, there’s a rainbow of possibilities.
The structure of each Cradle database is defined by it’s schema. This contains many parts, but the most fundamental are the ‘item types‘ for the types of information that Cradle will manage and the category and frame attributes of these item types.
Item Types, Categories and Frames
When you define the schema, you can specify a ‘description‘ for all of these parts, including:
Item types
Category codes
Each value in a category code that is a pick-list of value(s)
All frames
Setting Schema Descriptions
These descriptions are very useful to end users, because Cradle will display them as tooltips in the UI (User Interface). For example, when the user moves to set a category value, Cradle will display:
The description of the category
The description of the current category value
When a user moves into the heading for a frame, the UI will display the description of that frame as a tooltip.
Link Rules
A comment as to the purpose of the link rule can be added to the schema. This is a useful aide-mémoire to those editing the rules. However, if a certain action is prohibited by the rules, then the user is shown why.
In this example two rules have been set up, one to allow user Alan to modify sub-part to component links and another to prevent all users modifying the same link. Because of the top-down sequence of rule matching this has the effect of allowing only Alan to modify cross references of this type. The example shows Dewi trying to modify the link attributes between the Pump parent component and the Pump housing linked as a sub-component. The warning shows why this alteration was prevented. The text from the schema is shown in the dialog.
Groups
Within Cradle item types can have a number of different categories. Some item types may share the same categories, others may use unique values.
The Group field is available across the whole project. When the schema contains a number of entries for the Group field, these can be applied to any item type. If the project defines values for the Group, selection is only from the defined list. If no pick-list is defined, it is simply a free-form text field, to use as the user wishes.
This example shows three types of assets, Capital, Inventory and Liquid. Some item types may only fall into one group, in this example a physical bedroom is going to be a capital asset, the guest supplies are liquid assets. However, when it comes to fittings, the light is being grouped with the Capital assets and the bed and so on in the Inventory group.
However you choose to use this cross item categorisation, the descriptions given to the group show as tooltips when hovering over the group field in a form.