AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.03.2007, 13:37   #1  
Tiruvileijadal' is offline
Tiruvileijadal'
Участник
Аватар для Tiruvileijadal'
 
92 / 10 (1) +
Регистрация: 15.03.2007
Адрес: Сургут
Поняла, что нужна помощь умных людей. Проблема в том, что на мне висит ТЗ, у которого срок: 7 марта. Сделали скидку на недоученность, но сдавать нужно, а я в кверах ни бум-бум. Подскажите как делать, а хелп я обязательно прочту, как только это ТЗ сдам
Создала метод initQuery в котором написано
X++:
Query             q;
;
q = new Query('VendTrans_ContractTable);
// и еще одна строчка, которую я к сожалению не помню, а посмотреть негде 
//(я  дома)
В метод QueryRun написала:
X++:
this.initQuery;
return QueryRun;
Опять же за достоверность не ручаюсь.
Итого: на диалоговой форме запрос выводится, в кнопку "Выбор" зайти могу, но введенные в запросе значения на диалоговой форме не показываются. И самый главный вопрос: что делать с этим дальше? Смысл запроса - фильтр для моей временной таблицы.
Временная таблица tempTable в которой есть поля AccountNum, TransDate, RContractNumber, ContractDate. Запрос состоит из таблицы VendTrans и к ней привязана RContractTable. Мне нужно отфильтровать свою tempTable по тем полям, которые я написала выше, а они как раз и вводятся в запросе.
Блин, по-моему завернула, но проще объяснить не могу.
Я понимаю, что наглею, просто помощь ОЧЕНЬ нужна. Если бы не подгоняли - я бы сама разобралась. И буду дальше сама разбираться
Старый 23.03.2007, 13:38   #2  
Tiruvileijadal' is offline
Tiruvileijadal'
Участник
Аватар для Tiruvileijadal'
 
92 / 10 (1) +
Регистрация: 15.03.2007
Адрес: Сургут
Red face
Упс, забыла в коде кавычку закрыть
Старый 23.03.2007, 13:39   #3  
Tiruvileijadal' is offline
Tiruvileijadal'
Участник
Аватар для Tiruvileijadal'
 
92 / 10 (1) +
Регистрация: 15.03.2007
Адрес: Сургут
А еще во время быстрого ответа нажала кнопку TAB, а потом пробел и отправила обрезанное сообщение... Черт, надо успокоиться
Старый 23.03.2007, 14:23   #4  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Цитата:
Сообщение от Tiruvileijadal' Посмотреть сообщение
q= new Query('VendTrans_ContractTable);
Сразу же бросилось в глаза...Обращу ваше внимание, что надо делать так:

X++:
q = new Query(queryStr(VendTrans_ContractTable));
Тогда сразу же на этапе компиляции выполнится проверка, что запрос с таким названием есть. Думаю, что зачем это надо - понятно.
Старый 23.03.2007, 20:00   #5  
Tiruvileijadal' is offline
Tiruvileijadal'
Участник
Аватар для Tiruvileijadal'
 
92 / 10 (1) +
Регистрация: 15.03.2007
Адрес: Сургут
Ладно, подождем до понедельника, на работе проверю и потом отреагирую.
kashperuk, oip, за советы спасибо
Старый 26.03.2007, 07:18   #6  
Tiruvileijadal' is offline
Tiruvileijadal'
Участник
Аватар для Tiruvileijadal'
 
92 / 10 (1) +
Регистрация: 15.03.2007
Адрес: Сургут
не получается где сохраняется вид запроса? У меня на форму выходит старый запрос, который я писала кодом (а не в АОТ). Отличаются тем, что в запросе из АОТ у меня таблица "Договоры" вложена в "Проводки по поставщикам", а в старом они независимые.
Код для Query:
X++:
public void initParmDefault()
{
    this.initQuery();
    super();
}
X++:
void initQuery()
{
    Query                   q;
    ;
    q =  new Query(querystr(VendTrans_ContractTable));
    qr = new QueryRun(q);
}
X++:
public QueryRun queryRun()
{
    return qr;
}
X++:
public container pack()
{
    return [#CurrentVersion, #CurrentList, qr.pack()];
}
X++:
public boolean unpack(container _packedClass)
{
    Version     version = RunBase::getVersion(_packedClass);
    container   packedQuery;
    switch (version)
    {
        case #CurrentVersion :
            [version, #CurrentList, packedQuery] = _packedClass;
            if (sysQuery::isPackedOk(packedQuery))
              qr = new QueryRun(packedQuery);
            else
              this.initQuery();
            break;
        default:
            return false;
    }
    return true;
}
Вот где в этом коде указано, что использовать нужно старый запрос (который в природе уже не существует к тому же)?
Может где-нибудь в пак/анпак указывать? И что указывать? Когда открываю класс и захожу в "Выбор" мне в выборе запроса выводится "Ранее использованный запрос". Меняю на "Используемый запрос", но ничего не меняется

Последний раз редактировалось Tiruvileijadal'; 26.03.2007 в 07:23. Причина: ошибки в словах
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
вылетает аксапта \Classes\CCMenuButtonAuto\new Poleax DAX: Программирование 10 12.02.2009 18:24
Аксапта 4.0: при выборе пунктов по меню кнопок система вылетает superb DAX: Прочие вопросы 6 26.07.2007 22:18
Вылетает Аксапта AvrDen DAX: Программирование 3 12.04.2007 15:46
При добавлении связи между dataSource Аксапта вылетает vasiliy DAX: Программирование 2 07.05.2005 07:44
Аксапта вылетает при выполенении job Tays DAX: Программирование 14 02.12.2004 06:32
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:08.