Знову про шаблони...

Потрібно спочатку виконати “Контроль площі ділянки та площі угідь”.
digitals.at.ua/load/kontrol_plos … d/1-1-0-23
Тоді і в Кадастровому плані будуть правильні цифри.
Наприклад:
Неправильний файл
[attachment=3].JPG[/attachment]
[attachment=2]1.JPG[/attachment]
Правильний файл
[attachment=1]2.JPG[/attachment]
[attachment=0]2.JPG[/attachment]

Доброго дня.
! Підкажіть, будь ласка, що потрібно змінити у "скрипті обробки подій" для шару ХМЛ-ділянка в шаблоні, щоб не зникала пуста таблиця обмежень коли у ХМЛ-файлі немає Обмеження?
Потрібно щоб таблиця Завжди була присутня на Кадастровому плані, а не тільки тоді, коли є Обмеження.
І щоб у колонці “Назва обмеження” скрипт вставляв напис “Обмеження відсутні”, акщо їх немає взагалі.

ГУ Держгеокадастру повернуло Проект через відсутню таблицю Переліку обмежень, лист додаю:
[i]"…Проект, поданий Вами до Головного управління, не відповідає вимогам статті 50 Закону України «Про землеустрій» в частині:

  • кадастровий план земельної ділянки - відобразити інформацію щодо відсутності обмежень у використанні земельної ділянки (ст. 34 ЗУ «Про Державний земельний кадастр»)."[/i]
    [attachment=1]img527.jpg[/attachment]

Текст скрипту із шаблону КадПлану додаю у текстовому файлі:
[attachment=0]із шаблону КадПлану.txt[/attachment]

Доброго дня, я пiдкорегував Ваш код i написав, в яких мiсцях потрiбно внести змiни. В процедурi %RestrIsEmpty можливо потрiбно додати знаки табуляцiї для вiдображення тексту в вiдповiднiй колонцi @Text[2].Text=$Tab$TabОбмеження вiдсутнi

Спробував, але якщо файл без обмеження то таблиця всерівно зникає і є помилка “Ошибка скрипта”:
[attachment=1]126.png[/attachment]
Додаю свої файли, на яких я перевіряю і шаблон КП щоб Ви могли у себе перевірить.
У файлах угіддя по Ф6-зем. У скрипту вписаний “Zakony.txt”.
[attachment=0]Documents.rar[/attachment]

… потрiбно було внести деякi змiни, в кодi все побачите.

Щиро дякую, Руслане!!!
Швидкі Зміни побачив у кінці скрипту… $S=$Tab$TabОбмеження вiдсутнi
та добавлену строчку… @Text[2].Add $S

Зараз цей шаблон “Кадастровий план земельної ділянки”(по Проекту) із усіма виправленими зауваженнями від експертів і просто “Геокадастрів”…
На його основі створив іще один “Кадастровий план існуючої земельної ділянки” із серії “Відомості про існуючу земельну ділянку”.

Кому цікаво, шаблон “Кадастровий план земельної ділянки” із файлу ХМЛ, у попередньому пості. Код Угіддя у файлі повинен бути за формою №6-зем. Реквізити “Конкретного виконавця” та “Назва документації/Проекту” вписані словами у сам шаблон.
[attachment=0]_+ Кад План (A4) - АВТО-Масштаб - ПРОЕКТ XML.dmt[/attachment]

ось як кидає обмеження у вашому шаблоні!?

Допоможіть, хто на “ТИ” із скриптами.

По кладовищу у мене не вставляє параметр ID7000803 Підстава для виникнення…
У колонку Основні законодавчі акти, назву “Підстави…” повинна вставлятись назва Закону/Постанови із файлу Zakony.txt,
але в цю таблицю вставляється тільки назва для коду обмеження “хх.хх”, а для “хх” нічого не вставляється…
Ще перевірив, що не підтягується Підстава у таблицю, якщо Код обмеження тільки із двох цифр: 01, 02, 03, 04…

…Оскільки скриптами я можу тільки користуватись, то для себе вніс зміни у файли RestrCodes.txt, Zakony.txt та добавив іще один файл RestrCodes_nazva.txt для параметра ID7000801
Попідв’язував ці файли в XMLNormal.dmf
Для параметра ID7000800 файл RestrCodes.txt
Для параметра ID7000801 файл RestrCodes_nazva.txt, у самому ХМЛ файлі можна вибирать із списку, або писать вручну.
Результат такий:
[attachment=6]001.PNG[/attachment]
[attachment=5]002.PNG[/attachment]
[attachment=4]003.PNG[/attachment]
[attachment=3]004.PNG[/attachment]
[attachment=2]RestrCodes.txt[/attachment]
[attachment=1]RestrCodes_nazva.txt[/attachment]
[attachment=0]Zakony.txt[/attachment]

Формат кодів обмежень 06, 07, 08, 09, 10, та 11 не змінював на 06.00, 07.00…
Можливо хтось підправить скрипт у шаблоні Кадастрового плану і тоді не потрібно буде змінювать код “03” на “03.00”…

Доброго дня.
Скажіть, будь ласка, яким чином дописати скрипт щоб видавав на план номери угідь згідно таблиці:

Скрипт прописаний в шарі XMLЗемельна ділянка → Скрипт обробки подій:

ловіть

Доброго дня.
При вставці об’єктів в dmt-шаблон не спрацьовує скрипт записаний в шар Земельна ділянка, раніше все працювало, Digitals від 18.04.2019, в чому може бути причина?
Сам скрипт:
%Events.OnAdd
$Space=@Calc char(32)
$Space=@DequoteText $Space
$Tab=@Calc char(9)
$Tab=@DequoteText $Tab
@Map.DeselectAll
$Papka=c:\Progra~2\Digitals\Lists
@Text[13].Load $Papka\Суміжники.txt
@Map.DeselectAll
@Map.SelectLayer ID70027
$TO2=@Map.SelectedObject
$Header2=@Map.Object[$TO2].TableText
$S2=@Text[13].Text
@Map.Object[$TO2].TableText $S2
@Map.DeselectAll
@Map.SelectLayerByName XML: Земельна ділянка
@Map.Selected.BringToFront
popScale | Показать помеченые
Правка | На передний план

З текстового документа має завантажувати в табличку строки такого виду:
1-2 Дерев’яний стовп Точки повороту (кут) землі Бачкай А.Й.

P.S. Відкотив Digitals до версії 17.04.2019, і о чудо все запрацювало!!!
Шановні розробники, виправте цю помилку в наступному оновленні. Дякую!

підтверджую, що у новій версії %Events.OnAdd не працює

Перевірили - працює обробник події OnAdd. Можливо проблема виникає в іншому місці?

Доброго дня.
Попробуйте запустити цей шаблон.
Перед тим в папку c:\Program Files (x86)\Digitals\Lists\ закиньте файл Суміжники.txt

Перевірив - точно виконується скрипт. Можливо він в мене щось не те робить, але то інше питання.

Проблема в наступному, якщо при формуванні декількох графічних файлів одночасно, з DMT-шаблонів що знаходяться в одній папці, то не коректно спрацьовує скрипт що починається з %Events.OnAdd. Наприклад. Якщо в першому шаблоні вона спрацювала, то в наступних уже не спрацьовує. Скрипт записаний в шар XML: Земельна ділянка.
P.S. У оновленнях за вчора-сьогодні, дана функція то працює, то знову не працює. В даний час знов не працює, завантажив останнє оновлення програми, в попередньому працювала.

Те саме, не працює, в версії від 17.04.2019 все добре.

Створив папку з кількома dmt-шаблонами, в кожному з них є скрипт обробки події %OnAdd, всі з них спрацювали.
На початку скрипта поставьте команду @Beep для звукового, або @Dialog.InfoBox 300 Назва шаблону для візуального підтвердження запуску скрипта.
Або надішліть нам на help@vingeo.com ці шаблони/скрипти для тестування.

Добрий день! Все ж таки на новіших версіях (починаючи з квітня-травня) обробник подій то працює, то не працює. А на старіших працює як годинник.

Я уже пів дня сиджу, вияснюю причину і так і не зрозумів, в чому справа.
Уже пробував найрізноманітніші варіанти.

От для прикладу запустив з одного й того ж самого обмінника формування зразу на багато сторінок, в одній з яких є обробник подій %Events.OnFileSave. Записав дві процедури перевірки. Одна, коли обробник події на даній сторінці включився:

08:58:32.283 MAP.SAVETOFILE D:\1Pabota\1travnya\Vinnichenko\Віниченко\ЖиволупОСГ\\Документація\04 Поясн1.dmf 08:58:32.284 $Move=CALC 25 08:58:32.284 25 08:58:32.284 $Move2=CALC 15 08:58:32.284 15 08:58:32.284 $Move3=CALC 110 08:58:32.284 110 ... 08:58:32.459 MAP.DESELECTALL 08:58:32.459 0 08:58:32.459 MAP.SELECTLAYER id5 08:58:32.477 1 08:58:32.477 WINDOW.SHOWSELECTED 08:58:32.494 223.307 96.823 792.693 08:58:32.494 MAP.DESELECTALL 08:58:32.504 0 08:58:32.504 WINDOW.REFRESH 08:58:32.515 0 08:58:32.517 D:\1Pabota\1travnya\Vinnichenko\Віниченко\ЖиволупОСГ\\Документація\04 Поясн1.dmf 1
Інша, коли не включився:

08:51:57.497 MAP.SAVETOFILE D:\1Pabota\1travnya\Vinnichenko\Віниченко\ЖиволупОСГ\\Документація\04 Поясн1.dmf 08:51:57.499 D:\1Pabota\1travnya\Vinnichenko\Віниченко\ЖиволупОСГ\\Документація\04 Поясн1.dmf 1

В другому випадку обробник просто ніяк не зреагував. Так, ніби його там взагалі не існує. При цьому карта збереглася.

Порівняв два файли процедури спеціальною утилітою, яка порівнює кожну букву у двох файлах - файли процедури повністю ідентичні буква в букву за винятком моменту, який наведений вище. Тобто, фактор спрацювання не залежить від ніяких вихідних даних і операцій. Я сформував сотню разів на різних і на однакових обмінниках. І навіть нема ніякої тенденції неспрацювань. Інколи обробник не спрацьовує раз на 4 формування, Інколи 10 разів підряд не спрацьовує і 1 спрацьовує. Запускаю саме формування повністю ідентично з одної кнопки скрипту, який по черзі відкриває кожну сторінку і зберігає її.

Пробував ще такий варіант. Створював папку з шаблонами DMT. Копіював туди той самий шаблон 30 разів. Запускав формування. В результаті обробник інколи спрацьовує на усіх шаблонах, інколи не спрацьовує на 1, 2, 3, 4 і максимум 5 шаблонах із цих 30. При цьому це може бути 15-ий і 27-ий чи 10-ий, 14-ий і 25-ий. Але ніколи не перший. На першому обробник спрацьовує завжди.

На версії за лютий 2019 року обробник завжди працює ідеально.

Доброго дня! Прохання до розробників Digitals все ж таки приділити увагу описаній вище проблемі, бо не можемо користуватися перевагами новіших (починаючи з середини квітня) версій програми Digitals. Скрипт обробки подій на новіших версіях успішно спрацьовує тільки у 10% випадків.
Розумію, що Ви зайняті іншими важливими справами. Тому, щоб Ви краще зрозуміли проблему, покажу її більш наглядно з можливістю відтворити в себе.

Прикріпив до повідомлення карту. Скачайте її в папку Digitals. Вона має в собі скрипт обробки подій:

%Events.OnFileSave $N=@Map.TempInteger $N=$N+1 @Map.TempInteger $N

Основний скрипт, який запускає цю карту:
(перед запуском скрипту відкрийте будь-який файл XML)

@OpenLog $Papka=@ProgramFolder $N=0 @Map.TempInteger $N $I=0 $AM=@ActivateMap @Map.SelectLayer id70005 @Progress.Start 100 Прогрес.. %Start $I=$I+1 @Progress.StepBy 1 @ActivateMap $AM @ExecuteDocumentFromFile $Papka\Noname1.dmt @if $I<100 then @Goto %Start @Progress.Stop $NSave=@MapCount @Progress.Start 100 Зберігання.. %StartSaveMap @Progress.StepBy @if $NSave=$AM then @Goto %ContinueSaveMap @if $NSave=0 then @Goto %ContinueSaveMap @ActivateMap $NSave @Window.Refresh @Map.TempInteger $N @Map.SaveToFile $Papka\Noname1.dmf $N=@Map.TempInteger @Progress.StepBy 1 $NSave=$NSave-1 @Goto %StartSaveMap %ContinueSaveMap @Progress.Stop $N=@Map.TempInteger $R=$I-$N @Dialog.Message Кількість збережень карти - $I|Кількість успішних спрацювань обробки подій - $N|Кількість неспрацювань - $R

Результат виходить 7-10 успішних спрацювань із 100

Проблема, скоріш за все у якомусь неправильному оновленні карт при переході по вкладках, коли їх більше одної і на кожній є скрипт обробки подій. Бо якщо скористатися трохи іншим скриптом, де карти зберігаються зразу після формування (див. нижче), то обробник не спрацьовує тільки 1 раз на 100 сторінок і то через раз (0.5% неспрацювань).

@OpenLog $Papka=@ProgramFolder $N=0 @Map.TempInteger $N $I=0 $AM=@ActivateMap @Map.SelectLayer id70005 @Progress.Start 100 Прогрес.. %Start $I=$I+1 @Progress.StepBy 1 @ActivateMap $AM @ExecuteDocumentFromFile $Papka\Noname1.dmt @Map.TempInteger $N @Map.SaveToFile $Papka\Noname1.dmf $N=@Map.TempInteger @if $I<100 then @Goto %Start @Progress.Stop $N=@Map.TempInteger $R=$I-$N @Dialog.Message Кількість збережень карти - $I|Кількість успішних спрацювань обробки подій - $N|Кількість неспрацювань - $R
На версіях програми до середини квітня 2019 року все працює на ура.
Кількість успішних спрацювань завжди 100.