![]() |
#1 |
Участник
|
Экспорт с конкретного слоя
Как сделать программно экспорт объекта AOT с конкретного слоя?
С текущего слоя получилось. Со всех слоев получилось. Стандартный экспорт это делает в ядре, а как самому это сделать? |
|
![]() |
#3 |
Участник
|
|
|
![]() |
#4 |
Сенбернар
|
Цитата:
- вы можете экспортировать только те слои, на которые можете войти (в Аксу, в смысле). То есть только те слои, на которые у вас права есть. - если бы было не так - ничто не мешало бы, экспортировав, например, SYS, внести некие изменения прямо в XPO и залить измененный слой обратно. Что не есть правильно. Вот как-то так ![]()
__________________
Best Regards, Roman |
|
![]() |
#5 |
Британский учённый
|
Если устраивает запуск из клиента, сделайте через саму форму.
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще. |
|
![]() |
#6 |
Гость
|
А так?
#AOT #AOTExport TreeNode rootNode = TreeNode::findNode("Data Dictionary\\Tables\\*ЧЧЧ*"); ; //rootNode.treeNodeExport(@'c:\fullaot.xpo', #expKeepIds | #expLables | #expLayer); rootNode = rootNode.getNodeInLayer(UtilEntryLevel::sys); rootNode.treeNodeExport(@'c:\fullaot.xpo', #export); info("s"); PS и уже после нашел обсуждение Программынй экспорт из определенного слоя Последний раз редактировалось axm2013; 30.03.2015 в 16:17. |
|
![]() |
#7 |
Британский учённый
|
Цитата:
Сообщение от RVS
![]() ИМХО оно так специально сделано :
- вы можете экспортировать только те слои, на которые можете войти (в Аксу, в смысле). То есть только те слои, на которые у вас права есть. - если бы было не так - ничто не мешало бы, экспортировав, например, SYS, внести некие изменения прямо в XPO и залить измененный слой обратно. Что не есть правильно. Вот как-то так ![]()
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще. |
|
![]() |
#8 |
Участник
|
Но стандартным экспортом можно выгрузить любой слой. И просмотреть в АОТе можно содержимое любого слоя.
|
|
![]() |
#9 |
NavAx
|
|
|
|
За это сообщение автора поблагодарили: RVS (2). |
![]() |
#10 |
Участник
|
Я сейчас штатными средствами могу выгрузить SYS и залить на свой слой.
В чем хак, если используются штатные средства? |
|
![]() |
#11 |
Британский учённый
|
На примере кода ниже можно убедиться, что из кода можно экспортировать с нижнего слоя, но экспортируется текущий и предыдущий слой. Т.е. можно экспортировать например только слой sys, но слой syp будет содержать весь код видимый на syp и т.п.
X++: #AOTExport UtilEntryLevel layer = UtilEntryLevel::syp; TreeNode treeNode; treeNode = TreeNode::findNode('\\Data Dictionary\\Tables\\AccountingDistribution'); if (SysTreeNode::existsInLayer(treeNode, layer)) { treeNode = SysTreeNode::nodeInLayer(treeNode, layer, true, false); treeNode.treeNodeExport(strFmt('c:\\%1.xpo', layer), #export); }
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще. |
|
|
За это сообщение автора поблагодарили: kia (1). |
![]() |
#12 |
NavAx
|
|
|
![]() |
#13 |
Участник
|
Цитата:
Но, у меня задача сложней: сравнить слой с old версией слоя. А для old-слоя нижние слои не видны. |
|
![]() |
#14 |
Британский учённый
|
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще. |
|
![]() |
#15 |
Участник
|
|
|
![]() |
#16 |
Сенбернар
|
Цитата:
Если опишете задачу - проще будет подсказать что-нить..
__________________
Best Regards, Roman |
|
![]() |
#17 |
Участник
|
Нужно программно вывести список объектов, реально измененных в обновлении (в VAR слое).
Хочется сравнить только VAR слой с его OLD версией. Слой VAR чужой, пароля на него нет. |
|
![]() |
#18 |
Сенбернар
|
Цитата:
\\Classes\SysCompareCreateProject, он же Утилита сравнения слоев. Наследуйте от него, запускайте с уже заданными параметрами, вывод вместо проекта перенаправьте в Infolog или там в файл, куда хотите.. Все прочее он уже умеет )))
__________________
Best Regards, Roman |
|
![]() |
#19 |
Участник
|
|
|
![]() |
#20 |
Сенбернар
|
Цитата:
В 2009-й - оно тоже есть и работает.. Сервис - Средства разработки - Обновить код - Сравнение слоев. Все работает.. Вот как-то так.. PS : Мне почудилось, или раньше картинку сюда можно было прямо с компа вставить? Потому как теперь оно требует URL, а выгружать картинки куда-то - мне лениво )) PPS : Вот оно )) ![]() ![]()
__________________
Best Regards, Roman Последний раз редактировалось RVS; 31.03.2015 в 15:28. |
|
|
За это сообщение автора поблагодарили: kia (1). |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|