The Block Label Dialog is used to specify the text that will be displayed on the activity blocks and tooltips in the Gantt Chart.
In PlanetTogether, you can specify whether you want the text displayed for the entire activity block or for each individual segment type shown.
- Single Block Label: When selected, the text appearing on the activity block will correspond to the text that is defined in the Label window of the Block Label Dialog.
- Individual Segment Labels, each drawn on its own Segment: When selected, the text appearing on the activity block will correspond to the text that is defined under the Label window of each segment type's dialog box. To define the text to appear in each segment type, click on the Segment Type box of the corresponding segment.
Block Label Dialog
Available Fields Box
This box lists all of the system fields that can be used to dynamically construct the display texts. You can drag these values one by one into the Label Box to the right to define the label. The fields are arranged by the system's object values such as "Job" and "Internal Activity".
Note: Each field must appear in the Label Box in the exact format or else it will be treated as literal text. For example, entering "Job Name" is different from "Job.Name". "Job.Name" would dynamically be replaced with the actual Job Name whereas "Job Name" would show up as the text Job Name.
This box is where the layout of the label is constructed. You can drag fields here from the Available Fields Box and you can type values (that match the values in the Available Fields Box) or explicit text values.
For example, you could enter something like: My Job's Name is Job.Name. The result would be that the blocks on the Gantt would display something like: "My Job's Name is 100001".
Displaying Attribute Values
If you would like to display Attribute values, note that they have a special format due to the fact that there can be any number of Attributes. To display the Code value for an operation attribute with Attribute Name = "Size" you would enter: ResourceOperation.Attribute.Size.Code.
Note: If the Attribute name happens to contain a space then replace the space with a double-underscore. For example, to display the Code value for an operation attribute with Attribute Name = "Horizontal Size" you would enter: ResourceOperation.Attribute.Horizontal__Size.Code.
To display the Name of the first Operation Attribute you would enter: ResourceOperation.Attribute.1.Name.
Creating Custom Block Labels and Tooltips
For maximum flexibility, it is possible to create a Microsoft .Net DLL to generate text to replace or append to block labels and tooltips. This allows for complex calculations and logic and for system objects, and even external data and programs to be used in the creation of the text.
- The text that is created can replace the label or tooltip or be appended to the end.
- The dll must implement the IPTCustomGanttBlockText interface as defined in the Object Help and shown in the example below.
- The dll should be placed in the ProgramFilesUICustomizations folder on the PlanetTogether Server.
- Note that references to the system objects in this customization may necessitate an update of the dll when a new version of the software is installed in the event that the reference objects have changed.
- As with all customizations, after adding this file to the server, the APS Updater Service needs to be restarted to load the customization and send it to clients on startup.
- When displaying the Attribute Segment, use this format: ResourceOperation.Attribute.Name.Code (NAME will be dynamically replaced by the Name of each attribute so that the corresponding Attribute’s information is shown in each attribute block on the Gantt.)
public class CustomGanttBlockText : PTUserInterfaceCustomization.IPTCustomGanttBlockText
public void SetGanttBlockLabel(ScenarioDetail sd, ResourceBlock block, ref string label)
label += "nn test label";
public void SetGanttBlockToolTip(ScenarioDetail sd, ResourceBlock block, ref string tooltip)
tooltip += "nn test tooltip";
Adding User Defined Fields to the labels
User Defined Fields can be added to the Labels by entering them in the following format:
<object type>.UDF.<Field Name>
This is valid for: Jobs, Manufacturing Orders, and Operations.
For example: Job.UDF.Width