Страница 2 из 6
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 15:48
Vik
Нет, тут все просто должно быть. Попробуйте так:
Код: Выделить всё
#Component "L_KATORG"
alter interface KATORG;
create view
var menuID:longint;
as select * from X$Resources(ReadOnly) ;
Window WKATORG
HandleEvent
cmValue41:
{
RunInterface('getaddr_kladr',Katorg.Nrec, Katorg.Name);
};
end
end;
HandleEvent
cmInit :
{
if (Inherited::HandleEvent(cmInit) != heOk)
{
Abort;
Exit;
}
var m_MenuName : string;
var m_Menu : longint;
m_MenuName := 'L_KATORG::mnuKatOrgEdit'
if (RecordExists X$Resources where (( 3 == X$Resources.XR$Type and m_MenuName == X$Resources.XR$Name))
!= tsOk)
{
DeleteMenuHowDynamics (m_MenuName);
m_Menu := LoadMenuEx (m_MenuName, true, false);
AddMenuItem(m_Menu, 'Сформировать адрес из внешнего Кладра',cmValue41);
StoreMenuHowDynamics (m_Menu, m_MenuName);
DisposeLoadMenu (m_Menu);
ReinitHeaderMenu;
}
};//cmInit
end;
end.
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 15:48
Ренат
edward_K писал(а):значится все таки нужно перехватывать cmHotkey. Местами прописано RunCommand(RunMenu), а местами стоит case RunMenu of
не очень понял что это значит
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 15:53
Ренат
edward_K писал(а):значится все таки нужно перехватывать cmHotkey. Местами прописано RunCommand(RunMenu), а местами стоит case RunMenu of
не очень понял что это значит
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 16:01
Vik
А вы проверяли код, который я привел?
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 16:05
Ренат
Vik Да. Только что проверил. Все правильно работает. Большое Вам спасибо!
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 16:50
Vik
Немного неправильно написал. К имени меню еще надо добавлять 'MENU ' при поиске в X$RESOURCES.
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 16:57
Ренат
опять я не понял. Сори. Где нужно добавить "MENU" ?
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 17:11
Vik
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 17:22
Ренат
К стыду своему ничего не понял. Щас совсем некогда думать. Надо отладкой заниматся.
Добавил
Код: Выделить всё
const
MENU_PREFFIX : string[5] = 'MENU ';
end;
и исправил
на
Код: Выделить всё
m_MenuName := MENU_PREFFIX +'L_KATORG::mnuKatOrgEdit'
Изменений не заметил. Но все работает!
Re: Как узнать имя локального меню?
Добавлено: 23 сен 2010, 18:14
Vik
Изменений на глаз было бы и не заметно, просто меню бы у вас при каждом запуске изменялось)
Re: Как узнать имя локального меню?
Добавлено: 27 сен 2010, 19:15
Ренат
Все было хорошо пока не подключил ресурсник к рабочей Галактике.
При открытии каталога организаций у пользователя появляется сообщение
Код: Выделить всё
Предупреждение
Возникло необработанное исключение
ExMenuItemStateError (ExVip)
У Вас нет прав для удаления меню.
"Да" - Продолжить, "Нет" - Отлаживать в окне отладчика
"Отмена" - Не выдавать больше это сообщение
Да Нет Отмена
Как с этим бороться? Может уже плюнуть и добавить в окно редактирования кнопочку для вызова интерфейса?
Если да, то как это можно сделать?
Re: Как узнать имя локального меню?
Добавлено: 27 сен 2010, 19:25
edward_K
Vik писал(а):Может уже плюнуть и добавить в окно редактирования кнопочку для вызова интерфейса?
ищем "cfsCreateObject ('button'," , при непонятках открываем новую тему. А вообще я уже предлагал добавлять меню в фейсе на добавление своих настроек.
Re: Как узнать имя локального меню?
Добавлено: 27 сен 2010, 19:39
Vik
edward_K писал(а):Vik писал(а):Может уже плюнуть и добавить в окно редактирования кнопочку для вызова интерфейса?
ищем "cfsCreateObject ('button'," , при непонятках открываем новую тему. А вообще я уже предлагал добавлять меню в фейсе на добавление своих настроек.
Это никак не я писал)) А вообще, не пойму никак, почему возникает затруднение в том, чтобы создать меню под администратором.
Re: Как узнать имя локального меню?
Добавлено: 27 сен 2010, 19:41
Ренат
Re: Как узнать имя локального меню?
Добавлено: 27 сен 2010, 20:12
Ренат
Под администратором все работает. Нужно чтобы обычные пользователи заходили и работали с этим меню.