Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Срез последних и предпоследних, но по списку валют          
ssedox Подменю пользователя
сообщение 25.12.15, 13:07
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 1 раз
Рейтинг: 0

собственной есть вариант

ВЫБРАТЬ
    КурсыВалютСрезПоследних.Период КАК Период,
    КурсыВалютСрезПоследних.Валюта КАК Валюта,
    КурсыВалютСрезПоследних.Курс КАК Курс
ПОМЕСТИТЬ ПоследнийКурс
ИЗ
    РегистрСведений.КурсыВалют КАК КурсыВалютСрезПоследних
ГДЕ
    КурсыВалютСрезПоследних.Период < &ДатаОтчета
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ ПЕРВЫЕ 2
    КурсыВалют.Валюта,
    КурсыВалют.Период КАК ПредпоследнийПериод,
    КурсыВалют.Курс КАК ПредпоследнийКурс,
    ПоследнийКурс.Период КАК ПоследнийПериод,
    ПоследнийКурс.Курс КАК ПоследнийКурс
ИЗ
    РегистрСведений.КурсыВалют КАК КурсыВалют
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            КурсыВалют.Валюта КАК Валюта,
            МАКСИМУМ(КурсыВалют.Период) КАК Период
        ИЗ
            РегистрСведений.КурсыВалют КАК КурсыВалют
                ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПоследнийКурс КАК ВложенныйЗапрос
                ПО КурсыВалют.Период < ВложенныйЗапрос.Период
                    И КурсыВалют.Валюта = ВложенныйЗапрос.Валюта
        
        СГРУППИРОВАТЬ ПО
            КурсыВалют.Валюта) КАК ПредпоследнийПериод
        ПО (ПредпоследнийПериод.Валюта = КурсыВалют.Валюта)
            И (ПредпоследнийПериод.Период = КурсыВалют.Период)
        ЛЕВОЕ СОЕДИНЕНИЕ ПоследнийКурс КАК ПоследнийКурс
        ПО (ПоследнийКурс.Валюта = КурсыВалют.Валюта)

УПОРЯДОЧИТЬ ПО
    ПоследнийПериод УБЫВ

хотелось бы что бы это работало для всего списка валют

ssedox Подменю пользователя
сообщение 28.12.15, 23:32
Сообщение #2

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 1 раз
Рейтинг: 0

результат

ВЫБРАТЬ
    КурсыВалютСрезПервых.Период,
    КурсыВалютСрезПервых.Валюта
ПОМЕСТИТЬ ПОСЛ
ИЗ
    РегистрСведений.КурсыВалют.СрезПоследних(, ) КАК КурсыВалютСрезПервых
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    МАКСИМУМ(КурсыВалют.Период) КАК Период,
    КурсыВалют.Валюта
ПОМЕСТИТЬ ПРЕДП
ИЗ
    РегистрСведений.КурсыВалют КАК КурсыВалют
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПОСЛ КАК ПОСЛ
        ПО КурсыВалют.Период < ПОСЛ.Период
            И КурсыВалют.Валюта = ПОСЛ.Валюта

СГРУППИРОВАТЬ ПО
    КурсыВалют.Валюта
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПОСЛ.Период КАК Период,
    ПОСЛ.Валюта КАК Валюта
ПОМЕСТИТЬ ВСЕКУРСЫ
ИЗ
    ПОСЛ КАК ПОСЛ

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

ВЫБРАТЬ
    ПРЕДП.Период,
    ПРЕДП.Валюта
ИЗ
    ПРЕДП КАК ПРЕДП
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВСЕКУРСЫ.Валюта КАК Валюта,
    ВСЕКУРСЫ.Период КАК Период,
    КурсыВалют.Курс
ПОМЕСТИТЬ ВТ
ИЗ
    ВСЕКУРСЫ КАК ВСЕКУРСЫ
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК КурсыВалют
        ПО ВСЕКУРСЫ.Период = КурсыВалют.Период
            И ВСЕКУРСЫ.Валюта = КурсыВалют.Валюта
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПОСЛ.Период КАК Период,
    ЛЕВ.Валюта КАК Валюта,
    ЛЕВ.Курс КАК ПоследнийКурс,
    ПРАВ.Курс КАК ПредпоследнийКурс
ИЗ
    ВТ КАК ЛЕВ
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ КАК ПРАВ
        ПО ЛЕВ.Валюта = ПРАВ.Валюта
            И ЛЕВ.Период < ПРАВ.Период
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПОСЛ КАК ПОСЛ
        ПО ЛЕВ.Валюта = ПОСЛ.Валюта

УПОРЯДОЧИТЬ ПО
    Валюта,
    Период

Спасибо сказали: Vofka,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 28.03.24, 15:49
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!