RUS  ENG 

Павел Рубцов (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
ZuluThermo Сервис
 
[QUOTE]Алексей Аширов написал:
[QUOTE][URL=/forums/?PAGE_NAME=profile_view&UID=1737]Павел Рубцов[/URL] написал:
 [QUOTE] [URL=/forums/?PAGE_NAME=profile_view&UID=6]Алексей Аширов[/URL] написал:
  [QUOTE] [URL=/forums/?PAGE_NAME=profile_view&UID=1737]Павел Рубцов[/URL] написал:
Здравствуйте!
Подскажите, пожалуйста, можно ли программно запускать команды "Отметки высот с карты", "Длины участков с карты" и "Начала и концы участков" из меню ZuluThermo -> Сервис?[/QUOTE] Добрый день. Сейчас нет.[/QUOTE]
Алексей, попробовал сам реализовать эти команды через sql запрос. Если с "Отметки высот с карты" и "Длины участков с карты" проблем не было, то с командой "Начала и концы участков" не понимаю как правильно сделать. На больших картах sql запрос выполняется десятки минут. Можете подсказать что я делаю не так?

p.s. Сделать макрос с этими командами хочется лишь для того, чтобы вынести на панель инструментов и не лазить каждый раз в Сервис ZuluThermo[/QUOTE] SQL запросы сейчас не работают с сетью как с графом. Только как с простой геометрией.
Какие узлы на концах участков быстрей узнать через Layer.NetworkObjects. Потом писать начала и концы. Для скорости использовать UpdateFromAscii .[/QUOTE]

Спасибо! Теперь понятно в чём была моя ошибка. Попробую ваш способ
ZuluThermo Сервис
 
[QUOTE]Алексей Аширов написал:
[QUOTE][URL=/forums/?PAGE_NAME=profile_view&UID=1737]Павел Рубцов[/URL] написал:
Здравствуйте!
Подскажите, пожалуйста, можно ли программно запускать команды "Отметки высот с карты", "Длины участков с карты" и "Начала и концы участков" из меню ZuluThermo -> Сервис?[/QUOTE] Добрый день. Сейчас нет.[/QUOTE]

Алексей, попробовал сам реализовать эти команды через sql запрос. Если с "Отметки высот с карты" и "Длины участков с карты" проблем не было, то с командой "Начала и концы участков" не понимаю как правильно сделать. На больших картах sql запрос выполняется десятки минут. Можете подсказать что я делаю не так?

Скрытый текст

p.s. Сделать макрос с этими командами хочется лишь для того, чтобы вынести на панель инструментов и не лазить каждый раз в Сервис ZuluThermo
Поиск элементов сети, попадающих в фигуру
 
Можно в SQL запросе для объекта geometry использовать метод Buffer ([URL=https://www.politerm.com/zuludoc/index.html#geosql_geometry_buffer.html]описание[/URL]).
Например :
[CODE]
sel ect b.sys fr om [Тепловая сеть] as a, [Тепловая сеть] as b
where a.sys = 121 -- id текущего элемента
and a.Geometry.STWithin(b.Geometry.STBuffer(100))
[/CODE]
[ Закрыто] Пожелания на версию 8
 
У вас есть очень удобный инструмент - раскраска объектов при расчёте в ZuluThermo. Можете ли что-нибудь подобное добавить в браузер базы данных, чтобы при выполнении запроса можно было графически выделить на карте отфильтрованные элементы. Что-то наподобие быстрой временной темы.
Как вариант, можно в окне ответа сделать иконку с "Быстрой темой", а настройки этой темы вынести в "Сервис" -> "Параметры" - "Карта"

Скрытый текст
[ Закрыто] Пожелания на версию 8
 
Здравствуйте!
Используя команду Карта -> Группа -> Записать можно, зажав shift, выделить несколько слоев для записи, но группа запишется только в первый выбранный слой. Можно ли реализовать запись объектов во все выделенные слои?

[url=https://imgbb.com/][img]https://i.ibb.co/G9XmrMW/image.png[/img][/url]
Создание и редактирование форм
 
[QUOTE]Дмитрий Озеров написал:
[URL=/forums/?PAGE_NAME=profile_view&UID=1737&sphrase_id=13812]Павел[/URL], прогнал Ваш пример [CODE] set DB = l.OpenDatabase(6, "")
' Ищем нужную форму
Num = db.Forms.GetIndexByName(zbUserName, "Test1")  
' Получаем объект
Set form = db.Forms.Item(NUM)  
' Получаем запрос, по которому создана эта форма
Set query = form.Query
' Добавляем поля в форму
FORM.Active  = true
FORM.Default = true  
' Сохраняем базу
db.Save 0 [/CODE] Всё сохраняется. На скриншоте видно, что форма по умолчанию стала Test1. Другое дело, что все изменения касаются данных описателя базы и, если уже браузер был открыт, то форма в нём автоматически не сменятся.[/QUOTE]
Понял. Спасибо!
Создание и редактирование форм
 
[QUOTE]Дмитрий Озеров написал:
[URL=/forums/?PAGE_NAME=profile_view&UID=1737&buf_fid=3&tags=%D1%81%D1%85%D0%B5%D0%BC%D0%B0]Павел[/URL], добрый день!
Сразу оговорюсь: для каждого запроса в базе существует стандартная форма, их редактировать нельзя.

Создать новую форму для запроса можно так: [CODE] Const zbFormSimple = 2
' Допустим db - объект ZbDatabase
' query - какой-то запрос, допустим активный
Set query = db.ActiveQuery
' Создаём новую форму для запроса query
Set form = db.Forms.AddNew(zbFormSimple, query, "Название формы")
' Добавляем поля в форму
form.AddField query.VisualQuery.Fields(2)
' Сохраняем базу
db.Save 0
[/CODE]
Изменить форму (не "стандартную") для запроса:
[CODE] Const zbUserName = 2
' Ищем нужную форму
Num = db.Forms.GetIndexByName(zbUserName, "Название формы")
' Получаем объект
Set form = db.Forms(Num)
' Получаем запрос, по которому создана эта форма
Set query = form.Query
' Добавляем поля в форму
form.AddField query.VisualQuery.Fields(3)
' Сохраняем базу
db.Save 0
[/CODE] [/QUOTE]


Спасибо большое!
Я делал примерно также, только не знал, что в конце нужно нужно сохранять базу через db.Save 0.
А подскажите, пожалуйста, можно ли сделать так чтобы после выполнения макроса при открытии окна информации сразу появлялся выбранная форма? Выполняю Form.Active и Form.Default, но в коне информации всё равно открывается предыдущая форма, хотя нужная форма становится активной.

[CODE] set DB = l.OpenDatabase(6, "")
   ' Ищем нужную форму
Num = db.Forms.GetIndexByName(zbUserName, "Test1")
' Получаем объект
Set form = db.Forms.Item(NUM)
' Получаем запрос, по которому создана эта форма
Set query = form.Query
' Добавляем поля в форму
       FORM.Active  = true
FORM.Default = true
' Сохраняем базу
db.Save 0
[/CODE]

[URL=https://hostingkartinok.com/show-image.php?id=70a34ea1a2b42059708aec41b9280f04][IMG WIDTH=591 HEIGHT=325]https://s8.hostingkartinok.com/uploads/images/2021/01/70a34ea1a2b42059708aec41b9280f04.png[/IMG][/URL]
Создание и редактирование форм
 
Здравствуйте!
Никак не могу разобраться как правильно с помощью макроса редактировать и создавать новые формы для запросов к БД. Могли бы привести пример?
Изменено: Павел Рубцов - 28.01.2021 19:26:05
ZuluThermo Сервис
 
Здравствуйте!
Подскажите, пожалуйста, можно ли программно запускать команды "Отметки высот с карты", "Длины участков с карты" и "Начала и концы участков" из меню ZuluThermo -> Сервис?
Расчет от тепловой камеры, Наладочный расчет новой тепловой сети подключенной к существующей
 
Здравствуйте!
Я в таком случае вместо камеры подключения ставлю источник и заполняю его согласно параметрам в камере. Если нужно, чтобы камера отображалась как камера, а не как источник, то можно в структуре слоя изменить её вид.
Расчет надежности
 
Спасибо за развернутый ответ.
Согласно методике период эксплуатации трубопровода используется для вычисления интенсивности отказов. Получается если заполнено поле "Период эксплуатации, лет" в базе данных участков, то не обязательно заполнять "Расчетная интенсивность отказов, 1/(км*ч)" и Zulu сама посчитает это значение?
Расчет надежности
 
Здравствуйте!
Прошу уточнить пару моментов по проведению расчёта надёжности на тепловой сети.
1. При расчёте надёжности ТЭЦ городов с большим количеством закольцованных участков, расчёт может производиться несколько дней. Какие способы есть для ускорения расчёта? Сейчас мы заменяем ЦТП или небольшие тупиковые кварталы на обобщенных потребителей. Как сильно это может повлиять на точность расчёта?
2. В настройках расчёта надёжности есть возможность выбрать расчетный год. В документации написано, что это значение нужно для определения периода эксплуатации трубопроводов. Как Zulu использует информацию о периоде эксплуатации трубопровода в расчёте надёжности? Считает все трубопроводы старше 25 лет ненадёжными?


Расчёт проводится в Zulu 8.0.0.7513u
LayerTransform
 
[QUOTE]Алексей Аширов написал:
[QUOTE][URL=/forums/?PAGE_NAME=profile_view&UID=1737]Павел Рубцов[/URL] написал:
Здравствуйте! Просьба помочь с написанием макроса.
Пытаюсь с помощью LayerTransform масштабировать и перенести в нужные координаты растровый слой. Но растр почему-то смещается намного ниже необходимого места. Причем если трансформировать слой с клавиатуры и вводить те же самые аргументы слой становится в нужные координаты.
В чём может быть причина этого? Код и картинка ниже.
    Скрытый текст         [CODE] [/CODE]
    Скрытый текст        [/QUOTE]
Пришлите все числовые параметры трансформации, которые дают один результат из оболочки и другой из программы.
И сам исходный слой. Посмотрим   [URL=mailto:[email protected]][email protected][/URL] [/QUOTE]

Проверил. Теперь работает правильно. Спасибо большое!
LayerTransform
 
Здравствуйте! Просьба помочь с написанием макроса.
Пытаюсь с помощью LayerTransform масштабировать и перенести в нужные координаты растровый слой. Но растр почему-то смещается намного ниже необходимого места. Причем если трансформировать слой с клавиатуры и вводить те же самые аргументы слой становится в нужные координаты.
В чём может быть причина этого? Код и картинка ниже.
Скрытый текст

Скрытый текст
[ Закрыто] Пожелания на версию 8
 
Здравствуйте!
Могли бы в Редактор слоя добавить правило по обновлению наименования начала и конца участка при изменение наименования камер или при разбиении участка камерой?
Варианты резервного копирования данных
 
Виталий Токаренко, я для резервного копирования использую программу Cobian Backup 11 (Gravity). Она по расписанию упаковывает в архив нужные папки и хранит заданное количество версий этого архива.
Получение данных из слоя Кадастровое деление
 
Здравствуйте!
Прошу подсказать, есть ли возможность с помощью sql-запроса или макроса получать данные о номере кадастрового квартала из слоя Кадастровое деление и записывать его в потребителя, который находится в его границах?
Редактирование надписей с помощью LabelLayers
 
Спасибо за помощь
Редактирование надписей с помощью LabelLayers
 
Здравствуйте!
Просьба подсказать как правильно редактировать надписи с помощью LabelLayers. С помощью кода ниже получается включить нужный вид надписей, но изменение его параметров не происходит. Что я делаю не так?
[CODE]Set L = MAP.Layers.Active

L.LabelLayers.ItemById(2).Enable = true

L.LabelLayers.ItemById(2).ScaleLimited = true
L.LabelLayers.ItemById(2).Auto = true
L.LabelLayers.ItemById(2).BasicScale= 0
L.LabelLayers.ItemById(2).FrameColor = true
L.LabelLayers.ItemById(2).ShortLines = true
L.LabelLayers.ItemById(2).LabelFields.Item(0).Prefix = "2Ду"[/CODE]
Настройка базы банных, Настройка окна представления информации (Текущая запись)
 
Алексей Аширов, спасибо большое!!! Это очень упростит работу!
Настройка базы банных, Настройка окна представления информации (Текущая запись)
 
Алексей Аширов, а не могли бы написать пример макроса для какого-нибудь поля?
SQL-запросы
 
День добрый!
Есть строка [Абонент1] в потребителе, со значениями вида "919 УФМигр.Службы адм.зд. от0.03735 20гр гвс0.019". В разных потребителях соответственно разное название абонента и разное количество знаков.
Пытаюсь запросом получить столбец со значениями после букв "гвс". Логика запроса следующая:
С помощью функции SUBSTRING взять 5 символов из строки [Абонент1] начиная с позиции где функция CHARINDEX найдет вхождение 'гвс'
Код
SEL ECT sys, SUBSTRING([Абонент1], CHARINDEX('гвс',[Абонент1])+3, 5) 
fr om [Тепловая сеть]   
where [Абонент1] LIKE '%гвс%'      

Но чтобы я не делал появляется ошибка:

Unexpected character ')'.

Text: '))+(3),5) FR OM R0DCAF0C8 WH ERE [Абонент1] LIKE "%гвс%"'

Pos: 64, Ref: 0xE205

В чем может быть проблема?

[ Закрыто] Пожелания на версию 8
 
Здравствуйте!
1. Есть ли возможно добавить фильтр в информацию и запрос по объектам как это сделано в SQL запросе?
Скрытый текст

2. Можно ли добавить информацию по типу полей в информацию по объектам?
Скрытый текст
Изменено: Павел Рубцов - 25.04.2019 20:29:38
SQL-запросы
 
Дмитрий Емельянов, спасибо большое за помощь, получилось с помощью Inner Join сделать нужный запрос.
Только поймал непонятный баг. Если карту открыть локально, то запрос выполняется, а если на сервере, то выдаёт ошибку "Unresolved symbol 'mg'."
Скрытый текст

В чем может быть причина?

UPD Вопрос снимается, были установлены разные версии клиента и сервера.
Изменено: Павел Рубцов - 24.09.2018 18:02:14
SQL-запросы
 
Здравствуйте.
С помощью запроса ниже приравниваю значения расчетного времени восстановления для задвижки и примыкающих к ней трубопроводов. Насколько я понял, то значение для задвижки берётся из трубопровода, у которого sys больше. Можно ли как-нибудь сделать запрос, чтобы в задвижку записывалось максимальное значение из трубопроводов?
Код
UPDATE b   
SET b.[Расчетное время восстановления, ч] = a.[Расчетное время восстановления, ч]
FROM [СТ_Ульяновск_2] as a, [СТ_Ульяновск_2] as b
WHERE a.typeid=6 AND b.typeid=5 AND a.Geometry.STTouches(b.Geometry)
Страницы: 1 2 След.