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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.12.2005, 12:15   #1  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Здравствуйте.

Может быть кто-нибудь подскажет, как формируется заголовок формы? Понятно, что есть Caption и TitleDataSourse, а если TitleDataSourse не указан, то откуда береться заголовок?
У меня на одной из форм возникает какое-то странное "Invisible = Нет" в заголовке, но я никак не могу понять откуда.

Заранее спасибо.
Старый 16.12.2005, 14:26   #2  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
А если я задам вопрос чуть конкретнее?
Есть форма A. На ней кнопка, которая вызывает форму Б.
Как определить, какие данные из формы А попадают в заголовок формы Б?
Старый 18.12.2005, 23:07   #3  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Ну так никто не подскажет, как отредактировать заголовок формы?
Старый 18.12.2005, 23:35   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от oip Посмотреть сообщение
Есть форма A. На ней кнопка, которая вызывает форму Б.
Как определить, какие данные из формы А попадают в заголовок формы Б?
поля, по которым выполнился DynaLink.

А в чем вопрос то?
Вроде в руководстве разработчика написано
Description of properties for form design - TitleDataSource
Using methods in your tables - Caption
__________________
полезное на axForum, github, vk, coub.
Старый 19.12.2005, 00:24   #5  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Вопрос такой, можно ли как-то удалить вывод какого-нить поля из заголовка? При этом изменяя что-либо только в данной форме. Или еще вопрос, как можно получить текущий заголовок в виде строки?
Чтобы его ручками поправить и запихнуть назад (хотя это конечно не метод, но по-другому что-то не выходит).

P.S. А метод Капшн вроде формирует заголовок из полей TitleField1 и TitleField2? Или я не прав? Тут он вроде не поможет...
P.P.S Если что не так спрашиваю, сорри. Стаж общения с Аксаптой - 1 месяц.
Старый 19.12.2005, 00:40   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Все правильно спрашиваете.
Только непонятно зачем вам это нужно.

Цитата:
Сообщение от oip Посмотреть сообщение
Вопрос такой, можно ли как-то удалить вывод какого-нить поля из заголовка? При этом изменяя что-либо только в данной форме. Или еще вопрос, как можно получить текущий заголовок в виде строки?
element.design().caption( [myCaption] );
__________________
полезное на axForum, github, vk, coub.
Старый 19.12.2005, 00:46   #7  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
element.design().caption - выводит только то, что прописано в Капшн дизайна. А содержимые полей не выдает, т.е. целиком заголовок получить и отредактировать не получается. Задача - убрать значение одного из полей из загаловка. (там на форме "А" стоит что-то типа фильтра "Invisibl=No" (не помню точно где именно этот запрос реализован, в каком методе, аксапта сейчас не под рукой), а на вызываемой форме Б этот параметр выводится в звголовок автоматически. Нужно его убрать оттуда, ибо Invisible=Нет в загаловке формы - раздражает.)
Старый 19.12.2005, 01:03   #8  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от oip Посмотреть сообщение
ибо Invisible=Нет в загаловке формы - раздражает.)
invisible - это поле в вашей форме, по которому выполнена связь с предыдущей формой?
вы спрашиваете для какой-то стандартной формы?
__________________
полезное на axForum, github, vk, coub.
Старый 19.12.2005, 01:12   #9  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Инвисибл - это поле из таблицы, которая является датасорсом для формы "А" (скажем так). В форме "Б" его нет совсем.
Да, для стандартной, видимо так и в стандартной майкрософтовской фунциональности. Если нужно, могу завтра в рабочее время сказать для какой именно. Я просто думал, что можно как-нить просто отредактировать заголовок.
Старый 19.12.2005, 01:37   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
я не пробовал.
может завтра кто другой подскажет.
__________________
полезное на axForum, github, vk, coub.
Старый 19.12.2005, 10:02   #11  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
РП\Журналы\Платежи\Журнал платежей\(любой разнесенный журнал)\Строки\Запросы\Документ ГК - нужно убрать из заголовка Инвизибл=Нет, да и номер журнала отображается 2 раза - тоже нужно исправить. Может кто подскажет что-нибудь?

