Имя: Пароль:
1C
1С v8
Помогите бездарю с запросом
0 levchik
 
21.03.14
12:53
ДанныеПечати = Запрос.Выполнить().Выгрузить();
ДанныеПечати.Свернуть("Номенклатура,Характеристика,Штрихкод","Количество");
            
Пока ДанныеПечати.ВыбратьСтроку() Цикл
.....


Что я упустил?
1 ДенисЧ
 
21.03.14
12:54
Всё.
2 levchik
 
21.03.14
12:54
Ошибка "преобразование к значению типа булево не может быть выполнено"
3 levchik
 
21.03.14
12:55
:) это я уже понял, что конкретно ?
4 PR
 
21.03.14
12:55
Пипец. Вызови программиста 1С.
5 ДенисЧ
 
21.03.14
12:56
справоку не читаешь
6 ptiz
 
21.03.14
12:56
Для каждого СтрокаТЗ Из ДанныеПечати  Цикл
....
7 Fedor-1971
 
21.03.14
12:58
(3) развёрнутый ответ из (1): обратись на шоу "Битва экстрасенсов".
Что за запрос, что с чем сравниваешь когда получаешь ошибку?
8 levchik
 
21.03.14
12:59
Поле объекта "Номенклатура" не обнаружено. вот такая ошибка теперь
:(
9 levchik
 
21.03.14
13:00
Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗаказПоставщикуТовар.Ссылка КАК Ссылка ,
    |    ЗаказПоставщикуТовар.Номенклатура КАК Номенклатура,
    |    ЗаказПоставщикуТовар.Количество КАК Количество,
    |    ЗаказПоставщикуТовар.Характеристика КАК Характеристика,
    |    ШтрихкодыНоменклатуры.Номенклатура,
    |    ШтрихкодыНоменклатуры.Характеристика,
    |    ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод
    |ИЗ
    |    Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовар
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
    |            ПО ЗаказПоставщикуТовар.Номенклатура = ШтрихкодыНоменклатуры.Номенклатура
    |                И ЗаказПоставщикуТовар.Характеристика = ШтрихкодыНоменклатуры.Характеристика
    |ГДЕ
    |    ЗаказПоставщикуТовар.Ссылка В (&МассивОбъектов)
    |УПОРЯДОЧИТЬ ПО
    |    ЗаказПоставщикуТовар.Ссылка
    |";

    НомерСтроки = 0;
    
    
    ДанныеПечати = Запрос.Выполнить().Выгрузить();
    ДанныеПечати.Свернуть("Номенклатура,Характеристика,Штрихкод","Количество");
            
    Для каждого СтрокаТЗ Из ДанныеПечати  Цикл
10 M_Flint
 
21.03.14
13:01
Для каждого строка из ДанныеПечати цикл
11 Люблю 1с
 
21.03.14
13:01
хорошо, что сам признался в своей бездарности
12 levchik
 
21.03.14
13:02
вот такой запрос, мне нужно суммировать одинаковые позиции
13 Серго62
 
21.03.14
13:02
(8) Запрос хоть че-нибудь возвращает?
14 levchik
 
21.03.14
13:02
Поле объекта "Номенклатура" не обнаружено
15 Maxus43
 
21.03.14
13:03
(12) в запросе всё суммируй, Группировки смотри
16 levchik
 
21.03.14
13:03
запрос правильный
17 Люблю 1с
 
21.03.14
13:03
(9) нафига дважды выбирать номенклатуру и характеристику?
18 levchik
 
21.03.14
13:03
не могу суммировать
19 levchik
 
21.03.14
13:05
с группировками не получается :(
20 Fedor-1971
 
21.03.14
13:07
либо убери из запроса
    |    ШтрихкодыНоменклатуры.Номенклатура,
    |    ШтрихкодыНоменклатуры.Характеристика,
либо присвой имя.
21 George Wheels
 
21.03.14
13:07
Что у тебя после

Для каждого СтрокаТЗ Из ДанныеПечати  Цикл
...


Думаю, что так
ДанныеПечати.Номенклатура

а надо бы
СтрокаТЗ.Номенклатура
22 ptiz
 
21.03.14
13:07
(14) Потому  что писать надо:
СтрокаТЗ.Номенклатура
а не ДанныеПечати.Номенклатура
23 levchik
 
21.03.14
13:09
Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗаказПоставщикуТовар.Ссылка КАК Ссылка ,
    |    ЗаказПоставщикуТовар.Номенклатура КАК Номенклатура,
    |    ЗаказПоставщикуТовар.Количество КАК Количество,
    |    ЗаказПоставщикуТовар.Характеристика КАК Характеристика,
    |    ШтрихкодыНоменклатуры.Штрихкод КАК Штрихкод
    |ИЗ
    |    Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовар
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
    |            ПО ЗаказПоставщикуТовар.Номенклатура = ШтрихкодыНоменклатуры.Номенклатура
    |                И ЗаказПоставщикуТовар.Характеристика = ШтрихкодыНоменклатуры.Характеристика
    |ГДЕ
    |    ЗаказПоставщикуТовар.Ссылка В (&МассивОбъектов)
    |УПОРЯДОЧИТЬ ПО
    |    Номенклатура
    |";

    НомерСтроки = 0;
    
    
    ДанныеПечати = Запрос.Выполнить().Выгрузить();
    ДанныеПечати.Свернуть("Номенклатура,Характеристика,Штрихкод","Количество");
            
    Для каждого строка из ДанныеПечати цикл
        
        Макет = ПолучитьМакет("ПФ_MXL_ЗаказПоставщику");
            
        ПервыйДокумент = Ложь;
        
        НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
        
        ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказПоставщику_ЗаказПоставщику";
        ОбластьМакета = Макет.ПолучитьОбласть("ТекстДог2");
        НомерСтроки = НомерСтроки + 1;
        ОбластьМакета.Параметры.НомерСтроки = НомерСтроки;

        ОбластьМакета.Параметры.Товар             =ДанныеПечати.Номенклатура;
        ОбластьМакета.Параметры.Количество        =ДанныеПечати.Количество;
        ОбластьМакета.Параметры.Характеристика  =ДанныеПечати.Характеристика;
        ОбластьМакета.Параметры.Штрихкод        =ДанныеПечати.Штрихкод;

                    
        ТабличныйДокумент.Вывести(ОбластьМакета);                 
        УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ДанныеПечати.Ссылка);

        
    КонецЦикла;
24 George Wheels
 
21.03.14
13:11
(23) ДанныеПечати это ТЗ, а строка это текущая строка. Вот из неё и выбирай .Номенклатура и т.д.
25 Fedor-1971
 
21.03.14
13:11
Для каждого строка из ДанныеПечати цикл
Строка - измени на что-нить и это чтонить.Номенклатура (сейчас строка.Номенклатура)
26 Люблю 1с
 
21.03.14
13:12
(23) точно бездарь... СП не читал??
если бы у тебя цикл был
Пока ДанныеПечати.Следующий() Цикл
то тогда в коде писать было бы правильное обращение.
но у тебя
Для Каждого Строка из ДанныеПечати Цикл
Значит обращаться надо к строке! (20)
27 levchik
 
21.03.14
13:12
понял спасибо большое
28 Люблю 1с
 
21.03.14
13:13
(20) эти поля в итоге особо не мешают
29 levchik
 
21.03.14
13:16
Свернулось :)
30 13_Mult
 
21.03.14
13:32
Еще у Количества на null проверять не мешало бы
31 Ненавижу 1С
 
гуру
21.03.14
13:38
а сразу в запросе сгруппировать нельзя было?
32 13_Mult
 
21.03.14
13:39
(31) см (18)(19)
Видимо нет ))
33 ShoGUN
 
21.03.14
13:40
(31) "Коль музыкантом быть - так надобно уменье..."(с)
34 13_Mult
 
21.03.14
13:41
Мы не ищем легких путей. Надо стоя и в гамаке.