Block Label Dialog

Key Concepts

The Block Label Dialog is used to specify the text 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 each segment type shown.

  • Single Block Label: When selected, the text appearing on the activity block will correspond to the text 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 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

The Block Label Dialog can be accessed by opening the "Labels" dialog from the Gantt, then clicking on the "Label" button.

Available Fields Box

This box lists all of the system fields that can be used to construct the display texts dynamically. 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 be treated as literal text.  For example, entering "Job Name" is different from "Job. Name". This is because "Job. Name" would dynamically be replaced with the actual Job Name, whereas "Job Name" would appear as the text Job Name.

Label Box

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 because 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 contains a space, 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

It is possible to create a Microsoft .Net DLL to generate text to replace or append to block labels and tooltips for maximum flexibility.  This allows for complex calculations and logic and for system objects and even external data and programs to be used to create 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 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 if 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.)

using PT. Scheduler;

namespace PTUserInterfaceCustomization

{

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