70 нових скриптових функцій появилися в програмі Digitals за один рік від 26.04.2022 до 16.05.2023 року:
Кермування скриптом
@Map.Undo.SaveSelected - запам’ятовує поточну конфігурацію об’єктів, які виділені і повертає її після змін командою @Map.Undo
@Return ResultValue - звершує роботу скрипту і виводить значення результату
@SQL.Table.Delete Tablename Condition - видаляє таблицю через SQL
@SQLTab Query - виконує запит по таблиці SQL
Обробка подій
@Map.ExecuteLayerEvent ObjIndex EventName - виконує скрипт обробки подій шару для конкретного об’єкта
@Map.IsEventParameter ParamIndex - ? (без опису і не зрозуміле значення)
Карта
@Map.PasswordCount - повертає кількість паролів даної карти
@CloneMap MapIndex - клонує карту
@Map.CloseEmbedded - закриває всі вмонтовані карти
Управл. об’єктами карти
@Map.InvertSelection [LayerIndex] - інвертує виділені об’єкти (можна задати в якому шарі)
@Map.CloneObject ObjIndex Layer [ID] - клонує об’єкт
@Map.DrawObject Number - відображає об’єкт із заданим порядковим номером (не працює, або я не розумію, як вона має працювати)
@Map.FilterLayerObjects [LayerIndex] [Filter] - приховує об’єкти карти, параметри яких не відповідають заданому критерію
@Map.LayerCount LayerIndex - повертає кількість об’єктів, які у заданому шарі
@PasteFromMap MapIndex - вставляє виділені об’єкти із вказаної карти в поточну
@SplitMap Filename - ділить карту на 4 частини (для чого це?)
Геометрія об’єктів
@Map.ContourMap - створює полігон довкола всіх наявних об’єктів карти (за яким принципом створюється цей полігон?)
@Map.TileObject ObjIndex SizeX SizeY - покриває об’єкт прямокутними рамками b[/b]
@Map.DisableDuplicates 0/1 - включає заборону однакової геометрії об’єктів (з того, що я дослідив - це заборона вставляти в ту ж карту той самий об’єкт, це якась дивна функція, чи вона ще щось може?)
@Map.Object[N].Radius - повертає радіус, СКО і центр дуги (не вдалося зрозуміти, як це працює)
@Map.ImportGMProject Filename - імпортує точки із GM-проекту (що таке GM-проект?)
Групування об’єктів
@Map.DeselectGroup GroupName - знімає виділення з усіх об’єктів групи
Шари
@Map.Layers.CleanUp - видаляє шари карти, в яких нема жодного об’єкта
@Map.Layers.IDFromNames - присвоює шарам унікальні id за їх назвами
@Map.Layers.Truncate LastIndex - видаляє шари після LastIndex
@Map.SheetLayer - повертає номер шару з розбивкою карти на листи (номер якого шару?)
Параметри
@Map.Parameters.IDFromNames - присвоює параметрам унікальні id за їх назвами
@Map.Parameters.Truncate LastIndex - видаляє всі параметри після LastIndex
@Map.ParametersFromPDF ParamIndex PDFPath - читає інформацію про ділянку (json) з пдф
@MergeParametersFromMap MapIndex LayerIndex KeyParameter Mode(0/1) - заповнює параметри позначених об’єктів з карти MapIndex
Умовні знаки
@Map.ArrangeCalloutSymbols - впорядковує символи-виноски
Растри
@Map.OpenMultiOrthos - відкриває мультиорто (що це?)
@Map.CloseMultiOrthos - закриває мультиорто
@Map.GenerateRaster X Y Z GSD Mode Focus Width Height|Filename - генерує растр за вказаними параметрами (можна детальніше про цю функцію?)
Горизонталі та 3d-графіка
@CreateSideView ObjIndex - створює карту з виглядом збоку об’єктів, що всередині вказаного полігону (це в 3d?)
Робота з текстом
@AdjustCadastralNumber CadNum - додає двокрапки в кадастровий номер
@FromXMLDate yyyy-mm-dd - конвертує дату формату yyyy-mm-dd у дату формату dd.mm.yyyy
@ToXMLDate dd.mm.yyyy- конвертує дату формату dd.mm.yyyy у дату формату yyyy-mm-dd
@MoneyInWriting MoneyValue - сума прописом
@NGOIndex NGOYear [NowYear] - розраховує коефцієнт індексації нормативної грошової оцінки з року оцінки по поточний
@ReplaceComma - замінює кому на крапку у вказаному тексті
@ReplaceDot - заміню крапку на кому у вказаному тексті
@RoundMoney Formula - вираховує вираз за формулою з округленням кожного значення до двох знаків після коми
@StringCopy Index Count String - копіює Count символів тексту String, починаючи з символу Index
@StringDelete Index Count String - видаля Count символів з тексту String, починаючи з символу Index
@StringInsert SubStr|Index|String - вставляє текст SubStr в позицію Index тексту String
@StringLength String - повертає число символів в тексті String
@StringPos SubStr|String - повертає позицію частини тексту SubStr в тексті String
@StringReplace Old|New|String - замінює частину тексту на новий в тексті String
@Text[N].ExtractCadnumbers Text - знаходить в текстовому контейнері список кадастрових номерів вигляду XXXXXXXXXX:XX:XXX:XXXX
@Text[N].LeaveUnusual - залишає незвичайний текст b[/b]
@Text[N].RegExMatches Mask - повертає всі співпадіння тексту з маскою регулярного виразу
@Text[N].RemoveEmptyValues - видаляє рядки з пустим значенням вигляду Key=
@Text[N].RemoveOldFiles - видаляє із списку однакові старі файли з однаковою короткою назвою (що за старі файли?)
@Transliterate - виконує транслітерацію кириличного тексту латиницею
@UpcaseSurname Surname Name SecondName - переводить першу букву прізвища, імені та по-батькові у великий регістр
@UTF8ToURL Text - конвертує текст utf8 у URL Encoding виду %20%D0%97
Управління програмою Digitals
@MergeToolbars OutFile|InFile1|InFile2… - об’єднює декілька tlb-файлів в один
@StartWaiting - змінює курсор в програмі на вигляд, що позначає очікування до виклику функції @StopWaiting
@StopWaiting - змінює курсор в програмі на стандартний вигляд
Інші не зрозумілі (без опису) функції:
@IDFromName Mask Name - ?
@Map.Clotoide ObjectIndex R L Step - ?
@Map.CombineByParameters LayerIndex ParamIndex - ?
@Map.SmoothSelected - ?
@Map.ZB.ExtractFromPDF TextFileName - ?
@Map.ZB.UpdateRent LayerIndex - ?
@ZB.AddRegistry Filename - ?
@ZB.AddRent MapIndex - ?
@ZB.PDFToFiles KOATUU InputPath|OutputPath - ?
@ZB.ToFiles InputPath|OutputPath - ?
Що це за функції ZB? Як розшифровується ZB?
Також, бачу, оновили функцію Dialog.EditFields Header|Var1=Value:Name,…
Але все одно не розумію, як вона працює. Що ставити замість Var? Звичайні змінні?
Добре було б, якби замість Var можна було ставити звичайні змінні, яким дане діалогове вікно присвоювало б відповідні значення.
Така функція досить потрібна, бо у вікні редагування параметрів не можна вводити кому, бо кома є роздільником параметрів. Але воно так не працює. Змінні залишаються неактивними в результаті роботи цієї функції. А загальним результатом роботи функції є 1.
Схожа ситуація із функцією @Text[N].ExplodeLine[N] var1,var2,… Як прописати зі змінні? Що в даних випадках потрібно вказувати взамін var?