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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.09.2015, 12:30   #1  
Andrey_MOO is offline
Andrey_MOO
Участник
 
1 / 10 (1) +
Регистрация: 02.09.2015
Обработка входящего НДС
Добрый день!
После проведения операции обработка входящего НДС есть дебетовое сальдо на счете. Подскажите как можно проанализировать по каким именно номерам фактур не прошла операция возмещение НДС?
Дело в том что операцию возмещение НДС я вижу суммарными проводками в LedgerTrans.
Я подумываю сделать это так - взять операцию с типом возмещение НДС из PurchBookVATProcessLogTransOper_RU дальше приджоинить PurchBookVATProcessLogTrans_RU по RefRecId, это будут операции возмешения НДС с номером счета фактуры, а дальше сделать обратную выборку по начислениям из первой таблицы и сопоставить их.

Система: AX 2009 RollUp7
Старый 02.09.2015, 13:16   #2  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
А почему не взять все записи из журнала входящих счетов-фактур, для которых нет записей в PurchBookVATProcessLogTrans_RU?
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Старый 02.09.2015, 14:07   #3  
Art_Tanis is offline
Art_Tanis
Участник
 
225 / 36 (2) +++
Регистрация: 04.02.2014
Журнал входящих счетов фактуры это какой? FactureJour c признаком ModuleCustVend::Vend?
Сейчас попробую. Мне бы просто это еще иметь ввиде счетов.
Старый 02.09.2015, 15:52   #4  
Art_Tanis is offline
Art_Tanis
Участник
 
225 / 36 (2) +++
Регистрация: 04.02.2014
Фактически этот вариант подошел. FactureJour_RU выбрать фактуры которые входящие. Дальше проверить их наличии в таблице PurchBookVATProcessLogTrans_RU. Фактически на форме журнал Фактур есть кнопка - История обработки НДС.
Старый 03.09.2015, 11:34   #5  
ppson is offline
ppson
Участник
Аватар для ppson
Ex AND Project
1C
 
2,102 / 114 (8) +++++
Регистрация: 25.06.2002
Адрес: SPb, Msk
Подскажите как можно проанализировать по каким именно номерам фактур не прошла операция возмещение НДС?
Возмещение не пройдет по накладным, у которых есть налог, но нет фактуры.
Не проверяли список неотфактурованных накладных?
__________________
Старый 03.09.2015, 12:13   #6  
Art_Tanis is offline
Art_Tanis
Участник
 
225 / 36 (2) +++
Регистрация: 04.02.2014
С этим все оказалось в порядке. Все накладные имеют счет фактуру. В процессе проверки оказалась одна СЧ у которая существует в FactureJour_RU но отсуствует в PurchBookVATProcessLogTrans_RU за выбранный период. Остается только понять причину. Дата фактуры 19.06. Проверка происходила за 0104..3006.
Старый 03.09.2015, 16:50   #7  
Art_Tanis is offline
Art_Tanis
Участник
 
225 / 36 (2) +++
Регистрация: 04.02.2014
Вот код который поможет найти не попавшие фактуры в обработку:
X++:
static void _HTC_VAT_Analyze_ObrabotkaNDS(Args _args)
{
    Dialog                              dialog = new Dialog();
    DialogField                         dlgDateStart;
    DialogField                         dlgDateEnd;
    
    Query                               query = new Query();
    QueryBuildDataSource                qbds;
    QueryRun                            qr;

    TransDate                           startDate, endDate;
    FactureJour_RU                      factureJour;

    COM rstAxa;    
    COM flds, fld; 
    COM xlApp;           
    COM wbks, wbk;      
    COM wkss, wks;        
    COM rng, cell, rngCR; 
    COM font;             
    COM entCol;          
    COM actWin;          
    int i, iMax;


    int adoTypeToExcel(str _type)
    {
        switch (_type)
        {
            case 'num' : return   5; // adDouble
            case 'str' : return   8; // adBSTR
            case 'date': return 133; // adDBDate
        }
        return 8;
    }


    ;
    dlgDateStart = dialog.addField(typeid(TransDate),'StartDate');
    dlgDateEnd  = dialog.addField(typeid(TransDate),'EndDate');

    dialog.run();
    
    startDate = dlgDateStart.value();
    endDate = dlgDateEnd.value();
    
    rstAxa = new COM('ADODB.Recordset');
    flds = rstAxa.Fields();
    flds.Append("FactureDate"         , adoTypeToExcel('date'));
    flds.Append("FactureExternalId"         , adoTypeToExcel('str'));
    flds.Append("CustVendAC"         , adoTypeToExcel('str'));
    flds.Append("Amount"         , adoTypeToExcel('num'));
    flds.Append("Tax"         , adoTypeToExcel('num'));
    rstAxa.Open();

    qbds = query.addDataSource(tableNum(FactureJour_RU));
    qbds.addRange(fieldNum(FactureJour_RU, Module)).value(queryValue(FactureModule_RU::Vend));
    qbds.addRange(fieldNum(FactureJour_RU, FactureDate)).value(strfmt('((%1 >= %2) && (%1 <= %3))', fieldstr(FactureJour_RU, FactureDate),date2StrXpp(startDate), date2StrXpp(endDate)));

    qbds = query.dataSourceTable(tableNum(FactureJour_RU)).addDataSource(tableNum(PurchBookVATProcessLogTrans_RU));
    qbds.relations(true);
    qbds.joinMode(JoinMode::NoExistsJoin);

    qr = new QueryRun(query);
    
    while(qr.next())
    {
        factureJour = qr.get(tableNum(FactureJour_RU));
        
        rstAxa.AddNew();
        fld = flds.Item("FactureDate"); fld.Value(facturejour.FactureDate);
        fld = flds.Item("FactureExternalId"); fld.Value(facturejour.FactureExternalId);
        fld = flds.Item("CustVendAC"); fld.Value(facturejour.CustVendInvoiceAccount);
        fld = flds.Item("Amount"); fld.Value(facturejour.FactureAmount);
        fld = flds.Item("Tax"); fld.Value(facturejour.FactureTax);
        rstAxa.Update();
    }

    xlApp = new COM('Excel.Application');

    wbks = xlApp.Workbooks();
    wbk  = wbks.Add();
    wkss = wbk.Worksheets();
    wks  = wkss.Item(1);
    wks.Name('NotExistsInPurchBook');
    rng  = wks.Range('A1');

    flds = rstAxa.Fields();
    iMax = flds.Count() - 1;
    for (i = 0; i <= iMax; i += 1)
    {
        fld = flds.Item(i);
        cell = rng.Offset(0, i);
        cell.Value2(fld.Name());
    }
    rngCR = rng.CurrentRegion();
    font = rngCR.Font();
    font.Bold(true);

    cell = rng.Offset(1, 0);
    cell.CopyFromRecordset(rstAxa);

    rngCR = rng.CurrentRegion();
    entCol = rngCR.EntireColumn();
    entCol.AutoFit();

    cell.Select();
    actWin = xlApp.ActiveWindow();
    actWin.FreezePanes(true);
    xlApp.Visible(true);
    rstAxa.Close();
}
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
обработка входящего ндс (сторно предоплаты) Nati DAX: Программирование 0 11.04.2014 09:08
Обработка входящего НДС. Нечего разносить S.Kuskov DAX: Функционал 4 11.01.2013 17:15
Обработка входящего НДС andrw DAX: Функционал 12 05.03.2008 11:35
SP4. Обработка входящего НДС ToRo DAX: Функционал 7 19.01.2006 11:44
Налоговые выплаты & Обработка входящего НДС uvi DAX: Функционал 9 01.08.2003 13:18

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

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

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