Zwracanie listy odsyłaczy do informacji uzupełniających

Listę wszystkich odsyłaczy odwołań do bieżącej aplikacji procesu lub biblioteki narzędziowej dostępnych na serwerze można uzyskać, uruchamiając metodę tw.system.model.processApp.getLinks() .

Ta metoda tw.system.model.processApp.getLinks() umożliwia zwracanie odsyłaczy odwołań w bibliotekach narzędziowych, do których odwołuje się aplikacja procesu, a wyniki mogą być filtrowane. Właściwość odsyłacza tw.system.model.processApp.getLinks() zwraca tylko odsyłacze referencyjne dla bieżącej aplikacji procesu (nie jej elementów potomnych), a wyniki nie są filtrowane.

Metoda tw.system.model.processApp.getLinks() zwraca tablicę TWLink i przyjmuje dwa parametry:
includeReferencedToolkits
Jest to flaga boolowska, która wskazuje, czy odsyłacze powinny być gromadzone rekurencyjnie dla wszystkich elementów bibliotek zawartych w aplikacji procesu i zależnych bibliotekach narzędziowych.
linkFilter
Jest to funkcja JavaScript, która pobiera parametr TWLink jako parametr i zwraca wartość boolowską wskazującą, czy odsyłacz powinien zostać wykluczony z wyniku.

Sygnaturą funkcji argumentu linkFilter jest boolean linkFilterFunction(TWLink twlink), a funkcja filtru jest wywoływana dla każdego wyniku odsyłacza referencyjnego. Funkcja filtrowania zwraca true, jeśli wartość TWLink w pytaniu została odfiltrowana (wykluczona) lub false, jeśli nie jest filtrowana.

Nazwy i adresy URL odsyłaczy można zebrać, wykonując żądanie zmiany assetType dla aplikacji procesu i jej elementów potomnych, a następnie można przypisać je do zmiennych lokalnych w procesie.

W tym przykładzie założono, że zostały zdefiniowane następujące dwie zmienne prywatne: requestLinksName typu String List i requestLinksURL typu String List. Upewnij się, że dla obu opcji wybrano opcję Has Default. Zmienna requestLinksName jest tablicą, która zawiera nazwy wszystkich odsyłaczy, a zmienna requestLinksURL jest tablicą, która zawiera adresy URL wszystkich łączy uzyskanych przez getLinks(), które nie zostały odfiltrowane przez funkcję linkFilter.

Poniższy przykład jest konkretnym przykładem sposobu zawężania listy zwracanych odsyłaczy do tych, których typem zasobu jest żądanie zmiany dla tej aplikacji procesu (i projektów potomnych). Jednak można użyć getLinks() do zwracania wszystkich odsyłaczy do odwołań.

var linkFilter = function (twlink) {
	if (twlink != null && TWLink.AssetTypes.CHANGE_REQUEST == twlink.assetTypeNamespace){
		return false;
	}else{
		return true;
	}
} 
var requestLinks = tw.system.model.processApp.getLinks(true, linkFilter);
if(requestLinks != null){
    for(var i=0; i<requestLinks.length; i++){
        tw.local.requestLinksName[i] = requestLinks[i].name;
        tw.local.requestLinksURL[i] = requestLinks[i].url;
    }
} 
Uwaga: Jeśli wywołanie jest wykonywane z kontekstu innej aplikacji procesu, można uzyskać tylko odsyłacze do aplikacji procesu. Przefiltrowana lista nie będzie zawierała żadnych elementów potomnych.