Имя: Пароль:
1C
1С v8
Помогите с простой формулой для отчета.
0 Обработка
 
19.05.23
19:59
Мне порчено вытащить данные по "краткосрочной дебетерской задолженности".
Дано Договор - (неважно считай что контрагент)
     СНДНачГОД - сальдо начальное дебетовой на начало года
     ДОза9мес  - дебетовые обороты за 9 месяцев (с начало года по конец сентября этого года)
     КОза9мес  - кредитовые обороты за 9 месяцев (с начало года по конец сентября этого года)
     СДНачОкт  - сальдо начальное дебетовой на начало октября
     ДОза3мес  - дебетовые обороты за 9 месяцев (с начало октября по конец этого года)
     КОза3мес  - кредитовые обороты за 9 месяцев (с начало октября по конец этого года)
     СКДКонГОД - сальдо конечное дебетовой на Конец года

Имея эти данные мне нужно вытащить 3 суммы:
1. Сумма долго возникшее за последние 30 дней
2. Сумма долга возникшее более чем 3 месяца но менее чем год.
3. Долги возникшее более чем 1 год!

Как это мне выразить в формулах? Кто решал подобную задачу? Помогите с логикой выведения формул в запросе.
1 Обработка
 
19.05.23
20:01
Вот так пока у меня. Но там ошиибки:

// более 1 года !!!!!!!!!!!!!!!!!!!!!!!!!!!
    ВЫБОР
        КОГДА ВТ.НачГода - (ВТ.КО9 + ВТ.КО3) > 0
            ТОГДА ВТ.НачГода - (ВТ.КО9 + ВТ.КО3)
        ИНАЧЕ 0
    КОНЕЦ КАК ДолгиБолее365,
    // 90  по 1 года !!!!!!!!!!!!!!!!!!!!!!!!!!!
    ВЫБОР
        КОГДА Вт.ДО9 > 0
            ТОГДА Выбор Когда Вт.ДО9 - Вт.КО9- Вт.КО3 > 0  Тогда Вт.ДО9 - Вт.КО9 - Вт.КО3 Иначе 0 Конец
        ИНАЧЕ 0
    КОНЕЦ КАК ДолгиC90По365,
    // 90 ДНЕЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!
    ВЫБОР
        КОГДА (ВТ.ДО3 - ВТ.КО3) > 0 Тогда
            ВТ.ДО3 - ВТ.КО3
        ИНАЧЕ 0
    КОНЕЦ КАК ДолгиДо90
2 Волшебник
 
19.05.23
20:01
Выкиньте свои формулы и напишите запрос к регистру бухгалтерии.
3 Обработка
 
19.05.23
20:03
(2) Я так и делаю. Вот кусок выше.

ИЗ
    РегистрБухгалтерии.Типовой.ОстаткиИОбороты(
            &Дата1,
            ДОБАВИТЬКДАТЕ(&Дата1, МЕСЯЦ, 9),
            ,
            ,
            Счет.Код В
                (ВЫБРАТЬ
                    грсч.Счет
                ИЗ
                    грсч КАК грсч),
            ,
            ) КАК ТиповойОстаткиИОбороты
ГДЕ
    ТИПЗНАЧЕНИЯ(ТиповойОстаткиИОбороты.Субконто2) = ТИП(Справочник.ДоговорыКонтрагентов)
4 Волшебник
 
19.05.23
20:04
(3) Вам нужно вытащить 3 суммы:
1. Сумма долго возникшее за последние 30 дней
2. Сумма долга возникшее более чем 3 месяца но менее чем год.
3. Долги возникшее более чем 1 год!

Значит в запросе будет 3 подзапроса с фразой ОБЪЕДИНИТЬ ВСЕ
5 Обработка
 
19.05.23
20:05
+ (1) и (2) К этим значениям вышел объединением двух запросов за 2 периода.
Один начало года по сентябрь другой с сентября по конец года.
6 Волшебник
 
19.05.23
20:06
(5) Вам нужно 3 запроса как минимум.
7 Обработка
 
19.05.23
20:08
В "сумме" на конец года может сидеть куски возникшие за разные периоды. Вед за два эти периоды они могди перекрыть а моли и не перекрыть тот илил иной возникший долг прошлого периода.
8 Волшебник
 
19.05.23
20:08
(7) Скажите, а Вы случайно не пьяный? Что-то у Вас пальцы заплетаются...
9 Обработка
 
19.05.23
20:11
(8) Нет, я уже тебе не раз писал что я не пью вообще у меня строгая диета...
Просто пытаюсь быстро печатать и делаю кучу опечаток. Пардон.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой