Показать сообщение отдельно
Старый 28.12.2012, 13:28   #2  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Pustik, если не сложно проверьте, какое из условий у вас срабатывает в методе SysLookup::lookupRange()
X++:
....
 if (sysDictField &&
            _formStringControl.lookupButton() == FormLookupButton::Always)
        {
            _formStringControl.hasChanged(false);

            if (!sysDictField.configurationKeyId() ||
                isConfigurationkeyEnabled(sysDictField.configurationKeyId()))
            {
                if (SysLookup::typeHasFormHelp(sysDictField.typeId()))
                {
                    _formStringControl.performTypeLookup(sysDictField.typeId(), sysDictField.arrayIndex());
                }
                else
                {
                    if(SysLookup::getExtEnumId(sysDictField))
                    {
                        _formStringControl.performFormLookup(SysLookup::lookupEnum(sysDictField));
                    }
                    else
                    {
                        if (sysDictField.baseType() == Types::Date || sysDictField.baseType() == Types::UtcDateTime)
                        {
                            _formStringControl.performFormLookup(SysLookup::lookupDate(_formStringControl.owner()));
                        }
                        else
                        {
                            sysDictType = new SysDictType(fieldExt2Id(sysDictField.typeId()));
                            if (sysDictType &&
                                sysDictType.relationObject())
                            {
                                _formStringControl.performTypeLookup(sysDictField.typeId(), sysDictField.arrayIndex());
                            }
                            else
                            {
                                relationName = SysLookup::lookupTableRelation(cursor);

                                if (relationName)
                                {
                                    // вот сюда попадаю
                                    dictRelation = new DictRelation(sysDictField.tableid());
                                    dictRelation.loadNameRelation(relationName);
                                    SysLookup::lookupTable(dictRelation, _query, cursor, _formStringControl);
                                }
                            }
                        }
                    }
                }
            }
        }....
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.

Последний раз редактировалось Pustik; 28.12.2012 в 13:31.