Здравствуйте. Есть два документа Заявки и Акты.(Условие связи при соединении Акты.Абонент = Заявки.Абонент). Нужно чтобы выбирались документы Заявки за период между &ДатаНачала и &ДатаОкончания. А выводить в результате нужно Акты за созданные за месяц до заявки т.е., наверное так: МЕЖДУ ДОБАВИТЬКДАТЕ(Заявка.Дата, МЕСЯЦ, -1) и Заявка.Дата.
По теме из базы знаний
Найденные решения
(3)Если нужно сделать соединение таблиц по периоду, то лично я бы сделал так:
Выбрать
НачалоПериода(Дата, Месяц) КАК Период,
Поле1,
Поле2,
...
Поместить ВТТаблица1
ИЗ
Таблица1
Индексировать ПО
период,
поле1
;
Выбрать
НачалоПериода(Дата, Месяц) КАК Период,
Поле1,
Поле2,
...
Поместить ВТТаблица2
ИЗ
Таблица2
Индексировать ПО
период,
поле1
;
Выбрать
Т1.Период,
Т1.Поле1,
Т2.Поле2
ИЗ
ВТТаблица1 КАК Т1
ЛЕВОЕ СОЕДИНЕНИЕ ВТТаблица2 КАК Т2
ПО Т1.Период = Т2.Период
И Т1.Поле1 = Т2.Поле1
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2)Мне нужно правильно таблицы соединить, возможно с созданием временной. У меня было сделано: Акты за период между &ДатаНачала И &ДатаОкончания: Теперь изменился период (см. выше) А было сделано:
ВЫБРАТЬ
АктВыполненыхРабот.Подразделение КАК Подразделение,
КОЛИЧЕСТВО(АктВыполненыхРабот.Ссылка) КАК АВР
ИЗ
Документ.АктВыполненыхРабот КАК АктВыполненыхРабот
ГДЕ
АктВыполненыхРабот.ДатаВыполненияРабот МЕЖДУ ДОБАВИТЬКДАТЕ(&ДатаНачала, МЕСЯЦ, -1) И ДОБАВИТЬКДАТЕ(&ДатаОкончания, МЕСЯЦ, -1)
И АктВыполненыхРабот.Проведен
СГРУППИРОВАТЬ ПО
АктВыполненыхРабот.Подразделение
ВЫБРАТЬ
АктВыполненыхРабот.Подразделение КАК Подразделение,
КОЛИЧЕСТВО(АктВыполненыхРабот.Ссылка) КАК АВР
ИЗ
Документ.АктВыполненыхРабот КАК АктВыполненыхРабот
ГДЕ
АктВыполненыхРабот.ДатаВыполненияРабот МЕЖДУ ДОБАВИТЬКДАТЕ(&ДатаНачала, МЕСЯЦ, -1) И ДОБАВИТЬКДАТЕ(&ДатаОкончания, МЕСЯЦ, -1)
И АктВыполненыхРабот.Проведен
СГРУППИРОВАТЬ ПО
АктВыполненыхРабот.Подразделение
(3)Если нужно сделать соединение таблиц по периоду, то лично я бы сделал так:
Выбрать
НачалоПериода(Дата, Месяц) КАК Период,
Поле1,
Поле2,
...
Поместить ВТТаблица1
ИЗ
Таблица1
Индексировать ПО
период,
поле1
;
Выбрать
НачалоПериода(Дата, Месяц) КАК Период,
Поле1,
Поле2,
...
Поместить ВТТаблица2
ИЗ
Таблица2
Индексировать ПО
период,
поле1
;
Выбрать
Т1.Период,
Т1.Поле1,
Т2.Поле2
ИЗ
ВТТаблица1 КАК Т1
ЛЕВОЕ СОЕДИНЕНИЕ ВТТаблица2 КАК Т2
ПО Т1.Период = Т2.Период
И Т1.Поле1 = Т2.Поле1
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот