AXForum  
Go Back   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Forgotten Your Password?
Register Forum Rules FAQ Members List Today's Posts Search

 
 
Thread Tools Search this Thread Display Modes
Old 23.04.2010, 18:43   #1  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Join Date: 15.03.2006
подсчет баланса в валюте счета
Мне нужно посчитать баланс счета в валюте счета.
На данный момент для подсчета в валюте компании используется LedgerTable::balanceAccount(ledgerBalanceControlFieldList.AccountNum); ( он внутри вызывает LedgerBalanceSum_CurrentMST.balanceAccount (AccountNum)). Что лучше использовать для подсчета баланса в валюте счета?
Old 26.04.2010, 13:08   #2  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Join Date: 15.03.2006
неужели никто не знает ?
This post has been rated by: mazzy (-2).
Old 26.04.2010, 13:23   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Join Date: 28.04.2007
Location: Калуга
Предположу, что LedgerBalanceSum_CurrentCur. По крайней мере оборотно-сальдовая ведомость использует именно его
Old 26.04.2010, 13:26   #4  
mazzy is offline
mazzy
Участник
mazzy's Avatar
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Join Date: 29.11.2001
Location: Москва
Blog Entries: 10
почему вы так решили?
Рекомендации - Как правильно задать вопрос, чтобы быть услышанным

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

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

Семейство классов LedgerBalances в ax2009
Click image for larger version

Name:	1.PNG
Views:	356
Size:	119.4 KB
ID:	5746

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

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


Семейство классов LedgerBalances в ax4.0
Click image for larger version

Name:	2.PNG
Views:	259
Size:	92.7 KB
ID:	5747
__________________
полезное на axForum, github, vk, coub.
Old 26.04.2010, 15:29   #10  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Join Date: 15.03.2006
Да, возвращается несколько значений - на каждую валюту по сумме(если не разбивать по dim), поэтому если нужно подсчитать итог для счета с типом "итого", когда под ним лежат счета в разной валюте, то будет возвращено несколько значений(по одному на валюту), как я понимаю. Есть еще boolean параметр "sumAccounts" в New(), но не вижу, чтобы он где-либо использовался.
А в практике такое бывает, что счет с типом "итого" включает счета в разной валюте? (вроде, аксапта этого не запрещает)

Last edited by IKA; 26.04.2010 at 15:33.
Old 26.04.2010, 15:34   #11  
Ned is offline
Ned
Lean Six Sigma
 
680 / 99 (5) ++++
Join Date: 29.12.2002
Location: самолёт
Да, конечно, например 52 "Валютные счета"
__________________
Viacheslav Nefedov, http://www.nefedov.net, http://restock.guru/
Old 26.04.2010, 15:58   #12  
mazzy is offline
mazzy
Участник
mazzy's Avatar
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Join Date: 29.11.2001
Location: Москва
Blog Entries: 10
Quote:
Originally Posted by IKA View Post
поэтому если нужно подсчитать итог для счета с типом "итого",
....
Есть еще boolean параметр "sumAccounts" в New(), но не вижу, чтобы он где-либо использовался.
Не нужно считать. Нужно параметр в new указать.

параметр используется в плане счетов для сальдо в национальной валюте.
__________________
полезное на axForum, github, vk, coub.
Old 26.04.2010, 17:48   #13  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Join Date: 15.03.2006
Quote:
Originally Posted by mazzy View Post
Не нужно считать. Нужно параметр в new указать.

параметр используется в плане счетов для сальдо в национальной валюте.
Сальдо в нац валюте - это сальдо в валюте компании? То есть, форма LedgerTable->кнопка Balance(ButtonBalance)->ButtonLedgerAccountBalance?
В моем приложении там вызывается LedgerBalanceSum_CurrentMST и этот параметр sumAccounts не используется. В всей иерархии ledgerBalance* в моем приложении sumAccounts используется только в New().
Old 26.04.2010, 21:17   #14  
mazzy is offline
mazzy
Участник
mazzy's Avatar
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Join Date: 29.11.2001
Location: Москва
Blog Entries: 10
Quote:
Originally Posted by IKA View Post
Сальдо в нац валюте - это сальдо в валюте компании? То есть, форма LedgerTable->кнопка Balance...
При чем здесь кнопка?
вы же сами начали приводить пример.
там и ищите.

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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Остатки по поставщику в основной валюте 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

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Рейтинг@Mail.ru
All times are GMT +3. The time now is 15:40.
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Contacts E-mail, Advertising.