Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Упорядочить номенклатуру в печатной форме
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
niklain-k
В документе ПоступлениеТоваровИУслуг сортирую позиции номенклатуры по возростанию, а в печатной форме приходной накладной оно разбрасывает их и делает такую кашу!!! Это затрудняет потом работу людям, кто принимает товар.Как сделать, чтоб на печать выводилось в таком же порядке, как в документе? 
Batchir
Посмотрите как сделано в типовой конфе, у Вас скорее всего отрабатывают какие-то свои доработки
Я открыл документ, заполнил разными товарами и как бы я не мешал их в табличной части - на печать они выводятся в таком же порядке.
niklain-k
Цитата(Batchir @ 07.10.10, 11:53) необходимо зарегистрироваться для просмотра ссылки
Посмотрите как сделано в типовой конфе, у Вас скорее всего отрабатывают какие-то свои доработки
Я открыл документ, заполнил разными товарами и как бы я не мешал их в табличной части - на печать они выводятся в таком же порядке.


Я прошу прощения за неточность.Я имел ввиду печатную форму документа ПриходНаРозничныеСкладыАТТ !!! А в печатной форме ПриходнаяНакладная действительно все работает!!!..не ожидал))) Конфа типовая.изменений НЕТ! почти.
Batchir
Информация для данной печатной формы берется из регистров. Там же в регистрах хранится и номер строки документа. Если добавить выборку этого измерения, добавить его в группировку и потом выполнить сортировку, то должно отработать.

Там есть запрос в функции НапечататьПриходРасходСРозничныхСкладовВЦенахАТТ
Если его заменить на ниже указанный, то должно заработать, но я особо не тестил, быстро накидал, так что как говорится на свой страх и риск (хотя собственно риска то и нет)
Запрос = Новый Запрос("
    |ВЫБРАТЬ
    |    РегТоварыВРознице.Склад КАК Склад,
    |    РегТоварыВРознице.Номенклатура.Представление КАК Номенклатура,
    |    РегТоварыВРознице.Номенклатура.ЕдиницаХраненияОстатков.Представление КАК ЕдиницаИзмерения,
    |    РегТоварыВРознице.ХарактеристикаНоменклатуры.Представление КАК Характеристика,
    |    РегТоварыВРознице.СерияНоменклатуры.Представление КАК Серия,
    |    РегТоварыВРознице.Качество.Представление КАК Качество,
    |    Сумма(" + ТекстЗапросаКоличество + ") КАК Количество,
    |    Сумма(" + ТекстЗапросаСуммаПродажная + ") КАК СуммаПродажная,
    |    РегТоварыВРознице.НомерСтроки КАК НомерСтроки
    |ИЗ
    |    РегистрНакопления.ТоварыВРознице КАК РегТоварыВРознице
    |ГДЕ
    |    РегТоварыВРознице.Регистратор = &Док
    |    И РегТоварыВРознице.Активность
    |СГРУППИРОВАТЬ ПО
    |    РегТоварыВРознице.Склад,
    |    РегТоварыВРознице.Номенклатура,
    |    РегТоварыВРознице.Номенклатура.ЕдиницаХраненияОстатков,
    |    РегТоварыВРознице.ХарактеристикаНоменклатуры,
    |    РегТоварыВРознице.СерияНоменклатуры,
    |    РегТоварыВРознице.Качество,
    |    РегТоварыВРознице.НомерСтроки
    |ИМЕЮЩИЕ
    |    Сумма(" + ТекстЗапросаКоличество + ") <> 0
    |    ИЛИ Сумма(" + ТекстЗапросаСуммаПродажная + ") <> 0
    |    
    |УПОРЯДОЧИТЬ ПО
    |    НомерСтроки
    |ИТОГИ
    |ПО
    |    Склад
    |");
niklain-k
Цитата(Batchir @ 07.10.10, 22:03) необходимо зарегистрироваться для просмотра ссылки
Там есть запрос в функции НапечататьПриходРасходСРозничныхСкладовВЦенахАТТ


...функция находится в модуле документа ПоступленияТоваровИУслуг?
Vofka
Проверьте, в чем проблема?
Batchir
Цитата(niklain-k @ 08.10.10, 10:34) необходимо зарегистрироваться для просмотра ссылки
...функция находится в модуле документа ПоступленияТоваровИУслуг?

Да, в модуле объекта, не в модуле формы
niklain-k
Вот мой код.Пробовал менять, не работает.


ЗапросПоТоварам = Новый Запрос();
 ЗапросПоТоварам.УстановитьПараметр("ТекущийДокумент", Ссылка);
 ЗапросПоТоварам.Текст =
 "ВЫБРАТЬ
 |    НомерТЧ,
 |    НомерСтрокиТЧ,
 |    ВложенныйЗапрос.Номенклатура,
 |    ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар,
 |    ВложенныйЗапрос.Номенклатура."+ ТекстКодАртикул + " КАК КодАртикул,
 |    ВложенныйЗапрос.ЕдиницаИзмерения.Представление КАК ЕдиницаЦены,
 |    ВложенныйЗапрос.ЕдиницаИзмеренияМест.Представление КАК ЕдиницаМест,
 |    ВложенныйЗапрос.КоличествоМест,
 |    ВложенныйЗапрос.Количество,
 |    ВложенныйЗапрос.Коэффициент,
 |    ВложенныйЗапрос.Цена,
 |    ВложенныйЗапрос.Сумма,
 |    ВложенныйЗапрос.СуммаНДС,
 |    ВложенныйЗапрос.СтавкаНДС,
 |    ВложенныйЗапрос.Характеристика,
 |    ВложенныйЗапрос.Серия,
|    ВложенныйЗапрос.НомерСтроки
 |ИЗ
 |    (ВЫБРАТЬ
 |        1 КАК НомерТЧ,
 |        МИНИМУМ(НомерСтроки) КАК НомерСтрокиТЧ,
 |        ПоступлениеТоваровУслуг.Номенклатура КАК Номенклатура,
 |        СУММА(ПоступлениеТоваровУслуг.КоличествоМест) КАК КоличествоМест,
 |        СУММА(ПоступлениеТоваровУслуг.Количество) КАК Количество,
 |        ПоступлениеТоваровУслуг.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
 |        ПоступлениеТоваровУслуг.ЕдиницаИзмеренияМест КАК ЕдиницаИзмеренияМест,
 |        ПоступлениеТоваровУслуг.Коэффициент КАК Коэффициент,
 |        ПоступлениеТоваровУслуг.Цена КАК Цена,
 |        СУММА(ПоступлениеТоваровУслуг.Сумма) КАК Сумма,
 |        СУММА(ПоступлениеТоваровУслуг.СуммаНДС) КАК СуммаНДС,
 |        ПоступлениеТоваровУслуг.СтавкаНДС КАК СтавкаНДС,
 |        ПоступлениеТоваровУслуг.ХарактеристикаНоменклатуры КАК Характеристика,
 |        ПоступлениеТоваровУслуг.СерияНоменклатуры КАК Серия,
 |        МИНИМУМ(ПоступлениеТоваровУслуг.НомерСтроки) КАК НомерСтроки
 |    ИЗ
 |        Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслуг
 | 
 |    ГДЕ
 |        ПоступлениеТоваровУслуг.Ссылка = &ТекущийДокумент
 | 
 |    СГРУППИРОВАТЬ ПО
 |        ПоступлениеТоваровУслуг.Номенклатура,
 |        ПоступлениеТоваровУслуг.СтавкаНДС,
 |        ПоступлениеТоваровУслуг.Цена,
 |        ПоступлениеТоваровУслуг.ЕдиницаИзмерения,
 |        ПоступлениеТоваровУслуг.ЕдиницаИзмеренияМест,
 |        ПоступлениеТоваровУслуг.Коэффициент,
 |        ПоступлениеТоваровУслуг.ХарактеристикаНоменклатуры,
 |        ПоступлениеТоваровУслуг.СерияНоменклатуры) КАК ВложенныйЗапрос
 |
 |ОБЪЕДИНИТЬ ВСЕ
 |
 |ВЫБРАТЬ
 |    2,
 |    ПоступлениеТоваровУслуг.НомерСтроки,
 |    " + СтрокаВыборкиПоляСодержания + ",
 |    " + СтрокаВыборкиПоляСодержания + ",
 |    ПоступлениеТоваровУслуг.Номенклатура."+ ТекстКодАртикул + " КАК КодАртикул,
 |    ПоступлениеТоваровУслуг.Номенклатура.ЕдиницаХраненияОстатков.Представление КАК ЕдиницаЦены,
 |    NULL,
 |    NULL,
 |    ПоступлениеТоваровУслуг.Количество,
 |    1,
 |    ПоступлениеТоваровУслуг.Цена,
 |    ПоступлениеТоваровУслуг.Сумма,
 |    ПоступлениеТоваровУслуг.СуммаНДС,
 |    ПоступлениеТоваровУслуг.СтавкаНДС,
 |    NULL,
 |    NULL,
 |    НомерСтроки
 |ИЗ
 |    Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслуг
 |
 |ГДЕ
 |    ПоступлениеТоваровУслуг.Ссылка = &ТекущийДокумент
 |
 |УПОРЯДОЧИТЬ ПО
 |    НомерТЧ, НомерСтрокиТЧ
 |"; 
 
 ЗапросТовары = ЗапросПоТоварам.Выполнить().Выгрузить();

 Запрос = Новый Запрос;
 Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
 Запрос.Текст = "
 
 |ВЫБРАТЬ
 |    НомерСтроки                        КАК НомерСтрокиТЧ,
 |    Номенклатура,
 |    ВЫРАЗИТЬ(Номенклатура.НаименованиеПолное КАК СТРОКА(1000))  КАК Товар,
 |    Номенклатура.Код                КАК Код,
 |    Номенклатура."+ ТекстКодАртикул + " КАК КодАртикул,
 |    Номенклатура.ЕдиницаХраненияОстатков.Представление КАК ЕдиницаЦены,
 |    Количество,
 |    Цена,
 |    Сумма
 |ИЗ
 |    Документ.ПоступлениеТоваровУслуг.ВозвратнаяТара КАК ПоступлениеТоваровУслуг
 |
 |ГДЕ
 |    ПоступлениеТоваровУслуг.Ссылка = &ТекущийДокумент
 |
 |УПОРЯДОЧИТЬ ПО
 |    НомерСтрокиТЧ
 |";
Batchir
Извиняюсь за ложную инфу.
Функция НапечататьПриходРасходСРозничныхСкладовВЦенахАТТ находится в общем модуле ЗаполнениеДокументов, а в модуле объекта документа находится вызов этой процедуры.
niklain-k
Теперь супер!!! СПАСИБО!!!
niklain-k
...та же проблема с печатью ценников. Как сделать , чтоб в обработке для печати ценников товары были упорядочены так же как и в документе , из которого они печатаются( ценники).
Vofka
Документ ПоступлениеТоваровИУслуг, модуль документа, функция ПечатьЦенников(). Тамошний запрос поменяйте на этот:
Запрос = Новый Запрос("
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    ИСТИНА КАК Печать,
    |    Док.Номенклатура КАК Номенклатура,
    |    Док.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    Док.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
    |    0 КАК Цена,
    |    1 КАК Количество,
    |    Док.НомерСтроки КАК НомерСтроки
    |ИЗ
    |    Документ.ПоступлениеТоваровУслуг.Товары КАК Док
    |ГДЕ
    |    Док.Ссылка = &Док
    |УПОРЯДОЧИТЬ ПО
    |    НомерСтроки
    |");


ЗЫ. смотрел типовуюю конфу. Запрос предположительно правильный, не проверял.

ЗЫЫ. если ещё будут вопросы - создайте новую тему, не пишите здесь все свои вопросы!!!
niklain-k
Спасибо! Работает.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.