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

FAQ для опытных пользователей (секреты)
http://www.geosystema.net/forum/viewtopic.php?f=1&t=9
Страница 8 из 9

Автор:  Bohdan29 [ 01 фев 2014 21:38 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Dmitriy Fedorov писал(а):
Похоже, описание все-таки отличается. Скачайте дистрибутив, в папке Doc найдете другой вариант.
Дякую, тепер все гаразд.

Автор:  Bondarets Alexander [ 22 май 2014 16:12 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Если в чертеже Autocad имеются объекты, созданные сторонним приложением - надстройкой над автокадом, тогда при отсутствии данного приложения данные объекты помещаются в слой ACAD PROXY ENTITY. Объекты этого слоя будут пропущены при загрузке DWG в Digitals. Чтобы преобразовать их в обычные объекты автокада и загрузить в Digitals используйте команду AECTOACAD.

Автор:  Bondarets Alexander [ 15 июл 2014 17:04 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Как известно новый модуль проверки XML файлов XMLChecker использует XSD схему для валидации содержимого кадастрового XML. Поэтому, если некоторые ошибки в вашем регионе не являются ошибками, можно отредактировать оригинальную схему - это файл Digitals\XMLCheck\XMLSchema.xsd.

Предположим, что тег LicenseIssuedDate в вашем регионе является необязательным. Найдите его в файле XMLSchema.xsd (открывается в любом текстовом редакторе, рекомендую Notepad++) и добавьте атрибут minOccurs="0". Должно получится так:
Код:
<xsd:element name="LicenseIssuedDate" type="xsd:date" minOccurs="0">
Сохраните схему и перезапустите XMLChecker. Уберите тег LicenseIssuedDate из вашего тестового XML и ошибка

Элемент "License" неполный. Также ожидается "LicenseIssuedDate"

больше не будет появляться.

Второй случай. Предположим, что тег LicenseIssuedDate является обязательным, но может содержать пустое значение. В данном случае тип xsd:date нас уже не устраивает, так как не допускает пустых значений. Создадим свой тип, объединяющий пустую строку и формат даты.

Добавьте в начало XMLSchema.xsd файла после строки
Код:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" version="0.7">
эти два блока:
Код:
<xsd:simpleType name="empty-string">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value=""/>
  </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="date-or-nothing">
  <xsd:union memberTypes="xsd:date empty-string"/>
</xsd:simpleType>
Они описывают новый тип с именем date-or-nothing, который допускает пустую строку либо строку в формате XML даты.

Затем снова найдите тег LicenseIssuedDate и измените его тип. Должно получится так
Код:
<xsd:element name="LicenseIssuedDate" type="date-or-nothing">

После перезапуска XMLChecker ошибка

Пустое значение не допускается в элементе "LicenseIssuedDate" перестанет появляться.

Автор:  ialexandri [ 20 июл 2014 22:22 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Є такий скрипт в експлікації "Expl_privat" колонка "Цільове призначення використання земельної ділянки":

[Copy(Param('CV'),1,Pos(' ',Param('CV')))]

Він генерує код цільового призначення, причому тільки код! Тобто із цього - "02.01
для будівнитва і обслуговування жилого будиинку, господарських будівель і споруд (присадибна ділянка)" він видасть тільки - "02.01".

А як написати скрип щоб видавав назву цільового, без кода - "для будівнитва і обслуговування жилого будиинку, господарських будівель і споруд (присадибна ділянка)" ?

P.S.
Шаблон із in4.

Автор:  shyrko [ 20 июл 2014 23:01 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Copy(PARAM('CV'),(POS(' ',PARAM('CV'))+1),Length(PARAM('CV')))

Автор:  ialexandri [ 21 июл 2014 12:16 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Вдячний! В fast reports добре працює! :D

Яким чином на плані це прописати в DMT файлі? Якщо це взагалі можливо, щось непригадаю щоб десь бачив код в DMT.

Автор:  Dmitry_Zolotar [ 21 июл 2014 15:00 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

в DMT можна так:
GET(-1 P[CV])
ця формула відкидає(-) першу(1) частину(роздільник - пробіл) параметра CV

Автор:  ialexandri [ 21 июл 2014 20:05 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Працює! Дякую!

Автор:  _Visco_ [ 19 авг 2015 20:47 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Есть потребность редактирования большого количества файлов xml. Возможно ли вообще, открыв папку с файлами в программе (все файлы на одной карте), что бы внесенные изменения сохранились в отдельных файлах? Так не хватает такой чудо функции. Или это фантастика?

Автор:  Sergey Oleynik [ 19 авг 2015 20:49 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

_Visco_ писал(а):
Есть потребность редактирования большого количества файлов xml. Возможно ли вообще, открыв папку с файлами в программе (все файлы на одной карте), что бы внесенные изменения сохранились в отдельных файлах? Так не хватает такой чудо функции. Или это фантастика?

А открытие по очереди, внесение изменений и сохранение (при помощи скрипта) не устроит?

Автор:  _Visco_ [ 19 авг 2015 21:53 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Вариантов то немного :D
Имеете ввиду что открыв например 100 файлов изменяем первый последующие изменятся соответственно первому?
А если нужно не только удалить параметр но и удалить например слой "Оренда"? Он правда будет не во всех файлах.
Есть разнобой, где то надо удалить строки параметров где то слой или и то и другое вместе. Понимаете о чем я?

Автор:  Sergey Oleynik [ 19 авг 2015 21:56 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

_Visco_ писал(а):
Вариантов то немного :D
Имеете ввиду что открыв например 100 файлов изменяем первый последующие изменятся соответственно первому?

Нет, скрипт может по очереди внести определенные однотипные изменения во все файлы. Что именно нужно изменить? Значение определенного параметра? Геометрию?

Автор:  _Visco_ [ 19 авг 2015 21:58 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Нужно проверить файлы на наличие строк параметров "Дані про права користування..." и "Нормативна грошова оцінка", если есть - удалить. Они должны быть пустые.
Так же удалить слой "Оренда" если есть.

Автор:  Dmitry_Zolotar [ 21 авг 2015 11:09 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

_Visco_ писал(а):
Нужно проверить файлы на наличие строк параметров "Дані про права користування..." и "Нормативна грошова оцінка", если есть - удалить. Они должны быть пустые.
Так же удалить слой "Оренда" если есть.


Скрипт открывает по очереди все XML-файлы в указанной папке, удаляет значения параметров ID7000521 и ID7000562, удаляет объекты "ХМЛ:Оренда". Измененный файл сохраняется(без запроса на перезапись). Целесообразно перед запуском скрипта отключить проверку при записи (Сервис-Настройки-Запись-In4/XML-Проверять In4/XML при записи). Напомню также о том что при сохранении XML-файлов неявно вызывается шаблон заполнения Digitals\Templates\XML.csv, если такой файл найден.

$SourceFolder=@Dialog.SelectFolder Выберите папку с xml-файлами
$FE=@FolderExists $SourceFolder
@if $FE<>1 then @Break Папка $SourceFolder не найдена
@Text[1].FolderList *.xml $SourceFolder
$FC=@Text[1].Count
@if $FC=0 then @Break xml-файлы не найдены в папке $SourceFolder
$I=0
%Loop
$I=$I+1
$FN=@Text[1].Line[$I]
@FileOpen $FN
$AM=@ActivateMap
@Map.SelectLayer ID70005
$SO=@Map.SelectedObject
@Map.Object[$SO].Parameter[ID7000521] $NONE
@Map.Object[$SO].Parameter[ID7000562] $NONE
@Map.DeselectAll
@Map.SelectLayer ID70006
@Map.Selected.Delete
@Map.SaveToFile $FN
@CloseMap $AM
@if $I<$FC then @Goto %Loop

Автор:  _Visco_ [ 21 авг 2015 11:14 ]
Заголовок сообщения:  Re: FAQ для опытных пользователей (секреты)

Спасибо. Буду обкатывать.

UPD. Отлично. Работает. Благодарю.

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