P.s. Сам фильтр инвизибл=нет возникает в датасорсе LedgerJournalTrans формы LedgerJournalTransVendPaym в методе init.
Старый 19.12.2005, 20:27   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Значит так.

В заголовке пишутся поля:
1. Из TitleDataSource, указанного в дизайне формы
2. Поля и критерии, установленные для формы пользователем или программистом
3. Поля из dynaLink.

В вашей форме TitleDataSource не указан, поэтому поля самой таблицы не показываются.
Показываются только поля из таблицы-источника. См. картинку 1.

Если вы включите TitleDataSource у дизайна формы LedgerTransVoucher
то получите в заголовке поля из таблицы данной формы. См. картинку 2.
Обратите внимание на то, что в этом случае показывается правильный фильтр - По кредиту: Нет

На картинке 3 показан заголовок, если выключить фильтр

Видимо, международные разработчики получили замечательный результат без TitleDataSource для каких-то таблиц.
Наши добавили фильтр по дебету-кредиту.
Но на то, как отображаются поля в загловке не обратили внимание...
Миниатюры
Нажмите на изображение для увеличения
Название: 1.gif
Просмотров: 469
Размер:	27.2 Кб
ID:	9917   Нажмите на изображение для увеличения
Название: 2.gif
Просмотров: 495
Размер:	30.8 Кб
ID:	9918  

Нажмите на изображение для увеличения
Название: 3.gif
Просмотров: 491
Размер:	32.3 Кб
ID:	9919  
__________________
полезное на axForum, github, vk, coub.
Старый 20.12.2005, 09:13   #13  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Таким образом, просто удалить Invisible и второе упоминание номера журнала никак нельзя?

P.S. Огромное спасибо за участие в разрешении этого вопроса!
Старый 20.12.2005, 12:08   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от oip Посмотреть сообщение
Таким образом, просто удалить Invisible
Укажите TitleDataSource в дизайне формы LedgerTransVoucher

Цитата:
Сообщение от oip Посмотреть сообщение
Таким образом, просто удалить Invisible и второе упоминание номера журнала никак нельзя?
Я не знаю такого способа.
__________________
полезное на axForum, github, vk, coub.
Старый 20.12.2005, 12:30   #15  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Цитата:
Сообщение от mazzy Посмотреть сообщение
Укажите TitleDataSource в дизайне формы LedgerTransVoucher
Ясно, спасибо. Просто задача не так стояла. Задачу-то не я ставил.

Кстати, если указать TitleDataSourse, то два раза выводиться номер документа (на Вашей второй картинке - ГК00038). Этого тоже, как я понял, изменить нельзя? Пойду обрадую постановщика задачи. Спасибо.

P.S. А респект я могу добавить?
Старый 20.12.2005, 12:31   #16  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от oip Посмотреть сообщение
P.S. А респект я могу добавить?
Чтобы добавить респект, нажмите на + в левой части сообщения, которое вам понравилось.
__________________
полезное на axForum, github, vk, coub.
Старый 20.12.2005, 12:34   #17  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Добавил. Еще раз спасибо за помощь и отличный сайт. Мне он очень помогает войти в большой мир Аксапты.
Старый 20.12.2005, 13:06   #18  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Вчера пытался несколько раз запостить - не получилось

Можно перекрыть метода Active() на датасоурсе LedgerTrans и добавить туда этот код
<div class='XPPtop'>X++</div><div class='XPP'>
[color=:blue]int[/color] ret;
ret = [color=:blue]super[/color]();
[color=:blue]if[/color] (!fromMenu)
winapi::setWindowText(element.hWnd(), element.design().caption());
[color=:blue]return[/color] ret;</div>
Если необходимо, то можно добавить нужную информацию в заголовок.
__________________
Axapta v.3.0 sp5 kr2
Старый 20.12.2005, 13:18   #19  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Хм... Неожиданное решение, остроумное Да, так получилось. А есть минусы у такого решения?
Старый 20.12.2005, 13:52   #20  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Кроме того, что движек Axapta'ы во время вызова Super() переключает загловок, так что наблюдается некоторое мельтешение в нем - больше не вижу проблем.
__________________
Axapta v.3.0 sp5 kr2
 


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

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

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