Getting started
Configuration wizard
HTML templates
JavaScript framework
Additional resources
- Video: Introducing Plumsail Org Chart
- Data caching
- SharePoint Server 2019/SE (On-Premises) resources
- Make sure that SharePoint has enough data
- Exporting properties to a directory service
General
- Version history
- Licensing details
- Data protection and security
- Custom code security measures
- Billing and subscription management
Printing & Reports
- Printing organizational structure
- Generate multi-page PDF report
- Export to CSV and analyze in Excel
- Custom styles for printed Org Chart
Microsoft Teams
Display different types of employees
Filter and order boxes
- Create and manage filtered views
- Order employees boxes using a custom field
- Group employees boxes using a custom field
Customize boxes and styles
- Format boxes conditionally
- Customize box HTML template and CSS styles
- Display awards and conditionally format Org Chart
- Create an Org Chart with two root managers
- Change Org Chart theme
- Localize Org Chart
Show specific user on load
- Drill down to specific box using URL parameter
- Drill down to current user by default
- Drill down to manager of user from URL by default
Manage web part size and scale
- Open Org Chart in full-screen mode on load
- Make Org Chart use full page width
- Automatically scale boxes to fit visible area
Other examples
- How to customize Org Chart
- How to use advanced Org Chart navigation
- Use tenant properties to disable Org Chart features
- Include and use fields from additional list in Org Chart
- Support of search in a list with more than 5000 items for Org Chart
- Show Org Chart based on a list data source for anonymous users
- How to check if a user has Tenant Administrator permissions
JavaScript Events (SharePoint Server 2019/SE)
ItemData object
Most rendering events receive itemData object as input parameter. The object represents the business object from the data source. It is a set of fields with values.
Each field has the same name as internal name of the field in the data source.
The object has structure like this:
{
FieldInternalName1: "FieldValue1",
FieldInternalName2: "FieldValue2",
...
FieldInternalNameN: "FieldValueN",
}
onBoxRendered(handler) event
Adds a handler on box rendered event. The handler function has three input parameters:
Parameter |
Description |
|---|---|
event |
It is the object of the event |
box |
It is the object of the rendered box. You can change this box, for example change background. The
You can use this object to set width and height of the box. - elemContainer – The DOM element of the box container. The |
itemData |
It is the business object from the data source. See description at the beginning of “Events” section. |
Example
//Changes background of boxes for all employees
//from marketing department
renderer.onBoxRendered(function(event, box, itemData){
if(itemData["Department"].contains('Marketing')){
box.$elem.css({
'background-color': 'red',
'border-color': 'red'
});
}
});
In this example Department is an internal name of the field, you can get value from the business object using such syntax:
itemData.Department
But if the internal name of your field contains − like SPS–Responsibility you need to use different syntax:
itemData["SPS-Responsibility"]
The − symbol is forbidden in JavaScript, that is why you need to get value of the field using string key.
onTooltipRendered(handler) event
Adds a handler on tooltip rendered event. The handler has three input parameters:
Parameter |
Description |
|---|---|
event |
The object of the event. |
tooltip |
The object of rendered details tooltip. You can change this tooltip, for example change background. The
|
itemData |
The business object from the data source. See description at the beginning of “Events” section. |
Example
//Changes background for all tooltips of employees
//from marketing department
renderer.onTooltipRendered(function(event, tooltip, itemData){
if(itemData["Department"]contains('Marketing')){
tooltip.$elem.css({ 'background-color': 'red' });
}
});
onSearchResultRendered(handler) event
Adds a handler on quick search result rendered event. The handler has three input parameters:
Parameter |
Description |
|---|---|
event |
The object of the event. |
tooltip |
The object of rendered details tooltip. You can change this tooltip, for example change background. The
|
itemData |
The business object from the data source. See description at the beginning of “Events” section. |
Example
//Changes background for search results of employees
//from marketing department
renderer.onSearchResultRendered(
function(event, searchResult, itemData){
if(itemData["Department"].contains('Marketing')){
searchResult.$elem.css({ 'background-color': 'red' });
}
}
);
onDrilledDown(handler) event
Adds a drilled down event handler. The handler has one input parameter:
Parameter |
Description |
|---|---|
event |
The object of the event. |
Example
renderer.onDrilledDown(
function(event) {
console.log("Drill down executed.");
}
);
onInitialLoadingFinished(handler) event
Adds a handler on org chart initial loading finished event. It is triggered when org chart is loaded for the first time.
Example
renderer.onInitialLoadingFinished(
function(){
console.log('Initial loading is finished');
}
);
onLoadingStarted(handler) event
Adds a handler on org chart loading started event. It is triggered when progress indicator is showed.
Example
renderer.onLoadingStarted(
function(){
console.log('Loading is started');
}
);
onLoadingFinished(handler) event
Adds a handler on org chart loading finished event. It is triggered when progress indicator is hidden.
Example
renderer.onLoadingFinished(
function(){
console.log('Loading is finished');
}
);
Note
Next review Methods.