|  02.06.2004, 10:48 | #1 | 
| Участник | AOTname 
			
			Доброго времени суток. Есть следующий код: static void Job62(Args _args) { TreeNode treeNode = infolog.findNode('\\Forms'); ; treeNode = treeNode.AOTfirstChild(); while (treeNode) { if (! treeNode.AOTObjectNode()) continue; print "treeNodeName: " + treeNode.treeNodeName(); print "AOTName:" + treeNode.AOTName(); treeNode = treeNode.AOTnextSibling(); pause; } } В момент вызова treeNode.AOTName() axa вываливается с crash detection. Усли же таким же образом пролистывать ветку классов, то все нормально (\\Classes). Метод же treeNode.treeNodeName() работает нормально в обоихх случаях. Кто-нибудь с таким сталкивался и почему это происходит? Axapta 3.0 SP1 | 
|  | 
|  02.06.2004, 13:28 | #2 | 
| Участник | 
			
			Это ошибка в кернеле, будет исправлена не ранее версии 4.0 или 3.0 SP4 Кроме того, лучше бегать по AOT с использованием итераторов. Например, так: PHP код: 
			 | 
|  | |
| За это сообщение автора поблагодарили: Logger (1). | |
|  12.01.2006, 11:23 | #3 | 
| Участник | 
			
			Через итератор при выборе форм аксапта все равно вылетает. Кто-нибудь знает как это можно обойти?
		 | 
|  | 
|  12.01.2006, 14:17 | #4 | 
| Участник | 
			
			Если тебе нужен просто список всех существующих форм, то это можно получить примерно так: select name from UtilIdElements group by name where UtilIdElements.recordType == utilElementType::Form Т.е. в AXAPTA есть служебная таблица UtilIdElements, которая содержит список вообще всех объектов на всех слоях (отсюда group by, чтобы убрать дубли) А вот если нужны еще какие-то реквизиты форм, то тут не знаю... | 
|  | 
|  16.01.2006, 15:56 | #5 | 
| Участник | 
			
			Натыкался на такую проблему, пришлось пользоваться следующим методом treeNode.treeNodeName(). PHP код: 
			 | 
|  |