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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.04.2012, 15:36   #1  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Поле "К расчетно-платежному документу"
Последняя версия кода (для RU8 + KB 2677302):

\Data Dictionary\Tables\FactureJour_RU\Methods\document
X++:
server public container document()
{
    DocumentNum         docNum;
    DocumentDate        docDate;

    FactureTrans_RU     tmpFactureTrans;
    LedgerJournalTrans  ledgerJournalTrans;
    Set                 docNumSet = new Set(Types::String);

    switch (this.FactureType)
    {
        case FactureType_RU::TaxCorrection   :
            if (this.vatTaxAgent && !this.DocumentNum && !this.DocumentDate)
            {
                while select ledgerJournalTrans
                    group by DocumentDate, DocumentNum
                    join tmpFactureTrans
                        where tmpFactureTrans.MarkupRefRecId == ledgerJournalTrans.RecId &&
                              tmpFactureTrans.Module         == this.Module              &&
                              tmpFactureTrans.FactureId      == this.FactureId
                {
                    docNumSet.add(ledgerJournalTrans.DocumentNum);

                    if (docNumSet.elements() > 1)
                    {
                        docNum  = '';
                        docDate = dateNull();
                        break;
                    }
                    docNum  = ledgerJournalTrans.DocumentNum;
                    docDate = ledgerJournalTrans.DocumentDate;
                }
            }
            break;

       // begin
       case FactureType_RU::Invoice:
            [docNum, docDate] = this. getPaymentInfo();
            break;
       
    }

    return [ docNum, docDate ];
}
X++:
container getPaymentInfo()
{
    RecordSortedList    rst;
    CustVendInvoiceJour custVendInvoiceJour;

    CustVendTrans       custVendTrans, custVendTransPayment;
    CustVendSettlement  custVendSettlement;

    CustInvoiceJour     custInvoiceJour;
    VendInvoiceJour     vendInvoiceJour;
    CustTrans           custTrans, custTransPayment;
    VendTrans           vendTrans, vendTransPayment;
    CustSettlement      custSettlement;
    VendSettlement      vendSettlement;

    DocumentNum         docuNum;
    DocumentDate        docDate;
    ;

    switch (this.Module)
    {
        case FactureModule_RU::Cust :
            custVendInvoiceJour = custInvoiceJour;
            custVendTrans = custTrans;
            custVendTransPayment = custTransPayment;
            custVendSettlement = custSettlement;
            break;
        case FactureModule_RU::Vend :
            custVendInvoiceJour = vendInvoiceJour;
            custVendTrans = vendTrans;
            custVendTransPayment = vendTransPayment;
            custVendSettlement = vendSettlement;
            break;
        default                     :
            throw error(Error::wrongUseOfFunction(funcname()));
    }

    rst = this.invoiceJourSortedList_CustVend();
    while (rst.next(custVendInvoiceJour))
    {
        custVendTrans = custVendInvoiceJour.CustVendInvoiceJour::custVendTrans(custVendTrans);

        while select custVendSettlement
            where custVendSettlement.TransCompany   == custVendTrans.dataAreaId
               && custVendSettlement.TransRecId     == custVendTrans.RecId
               && custVendSettlement.AccountNum     == custVendTrans.AccountNum
        {
            while select custVendTransPayment
               where custVendTransPayment.AccountNum    == custVendSettlement.AccountNum
                  && custVendTransPayment.Voucher       == custVendSettlement.OffsetTransVoucher
                  && custVendTransPayment.Recid         == custVendSettlement.OffsetRecid
            {
                docuNum += ((docuNum ? ', ' : '') + custTransPayment.Txt);
                docDate = max(docDate, custTransPayment.TransDate);
            }
        }
    }

    return [docuNum, docDate];
}
Старый 18.05.2012, 19:48   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
После выпуска RU8 разработчики активизировались и закрыли еще 3 проблемы, включая казавшуюся безнадежной проблему грузополучателя.

Последний раз редактировалось EVGL; 18.05.2012 в 19:58.
Старый 19.05.2012, 10:24   #3  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,160 / 1289 (47) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от EVGL Посмотреть сообщение
После выпуска RU8 разработчики активизировались и закрыли еще 3 проблемы.
А номера KB можно перечислить?
Старый 19.05.2012, 21:06   #4  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Цитата:
Сообщение от Raven Melancholic Посмотреть сообщение
А номера KB можно перечислить?
См. выше.
За это сообщение автора поблагодарили: Raven Melancholic (5).
Старый 20.05.2012, 10:02   #5  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,160 / 1289 (47) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от EVGL Посмотреть сообщение
См. выше.
То есть все в одном? Спасибо.
Теги
баг, локализация, накладная, ошибка, печатная форма, счет-фактура

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Уникальный индекс в журнале накладных поставщиков Starling DAX: Программирование 11 14.03.2011 17:02
Расхождение функционала журнала одобрения накладных. PavelM DAX: Функционал 4 22.12.2005 19:03
Ax3.0 SP3 CIS: Журнал накладных и российские договора (ошибка) mpa DAX: Функционал 2 11.10.2004 15:14
Как включить контроль изменений в журнале накладных ? NEO DAX: Функционал 0 17.06.2004 12:30
Одобрение накладных Swetik DAX: Функционал 1 24.11.2003 14:53

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:26.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.