Всем привет.
Не могу понять в чем ошибка.
Скрипту нужно из заданного каталога сравнить имена файлов из массива и отсортировать скопировав по каталогам 210 и 420.
Проверяю и...
Ошибка: Array variable subscript badly formatted
Не могу понять в чем ошибка.
Скрипту нужно из заданного каталога сравнить имена файлов из массива и отсортировать скопировав по каталогам 210 и 420.
Проверяю и...
Ошибка: Array variable subscript badly formatted
Код:
MsgBox(0,'',$pFrom & '\65' & $c & '\tip1\' & $sp & '\210\' & $ar210[$keyIndex] & '.' & $c, $pWhere)
MsgBox(0,'',$pFrom & '\65' & $c & '\tip1\' & $sp & '\210\' & $ar210[^ ERROR
Код:
#include <Array.au3>
#include <File.au3>
Opt('TrayIconDebug',1)
Dim $array[23] = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]
Dim $ar210[12] = ['base','ist1','ist2','it_11','pasp','s01_1','som','sop','it_21','itog2','kz','z']
Dim $ar420[27] = ['data','dv','int','itog','korc','korn','kors','kort','nov','rv','st14','st26','v_po','vn','data2','int2','korc2','korn2','kors2','kort2','opis','s01_2','sn','sp_sum','sp_sum01','spr','vn2']
Dim $arrSP[2] = ['sp1','sp2']
$pFrom = 'o:\2014-03\per1' ; Откуда будут копироваться файлы периода
$pWhere = 'd:\temp\per\' ; Куда будут копироваться файлы периода
For $v In $array
;~ Блок создания переменной для номера района (отнимает 1 и/или добавляет '0' к началу цифры, если $v <= 10)
If $v < '10' Then
$c = '0' & $v
Else
$c = $v
EndIf
For $sp In $arrSP
If FileExists($pFrom & '\65' & $c & '\tip1\' & $sp) Then
Switch $sp
Case 'sp1'
$fList = _FileListToArray($pFrom & '\65' & $c & '\tip1\' & $sp, '*', 0)
_ArraySort($ar210)
For $i = 1 To $fList[0]
$keyIndex = _ArrayBinarySearch($ar210, StringTrimRight($fList[$i],3))
;~ If Not @error Then MsgBox(4096,'Ф 210', 'Район ' & $c & ', ' & $sp & @CRLF & 'Элемент: ' & $ar210[$keyIndex])
;~ If Not @error Then FileCopy($pFrom & '\65' & $c & '\tip1\' & $sp & '\210\' & $ar210[$keyIndex] & '.' & $c, $pWhere, 8)
MsgBox(0,'',$pFrom & '\65' & $c & '\tip1\' & $sp & '\210\' & $ar210[$keyIndex] & '.' & $c, $pWhere)
Next
_ArraySort($ar420)
For $i = 1 To $fList[0]
$keyIndex = _ArrayBinarySearch($ar420, StringTrimRight($fList[$i],3))
;~ If Not @error Then MsgBox(4096,'Ф 420', 'Район ' & $c & ', ' & $sp & @CRLF & 'Элемент: ' & $ar420[$keyIndex])
;~ If Not @error Then FileCopy($pFrom & '\65' & $c & '\tip1\' & $sp & '\420\' & $ar420[$keyIndex] & '.' & $c, $pWhere, 8)
Next
Case 'sp2'
$fList = _FileListToArray($pFrom & '\65' & $c & '\tip1\' & $sp, '*', 0)
_ArraySort($ar210)
For $i = 1 To $fList[0]
$keyIndex = _ArrayBinarySearch($ar210, StringTrimRight($fList[$i],3))
;~ If Not @error Then MsgBox(4096,'Ф 210', 'Район ' & $c & ', ' & $sp & @CRLF & 'Элемент: ' & $ar210[$keyIndex])
;~ If Not @error Then FileCopy($pFrom & '\65' & $c & '\tip1\' & $sp & '\210\' & $ar210[$keyIndex] & '.' & $c, $pWhere, 8)
Next
_ArraySort($ar420)
For $i = 1 To $fList[0]
$keyIndex = _ArrayBinarySearch($ar420, StringTrimRight($fList[$i],3))
;~ If Not @error Then MsgBox(4096,'Ф 420', 'Район ' & $c & ', ' & $sp & @CRLF & 'Элемент: ' & $ar420[$keyIndex])
;~ If Not @error Then FileCopy($pFrom & '\65' & $c & '\tip1\' & $sp & '\420\' & $ar420[$keyIndex] & '.' & $c, $pWhere, 8)
Next
EndSwitch
EndIf
Next
Next