| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Глюк с таблицей RpayHRMOrganization в DAX2009
			 
			
			С момента перехода на 2009 наблюдается следующий глюк: 
		
		
		
			таблица RpayHRMOrganization периодически исчезает из АОТ, хотя из датасорса формы открывается в обозревателе и в администрировании SQL она тоже есть. Но в методах она не доступна, то есть при попытке компиляции методов, где она используется, выдается сообщение, что переменная не была объявлена. Хотя ранее скомпилированное работает без проблем. Как с этими исчезновениями можно бороться? и из-за чего это может происходить? ПС версия АХ на скрине, на чистую АХ установлено решение АНД-проджект "Зарплата и кадры", База данных на SQL2008. Id таблицы ни с чем не пересекается, проверено не однократно. ПС2 Через администрирование SQL таблицу синхронизируешь, перезайдешь в аксапту и таблица появилась. Последний раз редактировалось d_alexe; 20.09.2013 в 10:36.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Может вам  в приложении индексы (*.aoi) пересоздать ?
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			В схожей ситуации помогла переиндексация в средствах разработки (Сервис \ Средства разработки \ Объекты приложения \ Переиндексация)
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	Здесь могла быть Ваша реклама!  | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			И логику переиндексировали и глобальную компиляцию запускали, ни чего не помогает 
		
		
		
		
		
		
		
	не как таблицу вернуть я знаю, а вот почему она пропадает и как от этого избавиться, вот в чем вопрос  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Слава богу, а то думал у меня одного такие глюки, первый раз зайду она есть , второй раз в аоте уже ее нет. Плюнул захожу через проекты.))
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			так она и в проектах так же, то есть, то нет. 
		
		
		
		
		
		
		
	… Видишь суслика? — Нет. — И я не вижу. А он есть! (c)ДМБ вот и тут так же  | 
| 
	
 | 
| 
			
			 | 
		#7 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Странно, у нас пропадает только из самого аоса, редко но бывает, в проектах остается.
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#8 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Столкнулись с похожей проблемой. Победили так. Запустите следующий джоб (ногами не пинать – писали начинающие стажеры), если джоб найдет ошибки, то надо будет написать ещё один джобик, который удалить "испорченные" объекты. 
		
		
		
		
		
		
		
		
			X++: // Поиск дубликатов объектов с различными ID static void findDuplicateJob_LRA(Args _args) { Dictionary dict1 = new Dictionary(); Dictionary dict2 = new Dictionary(); DictTable dictTable1; DictTable dictTable2; DictEnum dictEnum; DictType dictType; int i1, i2, num; ; // Обработка таблиц for (i1 = 1; i1 <= dict1.tableCnt(); i1++) { dictTable1 = new DictTable(dict1.tableCnt2Id(i1)); if (dictTable1) { print strFmt("%1 из %2 %3", i1, dict1.tableCnt(), dictTable1.name()); for (i2 = i1+1; i2 <= dict2.tableCnt(); i2++) { dictTable2 = new DictTable(dict2.tableCnt2Id(i2)); if (dictTable2) { if (dictTable1.name() == dictTable2.name() && dictTable1.id() != dictTable2.id()) { // Здесь собственно и есть ошибка error(strFmt("Ошибка в объекте %1 %2 %3", dictTable1.name(), dictTable1.id(), dictTable2.id())); num++; } } else { info(strFmt("Ошибка при инициализации Table %1", dict2.tableCnt2Id(i2))); } } } else { info(strFmt("Ошибка при инициализации Table %1", dict2.tableCnt2Id(i2))); } } info(strFmt("Готово! Ошибок %1", num)); } «Сервис \ Средства разработки \ Объекты приложения \ Переиндексация» у нас безвозвратно подвисала Dynamics AX. Последний раз редактировалось LRA; 23.09.2013 в 15:57.  | 
| 
	
 | 
| 
			
			 | 
		#9 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			По-пробовал не помогло. "Ошибок 0."  
		
		
		
		
		
		
		
	В общем-то, как и ожидалось, так как на пересечения по Id или названию проверялись в-первую очередь.  | 
| 
	
 | 
| 
			
			 | 
		#10 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Я замечал, что такие глюки бывают из-за того, что на разных слоях объект существует с названием в разных регистрах символов (например RPayHRMOrganization и RpayHRMOrganization).
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: Logger (3), Ace of Database (3), Ivanhoe (1), d_alexe (1). | |
| 
			
			 | 
		#11 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
SL2 - RPayHRMOrganization, а на CUS & USR - RpayHRMOrganization теперь надо пробовать переименовать как-то, в лоб не получилось  
		 | 
| 
	
 | 
| 
			
			 | 
		#12 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Я думаю, надо попробовать послойно экспортировать слои в XPO, потом удалить из AOT, поправить регистр в XPO и импортировать в обратном порядке (данные могут покриветь, если пройдёт синхронизация таблиц -- в зависимости от имеющихся модификаций на удаляемых слоях. Вообще лучше на тестовой инсталляции опробовать для начала).
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#13 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Ну это само собой разумеющиеся   , чай не первый год замужем  
		 | 
| 
	
 |