Показать сообщение отдельно
Старый 08.02.2007, 15:51   #9  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2480 (88) +++++++++
Регистрация: 20.08.2005
Если я правильно понял вопрос - вам надо перекрыть метод unpack() в классе (если это еще не сделано) и сделать что-то типа этого
X++:
public boolean unpack(container packedClass)
{
    container       _base;
    boolean         _ret;
    Integer         _version    = runbase::getVersion(packedClass);
    Query           query;

    switch (_version)
    {
        case #CurrentVersion:
            // если надо для вашего диалога -->
            [_version, #CurrentList, _base] = packedClass;
            // <--
            _ret = super(_base);
            // Измение условий для запроса -->
            if (this.queryRun() && this.queryRun().query())
            {
                query = this.queryRun().query();
                query.dataSourceNo(1).clearRanges();
                // добавление нужных рейнжей и условий
            }
            // <--
            break;
        default:
            _ret = false;
    }
   return _ret;
}
__________________
Axapta v.3.0 sp5 kr2