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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.05.2007, 12:44   #201  
blokva is offline
blokva
Пенсионер
Аватар для blokva
SAP
NavAx Club
 
743 / 164 (7) ++++++
Регистрация: 04.06.2003
Адрес: Беларусь
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Надо бы поиграться со свойством ColumnSpace на группе с кнопками, потому как уж слишком большое расстояние между кнопками у тебя получилось.
Согласен, это осталось от того, что скрытие группы происходило, только при покидании группы, а теперь я добавил и в кнопки а расстояния не изменил!
Пасиб что обратил внимание!
__________________
Законы природы еще никто не отменял!
А еще у меня растет 2 внучки!!! Кому интересно подробности тут:
http://www.baby-shine.com/
Старый 06.06.2007, 18:24   #202  
SHiSHok is offline
SHiSHok
Участник
Аватар для SHiSHok
Дети Юза
 
218 / 99 (4) ++++
Регистрация: 28.07.2005
Адрес: Донецк
использую табакс, но в добавок еще пользуюсь "Компонента для управления окнами в Axapta" Выкладываю утилиту для управления окнами в Axapta. потому что:
1) скорость реакции появления окна (не критично)
2) горячие клавиши переклюбчения между окнами (критично)

вопрос: можно ли в табаксе настроить гор.кнопки для переключения между окнами
предложение (если на вопрос отр. ответ): может в проект подключить компонент???
__________________
--- SHiSHok
Старый 07.06.2007, 09:49   #203  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,935 / 2078 (77) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
1. а какие гор. кнопки нужны?
2. Я думаю, можно сделать плагином...
Старый 07.06.2007, 10:11   #204  
SHiSHok is offline
SHiSHok
Участник
Аватар для SHiSHok
Дети Юза
 
218 / 99 (4) ++++
Регистрация: 28.07.2005
Адрес: Донецк
Цитата:
Сообщение от belugin Посмотреть сообщение
1. а какие гор. кнопки нужны?
2. Я думаю, можно сделать плагином...
в таскбаре активно использую:
[Alt+W] перебор окон в прямом порядке (активно использую - удобно быстро переключаться между двумя используемыми окнами)
[Alt+Q] перебор окон в обратном порядке (почти не использую)
[Alt+E] закрыть текущее окно (использую редко)
__________________
--- SHiSHok
Старый 07.06.2007, 10:16   #205  
online
kashperuk
Senior SDE, Dynamics AX
Аватар для kashperuk
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
 
4,314 / 2013 (76) +++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Но для всего этого есть стандартные клавиши. Зачем внедрять еще что-то?

[Alt+W] = [Ctrl+F6]
[Alt+Q] = [Ctrl+Shift+F6]
[Alt+E] = [Ctrl+F4]

Вполне удобно используются. Главное привыкнуть.
Но самое главное. Не требуют вмешательства, так как уже работают
Старый 07.06.2007, 10:35   #206  
SHiSHok is offline
SHiSHok
Участник
Аватар для SHiSHok
Дети Юза
 
218 / 99 (4) ++++
Регистрация: 28.07.2005
Адрес: Донецк
есть конечно, но уж очень не удобно, а так одной рукой можно рулить. еще преимущество Alt+W в тасбаре что активное окно становится первым в списке окон, а остальные сдвигаются , т.е. чтоб переключатся между 2-мя достаточно просто жать hot key и окна будут переключаться в верхушке списка.
__________________
--- SHiSHok
Старый 07.06.2007, 10:36   #207  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,935 / 2078 (77) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
1. можно воспользоваться AoutoIt или AutohotKey для переопределения клавиш
2. Стандартные сочетания работают во многих программах, поэтому стоит привыкнуть к ним (в Опере, например тоже работают)
Старый 07.06.2007, 13:41   #208  
ZhanR is offline
ZhanR
Участник
 
22 / 10 (1) +
Регистрация: 13.04.2006
подскажите как лучше организовать?
вообщем табакс требует на клиенте скпировать нектороые файлики (рисунки, иконки), на куче клиентских местах данную процедуру проделывать ломы... Может кто подскажет как лучше организовать данную процедуру?
Старый 07.06.2007, 13:44   #209  
online
kashperuk
Senior SDE, Dynamics AX
Аватар для kashperuk
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
 
4,314 / 2013 (76) +++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Цитата:
Сообщение от ZhanR Посмотреть сообщение
Может кто подскажет как лучше организовать данную процедуру?
Можно так:
http://axapta.mazzy.ru/lib/sysfiledeployment/
Старый 07.06.2007, 13:45   #210  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,935 / 2078 (77) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
1. Или использовать TabaxLite
2. Или настроить на шару
Старый 07.06.2007, 13:59   #211  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,935 / 2078 (77) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
можно, кстати, сделать интерфейс для плагинов для подмены загрузки ресурсов
Старый 11.06.2007, 13:18   #212  
ZhanR is offline
ZhanR
Участник
 
22 / 10 (1) +
Регистрация: 13.04.2006
блин, чета не получается у меня решить задачу с использованием SysFileDeployer. В общем у меня проблема такая - DAX4.0 )))))
Короче сделал как там и описали (в смысле пока хотел посмореть как скопируются у меня файл \\axapta\40\NATApplication\Share\Include\addInsBut.bmp):
1. необходимый для копирования файл разместил на сервере в папке \\axapta\40\NATApplication\Share\Include (именно на папкуC:\Program Files\Microsoft Dynamics AX\40\NATApplication натравлен AOS), данной папке дал полный доступ для всех, а так же копируемому файлу в этой папке и на клиенте ресурсу «C:\Program Files\Microsoft Dynamics AX\40\Client\Share\Include» установил полное разрешение для всех (вкладка «безопасность» в свойствах файлов и папок).
2. написал класс-наследник от SysFileDeploymentFile, в нем перекрыл методы destinationPath и filename, в которых указал путь (return xInfo::directory(DirectoryType::Include) и имя файла (return 'addInsBut.bmp'
3. в методе SysFileDeployer.filesToDeploy возвращаю контейнер к котором указан описанный выше класс (classNum(имя_класса))

при пошаговой отладке запуска клиента, вижу что в методе SysFileDeployer.main проверка
if (!sysFileDeployer.parmUpToDate() && !sysFileDeployer.isUptodate() && sysFileDeployer.prompt())
обрывается на первом же !sysFileDeployer.parmUpToDate() (возвращает истину)

вообщем при комментировании данной проверки if (/*!sysFileDeployer.parmUpToDate() &&*/ !sysFileDeployer.isUptodate() && sysFileDeployer.prompt())
получается ошибка уже в !sysFileDeployer.isUptodate() – вообщем при отладке дохожу при проверке версии файла (даты модификации) до info.add(), в нем

_txt = «Сбой запроса на разрешение типа "FileIOPermission".
(S)\Classes\FileIOPermission\demand
(S)\Classes\WinAPIServer\createFile - line 26
(S)\Classes\WinAPIServer\getFileDate - line 13
(S)\Classes\WinAPIServer\getFileModifiedDate - line 10
(S)\Classes\SysFileDeploymentFile\serverVersion - line 5
(S)\Classes\SysFileDeploymentFile\parmServerVersion - line 4
(S)\Classes\SysFileDeployment\getServerVersion - line 5
(S)\Classes\SysFileDeployer\filesAndVersions - line 17
(C)\Classes\SysFileDeployer\isUptodate - line 3
(C)\Classes\SysFileDeployer\main - line 8
(C)\Classes\Info\startup - line 30»

И в данном методе переменная _sysInfoAction=null

В общем, работа прекращается при проверке !sysFileDeployer.isUptodate() ошибкой
«Сбой запроса на разрешение типа "FileIOPermission".
(S)\Classes\FileIOPermission\demand
(S)\Classes\WinAPIServer\createFile - line 26
(S)\Classes\WinAPIServer\getFileDate - line 13
(S)\Classes\WinAPIServer\getFileModifiedDate - line 10
(S)\Classes\SysFileDeploymentFile\serverVersion - line 5
(S)\Classes\SysFileDeploymentFile\parmServerVersion - line 4
(S)\Classes\SysFileDeployment\getServerVersion - line 5
(S)\Classes\SysFileDeployer\filesAndVersions - line 17
(C)\Classes\SysFileDeployer\isUptodate - line 3
(C)\Classes\SysFileDeployer\main - line 8
(C)\Classes\Info\startup - line 30»

--------------------------------------------------------
Выясняется что в методе Info.addв следующей строке

if (!_sysInfoAction && !_helpUrl && hasSecuritykeyAccess(securitykeynum(SysDevelopment), AccessType::View))
{
session = new xSession();
if(session.clientKind() == ClientType::Client)
{
_sysInfoAction = SysInfoAction_Editor::newStack();
}
}

Метод SysInfoAction_Editor::newStack() возвращает null…

-------------------------------------------------

кстати, в метод info.add() курсор каким-то чудом переходит сразу после кода в методе WinAPIServer.createfile
// check file I/O permission
if(_flags == #OPEN_EXISTING)
{
fileIOPerm = new FileIOPermission(_fileName,'r');
}
else
{
fileIOPerm = new FileIOPermission(_fileName,'w');
}
fileIOPerm.demand();


данный кусок я закомментировал и только после этого вроде как при входе аксапта спрашивает "В клиентской установке отсутствуют файлы, необходимые для работы Microsoft Dynamics", при подтверждении установки возникает ошибка:

Сбой запроса на разрешение типа "FileIOPermission".
(S)\Classes\FileIOPermission\demand
(S)\Classes\BinData\loadFile
(S)\Classes\SysFileDeployment\getServerFile - line 15
(C)\Classes\SysFileDeployment\copy - line 4
(C)\Classes\SysFileDeployment\run - line 7
(C)\Classes\SysFileDeployer\run - line 26
(C)\Classes\SysFileDeployer\main - line 9
(C)\Classes\Info\startup - line 30


уже не знаю куда дальше копать... (((((
Старый 11.06.2007, 19:02   #213  
Ned is offline
Ned
Lean Six Sigma
 
680 / 99 (5) ++++
Регистрация: 29.12.2002
Адрес: самолёт
А если сделать с помощью ресурсов?
__________________
Viacheslav Nefedov, http://www.nefedov.net, http://restock.guru/
Старый 11.06.2007, 19:05   #214  
ZhanR is offline
ZhanR
Участник
 
22 / 10 (1) +
Регистрация: 13.04.2006
вообщем сделал с помощью ресурсов, т.е. переписал метод loadImage:

void loadImage(FormButtonControl _but, str _name)
{
resourceNode xresourceNode = new resourceNode();
SysElementName imgName;
;
imgName=_name+'_bmp';
xresourceNode = SysResource::getResourceNode(imgName);
_but.normalImage(SysResource::getImagePath(xresourceNode.treeNodeName()));
}

предварительно создал ресурсы из файлов-иконок с названиями имяфайла_расширение, т.е. например leftbut_bmp...

теперь возникает вопрос - где хранятся ресурсы? ))))
Старый 12.06.2007, 04:05   #215  
gl00mie is offline
gl00mie
Участник
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
MCBMSS
Most Valuable Professional
 
3,489 / 4402 (153) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
SysFileDeployment* FIX
Цитата:
Сообщение от ZhanR Посмотреть сообщение
блин, чета не получается у меня решить задачу с использованием SysFileDeployer. В общем у меня проблема такая - DAX4.0
при отладке дохожу при проверке версии файла (даты модификации) до info.add(), в нем _txt = «Сбой запроса на разрешение типа "FileIOPermission". кстати, в метод info.add() курсор каким-то чудом переходит сразу после кода в методе WinAPIServer.createfile
В данном случае «чудо» - это исключение, которое ловится в блоке try цикла проверки классов-наследников SysFileDeployment.
Цитата:
Сообщение от ZhanR Посмотреть сообщение
данный кусок я закомментировал и только после этого вроде как при входе аксапта спрашивает "В клиентской установке отсутствуют файлы, необходимые для работы Microsoft Dynamics"
А вот это зря лучше вернуть, как было...
Цитата:
Сообщение от ZhanR Посмотреть сообщение
при подтверждении установки возникает ошибка. уже не знаю куда дальше копать...
Копать, разумеется, следует в сторону документа Writing Secure X++ Code. Если его почитать и сопоставить с тем, что творится в SysFileDeployment* в AX4, то выяснится, что разработчики там.. как бы помягче сказать.. накосячили Видимо, недаром из SysFileDeployer.filesToDeploy() вытерли все ссылки на соотв. классы - чтобы просто не делать свои же косяки заметными сразу при установке.
Теперь ведь в AX4 использовать для работы на сервере «опасные API» просто так нельзя - надо явно запрашивать разрешения на это
Цитата:
Implementing Code Access Security
Code access security must be implemented by the dangerous API owner and all consumers of the dangerous API.
1. The owner secures the dangerous API by implementing a specific type of permission class and calling the demand() method on that class
2. Each API consumer must explicitly request permission to invoke a secured dangerous API by calling the assert() method on the permission class.
Application code will break unless both of these steps are completed.
И в части вызовов demand() в новоиспеченном WinAPIServer все в порядке. А вот в классах SysFileDeployment* требования по вызову assert() соблюдены не везде - видимо, не хватило времени дотестировать. Если конкретно, то:
  • в SysFileDeploymentFile.serverVersion() нет соотв. вызова assert() перед вызовом WinAPIServer::getFileModifiedDate();
  • в SysFileDeployment.getServerFileTimeAccessed()/Modified()/Created() нет соотв. вызова assert() перед вызовом WinAPIServer::getFileTime();
  • в SysFileDeployment.isNameValid() полный путь к файлу разбивается с помощью fileNameSplit() на составляющие, после чего между именем и расширением вставляется лишняя точка (fileNameSplit() и так возвращает расширение с начальной точкой) - в результате isNameValid() всегда возвращает false, из-за чего опять-таки не происходя соотв. вызовы assert();
  • ну и, наконец, SysFileDeployment.sourcePath() по умолчанию возвращает xInfo::directory(DirectoryType::Include), а как нам известно, результат этого вызова сильно различается в зависимости от того, происходит ли он на клиенте или на сервере; разумеется, по закону подлости работа SysFileDeploy* построена так, что SysFileDeployment.sourcePath() вызывается в обоих контекстах и, соотв., выдает разные результаты, что окончательно рушит логику работы.
Во вложении - небольшие модификации, с помощью которых удалось заставить работать SysFileDeployer с тестовым классом-наследником SysFileDeploymentFile.
Вложения
Тип файла: zip AX4_SysFileDeploymentFIX.zip (1.8 Кб, 142 просмотров)

Последний раз редактировалось gl00mie; 12.06.2007 в 04:11. Причина: форматирование :)
За это сообщение автора поблагодарили: mazzy (15), belugin (5), kashperuk (10), alex55 (1).
Старый 12.06.2007, 09:50   #216  
online
kashperuk
Senior SDE, Dynamics AX
Аватар для kashperuk
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
 
4,314 / 2013 (76) +++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Спасибо. Хорошо бы добавить все это в статью на axapta.mazzy.ru
Старый 13.06.2007, 09:42   #217  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,486 / 3365 (169) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Во вложении - небольшие модификации, с помощью которых удалось заставить работать SysFileDeployer с тестовым классом-наследником SysFileDeploymentFile.
Спасибо.

Цитата:
Сообщение от kashperuk Посмотреть сообщение
Спасибо. Хорошо бы добавить все это в статью на axapta.mazzy.ru
Сделал ссылку на сообщение gl00mie
http://axapta.mazzy.ru/lib/sysfiledeployment/
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 13.06.2007, 16:10   #219  
Ned is offline
Ned
Lean Six Sigma
 
680 / 99 (5) ++++
Регистрация: 29.12.2002
Адрес: самолёт
to belugin.
Максим, в "официальной" версии есть проблема с картинками - они располагаются в каталоге клиента Аксапта. ZhanR реализовал вариант с ресурсами, при котором этот вопрос решён. Можно включить в "официальную" версию это (или другое) решение вопроса с необходимостью добавлять файлы в инсталляцию клиента?
__________________
Viacheslav Nefedov, http://www.nefedov.net, http://restock.guru/
Старый 13.06.2007, 16:36   #220  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,935 / 2078 (77) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от Ned Посмотреть сообщение
to belugin.
Максим, в "официальной" версии есть проблема с картинками - они располагаются в каталоге клиента Аксапта. ZhanR реализовал вариант с ресурсами, при котором этот вопрос решён. Можно включить в "официальную" версию это (или другое) решение вопроса с необходимостью добавлять файлы в инсталляцию клиента?
1. А какие еще варианты есть?
2. Может быть добавить в плагинАПИ событие "загрузка ресурса"?
Теги
tabax, taskbar, toolbar, инструменты, панель задач, панель инструментов, полезное, табакс, тулбар, управление окнами

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
[ANN] Sidax 0.3.6 - многоцелевая боковая панель для Axapta belugin DAX: База знаний и проекты 104 30.06.2008 11:32
axaptafreak: Tabax: tabbed Axapta interface !!!! Blog bot DAX Blogs 0 10.11.2006 01:14
Панель задач в Аксапте wb DAX: Программирование 14 18.04.2006 17:13
Говорят вышел SP2 для Axapta 3. Кто нибуть что знает на эту тему? soin DAX: Прочие вопросы 10 13.10.2003 10:43
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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