Автосохранение карты

Печать Предыдущая страница Стартовая страница Следующая страница

autosave При редактировании векторных карт местности может возникнуть необходимость вернуться к предыдущему состоянию карты для оценки изменений, восстановления после сбоя аппаратных или программных средств и в других целях. Для карт, которые размещены на ГИС Сервере, могут создаваться резервные копии с заданной периодичностью по времени или после заданного числа операций редактирования. Для локально расположенных карт и для карт на ГИС Сервере есть возможность отмены операций до заданного момента времени, но это не всегда удобно и не спасает при системных сбоях.

Чтобы локально размещенные (на компьютере пользователя)  карты автоматически сохранялись при редактировании, необходимо в меню Параметры/Автосохранение карт вызвать диалог «Автосохранение карты», внести карту в список сохраняемых карт и задать периодичность создания копий: через сколько часов при наличии любых изменений или через сколько суммарно изменений с момента создания предыдущей копии. Копии создаются в той локальной или сетевой папке (хранилище), которую укажет пользователь. Для каждой карты в папке хранилища создается папка с именем карты и идентификатором GUID. Если в разных исходных папках лежат карты с одинаковым именем и одинаковым GUID, то они будут сохраняться в одну папку в хранилище. Если в карте не был установлен GUID, то он заполнится автоматически. Внутри папки с именем карты и GUID создаются папки с номером года, текущей датой и номером копии на текущую дату.

Например:

//server31//data/storage/city.sitx_09B16B973F1AA94C8875376B86380522/2024/20240215/07/city.sitx

 

В день может быть сохранено не более заданного числа копий. Если возникают условия создания новых копий, когда уже есть максимально заданное количество, то выполняется удаление промежуточных копий, которые по времени создания ближе к соседним экземплярам. Остальные копии последовательно переномеровываются.

При копировании карты сохраняются все файлы данных и служебные файлы, включая журнал транзакций (TAC, TACX), списки объектов и так далее. В протокол создания копий добавляется запись с временем создания копии, путем к исходной карте и к созданной копии. Протокол создается в папке logs хранилища.

Например:

//server31//data/storage/logs/20240101_autosave.log

 

Запись состояния последней созданной копии содержится в хранилище в папке карты в файле autosavestate.xml.

Например:

//server31//data/storage/city.sitx_09B16B973F1AA94C8875376B86380522/autosavestate.xml

 

<?xml version="1.0" encoding="UTF-8" ?>

<autosavestate lastdate="20240114" timeinsec="29432" count="7">

<source path="d:/data/city.sitx"/>

</autosavestate>

 

Диалог «Автосохранение карты» имеет следующий вид:

 

autosave_dlg

 

При запуске задачи из служебного файла autosave.xml считывается список карт, который отображается в диалоговом окне «Список карт», и  параметры автосохранения, которые представлены в закладках «Общие параметры» и «Особые параметры». Имя карты, для которой установлены свои особые параметры, подсвечено зелёным цветом.

 

Закладка «Особые параметры» отображается при включённой опции Особые параметры автосохранения карты, чтобы задать для карты персональные значения параметров автосохранения.

Карту можно добавить или удалить из списка, пользуясь кнопками на панели диалога

ic_795ic_7999.

При нажатии на кнопку Просмотр на экран выводятся записи журнала загрузок копий на заданную дату (год и месяц). Все журналы формируются на первый день каждого месяца и размещаются в общем хранилище в папке  logs.

 

Результатом выполнения программы после нажатия на кнопку Сохранить является служебный файл autosave.xml, который содержит список карт и параметры автосохранения и хранится в служебной папке ГИС.

Например:

c:\Users\Public\Documents\Panorama\autosave.xml

 

<?xml version="1.0" encoding="UTF-8" ?>

<autosave>

<condition periodinhours="48" numberofchanges="20" limitsavesperday="8" storagetimeinmonths="18">

 <storage path="//sever31//data/storage/"/>

</condition>

<datalist>

 <item path="d:/data/city.sitx">

 </item>

 <item path="d:/data/seamap/ca39995i.sitx">

  <condition periodinhours="24" numberofchanges="10" limitsavesperday="12" storagetimeinmonths="24">

   <storage path="//sever31//data/seamap/"/>

  </condition>

 </item>

 <item path=d:/data/cadastre/pattern.sit">

 </item>

</datalist>

</autosave>

 

Автосохранение карты выполняется в момент работы ГИС, когда карта открыта на редактирование. При выполнении условий автосохранения запускается отдельная программа с параметрами создания резервной копии. При этом папки с резервными копиями, которые хранятся более заданного числа месяцев, удаляются.

Например:

 

autosave.exe -mc:/data/city.sitx -s//server31//storage/ city.sitx_09B16B973F1AA94C8875376B86380522/autosavestate.xml -g//server31// storage/logs/20240101_autosave.log -x8 -c6 -d