|
15.03.2010, 19:12 | #1 |
Участник
|
Амортизационная премия в налогах?
Аммортизационная премия попадает в налоги при продаже ОС.
Я так понял стандартным ф-ом это не лечится? Кто делал подскажите где идет сборка проводок аммортизации по ОС?! Добрался до класса CustPostInvoice но куда дальше, не понятно?! |
|
16.03.2010, 10:03 | #2 |
Участник
|
Что за версия АХ, что за ОС (наши (РУ) или стандартные)?
|
|
16.03.2010, 10:12 | #3 |
Участник
|
АХ 3.0 SP 5 RU
Последний раз редактировалось Вата; 16.03.2010 в 10:37. |
|
16.03.2010, 17:52 | #4 |
Участник
|
|
|
16.03.2010, 19:58 | #5 |
Участник
|
жестко вы сформулировали вопрос.
я вот попытался "запихнуть" амортизационную премию в НДС - у меня не получилось ))) поясните в какие налоги у вас попала амортизационная премия.
__________________
|
|
17.03.2010, 14:37 | #6 |
Участник
|
Хмм.. попытаюсь пояснить на примерах.
Захожу в проводки по ОС, (TAX) самая нижняя проводка Выбытие (продажа), смотрю документы ГК, и вижу что Ам. премия попадает, на тот же счет (д-Н02.100 к H01.300) что и вся амортизация. А мне нужно (точнее бухгалтеру), что бы она попадала на другой счет (д-Н02.900 к H01.300). Зорро спасибо за наводку, вроде то место.. буду думать как туда код впихнуть.. |
|
17.03.2010, 15:53 | #7 |
Участник
|
Ну, можно вот так реализвать:
1) создать два новых енума в RAssetPostValue. Один для расчета амортизации без премии, другой - собств.для премии. 2) дополнить метод RAssetDisposalValue:: postValue двумя кейсами для расчета сумм амортизации без премии и премии к операциям выбытия ОС. |
|
|
За это сообщение автора поблагодарили: Вата (1). |
16.03.2010, 20:56 | #8 |
Участник
|
Если я правильно понял, Вам нужен класс RAssetSumCalc_Trans
внем см. методы: calc() buildQuery() – сам запрос соответственно
__________________
PS. Сложно приехать в Москву, но ещё сложнее уехать отсюда. |
|
|
За это сообщение автора поблагодарили: Вата (1). |
17.03.2010, 17:07 | #9 |
Участник
|
И в RAssetSumCalc добавить новый тип с обработкой.. Да я уже тоже допер до этого..
Только не совсем понял зачем 2 енума? Почему не хватит одного? В профиле разноски указываешь его только для ТАХ а для РАП соответственно не указываешь, и все.. Или я чегото не допонимаю? Последний раз редактировалось Вата; 17.03.2010 в 17:13. |
|
17.03.2010, 19:40 | #10 |
Участник
|
Зачем добавлять новый тип в RAssetSumCalc? Там же уже есть методы возвращающие сумму разнесенной аморт.премии.
Сейчас енум RAssetPostValue уже содержит тип для расчета суммы амортизации, включающией премию. В принципе, можно использовать этот тип, исправив код в RAssetDisposalValue:: postValue(), так чтобы метод возвращал только сумму амортизации без премии. И создать новый тип отдельно для расчета премии. |
|
18.03.2010, 12:53 | #11 |
Участник
|
Цитата:
Вы имеете в виду depreciationPostedBonusValue? Для меня если честно это вообще загадка.. Заполнение значение происходит в классе RAssetSumCalc_Trans X++: select sum(DepreciationBonusCost) from rassetTrans where rassetTrans.AccountNum == rangeAssetId && rassetTrans.AssetStandardId == rassetStandardId && rassetTrans.AssetTransType == RAssetTransType::Depreciation && ((rassetTrans.TransDate >= dateFrom && rassetTrans.TransDate <= dateTo) || ! dateTo) && ! rassetTrans.StornoRecId; depreciationPostedBonusValue = rassetTrans.DepreciationBonusCost; Цитата:
Цитата:
Да ещё.. В профиле разноски на операцию выбытия добавил ещё одну, проводку с моим новым типом.. Однако новая проводка не порадилась.. Хотя в дебагере переменная заполнялась (тоесть не 0). В чем может быть дело? Последний раз редактировалось Вата; 18.03.2010 в 13:02. |
|
18.03.2010, 14:14 | #12 |
Участник
|
Создание нового типа операции под расчет аморт.премии - задача на 1-2 две недели разработки.
Вашу проблему можно решить буквально парой строчек кода. На форме профилей разноски ничего делать не нужно. По кнопке Параметры->Выбытие (продажа) на этой форме перейдите на форму настройки доп.операций при продаже. Сейчас для разноски всей проведенной суммы Амортизации, включая премию, используется настройка с суммой к разноске "Балансовая амортизация". Вам нужно создать новый тип суммы к разноске (енум RAssetPostValue) - Аморт.премия. Таким образом вы сможете задавать свои счета для разноски премии в ГК. Чтобы рассчитать сумму премии для операции продажи нужно добавить обработку нового типа Суммы к разноске в метод RAssetDisposalValue:: postValue(): case RAssetPostValue::BalanceDeprBonus: assetAmount = rAssetSumTransDate.depreciationPostedBonusValue(); break; где BalanceDeprBonus - название нового типа Суммы к разноске, для расчета проведенной суммы аморт.премии. Теперь осталось только исключить премию из существующего типа Сумма к разноске BalanceDepr "Балансовая амортизация": case RAssetPostValue::BalanceDepr: assetAmount = rAssetSumTransDate.depreciationTotal() - rAssetSumTransDate.depreciationPostedBonusValue(); break; |
|
18.03.2010, 15:24 | #13 |
Участник
|
Попробовал.. не получилось.. Не возникает проводка по ам премии. так как rAssetSumTransDate.depreciationPostedBonusValue() возвращает 0 (как я уже говорил, не понятно вообще как она должна работать)
К сожалению двух строчек кода, яно не достаточна, так как нужно чтобы сама ам.премия начислялась.. Откуда система узнет что ам премия равна тому то, если для неё что амортизация что ам. премия это одно и тоже (один тип RAssetTransType::Depreciation) ?! Последний раз редактировалось sukhanchik; 18.03.2010 в 16:46. Причина: Отключил смайлы |
|
18.03.2010, 16:28 | #14 |
Участник
|
Нет, амортизация не попадает, так как в проводках амортизации DepreciationBonusCost = 0.
Последний раз редактировалось sukhanchik; 18.03.2010 в 16:46. Причина: Отключил смайлы |
|
18.03.2010, 16:22 | #15 |
Участник
|
Очевидно rAssetSumTransDate.depreciationPostedBonusValue() возвращает 0, потому что у вас не было разносок аморт. премии.
Действительно, тип проводок премии и амортизации совпадает, и это было сделано не случайно: не пришлось дорабатывать код в налоговый регистрах и в других местах системы, где премия должна обрабатываться также, как и амортизация. Если вы введете такой тип, то вам придется протащить обработку премии во все места системы, где сейчас учитываются проводки амортизации. В 3ке система отличает проводки амортизации от премии по заполнености поля DepreciationBonusCost. В более поздних версиях создан подтип. Попробуйте разобраться как работает rAssetSumTransDate.depreciationPostedBonusValue(). Поверьте, это гораздо легче, чем создать и затем поддерживать новый тип операции в проводках ОС. Последний раз редактировалось russ; 18.03.2010 в 16:24. |
|
18.03.2010, 17:42 | #16 |
Участник
|
Да, так как для ам. премии нет отдельного типа RAssetTransType..
Поэтому к тому что вы посоветовали нужно ещё добавить новый тип RAssetTransType, и обрабатывать его.. |
|