AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.03.2010, 19:12   #1  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
Амортизационная премия в налогах?
Аммортизационная премия попадает в налоги при продаже ОС.
Я так понял стандартным ф-ом это не лечится? Кто делал подскажите где идет сборка проводок аммортизации по ОС?!
Добрался до класса CustPostInvoice но куда дальше, не понятно?!
Старый 16.03.2010, 10:03   #2  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
Что за версия АХ, что за ОС (наши (РУ) или стандартные)?
Старый 16.03.2010, 10:12   #3  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
АХ 3.0 SP 5 RU

Последний раз редактировалось Вата; 16.03.2010 в 10:37.
Старый 16.03.2010, 17:52   #4  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
Старый 16.03.2010, 19:58   #5  
ppson is offline
ppson
Участник
Аватар для ppson
Ex AND Project
1C
 
2,102 / 114 (8) +++++
Регистрация: 25.06.2002
Адрес: SPb, Msk
жестко вы сформулировали вопрос.
я вот попытался "запихнуть" амортизационную премию в НДС - у меня не получилось )))
поясните в какие налоги у вас попала амортизационная премия.
__________________
Старый 16.03.2010, 20:56   #6  
3oppo is offline
3oppo
Участник
Аватар для 3oppo
 
222 / 32 (2) +++
Регистрация: 30.06.2005
Цитата:
Сообщение от Вата Посмотреть сообщение
где идет сборка проводок аммортизации по ОС?!
Если я правильно понял, Вам нужен класс RAssetSumCalc_Trans
внем см. методы:
calc()
buildQuery() – сам запрос соответственно
За это сообщение автора поблагодарили: Вата (1).
Старый 17.03.2010, 14:37   #7  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
Цитата:
Сообщение от ppson Посмотреть сообщение
жестко вы сформулировали вопрос.
Хмм.. попытаюсь пояснить на примерах.
Захожу в проводки по ОС, (TAX) самая нижняя проводка Выбытие (продажа), смотрю документы ГК, и вижу что Ам. премия попадает, на тот же счет (д-Н02.100 к H01.300) что и вся амортизация. А мне нужно (точнее бухгалтеру), что бы она попадала на другой счет (д-Н02.900 к H01.300).
Зорро спасибо за наводку, вроде то место.. буду думать как туда код впихнуть..
Старый 17.03.2010, 15:53   #8  
russ is offline
russ
Участник
Сотрудники Microsoft Dynamics
 
51 / 33 (2) +++
Регистрация: 02.04.2002
Адрес: Moscow
Ну, можно вот так реализвать:
1) создать два новых енума в RAssetPostValue. Один для расчета амортизации без премии, другой - собств.для премии.
2) дополнить метод RAssetDisposalValue:: postValue двумя кейсами для расчета сумм амортизации без премии и премии к операциям выбытия ОС.
За это сообщение автора поблагодарили: Вата (1).
Старый 17.03.2010, 17:07   #9  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
И в RAssetSumCalc добавить новый тип с обработкой.. Да я уже тоже допер до этого..

Только не совсем понял зачем 2 енума? Почему не хватит одного? В профиле разноски указываешь его только для ТАХ а для РАП соответственно не указываешь, и все.. Или я чегото не допонимаю?

Последний раз редактировалось Вата; 17.03.2010 в 17:13.
Старый 17.03.2010, 19:40   #10  
russ is offline
russ
Участник
Сотрудники Microsoft Dynamics
 
51 / 33 (2) +++
Регистрация: 02.04.2002
Адрес: Moscow
Зачем добавлять новый тип в RAssetSumCalc? Там же уже есть методы возвращающие сумму разнесенной аморт.премии.

Сейчас енум RAssetPostValue уже содержит тип для расчета суммы амортизации, включающией премию. В принципе, можно использовать этот тип, исправив код в RAssetDisposalValue:: postValue(), так чтобы метод возвращал только сумму амортизации без премии. И создать новый тип отдельно для расчета премии.
Старый 18.03.2010, 12:53   #11  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
Цитата:
Сообщение от russ Посмотреть сообщение
Зачем добавлять новый тип в RAssetSumCalc? Там же уже есть методы возвращающие сумму разнесенной аморт.премии.
Сейчас ам. премия включается в итоговую проводку.. А мне нужно чтобы она не включалась а по ней формировалась отдельная проводка на сумму ам. премии.

Вы имеете в виду 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;
Тоесть выборка происходит по типу RAssetTransType::Depreciation - "Амортизация", поэтому туда попадает и просто амортизация и амортизационная премия.. Разве нет? Я думал создать доп тип "Амортизационная премия", дабы отделить её от просто "амортизации", а как иначе?

Цитата:
Сообщение от russ Посмотреть сообщение
Сейчас енум RAssetPostValue уже содержит тип для расчета суммы амортизации, включающией премию.
?! Я явно чего то недопонимаю.. Что это за тип?

Цитата:
Сообщение от russ Посмотреть сообщение
В принципе, можно использовать этот тип, исправив код в RAssetDisposalValue:: postValue(), так чтобы метод возвращал только сумму амортизации без премии. И создать новый тип отдельно для расчета премии.
Я честно говоря думал править метод calc класса RAssetSumCalc.. Хм.. Можно по подробнее..

Да ещё.. В профиле разноски на операцию выбытия добавил ещё одну, проводку с моим новым типом.. Однако новая проводка не порадилась.. Хотя в дебагере переменная заполнялась (тоесть не 0). В чем может быть дело?

Последний раз редактировалось Вата; 18.03.2010 в 13:02.
Старый 18.03.2010, 14:14   #12  
russ is offline
russ
Участник
Сотрудники Microsoft Dynamics
 
51 / 33 (2) +++
Регистрация: 02.04.2002
Адрес: Moscow
Создание нового типа операции под расчет аморт.премии - задача на 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  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
Попробовал.. не получилось.. Не возникает проводка по ам премии. так как rAssetSumTransDate.depreciationPostedBonusValue() возвращает 0 (как я уже говорил, не понятно вообще как она должна работать)

К сожалению двух строчек кода, яно не достаточна, так как нужно чтобы сама ам.премия начислялась.. Откуда система узнет что ам премия равна тому то, если для неё что амортизация что ам. премия это одно и тоже (один тип RAssetTransType::Depreciation) ?!

Последний раз редактировалось sukhanchik; 18.03.2010 в 16:46. Причина: Отключил смайлы
Старый 18.03.2010, 16:22   #14  
russ is offline
russ
Участник
Сотрудники Microsoft Dynamics
 
51 / 33 (2) +++
Регистрация: 02.04.2002
Адрес: Moscow
Очевидно rAssetSumTransDate.depreciationPostedBonusValue() возвращает 0, потому что у вас не было разносок аморт. премии.
Действительно, тип проводок премии и амортизации совпадает, и это было сделано не случайно: не пришлось дорабатывать код в налоговый регистрах и в других местах системы, где премия должна обрабатываться также, как и амортизация. Если вы введете такой тип, то вам придется протащить обработку премии во все места системы, где сейчас учитываются проводки амортизации.
В 3ке система отличает проводки амортизации от премии по заполнености поля DepreciationBonusCost. В более поздних версиях создан подтип.
Попробуйте разобраться как работает rAssetSumTransDate.depreciationPostedBonusValue(). Поверьте, это гораздо легче, чем создать и затем поддерживать новый тип операции в проводках ОС.

Последний раз редактировалось russ; 18.03.2010 в 16:24.
Старый 18.03.2010, 16:28   #15  
russ is offline
russ
Участник
Сотрудники Microsoft Dynamics
 
51 / 33 (2) +++
Регистрация: 02.04.2002
Адрес: Moscow
Цитата:
Сообщение от Вата Посмотреть сообщение
Тоесть выборка происходит по типу RAssetTransType::Depreciation - "Амортизация", поэтому туда попадает и просто амортизация и амортизационная премия.. Разве нет?
Нет, амортизация не попадает, так как в проводках амортизации DepreciationBonusCost = 0.

Последний раз редактировалось sukhanchik; 18.03.2010 в 16:46. Причина: Отключил смайлы
Старый 18.03.2010, 17:42   #16  
Вата is offline
Вата
Участник
 
71 / 0 (1) +
Регистрация: 20.09.2008
Да, так как для ам. премии нет отдельного типа RAssetTransType..

Поэтому к тому что вы посоветовали нужно ещё добавить новый тип RAssetTransType, и обрабатывать его..
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Округление в налогах George Nordic DAX: Функционал 13 20.11.2006 10:12
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:01.