Здравствуйте!! Доработайте пожалуйста функцию XPT чтобы она вставляла пробелы между извлеченными данными.
Пример:
=XPT(P[ID7000007],“/Executor/Address”) выдает “804ЖитомирськаБердичівськийм.Бердичіввул. Леніна56”
а нужно
=XPT(P[ID7000007],“/Executor/Address”) “804 Житомирська Бердичівський м.Бердичів вул. Леніна 56”
Извините за назойливость, но я писал именно про функцию XPT. fastreport не предполагается использовать.
Дякую розробникам
. Функції @Map.SelectByParameters Count|List, та
@Map.SelectByParametersSelected Count|List працюють тепер і з ID параметрів ![]()
Питання наступне. Чи можна “дотягнути” першу або останню точку полілінії (висячу лінію) до найблищої (за найкоротшим перпендикуляром, або подовжуючи полілінію до перетину) лінії/полілінії/полігона
Відповідної ж функції дотягування немає ![]()
Подскажите как правильно прописать скрипт в создаваемой кнопке, функция которой заключается извлечь участки из ИН4 и сохранить его в указанную папку , но с одной оговоркой имя файла присвоить не по кадастровому номеру, а с параметра NM. Заранее благодарен. И прошу прощения если темой ошибся
Скрипт помечает все ин4-участки(ID слоя - 20000) в единственной!!! открытой карте. Затем извлекает все участки в ин4 и сохраняет в папку D:\ExtractedIn4 с именем файла из параметра NM(ID20030) и закрывает эти файлы.
P.S. Параметр NM может содержать символы(например “|”), которые недопустимо использовать в качестве имени файла. Также параметр NM может быть не уникален, что приведет к затиранию некоторых файлов с участками одного собственника.
В тему функції @Dialog.Ask Text [Default=Value].
Шкода, що діалогове вікно вводу інформації не дозволяє відобразити значення параметра Text в повному обсязі
. Ширина цього вікна не змінюється динамічно, залежно від довжини параметра Text. Навіть, якщо в значенні параметра застосувати знак переносу на інший рядок | - висота діалогового вікна також лишається сталою, та відображається лише перший рядок.
Такий прикрий факт не дозволяє дати у вікні мінімальні пояснення що-до введення даних в ході виконання скрипта. Хочу просити розробників, за можливості, виправити цю “халепу” ![]()
Спасибо огромное за скрипт, очень помог. Появился ещё один вопрос, нужно более 5000 файлов проклацать и сделать их по часовой стрелке и назначить в слое ділянкаIN4 первой точку в участке, которая находится с лева в верху. Возможно ли облегчить нашу участь
Добавлен перенос на следующую строку символом |. Теперь также можно изменять ширину окна диалога, указав в конце строки ключевое слово Size=, например Size=250. Стандартный размер окна - 180.
Чемно дякую за підтримку.
Вставляете в карту Ваши “обменники” (Вставка|Карта), помечаете все участки (угодия, кварталы) и жмете часики на вкладке Правка. Все помеченные будут исправлены (по часовой стрелке). Затем нужно скриптом пересохранить все обменные файлы. Советую не пробовать сразу с 5000 файлов, разбейте их на порции.
Насчет левой верхней точки… Вероятно поможет какой-нибудь хитрый скрипт. Но будет-ли он устойчиво работать, ведь конфигурация участков разная.![]()
На счёт по часовой стрелки придумал чуть проще через скрип, но единственно выскакивает на каждом файле окно "изменено “количество” " подскажите как с ним боротся. Пример скрипта :
$Filter=*.in4
$F=@Dialog.SelectFolder Укажите папку с картами
@Text.FolderList $Filter $F
$C=@Text.Count
@If $C=0 @Break В папке “$F” отсутствуют файлы $Filter
$I=0
%Start
$I=$I+1
@If $I>$C then @Break
$F=@Text.Line[$I]
@FileOpen $F
$F=@Map.ClearFilename
Пометить | Все
[ Операции с объектами.По часовой стрелке ]
@Map.SaveToFile $F.in4
@CloseMap
@Goto %Start
;
а вот на счёт начальной точки в нужном углу участка проблема, где б достать этот хитроватый скрипт. Есть только одна маленькая зацепка, отслеживал по участкам, что там где в участке максимальное значение Х . там и надо начальную точку, как это прописать в скрипте не могу придумать, подскажите.
…
Пометить | Все
@SendChars
[ Операции с объектами.По часовой стрелке ]
…
максимальное значение Х - самая верхняя точка, а вот к “левому верхнему углу” ближе всего точка, у которой разница координат (X-Y) максимальна.
Спасибо Dmitry_Zolotar.
Нас устраивает и верхняя точка (тоесть максимум по Х), смежники на кадастровом плане в основном будут правильно начинать своё начало
Каким образом можно реализовать задержку (например на 1 сек) перед выполнением определенной команды в скрипте?
@Wait IntervalMS
Спасибо
Ознайомтесь, будь-ласка, Поиск подстроки по нескольким фрагментам. Тоді скрипт:$CN=@Dialog.Ask Фраза, що міститься в параметрі:
@Map.FindByParameters 1|SC~$CN; для кращої ідентифікації бажано набрати початкову, або кінцеву, або і ту і другу кому (бачу у Вас кома розділювач)
$S=@Map.SelCount
@If $S>0 @Goto %Show
@If $S=0 @Break Ділянка що містить|$CN|не знайдена
%Show:
@Window.ShowSelectedЯк на мене, використати підстановочні знаки * та ? в масці пошуку Вам не вдасться
, а було б не погано ![]()
Є скрипт, який має на меті одним кліком пера (на сенсорному моніторі), перетягнути найблищу до кліка вершину найблищого до кліка полігона
;Переводим карту в режим збору, активуєм шар збору - точковий об'єкт, на місце якого має переміститись вершина полігону найблища від точкового об'єкта ($NomTochPrav)
@SelectTab 1
@Map.SetCollectionLayer ID6
;Обробка події застосована для включення режимності скрипта
%Events.OnSelect
$NomTochPrav=@Map.SelectedObject; Номер точкового об'єкта, на місце якого треба перемістити найблищу вершину найблищого полігона
$XYZ=@Map.Object[$NomTochPrav].Point[1]; Координати точки, в яку треба перемістити найблищу вершину найблищого полігона
$NumObgPrav=@Map.NearestObject 0 0 $XYZ; Номер полігона, найблищого до точкового об'єкта на місце якого треба перемістити вершину полігона
Питання: найблищий до кліка полігон ми визначили, а як визначити найблищу до кліка вершину полігона ![]()
Треба мати функцію, наприклад @Map.NearestPoint Range IgnoreObj X Y Z, яка б повертала координати точки полігона (чи іншого об’єкта), що є найблищою до точки з координатами X Y Z, або маркувала найблищу точку, або … ну треба знати координати найблищої точки полігона ![]()
Це би спростило правку об’єктів пером на сенсорному моніторі.
Есть несколько сотен XML
Все владельцы зарегестрированы в одном населенном пункте
В ХМL неправильно введен тип населенного пункта (місто Синька)
а надо с. Синька
Подскажите как правильно прописать скрипт