Operator CALL OTHER PROJECT umożliwia wywołanie innego projektu GRAVITY
w ramach bieżącego projektu oraz wprowadzenie na magistralę danych strumienia danych będącego wynikiem przetwarzania wskazanego projektu.
Operator CALL OTHER PROJECT jest bliźniaczym operatorem do operatora INPUT OTHER PROJECT i cała jego konfiguracja oraz funkcjonalność są zbliżone.
Główna różnica polega na wywołaniu wskazanego projektu tyle razy ile jest rekordów na magistrali wejściowej oraz możliwości użycia jako parametrów wywołania bitów magistrali wejściowej.
Należy pamiętać, że cała magistrala wyjściowa operatora zostanie zmieniona na magistralę wyjściową operatora wskazanego w wywoływanym procesie (pole Output).
Ilość rekordów na magistrali wyjściowej będzie sumą wszystkich zwróconych rekordów
z wywołań wskazanego projektu dla każdego rekordu magistrali wejściowej.
Jeśli projekt podrzędny z jakiegoś powodu zakończył się operatorem STOP PROCESS, a nie operatorem wskazanym w polu Output, projekt główny będzie kontynuowany, a rezultat wywołania projektu podrzędnego będzie przekazywany
na magistralę tylko w następujących przypadkach:
- pole Transaction mode operatora wywołującego ma wartość Use separate transaction oraz pole Action na operatorze STOP PROCESS (w projekcie wywoływanym) ma ustawioną wartość Stop processing with success and commit lub Stop processing with error and rollback.
- pole Transaction mode operatora wywołującego ma wartość Use transaction from main project oraz pole Action na operatorze STOP PROCESS (w projekcie wywoływanym) ma ustawioną wartość Stop processing with success and commit.
- w pozostałych przypadkach projekt wywołujący zostanie przerwany i zostanie zwrócony rezultat wykonania zgodny z polem Action operatora STOP PROCESS.