|
Индекс находится за границами массива
| ☑ |
0
cahgep
22.08.13
✎
22:53
|
Выскакивает:
{МодульОбычногоПриложения(236)}: Индекс находится за границами массива
Если сч70.ВидыСубконто[0].Валютный = Ложь Тогда
в конфигураторе вот эти строки:
устанавливаем валютный признак сч. 70
Сч70 = ПланыСчетов.Хозрасчетный.РасчетыСПерсоналомПоОплатеТруда;
Если Сч70.ВидыСубконто[0].Валютный = (0); Ложь Тогда
Сч70 = Сч70.ПолучитьОбъект(0);
сч70.ВидыСубконто[0].Валютный = Истина;
Сч70.Записать();
КонецЕсли;
что не так?
|
|
1
GROOVY
22.08.13
✎
22:56
|
Мне кажется что индекс находится за границами массива.
|
|
2
shuhard
22.08.13
✎
22:57
|
(0) Валютный = (0)
ПолучитьОбъект(0)
бред
|
|
3
Охламон
22.08.13
✎
22:58
|
Сч70 = Сч70.ПолучитьОбъект(0);
|
|
4
cahgep
22.08.13
✎
22:59
|
что поправить-то?
|
|
5
GROOVY
22.08.13
✎
23:02
|
Советую посмотреть количество элементов в коллекции субконто и думать.
|
|
6
GROOVY
22.08.13
✎
23:03
|
А в целом код не работоспособный, вон коллеги тоже углядели "ПолучитьОбъект(0)" - это что такое7
|
|
7
EugeniaK
22.08.13
✎
23:44
|
(4) как-то так попробуй
Сч70 = ПланыСчетов.Хозрасчетный.РасчетыСПерсоналомПоОплатеТруда;
Если НЕ Сч70.ВидыСубконто[0].Валютный Тогда
Сч70 = Сч70.ПолучитьОбъект();
сч70.ВидыСубконто[0].Валютный = Истина;
Сч70.Записать();
КонецЕсли;
|
|
8
EugeniaK
22.08.13
✎
23:47
|
Только не понимаю, нафига признак "Валютный" у субконто
|
|