Вход | Регистрация



СКД. Запрос вкладка компоновка данных.

СКД. Запрос вкладка компоновка данных.
Я
   john_ddd
 
25.09.17 - 15:44
Кто знает как сделать чтобы СКД автоматом не ставил отбор ко всем таблицам запроса?
К примеру:
запрос состоит из двух пакетов: Временная таблица и выборка данных из этой временной таблицы.
В предприятии делаем отбор. СКД ставит отбор к временной таблице и в выборки уже этих данных нет. Можно принудительно запретить делать отбор к первой таблице а разрешит ко второй?
 
 
   rabbidX
 
1 - 25.09.17 - 15:46
Сделайте отбор в запросе.
   john_ddd
 
2 - 25.09.17 - 15:48
(1)скд всеравно свой отбор добавит
   rabbidX
 
3 - 25.09.17 - 15:53
Куда добавит? Во втором запросе пакета пропишите
 ГДЕ Номенклатура В Иерархии(&СписокГрупп) ИЛИ &БезОтбораПоНоменклатуре 
Реквизит НоменклатураДляОтбора на форму. В процедура ПриКомпановкеРезультата задать параметры
   john_ddd
 
4 - 25.09.17 - 16:02
(3)&СписокГрупп я установил группу "Гвозди"
Но во втором запросе в полях прописано если "Гвозди" тогда "Шурупы"
Но если в предприятии ставят отбор Номенклатура <> "Гвозди"
то ничего не выведет. А я хотел бы "Шурупы"
   DrShad
 
5 - 25.09.17 - 16:08
собралось два знатока *рукалицо*
   DrShad
 
6 - 25.09.17 - 16:09
галку автозаполнения сними и пропиши сам поле отбора только ко второй своей таблице и будет тебе счастье
   Ненавижу 1С
 
7 - 25.09.17 - 16:11
Переименуй во временной таблице отборы в СКД
   rabbidX
 
8 - 25.09.17 - 16:40
(6) в (3) то же самое, но проще.
(4) Вы накладываете отбор на поле
Выбор Когда Номенклатура = &Гвозди Тогда &Шурупы Иначе Номенклатура Конец Как Номенклатура
Вам нужно условие и исходной Номенклатурой.
   john_ddd
 
9 - 25.09.17 - 16:42
(6) а где эта галочка? где в СКД где поля прописаны?
(7) а это как?
   DrShad
 
10 - 25.09.17 - 16:43
запрос свой покажи из набора данных
 
 Рекламное место пустует
   john_ddd
 
11 - 25.09.17 - 16:51
(10)
ВЫБРАТЬ
    Продажи.Контрагент,
    Продажи.Количество
ПОМЕСТИТЬ ВТ
ИЗ
    РегистрНакопления.Продажи КАК Продажи
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВЫБОР
        КОГДА ВТ.Контрагент.ГоловнойКонтрагент = ЗНАЧЕНИЕ(справочник.Контрагенты.пустаяссылка)
            ТОГДА ВТ.Контрагент
        ИНАЧЕ ВТ.Контрагент
    КОНЕЦ КАК Контрагент,
    ВТ.Количество
ИЗ
    ВТ КАК ВТ
   john_ddd
 
12 - 25.09.17 - 16:52
ВЫБРАТЬ
    Продажи.Контрагент,
    Продажи.Количество
ПОМЕСТИТЬ ВТ
ИЗ
    РегистрНакопления.Продажи КАК Продажи
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВЫБОР
        КОГДА ВТ.Контрагент.ГоловнойКонтрагент = ЗНАЧЕНИЕ(справочник.Контрагенты.пустаяссылка)
            ТОГДА ВТ.Контрагент
        ИНАЧЕ ВТ.Контрагент.ГоловнойКонтрагент
    КОНЕЦ КАК Контрагент,
    ВТ.Количество
ИЗ
    ВТ КАК ВТ
   DrShad
 
13 - 25.09.17 - 16:54
во-первых где тут СКД-ные отборы, а во вторых у тебя отбор и может быть по номенклатуре только на первой таблице
   DrShad
 
14 - 25.09.17 - 16:56
и кто вас учил так запросы писать? каков гениальный смысл использования ВТ и обращения к физической таблице РН?
   rabbidX
 
15 - 25.09.17 - 17:00
(12) Т.е. Вы хотите, чтобы после отбора у в поле Контрагент вывелся Головной контрагент, а в поле количество - продажи по одному из предприятий холдинга. Это же некорректные данные.
   DrShad
 
16 - 25.09.17 - 17:01
http://SSMaker.ru/9fdf3bc1/

галочка внизу
   john_ddd
 
