Командная задача после сеанса Informatica

Я пытаюсь заставить мой рабочий процесс Informatica завершить сеанс, если он выбрал 0 исходных записей. Я придумал следующий сценарий для запуска в качестве команды успеха после сеанса:

if [ $PM{Source Qualifier Name}@numAppliedRows == 0 ]
then
exit 2
else
exit 0
fi

где {Source Qualifier Name} — имя моего квалификатора источника. Когда я смотрю на журнал сеанса, он выглядит так, как я и ожидал, где $PM{Source Qualifier Name}@numAppliedRows заменяется количеством строк, выбранным моим квалификатором источника, но это по-прежнему вызывает сбой сеанса, даже если это число равно != 0. Журнал сеанса дает мне следующее сообщение об ошибке:

sh: 0403-057 Синтаксическая ошибка в строке 1: «если» не соответствует.

Любая помощь будет оценена по достоинству.


person Ben    schedule 27.07.2011    source источник


Ответы (1)


Если вы используете /bin/sh, вам нужно поставить точку с запятой (;) после квадратных скобок.

if [ $PM{Source Qualifier Name}@numAppliedRows == 0 ]; then
exit 2
else
exit 0
fi
person Datajam    schedule 05.08.2011