Показать сообщение отдельно
Старый 13.02.2012, 18:36   #1  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Не цепляется второй дочерний датасорс в запросе
X++:
Query       query;
    QueryBuildDataSource    dsInventTrans,
                            dsInventTransPosting,
                            dsInventDim;
    int                     i;
    ;

    query = new Query();

    // Инициализация структуры запроса
    // InventTrans
    dsInventTrans   =   query.addDataSource(tablenum(InventTrans));
    dsInventTrans.name('dsInventTrans');
    dsInventTrans.firstFast(false);

    dsInventTransPosting    = dsInventTrans.addDataSource(tablenum(InventTransPosting));
    dsInventDim             = dsInventTrans.addDataSource(tablenum(InventDim));

    // Дальнейший код
Есть вот такой код. Создаю запрос, в который добавляю Датасорс InventTrans.
(dsInventTrans = SELECT FIRSTFAST * FROM InventTrans)
После, к нему добавляю дочерний датасорс InventTransPosting, в датасорсе InventTrans значение меняется на
(dsInventTrans = SELECT * FROM InventTrans JOIN FIRSTFAST * FROM InventTransPosting)
Далее цепляю к dsInventTrans второй датасорс dsInventDim на что в датасорсе dsInventTrans значение меняется на:
(dsInventTrans = SELECT * FROM InventTrans).
Добавление второго Датасорса сбивает первый дочерний и все связи, которые до сих пор были добавлены.
Подскажите как можно справиться с проблемой и что это может быть. Версия DAX 2009. Спасибо.

Последний раз редактировалось Cardagant; 13.02.2012 в 18:51.