현재 조치 지속 기간 중에 필드의 동작을 설정합니다.
필드 동작을 필수, 선택적 또는 읽기 전용으로 설정하려면 이 메소드를 사용하십시오. 조치를 확약한 후 필드의 동작을 읽기 전용으로 되돌립니다. 외부 스크립트에서 이 메소드를 호출하려면 ClearQuest® 관리자 권한이 있어야 합니다. 그리고 Entity 오브젝트가 편집 가능한 경우에만 이 메소드를 호출할 수 있습니다. 기존의 Entity 오브젝트를 편집 가능하게 만들려면 Session 오브젝트의 EditEntity 메소드를 호출하십시오.
Record_script_alias가 실제 엔티티 조치가 아니기 때문에 Record_script_alias 조치에서 사용될 때 이 함수의 동작은 정의되어 있지 않습니다.
기본 IBM® Rational® ClearCase® 및 IBM Rational ClearQuest를 통합할 경우, Rational ClearQuest 레코드에 값이 지정되지 않은 필수 필드가 포함되어 있으면 Rational ClearQuest 레코드를 Rational ClearCase 체크인과 연관시킬 수 없습니다. 이 조치를 수행하는 사용자는 예외 오류를 수신합니다. 사용자는 먼저 Rational ClearQuest 레코드의 필수 필드에 값을 입력해야 합니다. 또는 SetFieldRequirednessForCurrentAction 메소드를 사용하여 필드 필수 조건을 변경함으로써 수정 조치에서 실행할 후크를 제공하도록 스키마를 변경할 수 있습니다.
VBScript
entity.SetFieldRequirednessForCurrentAction field_name, newValue
Perl
$entity->SetFieldRequirednessForCurrentAction(field_name, newValue);
VBScript
' Change all mandatory fields to optional
' Retrieve the collection of fields
fieldNameList = GetFieldNames
For Each fieldName in fieldNameList
' Find out if the selected field is mandatory
fieldReq = GetFieldRequiredness(fieldName)
if fieldReq = AD_MANDATORY
' Since it is, make it optional
Then SetFieldRequirednessForCurrentAction fieldName, AD_OPTIONAL
End If
Next
Perl
# Change all MANDATORY fields to OPTIONAL
# Retrieve the collection of fields
$fieldnamelist = $entity->GetFieldNames();
foreach $fieldname (@$fieldnamelist){
# Find out if the selected field is mandatory
$fieldreq = $entity->GetFieldRequiredness($fieldname);
if ($fieldreq eq $CQPerlExt::CQ_MANDATORY)
{
# Since it is, make it optional
$entity->SetFieldRequirednessForCurrentAction($fieldname, $CQPerlExt::CQ_OPTIONAL);
}
}