Аналитика
http://www.geosystema.net/forum/

Все про скрипти
http://www.geosystema.net/forum/viewtopic.php?f=1&t=2809
Страница 73 из 83

Автор:  osaaso [ 15 июл 2020 20:54 ]
Заголовок сообщения:  Re: Все про скрипти

Цитата:
щоб зменшити довжину коду i менше перетворювати змiннi
тут я згідний на всі сто відсотків.
А ще вибачаюсь за неуважність, бо я відправив неправильний код у першому повідомленні. Мало бути так:
Код:
$Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд (присадибна ділянка)
$Line=@Calc Replace("$Line","(","/")
$Line=@DequoteText $Line
@Dialog.Message 1 $Line
$Line=@Calc Replace("$Line",")","/")
$Line=@DequoteText $Line
@Dialog.Message 2 $Line
Спочатку замінити ліву дужку потім праву. Але результат всерівно негативний, чому? для мене ще загадка )

Автор:  Руслан Пархуць [ 15 июл 2020 21:46 ]
Заголовок сообщения:  Re: Все про скрипти

osaaso писал(а):
Цитата:
щоб зменшити довжину коду i менше перетворювати змiннi
тут я згідний на всі сто відсотків.
А ще вибачаюсь за неуважність, бо я відправив неправильний код у першому повідомленні. Мало бути так:
Код:
$Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд (присадибна ділянка)
$Line=@Calc Replace("$Line","(","/")
$Line=@DequoteText $Line
@Dialog.Message 1 $Line
$Line=@Calc Replace("$Line",")","/")
$Line=@DequoteText $Line
@Dialog.Message 2 $Line
Спочатку замінити ліву дужку потім праву. Але результат всерівно негативний, чому? для мене ще загадка )

Там проблема функцiї @Calc при аналiзi токенiв (частин написаного Вами коду) i коли попадається знак ( вiн повиннен закритися вiдповiдно знаком ), якщо це якась функцiя, а цей символ може попасти i в текстi, як у Вашому випадку i пiсля першої замiни немає закриваючого символу ), чи навпаки - початку (, тому помилка. Розробникам необхiдно внести поправку в дану функцiю.

Автор:  osaaso [ 16 июл 2020 07:53 ]
Заголовок сообщения:  Re: Все про скрипти

Цитата:
Там проблема функцiї @Calc при аналiзi токенiв
були у мене здогадки, що проблема у самій функції (через це і звернувся на форум). Просто для інформації - робив експерименти з @Calc String(x) і @Calc Char(x) проміжні перетворення, але теж нічого путнього не вийшло. Тепер ясно що до чого, буду спати спокійно, бо з голови не виходить проблема поки не зрозумію її логіки. Ще раз дуже дякую!
Цитата:
Розробникам необхiдно внести поправку в дану функцiю.
наприклад: зворотній слеш перед символом, на який функція не повинна звертати увагу (не сприймати його командним або семантичним) $Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд \(присадибна ділянка\). Але це потягне за собою додаткові "витрати", тому що потрібно спочатку прописати цей символ \ у рядку чи параметрі... (думки вголос)... Краще напевне так @Calc Replace{"s","t","v"} або @Calc Replace["s","t","v"] - але тоді "додаткові витрати".. - тут дехто посивіє від таких змін :D

Автор:  Руслан Пархуць [ 16 июл 2020 09:19 ]
Заголовок сообщения:  Re: Все про скрипти

osaaso писал(а):
Цитата:
Там проблема функцiї @Calc при аналiзi токенiв
були у мене здогадки, що проблема у самій функції (через це і звернувся на форум). Просто для інформації - робив експерименти з @Calc String(x) і @Calc Char(x) проміжні перетворення, але теж нічого путнього не вийшло. Тепер ясно що до чого, буду спати спокійно, бо з голови не виходить проблема поки не зрозумію її логіки. Ще раз дуже дякую!
Цитата:
Розробникам необхiдно внести поправку в дану функцiю.
наприклад: зворотній слеш перед символом, на який функція не повинна звертати увагу (не сприймати його командним або семантичним) $Line=для будівництва і обслуговування житлового будинку, господарських будівель і споруд \(присадибна ділянка\). Але це потягне за собою додаткові "витрати", тому що потрібно спочатку прописати цей символ \ у рядку чи параметрі... (думки вголос)... Краще напевне так @Calc Replace{"s","t","v"} або @Calc Replace["s","t","v"] - але тоді "додаткові витрати".. - тут дехто посивіє від таких змін :D

Нi, це не так складно i вирiшується лише однiєю умовою: коли текст, тодi не брати до уваги дужки, в iншому випадку аналiзувати, як формулу. Розробники зрозумiють :).

