Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Помогите с циклом

Помогите с циклом
Я
   Nikasak
 
06.10.21 - 12:31
Помогите пож-та с циклом

Если  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.ВозвращенаВРазработку")
     Тогда ОбластьДанные.Параметры.Возвращена = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.Выполнена")
     Тогда ОбластьДанные.Параметры.Выполнена = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.НаВыполнении")
          Тогда ОбластьДанные.Параметры.НаВыполнении = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.НаТесте")
          Тогда    ОбластьДанные.Параметры.НаТесте = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.Отменена")
          Тогда ОбластьДанные.Параметры.Отменена = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.Принята")
        Тогда   ОбластьДанные.Параметры.Принята = ВыборкаДетальныеЗаписи.Номер
    ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=" "
        Тогда ОбластьДанные.Параметры.НеРаспределено = ВыборкаДетальныеЗаписи.Номер
        Иначе Продолжить
   Малыш Джон
 
1 - 06.10.21 - 12:32
это не цикл, а условия ветвления
   Nikasak
 
2 - 06.10.21 - 12:32
В тч выводится 
Принята    На выполнении    На тесте    Отменена    Возвращена в разработку    Выполнена    Не распределено
                000002        
                000010        
    000003            000010        
    000007            000010        
000001    000007            000010        
000006    000007            000010        
000006    000007    000005        000010        
000006    000007    000008        000010        
000006    000007    000008        000010    000004    
000006    000007    000008    000009    000010    000004
   Nikasak
 
3 - 06.10.21 - 12:33
Принята    На выполнении    На тесте    Отменена    Возвращена в разработку    Выполнена    Не распределено
                000002        
                000010        
    000003            000010        
    000007            000010        
000001    000007            000010        
000006    000007            000010        
000006    000007    000005        000010        
000006    000007    000008        000010        
000006    000007    000008        000010    000004    
000006    000007    000008    000009    000010    000004
   Ёпрст
 
4 - 06.10.21 - 12:33
(0) помогаю. Ничего не понятно, но очень интересно
   Nikasak
 
5 - 06.10.21 - 12:34
повторяются номера
   Малыш Джон
 
6 - 06.10.21 - 12:36
(5) хммм... наблюдательность - это хорошо
   Ёпрст
 
7 - 06.10.21 - 12:36
Итоги помогут и выборка по группировкам
   hhhh
 
8 - 06.10.21 - 12:37
(2) это вывод надо смотреть
   youalex
 
9 - 06.10.21 - 12:40
соответствие сделай, где в ключе будут значения перечислений - в значении - имя параметра
   PLUT
 
10 - 06.10.21 - 12:43
(5) для заявок это нормально.

у заявки статусы меняются, наверно в какой-то регистр сведений пишется смена статусов

срезпоследних в запросе тебе в помощь :)
   1Сергей
 
11 - 06.10.21 - 12:46
Очищать параметры не предлагали ещё?
   PLUT
 
12 - 06.10.21 - 12:47
(11) ну еще кэш почистить можно предложить :)
   Nikasak
 
13 - 06.10.21 - 12:49
Данные беру запросом и документа.     Задача выводить в колонку только номер дока со статусом колонки

Регистров нет
   1Сергей
 
14 - 06.10.21 - 12:50
ОбластьДанные.Параметры.Возвращена = "";
ОбластьДанные.Параметры.Выполнена = "";
ОбластьДанные.Параметры.НаВыполнении = "";
ОбластьДанные.Параметры.НаТесте = "";
ОбластьДанные.Параметры.Отменена = "";
ОбластьДанные.Параметры.Принята = "";
ОбластьДанные.Параметры.НеРаспределено = "";

Если  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.ВозвращенаВРазработку")
     Тогда ОбластьДанные.Параметры.Возвращена = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.Выполнена")
     Тогда ОбластьДанные.Параметры.Выполнена = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.НаВыполнении")
          Тогда ОбластьДанные.Параметры.НаВыполнении = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.НаТесте")
          Тогда    ОбластьДанные.Параметры.НаТесте = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.Отменена")
          Тогда ОбластьДанные.Параметры.Отменена = ВыборкаДетальныеЗаписи.Номер
ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=ПредопределенноеЗначение("Перечисление.СтатусЗаявки.Принята")
        Тогда   ОбластьДанные.Параметры.Принята = ВыборкаДетальныеЗаписи.Номер
    ИначеЕсли  ВыборкаДетальныеЗаписи.СтатусЗаявки=" "
        Тогда ОбластьДанные.Параметры.НеРаспределено = ВыборкаДетальныеЗаписи.Номер
        Иначе Продолжить
   PLUT
 
15 - 06.10.21 - 12:51
(13) РезЗапроса.Выгрузить().ВыбратьСтроку()

посмотри глазками результат запроса. может так понятнее станет?
   PLUT
 
16 - 06.10.21 - 12:53
(13) если регистров нет, то статус заявки нужен последний?

тады максимум по дате статуса заявки в запросе

(загугли срез последних на каждую дату в запросе)
   PLUT
 
17 - 06.10.21 - 12:57
а вообще в (0) г.внокод

добавьте регистр сведений для  "истории статусов" заявок
   Nikasak
 
18 - 06.10.21 - 13:00
1Сергей Спасибо    Очищать не додумался
   Nikasak
 
19 - 06.10.21 - 13:31
Так нужна не история статусов, текущее состояние(17)
   PLUT
 
20 - 06.10.21 - 13:50
(19) при нормально спроектированной "архитектуре" не нужно столько кода (0) и если иначе если тогда иначе и циклы с прервать и продолжить и вызватьисключение
   Мультук
 
21 - 06.10.21 - 15:47
(0)

Если ЗначениеЗаполнено(ВыборкаДетальныеЗаписи.СтатусЗаявки) Тогда
    ИмяПоля = XMLСтрока(ВыборкаДетальныеЗаписи.СтатусЗаявки);
    областьДанные.Параметры[ИмяПоля] =  ВыборкаДетальныеЗаписи.Номер;
Иначе
    ОбластьДанные.Параметры.НеРаспределено = ВыборкаДетальныеЗаписи.Номер;
КонецЕсли;    

//

1) областьДанные.Параметры[ИмяПоля] -- не проверял, но должно работать. В хелпе написано, что вроде умеет []
2) Ситуацию с "продолжить" наверное, можно-нужно решить еще в запросе


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.