17 - 25.09.17 - 17:02
(15)это упрощенный запрос..у меня огромный
   DrShad
 
18 - 25.09.17 - 17:03
(17) тем более в топку его, раз уж на упрощенном вы не пользуетесь возможностями СКД
   john_ddd
 
19 - 25.09.17 - 17:03
(16) мне нужно подменить контрагента на головного
   DrShad
 
20 - 25.09.17 - 17:03
(19) и в чем проблема сделать это в первом же запросе, без использования никому не нужной ВТ?
   rabbidX
 
21 - 25.09.17 - 17:09
(19) Самый простой вариант. Выведите в запросе два поля ГоловнойКонтрагент и Контрагент. В группировки суйте головного контрагента, а в отборы обычного.
   john_ddd
 
22 - 25.09.17 - 17:11
(21) а можно чтобы мой запрос заработал? из (12)
   DrShad
 
23 - 25.09.17 - 17:14
(22) нет
   rabbidX
 
24 - 25.09.17 - 17:14
(22) Запрос из (12) Вам не нужен, так ведь?
Давайте свой огромный.
   john_ddd
 
25 - 25.09.17 - 17:16
(24) в огромном тоже самое...просто куча еще разных соединений с другими таблицами
   DrShad
 
26 - 25.09.17 - 17:17
ВЫБРАТЬ
    ПродажиОбороты.Контрагент КАК Контрагент,
    ПродажиОбороты.КоличествоОборот КАК КоличествоОборот,
    ПродажиОбороты.Номенклатура
ПОМЕСТИТЬ ВТ
ИЗ
    РегистрНакопления.Продажи.Обороты({(&НачалоПериода)}, {(&ОкончаниеПериода)}, , ) КАК ПродажиОбороты
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВТ.Контрагент КАК Контрагент,
    ВТ.КоличествоОборот КАК КоличествоОборот
{ВЫБРАТЬ
    Контрагент.*,
    КоличествоОборот}
ИЗ
    ВТ КАК ВТ
{ГДЕ
    ВТ.Номенклатура.*}
   DrShad
 
27 - 25.09.17 - 17:18
вот так будет отбор только по второй таблице
   john_ddd
 
28 - 25.09.17 - 17:22
(26) нету подмены контрагента на головного
   DrShad
 
29 - 25.09.17 - 17:22
(28) мля, сам пропиши
   john_ddd
 
30 - 25.09.17 - 17:40
(29) спасибо. понял куда копать, но с заменой вся то и фигня
   DrShad
 
31 - 25.09.17 - 22:28
(30) фигня не с заменой, а с такими разработчиками
   john_ddd
 
32 - 26.09.17 - 11:42
вот так заработало:

ВЫБРАТЬ
    ПродажиОбороты.Контрагент КАК Контрагент,
    ПродажиОбороты.КоличествоОборот
ПОМЕСТИТЬ ВТ
{ВЫБРАТЬ
    Контрагент.* КАК Контрагент2}
ИЗ
    РегистрНакопления.Продажи.Обороты(&КонецПериода, &НачалоПериода, , {(Контрагент) КАК Контрагент2}) КАК ПродажиОбороты
ГДЕ
    НЕ ПродажиОбороты.Контрагент = &ПустКонтрагент
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВЫБОР
        КОГДА ВТ.Контрагент.ГоловнойКонтрагент = ЗНАЧЕНИЕ(справочник.Контрагенты.пустаяссылка)
            ТОГДА ВТ.Контрагент
        ИНАЧЕ ВТ.Контрагент.ГоловнойКонтрагент
    КОНЕЦ КАК Контрагент,
    СУММА(ВТ.КоличествоОборот) КАК КоличествоОборот
ИЗ
    ВТ КАК ВТ
{ГДЕ
    (ВЫБОР
            КОГДА ВТ.Контрагент.ГоловнойКонтрагент = ЗНАЧЕНИЕ(справочник.Контрагенты.пустаяссылка)
                ТОГДА ВТ.Контрагент
            ИНАЧЕ ВТ.Контрагент.ГоловнойКонтрагент
        КОНЕЦ).* КАК Контрагент}

СГРУППИРОВАТЬ ПО
    ВЫБОР
        КОГДА ВТ.Контрагент.ГоловнойКонтрагент = ЗНАЧЕНИЕ(справочник.Контрагенты.пустаяссылка)
            ТОГДА ВТ.Контрагент
        ИНАЧЕ ВТ.Контрагент.ГоловнойКонтрагент
    КОНЕЦ
   DrShad
 
33 - 26.09.17 - 11:49
и что заработало?
 
 


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует