Pentaho厨房参数未传递给Pentaho作业

Pentaho厨房参数未传递给Pentaho作业,pentaho,pentaho-data-integration,Pentaho,Pentaho Data Integration,使用Pentaho Kitchen运行勺子/PDI作业。在主作业中定义应在运行时由厨房参数设置的参数。在Windows下运行。以下操作不起作用: C:\pentaho8.0\data-integration\kitchen /file:"C:\Users\nbessmer\Source\Professional_Services_New\Client Implementations\BlackBaud\Rapid7CodeDrop2\NexposeLoadStripped.kjb" "-par

使用Pentaho Kitchen运行勺子/PDI作业。在主作业中定义应在运行时由厨房参数设置的参数。在Windows下运行。以下操作不起作用:

C:\pentaho8.0\data-integration\kitchen /file:"C:\Users\nbessmer\Source\Professional_Services_New\Client Implementations\BlackBaud\Rapid7CodeDrop2\NexposeLoadStripped.kjb"
 "-param:HelperFiles=C:\Users\nbessmer\Source\Professional_Services\Rapid7\Output" "-param:InputDirectory=C:\Users\nbessmer\Source
\Professional_Services\Rapid7" "-param:OutputDirectory=C:\Users\nbessmer\Source\Professional_Services\Rapid7\Output\Nexpose" "-param:ReportFile=report.csv" "-param:Root=C:\Users\nbessmer\Source\Professional_Services\Rapid7" 
甚至用非常简单的工作尝试了这个,但无法在厨房中使用参数

谢谢你的帮助

这也不起作用:

C:\pentaho8.0\data-integration\kitchen 
/file:"C:\Users\NBessmer\Source\Professional_Services_New\Client 
Implementations\MIS\Spoon\IP Phones\IP_Phones.kjb" 
"-param:InputDirectory=C:/Users/NBessmer/Source/Professional_Services_New/Client Implementations/MIS/Spoon/IP Phones" 
"-param:InputFile=C:/Users/NBessmer/Source/Professional_Services_New/Client Implementations/MIS/Spoon/IP Phones/IPT Devices-(Nov-29-2018).xlsx
"-param:MashupDirectory=C:/Users/NBessmer/Source/Professional_Services_New/Client Implementations/MIS/Spoon/IP Phones/mashup"
"-param:OutputDirectory=C:/Users/NBessmer/Source/Professional_Services_New/Client Implementations/MIS/Spoon/IP Phones/output"     

在路径名中使用正斜杠时。获取错误:无法读取“file:///C:/NoAnalogPhones.csv“因为它不是一个文件。

可能只是您的命令拼写错误,您使用的是C:\pentaho8.0\data integration\kitchen…”。。。批处理文件的实际名称是Kitchen,大写K

尝试使用以下命令:

C:\pentaho8.0\data integration\Kitchen.bat

而不是小写

编辑:

在KJB中,在KTR调用步骤中,如果在parameters选项卡中设置了参数,则需要向其提供信息(值)或一个流列以从中接收值,如果保持原样,我很确定转换将在这些参数为blanked/empty的情况下运行,因此除非需要静态值,或“每行执行”类型的执行,将参数选项卡全部留空

此外,在KTR内部的参数选项卡中,除非KTR将通过作业调用接收参数,否则您可以将参数全部保留为空,“将所有参数值向下传递到子转换”选项将所有作业参数向下发送到KTR的执行

在批处理文件中,只要从C:\pentaho8.0\data integration\kitchen内部执行此批处理文件,就可以了,但如果从其他文件夹执行,则需要先将批处理文件放到该文件夹中,因此请将其添加到文件夹中:

C: cd C:\pentaho8.0\数据集成\

Kitchen.bat/文件:


这就是我现在所能想到的。

厨房命令行在传递参数时有问题。你必须胡闹,去掉任何换行符/新行,在“params:var=someval”之间留出一个空格

这项工作:

CD C:\Pentaho\数据集成

REM C:\pentaho8.0\data integration\kitchen/file:C:\Users\nbessmer\Source\Professional\u Services\Rapid7 customer delivery\NexposeLoad.kjb

.\kitchen/file:“C:\Users\NBessmer\Source\Professional\u Services\u New\Client implements\MIS\Spoon\IP Phones\IP\Phones\testParms.kjb”“-param:InputFile=C:\Users\NBessmer\Source\Professional\u Services\u New\Client implements\MIS\Spoon\IP Phones\IP\IP\u Phones(2018年11月29日).xlsx”“-param:OutputDirectory=C:Users\NBessmer\Source\Professional\u Services\u New\Client implements\MIS\Spoon\IP\u Phones\IP\u Phones\output”“-param:InputDirectory=C:\Users\NBessmer\Source\Professional\u Services\u New\Client implements\MIS\Spoon\IP Phones\IP\u Phones”


CD C:\Users\NBessmer\Source\Professional\u Services\u New\Client Implementations\MIS\Spoon\IP Phones\IP\u Phones

在引用的(“-param:…”)参数中尝试使用正“/”斜杠而不是反斜杠“\”@CristianCurti-反转斜杠无效。我在Kitchen run中出错:无法读取”file:///C:/NoAnalogPhones.csv“因为它不是一个文件。无法从中读取“file:///C:/NoAnalogPhones.csv“因为它不是一个文件。在org.pentaho.di.trans.steps.csvinput.csvinput.readFieldNamesFromFile(csvinput.java:439)2019/01/28 12:36:49-System-Transformation正在扼杀其他步骤!在org.pentaho.di.trans.steps.csvinput.csvinput.createFieldMapping(csvinput.java:403)在org.pentaho.di.trans.steps.csvinput.csvinput.openNextFile(csvinput.java:330)我在windows下运行。。。。把厨房换成大写的厨房也没什么区别。Kitchen仍在运行,但失败了。您能发送一个KJB和KTR的示例,以便我可以仔细查看并测试它吗?克里斯蒂安-我如何将示例KJB和KTR附加到此线程?您可以编辑您的问题,添加一个代码示例或引用整个KTR的代码块(用Notepad++或类似工具打开KTR文件)。或者你可以压缩文件,上传到某个地方并共享链接。编辑我的答案