Pentaho PDI:仅在无错误时输出

Pentaho PDI:仅在无错误时输出,pentaho,pentaho-spoon,pentaho-data-integration,pdi,Pentaho,Pentaho Spoon,Pentaho Data Integration,Pdi,我想将csv文件转换为XML文件。在转换中,我还对数据进行了少量验证,例如,字符串的长度必须小于50。所以我有一个textfileinput步骤>modifiedjavascript步骤,有两个中止步骤(用于错误处理跳)和XML输出步骤。我的目标是仅在没有错误发生时创建XML文件。目前,它创建一个包含2行的XML并中止,因为csv的第3行是一个很长的字符串。我认为这是一个非常简单的场景,但我没有办法解决它。有人能给我小费吗。 谢谢。 Marko编辑: 如果中途中止,您的流似乎确实停止了长度超过5

我想将csv文件转换为XML文件。在转换中,我还对数据进行了少量验证,例如,字符串的长度必须小于50。所以我有一个textfileinput步骤>modifiedjavascript步骤,有两个中止步骤(用于错误处理跳)和XML输出步骤。我的目标是仅在没有错误发生时创建XML文件。目前,它创建一个包含2行的XML并中止,因为csv的第3行是一个很长的字符串。我认为这是一个非常简单的场景,但我没有办法解决它。有人能给我小费吗。 谢谢。 Marko

编辑:

如果中途中止,您的流似乎确实停止了长度超过50个字符的字符串,但由于Pentaho并行工作,如果第一行有效并到达输出步骤,则输出将开始记录,您需要的是阻止此步骤,直到上一步处理完所有行


只需在输出步骤之前添加一个“阻塞步骤”(在步骤完成之前,不要错误地阻塞此步骤,您需要阻塞步骤记住在这一步选中“传递所有行”选项,这将有效地在输出之前“保留”转换中的所有行。

你好,克里斯蒂安,不,我不想更改数据。如果数据无效,用户会收到一个错误,以更正数据源中无效的数据。你好,Marko,Cristian的解决方案可以根据您的要求正常工作。不知道你在说什么“我不想更改数据”。你能详细解释一下吗?我有另一个可能的答案,在这之前我已经删除了。我想最好是删除它,而不是把它留在那里。@Cristian,这正是我想要的。对不起,我的英语很糟糕,我是德国人:)更改数据意味着不编辑数据。非常感谢。让我试着更好地理解,您希望筛选具有50个或更长字符的字符串,并提醒用户使用更长的字符串,但仍然使用有效字符串创建XML文件?或者仅当存在有效字符串时才创建XML?