如何使用定义的 EDT 查找所有表?

How to find all tables using a defined EDT?

如何创建一个作业来查找包含特定扩展数据类型的所有表?

我找到了这份工作,但它给我一个错误:https://fredshen.wordpress.com/2006/02/05/find-out-tables-containing-specific-edt/

试试这个:

static void findEdtinTable(Args _args)
{
    treeNode childNode;
    treeNode fields;
    treenodeIterator it, itFld;

    str properties;
    str table;
    str field;
    str extendedDataType;
    str searchType = "PurchInternalInvoiceId";     // EDT
    int x;
    treeNode t  = TreeNode::findNode('\Data Dictionary\Tables');

    it = t.AOTiterator();
    childNode= it.next();
    while (childNode)
    {
      Table = childNode.treeNodeName();
      itFld = t.AOTfindChild(childNode.treeNodeName()).AOTfindChild("Fields").AOTiterator();

      fields = itFld.next();
      while (fields)
      {
        field = fields.treeNodeName();
        properties = fields.AOTgetProperties();
        extendedDataType = findProperty(properties, "ExtendedDataType");

        if (extendedDataType == searchType)
        {
          info(strfmt("%1 / %2 – ExtendedDataType: %3", table, field, extendedDataType));
        }
        fields = itFld.next();
      }
      childNode= it.next();
    }
}

使用 Cross Reference Tool.

它也会显示代码使用。