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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.01.2012, 20:55   #1  
ideveloper is offline
ideveloper
Участник
 
34 / 11 (1) +
Регистрация: 11.05.2011
Телефон в CustTable
Здравствуйте.

Мы пытаемся запустить TAPI функцию от ALCATEL в АХ.
Покамись всё проходило успешно, пока мы не наткнулись на вот эту проблему

У таких DataType как интернет адресс или електронная почта есть по стандарту кнопка, которая появляется с право от StringEdit и запрограмированна с ожидаемой функцией (Customers->Contact information (SImple contact info)), но у телефона её нету. Что-бы можно было использовать такую же кнопку у телефона, нужно переписать lookup-функцию. но как толко мы ставим StringEdit на AllowEdit = No, то эта кнопка исчезает (у интернет адресса и у електронной почты также)

Что нужно сделать, что-бы эта кнопка не исчезала?
Старый 16.01.2012, 21:14   #2  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,952 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Наверно ничего.
Приделать рядом похожую кнопку с картинкой и её нажимать.
Старый 17.01.2012, 08:54   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Я так понимаю, что задача состоит в том чтобы централизовано получить возможность позвонить с любого контрола, содержащего телефонный номер, не важно на какой форме этот контрол находится или ещё будет находиться. Т.е. хорошо бы эту функциональность завязать на ExtendedDataType.

В голову пришёл следующий сценарий. Вместо того чтобы прикручивать кнопку к заблокированному контролу (я тоже не знаю как это реализовать ) я предлагаю создать централизованную форму "звонилку" и сделать так чтобы она вызывалась через контекстный пункт меню "Перейти к основной таблице" (этого можно добиться через релейшн на расширенном типе данных). Переход к основной таблице работает и для редактируемых и для нередактируемых контролов.
Старый 17.01.2012, 10:49   #4  
b_nosoff is offline
b_nosoff
Читатель
Аватар для b_nosoff
MCP
MCBMSS
 
197 / 143 (5) +++++
Регистрация: 01.12.2004
Адрес: Msk
Записей в блоге: 13
Цитата:
Сообщение от ideveloper Посмотреть сообщение
Что нужно сделать, что-бы эта кнопка не исчезала?
сделайте
X++:
public boolean validate()
{
    ;
    return false;
}


ЗЫ: Да и lookup переписывать не стоит - сделайте форму для EDT Phone и у нее в init получайте контрол
X++:
callerControl = SysTableLookup::getCallerStringControl(element.args());
__________________
Axapta non erubescit

Последний раз редактировалось b_nosoff; 17.01.2012 в 10:52. Причина: add some stuff
Старый 17.01.2012, 13:07   #5  
ideveloper is offline
ideveloper
Участник
 
34 / 11 (1) +
Регистрация: 11.05.2011
Спасибо за большое количество ответов .

Цитата:
Сообщение от Logger
Наверно ничего.
Приделать рядом похожую кнопку с картинкой и её нажимать.
Об этой возможности мы тоже подумали, но хотели остаться на стандарте от АХ (к сожалению этот стандарт не работает как надо)
Есть ли у вас Code Snippet, который мы можем взять, что бы сэкономить время?
(может быть придётся взять этот вариант, если ничего другого не получится)

S.Kuskov На счет формы "звонилы": идея интерессная, так как реально может быть употреблятся центрально, но к сожалению наши пользователи не хотят "прыгать" через несколько окон

b_nosoff: Переписанная фукция validate приводит к тому, что пользователь не может больше закрыть окно, если по ошибке переписал информацию телефона

Жду дальнейшие интересные предложения.
Старый 17.01.2012, 13:16   #6  
b_nosoff is offline
b_nosoff
Читатель
Аватар для b_nosoff
MCP
MCBMSS
 
197 / 143 (5) +++++
Регистрация: 01.12.2004
Адрес: Msk
Записей в блоге: 13
Цитата:
Сообщение от ideveloper Посмотреть сообщение
Переписанная фукция validate приводит к тому, что пользователь не может больше закрыть окно, если по ошибке переписал информацию телефона
ненене, перекрывайте validate у поля на датасорсе.
__________________
Axapta non erubescit
Старый 17.01.2012, 14:19   #7  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Много непонятных консультанту слов

Можно вопрос? Стандартная кнопка для звонка не подходит по каким причинам? Нет лицензии CRM, не работает с вашим оборудованием, или все-таки есть какая-то ошибка в стандарте?
__________________
Ivanhoe as is..
За это сообщение автора поблагодарили: b_nosoff (1).
Старый 17.01.2012, 14:57   #8  
ideveloper is offline
ideveloper
Участник
 
34 / 11 (1) +
Регистрация: 11.05.2011
Все лицензии имеются.
Кнопки вообще нету по недоделанному стандарту.
Как я писал выше похожие кнопки есть у електронной почты и y интернет адресса, но не у телефона. Как только переписываем фукцию Lookup , то тогда она появляется (это был ответ от нашего партнёра)

Маска для телефонного номера должна быть не переписсывающейса. Из за этого мы делаем её EditField = No. Но пpи этом кнопка для звонка исчезает.
То же самое происходит и с кнопками для електронной почты или интернет адресса. Но это же чюшь. Не важно, могу ли я переписать информацую или нет, кнопки должны быть всегда на месте.

Можно проверить всё очень быстро в маске
Customers->Contact Information (Simple Contact Info в Setup меню) и здесь просто поменять опцую AllowEdti от Email на No
Старый 17.01.2012, 15:53   #9  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
А вы откройте форму CRM \ Business relation details, там вкладка Contact Info, там для полей телефона есть стандартная кнопка звонка. Сделать по аналогии в Customer, наверное, не составит труда?

Она, действительно, не доступна, если поле закрыто на редактирование, но это уже относится к базовому интерфейсу, а не конкретно телефонии.
__________________
Ivanhoe as is..
Старый 17.01.2012, 17:11   #10  
ideveloper is offline
ideveloper
Участник
 
34 / 11 (1) +
Регистрация: 11.05.2011
здесь тоже переписана функция lookup . И здесь тоже, как только ставим AllowEdit = No, кнопка исчезает.

X++:
public void lookup(FormControl _formControl, str _filterStr)
{;
    // Create a new call to business relation using the number specified in the phone control
    smmInit::createCall(_filterStr, smmBusRelTable::find(smmBusRelTable.BusRelAccount), element);
}
Теги
editfield, lookup, phone, tapi, телефония

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Relation CustTable, VendTable и т.д. на таблице LedgerJournalTrans AX2009 Gad DAX: Программирование 2 20.04.2010 20:04
PartyId в CustTable, VendTable nano3 DAX: Программирование 5 05.02.2010 07:15
Заполнение CustTable программно. Dima_Dima DAX: Программирование 11 20.07.2009 08:26
2 CustTable_ds на форме Ameli DAX: Программирование 18 11.08.2008 12:15
Фильтрация CustTable по связанной таблице Hyper DAX: Программирование 6 21.11.2007 12:38

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

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

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