Группа: Ахтунги
Сообщений: 116
Спасибо сказали: 0 раз
Рейтинг: 0
А как можно реализовать отображение характеристик номенклатуры в списке? У каждой номенклатуры может быть несколько характеристик.. Вот думаю, что нужно отображать в списке каждую характеристику одного и того-же товара новой строкой... Как быть?
Хочу так:
Помогите пожалуйста дополнить мой код:
ВЫБРАТЬ РАЗЛИЧНЫЕ СпрНоменклатура.Ссылка КАК Ссылка, СпрНоменклатура.Код КАК Код, СпрНоменклатура.Наименование КАК Наименование, СпрНоменклатура.Артикул КАК Артикул, СпрНоменклатура.ВидНоменклатуры КАК ВидНоменклатуры, СпрНоменклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения, СпрНоменклатура.СтавкаНДС КАК СтавкаНДС, СпрНоменклатура.Родитель, ВЫБОР КОГДА СпрНоменклатура.ЕстьТоварыДругогоКачества ТОГДА 4 + ВЫБОР КОГДА СпрНоменклатура.ПометкаУдаления ТОГДА 1 ИНАЧЕ 0 КОНЕЦ + ВЫБОР КОГДА СпрНоменклатура.ИспользованиеХарактеристик = ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.НеИспользовать) ТОГДА 0 ИНАЧЕ 2 КОНЕЦ ИНАЧЕ ВЫБОР КОГДА СпрНоменклатура.ПометкаУдаления ТОГДА 1 ИНАЧЕ 0 КОНЕЦ + ВЫБОР КОГДА СпрНоменклатура.ИспользованиеХарактеристик = ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.НеИспользовать) ТОГДА 0 ИНАЧЕ 2 КОНЕЦ КОНЕЦ КАК ИндексКартинки, ЕСТЬNULL(ТоварыНаСкладахОстатки.ВНаличииОстаток, 0) КАК Остаток, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних_Розн.Цена, 0) КАК ЦенаРозн, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних_Закуп.Цена, 0) КАК ЦенаЗакуп ИЗ Справочник.Номенклатура КАК СпрНоменклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки ПО (ТоварыНаСкладахОстатки.Номенклатура = СпрНоменклатура.Ссылка) ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ЦенаЗакупочная) КАК ЦеныНоменклатурыСрезПоследних_Закуп ПО (ЦеныНоменклатурыСрезПоследних_Закуп.Номенклатура = СпрНоменклатура.Ссылка) ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ЦенаРозничная) КАК ЦеныНоменклатурыСрезПоследних_Розн ПО (ЦеныНоменклатурыСрезПоследних_Розн.Номенклатура = СпрНоменклатура.Ссылка) ГДЕ НЕ СпрНоменклатура.ЭтоГруппа {ГДЕ (СпрНоменклатура.Ссылка В (ВЫБРАТЬ Сегменты.Номенклатура ИЗ РегистрСведений.НоменклатураСегмента КАК Сегменты ГДЕ Сегменты.Сегмент = &СегментНоменклатуры))}
И попутный вопрос, код вроде верный, но почему пишет ошибку - "Обнаружено дублирование ключевых значений в колонке ссылка"?? в "Дополнительно" - "Выборка записей" стоит галка "Без повторяющихся"...
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9
Bulzavr @ Вчера, 20:36
, "Без повторяющихся" означает отсутствие записей с одинаковыми значениями по всем полям. Вам же надо обеспечить уникальность записей по полю "ссылка".
Допрацьовую: - "Бухгалтерія для України 2.1"; - "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 320 раз
Рейтинг: 0
Bulzavr @ Сегодня, 10:04
, Не так то что , данный запрос может вам задвоить строки и у вас одинаковая ссылка может встречаться в двух строках - пример: один и тот же товар есть на разных складах - вот вам и две строки, соответственно "дублирование ключевого значения".
Такое сообщение возникает когда в динамическом списке установлена основная таблица - если её убрать то сообщения не будет, но тогда вам ручками надо будет реализовать все стандартные кнопки командной панели: Создать, Изменить, Копировать и т.д.
Дописываю конфигурации на платформе 8.х. - Управление торговым предприятием для Украины - Управление производственным предприятием для Украины - Управление небольшой фирмой для Украины - Бухгалтерия для Украины; - Общепит для Украины - Ресторан (Рарус) - Розница
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 320 раз
Рейтинг: 0
Bulzavr @ Сегодня, 11:23
, Насколько знаю нет, может кто-то что-то предложит другое. Я когда-то писал свои обработчики в такой ситуации, не то чтобы аж очень много кода и что-то сложное, но жаба душит учитывая то, что знаешь что кнопки стандартные и могли бы без этого обойтись
Дописываю конфигурации на платформе 8.х. - Управление торговым предприятием для Украины - Управление производственным предприятием для Украины - Управление небольшой фирмой для Украины - Бухгалтерия для Украины; - Общепит для Украины - Ресторан (Рарус) - Розница
данный запрос может вам задвоить строки и у вас одинаковая ссылка может встречаться в двух строках - пример: один и тот же товар есть на разных складах - вот вам и две строки, соответственно "дублирование ключевого значения".
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 320 раз
Рейтинг: 0
sava1 @ Сегодня, 11:48
, Вывод оттуда, что у человека в запросе левым соединением к справочнику Номенклатура подсоединяются остатки, связь только по номенклатуре, соответственно если есть товар на нескольких складах - столько строк и получим.
То что выдаст такое сообщение - проверено на практике, если эта динамический список откуда потом мы хотим открывать/создавать/копировать элементы основной таблицы, то ключевое поле должно быть без дубля. Т.е. если в списке будет две строки он матюкнется что есть две строки и нифига в динамический список не выведет. В виду этого, я убирал основную таблицу и реализовывал Создание/Изменение/Копирование нужных мне элементов
Дописываю конфигурации на платформе 8.х. - Управление торговым предприятием для Украины - Управление производственным предприятием для Украины - Управление небольшой фирмой для Украины - Бухгалтерия для Украины; - Общепит для Украины - Ресторан (Рарус) - Розница
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 320 раз
Рейтинг: 0
sava1 @ Сегодня, 11:57
, Пардон, не увидел что Склад в выборку не попадает.
Но сути не меняет: раз выдает такое сообщение значит есть две строки с одинаковой ссылкой, а в таком случае либо делать так чтобы эта ссылка была одна, либо так как писал я - реализовывать командную панель самостоятельно
Дописываю конфигурации на платформе 8.х. - Управление торговым предприятием для Украины - Управление производственным предприятием для Украины - Управление небольшой фирмой для Украины - Бухгалтерия для Украины; - Общепит для Украины - Ресторан (Рарус) - Розница
Группа: Ахтунги
Сообщений: 116
Спасибо сказали: 0 раз
Рейтинг: 0
Так как решить-то? Чесслово не понимаю, почему сделали так, как есть изначально.. Ведь неудобно же!
У меня например есть на складе 10 карандашей. 5 синих и 5 красных. Как в списке номенклатуры смотреть остаток, если отображаетс "карандаш: 10шт"? Прайс смотреть не вариант каждый раз. Нужно видеть оставшиеся цвета в списке номенклатуры..
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(Bulzavr @ 06.09.17, 18:03)
Как вообще люди живут с этим?
Используют характеристики. Как правило в типовых торговых конфигурациях есть функционал который позволяет видеть остатки по характеристикам, в подборе, или отдельном поле, при нажатии на номенклатуру.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Ахтунги
Сообщений: 116
Спасибо сказали: 0 раз
Рейтинг: 0
Я использую характеристики и у меня голая типовая УТ11, в которой не видно характеристик в списке номенклатуры ни в каких окнах. Чтобы посмотреть остаток по характеристикам, приходится формировать прайс-лист! Или я чурка?
Группа: Ахтунги
Сообщений: 116
Спасибо сказали: 0 раз
Рейтинг: 0
Я понимаю, что один и тот же товар с разными характеристиками будет давать одинаковые ссылки. Но ведь должен же быть способ решения этой проблемы? Может не динамический список, а статичный сделать?
Группа: Ахтунги
Сообщений: 116
Спасибо сказали: 0 раз
Рейтинг: 0
Сделал динамический список справочника характеристик. Почти получилось.. Стал отображать и характеристики и владельца. Помогите вот с чем:
1. Отображается далеко не вся номенклатура. Только часть. Если лазить по иерархии, то натыкаюсь на ошибку:
{ОбщийМодуль.ОбщегоНазначения.Модуль(94)}: Ошибка при вызове метода контекста (Выполнить) Выборка = Запрос.Выполнить().Выбрать(); по причине: {(3, 2)}: Поле не найдено "Родитель" <<?>>Родитель КАК Родитель
2. Как сгруппировать таким образом, чтобы Наименование характеристики было вложено во владельца одной строкой?
ВЫБРАТЬ СправочникХарактеристикиНоменклатуры.Ссылка, СправочникХарактеристикиНоменклатуры.ПометкаУдаления, СправочникХарактеристикиНоменклатуры.Владелец КАК Родитель, СправочникХарактеристикиНоменклатуры.Наименование КАК НаименованиеХарактеристики, СправочникХарактеристикиНоменклатуры.ДополнительныеРеквизиты КАК ДопРеквизитыХарактеристики, СправочникХарактеристикиНоменклатуры.Предопределенный, СправочникХарактеристикиНоменклатуры.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанныхХарактеристики, ВариантыКомплектацииНоменклатуры.Ссылка КАК СоставНабора, ЕСТЬNULL(ТоварыНаСкладахОстатки.ВНаличииОстаток, 0) КАК Остаток, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних_Розн.Цена, 0) КАК ЦенаРозн, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних_Закуп.Цена, 0) КАК ЦенаЗакуп ИЗ Справочник.ХарактеристикиНоменклатуры КАК СправочникХарактеристикиНоменклатуры {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВариантыКомплектацииНоменклатуры КАК ВариантыКомплектацииНоменклатуры ПО (ВариантыКомплектацииНоменклатуры.Владелец = &Владелец) И (ВариантыКомплектацииНоменклатуры.Владелец.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Набор)) И (ВариантыКомплектацииНоменклатуры.Характеристика = СправочникХарактеристикиНоменклатуры.Ссылка)} ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки ПО (ТоварыНаСкладахОстатки.Номенклатура = СправочникХарактеристикиНоменклатуры.Ссылка) ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ЦенаРозничная) КАК ЦеныНоменклатурыСрезПоследних_Розн ПО (ЦеныНоменклатурыСрезПоследних_Розн.Номенклатура = СправочникХарактеристикиНоменклатуры.Ссылка) ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ЦенаЗакупочная) КАК ЦеныНоменклатурыСрезПоследних_Закуп ПО (ЦеныНоменклатурыСрезПоследних_Закуп.Номенклатура = СправочникХарактеристикиНоменклатуры.Ссылка)
Может это как раз из-за отсутствия характеристик у некоторой номенклатуры?
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!