【问题标题】:ODI 12C Smart import with actions using SDKODI 12C 使用 SDK 进行操作的智能导入
【发布时间】:2018-11-16 09:27:36
【问题描述】:

您好,我可以使用 SDK 在 ODI 中智能导入项目。但我无法使用预定义的方法来设置诸如合并、创建副本、忽略、重用等操作,同时导入项目。

请帮我实现以下方法, setMatchedFCODefaultImportAction(java.lang.String pFCOObjType, int pSmartImportAction)

通过使用以下方法,我直接导入项目。 importObjectsFromXml (fnameAndPath, ExportKey, ExportWithoutCipherData);

我想执行上述操作,请帮助我。 谢谢

【问题讨论】:

  • Gopi,您应该在寻求帮助之前实施第一个版本。这样一来,一旦您满足了解决方案的基本要求,stack-overflow 就可以帮助您解决任何遗漏的问题。假设有人会为您实现合并、创建、复制、忽略、重用(操作)的所有代码是不明智的,但如果您不知道从哪里开始,您可以在线探索更多。
  • Nitin 我已经完成了我的实现,这是我的代码,

标签: oracle-data-integrator


【解决方案1】:

不幸的是,您不能像在代码中那样使用setMatchedFCODefaultImportAction 为特定对象(如项目)指定操作:

smartImpServ.setMatchedFCODefaultImportAction("Dev_ODI_Project", 1);

它只能为第一类对象定义默认操作,即为特定类型的所有对象。例如,您可以将任何项目的默认操作设置为 CREATE/COPY(相当于您在代码中使用的 1):

smartImpServ.setMatchedFCODefaultImportAction(ISmartImportService.PROJECT_OBJECT_NAME, ISmartImportService.SMART_IMPORT_ACTION_CREATE_COPY);

您可以用作pFCOObjType参数的值是ISmartImportService接口中以_OBJECT_NAME结尾的所有字段。

如果您想为特定对象指定操作,则需要使用来自先前导入的响应文件和 importFromXml 方法。

【讨论】:

  • 嗨,在 ISmartImportService.PROJECT_OBJECT_NAME 中,这是项目名称吗?那么我可以使用 Dev_ODI_Project_OBJECT_NAME,其中 Dev_ODI_Project 是项目的名称
  • 不,正如我所说,您不能指定单个项目。您唯一可以指定的是对象的类型,在这种情况下,它是一个项目。因此它将对所有项目应用相同的操作。 ISmartImportService.PROJECT_OBJECT_NAME 是接口中定义的常量,它已经是你的字符串。它的值为"SNP_PROJECT",您可以在此页面上看到:docs.oracle.com/middleware/1221/odi/reference-java-api/…
  • 我刚刚编辑了我的答案以使用响应文件添加替代方案。这将允许您为每个对象指定操作。
  • 感谢您的信息,但我仍然很困惑。你能给我一个只有那个方法的例子吗,或者你能用那个方法更新我的 git 代码吗,那对我很有帮助。
  • 哪种方法? setMatchedFCODefaultImportAction 或 importFromXml ?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-24
  • 1970-01-01
  • 2022-08-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多