Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: подскажите, подалуйста почему не попадают в результат данные из левой таблицы
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Система компоновки данных
lolmatrix
ВЫБРАТЬ
    Год2020.ВидУслуги КАК ВидУслуги,
    ЕстьNULL(Год2020.СуммаПриход, 0) КАК СуммаПриход2020,
    Год2020.МесяцРасчета КАК МесяцРасчета,
    ЕСТЬNULL(Год2021.СуммаПриход, 0) КАК СуммаПриход2021
ИЗ
    РегистрНакопления.РасчетыЗаУслуги.Обороты(, , , ГОД(МесяцРасчета) = &ПервыйГод) КАК Год2020
        Левое СОЕДИНЕНИЕ РегистрНакопления.РасчетыЗаУслуги.Обороты(, , , ГОД(МесяцРасчета) = &ВторойГод) КАК Год2021
        ПО Год2020.ВидУслуги = Год2021.ВидУслуги
            И (МЕСЯЦ(Год2020.МесяцРасчета) = МЕСЯЦ(Год2021.МесяцРасчета))

УПОРЯДОЧИТЬ ПО
    МесяцРасчета

подскажите пожалуйста почему не попадают в результат те месяцырасчета которые есть в левой таблице и нет в правой, а при внутреннем соединении, не попадают те что совпали
заранее благодарен
Vofka
lolmatrix, левая таблица, в смысле эта?
РегистрНакопления.РасчетыЗаУслуги.Обороты(, , , ГОД(МесяцРасчета) = &ПервыйГод) КАК Год2020
Batchir
Проверяйте данные регистров. По полям соединений они разные.

Ваш пример отрабатывает нормально на таком запросе:
ВЫБРАТЬ
    "ВидУслуги1" КАК ВидУслуги,
    1 КАК Месяц,
    100 КАК СуммаПриход2020
ПОМЕСТИТЬ Год2020

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "ВидУслуги1",
    2,
    200

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "ВидУслуги1",
    4,
    400
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    "ВидУслуги1" КАК ВидУслуги,
    1 КАК Месяц,
    100 КАК СуммаПриход2021
ПОМЕСТИТЬ Год2021

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "ВидУслуги1",
    3,
    300

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "ВидУслуги1",
    4,
    400
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Год2020.ВидУслуги КАК ВидУслуги,
    Год2020.Месяц КАК Месяц,
    IsNULL(Год2020.СуммаПриход2020,0) КАК СуммаПриход2020,
    IsNULL(Год2021.СуммаПриход2021,0) КАК СуммаПриход2021
ИЗ
    Год2020 КАК Год2020
        ЛЕВОЕ СОЕДИНЕНИЕ Год2021 КАК Год2021
        ПО (Год2020.ВидУслуги = Год2021.ВидУслуги И Год2020.Месяц = Год2021.Месяц)
lolmatrix
Vofka @ Сегодня, 9:48 необходимо зарегистрироваться для просмотра ссылки ,
Да эта

Batchir @ Сегодня, 10:33 необходимо зарегистрироваться для просмотра ссылки ,
таблицы обе совершенно одинаковые из одного и того же регистра берут данные. за разные года
Batchir
Цитата(lolmatrix @ 20.10.21, 14:08) необходимо зарегистрироваться для просмотра ссылки
таблицы обе совершенно одинаковые из одного и того же регистра берут данные. за разные года


ВидУслуги в 2020 может не быть равен ВидУслуги в 2021
Простым примером запроса я показал что две одинаковые таблицы выдают нужный результат, при условии что данные по полям соединения одинаковые.
Вы спросили "почему", я попытался наглядно объяснить.

А ещё. Если это СКД, то тут может отрабатывать РЛС. Если пользователю запрещены выбираемые данные на уровне записей, то в СКД они не попадут
lolmatrix
Batchir @ Сегодня, 14:30 необходимо зарегистрироваться для просмотра ссылки ,
что странно в полном соединении все вышло, а вот в левом нет, конфигурацияя вообще без прав
Vofka
lolmatrix, а не установлен ли какой-то отбор в СКД по данным правой таблицы?
Batchir
lolmatrix, Полное соединение выдает все данные обеих таблиц, поэтому ничего странного нет.
Ещё раз акцентирую внимание на то что скорее всего виды услуг в разных годах разные.
Может они называются одинаково, но это разные ссылки, а может как сказал Vofka - установлены какие-то дополнительные фильтры в СКД.
В любом случае данные которые есть в Вашей системе известны только Вам.
Пробуйте сначала отладить запрос в какой-то консоли запросов, а не в макете СКД, может тогда станет ясно где проблема.
lolmatrix
Vofka @ Вчера, 16:06 необходимо зарегистрироваться для просмотра ссылки ,
я только начинаю учиться конфигурация очень упрощенная. если скину посмотрите?

lolmatrix @ Сегодня, 9:04 необходимо зарегистрироваться для просмотра ссылки ,
спасибо. разобрался, очень странно, но поучилось так: переписал в запросе полное, потом написал вместо полное, левое все заработало и еще одна странность, у отчета в фоме стоит СформироватьПриОкрытии, а формирует изменения после проведения и отмены проведения только по кнопке сформировать
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.