1

我的来源是 dat 文件。最初在设计器中,我可以从本地导入文件。但稍后它会进入共享位置,Informatica 需要从那里挑选它。我想,为此我需要将参数值 'Source file Directory' = '$PMSourceFileDir\' 放在 Workflow Manager 的会话级别。现在这个参数文件在哪里?我怎样才能让它编辑它,以便我也可以输入我的参数值。Informatica 安装在我的本地,但我正在连接到远程存储库。有没有其他方法可以让 Informatica 从远程位置选择此 dat 文件。请帮忙。

4

4 回答 4

3

$PMSourceFileDir 通常设置为 Informatica 服务器初始化的一部分,因为它是一个服务器变量。如果你想为你的工作流覆盖它,你可以在一个参数文件中这样做。

在您的工作流监视器中,转到工作流设计器选项卡,打开您的工作流。

Workflow > Edit > Properties > Parameter file Name.

于 2012-02-16T18:29:20.997 回答
1

在将工作流加载为当前工作流的工作流设计器中,选择工作流...编辑...属性选项卡,然后查看属性“参数文件名”的值。这会显示您的工作流正在使用的参数文件的位置和名称。例如,在该文件中,您可以更改 PM* 变量的可解析值。请记住,对于每个会话,您可以为源文件等指定不同的 PM* 值,但请记住,许多企业遵循层次结构标准,每个工作流的源和目标目录都有自己指定的源和目标目录,所以当开发人员在 Sessions 中设置这些时,它通常遵循如下形式:$PMSourceFileDir/{workflow_specific_folder_name}。遵循该标准,或者如果您不能或如果它不适用,请不要让它阻止您;在指示源文件目录时,只需为该会话使用不同的 ${var_name} 。如果您想避免将此类更改硬编码到工作流本身中,您可以在 .parm 文件中执行此操作。.parm 文件中会更改 PM* 值的示例条目:

---TOP OF FILE---
[Service:{Name}]
$PMSessionLogDir=/{path}/SessLogs/
$PMBadFileDir=/{path}/BadFiles/
$PMWorkflowLogDir=/{path}/WorkflowLogs/
$PMTargetFileDir=/{path}/TgtFiles/
$PMSourceFileDir=/{path}/SrcFiles/
# Above are just example names of directories
...
# Example of specific session that has variables set for it herein
[~{Project_folder_name}.WF:{Workflow_name}:{session_name}]
$$Repository_Name={repo_name}
$$Folder_Name={Project_folder_name}
$$Workflow_Name={wkf_name}
$DBConnection_Reusable_Comp_source={source_name}
$DBConnection_Repo={Repo_conn_name}
$$DBConnection_Reusable_Comp_source={Comp_source_name}
$$DBConnection_Repo={Conn_repo}
$PMSessionLogFile={Log_file_name}
$PMSourceFileDir_{session_name}={custom_source_file_dir}

... {etc.} ...

--- BOTTOM OF FILE ---

除了最后一个条目之外,所有条目都是 corp 标准类型的示例;您的企业可能在那里有不同种类的东西。但最后一个条目是指定自定义 $PM* 值的示例;在这种情况下, $PMSourceFileDir_{session_name} 其中 {session_name} 当然是您想要为其自定义源文件夹的会话的名称。在您的工作流程中的相关会话中,您需要指出:

$PMSourceFileDir_{session_name}

将 {session_name} 替换为会话的实际名称。然后在源目录属性中,如果您使用该变量,它将被解析为您在 .parm 文件中为它指定的自定义目录位置。

于 2015-06-11T14:02:56.000 回答
0

我不相信你需要一个参数文件。参数文件用于根据文件内容更改 Informatica 的行为,允许您通过编辑文件而不是编辑 Informatica 代码来更改行为。

当 Informatica 读取源文件时,它始终来自本地计算机,因此更改 $PMSourceFileDir 的值或更改“源文件目录”的值只会更改它在本地计算机上查找文件的位置。

您有几个选择: * 首先将文件复制到您的 Informatica 主机。* 使用 S/FTP 连接并从可能位于的任何位置读取文件,假设该位置正在运行 FTP 服务器或 SSH。* 使用 NFS 挂载或 SSHFS。

于 2012-03-02T05:26:18.870 回答
0

也可以将参数文件放在 ,

右键单击会话 > 编辑 > 属性 > 参数文件名

这将覆盖工作流属性中指定的参数文件位置。

我认为“源文件目录”只能连接到本地服务器,如果你想在某个远程服务器上创建目标,你需要创建一个会话后脚本,它将文件从本地服务器 scp/ssh 到远程服务器工作流成功执行后。

于 2013-07-01T10:44:29.327 回答