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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.02.2017, 12:52   #1  
Skolos is offline
Skolos
Участник
 
56 / 13 (1) ++
Регистрация: 06.01.2016
Post Как обновить сумму в Сведениях о Предложениях по Продажам
Добрый день.
Возникла следующая проблема. АХ 2009.
В форме Сведения о Предложениях по Продажам когда прописываю ценовую группу на строках не обновляется поле SalesQuotationLine.SalesPrice. Не знаю должно ли оно обновляться в стандарте. Еще не очень силен в АХ.
Это связка SalesQuotationTable - SalesQuotationLine
Посмотрел что в Сведениях по Заказам на Продажу SalesTable - SalesLine подобное обновление цены работает. Нашел функционал который возвращает цену.
Это класс PriceDisc. Вот пример моего джоба:
X++:
PriceDisc       priceDisc;
SalesQuotationTable sqt = SalesQuotationTable::findRec(5637146892);
SalesQuotationLine  sql;
;
 While select sql where sqt.QuotationId == sql.QuotationId
    {
        priceDisc = new PriceDisc(ModuleInventPurchSales::Sales,
                              sql.ItemId,
                              sql.inventDim(),
                              sql.SalesUnit,
                              today(),
                              sql.SalesQty,
                              sqt.CustAccount,
                              sqt.CurrencyCode);

        if(priceDisc.findPrice(sql.priceGroupId()))
            info(strfmt("%1",priceDisc.price()));
        else
            info('BAD RESULT');
    }
Если вносить значения из SalesLine все круто, а вот с данными из SalesQuotationLine всегда возвращает 0. Может я чего то не знаю и не правильно делаю? Как получить необходимую мне цену? Заранее Спасибо!!!
Старый 21.02.2017, 13:04   #2  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Ценовую группу надо прописать в шапке предложения по продаже: метод с строках, который вы используете, анализирует заголовок, а не значение в строке.
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Старый 21.02.2017, 13:18   #3  
Skolos is offline
Skolos
Участник
 
56 / 13 (1) ++
Регистрация: 06.01.2016
Она прописана в шапке и передается методом sql.priceGroupId().

X++:
PriceGroupId  priceGroupId()
{
    ;
    return this.salesQuotationTable().PriceGroupId;
}
Или я Вас не правильно понял?
Старый 21.02.2017, 13:26   #4  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Вы же написали, что ценовую группу прописываете в строках и ждете обновления цены в строке. Попробуйте изменить ценовую группу в шапке: появиться ли запрос на обновление строк предложения?
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Старый 21.02.2017, 13:32   #5  
Skolos is offline
Skolos
Участник
 
56 / 13 (1) ++
Регистрация: 06.01.2016
Цитата:
Сообщение от KiselevSA Посмотреть сообщение
Вы же написали, что ценовую группу прописываете в строках и ждете обновления цены в строке. Попробуйте изменить ценовую группу в шапке: появиться ли запрос на обновление строк предложения?
Извините, не правильно выразился. Когда присваиваю ценовую группу в шапке SalesQuotationTable, на строках SalesQuotationLine ничего не происходит. Цена не обновляется.
Старый 21.02.2017, 14:14   #6  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Похоже, что поиск цены срабатывает только на изменение количества в строке (попробуйте изменить кол-во в одной из строк). Если так, то придется дописать вызов метода
X++:
SalesQuotationLine.setPriceDisc()
при изменении поля с ценовой группой в заголовке предложения.
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Старый 21.02.2017, 14:19   #7  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,164 / 1296 (48) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Цитата:
Сообщение от Skolos Посмотреть сообщение
Когда присваиваю ценовую группу в шапке SalesQuotationTable, на строках SalesQuotationLine ничего не происходит.
К сожалению, это в стандарте такое поведение системы.
Для заказов на продажу реализована инфраструктура ...Table2Line..., а для предложений по продажам не реализована. Некоторые данные с стандарте обновляются при изменении заголовка (доступные даты, адреса), но ценовые соглашения, увы, не обновляются.
А почему джоб ничего не находит, это уже отладчиком нужно проходить. Вариантов масса, включая что у вас не заполнен клиент, а только BusRelAccount, не те валюты, не те даты и т.п.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
AX2012 R2, R3: Не создается предложение по продажам Kabardian DAX: Функционал 4 20.09.2014 23:10
Почему дата поставки в подпроизводстве становится при обновить приемка сегодняшней датой???? Murlin DAX: Функционал 8 27.08.2009 14:51
Как обновить форму из класса? Hidden DAX: Программирование 8 06.12.2005 11:30
Как в Накладной на услуги включить налог в сумму накладной? malex DAX: Функционал 5 25.08.2004 17:57
Метод класса, возвращающий сумму налога. 2.5SP5 studentLPC DAX: Программирование 2 25.07.2003 12:21

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

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

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