세션 변수는 전체 로그온 세션에 글로벌인 후크 변수입니다. 이는 모든 유형의 후크에서 세션 변수를 설정할 수 있으며, 모든 유형의 후크에서 나중에 다시 이를 읽을 수 있음을 의미합니다. 값은 전체 세션에 지속됩니다.
IBM® Rational® ClearQuest®는 정보 저장을 위해 세션 전체 변수 사용을 지원합니다. 세션 전체 변수를 작성한 후에는 Session 오브젝트에 대한 액세스 권한을 가진 함수나 서브루틴(후크 포함)을 사용하여 현재 Session 오브젝트를 통해 변수에 액세스할 수 있습니다. 현재 세션이 종료되면 해당 Session 오브젝트와 연관된 모든 변수가 삭제됩니다. 사용자가 로그아웃하거나 Session 오브젝트에 대한 최종 참조가 더 이상 존재하지 않으면 세션이 종료됩니다.
다음을 수행하십시오.
다음 예제는 새 변수를 작성하고 값을 리턴하는 방법을 표시합니다. 이 예제에서는 "Hello"라는 변수를 작성하고 여기에 "Hello World" 값을 지정합니다.
# You can use $session instead of defining
# $curSession = $entity->GetSession();
$myValue = "Hello World";
# Create and set the value of the "Hello" variable
$session->SetNameValue("Hello", $myValue);
# Get the current value
$newValue = $session->GetNameValue("Hello");
# Optional
$session->OutputDebugString($newValue);
Dim myValue
curSession = GetSession()
myValue = "Hello World"
' Create and set the value of the "Hello" variable
curSession.NameValue "Hello", myValue
' Get the current value
Dim newValue
newValue = curSession.NameValue("Hello")
VBScript의 다음 예제를 고려하십시오. 필드 유효성 검증 후크에서 현재 조치 이름을 찾으려는 경우, GetActionName 메소드를 사용하거나 세션 변수를 사용할 수 있습니다.
모든 조치 초기화 후크에서 현재 조치는 actionname 매개변수로 전달됩니다. 다음 코드를 사용하여 ActionName이라는 세션 변수를 actionname의 값으로 설정할 수 있습니다.
set session = GetSession
session.NameValue "ActionName", actionname
그런 다음, 다음을 사용하여 필드 유효성 검증 후크에서 ActionName 세션 변수의 현재 값을 actionname에서 검색할 수 있습니다.
set session = GetSession
actionname = session.NameValue("ActionName")
' ...
VBScript를 사용하면 세션 변수에 오브젝트를 저장할 수도 있습니다. set을 사용하여 오브젝트를 저장함에 유의하십시오. 예를 들어, 다음과 같습니다.
set sessionObj.NameValue "Obj", object
또는
set sessionObj.NameValue "CalendarHandle", param.ObjectItem
위 예제에서 param은 레코드 스크립트 후크에 대한 매개변수이고 오브젝트 핸들을 포함합니다. 자세한 정보는 NameValue, HasValue, ObjectItem 및 레코드 스크립트 이해를 참조하십시오.