1.8.1. AdvDiagram

Описание классов для работы с AdvDiagram

1.8.1.1. TbtkAdvDiagram

ExportShapeToVisioOrgChar(VisioInterface: Variant; Text, StyleName_Rus, StyleName_Eng: String; ObjectID: Double; Width, Height, CenterX, CenterY: Integer; ImageFileName: String)

Метод добавления HR объекта в организационную диаграмму Visio.

Parameters:
  • VisioInterface (Variant) – Ссылка на интерфейс Visio. Сейчас параметр не используется.
  • Text (String) – Текст отображаемый в элементе.
  • StyleName_Rus (String) – Стиль элемента в русской редакции Visio (Директор, Руководитель, Должность, Консультант, Вакансия, Помощник).
  • StyleName_Eng (String) – Стиль элемента в англоязычной редакции Visio (Executive, Manager, Position, Consultant, Vacancy, Dynamic Connector).
  • ObjectID (Double) – Идентификатор объекта в системе.
  • Width (Integer) – Ширина в мм элемента на диаграмме.
  • Height (Integer) – Высота в мм элемента на диаграмме.
  • CenterX (Integer) – Координата X центра элемента на диаграмме в мм.
  • CenterY (Integer) – Координата X центра элемента на диаграмме в мм.
  • ImageFileName (String) – Путь к изображнию которое надо связать с элементом.
Пример использования
<pascal>
  ExportShapeToVisioOrgChar(GetVar('VisioInterface'), '10424330001', -1, -1, -1, 400, '');
</pascal>
ExportConnectionToVisioOrgChar(VisioInterface: Variant; Id: Double; StyleName_Rus, StyleName_Eng: String; IDBeginShape, IDEndShape: Double)

Добавляет связь между двумя организационными диаграммами Visio.

Parameters:
  • VisioInterface (Variant) – Ссылка на интерфейс Visio. Сейчас параметр не используется.
  • Id (Double) – Уникальный идентификатор объекта. Уникальность должны сохраняться в рамках документа.
  • StyleName_Rus (String) – Стиль элемента в русской редакции Visio (Динамическая соединительная линия).
  • StyleName_Eng (String) – Стиль элемента в англоязычной редакции Visio (Dynamic Connector).
  • IDBeginShape (Double) – Идентификатор первого HR объекта на диаграмме с которым необходимо организовать связь.
  • IDEndShape (Double) – Идентификатор второго HR объекта на диаграмме с которым необходимо организовать связь.
Пример использования
<pascal>
  ExportConnectionToVisioOrgChar(GetVar('VisioInterface'), 4,
  'Динамическая соединительная линия', 'Dynamic Connector', '10424330001', 463310);
</pascal>

1.8.1.2. TbtkAdvDiagramItemCaption

class TbtkAdvDiagramItemCaption

Текст, отображающийся поверх элемента.

Font: TFont

Cвойства шрифта.

Return type:TFont
Пример использования
<pascal>
  S := FindSelection('SEL_DTB_DIAGRAM_MATERDET.Diagram');
  D := S.Diagram;

  if Assigned(D) then
  begin
    D.BeginUpdate;
    try
      D.HighLightedItemBorderThickness := 2;
      D.Items.HighLightItemsByObjectID(1181273001, True);
      D.HighLightedItemBorderColor := StrToInt('$00FF00');
      D.Items.Item[1].HighLightedBorderColor := StrToInt('$005555');
      D.Items.Item[2].HighLightedBorderColor := StrToInt('$005555');
      D.Items.Item[2].HighLightedBorderThickness := 3;

      for i := 0 to D.Items.Count - 1 do
        if D.Items.Item[i].HighLighted then
        begin
          D.Items.Item[i].Caption.Font.Style := [fsItalic, fsBold];
          D.Items.Item[i].Caption.Font.Size := 15;
          D.Items.Item[i].Caption.Font.Name := 'Times';
        end;
    finally
      D.EndUpdate;
    end;
  end
  else
    ShowMessage('Диаграмма не найдена');
</pascal>

Note

Текст можно задать только из скриптера с помощью метода TbtkAdvDiagramItems.SetItemsCaptionByObjectID().

1.8.1.3. TbtkAdvDiagram

class TbtkAdvDiagram

Скриптовый класс управляющий доступом к свойствам фрейма TbtkAdvDiagramFrame.

Note

Все действия связанные с обновлением внешного вида элемента необходимо выполнять в блоке try ... finally ... end

TbtkAdvDiagram.BeginUpdate;
try
  //работы с методами и свойствами диаграммы
finally
  TbtkAdvDiagram.EndUpdate;
end;
Пример работы. Задание произвольного стиля элемента
<PASCAL>
  f := Findselection('sel_btd_diagram.diagram');

  If not Assigned(f) then
    Raise('Диаграмма не найдена');

  f.Diagram.BeginUpdate;
  try
    f.Diagram.FocusedItem.BorderColor := Trunc(Random * 64000);
    f.Diagram.FocusedItem.BorderStyle := Trunc(Random * 5);
    f.Diagram.FocusedItem.BackColor := Trunc(Random * 64000);
    f.Diagram.FocusedItem.BackStyle := Trunc(Random * 6);
    f.Diagram.FocusedItem.BorderThickness := Trunc(Random * 10);
  finally
    f.Diagram.EndUpdate;
  end;
</PASCAL>
FocusedItemBorderColor: TRGBColor

Цвет рамки сфокусированного элемента.

Return type:TRGBColor
FocusedItemBorderThickness: Integer

Толщина рамки сфокусированного элемента.

Return type:Integer

New in version Global_5.10_ms_6.

HighLightedItemBorderColor: TRGBColor

Цвет рамки подсвеченного элемента.

Return type:TRGBColor
Пример использования
<pascal>
  S := FindSelection('SEL_DTB_DIAGRAM.Diagram');
  D := S.Diagram;

  if Assigned(D) then
  begin
    D.Items.HighLightItemsByObjectID(1181273001, True);
    D.HighLightedItemBorderColor := StrToInt('$00FF00');
  End;
</pascal>
ItemCount: Integer

Количество графических элементов на диаграмме.

Return type:Integer
Items: TbtkAdvDiagramItems

Коллекция графических элементов расположенных на диаграмме.

Return type:TbtkAdvDiagramItems
FocusedItem: TbtkAdvDiagramItem

Возвращает сфокусированный элемент.

Return type:TbtkAdvDiagramItem
SelectedItemBorderColor: TRGBColor

Цвет рамки выделенного элемента.

Return type:TRGBColor
HighLightedItemBorderThickness: Integer

Толщина рамки подсвеченного элемента.

Return type:Integer
ExportToVisio()

Открывает VISIO и экспортирует документ. Экспортирует только блоки относящиеся к Организационной диаграмме.

Пример использования
<PASCAL>
  f := Findselection('sel_btd_diagram.diagram');
  f.Diagram.ExportToVisio;
</PASCAL>
EndUpdate()

Метод разрешает перерисовку схемы.

See also

BeginUpdate()

CreateReport(ReportName: String; ReportVersionDate: TDateTime; Action: TReportViewMode; ShowWizard: Boolean; OpSelectionName: String; StyleFlag: TFormCreationFlags)

Метод позволяет создать FastReport4 отчет, на основе шаблона “Diagram Report(*.dgr)”. Описание совпадает с TbtkScriptSelectionObject.CreateReport

Parameters:
  • ReportName (String) – Cистемное имя отчёта.
  • ReportVersionDate (TDateTime) – Дата, по которой будет найдена актуальная версия отчёта (если не задана, берётся SysDate).
  • Action (TReportViewMode) – Действие, которое небходимо произвести над отчётом после его создания. Возможные значения: {rvmPrint, rvmShow, rvmSave, rvmDesign}
  • ShowWizard (Boolean) – Флаг отображения мастера настройки отчётов (если указана главная выборка мастера)
  • OpSelectionName (String) – Системное имя выборки, операции которой будут отображаться в главном меню окна при модальном просмотре построенного отчёта. Если не указана, подставляются выборки со стандартным набором команд (“Save as” и “Print”)
  • StyleFlag (TFormCreationFlags) – Флаг модального или немодального открытия окна просмотра отчёта {fcfModal, fcfMDI}. fcfMDI - работает только для отчетов на основе FastReport 4й версии.
CreateReportEx(ReportName: String; ReportVersionDate: TDateTime; Action: TReportViewMode; ShowWizard: Boolean; OpSelectionName: String; StyleFlag: TFormCreationFlags; Names: Array; Values: Array)

Метод позволяет создать FastReport4 отчет, на основе шаблона “Diagram Report(*.dgr)”. Описание совпадает с TbtkScriptSelectionObject.CreateReportEx