Автор:  voha [ 16 авг 2020 20:24 ]
Заголовок сообщения:  Re: Все про скрипти

voha писал(а):
fendak писал(а):
...я брав просто в новій кнопці прописував тільки одну єдину фун кцію - @Dialog.WaitBox Text і вона не працює.
Думав, може хтось стикався з таким вже.
@Dialog.WaitBox Text зупиняє виконання скрипта з очікуванням команди у вікні класу TFormProcessing.
"не працює" - очікування скрипта є, але самого вікна немає?
Такі спостереження, щодо вікна очікування:
- якщо в одній сесії роботи Digitals функція @Dialog.WaitBox Text була хоча б один раз застосована, вікно залишається завантажене в пам'яті;
...
Доброї пори доби розробникам.
Хочу запитати, стосовно згаданого: чи можна зробити так, щоб властивість Top Most вікон класу TFormListDialog, або того ж таки TFormProcessing програми Digitals відновлювалась в True при повторному виклику вікна зі скрипта командою @Dialog.ListSelect або @Dialog.WaitBox?

Якщо не доцільно після завантаження згаданих вікон з властивістю Top Most=True та їхнього погашення очищати пам'ять, то при повторному їх виклику зі скрипта встановлюється властивість Visible в True, але вікно - на задньому плані відносно головного вікна Digitals :!: .

Я припускаю, що Z-порядок вікон плутає код моєї зовнішньої програми, до якої Digitals не має діла. Тоді моє прохання - як "чужими руками жар загрібати" :oops: . Але ж "стійкість" програми Digitals буде тоді кращою. Чи не так?

Автор:  voha [ 30 авг 2020 09:51 ]
Заголовок сообщения:  Re: Все про скрипти

voha писал(а):
...Z-порядок вікон плутає код моєї зовнішньої програми, до якої Digitals не має діла...
Доброго дня розробникам.

З вікнами я зрозумів, що ніяка програма (в тому числі й Digitals) не має права сунути свої вікна у TopMost, без маршалингу і, якщо "ламеру" так сильно треба - він вже має бути трохи не ламером :wink: .

Чергове питання: на якому етапі запуску програми Digitals, можна посилати на його сервер команди по TCP/IP?
Дослідним шляхом, з необхідністю гасити вікно попередження про демо-режим Digitals зовнішньою програмою, виявив такий порядок:
1) реєстрація головного вікна в системі зі стартовим заголовком (можна отримати дескриптор головного вікна, однак заголовок вікна не містить фразу "(Demo)" якщо ключа захисту немає);
2) запуск сервера команд Digitals (можна отримати режим роботи Digitals, пославши на сервер команду @DemoMode);
3) зміна заголовку головного вікна (можна отримати режим роботи Digitals за наявністю фрази "(Demo)" у заголовку головного вікна);
4) реєстрація вікна повідомлення про демо-режим в системі зі стартовим заголовком головного вікна програми (можна отримати дескриптор вікна повідомлення про демо-режим);
5) відображення головного вікна програми на екрані;
6) відображення вікна повідомлення про демо-режим на екрані.

Будь-ласка, поставте пункт 2 на своє місце у черговості. Чи він на своєму місці? Гасити вікно повідомлення про демо-режим можна лише після пункту 6.

Автор:  voha [ 18 сен 2020 12:23 ]
Заголовок сообщения:  Re: Все про скрипти

voha писал(а):
...Гасити вікно повідомлення про демо-режим...
Чемно дякую розробникам за надану з 28.07.20 можливість вказати значення константи DemoWarning=0, при якому попередження про демо-режим виводитись на екран не буде.

