|
Как правильно сделать условие? | ☑ | ||
---|---|---|---|---|
0
AlexBor
naïve
25.01.15
✎
10:09
|
Задача такая в ТЧ документа устанавивается статус этого документа (На регистрации, в работе и т.д.). Мне необходимо получить при закрытии документа последний статус т.е последнюю строку делаю так: СтатусРеквизит = Статус[Статус.Количество()-1].Статус; Все хорошо но возникает проблема у документов в которых ТЧ не заполнено при закрытии появляется ошибка ... Индексы выходят за пределы и т.д. Дума л сделать такое условие но что то до конца не догоняю как сделать
Если Статус.Количество()>=0 Тогда СтатусРеквизит = Статус[Статус.Количество()-1].Статус; Иначе ???????????????? КонецЕсли; |
|||
1
Lama12
25.01.15
✎
10:14
|
Реши как должен вести себя документ без статусов и все.
Кстати. Номер строки в тч пользователь может поменять. :) |
|||
2
Мимохожий Однако
25.01.15
✎
10:15
|
Если Статус.Количество()=0 Тогда
СтатусРевизит = Перечисления.Статусы.НеЗаполнен; |
|||
3
AlexBor
naïve
25.01.15
✎
10:18
|
(1) Не может
|
|||
4
AlexBor
naïve
25.01.15
✎
10:19
|
(1) Документ без статусов ведет себе абсолютно так же как и со статусами.
|
|||
5
Фокусник
25.01.15
✎
10:29
|
(0) Чтобы написать что-то вместо "????????????????" нужно определить, какой СтатусРеквизит следует установить в случае:
"но возникает проблема у документов в которых ТЧ не заполнено при закрытии появляется ошибка ...". Из задачи в (0) это не понятно ;) |
|||
6
ShoGUN
25.01.15
✎
10:31
|
(4) А что нужно видеть в статусе, если табличная часть не заполнена? (1) именно об этом.
|
|||
7
AlexBor
naïve
25.01.15
✎
10:34
|
(5) и (6) Я вас понял если ТЧ пустая то СтатусРеквизита=СтаусРеквизита.ПустаяСсылка() так можно?
|
|||
8
Мимохожий Однако
25.01.15
✎
10:36
|
(7)Какой тип значения должен быть в реквизите СтатусРеквизита? Если он может оставаться пустым, то не смысла пустую ссылку присваивать.
|
|||
9
Фокусник
25.01.15
✎
10:36
|
(7) Скорее всего реквизит СтатусРеквизита не составной, значит можно просто:
СтатусРеквизита = Неопределено; |
|||
10
ShoGUN
25.01.15
✎
10:38
|
(8) Имеет, вообще-то. Например, строки в ТЧ были и статус в шапке какой-то был, и их удалили, а статус в шапке останется, если ничего не присваивать.
|
|||
11
ShoGUN
25.01.15
✎
10:39
|
(9) Правильней Перечисление.Статусы.ПустаяСсылка(), но Неопределено тоже проканает.
|
|||
12
AlexBor
naïve
25.01.15
✎
10:41
|
Сделал так:
Если Статус.Количество()>=0 Тогда СтатусРеквизит = Статус[Статус.Количество()-1].Статус; Иначе СтатусРеквизит = Неопределено; КонецЕсли; Все равно при закрытии документа Индекс за пределами и т.д. почему? |
|||
13
Фокусник
25.01.15
✎
10:42
|
(12) "Если Статус.Количество()>=0 Тогда"
в условии ведь есть "="... оставь только ">". PS исповедуешь "программирование методом тыка"? ;) |
|||
14
ShoGUN
25.01.15
✎
10:42
|
(12) Условие неправильное. Не >= , а >
|
|||
15
AlexBor
naïve
25.01.15
✎
10:44
|
(13) Получилось спасибо
|
|||
16
AlexBor
naïve
25.01.15
✎
10:44
|
Всем спасибо вы мне очень помогли
|
|||
17
EvgeniuXP
25.01.15
✎
18:57
|
или занеси в реквизит самого документа статус - где будет храниться последний из табличной части.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |