|
![]() |
#1 |
Участник
|
Цитата:
Ну, да, согласен, писал немного на нервной почве. Сейчас, наверное, еще нет смысла описывать тонкости технологии, так как нет ощущения достаточной освоенности среды разработки. Но, как только закончу первую очередь разработки, обязательно напишу и выложу скрины. Единственное, что могу сказать, что после всего этого разработка в традиционном интерфейсе Аксапты кажется просто раем. Во-первых, разработка портала практически не документированна, хотя, среда разработки вполне продуманная и полная. Раньше мне казалось, что портал, это так для отмазки. Типа, чтоб было. Ан нет. Вещь очень полезная и хорошо проработанная. Во-вторых, конечно, очень тяжело одновременно врубаться в .asp , C# и Х++ С# намного более гибкий, чем X++, но в то же время размазанный по всей Винде, включая документацию. В-третьих, с отладкой беда. Или, просто говоря, ее в портале совсем нету. При возникновении ошибки браузер выкидывает десяток строк вызовов из сборок дот-нета, которые обычно ни о чем особенно не говорят. При этом возникает сообщение, что отключен отладчик Аксапты, хотя он вполне себе подключен. В-четвертых, беда с тем, что после каждого внесения изменений приходится то перзагружать AOS, то IIS, то, вообще, компьютер перезагружать. Что-нибудь обязательно сидит где-то в кэше и непонятно где. В общем, усилий приходится прикладывать больше в три-четыре раза по сравнению с внутренней разработкой в Аксапте. Но, есть и положительные моменты. После освоения технологии веб-разработки поверх Аксапты появляется просто безбрежные возможности создания любых деловых веб-приложений. Традиционным считаются три слоя в разработке: слой данных, слой бизнес-логики и слой пользовательского интерфейса. В ситуации с вебом над Аксаптой, Аксапта просто становится слоем данных и слоем бизнес-логики. Даже независимо от собственного функционала. А шэйр-поинт, судя по всему, довольно скоро станет самой популярной средой создания сайтов, потому как реально удобная штука и реально работает. Хотя и сложная. Честно говоря, меня сильно напрягало то, что весь каталог сайта лежит в базе данных и не имеет папочек на диске компьютера. Потом как-то привык. |
|
![]() |
#2 |
Молодой, подающий надежды
|
Цитата:
Сообщение от Narayana
![]() В-третьих, с отладкой беда. Или, просто говоря, ее в портале совсем нету.
При возникновении ошибки браузер выкидывает десяток строк вызовов из сборок дот-нета, которые обычно ни о чем особенно не говорят. При этом возникает сообщение, что отключен отладчик Аксапты, хотя он вполне себе подключен. - Чтобы дебажить код юзерконтрола: 1. Заходите на портал, на страницу, которую хотите отлаживать, ну или на ту, с которой хотите начать, и копируете URL 2. Идете в VS, в верхнем меню Website - Start Options ..., выбираете радиокнопку Start URL: и вставляете в поле скопированный URL. Это в группе Start action 3. В группе Server выбираете радиокнопку Use custom server и в поле Base URL: вписываете адрес портала разработки. Кнопка ОК 4. Идете в Solution Explorer в VS, правая кнопка - Enable Debugging in SharePoint. Если Enable Debugging in SharePoint нет, значит, кто - то уже разрешил отладку. 5. Теперь в коде юзерконтрола ставите breakpoints, идете в Debug - Start Debugging 6. Профит. - Чтобы дебажить X++ код, вызываемый из портала: Отличная пошаговая инструкция расположена тут: How to debug x++ code for Microsoft Dynamics AX Enterprise Portal |
|
|
За это сообщение автора поблагодарили: Logger (1), gl00mie (2), Narayana (1). |
![]() |
#3 |
Участник
|
![]() Цитата:
Сообщение от pedrozzz
![]() Слишком громкое заявление, вам не кажется? Все там есть, и код контрола дебажить можно и код в X++. Итак:
- Чтобы дебажить код юзерконтрола: 1. Заходите на портал, на страницу, которую хотите отлаживать, ну или на ту, с которой хотите начать, и копируете URL 2. Идете в VS, в верхнем меню Website - Start Options ..., выбираете радиокнопку Start URL: и вставляете в поле скопированный URL. Это в группе Start action 3. В группе Server выбираете радиокнопку Use custom server и в поле Base URL: вписываете адрес портала разработки. Кнопка ОК 4. Идете в Solution Explorer в VS, правая кнопка - Enable Debugging in SharePoint. Если Enable Debugging in SharePoint нет, значит, кто - то уже разрешил отладку. 5. Теперь в коде юзерконтрола ставите breakpoints, идете в Debug - Start Debugging 6. Профит. - Чтобы дебажить X++ код, вызываемый из портала: Отличная пошаговая инструкция расположена тут: How to debug x++ code for Microsoft Dynamics AX Enterprise Portal Несмотря на то, что описанные вами приемы отладки не очень простые, все-равно очень приятно, что в ответ на лохопетские заявления обязательно найдется хороший человек, который спокойно подскажет как правильно )). В ближайшее время попробую. А в общем-то, я привык уже к тому, что если в Аксапте что-то не получается, то обязательно нужное найдется. В случае с выводом названий кнопочек, думаю, специально сделали, чтобы прямой текст не через меточные файлы ломался. Тогда разработчик задумается и вспомнит про метки... ) |
|
![]() |
#4 |
Участник
|
Цитата:
Сообщение от pedrozzz
![]() Слишком громкое заявление, вам не кажется? Все там есть, и код контрола дебажить можно и код в X++. Итак:
- Чтобы дебажить код юзерконтрола: 1. Заходите на портал, на страницу, которую хотите отлаживать, ну или на ту, с которой хотите начать, и копируете URL 2. Идете в VS, в верхнем меню Website - Start Options ..., выбираете радиокнопку Start URL: и вставляете в поле скопированный URL. Это в группе Start action 3. В группе Server выбираете радиокнопку Use custom server и в поле Base URL: вписываете адрес портала разработки. Кнопка ОК 4. Идете в Solution Explorer в VS, правая кнопка - Enable Debugging in SharePoint. Если Enable Debugging in SharePoint нет, значит, кто - то уже разрешил отладку. 5. Теперь в коде юзерконтрола ставите breakpoints, идете в Debug - Start Debugging 6. Профит. - Чтобы дебажить X++ код, вызываемый из портала: Отличная пошаговая инструкция расположена тут: How to debug x++ code for Microsoft Dynamics AX Enterprise Portal Нажимаю начать отладку и выдает ошибку Цитата:
Не удается запустить отладку на веб-сервере. Настройка веб-сервера выполнена неверно.
|
|
![]() |
#5 |
Молодой, подающий надежды
|
Цитата:
Быть может здесь найдете ответ: http://msdn.microsoft.com/ru-ru/libr...e%28v=vs.90%29 |
|
|
За это сообщение автора поблагодарили: IvanS (1). |
![]() |
#6 |
Участник
|
Цитата:
Сообщение от pedrozzz
![]() Да. Но он не всегда и не у всех отображался. Закономерность мне неизвестна.
Быть может здесь найдете ответ: http://msdn.microsoft.com/ru-ru/libr...e%28v=vs.90%29 |
|
![]() |
#7 |
NavAx
|
Вы должны входить в группу администраторов сайтов Sharepoint - поэтому и не появляется.
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты... ![]() |
|
|
За это сообщение автора поблагодарили: gl00mie (1), pedrozzz (1). |
![]() |
#8 |
Участник
|
|
|
![]() |
#9 |
Молодой, подающий надежды
|
Цитата:
Если меняете код в юзерконтроле, то используйте утилиту AxUpdatePortal. Следуя этим правилам, что-либо перезагружать еще не приходилось. |
|
![]() |
#10 |
Участник
|
Цитата:
Сообщение от pedrozzz
![]() Если меняете объекты в АОТ, то обычно достаточно на главной странице нажать ссылку "Обновить AOD", возможно, еще "Обновить словарь", "Обновить данные".
Если меняете код в юзерконтроле, то используйте утилиту AxUpdatePortal. Следуя этим правилам, что-либо перезагружать еще не приходилось. Допустим я меняю в VS юзерконтрол AddressOverview, добавляю поля, предварительно добавив их в АОТ в таблицу в новую группу. Что мне нужно обновить и в каком порядке, чтобы ничего не перезагружать и не словить неизвестную ошибку в SP? |
|
![]() |
#11 |
Участник
|
Цитата:
Вот как бы с этим разобраться в каких случаях что именно нужно делать?
Enterprise Portal caches resources from the AOT and data from tables in Microsoft Dynamics AX. If you make changes in the AOT, the changes may not be reflected immediately in Enterprise Portal. In a similar way, data that has been changed in tables for Microsoft Dynamics AX may not immediately be seen in Enterprise Portal. Stale data in these caches could cause unexpected results in Enterprise Portal. Three commands are available in the Administration group at the bottom of the main page for Enterprise Portal to refresh these caches. The commands are described in the following table. Refresh AOD - Flushes cached application object information for all items in the AOT. Use this when changes you made in the AOT are not immediately reflected in Enterprise Portal. Refresh data - Flushes cached database records. Use this when changes in the database are not immediately reflected in Enterprise Portal. Refresh dictionary - Flushes cached application object information for items in the Data Dictionary node of the AOT. Use this when you have made changes to resources in the Data Dictionary node, such as tables or extended data types, but the changes are not immediately reflected in Enterprise Portal. источник |
|
![]() |
#12 |
Участник
|
Цитата:
|
|
|
За это сообщение автора поблагодарили: Narayana (1), pedrozzz (0). |
![]() |
#13 |
Участник
|
Да, эту документацию я уже читал, но конкретно у меня это почему-то не работает. Внутри виндового интерфейса работает, а с порталом нет. Просто пишет, что отладка не включена и показывает где в настройках нужно включить. Туда лезешь, а там галочка стоит и показывает, что все включено. Возможно, глюк.
|
|
![]() |
#14 |
Участник
|
Для отладки попробуй сделать файл rdp и запустить его в административном консольном режиме
"С:\MyRDP.rdp" /admin /console - должно все заработать Вот в первой инструкции как раз написано: If you are debugging on a remote system, you must use console mode when connecting. Otherwise, debugging will not work. |
|
|
|