IT Студия Programmist1C
Услуги
  • Внедрение и сопровождение 1С
    • Маркировка импорта обуви
    • Hастройка 1С
    • Обслуживание 1С
    • Программирование 1С
    • Доработка 1С
    • Автоматизация 1С
    • Сопровождение 1С
    • Внедрение 1С
  • Создание сайтов
    • Посадочные страницы
    • Корпоративные сайты
    • Интернет-магазины
  • Битрикс24
    • Техническая поддержка Битрикс24
    • Внедрение Битрикс24
    • Интеграции Битрикс24
  • Реклама и продвижение
    • Оптимизация сайтов
    • Контекстная реклама
    • SEO для интернет-магазинов
    • Продвижение сайтов
Проекты
  • Внедрение 1С
  • Создание WEB Сайтов
Компания
  • О компании
  • Партнеры
  • Реквизиты
  • Вопрос ответ
Пресс-центр
Контакты
Ещё
    Задать вопрос
    +7 (985) 141-74-63
    info@programmist1c.ru
    Москва, ул. Генерала Кузнецова, 17Б
    +7 (985) 141-74-63
    IT Студия Programmist1C
    Услуги
    • Внедрение и сопровождение 1С
      • Маркировка импорта обуви —
      • Hастройка 1С —
      • Обслуживание 1С —
      • Программирование 1С —
      • Доработка 1С —
      • Автоматизация 1С —
      • Сопровождение 1С —
      • Внедрение 1С
    • Создание сайтов
      Создание сайтов
      • Посадочные страницы —
      • Корпоративные сайты —
      • Интернет-магазины
    • Битрикс24
      Битрикс24
      • Техническая поддержка Битрикс24 —
      • Внедрение Битрикс24 —
      • Интеграции Битрикс24
    • Реклама и продвижение
      Реклама и продвижение
      • Оптимизация сайтов —
      • Контекстная реклама —
      • SEO для интернет-магазинов —
      • Продвижение сайтов
    Проекты
    • Внедрение 1С
    • Создание WEB Сайтов
    Компания
    • О компании
    • Партнеры
    • Реквизиты
    • Вопрос ответ
    Пресс-центр
    Контакты
      IT Студия Programmist1C
      Услуги
      • Внедрение и сопровождение 1С
        • Маркировка импорта обуви —
        • Hастройка 1С —
        • Обслуживание 1С —
        • Программирование 1С —
        • Доработка 1С —
        • Автоматизация 1С —
        • Сопровождение 1С —
        • Внедрение 1С
      • Создание сайтов
        Создание сайтов
        • Посадочные страницы —
        • Корпоративные сайты —
        • Интернет-магазины
      • Битрикс24
        Битрикс24
        • Техническая поддержка Битрикс24 —
        • Внедрение Битрикс24 —
        • Интеграции Битрикс24
      • Реклама и продвижение
        Реклама и продвижение
        • Оптимизация сайтов —
        • Контекстная реклама —
        • SEO для интернет-магазинов —
        • Продвижение сайтов
      Проекты
      • Внедрение 1С
      • Создание WEB Сайтов
      Компания
      • О компании
      • Партнеры
      • Реквизиты
      • Вопрос ответ
      Пресс-центр
      Контакты
        IT Студия Programmist1C
        IT Студия Programmist1C
        • Услуги
          • Назад
          • Услуги
          • Внедрение и сопровождение 1С
            • Назад
            • Внедрение и сопровождение 1С
            • Маркировка импорта обуви
            • Hастройка 1С
            • Обслуживание 1С
            • Программирование 1С
            • Доработка 1С
            • Автоматизация 1С
            • Сопровождение 1С
            • Внедрение 1С
          • Создание сайтов
            • Назад
            • Создание сайтов
            • Посадочные страницы
            • Корпоративные сайты
            • Интернет-магазины
          • Битрикс24
            • Назад
            • Битрикс24
            • Техническая поддержка Битрикс24
            • Внедрение Битрикс24
            • Интеграции Битрикс24
          • Реклама и продвижение
            • Назад
            • Реклама и продвижение
            • Оптимизация сайтов
            • Контекстная реклама
            • SEO для интернет-магазинов
            • Продвижение сайтов
        • Проекты
          • Назад
          • Проекты
          • Внедрение 1С
          • Создание WEB Сайтов
        • Компания
          • Назад
          • Компания
          • О компании
          • Партнеры
          • Реквизиты
          • Вопрос ответ
        • Пресс-центр
        • Контакты
        • +7 (985) 141-74-63
        info@programmist1c.ru
        Москва, ул. Генерала Кузнецова, 17Б
        • Главная
        • Примеры программирования

        v8: Полные остатки по периоду во вложенном запросе

        Мы всегда на связи
        Заказать звонок
        Написать сообщение
        Полные остатки по периоду во вложенном запросеАвтор статьи: IronDemon
        Последняя редакция №1 от 15.08.07

        Ключевые слова: запрос,остатки,полные,день,период


        Как получить остатки по периоду когда не было движения?

        Многие знают что остатки по периоду с дополнением можно получить таким запросом
        ВЫБРАТЬ
           ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.ДоговорКонтрагента.Владелец КАК Контрагент,
           ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента,
           ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток,
           ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.Период КАК Период
        ИЗ
           РегистрНакопления.ВзаиморасчетыСКонтрагентами.ОстаткиИОбороты(&ДатаНач, &ДатаКон, День, , ) КАК ВзаиморасчетыСКонтрагентамиОстаткиИОбороты
        ИТОГИ ПО
           ОБЩИЕ,
           Период ПЕРИОДАМИ(ДЕНЬ, &ДатаНач, &ДатаКон),
           Контрагент,
           ДоговорКонтрагента

        Но что делать когда необходимо их получить во вложенном запросе, или посчитать количество дней с отрицательными остатками?
        Предлагаю следующий вариант. Регистр сведений КурсыВалют должен быть заполнен всеми днями.

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


        Заметьте, что в итогах для слова Период нет дополнения.
        Услуги
        Внедрение и сопровождение 1С
        Создание сайтов
        Битрикс24
        Реклама и продвижение
        Компания
        О компании
        Партнеры
        Реквизиты
        Вопрос ответ
        Проекты
        Пресс-центр
        Контакты
        Возможности
        Подписка на рассылку
        +7 (985) 141-74-63
        Заказать звонок
        info@programmist1c.ru
        Москва, ул. Генерала Кузнецова, 17Б
        Версия для печати
        Политика конфиденциальности
        © 2021 Все права защищены.
        Заказать звонок
        Написать сообщение