От, тепер працює$Separ=@DecimalSeparator
$K=@Text[1].Load D:\классификатор.txt
$I=1
@SelectTab 3
@Map.DeselectAll
$Asc=@Dialog.WaitBox Позначте одну з ділянок, активуйте поле значення параметра 1, в якому має бути номер ділянки, на вкладці 'Інфо'
@If $Asc=0 then @Break Перервано користувачем
@Map.BeginUpdate
@Progress.Start $K Номерую ділянки
%Start
$I=$I+1
@If $I>$K then @Progress.Stop
@If $I>$K then @Map.EndUpdate
@If $I>$K then @Break Заномеровано ділянки
@Progress.StepBy
$z=@Text[1].line[$I]
@Map.SelectByParameters 1|61=$z
$Selcount=@Map.SelCount
@If $Selcount=0 then @Goto %Start
$MaxParam=@Map.MaxParameterValue 1
@If $MaxParam= then $ValParam=0
@If $MaxParam= then @Goto %YesNumber
@If $Separ=, then $ValParam=@StringPart 1,$MaxParam else $ValParam=$MaxParam
%YesNumber
$ValParam=$ValParam+1
@Map.EndUpdate
@SendChars $ValParam<CR>
@ExecuteMenu Autonumberingrightdown1
@Map.BeginUpdate
@Map.DeselectAll
@Goto %StartДовгенько мучився з нестабільною роботою . Дивно, чомусь прокол з функцією @Dialog.EditParameter ParamIndex, що у скрипті активувала параметр 1 для введення. Номерація ділянок вниз виконується в активному, на момент номерації, параметрі. Вихід один: активувати параметр 1 в ході очікування скрипта.
Помітив що, якщо включена заборона оновлення карти, не посилається повідомлення $ValParam наступному діалоговому вікну:
@SendChars $ValParam
@ExecuteMenu Autonumberingrightdown1
Прикріпив відео Demo.exe (1.04 MB)