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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.12.2007, 14:54   #1  
UNRW is offline
UNRW
Участник
 
383 / 67 (3) ++++
Регистрация: 16.09.2004
Адрес: Москва
оказалось косяпта лажается на строках
X++:
                                  vendLedgerAccounts.AccountCode    == TableGroupAll::Table
                               && vendLedgerAccounts.Num            == vendTrans.AccountNum
vendLedgerAccounts.Num
vendTrans.AccountNum

имеют выравнивания строки Left и Right

и SQL сервер не находит совпадений


можно попробовать так:
X++:
                                  vendLedgerAccounts.AccountCode    == TableGroupAll::Table
                               && vendLedgerAccounts.Num           like vendTrans.AccountNum
правда like в этом запросе не гуд
надо бы сделать LTRIM для обоих полей (Аксапта не умеет так делать), но тем не менее:
X++:
static void DK_vendSaldoByProfiles(Args _args)
{
    VendLedgerAccounts  vendLedgerAccounts;
    VendTrans           vendTrans;
    VendTable           vendTable;
    Amount              bablosDeb;
    Amount              bablosCred;
    TransDate           transDate;
    ;

    transDate = 30\09\2007;

    while select vendTable
        group by VendGroup
        join sum (amountMst) from vendTrans
            group by AccountNum
                where
                      vendTrans.TransDate  <= transDate
                   && vendTrans.AccountNum == vendTable.AccountNum
            join vendLedgerAccounts
                    where
                          vendLedgerAccounts.SumAccount     == "60.02.0001"
                       && vendLedgerAccounts.PostingProfile == vendTrans.PostingProfile
                       && (
                              (
                                  vendLedgerAccounts.AccountCode    == TableGroupAll::Table
                               && vendLedgerAccounts.Num            like vendTrans.AccountNum
                              )
                          ||  (
                                  vendLedgerAccounts.AccountCode    == TableGroupAll::GroupId
                               && vendLedgerAccounts.Num            == vendTable.VendGroup
                              )
                          ||
                              (
                                  vendLedgerAccounts.AccountCode    == TableGroupAll::All
                              )
                          )
    {

        if (vendTrans.AmountMST > 0)
            bablosDeb += vendTrans.AmountMST;
        else
            bablosCred += vendTrans.AmountMST;
    }

    info(strfmt("%1   %2   ", bablosDeb, bablosCred));

}

Последний раз редактировалось UNRW; 11.12.2007 в 14:57.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Оборотно-сальдовая ведомость по складу miklenew DAX: Функционал 15 29.03.2010 12:27
Оборотно-сальдовая ведомость по клиентам kvan DAX: Программирование 11 30.11.2007 12:00
Оборотно-сальдовая ведомость (или проводки по складу) oleg_e DAX: Функционал 5 01.10.2007 13:39
Оборотно-вальдовая ведомость (поставщики) G.Menshikh DAX: Программирование 4 06.12.2006 10:19
Оборотно-сальдовая ведомость. gaenar DAX: База знаний и проекты 1 07.10.2005 19:47
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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