Цитата:
PS. Может что забыл залить - обращайтесь.
На самом деле форма не запускается, так как не хватает кучи EDT. Но все равно спасибо, было интересно взглянуть.
Цитата:
TABLE 1 - название
Filed 1.1 - название
Field 1.2 - название
Попробую подвести какую-то черту.
Вот вариант с TreeNode:
PHP код:
static void printTablesAndFields(Args _args)
{
treeNode treeNode;
treeNode fieldNode;
xInfo xInfo = new xInfo();
;
treeNode = xInfo.rootNode();
treeNode = treeNode.AOTfindChild("Data Dictionary");
treeNode = treeNode.AOTfindChild("Tables");
treeNode = treeNode.AOTfirstChild();
while (treeNode)
{
print treeNode.TreeNodeName();
fieldNode = treeNode.findChild("Fields");
fieldNode = fieldNode.firstChild();
while (fieldNode)
{
print " " + fieldNode.treeNodeName();
fieldNode = fieldNode.nextSibling();
}
treeNode = treeNode.nextSibling();
}
}
Вот вариант с DictTable:
PHP код:
static void printTablesAndFields2(Args _args)
{
Dictionary dictionary = new Dictionary();
TableId refTableId;
FieldId refFieldId;
DictTable dictTable;
DictField dictField;
int i, j;
;
startLengthyOperation();
for (i=1; i<= dictionary.tableCnt(); i++)
{
refTableId = dictionary.tableCnt2Id(i);
dictTable = new DictTable(refTableId);
print dictTable.name();
for (j=1; j<= dictTable.fieldCnt(); j++)
{
refFieldId = dictTable.fieldCnt2Id(j);
dictField = new DictField(refTableId, refFieldId);
print " " + dictField.name();
}
}
}