종속자 선택사항 목록 작성

IBM Rational ClearQuest에서 한 필드(종속자 필드)의 값이 다른 필드(상위 필드)의 값에 의존하도록 지정할 수 있습니다. 이 기능은 상위 필드의 값에 따라 선택사항 목록이 설정되는 중속자 필드에 대해 Choice_List 후크를 정의하여 수행됩니다.

이 예제에는 PlatformVersion의 두 필드가 있습니다. Platform은 상위 필드이며 상수(열거) 선택사항 목록이 있습니다. VersionPlatform의 값에 따라 적절한 선택사항 목록을 계산하는 종속자 필드입니다.

Version의 선택사항 목록 후크는 Recalcuate Choice List 옵션이 설정되어 있기 때문에 Platform이 변경될 때마다 재계산됩니다.

어떤 필드가 변경되더라도 후크가 재실행되도록 트리거됩니다.

일반적으로 Recalculate Choice List는 Choice List Hook가 정의된 필드에만 설정해야 하며 그렇지 않은 필드에는 설정하지 않아야 합니다.

이 Choice List Hook 코드는 상위 필드인 Platform의 값에 따라 선택사항 목록의 열거된 내용을 결정합니다.

다음은 이 예제에 대한 설명입니다.

VBScript

' Add field choices for platforms
Dim platform

platform = GetFieldValue("platform").GetValue ()

select case platform

   case "Windows 2000"

      choices.AddItem ("Professional")

      choices.AddItem ("Professional SP1")

      choices.AddItem ("Server")

      choices.AddItem ("Server SP1")

   case "Windows NT Server"

      choices.AddItem ("4.0")

      choices.AddItem ("4.0 SP6A")

   case "Windows 98"

      choices.AddItem ("Win98")

end select 

Perl

my $platform;

$platform = ($entity->GetFieldValue("platform"))->GetValue();

if ($platform eq "Windows NT Workstation") {

   push(@choices, "3.51", "4.0", "4.0 SP2", "4.0 SP3");

} else {   

   if ($platform eq "Windows NT Server") {

               push(@choices, "4.0", "4.0 SP3");

   } else {   

        if ($platform eq "Windows 95") {

               push(@choices, "Win95");

        } else {   

               push(@choices, " ");

      }

 }

} 

피드백