Показать сообщение отдельно
Старый 23.04.2003, 13:30   #1  
daemon is offline
daemon
Участник
 
20 / 10 (1) +
Регистрация: 13.03.2003
Адрес: Москва, Россия
Post Re: Re: Lookup и связанные таблицы
Цитата:
Изначально опубликовано Wamr
Зачем LEFT OUTER JOIN?
Упс! Оно действительно не нужно. Но нужно сделать так, чтобы в lookup'е выводились только те записи из таблици UserInfo, которые соответствую записям в таблице DepUsers (Relation: UserInfo.Id==DepUser.UserID) и с условием DepUsers.DepartmentID == 'IT'...

Впринципе, после долгого мучения решение найдено:
PHP код:
public void lookup()
{
    
SysTableLookup          _sysTableLoookup SysTableLookup::newParameters(tablenum(UserInfo), this);
    
Query                   _query;
    
QueryBuildDataSource    _ds1;
    
QueryBuildDataSource    _ds2;
    ;

    
_sysTableLoookup.addLookupfield(fieldnum(UserInfoId), true);
    
_sysTableLoookup.addLookupfield(fieldnum(UserInfoName), false);

    
_query = new Query();
    
_ds1 _query.addDataSource(tablenum(UserInfo));
    
_ds2 _ds1.addDataSource(tablenum(DepUsers));
    
_ds2.addLink(fieldnum(UserInfoId), fieldnum(DepUsersUserID));
    
_ds2.addRange(fieldnum(DepUsersDepartmentID)).value('IT');

    
_sysTableLoookup.parmQuery(_query);
    
_sysTableLoookup.performFormLookup();

Правда так и не выяснил, как в Grid'е выводить только Name (без ID). Видать без display-метода не обойтись. А может кто знает решение?
__________________
Roman "Daemon" Krivov
Specialist of “CORUS Group” IT department