В 1С 8.3 появился такой механизм как дополнительные реквизиты. Он был разработан для того, чтобы любой пользователь не прибегая к помощи программистов мог самостоятельно добавить какую-то дополнительную информацию в элементы справочников.
Рассмотрим как добавить дополнительный реквизит в справочник номенклатуры на примере 1С УТ 11. Для остальных типовых конфигураций на 8.3 (Бухгалтерия 3.0, Розница 2.2 — 2.3 и др.) последовательность действий будет такой же.
Для начала открываем любой элемент нужного нам справочника — в данном случае номенклатуры. Находим на форме кнопку — «Еще» и в выпадающем списке выбираем пункт — «Изменить состав дополнительных реквизитов».
Дополнительный реквизит создание
После чего откроется форма в которой вы сможете увидеть все дополнительные реквизиты которые уже есть у вас в программе. В левой части окна будут справочники — владельцы дополнительных реквизитов. В правой части — сами дополнительные реквизиты. Нажимаем кнопку — «Создать».
Список дополнительных реквизитов
Откроется форма в которой мы должны задать все параметры нашего нового реквизита.
Форма создания реквизита
Рассмотрим что нам нужно здесь заполнить:
- Наименование — вписываете любое, которое отражает суть вашего нового реквизита;
- Тип значения — это то, какого вида значение будет содержаться в этом дополнительном реквизите, может быть число, строка, значение какого-то другого справочника или же одно из заданных вами заранее значений. Если вы хотите, чтобы в дальнейшем можно было выбирать значение этого реквизита из списка — выбирайте тип «Дополнительное значение».
- Если вы выбрали тип «Дополнительное значение» то дальше нужно перейти на вкладку «Значения» и нажимая кнопку «Создать», внести все необходимые варианты значения реквизита.
- Чтобы сохранить — нажимаете «Записать и закрыть».
Теперь можно открыть любой элемент номенклатуры и увидеть, что в разделе дополнительные реквизиты появился созданный нами реквизит.
Реквизит на форме
Добавление доп. реквизита в 1С. Второй способ.
Также список дополнительных реквизитов можно открыть через меню Администрирование/Общие настройки/Дополнительные реквизиты и сведения/Дополнительные реквизиты. Пройдя по этому пути вы увидите форму «Дополнительные реквизиты». Выбираете нужный справочник или документ. Нажимаете кнопку «Создать» и далее все так же как описано выше.
Теперь можно пользоваться этим реквизитом как и всеми остальными. Заносить в него значения, выводить в отчетах и тд.
Как вывести дополнительный реквизит в список номенклатуры, смотрите в отдельной статье.
Если номенклатуры у вас большое количество, занести сразу все значения в дополнительный реквизит может быть проблематично. Для этого можете воспользоваться моей внешней обработкой.
В новых редакциях программ 1С была существенно усовершенствована подсистема дополнительных реквизитов Дополнительные реквизиты и сведения. Эта подсистема дает возможность пользователю самим добавлять реквизиты и сведения к объектам программы не прибегая к помощи программиста.
Содержание
- Дополнительные реквизиты и сведения в 1С
- Настройка подсистемы Дополнительные реквизиты и дополнительные сведения на примере 1С 8.3 Бухгалтерия 3.0
- Добавление дополнительных реквизитов
- Добавление дополнительных сведений к форме
Дополнительные реквизиты являются неотъемлемой часть справочника, хранятся в самом объекте и отображаются на его форме. С их помощью описываются свойства объекта. После их настройки они появляются на форме объекта и становятся доступны для заполнения. Они доступны тем же пользователям, которым доступен и сам объект. Дополнительные реквизиты лучше использовать для отражения общедоступной информации.
Дополнительные сведения — не видны всем, они хранятся в регистре сведений и доступны по команде из элемента справочника или документа. Они вводятся в отдельном окне Дополнительные сведения, а также в формах списков документов и справочников и могут быть доступны для просмотра пользователям, доступ которым к объекту закрыт.
Настройка подсистемы Дополнительные реквизиты и дополнительные сведения на примере 1С 8.3 Бухгалтерия 3.0
Включить возможность создавать дополнительные реквизиты и сведения и настроить их можно в разделе Администрирование — Общие настройки. Для этого в подразделе Дополнительные реквизиты и сведения установите галочки, разрешающие добавлять эти элементы.
Добавление дополнительных реквизитов
Для добавления и настройки дополнительных реквизитов в 1С 8.3 перейдем по ссылке Дополнительные реквизиты. В окне перечислены объекты, к которым можем добавить реквизиты.
Для примера, создадим несколько дополнительных реквизитов к справочнику Номенклатура. Выберем элемент, к которому будем создавать реквизит (в нашем примере Номенклатура) и нажмем кнопку Добавить — Новый.
Для примера создадим Дополнительный реквизит, значения которого будут заданы и их необходимо будет выбрать из списка. Назовем его Доп. реквизит 1 (выбор значения). В открывшейся форме зададим его Наименование, Тип значения оставляем Дополнительный реквизит. При желании можно установить флажок Выводить в виде гиперссылки, соответственно в форме элемента данное поле будет представлено в виде гиперссылки. Настраиваем видимость, доступность и обязательность заполнения и по желанию заполнить следующие поля.
На вкладке Значения можем перечислить значения нашего реквизита, при этом значения можно объединять в группы. Например, Значение доп. реквизита 1, значение доп. реквизита 2, значение доп. реквизита 3.
Нажимаем Записать и закрыть и также сохраняем наш созданный реквизит.
Создадим еще один реквизит, назовем его Доп. реквизит — 2 (установка галочки). Для добавления реквизита галочка, флажок установим Тип реквизита — Булево. При смене реквизита меняются настройки формы. В данном случае нам предлагается установить настройки видимости и доступности, установить всплывающую подсказку.
Сохраняем реквизит, нажав кнопку Записать и закрыть.
Введем для примера еще один реквизит с Типом значения Строка (назовем его для примера Доп. реквизит — 3 (текст)).
Все настройки интуитивно понятны.
Так, при создании дополнительных реквизитов в 1С, при выборе Тип значения реквизита, мы можем использовать разные варианты и в зависимости от его выбора немного меняется настройка создаваемого реквизита.
Итак, мы создали три дополнительных реквизита к справочнику Номенклатура.
Посмотрим, как они отобразятся в форме элемента справочника. Откроем элемент справочника Номенклатура и зайдем в раздел Дополнительные реквизиты, внизу формы.
Мы видим, три наших добавленных реквизита. В первом реквизите — поле с кнопкой выбора значений, во втором — возможность установить галочку, в третьем — обычное текстовое поле и наши всплывающие подсказки, которые прописали в настройках.
При выборе значений первого реквизита, нажав кнопку Показать все, видим введенные нами его значения дополнительного реквизита. При этом, с помощью кнопки Создать можем эти значения добавлять непосредственно при работе со справочником.
Добавление дополнительных сведений к форме
Рассмотрим пример добавления дополнительных сведений в 1С 8.3. Для этого перейдем по ссылке Дополнительные сведения, в разделе Администрирование — Общие настройки — Дополнительные реквизиты и сведения. Выберем элемент для добавления сведений и нажимаем кнопку Создать — Новое.
Новый объект в предложенный список ввести нельзя. В списке отражены все документы и часть справочников, для которых можно добавить Дополнительные сведения. Дополнительные реквизиты можно добавить лишь к справочникам.
Добавление и настройка дополнительных сведений в 1С производится аналогично дополнительным реквизитам.
Для примера создадим одно дополнительное сведение для справочника Сотрудники, где выбор будет производится из справочника Физические лица, для указания лица, которому подчиняется данный сотрудник (назовем его просто Дополнительные сведения).
Откроем справочник Сотрудники и проверим добавление сведений. Эта информация скрыта из формы элемента и открывается нажатием кнопки Еще — Дополнительные сведения.
Выбрав этот пункт, мы можем добавить дополнительные сведения для данного элемента справочника, в данном примере выбрав из справочника Физические лица.
Аналогично можно добавить Дополнительные сведения и к документам. Окно ввода дополнительных сведений также будет доступно в кнопке Еще — Дополнительные сведения документа.
Данная команда доступна как из самого документа, так и из журнала документов.
См. также:
- Печать ценников в 1С
- Очистка кэш 1С 8.3
- Журнал регистрации в 1С 8.3
- Как сделать копию базы 1С 8.3
- Загрузка из Excel в 1С 8.3
- Как выгрузить документ, отчет из 1С 8.3 в Excel
Если Вы еще не являетесь подписчиком системы БухЭксперт8:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы по 1С Бухгалтерия, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.
Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
В первую очередь давайте разберем, зачем разделять дополнительные реквизиты по видам номенклатуры. К примеру, Вы продаете холодильники и телевизоры. И каждый вид товара имеет свои свойства: холодильники различаются по конструкции, габаритам, количеству полок в морозильной камере. А телевизоры разделяются по типу матрицы, диагонали, разрешению. И Вам для подбора товара при продаже необходимо учитывать все эти свойства. Именно для этих целей Вы можете использовать дополнительные реквизиты.
Добавляем новый дополнительный реквизит для вида номенклатуры
Добавить новый дополнительный реквизит можно прямо в списке номенклатуры. Для этого включите фильтрацию по видам номенклатуры и двойным кликом откройте нужный вид номенклатуры:
В открывшемся окне вида номенклатуры перейдите на страницу «Доп. реквизиты» и выберите «Добавить» => «Новый для вида». Таким образом мы будем создавать новый дополнительный реквизит для вида номенклатуры.
В форме нового дополнительного реквизита Вам нужно указать его наименование и тип значения. К примеру, если Вы хотите в качестве типа использовать определенный набор значений, выберите тип «Дополнительное значение». При этом Вы сможете задавать и в любой момент изменять варианты значений для этого дополнительного реквизита. В этом примере мы создаем дополнительный реквизит для вида номенклатуры «Телевизоры» и назовем его «Технология». В этом реквизите будет фиксироваться технология матрицы, установленной в телевизоре:
Запишем реквизит и перейдем на страницу «Значения». На этой странице можно задать список вариантов значений для этого дополнительного реквизита. Давайте заполним значения:
Таким образом мы создали новый дополнительный реквизит и сразу заполнили для него варианты значений. Теперь можно переходить к установке значений этого реквизита в рамках номенклатуры.
Устанавливаем значения дополнительных реквизитов
В этой записи мы рассмотрим два варианта установки значений для добавленных реквизитов номенклатуры. Первый вариант — стандартный с использованием типового функционала. Для установки значений откройте карточку номенклатуры на странице «Реквизиты» и найдите нужный дополнительный реквизит. В поле ввода укажите значение для этого дополнительного реквизита и запишите номенклатуру:
Второй вариант — используем расширение «Помощник продаж» и выводим дополнительные реквизиты прямо в список номенклатуры. Установка значений дополнительных реквизитов выполняется в 2 клика:
Таким образом, с использованием этого расширения конфигурации Вы сможете быстро заполнять значения дополнительных реквизитов а также в удобной форме организовывать просмотр их значений в списках номенклатуры.
Мы постарались очень кратко и наглядно показать Вам пример создания дополнительного реквизита и установку его значения. Если есть вопросы — задавайте их в комментариях ниже!
Наши разработки:
Добавление дополнительных реквизитов в БП 3.0
Дополнительные реквизиты и сведения могут быть использованы в программе 1С Бухгалтерия предприятия 3.0 для описания дополнительной информации об объектах учета.
Дополнительные реквизиты создаются для добавления информации в элементы справочника или документы и это будет неотъемлемая часть этого объекта.
Дополнительные сведения – это информация, которая не является частью документа, а хранятся в специальном регистре.
Про создание дополнительных сведений читайте в нашей инструкции.
Для настройки доп. реквизитов в 1С 8.3 перейдите в раздел Администрирование — Общие настройки – Дополнительные реквизиты и сведения и установите галку «Дополнительные реквизиты и сведения». После этого перейдите рядом по гиперссылке «Дополнительные реквизиты».
В открывшемся окне найдите нужный вам элемент, куда необходимо добавить значения дополнительных реквизитов (в данном примере это Номенклатура). Выдерите этот элемент и нажмите кнопку «Добавить» — Новый. Если у вас уже создан дополнительный реквизит в другом наборе и вы хотите добавить его данному набору, то выбирайте вариант «Из другого набора…»
Откроется окно создания дополнительного реквизита, где указывается наименование этого реквизита, и тип значения.
Типы значений дополнительных реквизитов и сведений:
Строка – доп реквизит в виде текста.
Число – числовой формат.
Дата — Дата, Время или Дата и Время. Для дополнительных реквизитов можно задать формат даты, для этого перейдите по ссылке Формат по умолчанию.
Составной тип данных — этот тип значения предоставляет возможность окончательно выбрать тип данных уже при вводе информации в справочник. Включите флажок Составной тип данных, затем включите флажки для типов значений, из которых можно будет выбирать. При вводе значений дополнительных реквизитов (сведений) составного типа данных сначала предлагается выбрать тип данных.
Булево — обычно это установка галочки.
Дополнительное значение – выбор значений из списка.
Дополнительное значение (иерархия) — элементы в таком списке имеют одинаковые свойства, но могут иметь подчиненные элементы. При этом иерархия может быть довольно сложной.
Пользователь – выбор значения из списка Пользователи (и других списков) в качестве дополнительного реквизита (сведения).
Также можно выбрать, что доп.реквизит будет отображаться в виде гиперссылки.
Ниже заполняются общие настройки: кому виден, всегда ли виден, обязателен ли для заполнения, всплывающие подсказки и т.п.
Во кладке «Значения» указываются варианты выбора, если они предусмотрены согласно типу значения реквизита.
После настройки дополнительного реквизита нажмите кнопку «Записать и закрыть» и можете переходить к проверке.
Перейдем в справочник Номенклатура и проверим действие настроенного доп.реквизита.
Данный дополнительный реквизит можно использовать для настройки отчетов в программе:
(Рейтинг:
0 ,
Голосов: 0 )
Материалы по теме
Если необходимо добавить дополнительный реквизит для группы товаров или для всех товаров справочника «Номенклатура», то нужно выполнить следующие действия:
- Меню: НСИ и Администрирование – Администрирование — Общие настройки — Дополнительные реквизиты и сведения.
- Установите флажок «Дополнительные реквизиты и сведения» и нажмите гиперссылку «Дополнительные реквизиты».
- Через кнопку «Добавить» создайте новый дополнительный реквизит и укажите его параметры.
- Кнопка «Записать и закрыть».
Помогите с запросом… Доп реквизиты Номенклатуры |
Я |
29.06.21 — 13:11
Всем добрый день.
Подскажите в тупике.
1С Розница.
Справочник Номенклатура.
У номенклатуры 8 доп реквизитов. (Важно что их конечное число).
Хочу найти запросом все товары у которых 7 известных мне конкретных реквизитов совпадают. (допустим мне известен один товар — из него эти 7 доп.реквизитов беру).
Все доп.реквизиты обязательны к заполнению…
1 — 29.06.21 — 13:14
Верно понимаю что должно быть 7 уровней вложенных запросов.
Первым нахожу все товары у которых совпадает Доп.свойство 1
Второым нахожу все товары среди результатов 1 запроса у которых совпадает Доп.свойство 2
и т.д.
????
2 — 29.06.21 — 13:14
Че-то мне кажется какой-то огород горожу…
3 — 29.06.21 — 13:17
соединить по равенству свойств, а потом сгруппировать по ссылке. <!>Имеющие<!> 7 совпадений — искомые элементы
4 — 29.06.21 — 13:18
«ВЫБРАТЬ
| НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
| МАКСИМУМ(ВЫБОР
| КОГДА НоменклатураДополнительныеРеквизиты.Свойство = &Реквизит1
| ТОГДА НоменклатураДополнительныеРеквизиты.Значение
| КОНЕЦ) КАК Реквизит1,
| МАКСИМУМ(ВЫБОР
| КОГДА НоменклатураДополнительныеРеквизиты.Свойство = &Реквизит2
| ТОГДА НоменклатураДополнительныеРеквизиты.Значение
| КОНЕЦ) КАК Реквизит2
|ПОМЕСТИТЬ Реквизиты
|ИЗ
| Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
|
|СГРУППИРОВАТЬ ПО
| НоменклатураДополнительныеРеквизиты.Ссылка
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| Реквизиты.Ссылка КАК Ссылка
|ИЗ
| Реквизиты КАК Реквизиты
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Реквизиты КАК Реквизиты1
| ПО Реквизиты.Реквизит1 = Реквизиты1.Реквизит1
| И Реквизиты.Реквизит2 = Реквизиты1.Реквизит2″
5 — 29.06.21 — 13:18
так решил…
ВЫБРАТЬ
ВложенныйЗапрос.Ссылка КАК Ссылка,
СУММА(ВложенныйЗапрос.Поле1) КАК Поле1
ИЗ
(ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
1 КАК Поле1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеТовар
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка,
1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеБренд
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка,
1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеБренд
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка,
1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеСостав
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка,
1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеЦвет
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка,
1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеСостав
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка,
1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение = &ЗначениеАртикул) КАК ВложенныйЗапрос
СГРУППИРОВАТЬ ПО
ВложенныйЗапрос.Ссылка
УПОРЯДОЧИТЬ ПО
Поле1 УБЫВ
6 — 29.06.21 — 13:19
Добавил доп поле = 1 в каждом.
Потом выбираю только те у которых Поле1 = 8
7 — 29.06.21 — 13:26
(4) с одной стороны прикольно, с другой стороны: почему тогда не просто 2 (или N) левых соединения? Вроде методически более верно и не сильно более громоздко
8 — 29.06.21 — 13:42
а так не правильно? (я плохо знаю запросы знаю mysql Но и там задумался (
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| Номенклатура.Ссылка
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| Номенклатура.Артикул = Номенклатура.Артикул
| И Номенклатура.АлкогольнаяПродукция = Номенклатура.АлкогольнаяПродукция
| И Номенклатура.Наименование = Номенклатура.Наименование»;
9 — 29.06.21 — 13:47
+(8) у меня сработало
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| Тест.Ссылка КАК Ссылка,
| Тест.ВерсияДанных КАК ВерсияДанных,
| Тест.ПометкаУдаления КАК ПометкаУдаления,
| Тест.Код КАК Код,
| Тест.Наименование КАК Наименование,
| Тест.А КАК А,
| Тест.Б КАК Б,
| Тест.С КАК С,
| Тест.Д КАК Д,
| Тест.Предопределенный КАК Предопределенный,
| Тест.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
|ИЗ
| Справочник.Тест КАК Тест
|ГДЕ
| Тест.А = Тест.А
| И Тест.Б = Тест.А
| И Тест.С = Тест.А
| И Тест.Д = Тест.А»;
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
а = «»;
КонецЦикла;
10 — 29.06.21 — 13:48
(8) у тебя все условия заведомо Истина (для не групп)
11 — 29.06.21 — 13:48
+(9) выдало все элементы у которых в реквизитах
А, Б, С, Д одинаковые значения
12 — 29.06.21 — 13:51
(10) а что у меня не верно? то?
оно работает далее поместить результат в массив и соединением выдрать ссылки на владельца этих доп реквизитов?
13 — 29.06.21 — 13:53
ВЫБРАТЬ
СравниваемаяНоменклатура.Ссылка КАК Номенклатура
ПОМЕСТИТЬ НесовпадающиеНоменклатуры
ИЗ Справочник.Номенклатура.ДополнительныеРеквизиты КАК ОсновнаяНоменклатура
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СравниваемаяНоменклатура
ПО ОсновнаяНоменклатура.Ссылка <> СравниваемаяНоменклатура.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК ДанныеСравниваемойНоменклатуры
ПО СравниваемаяНоменклатура.Ссылка = ДанныеСравниваемойНоменклатуры.Ссылка
И ОсновнаяНоменклатура.Свойство = ДанныеСравниваемойНоменклатуры.Свойство
И ОсновнаяНоменклатура.Значение = ДанныеСравниваемойНоменклатуры.Значение
ГДЕ
ОсновнаяНоменклатура.Ссылка = &НашаНоменклатура
И ДанныеСравниваемойНоменклатуры.Ссылка ЕСТЬ NULL
;
ВЫБРАТЬ
СпрНоменклатура.Ссылка
ИЗ Справочник.Номенклатура КАК СпрНоменклатура
ЛЕВОЕ СОЕДИНЕНИЕ НесовпадающиеНоменклатуры КАК НесовпадающиеНоменклатуры
ПО СпрНоменклатура.Ссылка = НесовпадающиеНоменклатуры.Номенклатура
ГДЕ
НесовпадающиеНоменклатуры.Номенклатура ЕСТЬ NULL
14 — 29.06.21 — 13:53
(13)
Как-то так. Идея я думаю ясна
15 — 29.06.21 — 13:54
(5)
а если так?
ВЫБРАТЬ
НоменклатураДополнительныеРеквизиты.Ссылка КАК Ссылка,
СУММА(1) КАК Поле1
ИЗ
Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
ГДЕ
НоменклатураДополнительныеРеквизиты.Значение В (&СписокЗначений)
СГРУППИРОВАТЬ ПО
НоменклатураДополнительныеРеквизиты.Ссылка
ИМЕЮЩИЕ СУММА(1) = 8
16 — 29.06.21 — 13:54
(12) У ТСа совсем другая задача
17 — 29.06.21 — 13:55
(16) да я видимо не понял задачу
18 — 29.06.21 — 14:06
(13) возможно сработает.
Только есть нюансы:
1. прикладной: у ТСа свойств всего 8, а совпадать должно 7
2. более принципиальный: что будет если у элемента не будет допреквизита? Есть подозрение, что он попадёт в выборку
19 — 29.06.21 — 14:09
(18) 2) Будет. Заполнение доп.реквизита обязательно!
Сделал по своему…
Только долго работает запрос…
20 — 29.06.21 — 14:14
(18)
Как задача стоит?
Любые 7? Тогда да, мой подход неправильный. Но тогда (6) вообще непонятно к чему
Конкретные 7? Ставим отбор в первой таблице на свойство
У номенклатуры всего 7 из 8? Тогда все правильно.
Я думаю, что задача стоит получить все номенклатуры с такими же свойствами, как и у заданной. Такая задача логична. Единственный вопрос. Если у заданной будет 4 свойства, а у какой-то 5, эта какая-то должна в выборку попадать?
21 — 29.06.21 — 14:16
(19) Заполнение доп.реквизита обязательно!
Ага и у групп и услуг?
(20) Если у номенклатуры не будет ни одной записи ДР (например у групп) — она попадёт в твою выборку?
22 — 29.06.21 — 14:17
(21)
Нет, она попадет в первую таблицу
23 — 29.06.21 — 14:24
(22) ОК.
И даже 8 раз)) Имеет смысл «различные» добавить, а может и не повлияет ни на что.
24 — 29.06.21 — 14:27
(23)
Не повлияет. Во втором запросе проверка на нулл. Туда только те, что не в первой таблице.
Можно поставить конечно. Можно и на один запрос переписать, только тогда следующий программист вообще не поймет как это работает
25 — 29.06.21 — 14:37
(21) А причем тут Группы?
У них нет ТЧ «ДополнительныеРеквизиты».
Да и групп у меня нет и не будем в этой базе.. Все живет в доп.реквзитах замечтаельно. Еще и по группам их раскладывать???
(20) У доп.свойства в рознице есть признак обязательности заполнения. У меня все заполнены. 100%
Спасибо всем за помощь.
Процентов на 60% помогли. Самое важно — натолкнули на мысль! За это СПАСИБО!
26 — 29.06.21 — 14:45
(25)
Покажи, что налабал. А то терзают смутные сомнения
27 — 29.06.21 — 14:56
см (5)
через задницу… но
28 — 29.06.21 — 15:10
(27)
Это очень мягко сказано.
В общем случае, если типы свойств будут разные, то твой запрос будет выдавать непонятные значения
29 — 29.06.21 — 15:18
(28) Типы свойств всегда справочник «Дополнительные свойства».
Одно плохо = долго работает.
Несколько секунд (5-7) запрос выполняется.
потом переделаю…
30 — 29.06.21 — 15:41
(29)
Смотри, например у тебя есть свойства (условно) «длина» и «ширина»
У твоей номенклатуры длина 10, ширина 5
У другой номенклатуры ширина 10, длина 5
Что выдаст твой запрос?
31 — 29.06.21 — 16:22
(30) С ума сойти… Меня пытаетесь запутать? Зачем? Пишите правильно:
Ш10 Д5
Ш5 Д10
Прчием тут мой запрос. У меня в запросе строго будет
(ШИРИНА = &ВыбШИРИНА)
(ДЛИНА = &ВыбДлина)
И не важно в каком порядоке Вы их в своем вопросе написали :))))))
У меня строго 8 доп.реквизитов
У меня есть товар, в котором у меня все известно (БРЕНД,СОСТАВ,ТИПТОВАРА,ЦВЕТ, МОДЕЛЬ и т.д)
Восьмое свойство РАЗМЕР.
Я своим запросом зная, эти 7 доп.реквизитов (из одного товара) — нахожу все такие же товары всех размеров!
Задачу я решил.
32 — 29.06.21 — 16:36
наиболее логично сделать 7 внутренних соединений с основой таблицей номенклатур и далее на закладке отборов наложить фильтр на эти реквизиты
33 — 29.06.21 — 16:37
А если это не доп.реквизиты, а части одного реквизита, подстроки?
34 — 29.06.21 — 16:59
(30) там разные ссылки будут, так как (29)
(5) для общего случая — в каждый подзапрос отбор по свойству добавить (если не только доп.свойства),
если только допсвойства, то и (15) должно работать
и зачем у тебя сортировка вместо ИМЕЮЩИЕ СУММА(Поле1) = 7?
35 — 29.06.21 — 17:09
(31)
У тебя в (5) ничего такого не написано.
Решил, то и решил. Но я бы порекомендовал тебе проверить свое решение на вариантах, когда значения совпадают, но они не у тех свойств.
36 — 29.06.21 — 17:12
у допреквизитов поле имя есть по которому удобно в запросах
37 — 29.06.21 — 17:21
(34) Сортировка это пережиток КонсолиЗапросов (отладка) — так вывел себе наверх в результате наиболее часто встречающиеся. Попробовал на десятке разных наборов. Понял что работает… и переделал на ИМЕЮЩИЕ.
Тут поспешил…
38 — 29.06.21 — 17:22
(35) Так не может быть! так как (29)
m1_1976
39 — 29.06.21 — 17:23
Еще раз спасибо.
тему можно закрыть.