Скрипт автоматично звіряє КОАТУУ, зону та квартал усіх обмінників XML у заданій папці із тими, що на публічній кадастровій карті і, якщо є невідповідність, то виправляє це. В кінці появляється детальний звіт, що в якому обміннику було виправлено.
При цьому КОАТУУ, зона та квартал міняються тільки всередині файлу. Назва файлу (якщо вона містила також КОАТУУ, зону та квартал) залишається без змін.
$Tab=@Calc char(9)
$Tab=@DequoteText $Tab
$Papka=@ProgramFolder
$Ver=@Version
@if $Ver<42345 then @Break Ваша версія програми не підтримує читання з Публічної карти. Оновіть програму
$Demo=@DemoMode
@if $Demo=1 then @Dialog.Message В демо-версії програми Digitals скрипт не зможе зберігати файли!
@SelectTab 3
$P=0
$FileExists=@FileExists $Papka\PauseReplase.txt
@if $FileExists=0 then @Goto %Dali3
@Text.Load $Papka\PauseReplase.txt
$I=@Text.Line[1]
@Text[1].Load $Papka\ReplasePause.txt
@Text[2].Load $Papka\Результат перевірки.txt
$FC=@Text[1].Count
$StartText=продовжено з файлу $I із $FC
$Dialog=@Dialog.Confirm Продовжити додавання кадастровий номерів з файлу, на якому ви закінчили минулого разу? (файл $I із $FC)||Cansel - почати заново
@if $Dialog=1 then @Goto %Start
%Dali3
$WorkPapka=@Dialog.SelectFolder Відкрийте папку з файлами XML, які потрібно привести у відповідність з кадастровими номерами на Публічній карті. Почекайте на результат (це може зайняти деякий час)
@if $WorkPapka= then @break
@Text[1].FolderListTree *.xml $WorkPapka
$StartText=Початок
$I=0
@Text[2].Clear
%Start
$T1=@Text[1].Text
$FC=@Text[1].Count
@If $FC=0 then @Break В папці не знайдено жодного файла
@Progress.Start $FC Обробляю файли (всього $FC)
@Progress.StepBy $I
$D=@Date
@Text[2].Add $D $StartText
%Loop
@Progress.StepBy 1
$Prog=@Progress.Canceled
@if $Prog=1 then @Goto %Break
$I=$I+1
$Pref=
$FN=@Text[1].Line[$I]
$Ver=@Version
@if $Ver<42766 then @Goto %NoPerevValid
$R=@XML.Valid $FN
@if $R=0 then @Goto %Next
%NoPerevValid
$Open=@FileOpen $FN
@if $Open=0 then @Goto %Next
@Map.DeselectAll
@Map.SelectLayer id70003
$SO=@Map.SelectedObject
@if $SO=0 then @Goto %Next
$idKoatuu=ID7000301
$KoatuuDo0=@Map.Object[$SO].Parameter[$idKoatuu]
$KoatuuDo=@StringPart 1:$KoatuuDo0
$ZonaDo=@StringPart 2:$KoatuuDo0
@Map.DeselectAll
@Map.SelectLayer id70004
$SO=@Map.SelectedObject
@if $SO=0 then @Goto %Next
$KvartalDo=@Map.Object[$SO].Parameter[ID7000401]
$ThisObj=@Map.SelectedObject
$X=@Map.Object[$ThisObj].Parameter[-4]
$Y=@Map.Object[$ThisObj].Parameter[-3]
$Res=@Map.GetPublicMapQuarterInfo $X $Y
@Text.Text $Res
@if $Res=0 then @Goto %Next
@Text.Text $Res
$KOATUU=@Text.Line[1]
$KOATUU=@StringPart 2=$KOATUU
$Zona=@Text.Line[2]
$Zona=@StringPart 2=$Zona
$Kvartal=@Text.Line[3]
$Kvartal=@StringPart 2=$Kvartal
$KOATYYNew=@Concat $KOATUU,:,$Zona
$ControlKOATUU=КОАТУУ без змін
$ControlZona=Зона без змін
$ControlKvartal=Квартал без змін
@if $KoatuuDo<>$Koatuu then $ControlKOATUU=КОАТУУ до: $KoatuuDo після: $Koatuu
@if $ZonaDo<>$Zona then $ControlZona=Зона до: $ZonaDo після: $Zona
@if $KvartalDo<>$Kvartal then $ControlKvartal=Квартал до: $KvartalDo після: $Kvartal
@Map.DeselectAll
@Map.SelectLayer id70003
$SO=@Map.SelectedObject
$idKoatuu=ID7000301
@Map.Object[$SO].Parameter[$idKoatuu] $KOATYYNew
@Map.DeselectAll
@Map.SelectLayer id70004
$SO=@Map.SelectedObject
@Map.Object[$SO].Parameter[ID7000401] $Kvartal
@Text[2].Add $ControlKOATUU $ControlZona $ControlKvartal Розташування файлу - $FN
$P=$P+1
@Map.SaveToFile $FN
%Next
@CloseMap $FN
@if $I<$FC then @Goto %Loop
@Progress.Stop
@Text[2].Save $Papka\Результат перевірки.txt
@if $I<>$FC then @Goto %Loop2
$FileExists=@FileExists $Papka\PauseReplase.txt
@if $FileExists=1 then @DeleteFile $Papka\PauseReplase.txt
$FileExists=@FileExists $Papka\ReplasePause.txt
@if $FileExists=1 then @DeleteFile $Papka\ReplasePause.txt
%Loop2
@Dialog.Message Перевірено $I файлів||Звіт збережно у файлі $Papka\Результат перевірки.txt
@Run $Papka\Результат перевірки.txt
@Break
%Break
@Text[2].Save $Papka\Результат перевірки.txt
@Text[1].Save $Papka\ReplasePause.txt
@Text.Text $I
@Text.Save $Papka\PauseReplase.txt
@Dialog.Message Перевірено $I файлів з $FC||Звіт збережно у файлі $Papka\Результат перевірки.txt.||Наступного разу вам буде запропоновано продовжити обробку файлів.
@Run $Papka\Результат перевірки.txt
|