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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.02.2013, 14:30   #1  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Независимые формы друг от друга
Есть 2 формы, одна открывается через менюайтем другой. Нужно чтобы эти две формы были независимыми друг от друга, то есть, когда курсор в первой форме стоит на конкретной записи, если изменить курсор на второй форме на другую запись, чтобы курсор на первой записи не сбрасывался вначало. Насколько помню, можно где-то модальность формы настроить, вот только где...


И ещё: нельзя провести фильтрацию по большинству нужных полей, а по некоторым - можна. Поля для фильтрации выставляются в свойствах или же програмно? На главной форме фильтрация возможна, на подчинённой - нет, возможно из-за datasource-ов... догадка просто...
Старый 15.02.2013, 15:55   #2  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Нет идей(?
Сижу, в методах копаюсь, пока не нахожу...
Старый 15.02.2013, 15:59   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,427 / 1771 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от user_ax Посмотреть сообщение
когда курсор в первой форме стоит на конкретной записи, если изменить курсор на второй форме на другую запись, чтобы курсор на первой записи не сбрасывался вначало.
Я правильно понял. У вас курсор сбрасывается на первой форме, на которой находится menuitem? Стандартный dynalink работаете в обратную сторону. Может у вас перекрыты каки-то методы на второй форме? В любом случае это не стандартное поведение.

Цитата:
Сообщение от user_ax Посмотреть сообщение
И ещё: нельзя провести фильтрацию по большинству нужных полей, а по некоторым - можна. Поля для фильтрации выставляются в свойствах или же програмно? На главной форме фильтрация возможна, на подчинённой - нет, возможно из-за datasource-ов... догадка просто...
Если по полю создан программный фильтр и он заблокирован RangeStatus::Locked, то по нему не будет доступен пользовательский фильтр.
Старый 15.02.2013, 16:00   #4  
sparco is offline
sparco
Участник
Самостоятельные клиенты AX
 
44 / 21 (1) +++
Регистрация: 10.10.2011
Адрес: Москва
Попробуйте воспользоваться clearDynalinks на dataSource
Старый 15.02.2013, 16:13   #5  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Я правильно понял. У вас курсор сбрасывается на первой форме, на которой находится menuitem? Стандартный dynalink работаете в обратную сторону. Может у вас перекрыты каки-то методы на второй форме? В любом случае это не стандартное поведение.
Нет, наоборот, у меня курсов сбрасывается на второй форме, которая вызываете нажатием на menuitem главной(первой) формы.
На второй форме у меня перекрыты только методы datasourc-а и всё.

Нестандартное, да, join тоже вы называли нестандартным, такова задача: нужно сделать вторую форму независимой от первой. чтобы курсор не скакал.

А по поводу фильтров - нет вообще программно созданных фильтров.

Последний раз редактировалось user_ax; 15.02.2013 в 16:15.
Старый 15.02.2013, 16:15   #6  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
После super() в init на датасорсе напишите
X++:
this.query().datasourceNo(1).clearDynaLinks()
__________________
С уважением,
Олег.
Старый 15.02.2013, 16:16   #7  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,427 / 1771 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от user_ax Посмотреть сообщение
Нет, наоборот
Тогда sparco вам правильно подсказал Связи источников двух форм
Старый 15.02.2013, 16:19   #8  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Цитата:
Сообщение от oip Посмотреть сообщение
После super() в init на датасорсе напишите
X++:
this.query().datasourceNo(1).clearDynaLinks()
В датасорсе 2 таблицы, перекрывать метод на главной или подчинённой?
Пробовал писать по отдельности там и там - не работает.
Старый 15.02.2013, 16:24   #9  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,427 / 1771 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от user_ax Посмотреть сообщение
В датасорсе 2 таблицы, перекрывать метод на главной или подчинённой?
А в каком у вас курсор скачет?
Старый 15.02.2013, 16:26   #10  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
А в каком у вас курсор скачет?
Курсор скачет по гриду, в который выводятся данные с 2-х таблиц, одна из которых главная, вторая - подчинённая.
Старый 15.02.2013, 16:32   #11  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,427 / 1771 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Есть ещё стопроцентный вариант. В ините формы сделать
X++:
this.args().record(NULL);
Это должно разорвать связь с предыдущей формой.
Старый 15.02.2013, 16:35   #12  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Прописал в ините формы - всё равно перескакивает
Старый 15.02.2013, 16:38   #13  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,427 / 1771 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Что у вас написано на первой форме в методе active датасурса?
Старый 15.02.2013, 16:41   #14  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
upd,
Поставил разрыв связь до super - работает! курсор не скачет!

