sqljob,在失败的步骤上,重试上一步,但不是无限期地

时间:2018-10-29 00:34:19

标签: powershell sql-job

我有一个包含一系列步骤的sqljob。

第一步是从另一台服务器获取文件:

powershell -command "Invoke-WebRequest https://someserver.dom/fetch.php -OutFile c:/tmp/data.xml

下一步尝试加载此xml文件。

如果失败,可以将sqljob设置为重试几次。但是,如果xml加载失败,则我不想重试此步骤来加载文件。我想尝试再次传输。

但是,如果我只是执行“失败,请转到上一步”,则我可以进入无限循环,如果出现“上游”错误,则对回送重试没有限制。

是否可以“自然”重试几次,然后使工作失败?

当传输失败时,生成的文件仅几行;如果文件太小,powershell会返回错误吗?或者,如果文件不包含特定的行(例如结尾的XML“”),那么“传输文件步骤”是否可以重试?

当前我刚刚复制了该步骤,因此它是

  • 传输文件
  • 加载xml。如果确定,请转到“处理数据”,否则下一步
  • 再次传输文件
  • 再次加载xml。如果确定,请转到“处理数据”,否则下一步
  • 再次传输文件
  • 再次加载XML。如果可以,请转到“过程数据”,否则将以错误
  • 终止
  • 过程数据”

但这不是很好:-)

0 个答案:

没有答案