Имя: Пароль:
1C
1С v8
Шахматка по долгам.
0 Вжескрыылг
 
24.02.17
14:47
Есть таблица периодов, задаваемая пользователями, в регистре "Контрагенты" есть "ДокументРасчета", который гасится по ФИФО.
Запрос в СКД:
ВЫБРАТЬ
    Периоды.Начало КАК Начало,
    Периоды.Окончание КАК Окончание,
    Периоды.Представление КАК Представление,
    ВЫБОР
        КОГДА &Вид = ЗНАЧЕНИЕ(Перечисление.НазначениеПериодов.ДебиторскаяЗадолженность)
            ТОГДА 1
        ИНАЧЕ -1
    КОНЕЦ КАК Знак
ПОМЕСТИТЬ ТаблицаПериодов
ИЗ
    РегистрСведений.Периоды КАК Периоды
ГДЕ
    Периоды.Назначение = &Вид
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    КонтрагентыОстатки.Организация,
    КонтрагентыОстатки.Контрагент,
    КонтрагентыОстатки.Контрагент.ГлубинаКредита КАК ГлубинаКредита,
    КонтрагентыОстатки.ДокументРасчета,
    КонтрагентыОстатки.ДокументРасчета.Сумма КАК СуммаДокумента,

    РАЗНОСТЬДАТ(КонтрагентыОстатки.ДокументРасчета.Дата, &Дата, ДЕНЬ) - КонтрагентыОстатки.Контрагент.ГлубинаКредита КАК Просрочка,

// как бы здесь перебрать ТаблицаПериодов, чтобы, появились столбцы, ВЫБОР
КОГДА просрочка МЕЖДУ Периоды.Начало И Периоды.Окончание
ТОГДА КонтрагентыОстатки.СуммаОстаток
ИНАЧЕ 0
КОНЕЦ КАК СУММА
// т.е. разложить просроченные долги
ИЗ
    РегистрНакопления.Контрагенты.Остатки(&Дата, ) КАК КонтрагентыОстатки
ГДЕ
    ВЫБОР
            КОГДА &Вид = ЗНАЧЕНИЕ(Перечисление.НазначениеПериодов.ДебиторскаяЗадолженность)
                ТОГДА КонтрагентыОстатки.СуммаОстаток >= 0
            ИНАЧЕ КонтрагентыОстатки.СуммаОстаток <= 0
        КОНЕЦ
1 Вжескрыылг
 
25.02.17
12:28
решено
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс