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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.04.2010, 18:43   #1  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
подсчет баланса в валюте счета
Мне нужно посчитать баланс счета в валюте счета.
На данный момент для подсчета в валюте компании используется LedgerTable::balanceAccount(ledgerBalanceControlFieldList.AccountNum); ( он внутри вызывает LedgerBalanceSum_CurrentMST.balanceAccount (AccountNum)). Что лучше использовать для подсчета баланса в валюте счета?
Старый 26.04.2010, 13:08   #2  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
неужели никто не знает ?
За это сообщение автора поблагодарили: mazzy (-2).
Старый 26.04.2010, 13:23   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,430 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Предположу, что LedgerBalanceSum_CurrentCur. По крайней мере оборотно-сальдовая ведомость использует именно его
Старый 26.04.2010, 13:26   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
почему вы так решили?
Рекомендации - Как правильно задать вопрос, чтобы быть услышанным

Я, например, не понимаю, что значит "лучше" в вашей трактовке.
Я, например, не понимаю, чем не устраивает LedgerBalanceCur_Current. Пример использования можно посмотреть в План счетов \ кнопка Сальдо \ Сальдо по валютам. Форма LedgerBalanceCurrency
__________________
полезное на axForum, github, vk, coub.
Старый 26.04.2010, 13:33   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Предположу, что LedgerBalanceSum_CurrentCur. По крайней мере оборотно-сальдовая ведомость использует именно его
такой был в трешке и в четверке.
начиная с пятерки семейство классов LedgerBalance* перетрясли.
теперь нужно юзать LedgerBalanceCur_Current
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: S.Kuskov (2).
Старый 26.04.2010, 13:57   #6  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
Спасибо большое .
Я не говорю, что LedgerBalanceCur_Current не устраивает, но не очевидно то, что он делает то же, что LedgerBalanceSum_CurrentMST, но в валюте счета. По незнанию напортачить с фин. данными совсем не хочется. Есть функционал, который персчитывает суммы по текущему курсу , а есть тот, что использует данные на момент транзакции, и при тестировании расхождения в расчетах легко могут быть не замечены. А потом расхлебывать последствия будет поздно, поэтому лучше в таких случаях уточнить, чем писать, как "кажется" верным.
Старый 26.04.2010, 14:01   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от IKA Посмотреть сообщение
Я не говорю...
Лучше скажите какая у вас версия Аксапты
__________________
полезное на axForum, github, vk, coub.
Старый 26.04.2010, 14:29   #8  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
AX2009 SP1
Старый 26.04.2010, 15:05   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Ясно.

Цитата:
Сообщение от IKA Посмотреть сообщение
Я не говорю, что LedgerBalanceCur_Current не устраивает, но не очевидно то, что...
1. Построить перекрестные ссылки.
2. Нажать на классе правой кнопкой мыши Иерархия объектов.
3. ...
4. Profit.

Семейство классов LedgerBalances в ax2009
Нажмите на изображение для увеличения
Название: 1.PNG
Просмотров: 353
Размер:	119.4 Кб
ID:	5746

Цитата:
Сообщение от mazzy Посмотреть сообщение
такой был в трешке и в четверке.
начиная с пятерки семейство классов LedgerBalance* перетрясли.
теперь нужно юзать LedgerBalanceCur_Current
==========
Суть изменений следующая:
1. Классы семейства LedgerBalance рассчитывают не одно сальдо, а сальдо по всем счетам (и, возможно, по аналитикам, по валютам)
2. Разница между LedgerBalanceSum* и остальными в том, что LedgerBalanceSum возвращает в методе balance одно число, а остальные возвращают набор в KeySum.
3. Изменения в пятерке направлены на то, чтобы клиент меньше дергал сервер. Поэтому использование LedgerBalanceSum - минимизируется. (Сравните формы Сальдо по валютам и Сальдо по аналитике в ax2009 и в более ранних версиях)

Обратите внимание на классы с суффиксом _RU.
В ax2009 вместо того, чтобы сделать рефакторинг кода в соответствии с общей тенденцией, локализаторы "просто" восстановили "недостающие" классы.


Семейство классов LedgerBalances в ax4.0
Нажмите на изображение для увеличения
Название: 2.PNG
Просмотров: 256
Размер:	92.7 Кб
ID:	5747
__________________
полезное на axForum, github, vk, coub.
Старый 26.04.2010, 15:29   #10  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
Да, возвращается несколько значений - на каждую валюту по сумме(если не разбивать по dim), поэтому если нужно подсчитать итог для счета с типом "итого", когда под ним лежат счета в разной валюте, то будет возвращено несколько значений(по одному на валюту), как я понимаю. Есть еще boolean параметр "sumAccounts" в New(), но не вижу, чтобы он где-либо использовался.
А в практике такое бывает, что счет с типом "итого" включает счета в разной валюте? (вроде, аксапта этого не запрещает)

Последний раз редактировалось IKA; 26.04.2010 в 15:33.
Старый 26.04.2010, 15:34   #11  
Ned is offline
Ned
Lean Six Sigma
 
680 / 99 (5) ++++
Регистрация: 29.12.2002
Адрес: самолёт
Да, конечно, например 52 "Валютные счета"
__________________
Viacheslav Nefedov, http://www.nefedov.net, http://restock.guru/
Старый 26.04.2010, 15:58   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от IKA Посмотреть сообщение
поэтому если нужно подсчитать итог для счета с типом "итого",
....
Есть еще boolean параметр "sumAccounts" в New(), но не вижу, чтобы он где-либо использовался.
Не нужно считать. Нужно параметр в new указать.

параметр используется в плане счетов для сальдо в национальной валюте.
__________________
полезное на axForum, github, vk, coub.
Старый 26.04.2010, 17:48   #13  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
Цитата:
Сообщение от mazzy Посмотреть сообщение
Не нужно считать. Нужно параметр в new указать.

параметр используется в плане счетов для сальдо в национальной валюте.
Сальдо в нац валюте - это сальдо в валюте компании? То есть, форма LedgerTable->кнопка Balance(ButtonBalance)->ButtonLedgerAccountBalance?
В моем приложении там вызывается LedgerBalanceSum_CurrentMST и этот параметр sumAccounts не используется. В всей иерархии ledgerBalance* в моем приложении sumAccounts используется только в New().
Старый 26.04.2010, 21:17   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от IKA Посмотреть сообщение
Сальдо в нац валюте - это сальдо в валюте компании? То есть, форма LedgerTable->кнопка Balance...
При чем здесь кнопка?
вы же сами начали приводить пример.
там и ищите.

Цитата:
Сообщение от IKA Посмотреть сообщение
LedgerTable::balanceAccount(ledgerBalanceControlFieldList.AccountNum); ( он внутри вызывает LedgerBalanceSum_CurrentMST.balanceAccount (AccountNum)).
__________________
полезное на axForum, github, vk, coub.
Старый 27.04.2010, 01:53   #15  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
Может, мы о разных вещах говорим? Попробую выразиться предельно конкретно. В методе new LedgerBalance* есть boolean параметр sumAccounts, который я не вижу, чтобы где-либо использовался внутри иерархии. В каком методе в иерархии классов LedgerBalance в вашем приложении используется boolean (!) параметр sumAccounts?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Остатки по поставщику в основной валюте oveli DAX: Функционал 2 29.10.2007 15:58
еще раз о корреспонденции во вторичной валюте andy239 DAX: Программирование 3 25.01.2006 11:12
Сопоставление по клиентам в валюте SSM DAX: Функционал 5 26.07.2005 11:51
Отсутствие баланса в документе ГК во вторичной валюте Valery DAX: Функционал 6 15.11.2002 11:14
Неправильный подсчет количества в распечатке Счета ddadream DAX: Программирование 0 28.01.2002 12:42

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

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

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