МГ: сессия от 2010-07-23
В конце неделе на десерт предлагаем вам очередную порцию вопросов, поступивших в мастер-группу.
К сожалению, у Вас недостаточно прав для просмотра этой записи. Если Вы еще не залогинены на сайте — залогиньтесь.
Если не активировали токен — посмотрите видео-инструкцию (видео N5)
Если вы залогинены, у Вас активирован токен доступа, но вы все равно видите эту запись — напишите нам на e-mail поддержки.
МоментВремени() – фактически Ссылка + Дата. Можно ли в запросе использовать конструкцию:
УПОРЯДОЧИТЬ ПО ДокументОснование.Ссылка УБЫВ И ДокументОснование.Дата?
Вообще самый правильный вариант – сортировка по ссылке + автоупорядочивание.
Но как видите есть проблема во вложенном запросе.
Вариант сортировки по дате и сссылке тоже должен отрабатывать корректно, только в этом случае секция упорядочивания должна выглядеть так:
УПОРЯДОЧИТЬ ПО
ПоступлениеТоваров.Дата,
ПоступлениеТоваров.Ссылка
По п.7. Проверил на 8.1.15.14 – та же ошибка. Смотрел на УПП следующим запросом:
ВЫБРАТЬ
ДокументОснованиеТовары.Ссылка,
ДокументОснованиеТовары.Номенклатура
ИЗ
Документ.ПоступлениеТоваровУслуг.Товары ДокументОснованиеТовары
ГДЕ
ДокументОснованиеТовары.Ссылка В
(ВЫБРАТЬ ПЕРВЫЕ 1
ДокументОснование.Ссылка
ИЗ
Документ.ПоступлениеТоваровУслуг КАК ДокументОснование
ГДЕ
ДокументОснование.Проведен
И ДокументОснование.Контрагент = &Контрагент
УПОРЯДОЧИТЬ ПО ДокументОснование.МоментВремени УБЫВ)
Отрабатывает одинаково и с ВОЗР, и с УБЫВ – всегда выдаёт первый по времени документ. Так что эта ошибка уже старая. Нам ничего от 1С не причитается за тестирование? :))
Возьму на заметку, очень нелогичное поведение системы..
Я в запросе использовал Минимум(Ссылка) либо Максимум(Ссылка), чтобы выбирать ближний-дальний документ, тогда нет проблем точно.
Да так и в видео-уроках ранее было показано :)
Да, тоже вариант.
Совет из жизни:
Мне надо было выбрать дату последнего использования дисконтной карты для учета в дальнейшем только тех диск. карт и записи этой даты в реквизит диск. карт, которые определенное время работают, а не работающие карты скажем больше 1-2 лет потом не использовать в определенных отчетах.
Так я сначала выбирал все доки с этой картой и упорядочиванием от последней даты к более ранней, а потом из цикла выходил после выбора первой записи выборки.
Но ведь это получается как раз МИНИМУМ(ССЫЛКА) или МАКСИМУМ(ССЫЛКА) в зависимости от упорядочения, хотя и медленнее.
Да, даты первого и последнего использования диск.карт я рассчитывал ежевечерне вместе с % накопления суммы по карте и сохранял, если они изменялись, в справочнике этих диск. карт (использовался стандартный справочник “Информационных карт”).
Может кто такой вопрос более красиво решил?