Автор:  ivan.vanek [ 24 сен 2020 11:29 ]
Заголовок сообщения:  Re: Все про скрипти

Здравствуйте коллеги, может быть кто подскажет, буду очень признателен! Как организовать скрипт который будет брать название файла XML и вставлять его в каком-нибудь шаблоне (Обменники у нас названы все своей нумерацией(по контурам) и нужно что бы в документации с названии файла подтягивало номера контуров в шаблоны).

Автор:  voha [ 05 ноя 2020 10:39 ]
Заголовок сообщения:  Re: Все про скрипти

Доброго дня.

Можливості автоматизації операцій в Digitals постійно розширюються шляхом додавання розробниками нових скриптових функцій. Так за останній місяць з'явилися:
@ScanQuarters, додана в build 44116 (12.10.20);
@Map.SelectEmptyQuarters, додана в build 44123 (19.10.20);

а ще - додані в build 44137 (02.11.20)
@MirrorFile Size Filename;
@InsertOrthoFragments Folder;
@OrthoCutIntoSheets [OutFolder] - мабуть Орто > Порізати на аркуші;
@RescanQuarters.

Хотілося би мати пояснення до кожної функції у відповідному текстовому полі вікна редактора скриптів (в тому числі - яке значення вони повертають у скрипт).

Дякую за відповідь.

Автор:  Dmitry_Zolotar [ 05 ноя 2020 16:51 ]
Заголовок сообщения:  Re: Все про скрипти

voha писал(а):
@MirrorFile Size Filename;
@InsertOrthoFragments Folder;
@OrthoCutIntoSheets [OutFolder] - мабуть Орто > Порізати на аркуші;

Ці функції пов'язані з ортотрансформуванням в багатопоточному режимі на кількох ПК, для цього ще потрібні спец. утиліти, які тестуються поки що.

voha писал(а):
@ScanQuarters, додана в build 44116 (12.10.20);
@Map.SelectEmptyQuarters, додана в build 44123 (19.10.20);
@RescanQuarters.

Ці функції пов'язані з відновленням отримання інформації з ПКК, вони теж поки ще тестуються. Та мабуть напряму їх викликати не потрібно буде.

Автор:  Deffar [ 09 ноя 2020 23:56 ]
Заголовок сообщения:  Re: Все про скрипти

Доброго дня. Функція @Map.SaveToPDF викликає помилку, при чому Експорт у | PDF працює нормально ...

Вложения:
.PNG
.PNG [ 12.05 Кб | Просмотров: 5889 ]

Автор:  VictorR [ 12 ноя 2020 20:24 ]
Заголовок сообщения:  Re: Все про скрипти

Підкажіть будь-ласка як за допомогою функції CreateCaption створити підписи номерів точок та довжин ліній земельної ділянки?

Автор:  fendak [ 12 ноя 2020 20:53 ]
Заголовок сообщения:  Re: Все про скрипти

Підписи довжин:

$MapCount=@MapCount
@if $MapCount=0 then @Break
$N=@Map.SelCount
@If $N<1 @Break Виділіть об'єкт для створення підпису
@Map.Selected.CreateCaptions -10 0 1 1 1 4 4
@Window.Refresh

Підписи поворотних точок:

$MapCount=@MapCount
@if $MapCount=0 then @Break
$N=@Map.SelCount
@If $N<1 @Break Виділіть об'єкт для створення підпису
@Map.Selected.CreateCaptions -9 1 2 1 1 2 2

Автор:  VictorR [ 13 ноя 2020 11:27 ]
Заголовок сообщения:  Re: Все про скрипти

fendak Дякую!

Автор:  fendak [ 22 ноя 2020 12:38 ]
Заголовок сообщения:  Re: Все про скрипти

Бачу, що розробникам Digitals вдалося відновити доступ до ПКК і уже знову працює функція @Map.GetPublicMapParcelInfo
А як з функцією @Map.GetPublicMapQuarterInfo? Чи можна відновити і її?

Також ще не працює @CheckPublicMapParcel

Страница 73 из 83 Часовой пояс: UTC + 2 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/