GlideTimelineItem : Global
Die GlideTimelineItem- API erweitert die abstrakte ScheduleItem -Klasse, um zusätzliche Eigenschaften zu definieren, die für die Zeitleiste spezifisch sind.
Ein Zeitleistenelement ist im Grunde jedes Element, das in einer einzelnen Zeile auf der Zeitleiste angezeigt wird. Ein GlideTimelineItem hat null oder mehr zugeordnete Spannen (TimelineSpan-Objekte).
GlideTimelineItem – GlideTimelineItem(String tableName)
Erstellt ein „Ddummy“-GlideTimelineItem-Objekt.
Das ist nützlich, wenn Sie Zeilen erstellen, in denen kein YMoving möglich ist. Sie enthalten jedoch verschachtelte untergeordnete Elemente (z. B. die Zeile „Benutzer“ in der obersten Ebene der Zeitleiste der Gruppenressource. sys_id muss eindeutig sein, damit Funktionen auf DOM-Ebene ordnungsgemäß analysiert werden können. Standardmäßig ist dieses Objekt nicht „verwerfbar“, da kein Tabellenname angegeben wurde.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Der Name der Tabelle, die dem aktuellen Objekt zugeordnet ist. |
| Typ | Beschreibung |
|---|---|
| void |
GlideTimelineItem – GlideTimelineItem(String tableName, String sys_id)
Konstruktor, der die erforderlichen Tabellen- und sys_id -Eigenschaften festlegt.
Die übrigen Eigenschaften dieses Objekts sollten vom Aufrufer festgelegt werden. Diese Objektinstanz ist standardmäßig „verwerfbar“, da ein Tabellenname angegeben ist.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Der Name der Tabelle, die dem aktuellen Objekt zugeordnet ist. |
| sys_id | Zeichenfolge | Die Sys-ID des Objekts. |
| Typ | Beschreibung |
|---|---|
| void |
GlideTimelineItem – createTimelineSpan(String tableName)
Erzeugt ein neues TimelineSpan-Objekt, das dem aktuellen Instanzobjekt zugeordnet ist.
Wenn keine anderen TimelineSpan -Objekte vorhanden sind, verwendet das neu erstellte Objekt das gleiche sys_id wie das aktuelle Instanzobjekt. Andernfalls wird eine zufällig generierte GUID verwendet.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Der Name der Tabelle, die dem aktuellen Objekt zugeordnet ist. |
| Typ | Beschreibung |
|---|---|
| Objekt | Die neu erstellte Spannenobjektinstanz. |
GlideTimelineItem – createTimelineSpan(String tableName, String sys_id)
Erstellt ein neues TimelineSpan -Objekt, das dem aktuellen Instanzobjekt zugeordnet ist, unter Verwendung der angegebenen Tabelle und sys_id.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Name der Tabelle, die dem aktuellen Objekt zugeordnet ist |
| sys_id | Zeichenfolge | Sys_id für das Objekt. |
| Typ | Beschreibung |
|---|---|
| Objekt | Neu erstellte Instanz des Spannenobjekts. |
Das folgende Beispiel zeigt, wie mit createTimelineSpan() ein neues TimelineSpan-Objekt erstellt wird.
var project_id="741cc7491b6f1c5043de32231b4bcbc5"; // Project ID
var grUser = new GlideRecord('user_resource');
grUser.addQuery('planned_task', project_id);
grUser.setQueryReferences(true);
grUser.orderBy('user.name', 'DESC');
grUser.query();
while (grUser.next()) {
var item = new GlideTimelineItem(grUser.getTableName(), grUser.user);
/* Specify the text to display in the left pane for this item. */
item.setLeftLabelText(grUser.user.name);
/* Set the name of the image file (including it's path) */
item.setImage('../images/icons/user.gifx');
/* Specify whether or not to bold the text style of the item in the left pane. */
item.setTextBold(true);
/* Set whether or not the current instance object can be clicked and dragged into another GlideTimelineItem */
item.setIsDraggable(true);
/* Create a new TimelineSpan object associated with the current instance object using the specified table and sys_id. */
item.createTimelineSpan(grUser.getTableName(), grUser.getUniqueValue());
}
GlideTimelineItem – getImage( )
Gibt eine Zeichenfolge zurück, die den Namen der Bilddatei angbit, die dem aktuellen GlideTimelineItem zugeordnet ist.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Der Name der Bilddatei, die dem aktuellen GlideTimelineItem zugeordnet ist. Wenn dem aktuellen Element kein Bild zugeordnet ist, wird eine leere Zeichenfolge ("") zurückgegeben. |
GlideTimelineItem – getIsDroppable( )
Gibt an, ob das aktuelle Instanzobjekt beim vertikalen Verschieben von Zeitleistenelementen als „Drop-Zone“ zulässig ist.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Boolean | „True“, falls verwerfbar; andernfalls „false“. |
GlideTimelineItem – getLeftLabelText( )
Gibt den Text zurück, der im linken Bereich angezeigt werden soll (falls aktiviert).
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Der Wert des Textes, der im linken Bereich angezeigt werden soll. |
GlideTimelineItem – getParent( )
Gibt den eindeutigen sysId des übergeordneten Objekts des aktuellen GlideTimelineItemzurück.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Die eindeutige sysId des aktuellen übergeordneten GlideTimelineItem-Objekts. Wenn das übergeordnete Element nicht vorhanden ist, wird eine leere Zeichenfolge ("") zurückgegeben. |
GlideTimelineItem – getTimelineSpans( )
Gibt alle TimelineSpan-Objekte zurück, die mit der aktuellen Instanz in einer ArrayList verknüpft sind.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt-Array | Die Liste der TimelineSpan-Objekte, die der aktuellen Instanz zugeordnet sind. |
GlideTimelineItem – isTextBold( )
Gibt an, ob der Text im linken Bereich so eingestellt ist, dass er fett angezeigt wird.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die angibt, ob der Text fett dargestellt werden soll. Mögliche Werte:
|
Im folgenden Beispiel wird überprüft, ob der Status eines incident „Neu“ lautet, und der Text des Elements wird fett angezeigt.
var NewIncidentTimelineScriptInclude = Class.create();
NewIncidentTimelineScriptInclude.prototype = Object.extendsObject(AbstractTimelineSchedulePage, {
getItems: function() {
// Specify the page title
this.setPageTitle('New Incident Timeline');
var groupNew = new GlideTimelineItem('new');
groupNew.setLeftLabelText('New Incidents');
groupNew.setImage('../images/icons/all.gifx');
this.add(groupNew);
// Get all the new incidents and add them to a new label
var grIncident = new GlideRecord('incident');
grIncident.query();
while (grIncident.next()) {
// Loop through all and capture new incidents
if (grIncident.incident_state != '1') continue;
// Create the item and the span item.
var item = new GlideTimelineItem(grIncident.getTableName(), grIncident.sys_id);
var span = item.createTimelineSpan(grIncident.getTableName(), grIncident.sys_id);
if (grIncident.incident_state == '1') { // New
item.setParent(groupNew.getSysId());
// Check and set bold text
item.setTextBold(item.isTextBold() ? false : true);
}
item.setImage('../images/icons/open.gifx');
span.setTimeSpan(grIncident.getElement('opened_at').getGlideObject().getNumericValue(),
grIncident.getElement('opened_at').getGlideObject().getNumericValue());
// Show different colors based upon the priorities only for new incidents
switch (grIncident.getElement('priority').toString()) {
case '1':
span.setPointIconClass('red_circle');
break;
case '2':
span.setPointIconClass('red_square');
break;
case '3':
span.setPointIconClass('blue_circle');
break;
case '4':
span.setPointIconClass('blue_square');
break;
case '5':
span.setPointIconClass('sepia_circle');
break;
default: // Otherwise, the default point icon class will be used (Milestone)
}
// Common item properties
item.setLeftLabelText(grIncident.short_description);
// Common span properties
span.setSpanText(grIncident.short_description);
span.setSpanColor('blue');
span.setTooltip('<strong>' + GlideStringUtil.escapeHTML(grIncident.short_description) +
'</strong><br>' + grIncident.number);
this.add(item);
}
}
});
GlideTimelineItem – setImage(String strImageName)
Legt den Namen der Bilddatei (einschließlich des Pfads) fest, die als Symbol für das Element im linken Bereich verwendet werden soll.
| Name | Typ | Beschreibung |
|---|---|---|
| strImageName | Zeichenfolge | Name des Bildes einschließlich Pfad. |
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie Sie mit setImage() das Bild definieren, das für das Symbol im linken Bereich angezeigt werden soll.
var project_id="741cc7491b6f1c5043de32231b4bcbc5"; // Project ID
var grUser = new GlideRecord('user_resource');
grUser.addQuery('planned_task', project_id);
grUser.setQueryReferences(true);
grUser.orderBy('user.name', 'DESC');
grUser.query();
while (grUser.next()) {
var item = new GlideTimelineItem(grUser.getTableName(), grUser.user);
/* Specify the text to display in the left pane for this item. */
item.setLeftLabelText(grUser.user.name);
/* Set the name of the image file (including it's path) */
item.setImage('../images/icons/user.gifx');
/* Specify whether or not to bold the text style of the item in the left pane. */
item.setTextBold(true);
/* Set whether or not the current instance object can be clicked and dragged into another GlideTimelineItem */
item.setIsDraggable(true);
}
GlideTimelineItem – setIsDraggable(Boolean b)
Legt fest, ob das aktuelle Instanzobjekt angeklickt und in ein anderes GlideTimelineItem gezogen werden kann.
| Name | Typ | Beschreibung |
|---|---|---|
| b | Boolean | Kennzeichnung, die angibt, ob das Element durch Klicken und Ziehen verschoben werden kann. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie setIsDraggable() verwendet wird, um das Ziehen des aktuellen Objekts in ein anderes GlideTimelineItem zu ermöglichen.
var project_id="741cc7491b6f1c5043de32231b4bcbc5"; // Project ID
var grUser = new GlideRecord('user_resource');
grUser.addQuery('planned_task', project_id);
grUser.setQueryReferences(true);
grUser.orderBy('user.name', 'DESC');
grUser.query();
while (grUser.next()) {
var item = new GlideTimelineItem(grUser.getTableName(), grUser.user);
/* Specify the text to display in the left pane for this item. */
item.setLeftLabelText(grUser.user.name);
/* Set the name of the image file (including it's path) */
item.setImage('../images/icons/user.gifx');
/* Specify whether or not to bold the text style of the item in the left pane. */
item.setTextBold(true);
/* Set whether or not the current instance object can be clicked and dragged into another GlideTimelineItem */
item.setIsDraggable(true);
}
GlideTimelineItem – setLeftLabelText(String strText)
Gibt den Text an, der im linken Bereich für dieses Element angezeigt werden soll.
| Name | Typ | Beschreibung |
|---|---|---|
| strText | Zeichenfolge | Text, der im linken Bereich für dieses Element angezeigt werden soll. |
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie Sie mit setLeftLabelText() den Text im linken Bereich festlegen.
var project_id="741cc7491b6f1c5043de32231b4bcbc5"; // Project ID
var grUser = new GlideRecord('user_resource');
grUser.addQuery('planned_task', project_id);
grUser.setQueryReferences(true);
grUser.orderBy('user.name', 'DESC');
grUser.query();
while (grUser.next()) {
var item = new GlideTimelineItem(grUser.getTableName(), grUser.user);
/* Specify the text to display in the left pane for this item. */
item.setLeftLabelText(grUser.user.name);
/* Set the name of the image file (including it's path) */
item.setImage('../images/icons/user.gifx');
/* Specify whether or not to bold the text style of the item in the left pane. */
item.setTextBold(true);
/* Set whether or not the current instance object can be clicked and dragged into another GlideTimelineItem */
item.setIsDraggable(true);
}
GlideTimelineItem – setParent(String sysId)
Legt das übergeordnete Element des aktuellen GlideTimelineItem fest.
| Name | Typ | Beschreibung |
|---|---|---|
| sysId | Zeichenfolge | Die sysID des GlideTimelineItem, die das übergeordnete Element des aktuellen GlideTimelineItem werden soll. |
| Typ | Beschreibung |
|---|---|
| void |
GlideTimelineItem – setTextBold(Boolean b)
Gibt an, ob der Textstil des Elements im linken Bereich fett angezeigt werden soll.
| Name | Typ | Beschreibung |
|---|---|---|
| b | Boolean | Kennzeichnung, die angibt, ob der Text im linken Bereich fett dargestellt werden soll. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie Sie den Text im linken Bereich fett festlegen.
var project_id="741cc7491b6f1c5043de32231b4bcbc5"; // Project ID
var grUser = new GlideRecord('user_resource');
grUser.addQuery('planned_task', project_id);
grUser.setQueryReferences(true);
grUser.orderBy('user.name', 'DESC');
grUser.query();
while (grUser.next()) {
var item = new GlideTimelineItem(grUser.getTableName(), grUser.user);
/* Specify the text to display in the left pane for this item. */
item.setLeftLabelText(grUser.user.name);
/* Set the name of the image file (including it's path) */
item.setImage('../images/icons/user.gifx');
/* Specify whether or not to bold the text style of the item in the left pane. */
item.setTextBold(true);
/* Set whether or not the current instance object can be clicked and dragged into another GlideTimelineItem */
item.setIsDraggable(true);
}