Имя: Пароль:
1C
 
СКД. Автоматическое указание параметра &П при добавлении отбора
0 DIvanmgn
 
24.10.14
08:32
Здравствуйте.

В запросе 10 виртуальных таблицы остатков.

При добавлении отбора СКД добавляет параметр &П в результирующий запрос.
А именно в параметры виртуальных таблиц.

В одной нужен этот параметр а в остальных нет. Как объяснить СКД, чтобы она не трогала вторую виртуальную таблицу?

Пока вижу СтрЗаменить или другое насилие над результирующим запросом.
Ищу более грамотный подход.
1 Defender aka LINN
 
24.10.14
08:53
Попытаться хотя бы немного выяснит про СКД перед тем, как туда лезть немытыми руками - не предлагать?
Убери Автозаполнение
2 DIvanmgn
 
24.10.14
08:55
(1) В СКД в качестве источников используется несколько наборов. Убрать автозаполнение можно, но вот добавить поля не получается - кнопка добавления неактивна. ЧЯДНТ?
3 DIvanmgn
 
24.10.14
08:56
(1) помыл руки )

нашел.. копаю дальше..
4 DIvanmgn
 
29.10.14
10:58
Докопался.. устал.. нужна помощь..

Опишу ситуацию полностью. Может кто что посоветует?

Задумал использовать общий макет СКД для получения одних и тех же данных (для планирования закупа). Например такие данные как остаток на начало текущего месяца, товары в пути, неликвидный товар, продажи прошлых 6 месяцев за каждый месяц отдельно.

Все это нужно выводить в виде дерева, в разрезе основных свойств характеристик. Основные свойства характеристик задаются в периодическом регистре сведений.

Отбирать нужно по подразделению и периоду. Когда выяснилось, что иногда отбирать нужно по складу, тут я встрял.

Если использовать автозаполнение, то там где я получаю товары в пути, в виртуальную таблицу остатков запихивается параметр с неправильным складом. То есть у подразделения есть два склада - "земля" и "в пути". Добавляю отбор "земля" в виртуальную таблицу прописывается эта земля, а нужно в пути.

Обошел следующим образом:
Добавил набор данных и в пути получал уже там. Убрал там автозаполнение и все получилось. До тех пор пока не наложил общий отбор по количеству. Добавил группу "ИЛИ" а в ней "В Пути >0 , НачальныйОстаток >0". Тут у СКД стало сносить башню. Причем в консоли все ок, а если программно обращаться к СКД то на этапе КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки) 1С стала говорить что у меня проблемы с отбором.

Причем если убрать отбор в пути или убрать отбор по начальному остатку, все ок. но вместе не работает.

Дальше рассудил так. Если подразделение параметр, то пусть и склад будет параметром. Прописал его во временных таблицах используя {Где ***.Склад = &Склад}.

Но получается, что убрав автозаполнение, я лишился оптимизатора. В случае если пользователь использует какой-то доп отбор, то в результирующем запросе этот отбор будет только на конечной таблице. Во всех временных таблицах отбора не будет.

Или я занимаюсь ерундой пытаясь оптимизировать. Или дошел до необходимого уровня. Или чтобы понять дошел или не дошел, нужно мерить.

Прошу совета. Как бы вы поступили на моем месте?
5 DIvanmgn
 
29.10.14
11:42
Уже на 3-ю страничку ушла тема (
6 DexterMorgan
 
29.10.14
11:54
Фига се
7 DexterMorgan
 
29.10.14
11:55
Ну установи явно параметры там где тебе нужно