Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Поддержка обновления данных в ресурсе NGW #126

Open
drnextgis opened this issue May 19, 2015 · 4 comments
Assignees

Comments

@drnextgis
Copy link
Member

У нас есть в NGW ресурс векторный слой (на базе shp файла), нужна возможность обновлять этот ресурс. Подразумевается, что набор атрибутов неизменен. Мне видится это так: пользователю выводится список полей, среди которых он должен выбрать нужные для формирования первичного ключа (возможно, составного), затем в каждой записи обновленного файла ищется соответствующая запись (> 1 - ошибка, выходим), если находится, то она обновляется в ngw (включая геометрию и атрибутику), если нет - создаётся в ngw. Записи, представленные в ngw, но отсутствующие в загружаемом файле из ngw удаляются.

@BishopGIS
Copy link
Member

По-моему это выгляди, как продвинуты append.
Открывается форма, где выбираются 2 источника данных. Первый - это к которому добавляется запись и второй - откуда брать записи. Истоники могут быть не обязательно НГВ - а любые поддерживаемые. Сам ключ, если не указан - то берется стандартный.
При выполнении append - когда FID совпадает, то выполняется обновление имеющийся записи, если такого FID нет - то добавление.
Видимо в таком сценарии удаления быть не должно.

@drnextgis
Copy link
Member Author

Удаление нужно, так как если его не будет, то в NGW останутся лишние записи.

@drnextgis
Copy link
Member Author

Я тут подумал, а не проще ли без всяких ключей, просто очистить ресурс и создать объекты заново.

@BishopGIS
Copy link
Member

С точки зрения НГВ может и проще, а с точки зрения универсальной утилиты мерджинга разных векторных источников - нет.

@BishopGIS BishopGIS self-assigned this Mar 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants