Имя: Пароль:
1C
1С v8
Не могу понять почему не выполняется цикл из массива?
0 VID1234
 
24.08.21
10:28
Здравствуйте. Подскажите пожалуйста в чем проблема, есть код:
Запрос2=Запрос.Скопировать();
Запрос2.Свернуть("Контрагент, лицензия, Код, Договор","Сумма");
Запрос3=Запрос2.Скопировать();                    
Запрос3.Свернуть("Код","Сумма");
    
    
    для каждого стр из Запрос3 цикл
    НовСтр = _РеестрДокПОбНЛ.Добавить();
    НовСтр.УИД = (Новый УникальныйИдентификатор);
    НовСтр.КодОпер = стр.Код;
    НовСтр.СумНеоблОпер = стр.Сумма;
    
        
        Запрос4=Запрос2.НайтиСтроки(Новый Структура("Код", НовСтр.КодОпер));//а здесь есть нужный код, по нему он должен отобрать лицензию, контрагента и т.п.
        
        Для Каждого Стр2 Из Запрос4 Цикл //В этом месте цикл не продолжается, сразу переходит в конец цикла
        Сообщить(Стр2);    
        
            Стр_СведКАгент = _ПредТипДог.ПолучитьЭлементы().Добавить();
первый цикл отрабатывает как нужно, а второй видимо в массиве ничего не ходит и заканчивается, что здесь не так?
1 Chameleon1980
 
24.08.21
10:30
на какой строке пишет ошибку?
2 Chameleon1980
 
24.08.21
10:31
что за зверь в запрос?
есть там строки?
3 Жан Пердежон
 
24.08.21
10:32
пиздец конечно переменные называешь, МакКонела почитал бы что ли
4 VID1234
 
24.08.21
10:33
(1) ошибок нет, просто второй цикл, сразу переходит в конец цикла, я так понимаю, потому что массив Запрос4 пустой, но как туда поместить значения, которые соответствуют коду
5 timurhv
 
24.08.21
10:33
(0)
>НовСтр.КодОпер = стр.Код;
Проверьте значение слева и справа
6 VID1234
 
24.08.21
10:33
(3) это тренька
7 acht
 
24.08.21
10:34
(0) > НовСтр.КодОпер = стр.Код;
Типы, небось, разные
8 acht
 
24.08.21
10:34
(6) И что?
9 Chameleon1980
 
24.08.21
10:35
это кто?
_РеестрДокПОбНЛ
10 Chameleon1980
 
24.08.21
10:35
мы не знаем что это у тебя
поэтому не факт, что присваивается

НовСтр.КодОпер = стр.Код;
11 VID1234
 
24.08.21
10:35
(5) Блин, а что за бред,, у меня слева код 8 символов, а с лева 7
12 VID1234
 
24.08.21
10:36
(9) Таблица значений на форме документа
13 VID1234
 
24.08.21
10:36
(11) т.е., наоборот
14 acht
 
24.08.21
10:37
(13) > наоборот
слева 7 а с лева 8?
15 VID1234
 
24.08.21
10:39
(14) ))))) справа 8, а слева 7. Видимо в таблице значений ограничение на 7 символов, а я прописал в тесте 8
16 VID1234
 
24.08.21
10:40
Блин реально, спасибо за подсказку.
17 VID1234
 
24.08.21
10:53
(14) А здесь, что может быть? все заполняется в коде, но на форме документа не отображается? _ПредТипДог - это дерево значений на форме документа
Запрос4=Запрос2.НайтиСтроки(Новый Структура("Код", НовСтр.КодОпер));
        
        Для Каждого Стр2 Из Запрос4 Цикл
        Сообщить(Стр2);    
        
            Стр_СведКАгент = _ПредТипДог.ПолучитьЭлементы().Добавить();
            Стр_СведКАгент.УИД=НовСтр.УИД;
            Стр_СведКАгент.УИДЛок = Новый УникальныйИдентификатор;

            Стр_СведКАгент.НаимОрг = Стр2.Контрагент;
            Стр_СведКАгент.ИННЮЛ = Стр2.Контрагент.ИНН;
            Стр_СведКАгент.КПП = Стр2.Контрагент.КПП;
            Стр_СведКАгент.ОписаниеКА = Стр_СведКАгент.НаимОрг + ", ИНН/КПП: " + Стр_СведКАгент.ИННЮЛ + "/" + Стр_СведКАгент.КПП;
        
            
        Запрос5=Запрос.НайтиСтроки(Новый Структура("Контрагент, Лицензия", Стр2.Контрагент,Стр2.Лицензия));

            
        
            Для Каждого Стр3 Из Запрос5 Цикл
                Стр_ДокПОбНЛ = Стр_СведКАгент.ПолучитьЭлементы().Добавить();
                ЗаполнитьЗначенияСвойств(Стр_ДокПОбНЛ,Стр_СведКАгент);
            Стр_ДокПОбНЛ.СумОпер = Стр3.Сумма;
        
                
                Стр_ДокПОбНЛ = Стр_ДокПОбНЛ.ПолучитьЭлементы().Добавить();
                Стр_ДокПОбНЛ.ТипДок = "Договор";
                попытка
                Стр_ДокПОбНЛ.НомДок = Стр3.НомерЛицензии;
                Стр_ДокПОбНЛ.ДатаДок = Стр3.ДатаЛицензии;
                Стр_ДокПОбНЛ.ОписаниеКА= Стр3.Лицензия;
            исключение
            
            конецпопытки;
            
            КонецЦикла;
        КонецЦикла;
    КонецЦикла;
18 ildary
 
24.08.21
10:56
Кому охота разбираться в _ПредТипДог и Стр_ДокПОбНЛ? И что делать с той кучей времени, которая освободилась при сокращении имён?
19 acht
 
24.08.21
10:56
(17) Понятия не имею. Продирайся через свои имена в своей треньке сам.
20 VID1234
 
24.08.21
10:57
(18) Это разработчики 1С! Сой косяк только в ЗАПРОС1, ЗАПРОС2 и т.п., а
21 Ёпрст
 
24.08.21
11:01
(17)

_ПредТипДог.ПолучитьЭлементы().Добавить();//Вот это бред (Не Пит)
22 FormatC
 
24.08.21
11:03
у меня одного кровавые слезы от названий переменных?
23 acht
 
24.08.21
11:10
(20) > Это разработчики 1С!
А ты там кем?
24 VID1234
 
24.08.21
11:16
(23) Ученик))) Все разобрался, все норм. Спасибо
25 Гипервизор
 
24.08.21
11:20
(24) Конфу в студию! Посмотреть этих разработчиков 1С.
26 Гипервизор
 
24.08.21
11:24
(25) Хм, УПП похоже. И правда _ПредТипДог есть.
27 VID1234
 
24.08.21
11:25
(25) БГУ2