#0
by ladalk
Добрый день, есть несколько списков, состоящих из значений свойств справочника "характеристики номенклатуры". В каждом из списков могут быть выбраны несколько значений (а может быть и не одного) (заполняем значения характеристик номенклатуры). Нужно получить все возможные варианты соединения значений. Самое простое решение - это идти по первому списку, потом заходить во второй, затем в третий. Еще, как вариант, записать три массива с выбранными значениями, но опять же надо будет перебирать. Значений немного, на производительности не скажется, но хочется оптимизировать. Может кто подскажет, каким образом можно это сделать?
#1
by Лефмихалыч
самое простое решение для получения всех вохможных комбинаций - это все-таки декартово произведение в запросе
#2
by ladalk
поскольку значения выбираются с формы, в запросе необходимо использовать временную таблицу?
#7
by Лефмихалыч
ну, ты же на форму значения не из воздуха собираешь. Или их туда пользователь руками долбит? держи
#11
by ladalk
получается, что на каждый список делать ТЗ, передавать их в запрос (если они не пустые) и там ВЫбрать с исполозованием полного соединения?
#12
by Garykom
Зависит от цели построения таких сочетаний ЗЫ это что еще за конструктор номенклатуры из Челябинска? :)
#14
by Лефмихалыч
в общем - да. Еще можно сделать одну общую ТЗ, ее передать в запрос, а остальные набрать уже из нее уже запросами, но суть-то та же.
#16
by Лефмихалыч
в общем-то я с согласен - ощущение, что ты пытаешься техническими средствами решить организационную задачу. Редко когда нужны все возможные сочетания. Просто потому, что продаются не все возможные, а толлько востребованные. С этой стороны - может лучше как-то очеловечить эту механизьму. Но тебе видней.
#17
by ladalk
суть в том, чтобы облегчить работу человеку, которой забивает поступления сотни пар обуви - для одной модели несколько цветов, размеров и тд. Человек тыкает в те строки, который соответствуют поступлению, например сезон зима; цвет черный, красный; размер 37,38,39, а на выходе получаем номенклатуру с характеристиками "зима, черный, 37", "зима, красный, 37", "зима, черный, 38", "зима, красный, 38" и т.д.
#18
by Garykom
а количество каждой как указать? или это только для автосоздания номенклатуры? может лучше заюзать ТЧ, сделать копирование строк и менять параметры для новой строки? смысл 1 заполненная строка = 1 номенклатура, вместо 1 строку заполнили и все сочетания параметров перебрали и кучу номенклатуры наплодили
#19
by MishaD
идея то интересная, а если номенклатуры с каким-то размером не окажется. Например красной 38. характеристика то все равно создастся.
#20
by ladalk
количество в документе поступления будет. "и все сочетания параметров перебрали" - вот как это сделать?
#21
by ladalk
вот пользователь и отмечает, что нужно создавать. Если нет у номенклатуры какой-то позиции характеристики - пользователь не отмечает, и, соответственно, не создается
#23
by Garykom
это по желанию, суть без перебора сочетаний обойтись пусть оператор сам сочетания указывает а то будет Да получить от поставщика электронную накладную и распарсить ее никак?
#25
by Лефмихалыч
да в целом - как-то это через жопу. Номенклатурные позиции эти на самом деле известны гораздо раньше прихода. Они известны в момент формирования заказа поставщику и в этот же момент должны быть уже закодированы в базе. Оператор, забивающий приход, должен выбирать уже из имеющихся. Иначе потом хрен вы поймете, был пересорт/недовоз/перевоз или это про на складе все спёрли и перепутали.
#29
by ladalk
а еще вопрос: есть ли возможность ввести какое-то значение с клавиатуры? т.е. в диалоговом окне.
#31
by mistеr
>Значений немного, на производительности не скажется, но хочется оптимизировать. Вот здесь и нужно собрать волю в кулак и остановить себя.
#32
by Мэс33
Тут двояко. - можно остановиться, так как выхлопа как такого не будет. Никто и не поймет подвигов ТС, и материально его труд не будет достойно вознагражден; - не надо останавливаться. Сейчас решит эту проблему на маленькой не критической задаче пока есть время, а потом в другом месте эти знания пригодятся.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Ошибка захвата таблицы 1sjourn.dbf, как её избежать ?
- Как в запросе избежать несоответствие типов
- Неизвестное количество вложенных циклов
- УПП 8.1. Учет в тоннах. Требуют 4 знака после запятой. Как можно избежать?
- СКД: положение вложенных колонок
- Автовыделение первой строки в ТЧ, как избежать
- Вывод вложенных схем СКД в разные таб. документы?
- v8: Поля из различных вложенных таблиц используются в одном результирующем поле
В этой группе 1С
- Тормозит RLS в 1С:Документооборот
- Максимальное число подключений к сетевой папке на разных версиях windows prof
- Поддержка БП 2.0
- Запрос невозможно исполнить. Длина шаблона поиска превышает ...
- Загрузить исходящие письма из OUTLOOK через COM "Outlook.Application"!
- Перехват на JS кнопок "Назад" и "Вперед" в браузере?
- Программное открытие формы выбора номенклатуры УНФ 1.6
- 1C Api Intime
- УТ11 - отражение эквайринговых операций
- Как передать файл через WinHttpRequest
- Авансовый отчет и НДС непринимаемый к зачету
- В чеке ккм из рмк розница 2.1 не выводит строку начислено бонусов
- Свертка базы УТП
- Ширина группы колонок табличной части
- Вопрос по КД. Передача значений из одного ПКС в другое
- Динамический список без основной таблицы
- Ошибка при синхронизации УТ-Розница при прямом подключении
- УТ 11.1 РИБ. Подвисает вся система при обмене в центральной базе.
- 1с кд универсальная выгрузка xml
- Регламентное задание обмена с сайтом УТ 11