23.05.2007, 10:21 | #1 |
NavAx
|
infolog.getImportedNode() в DAX 4.0
Доброе утро.
Кто нибуть сталкивался с такой проблемой, при вызове функции infolog.getImportedNode() для инициализации TreeNode, соответствующего элементу в экспортном файле, если элемента нет в АОТ, путь у него получается пустой, и в форме сравнения появляются строчки (xpo) только, вместо нормального путя к объекту.... при етом сравнение работает нормально... может кто нибуть подскажет как с етим бороться.... |
|
23.05.2007, 14:46 | #2 |
Участник
|
Привет!
Не понимаю что ты имеешь ввиду. В помощи есть хороший пример, может он поможет X++: public TreeNode getVirtualTreenode( Filename _filename = this.fileName()) { #AOT #AotExport TmpAotImport tmpImportAot; SysImportElements sysImportElements = new SysImportElements(); TreeNode treeNodeImport = null; int exportId; int flag = (#impGetCompareNode + #impKeepIds); str name; ; // Set the filename. sysImportElements.newFile(_filename); // Get info from the file tmpImportAot = sysImportElements.getTmpImportAot(); // Create an import context exportId = infolog.startImport(_filename, flag); // Get the right name // for doc nodes it is the path excl. the first part switch (tmpImportAot.UtilFileType) { case UtilFileType::Application: name = tmpImportAot.TreeNodeName; break; case UtilFileType::ApplicationCodeDocumentation: name = strdel(tmpImportAot.TreeNodePath, 1, strlen(#ApplicationDeveloperDocPath)); break; case UtilFileType::ApplicationHelp: name = strdel(tmpImportAot.TreeNodePath, 1, strlen(#ApplicationDocPath)); break; case UtilFileType::KernelHelp: name = strdel(tmpImportAot.TreeNodePath, 1, strlen(#SystemDocPath)); break; default: name = tmpImportAot.TreeNodeName; break; } // Import the node in memory treeNodeImport = infolog.getImportedNode( exportId, tmpImportAot.UtilFileType, tmpImportAot.UtilElementType, name, tmpImportAot.FilePos, flag); // Close the import context infolog.endImport(exportId, 1); return treeNodeImport; } Последний раз редактировалось Volodymyr; 23.05.2007 в 14:51. |
|
23.05.2007, 16:19 | #3 |
NavAx
|
Хелп смотрела, но не поняла почему путь пустой у получившегося TreeNode,если объекта не существует в АОТ ... в 3 версии все с етим было нормально....была нормальная ссылка на объект..
|
|
24.05.2007, 18:15 | #4 |
Участник
|
Незнаю , почему так работает. Попробуй, если возможно, использовать таблицу tmpAotImport.TreeNodePath. Там сохраняется нормально.
|
|
|
За это сообщение автора поблагодарили: Masia (1). |
24.05.2007, 22:29 | #5 |
NavAx
|
|
|