В методе active главного датасоурса первой формы вот этот код

X++:
int  active()
{
    int                         ret;
    SalesQuotationTableType     editSalesQuotationTableType = salesQuotationTable.type();


    ;

    ret = super();

    element.editQuotation(element.editHeaderAllowed());

    salesQuotationTableForm.active(salesQuotationTable);

    element.setFieldAccessHeader();
    salesAvailableDlvDatesHeader.enabled(!salesQuotationTable.isTemplate());
    salesAvailableDlvDatesLines.enabled(!salesQuotationTable.isTemplate());

    if(salesQuotationTable.checkUpdate(false))
    {
        salesQuotationChangeReasonCode.enabled(false);
    }
    else
    {
        salesQuotationChangeReasonCode.enabled(true);
    }

    //EKU ->
    element.setAllowedit_ZTR();
    TabHeaderSmmActivities_ZTR.refreshAsNeeded();
    //EKU <-

    // VAE
    // Обновление конкурентов
    CompetitorsTrans_ZTR_ds.executeQuery();

    // kDn 19.04.2012 Механизм настроечной таблицы (обязательные поля и поля только для чтения)
    //FieldSetupTable_ZTR::SetupFormDataSource(salesQuotationTable_ds,salesQuotationTable_ds); // Заголовок по заголовку
    FieldSetupTable_ZTR::SetupFormDataSource2(salesQuotationTable_ds,this.formRun()); // Заголовок по всем датасетам
    // kDn 19.04.2012 Механизм настроечной таблицы (обязательные поля и поля только для чтения)

    // kDn 16.05.2012  ->
    infolog.docuHandlingActive(element.isDocuStatus()); //infolog.formNoteButton(false, false);
    // kDn 16.05.2012 <-

    // VAE
    return ret;
}
Старый 15.02.2013, 16:43   #15  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Теперь осталось с фильтрами разобраться...
Старый 15.02.2013, 16:53   #16  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Может быть неккоректно выразился, не работает на некоторых полях Расширенный фильтр (Ctrl+F3).

Над полями серое место, а должен быть фильтр.
Изображения
 
Старый 15.02.2013, 17:53   #17  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Поменял связи таблиц - фильтров больше появилось, уже хоть что-то
Старый 15.02.2013, 19:16   #18  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Цитата:
Сообщение от user_ax Посмотреть сообщение
Может быть неккоректно выразился, не работает на некоторых полях Расширенный фильтр (Ctrl+F3).

Над полями серое место, а должен быть фильтр.
это дисплей методы - на них стандартные фильтры не работают
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.
За это сообщение автора поблагодарили: user_ax (1).
Старый 18.02.2013, 11:02   #19  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Цитата:
Сообщение от Pustik Посмотреть сообщение
это дисплей методы - на них стандартные фильтры не работают
Понял, буду знать! Спасибо вам большое!

А если в DataMethod нет метода, а фильтр недоступен ?

Последний раз редактировалось user_ax; 18.02.2013 в 11:05.
Старый 18.02.2013, 11:44   #20  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
Нашёл причину! Нужно было поставить InnerJoin,а не OuterJoin!
Теги
модальная форма, независимая форма, фильтр

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Недоступность источника данных формы в display/edit-методах таблицы - баг или фича с глубоким смыслом? TasmanianDevil DAX: Программирование 10 03.08.2012 15:00
Самостоятельные формы и формы открывающиеся из другой формы. Dima_Dima DAX: Программирование 6 19.12.2008 18:27
Создание Lookup формы Maxim Gorbunov DAX: База знаний и проекты 9 26.06.2007 16:44
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Динамические Lookup формы. Андрей Василюк DAX: База знаний и проекты 0 07.12.2001 07:07
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:30.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.