Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Амортизация по счетам учета ОС
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
pablo
Как-то поставили мне задачу: видеть начисленную амортизацию на 131 счете отдельно по каждому счету учета ОС.
Написал я отчет со следующим запросом:
ВЫБРАТЬ
    СпособыОтраженияРасходовПоАмортизацииСпособы.СчетЗатрат КАК СчетЗатрат,
    СпособыОтраженияРасходовПоАмортизацииСпособы.Субконто1 КАК Субконто1,
    СчетаБухгалтерскогоУчетаОССрезПоследних.ОсновноеСредство КАК ОсновноеСредство,
    СпособыОтраженияРасходовПоАмортизацииСпособы.Коэффициент КАК Коэффициент,
    СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчетСрезПоследних.Спосо
быОтраженияРасходовПоАмортизации,
    ПРЕДСТАВЛЕНИЕ(СчетаБухгалтерскогоУчетаОССрезПоследних.СчетУчета),
    СчетаБухгалтерскогоУчетаОССрезПоследних.СчетУчета
ПОМЕСТИТЬ ОС
ИЗ
    РегистрСведений.СчетаБухгалтерскогоУчетаОС.СрезПоследних(&Дата2, ) КАК СчетаБухгалтерскогоУчетаОССрезПоследних
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчет.СрезПос
ледних(&Дата2, ) КАК СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчетСрезПоследних
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СпособыОтраженияРасходовПоАмортизации.Способы КАК СпособыОтраженияРасходовПоАмортизацииСпособы
            ПО СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчетСрезПоследних.СпособыОтр
аженияРасходовПоАмортизации = СпособыОтраженияРасходовПоАмортизацииСпособы.Ссылка
        ПО СчетаБухгалтерскогоУчетаОССрезПоследних.ОсновноеСредство = СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчетСрезПоследних.ОсновноеСр
едство
ГДЕ
    СчетаБухгалтерскогоУчетаОССрезПоследних.СчетУчета В (&СчетУчета, &СчетУчета2)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ОС.СчетЗатрат КАК СчетЗатрат,
    ОС.Субконто1 КАК Субконто1,
    ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт * ВЫБОР
            КОГДА ОС.Коэффициент = 1
                ТОГДА 1
            ИНАЧЕ ОС.Коэффициент / 100
        КОНЕЦ КАК ЧИСЛО(13, 3)) КАК СуммаНачало,
    ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт * ВЫБОР
            КОГДА ОС.Коэффициент = 1
                ТОГДА 1
            ИНАЧЕ ОС.Коэффициент / 100
        КОНЕЦ КАК ЧИСЛО(13, 3)) КАК СуммаОборот,
    ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт * ВЫБОР
            КОГДА ОС.Коэффициент = 1
                ТОГДА 1
            ИНАЧЕ ОС.Коэффициент / 100
        КОНЕЦ КАК ЧИСЛО(13, 3)) КАК СуммаКонец
ИЗ
    ОС КАК ОС
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2, Месяц, , Счет = &СчетИзноса, , ) КАК ХозрасчетныйОстаткиИОбороты
        ПО ОС.ОсновноеСредство = ХозрасчетныйОстаткиИОбороты.Субконто1
ИТОГИ
    СУММА(СуммаНачало),
    СУММА(СуммаОборот),
    СУММА(СуммаКонец)
ПО
    ОБЩИЕ,
    СчетЗатрат,
    Субконто1

И отлично работал этот отчет до определенного момента, пока не начались суммы по СчетуЗатрат не совпадать с кредитовыми оборотами счета 831. Вот уже полдня бьюсь, а засаду в запросе не вижу sad.gif
Все ОС с коэффициентами отличными от 1 проверил вручную.

p.s.
ПостроительОтчетаАмортизацияПоСчетам.Параметры.Вставить("СчетУчета", СчетУчета);
    ПостроительОтчетаАмортизацияПоСчетам.Параметры.Вставить("СчетУчета2", Неопределено);
    ПостроительОтчетаАмортизацияПоСчетам.Параметры.Вставить("СчетИзноса", ПланыСчетов.Хозрасчетный.ИзносОсновныхСредств);


p.p.s Общая сумма оборотов совпадает, но различаются суммы внутри счетов (231 91)
Vofka
Может это к концу дня уже туго доходит, но мне лично непонятно ничего. Можно на пальцах, с проводками?
pablo
С оборотами разобрался, осталось придумать, как это отразить в запросе.
По зданию со "сложным" начислением амортизации (сумма амортизации по объекту делится на несколько частей с различными счетами затрат и прочими аналитиками) в середине месяца производится изменение способа начисления амортизации (с одного сложного способа на другой). Пример:
Амортизация по зданию А - 500 грн. в месяц, из них
отдел1 списывает на 231 счет 200 грн, Проводки (131 - 831, 831 - 231)
отдел2 списывает на 91 счет 300 грн, Проводки (131 - 831, 831 - 91)
С 15 числа месяца менятся способ отражения амортизации
Амортизация по зданию А - 500 грн. в месяц, из них
отдел1 списывает на 231 счет 100 грн, Проводки (131 - 831, 831 - 231)
отдел2 списывает на 91 счет 400 грн, Проводки (131 - 831, 831 - 91)
Стандартная амортизация считает правильно время и делит месяц пополам и получаются проводки
131 - 831 100грн
831 - 231 100грн (отдел1 первая половина месяца)
131 - 831 150грн
831 - 231 150грн (отдел2 первая половина месяца)
131 - 831 50грн
831 - 231 50грн (отдел1 вторая половина месяца)
131 - 831 200грн
831 - 231 200грн (отдел2 вторая половина месяца)
итого за месяц на 131 счете оборот составляет 600 грн (500 грн здание и 100 грн автомобиль)
Бухгалтера хотят видеть обороты по виртуальному счету 131/3 здания и 131/5 авто с разбивкой по корреспондирующим счетам,например:
131/3
150 грн "списание" на 231 счет
350 грн "списание" на 91 счет

Мой запрос не учитывает изменение способа отражения амортизации и мне видится 2 варианта пути решения проблемы:
1. Анализ проводок по документу "Закрытие месяца" (или вообще по всему 131 счету)
2. Расчет сумм амортизации аналогично документу "Закрытие месяца"
Какой из них лучше и есть ли альтернатива?
Vofka
Без бутылки тут не разобраться upset.gif
pablo
Я уже отбился от бухов, поскольку любые изменения по амортизации вступают в силу со следующего месяца. А в запросе изменил РегистрСведений.СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчет.СрезПос
ледних
на
РегистрСведений.СпособыОтраженияРасходовПоАмортизацииОСБухгалтерскийУчет.СрезПер
вых
и передаю другую дату smile.gif

P.S. Какое хитрое ограничение на длину одного слова в форуме wink.gif
Vofka
Цитата(pablo @ 10.01.13, 15:37) необходимо зарегистрироваться для просмотра ссылки
P.S. Какое хитрое ограничение на длину одного слова в форуме wink.gif

Если что - это поправимо smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.