Attribute VB_Name = "Declarations" Option Explicit Public Const APP_HELP = "\\fs1.concept.ru\projects\10 Автоматизация деятельности\01 Высокие технологии\Концепт-Определения\!Руководство пользователя.docx" Public Const MASTER_BASIC = "Исходное понятие" Public Const MASTER_DERIVED = "Понятие" Public Const MASTER_LEVEL = "Граница уровней" Public Const SHAPE_DERVIED = "STermName" Public Const PREFIX_GRID = "SLevel" Public Const MASK_LEVEL = "SLevel*" Public Const COLOR_MENTION = "RGB(0,176,240)" Public Const COLOR_INVALID = "RGB(192,0,0)" Public Const RANK_MAX = 15 Public Const RANK_UNREACHABLE = -1 Public Const SHAPE_BASIC = "SBasic" Public Const SHAPE_DERIVED = "SDefinedNotion" Public Const SHAPE_BLOCK = "SBlock" Public Const SHAPE_CONNECTOR = "SConnector" Public Const SHAPE_LEVEL = "SLevel" Public Const VSO_CELL_LTYPE = "User.LinkType" Public Const VSO_CELL_SOLID = "User.IsSolid" Public Const VSO_CELL_BOLD = "User.IsBold" Public Const VSO_BASIC_LTYPE = "User.Type" Public Const V_GAP = 6.5 / 28.35 ' cm Public Const H_GAP = 3 / 28.35 ' cm Public Const GRID_X_MARGIN = 40 ' mm Public Const MOST_LEFT = -99999 Public Const BASE_START = 5 Public Const BASIC_COLOMNS = 5 Public Const DERIVED_ROWS = 5 Public Enum ShapeType STYPE_UNKNOWN = 0 STYPE_BASIC = 1 STYPE_TODO = 2 STYPE_ANNOUNCED = 3 STYPE_UNCLEAR = 4 STYPE_DERIVED = 5 STYPE_BLOCK = 6 STYPE_LINK = 7 STYPE_GRID = 8 End Enum Public Enum LinkType LT_DEFINE = 1 LT_CIRCLE = 2 LT_SYNON = 3 LT_OMON = 4 LT_CONSISTS = 5 End Enum Public Enum DerivedStructure S_D_TERM = 1 S_D_SOURCE = 2 S_D_DEFINITION = 3 End Enum ' -------- Excel ------------- Public Const TEMPLATE_PREFIX = "Технологии" Public Const SERVER_TEMPLATES = "\\fs1.concept.ru\projects\10 Автоматизация деятельности\01 Высокие технологии\Концепт-Определения" Public Const XL_TEMPLATE_NAME = "Определения-Excel.xltx" Public Const XL_SHEET_SHAPES = "Фигуры" Public Const XL_SHEET_LINKS = "Связи" Public Const XL_SHEET_MENTIONS = "Вхождения" Public Const XL_SHEET_CYCLES = "Циклы" Public Enum ThesaurusStruct XL_TS_ID = 1 XL_TS_NAME = 2 XL_TS_DEFINITION = 3 End Enum Public Enum CompareStruct XL_COMP_1ST = 1 XL_COMP_2ND = 2 XL_COMP_SHARED = 3 End Enum Public Enum FullExportStruct XL_COL_ID = 1 XL_COL_TYPE = 2 XL_COL_TERMNAME = 3 XL_COL_DEFINITION = 4 XL_COL_SOURCE = 5 XL_COL_PARENT = 6 XL_COL_COPY = 7 XL_COL_PINX = 8 XL_COL_PINY = 9 XL_COL_WIDTH = 10 XL_COL_HEIGHT = 11 XL_COL_LINECOLOR = 12 XL_COL_TEXTCOLOR = 13 End Enum Public Enum MentionsStruct XL_MENT_ID = 1 XL_MENT_START = 2 XL_MENT_FINISH = 3 XL_MENT_TEXT = 4 XL_MENT_COLOR = 5 XL_MENT_STYLE = 6 End Enum Public Function GetExportTemplate(sFile$) As String Dim fso As New Scripting.FileSystemObject GetExportTemplate = SERVER_TEMPLATES & "\" & sFile If fso.FileExists(GetExportTemplate) Then _ Exit Function GetExportTemplate = ThisDocument.Path & sFile If fso.FileExists(GetExportTemplate) Then _ Exit Function GetExportTemplate = TEMPLATE_PREFIX & "\" & sFile End Function Public Function GetShapeType(target As Visio.Shape) As ShapeType If target.MasterShape Is Nothing Then GetShapeType = STYPE_UNKNOWN Exit Function End If Select Case (target.MasterShape.Name) Case SHAPE_BASIC: GetShapeType = target.CellsU(VSO_BASIC_LTYPE) Case SHAPE_DERIVED: GetShapeType = STYPE_DERIVED Case SHAPE_BLOCK: GetShapeType = STYPE_BLOCK Case SHAPE_CONNECTOR: GetShapeType = STYPE_LINK Case SHAPE_LEVEL: GetShapeType = STYPE_GRID Case Else: GetShapeType = STYPE_UNKNOWN End Select End Function Public Function IsShapeDuplicate(target As Visio.Shape) As Boolean If CellsExists(target, VSO_CELL_SOLID) Then _ IsShapeDuplicate = IIf(target.CellsU(VSO_CELL_SOLID), False, True) End Function