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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.02.2020, 09:46   #1  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
365 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Из ГК конечно данные берутся, вроде это известная ошибка стандарта, когда у вас преобразование сделано той же датой, что и основная проводка, как то исправлял, для клиентов или для поставщиков.

Там проблема в том, что подбор по проводкам ГК идет по принципу какую первую проводку с типом Сальдо по поставщику\Сальдо по клиенту система определит для ваучера и даты (а номер ваучера то у нас для оплаты и предоплаты одинаковый), тот счет и будет использовать, т.е. либо авансовый, либо нет.

Исходный код вот тут RLedgerTurnoverTypeCustVend\getMainAccountNum (метод используется для ОСВ и по клиентам и по поставщикам, учтите этот момент когда\если будете вносить правки) :

X++:
/// <summary>
/// Retrieves the Main account for the transaction.
/// </summary>
/// <param name="_custVendTrans">
/// The transaction table buffer.
/// </param>
protected void getMainAccountNum(CustVendTrans _custVendTrans)
{
    GeneralJournalAccountEntry generalJournalAccountEntry;
    GeneralJournalEntry generalJournalEntry;
    SubledgerVoucherGeneralJournalEntry subledgerVoucherGeneralJournalEntry;

    if (_custVendTrans.Voucher          != voucher          ||
        _custVendTrans.TransDate        != accountingDate   ||
        _custVendTrans.PostingProfile   != postingProfile)
    {
        voucher         = _custVendTrans.Voucher;
        accountingDate  = _custVendTrans.TransDate;
        postingProfile  = _custVendTrans.PostingProfile;

        while select * from generalJournalAccountEntry
            exists join generalJournalEntry
                where generalJournalEntry.RecId  == generalJournalAccountEntry.GeneralJournalEntry
                   && generalJournalEntry.Ledger == Ledger::current()
            exists join subledgerVoucherGeneralJournalEntry
                where subledgerVoucherGeneralJournalEntry.GeneralJournalEntry == generalJournalEntry.RecId
                   && subledgerVoucherGeneralJournalEntry.Voucher             == voucher
                   && subledgerVoucherGeneralJournalEntry.AccountingDate      == accountingDate
        {
            if ((_custVendTrans.AmountMST
                && generalJournalAccountEntry.AccountingCurrencyAmount * _custVendTrans.AmountMST > 0)
                || (! _custVendTrans.AmountMST
                && generalJournalAccountEntry.ReportingCurrencyAmount * _custVendTrans.ReportingCurrencyAmount > 0)
                && _custVendTrans.Correct == generalJournalAccountEntry.IsCorrection)
            {
                mainAccountNum = DimensionStorage::getMainAccountNumFromLedgerDimension(generalJournalAccountEntry.LedgerDimension);

                if (conFind(this.ledgerPostingType(), generalJournalAccountEntry.PostingType))
                {
                    break;
                }
            }
        }
    }
}
__________________
Sergey Nefedov
За это сообщение автора поблагодарили: Logger (5), mnt_dx (3).
Старый 04.02.2020, 21:27   #2  
mnt_dx is offline
mnt_dx
Участник
Axapta Retail User
Лучший по профессии 2014
 
1,745 / 188 (10) ++++++
Регистрация: 17.02.2011
Адрес: К Северу через Северо-Запад
Цитата:
Сообщение от SRF Посмотреть сообщение
Из ГК конечно данные берутся, вроде это известная ошибка стандарта, когда у вас преобразование сделано той же датой, что и основная проводка, как то исправлял, для клиентов или для поставщиков.

Там проблема в том, что подбор по проводкам ГК идет по принципу какую первую проводку с типом Сальдо по поставщику\Сальдо по клиенту система определит для ваучера и даты (а номер ваучера то у нас для оплаты и предоплаты одинаковый), тот счет и будет использовать, т.е. либо авансовый, либо нет.

Исходный код вот тут RLedgerTurnoverTypeCustVend\getMainAccountNum (метод используется для ОСВ и по клиентам и по поставщикам, учтите этот момент когда\если будете вносить правки) :
Попробовал сейчас - оплата 01.02.2020, преобразование в предоплату 02.02.2020 - получается дата не учитывается и все равно попадается первая проводка?
Старый 05.02.2020, 09:07   #3  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
365 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Тут надо посмотреть на проводки по поставщику, и на проводки в ГК сформированные к ним.

Дата для подбора счета ГК выбирается из даты проводки по поставщику, если у вас проводка одна(что конечно вряд ли), то счет будет старый.

Вот, например, если смотреть 13.01 оплата -> 14.01 предоплата, в ОСВ на 14.01 баланс на 62 счете.
Миниатюры
Нажмите на изображение для увеличения
Название: Проводки.png
Просмотров: 148
Размер:	57.6 Кб
ID:	12558   Нажмите на изображение для увеличения
Название: ОСВ по поставщикам.png
Просмотров: 178
Размер:	21.9 Кб
ID:	12559  

__________________
Sergey Nefedov
Старый 05.02.2020, 10:47   #4  
mnt_dx is offline
mnt_dx
Участник
Axapta Retail User
Лучший по профессии 2014
 
1,745 / 188 (10) ++++++
Регистрация: 17.02.2011
Адрес: К Северу через Северо-Запад
Цитата:
Сообщение от SRF Посмотреть сообщение
Тут надо посмотреть на проводки по поставщику, и на проводки в ГК сформированные к ним.

Дата для подбора счета ГК выбирается из даты проводки по поставщику, если у вас проводка одна(что конечно вряд ли), то счет будет старый.

Вот, например, если смотреть 13.01 оплата -> 14.01 предоплата, в ОСВ на 14.01 баланс на 62 счете.
Это у вас уже с исправлением? Потому что получается коррекция оплаты и предоплата проходят одним днем и ОСВ поставщика все еще показывает старый счет. Ваучер один
Нажмите на изображение для увеличения
Название: Снимок экрана 2020-02-05 в 10.37.51.png
Просмотров: 251
Размер:	47.2 Кб
ID:	12565

Нажмите на изображение для увеличения
Название: Снимок экрана 2020-02-05 в 10.42.46.png
Просмотров: 246
Размер:	55.5 Кб
ID:	12566
Старый 05.02.2020, 13:12   #5  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
365 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Нет, в данном случае стандарт работает, проводка по поставщику за 14.01 только одна подходит по ваучеру предоплаты - только 62 счет, у неё признак коррекции = нет, как и у проводки ГК, такая проводка одна, т.е. тут однозначный выбор у системы.

А список проводок по поставщику как выглядит c данным номером ваучера у вас ?
По идее для проводки по поставщику VPAY* от 02.02 с признаком предоплаты система должна у вас подбирать 62 счет.
__________________
Sergey Nefedov
Старый 05.02.2020, 14:29   #6  
mnt_dx is offline
mnt_dx
Участник
Axapta Retail User
Лучший по профессии 2014
 
1,745 / 188 (10) ++++++
Регистрация: 17.02.2011
Адрес: К Северу через Северо-Запад
Цитата:
Сообщение от SRF Посмотреть сообщение
Нет, в данном случае стандарт работает, проводка по поставщику за 14.01 только одна подходит по ваучеру предоплаты - только 62 счет, у неё признак коррекции = нет, как и у проводки ГК, такая проводка одна, т.е. тут однозначный выбор у системы.

А список проводок по поставщику как выглядит c данным номером ваучера у вас ?
По идее для проводки по поставщику VPAY* от 02.02 с признаком предоплаты система должна у вас подбирать 62 счет.
Из поставщика видно три проводки - исходная оплата 01.02, коррекция оплаты 02.02 и предоплата 02.02. Но счет берется Оплатный.
В LedgerJournalTrans по этому ваучеру только одна проводка.
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок экрана 2020-02-05 в 14.27.39.png
Просмотров: 190
Размер:	58.1 Кб
ID:	12568  
Старый 05.02.2020, 15:49   #7  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
365 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Да, вот это странно, по последней проводке как раз должен подтянуться предоплатный счет (скрины я делал с r3, но думаю это должно слабо влиять).

А вы можете посмотреть в код метода RLedgerTurnoverTypeCustVend\getMainAccountNum - он такой же, как я приводил ? Видимо надо брать разработчика и пусть смотрит
__________________
Sergey Nefedov
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Разница на счете между оборотно-сальдовой ведомостью и анализом счета Art_Tanis DAX: Функционал 13 22.01.2016 19:31
DAX 2012, Печать лишних страниц Оборотно-сальдовой ведомости. Товарищ ♂uatr DAX: Администрирование 1 30.04.2014 15:15
Ошибка оборотно-сальдовой ведомости ГК Serge_DD DAX: Функционал 17 06.05.2011 18:33
Сортировка в оборотно-сальдовой ведомости по поставщикам Silphidae DAX: Программирование 6 16.02.2010 15:02
Отрицательная сумма в оборотно-сальдовой ведомости на конец периода tolstjak DAX: Функционал 1 23.11.2004 18:36

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

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

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