|
Цикл по незаполненным реквизитам
| ☑ |
0
scorp364
19.08.16
✎
15:52
|
Как с помощью цикла сократить это условие?
Если Не ЗначениеЗаполнено(СтрокаДокумента.ПервыйВидВремени1) Тогда
СтрокаДокумента.ПервыйВидВремени1 = Справочники.ВидыРабочегоВремени.НайтиПоНаименованию("В");
КонецЕсли;
Если Не ЗначениеЗаполнено(СтрокаДокумента.ПервыйВидВремени2) Тогда
СтрокаДокумента.ПервыйВидВремени2 = Справочники.ВидыРабочегоВремени.НайтиПоНаименованию("В");
КонецЕсли;
Если Не ЗначениеЗаполнено(СтрокаДокумента.ПервыйВидВремени3) Тогда
СтрокаДокумента.ПервыйВидВремени3 = Справочники.ВидыРабочегоВремени.НайтиПоНаименованию("В");
КонецЕсли;
|
|
1
Горогуля
19.08.16
✎
15:54
|
СтрокаДокумента["ПервыйВидВремени"+й]
|
|
2
butterbean
19.08.16
✎
15:54
|
для начала нужно в переменную запихнуть значение: Справочники.ВидыРабочегоВремени.НайтиПоНаименованию("В");
|
|
3
KishMish
19.08.16
✎
15:55
|
СтрокаДокумента["ПервыйВидВремени2"+Номер]
|
|
4
Argon
19.08.16
✎
15:59
|
ВремВидРабочегоВремени = Справочники.ВидыРабочегоВремени.НайтиПоНаименованию("В");
Для Номер = 1 по 3 цикл
Если НЕ Значениезаполнено(СтрокаДокумента["ПервыйВидВремени"+Номер]) тогда
СтрокаДокумента["ПервыйВидВремени"+Номер] = ВремВидРабочегоВремени;
КонецЕсли;
Конеццикла
|
|
5
lodger
19.08.16
✎
16:08
|
а если там большая таблица и много полей, то можно замутить выгрузку в тз, отдать тз в запрос, в запросе навертеть условие с подстановкой, потом тч.загрузить(запрос.выполнить().выгрузить());
и никакого головняка с циклами.
|
|
6
Nuobu
19.08.16
✎
16:10
|
СтрокаДокумента.ПервыйВидВремени3 = ?(ЗначениеЗаполнено(СтрокаДокумента["ПервыйВидВремени" + Инд]), СтрокаДокумента["ПервыйВидВремени" + Инд], ВремВидРабочегоВремени);
|
|
7
Argon
19.08.16
✎
16:13
|
(6) это что? :)
|
|
8
Nuobu
19.08.16
✎
16:14
|
(7) Это чтоб Если Тогда КонецЕсли; не писать.
|
|
9
scorp364
20.08.16
✎
08:51
|
(4) спасибо работает!
|
|
10
Горогуля
20.08.16
✎
09:06
|
трудились все, а спасибо только Аргону. а и правильно. только он догадался дать то, что можно тупо скопипастить
|
|