GetFieldChoiceList

설명

지정된 필드에 허용되는 값 목록을 리턴합니다.

관리자는 제공된 필드에 사용할 수 있는 값이 선택사항 목록의 컨텐츠로 제한되는지 여부를 지정합니다. 제한사항이 있을 경우, 선택사항 목록에 있지 않은 값을 지정하면 유효성 검증 오류가 발생합니다. 제한사항이 없으면 선택사항 목록에 없는 값을 지정해도 됩니다. (지정하는 값은 유효성을 검증해야 합니다.)

이 메소드에서 빈 Variant 값이 리턴된다고 해서 모든 값이 허용됨을 의미하지는 않습니다. 단지 관리자가 필드에 허용되는 값에 대해 아무런 힌트도 제공하지 않았음을 의미합니다.

관리자가 후크를 사용하여 선택사항 목록의 값을 판별하도록 선택했다면, IBM® Rational® ClearQuest®는 이미 후크를 실행하여 HookChoices 오브젝트에 있는 결과 값을 캐시했을 것입니다(Visual Basic에만 해당). 해당 오브젝트를 사용하여 값을 검색할 수 있습니다.

필드에 대한 선택사항 세트를 생성하는 선택사항 목록 후크가 있는 경우, 후크 프로시저로 전달되는 콜렉션을 채워 해당 결과를 리턴해야 합니다.

GetFieldNames 메소드를 사용하여 field_name 매개변수에 대한 올바른 이름 목록을 확보할 수 있습니다.

참고: 외부 Visual Basic 프로그램에서 이 메소드를 호출할 경우, 엔티티가 편집 가능하지 않으면 이 메소드에서 예외가 발생합니다.

구문

VBScript

entity.GetFieldChoiceList field_name 

Perl

$entity->GetFieldChoiceList(field_name); 
ID
설명
entity
사용자 데이터 레코드를 나타내는 Entity 오브젝트. 후크 내에서 구문에 이 부분을 생략할 경우, Entity 오브젝트가 현재 데이터 레코드에 해당한다고 가정합니다(VBScript에만 해당).
field_name
엔티티의 올바른 필드 이름을 식별하는 문자열.
Return value
Visual Basic의 경우, 배열을 포함하는 Variant 값이 리턴됩니다. 각 배열 요소에는 지정된 필드에 대해 승인 가능한 값이 포함되어 있습니다. 필드에 선택사항 목록이 제공되지 않을 경우, 리턴되는 Variant 값은 비어 있습니다.

Perl의 경우 문자열 배열에 대한 참조가 리턴됩니다.

예제

VBScript

fieldValue = GetFieldValue("field1").GetValue 

' Check to see if the field's current value is in the choice list
fieldChoiceList = GetFieldChoiceList("field1") 
For Each fieldChoice in fieldChoiceList
   If fieldValue = fieldChoice Then
      ' This is a valid choice 
   End If 
Next

Perl

# If the field must have a value from a closed choice list, assign

# the first value in the list to the field by default. 



$choicetype = $entity->GetFieldChoiceType("field1");

if ($choicetype eq $CQPerlExt::CQ_CLOSED_CHOICE)

 {

 # Set the field to the first item in the choice list. 

 $fieldchoicelist = $entity->GetFieldChoiceList("field1");

 $entity->SetFieldValue("field1",@$fieldchoicelist[0]);

 } 
#Example 2: 
sub Dyn_choice_get_values 

{

   my $session;

   my $fieldchoicelist;   

   $session=$entity->GetSession();
   $fieldchoicelist = $entity->GetFieldChoiceList("Dyn_List_Example");

   $session->OutputDebugString(" CHOICELIST @$fieldchoicelist \n");

   return 0;

} 

피드백