Parameters:
  • ReportName (String) – Cистемное имя отчёта.
  • ReportVersionDate (TDateTime) – Дата, по которой будет найдена актуальная версия отчёта (если не задана, берётся SysDate)
  • Action (TReportViewMode) – Действие, которое небходимо произвести над отчётом после его создания. Возможные значения: {rvmPrint, rvmShow, rvmSave, rvmDesign}
  • ShowWizard (Boolean) – Флаг отображения мастера настройки отчётов (если указана главная выборка мастера)
  • OpSelectionName (String) – Системное имя выборки, операции которой будут отображаться в главном меню окна при модальном просмотре построенного отчёта. Если не указана, подставляются выборки со стандартным набором команд (“Save as” и “Print”)
  • StyleFlag (TFormCreationFlags) – Флаг модального или немодального открытия окна просмотра отчёта {fcfModal, fcfMDI}. fcfMDI - работает только для отчетов на основе FastReport 4й версии.
  • ParamNames (Array) – Массив имен параметров отчета
  • ParamValues (Array) – Массив значений параметров ParamNames отчета.
BeginUpdate()

Метод запрещает схеме перерисовываться при изменении свойств схемы или её элементов. Его необходимо вызывать перед началом изменений.

Attention

После выполнения изменений схемы обязательно вызывайте метод EndUpdate();

Locate(Item: TbtkAdvDiagramItem)

Изменяет положение скроллбаров диаграммы таким образом, чтобы указанный элемент был на экране

Parameters:Item (TbtkAdvDiagramItem) – Элемент, который нужно отобразить на экране.

1.8.1.4. TbtkAdvDiagramItem

class TbtkAdvDiagramItem

TbtkAdvDiagramItem

Свойства BackColor, BackStyle, BorderColor, BorderStyle, BorderThickness, Caption не влияют на значения в базе. Изменить значения сохраняемые в базе можно только через пользовательских графический интерфейс фрейма диаграммы.

BorderThickness: Integer

Толщина границ элемента.

Return type:Integer
BorderColor: TRGBColor

Цвет границ элемента.

Return type:TRGBColor
BorderStyle: TPenStyle

Шаблон границ элемента.

Return type:TPenStyle
BackStyle: TBrushStyle

Шаблон заливки элемента.

Return type:TBrushStyle
BackColor: TRGBColor

Цвет заливки элемента.

Return type:TRGBColor
HighLightedBorderColor: TRGBColor

Цвет границы подсвеченного элемента. Значение свойства перекрывает значение свойства схемы HighLightedItemBorderColor.

Return type:TRGBColor
HighLightedBorderThickness: Integer

Толщина границы подсвеченного элемента. Значение свойства перекрывает значение свойства схемы HighLightedItemBorderColor.

Return type:Integer
ID: Variant

Идентификатор элемента схемы. (Только для чтения).

Элементы диаграммы расположены в таблице BTD_OBJECT.

Return type:Variant
Selected: Boolean

Флаг указывает, является ли элемент выделенным. (Выделенными могут быть несколько объектов).

Return type:Boolean
Focused: Boolean

Флаг указывает, является ли сфокусированным. (Сфокусированным может быть только один элемент. Сфокусированный элемент также является выделенным).

Return type:Boolean
Caption: TbtkAdvDiagramItemCaption

Текст, который отображается поверх элемента. Его проставление доступно только из скрипта. В базу данных это значение не сохраняется.

Return type:TbtkAdvDiagramItemCaption
HighLighted: Boolean

Свойство указывает, что данный элемент является подсвеченным (его граница выделена цветом, заданным в свойстве схемы HighLightedItemBorderColor. Цвет границы подсвеченного элемента может быть изменено заданием свойства HighLightedBorderColor элемента).

Return type:Boolean

1.8.1.5. TbtkAdvDiagramItems

class TbtkAdvDiagramItems

Коллекция графических элементов располоежнных на Advanced диаграмме.

Count: Integer

Количество элементов в коллекции.

Return type:Integer
Item: TbtkAdvDiagramItem

Метод возвращает элемент по индексу из коллекции.

Return type:TbtkAdvDiagramItem
SetItemsCaptionByObjectID(ObjectID: Double; Caption: String)

Задание текста элемента по идентификатору связанного объекта БД.

Parameters:
  • ObjectID (Double) – Идентификатор связанного с элементом диагрыммы объекта БД.
  • Caption (String) – Текст графического элемента.
HighLightItemByID(ID: Double; HighLighted: Boolean)

Задание свойства HighLighted графического элемента по идентификатору элемента.

Parameters:
  • ID (Double) – Идентификатор графического элемента в базе (Объекты диаграммы расположены в таблице BTD_OBJECT).
  • HighLighted (Boolean) – Значение свойства TbtkAdvDiagramItem.HighLighted у графического элемента.
HighLightItemsByObjectID(ObjectID: Double; HighLighted: Boolean)

Задание свойства HighLighted графического элемента по идентификатору связанного объекта.

Parameters:
  • ObjectID (Double) – Идентификатор связанного с элементом диагрыммы объекта БД.
  • HighLighted (Boolean) – Значение свойства TbtkAdvDiagramItem.HighLighted у графического элемента.