Показать сообщение отдельно
Старый 02.04.2015, 16:10   #1  
Music is offline
Music
Участник
 
33 / 10 (1) +
Регистрация: 01.07.2014
? QUERY - как присоединить одну таблицу к запросу несколько раз?
Коллеги, прошу вашей помощи.

Делаю запрос на таблице HcmPersonSkill
К полям Certifier и RatingLevelExaminer через запрос пытаюсь привязать PersonalNumber соответствующих Wokers, но в итоге оба раза выводится один и тот же PersonalNumber.

Где ошибка?

X++:
    HcmPersonSkill          personSkill;   
    HcmWorker               workerCertifier, workerRatingLevelExaminer;

    QueryRun queryRun;
    Query ret = new Query();
    QueryBuildDataSource  qbdsPersonSkill, qbdsWorkerCertifier, qbdsWorkerRatingLevelExaminer;


    qbdsPersonSkill            = ret.addDataSource(tableNum(HcmPersonSkill));
    
    qbdsWorkerCertifier       = qbdsPersonSkill.addDataSource(tableNum(HcmWorker));
    qbdsWorkerCertifier.clearLinks();
    qbdsWorkerCertifier.addLink(fieldNum(HcmPersonSkill, Certifier), fieldNum(HcmWorker, RecId));
    qbdsWorkerCertifier.joinMode(JoinMode::OuterJoin);
    qbdsWorkerCertifier.fetchMode(QueryFetchMode::One2One);

    qbdsWorkerRatingLevelExaminer       = qbdsPersonSkill.addDataSource(tableNum(HcmWorker));
    qbdsWorkerRatingLevelExaminer.clearLinks();
    qbdsWorkerRatingLevelExaminer.addLink(fieldNum(HcmPersonSkill, RatingLevelExaminer), fieldNum(HcmWorker, RecId));
    qbdsWorkerRatingLevelExaminer.joinMode(JoinMode::OuterJoin);
    qbdsWorkerRatingLevelExaminer.fetchMode(QueryFetchMode::One2One);

Последний раз редактировалось Music; 02.04.2015 в 16:18.