|  21.08.2010, 00:19 | #1 | 
| Участник | ax2009: кто юзал Startup command: CompileAll_+ для периодического обновления перекрестных ссылок? 
			
			Здесь ax2009: почему обновление перекрестных ссылок перестало быть пакетным заданием? выяснили, что в ax2009 возникают загадочные some technical problems при компиляции на сервере. Поэтому построение перекрестных ссылок в пакете просто отключено. А кто-нибудь пробовал для периодического обновления перекрестных ссылок команду запуска CompileAll с параметром "+"? Есть впечатления? Как работает? Есть ли баги? | 
|  | 
|  21.08.2010, 00:55 | #2 | 
| Участник | 
			
			Ссылка на доку: How to: Schedule Cross-references Without a Batch. Я сам на трешке делал компиляцию через SysStartupCmd с рассылкой ошибок по почте (но без перекрестных) - работало нормально. Кстати, припоминаю, что когда 2009 выходила, это было обозначено как новая фича - наверное это и есть рекомендуемы способ. Последний раз редактировалось belugin; 21.08.2010 в 00:58. | 
|  | |
| За это сообщение автора поблагодарили: mazzy (2). | |
|  21.08.2010, 01:08 | #3 | 
| Участник | Цитата: Вопрос про ax2009. Теперь то как обстоят дела? | 
|  | 
|  21.08.2010, 16:38 | #4 | 
| ---------------- | 
			
			Где-то год назад это работало, как сейчас не знаю (настроил на ночь - в понедельник посмотрю).  Для этих целей завожу спец.пользователя и ставлю ему галку. | 
|  | 
|  21.08.2010, 22:09 | #5 | 
| Участник | 
			
			Какую? автовыход? А как из аксапты выходить после генерации перекрестных ссылок? | 
|  | 
|  23.08.2010, 00:44 | #6 | 
| ---------------- | 
			
			Галку в настройках компилятора для пользователя (Перекрестные ссылки).  Настраиваю Планировщик виндусовый для запуска Аксапты с ключом CompileAll от имени выбранного пользователя. Аксапта сначала все компилит, потом перестраивает ссылки и сама закрывается. Вот как-то так всегда работало. | 
|  | 
|  23.08.2010, 01:24 | #7 | 
| Administrator | 
			
			У конструкции CompileAll_+ было несколько неприятных особенностей: 
 В 2009 документацию не изменили, а сей доблестный метод удалили (видимо, как нигде не использующийся). А там между прочим был очень простой код: X++: xRef = new xRefUpdate(); if (xRef) { xRef.updateAll(); result = true; } PHP код: 
			Использование такой конструкции аналогично использованию пункта меню Сервис-Средства разработки-Перекрестные ссылки-Периодические операции-Обновить с включенными галками: 
 Вставка такого ярлыка в шедулер от ОС (Tasks) - позволяет не использовать АХ-овый пакетник (это актуально, к примеру, на разработческом приложении, когда нужно постоянно перезаходить, чтобы "подцепить" последние изменения в коде), при этом хочется, чтобы построив ссылки - АХ завершила бы работу (закрыла сессию) 
				__________________ Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 23.08.2010 в 09:30. | 
|  | |
| За это сообщение автора поблагодарили: mazzy (2), coolibin (2), player (1). | |
|  23.08.2010, 09:34 | #8 | 
| Administrator | 
			
			Кстати по поводу логов. Содержимое инфолога - прекрасно пишется в файл, указанный в XML-файле.
		 
				__________________ Возможно сделать все. Вопрос времени | 
|  | 
|  23.08.2010, 10:01 | #9 | 
| Участник | Цитата: http://axapta.mazzy.ru/lib/autorun/ http://msdn.microsoft.com/en-us/library/aa870082.aspx | 
|  | 
|  23.08.2010, 10:12 | #10 | 
| Administrator | 
			
			О... А оказывается параметр UpdateCrossReference - это вообще раритет с 3.0 SP6 не доживший до 4.0. Вот чего МСу стоило бы оставить сей параметр и дальше? Жалко что ли?
		 
				__________________ Возможно сделать все. Вопрос времени | 
|  | 
|  24.08.2010, 22:54 | #11 | 
| ---------------- | Цитата: 
		
			Сообщение от sukhanchik
			   У конструкции CompileAll_+ было несколько неприятных особенностей: 
 PHP код: 
			Использование такой конструкции аналогично использованию пункта меню Сервис-Средства разработки-Перекрестные ссылки-Периодические операции-Обновить с включенными галками: 
 SysCompileAll::compile() для перестроения перекрестных ссылок вызывает xRefUpdate::main(new Args(classstr(SysCompileAll))), где есть следующий кусок кода X++: if (args.name() == classStr(SysCompileAll)) { xRefUpdate.updateAll(); } То есть при использовании CompileAll мы имеем тот же самый алгоритм перестроения ссылок. То есть единственной неприятностью остается Level 4, но для псевдопользователя, который по ночам занимается компиляцией с перестроением перекрестных ссылок, думаю, это не проблема  И да, ночной опыт с CompileAll закончился успешно... и будет теперь повторяться еженочно. Чего и вам желаю. | 
|  | |
| За это сообщение автора поблагодарили: mazzy (2), sukhanchik (4), jeky (2). | |
|  25.08.2010, 08:50 | #12 | 
| Administrator | 
			
			Хм... чего-то сие я пропустил... Но ларчик был же... Сам сталкивался....
		 
				__________________ Возможно сделать все. Вопрос времени | 
|  | 
| Теги | 
| автозапуск, пакетная обработка, перекрестные ссылки | 
|  | 
| 
 |