Добрый день помогите пожалуйста с запросом. Хочу получить список сотрудников, номенклатуру и сумму для документа в счет зарплаты.
Написал вот такой запрос
Но в консоле запроса невыходит номенклатура значение NULL
Написал вот такой запрос
ВЫБРАТЬ
схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник КАК Сотрудник,
схРеализацияТоваровСпискуФЛКонтрагенты.Сумма КАК Сумма,
схРеализацияТоваровСпискуФЛТовары.Номенклатура КАК Номенклатура
ИЗ
Документ.схРеализацияТоваровСпискуФЛ.Контрагенты КАК схРеализацияТоваровСпискуФЛКонтрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Документ.схРеализацияТоваровСпискуФЛ.Товары КАК схРеализацияТоваровСпискуФЛТовары
ПО схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник = схРеализацияТоваровСпискуФЛТовары.Ссылка
Но в консоле запроса невыходит номенклатура значение NULL
По теме из базы знаний
- История оптимизации одного большого запроса средствами MSSQL Profiler и 1С
- Неоплаченные долги при распределении оплаты по правилу ФИФО одним запросом и намного быстрее, чем Вы думали
- Консоль запросов к базе Oracle для 1С, без использования специализированных программ
- Оптимизатор запроса. Часть первая
- Как читать чужой код? Часть 3. Разбор и доработка запросов
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) нет, не верно, в вашем примере Ссылка это Документ
попробуйте так, хоть какие данные увидите (правда какие, чего?)
попробуйте так, хоть какие данные увидите (правда какие, чего?)
ВЫБРАТЬ первые 100 //
схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник КАК Сотрудник,
схРеализацияТоваровСпискуФЛКонтрагенты.Сумма КАК Сумма,
схРеализацияТоваровСпискуФЛТовары.Номенклатура КАК Номенклатура
ИЗ
Документ.схРеализацияТоваровСпискуФЛ.Контрагенты КАК схРеализацияТоваровСпискуФЛКонтрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Документ.схРеализацияТоваровСпискуФЛ.Товары КАК схРеализацияТоваровСпискуФЛТовары
ПО Истина //схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник = схРеализацияТоваровСпискуФЛТовары.Ссылка
Ссылку если заменяю на номенклатуру результат такой же
ВЫБРАТЬ
схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник КАК Сотрудник,
схРеализацияТоваровСпискуФЛКонтрагенты.Сумма КАК Сумма,
схРеализацияТоваровСпискуФЛТовары.Номенклатура КАК Номенклатура
ИЗ
Документ.схРеализацияТоваровСпискуФЛ.Контрагенты КАК схРеализацияТоваровСпискуФЛКонтрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Документ.схРеализацияТоваровСпискуФЛ.Товары КАК схРеализацияТоваровСпискуФЛТовары
ПО схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник = схРеализацияТоваровСпискуФЛТовары.Номенклатура
ИТОГИ
СУММА(Сумма)
ПО
ОБЩИЕ
Показать
(6) Если я правильно понял идею, то связь должна идти по документу, т.е. по полю Ссылка
Только сумма должна браться из таблицы ФЛТовары по идее, иначе если в документе будет несколько позиций номенклатуры, то сумма "задвоится".
ВЫБРАТЬ
схРеализацияТоваровСпискуФЛКонтрагенты.Сотрудник КАК Сотрудник,
схРеализацияТоваровСпискуФЛКонтрагенты.Сумма КАК Сумма,
схРеализацияТоваровСпискуФЛТовары.Номенклатура КАК Номенклатура
ИЗ
Документ.схРеализацияТоваровСпискуФЛ.Контрагенты КАК схРеализацияТоваровСпискуФЛКонтрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Документ.схРеализацияТоваровСпискуФЛ.Товары КАК схРеализацияТоваровСпискуФЛТовары
ПО схРеализацияТоваровСпискуФЛКонтрагенты.Ссылка = схРеализацияТоваровСпискуФЛТовары.Ссылка
ИТОГИ
СУММА(Сумма)
ПО
ОБЩИЕ
ПоказатьТолько сумма должна браться из таблицы ФЛТовары по идее, иначе если в документе будет несколько позиций номенклатуры, то сумма "задвоится".
(6) Связь делается по совпадающим значениям. Например, для табличных частей Контрагенты и Товары будет общим тот документ, в котором они находятся. И связать их можно по ссылке на документ, как показали в (8), Контрагенты.Ссылка = Товары.Ссылка, но строки будут перемножаться, т.е. будут всевозможные варианты:
Если в табличных частях будет
Товары:
- Дизель
- Бензин
Контрагенты
- Иванов
- Петров
Результат:
- Иванов Дизель
- Иванов Бензин
- Петров Дизель
- Петров Бензин
Посмотрите, есть ли в табличной части "Контрагенты" поле "Номенклатура" по которой можно будет сделать связь.
Если в табличных частях будет
Товары:
- Дизель
- Бензин
Контрагенты
- Иванов
- Петров
Результат:
- Иванов Дизель
- Иванов Бензин
- Петров Дизель
- Петров Бензин
Посмотрите, есть ли в табличной части "Контрагенты" поле "Номенклатура" по которой можно будет сделать связь.
(4) каким образом у вас в документе отражается\осуществляется связь между номенклатурой из одной ТЧ и сотрудником из другой ТЧ? как только вы эту связь установите в документе (или увидите), то соединение сразу станет возможным
пока же, все верно написано в посте выше, вы товар с документом соединяете, то с сотрудником, естественно из этого ничего не получается.
пока же, все верно написано в посте выше, вы товар с документом соединяете, то с сотрудником, естественно из этого ничего не получается.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот