Показать сообщение отдельно
Старый 27.01.2010, 15:25   #1  
zhan is offline
zhan
Участник
 
19 / 54 (2) ++++
Регистрация: 17.09.2008
Адрес: Москва
DAX 2009. Создание журналов ГК по налоговым регистрам.
Это наверно будет интересно тем кто ведет налоговый учет.

Dax 2009
Application 5.0.1500.1313
При создании журнала ГК по налогу на прибыль выяснилась интересная вещь.
Если в параметрах Главной книги на закладке «Налог на прибыль» выставить параметр «Налоговая аналитика» отличное значение от значения «Цель».(например "Центр затрат") и параметр "Свертка" - "По коду дохода/расхода" или "По документу". При этих настройках сформировать журналы ГК по налоговым регистрам, то в строках журнала будет проставляться аналитика "Цель". (а должна "Центр затрат").

Если посмотреть в класс LedgerJournalCreate_Tax25_RU метод createTrans, то можно увидеть следующие строки :
Перед объявлением метода
X++:
.............................
#define.Value3(3)
............................
В самом методе:

X++:
           switch (postingRoll)
           {
                   case RTax25PostingRoll::Source:
                        ledgerJournalTrans.Dimension[#Value3] = RTax25ProfitTable::find(conpeek(mLoop.value(), #Value3)).DimensionNum;
                        ledgerJournalTrans.Txt += "@GEE16624" + #Blank + conpeek(mLoop.value(), #Value4);
                        break;
                    case RTax25PostingRoll::ExpenseAndIncome:
                        ledgerJournalTrans.Dimension[#Value3] = RTax25ProfitTable::find(mLoop.key()).DimensionNum;
                        ledgerJournalTrans.Txt += "@GEE16625" + #Blank + mLoop.key();
                        break;
                    case RTax25PostingRoll::Tax:
                        ledgerJournalTrans.Txt += "@GEE16626" + #Blank + ledgerJournalTrans.TaxCode;
                        break;
                    case RTax25PostingRoll::Total:
                        ledgerJournalTrans.Txt += "@GEE16637";
                        break;
          }
т.е. заполняется аналитика с номером 3("Цель"), не зависимо от настроек, поскольку номер аналитики прописан в макросе, а не берется из настроек!
Если внести следующие исправления(это можно сделать более красиво, MS виднее):

X++:
..............................
             int        dimIdx;
..............................
            dimIdx = RTax25Parameters::find().DimensionCode+1;
..............................
           switch (postingRoll)
           {
                   case RTax25PostingRoll::Source:
                        ledgerJournalTrans.Dimension[dimIdx ] = RTax25ProfitTable::find(conpeek(mLoop.value(), #Value3)).DimensionNum;
                        ledgerJournalTrans.Txt += "@GEE16624" + #Blank + conpeek(mLoop.value(), #Value4);
                        break;
                    case RTax25PostingRoll::ExpenseAndIncome:
                        ledgerJournalTrans.Dimension[dimIdx ] = RTax25ProfitTable::find(mLoop.key()).DimensionNum;
                        ledgerJournalTrans.Txt += "@GEE16625" + #Blank + mLoop.key();
                        break;
                    case RTax25PostingRoll::Tax:
                        ledgerJournalTrans.Txt += "@GEE16626" + #Blank + ledgerJournalTrans.TaxCode;
                        break;
                    case RTax25PostingRoll::Total:
                        ledgerJournalTrans.Txt += "@GEE16637";
                        break;
          }
то будет заполняться правильная аналитика в строках журнала.
За это сообщение автора поблагодарили: belugin (3).