작업 항목 필드에 규칙 적용

필드의 데이터 형식에 따라 해당 필드에 입력할 수 있는 데이터에 대한 여러 가지 제한을 설정할 수 있습니다. 선택 목록(드롭다운 메뉴)의 값을 지정하거나, 기본값을 설정하거나, 항목을 지우거나, 변경을 제한할 수 있습니다. 조건부 규칙을 사용하면 서로 다른 필드 값 간의 종속성에 따라 필드에 규칙을 적용할 수 있습니다. 또한 필드를 수정할 수 있는 사람을 제한하거나, 그룹에 적용되도록 규칙의 범위를 지정할 수 있습니다.

이러한 규칙 요소는 모두 WIT(작업 항목 형식) 정의의 FIELD 정의 내에서 정의할 수 있으며, 몇 가지 시스템 필드에 대한 제한 사항이 적용됩니다. 또한 HELPTEXT를 제외하고, 이러한 규칙을 워크플로 전환 중에 적용하거나 FIELD(전역 워크플로) 요소 내의 자식 요소로 적용하도록 지정할 수 있습니다.

작업 항목 추적 XML 요소 필드 규칙

이 항목에 설명된 제약 조건 내에서 규칙 조합을 필드에 정의할 수 있습니다.

도움말 텍스트: 필드에 대한 작업 항목 폼에 나타날 도구 설명 텍스트를 지정합니다.

선택 목록: 허용된 값, 제안된 값, 허용되지 않는 값의 드롭다운 메뉴나 선택 목록을 지정합니다.

값 할당 규칙: 런타임 동작 및 제약 조건을 정의합니다.

  • 지우기, 기본값 설정, 값 복사, 값을 강제로 패턴과 일치

  • 필수, 읽기 전용 및 필드에 할당된 값 제한

  • 작업 항목을 만들거나 수정할 수 있는 사람 제한

조건부 규칙: 규칙 집합이 부모 필드에 적용되는 경우를 지정합니다.

사용자 역할을 기반으로 조건 설정: 작업 항목을 만들거나 수정하는 사람에 따라 규칙을 적용합니다.

토큰을 사용하여 그룹 지정: 올바른 토큰을 사용하여 그룹의 도메인이나 범위를 지정합니다.

시스템 필드에 적용할 수 있는 규칙은 무엇입니까?

사람 이름 필드에 대한 유효성 검사 오류를 방지하려면 어떻게 해야 합니까?

다중 선택 선택 목록을 정의하는 방법이 있습니까?

필드 규칙은 어디에서 적용해야 합니까?

규칙을 어떻게 평가합니까? 어떤 순서가 적용됩니까?

폼의 키 입력은 규칙 평가에 어떤 영향을 미칩니까?

상태 및 이유 필드를 수정하려면 어떻게 해야 합니까?

하나의 필드에 다른 두 필드의 합계 값을 유지하려면 어떻게 해야 합니까?

전역 워크플로를 사용하여 필드 규칙을 정의하는 경우는 언제입니까?

필드 규칙은 작업 항목 추적을 사용자 지정해야 하는 하나의 구성 요소입니다. 자세한 내용은 팀 프로세스를 지원하도록 작업 추적 개체 사용자 지정을 참조하세요.

필드를 수정하거나 필드 규칙을 WIT 정의 파일에 추가하는 방법에 대한 자세한 내용은 작업 항목 필드 정의를 참조하세요.

도움말 텍스트

사용자가 작업 항목 폼에 표시된 필드를 가리키면 나타나는 도움말 텍스트 또는 도구 설명 텍스트를 사용자 지정할 수 있습니다. 여러 WIT 및 여러 팀 프로젝트에 표시되는 동일한 필드에 대한 도움말 텍스트를 사용자 지정 및 지역화할 수 있습니다. 도움말 텍스트는 유니코드 문자 255자로 제한됩니다.

다음 예제에서는 사용자 지정 Business Justification 필드에 할당된 도움말 텍스트를 보여 줍니다.

<FIELD name=”Business Justification” refname="Fabrikam.BusinessJustification" type="String">
<HELPTEXT>Only required when you set the Urgencyfield to Need Immediately. </HELPTEXT>
</FIELD>

255자 제한을 초과하는 사용자 지침을 제공하려면 작업 항목 폼에서 도움말 텍스트, 하이퍼링크 또는 웹 콘텐츠 제공을 참조하세요.

참고

HELPTEXT가 있으면 저장된 데이터의 크기가 증가하고 확장성이 영향을 받을 수 있습니다.따라서 단일 TFS 인스턴스 내에서 수백 개의 팀 프로젝트를 지원하려면 HELPTEXT 규칙을 신중하게 사용해야 합니다.

선택 목록 규칙

선택 목록 규칙은 사용자가 문자열 필드에 대해 선택할 수 있는 값 또는 선택할 수 없는 값을 정의합니다. 선택 목록에 정의된 값은 작업 항목 폼과 쿼리 편집기에 표시됩니다. 목록을 조합할 수 있으며, 목록을 확장하거나 축소할 수 있습니다. 또한 fornot 특성을 사용하면 작업 항목을 수정하는 사람에 따라 이러한 규칙을 적용하거나 무시할 수 있습니다.

규칙

용도

ALLOWEDVALUES

지정된 값에 따라 사용자가 선택할 수 있는 값을 제한합니다.

ALLOWEXISTINGVALUE

해당 값이 선택 목록에 더 이상 없는 경우에도 필드에서 기존 값을 유지하도록 허용합니다. 선택 목록의 필드 값을 변경하거나 선택 목록에 사람 이름이 포함된 경우 이 규칙을 포함하는 것이 좋습니다.

GLOBALLIST

팀 프로젝트 또는 프로젝트 컬렉션에 대해 유지 관리되는 값을 포함하는 전역 목록의 이름을 지정합니다.

PROHIBITEDVALUES

지정된 값이 할당되는 것을 방지합니다. 필드에 금지된 값이 포함된 경우 작업 항목을 저장할 수 없습니다.

SUGGESTEDVALUES

사용자가 선택할 수 있지만 선택하는 것으로 제한되지 않은 값 목록을 정의합니다. 사용자가 목록에 없는 값을 지정할 수 있습니다.

선택 목록 사용에 대한 예는 선택 목록 정의를 참조하세요.

값 할당 규칙

값 할당 규칙은 기본값 지정, 필드 지우기, 필드 정의 요구 등의 런타임 동작 및 제약 조건을 정의합니다. fornot 특성을 사용하면 작업 항목을 수정하는 사람에 따라 이러한 규칙을 적용하거나 무시할 수 있습니다.

지우기, 기본값 설정, 값 복사, 값을 강제로 패턴과 일치

이러한 규칙은 기본값 설정, 필드 간에 값 복사 또는 지정된 패턴과 일치하도록 필드 값 적용을 지원합니다.

규칙

용도

COPY

사용자가 작업 항목을 만들거나 수정할 때 지정된 값을 필드에 복사합니다.

DEFAULT

사용자가 작업 항목을 만들거나 수정할 때 비어 있는 필드의 값을 지정합니다. 필드에 이미 값이 있는 경우 DEFAULT 규칙은 무시됩니다.

EMPTY

값이 포함된 필드를 지운 다음 사용자가 작업 항목을 저장할 때 해당 필드를 읽기 전용으로 설정합니다. EMPTYREADONLY와 함께 사용해서는 안 됩니다.

EMPTY는 주로 상태를 전환하는 동안 항목이 전환되는 상태에 적용되는 필드를 지우는 데 사용됩니다.

MATCH

문자열 필드의 항목을 지정된 문자 또는 숫자 패턴과 강제로 일치시킵니다.

SERVERDEFAULT

사용자가 작업 항목을 저장할 때 현재 사용자 이름 또는 서버 클록 값을 필드에 복사합니다. 이러한 필드는 일반적으로 폼에 읽기 전용으로 표시됩니다.

구문 구조 및 예제는 기본값 정의 또는 필드에 값 복사을 참조하세요.

필수, 읽기 전용 및 필드에 할당된 값 제한

이러한 규칙은 필드 값 지정 또는 변경에 대한 제한 사항을 지정합니다.

규칙

용도

CANNOTLOSEVALUE

값이 지정된 후 사용자가 값 필드를 지우지 못하도록 합니다.

FROZEN

값이 포함된 후 사용자가 필드의 값을 변경하지 못하도록 합니다. 사용자가 해당 필드의 값이 있는 작업 항목을 저장하는 즉시 해당 값은 더 이상 수정할 수 없게 됩니다.

NOTSAMEAS

다른 필드에 할당된 것과 동일한 값이 필드에 할당되지 못하도록 합니다.

READONLY

필드를 수정할 수 없도록 합니다. 특정 조건에서는 이 규칙을 적용할 수도 있습니다. 예를 들어 작업 항목이 닫힌 후에 필드를 읽기 전용으로 만들어서 데이터를 보고용으로 보존할 수 있습니다.

EMPTY도 필드를 읽기 전용으로 설정하므로 READONLYEMPTY 요소와 함께 사용하지 마세요. 이러한 요소를 함께 사용하면 결과가 일치하지 않게 됩니다.

또한 Control 요소 ReadOnly 특성을 사용하여 작업 항목에서 필드가 읽기 전용으로 나타나도록 할 수 있습니다. 이 필드는 다른 클라이언트에 의해 작성될 수 있지만, 작업 항목 폼을 통해 작성될 수는 없습니다.

REQUIRED

사용자에게 필드 값을 지정하도록 요구합니다. 사용자는 모든 필수 필드에 값을 할당할 때까지 작업 항목을 저장할 수 없습니다.

구문 구조는 모든 FIELD XML 요소 참조를 참조하세요.

작업 항목을 만들거나 수정할 수 있는 사람 제한

사람 이름 필드에 VALIDUSER 요소를 적용하여 작업 항목을 만들거나 수정할 수 있는 사람을 제어할 수 있습니다. 이 요소를 지정할 때 필드 값으로 할당할 수 있는 사용자 또는 사용자 그룹을 지정합니다. 이 요소를 설정하여 지정한 그룹의 직접 또는 간접 멤버인 사람만 필드에 지정할 수 있도록 하는 선택적 group 특성을 지원할 수 있습니다. 기본적으로 Team Foundation Valid Users 그룹의 멤버는 모두 필드에 지정할 수 있습니다.

VALIDUSER 요소는 문자열 필드 형식에만 유효합니다. 각각 for 또는 not 특성에 대한 사용자 또는 그룹을 지정하여 작업 항목을 수정하는 사용자에게 규칙이 적용되는 것을 허용하거나 제한할 수 있습니다.

<VALIDUSER group="groupName" for="userName" not="userName" />

VALIDUSER 규칙은 사람 이름 필드를 참조할 때만 사용할 수 있습니다. 다음 시스템 필드는 사람 이름 필드의 예입니다.

  • 활성화한 사람(System.ActivatedBy)

  • 담당자(System.AssignedTo)

  • 승인한 사람(System.AuthorizedAs)

  • 변경한 사람(System.ChangedBy)

  • 닫은 사람(System.ClosedBy)

  • 만든 사람(System.CreatedBy)

시스템 필드 외에 사용자 지정 문자열 필드를 만들어 사람 이름 필드로 사용할 수 있습니다. 또한 사용자 지정 사람 이름 필드를 Active Directory와 동기화할 수 있습니다(syncnamechanges="true" 지정).

작업 항목 필드는 여러 도메인의 사용자 ID 간에 구분되지 않습니다. 따라서 "Fabrikam\ctsoapo"와 "Contoso\ctsoapo"는 VALIDUSER 규칙을 사용하는 필드에 입력된 경우 동일한 사용자로 처리됩니다.

조건부 규칙

조건부 규칙을 사용하면 규칙 집합이 부모 필드에 적용되는 경우를 지정할 수 있습니다. 다른 필드에 지정된 값이 할당되었는지 여부 또는 다른 필드가 변경되었는지 여부에 따라 조건을 설정할 수 있습니다. 선택 목록 및 값 할당 규칙을 조건부 규칙 요소 내에 포함할 수 있습니다.

규칙

용도

WHEN

다른 필드에 지정된 값이 할당된 경우 부모 필드에 적용할 규칙을 지정합니다.

WHENNOT

다른 필드에 지정된 값이 할당되지 않은 경우 부모 필드에 적용할 규칙을 지정합니다.

WHENCHANGED

지정된 필드의 값이 변경된 경우 부모 필드에 적용할 규칙을 지정합니다.

WHENNOTCHANGED

지정된 필드의 값이 변경되지 않은 경우 부모 필드에 적용할 규칙을 지정합니다.

하나의 필드에 여러 조건부 규칙을 지정할 수 있습니다. 그러나 하나의 조건부 규칙을 여러 필드에 지정할 수 없으며, 단일 필드에만 지정할 수 있습니다. 조건부 규칙은 중첩할 수 없습니다. 구문 구조 및 예제는 조건부 기준 값 및 규칙 할당을 참조하세요.

작업 항목을 만들거나 수정하는 사람에 따라 규칙 적용 또는 무시

for 또는 not 특성을 사용하여 선택 목록 또는 값 할당 규칙을 사용자 그룹에 적용하거나 적용하지 않도록 설정할 수 있습니다. 규칙의 범위를 하나의 그룹으로 지정합니다. 규칙의 범위를 여러 그룹으로 지정하려면 사용할 그룹 집합을 포함하는 부모 TFS 그룹을 만들어야 합니다.

  • 필드를 지정된 그룹에만 필수 필드로 설정:

    for를 사용하여 그룹에 규칙을 적용합니다. 다음 예제에서는 Junior Analysts 그룹의 모든 사용자가 Second Approver 필드를 완료해야 합니다.

    <FIELD name="Second Approver">
    <REQUIRED for="Example1\Junior Analysts"/>
    </FIELD>
    
  • 필드 수정을 사용자 그룹으로 제한:

    not을 사용하여 규칙에서 그룹을 제외합니다. 다음 예제에서는 Triage Committee 그룹의 사용자를 제외하고 모든 사용자에 대해 Triage Description 필드를 읽기 전용으로 정의합니다.

    <FIELD name="Triage Description">
    <READONLY not="[Project]\Triage Committee" />
    </FIELD>
    
  • 특정 필드를 일부 사용자에게는 필수 필드로 설정하고 다른 사용자에게는 필수 필드로 설정하지 않음:

    fornot을 함께 사용하여 일부 사용자에게는 규칙을 적용하고 다른 사용자에게는 규칙을 적용하지 않도록 동시에 설정합니다. 다음 예제에서는 Severity를 Project Members 그룹의 사용자에게는 필수 필드로 정의하고, Project Admins 그룹의 사용자에게는 필수 필드로 정의하지 않습니다.

    <FIELD name="Severity">
    <REQUIRED for="[Project]\Project Members" not="[Global]\Project Admins"/>
    </FIELD>
    

    Deny가 Allow보다 우선하므로 사용자가 두 그룹 모두에 속한 경우 "not" 문이 적용되면 해당 필드가 필수 필드로 설정되지 않습니다.

토큰을 사용하여 그룹 참조

규칙을 하나의 그룹으로 제한할 경우 해당 그룹의 도메인 또는 범위를 지정해야 합니다. 일부 값에는 토큰을 사용할 수 있습니다.

사람 이름 필드에는 사용자를 참조하는 값과 그룹을 참조하는 값을 모두 사용할 수 있습니다. 필드 특성 for 및 not이 그룹에 적용됩니다. 이러한 항목의 값을 지정할 때 다음 토큰을 사용할 수 있습니다.

  • 팀 프로젝트로 범위 지정 - [Project]:

    [Project] 토큰은 팀 프로젝트에 대해 정의된 그룹을 지정하는 데 사용됩니다. 팀, 기본 제공 TFS 그룹(예: [Project]\Contributors 그룹), 프로젝트 수준에서 만든 사용자 지정 TFS 그룹 또는 TFS 그룹에 추가한 Windows 그룹이 여기에 해당될 수 있습니다. 예를 들면 다음과 같습니다.

    • 팀: [Project]\Fabrikam Team

      팀을 만들면 해당 팀에 할당된 멤버를 포함하는 TFS 그룹이 만들어집니다.

    • 팀 프로젝트 그룹: [Project]\Contributors

    • 팀 프로젝트에 추가된 Windows 그룹: [Project]\ Triage Committee

    팁: TWA(Team Web Access) 관리 컨텍스트에서 보안 페이지를 열어 유효한 그룹 목록을 볼 수 있습니다.

  • 프로젝트 컬렉션으로 범위 지정 - [CollectionName]:

    [CollectionName]을 사용하여 컬렉션 범위의 TFS 그룹(예: Project Collection Administrators 그룹 또는 컬렉션에 추가한 Windows 그룹)을 참조할 수 있습니다. 예를 들면 다음과 같습니다.

    <FIELD name="Title">
    <READONLY for="[DefaultCollection]\Project Collection Valid Users"/>
    </FIELD>
    
  • 서버 인스턴스로 범위 지정 - [GLOBAL]:

    [GLOBAL] 토큰을 사용하여 서버 범위의 TFS 그룹(예: 기본 제공 그룹 또는 서버 수준의 그룹에 추가한 Windows 그룹)을 참조할 수 있습니다. 예를 들면 다음과 같습니다.

    <FIELD name="Title">
    <READONLY for="[Global]\Team Foundation Valid Users"/>
    </FIELD>
    
  • 도메인 정규화 계정 또는 그룹 지정:

    도메인 정규화 계정 이름(다음 예 참조)을 사용하여 도메인 사용자 또는 그룹을 참조할 수 있습니다. 일부 규칙은 그룹만 지원하며, 도메인 사용자 참조를 지원하지 않습니다.

    <LISTITEM value="FABRIKAM\Christie Church’s Direct Reports"/>
    

모든 사용자 및 그룹은 이러한 토큰 중 하나로 정규화되어야 합니다. 예를 들어 다음 XML은 지정된 그룹을 유효한 토큰으로 정규화하지 않으므로 유효하지 않습니다.

<FIELD name="Title">
<READONLY for="Dev Team"/>
</FIELD>

Q & A

Q: 시스템 필드에 적용할 수 있는 규칙은 무엇입니까?

A: 시스템 필드는 Sytem.Name 참조 이름(예: System.Title 및 System.State)을 가집니다. TFS에서는 다음과 같은 경우를 제외하고, 이러한 필드의 사용자 지정을 제한합니다.

  • HELPTEXT 규칙은 모든 필드에 할당할 수 있습니다.

  • READONLY 규칙은 상태 및 이유 필드에 할당할 수 있습니다.

  • 대부분의 규칙은 제목, 담당자, 설명 또는 변경한 사람 시스템 필드에 할당할 수 있습니다.

Q: 사람 이름 필드에 대한 유효성 검사 오류를 방지하려면 어떻게 해야 합니까?

A: 멤버가 팀을 떠나거나 더 이상 프로젝트 참가자로 등록되지 않은 경우에 발생할 수 있는 유효성 검사 오류를 방지하려면 담당자 필드에 대한 ALLOWEXISTINGVALUE 요소를 포함합니다.

<FIELD name="Assigned To" refname="System.AssignedTo" type="String" syncnamechanges="true" reportable="dimension">
   <HELPTEXT>The user who is working on this work item</HELPTEXT>
   <ALLOWEXISTINGVALUE />
   <VALIDUSER />
   <ALLOWEDVALUES expanditems="true" filteritems="excludegroups">
      <LISTITEM value="Active" />
      <LISTITEM value="[project]\Contributors" />
   </ALLOWEDVALUES>
   <DEFAULT from="field" field="System.CreatedBy" />
</FIELD>

Q: 다중 선택 선택 목록을 정의하는 방법이 있습니까?

A: 이 기능은 기본적으로 지원되지 않습니다. 그러나 TFS 작업 항목 추적을 위한 사용자 지정 컨트롤이라는 CodePlex 프로젝트에 제공된 소스 코드를 활용할 수 있습니다.

Q: 상태 및 이유 필드를 수정하려면 어떻게 해야 합니까?

A: 상태 및 이유 필드는 WIT 정의의 WORKFLOW 섹션 내에 정의됩니다. 대부분의 필드 규칙을 상태 변경, 이유 선택 또는 특정 전환 중 필드에 적용하도록 지정할 수 있습니다. 자세한 내용은 작업 항목 형식의 워크플로 변경을 참조하세요.

Q: 필드 규칙은 어디에서 적용해야 합니까?

A: 작업 항목의 전체 수명 동안 필드에 규칙을 적용하려면 FIELD 정의 내에서 규칙을 지정합니다. 예를 들어 새로운 버그 및 활성 버그에 필요한 필드는 해당 버그가 닫힐 때까지 필수 필드로 유지됩니다.

그렇지 않으면 상태 변경 중에만 평가되는 규칙을 지정합니다. 이러한 규칙은 STATE, REASON 또는 TRANSITION 요소 아래의 WORKFLOW 섹션 내에 정의됩니다. HELPTEXT를 제외한 모든 규칙을 FIELD(워크플로) 요소 내에 적용할 수 있습니다.

필드 규칙은 추가적으로 적용됩니다. 즉, 같은 필드에 4개의 규칙 집합을 지정하여 모두 작업 항목 규칙 엔진에서 평가되도록 할 수 있습니다.

  • 작업 항목 형식 관련 규칙은 해당 상태 모델 내 작업 항목의 위치에 상관없이 적용됩니다. 예를 들어 <REQUIRED /> 규칙은 다음 검사를 수행합니다.

    "MyField Value" != NULL

  • 상태 관련 규칙은 특정 상태에 있는 작업 항목 인스턴스로 범위가 지정됩니다. 상태 관련 규칙은 다음 조건에 해당하는 경우 적용됩니다.

    State field value == "MyState" && "MyField Value" != NULL

  • 특정 전환에 대해 지정하는 전환 관련 규칙은 특정 전환이 진행 중인 작업 항목으로 범위가 지정됩니다. 이러한 규칙은 다음 조건에 해당하는 경우 적용됩니다.

    State field value == "ToState"  &&

    "Previous State Before Edit/New" == "FromState"

    && "MyField Value" != NULL

  • 특정 이유에 대해 지정하는 이유 관련 규칙은 특정 전환에 대한 특정 이유로 범위가 지정됩니다. 이러한 규칙은 다음 조건에 해당되는 경우 처리됩니다.

    Reason field == "MyReason" &&

    State field value == "ToState"  &&

    "Previous State Before Edit/New" == "FromState" && "MyField Value" != NULL

다음 예제에서는 작업 항목이 활성 상태일 때 고객 심각도 필드의 수정을 제한합니다.

<STATE name="Active">
   <FIELDS>
      <FIELD refname="MyCorp.Severity" >
         <READONLY />
      </FIELD>
   </FIELDS>
</STATE>

Q: 규칙은 어떻게 평가됩니까?어떤 순서가 적용됩니까?

A: 규칙은 일반적으로 나열된 순서대로 처리됩니다. 그러나 WHEN*, DEFAULT 및 COPY 요소를 사용하는 경우 추가 동작이 적용될 수 있습니다.

하나의 필드에 여러 규칙을 적용할 때 규칙이 평가되는 방식에 대한 몇 가지 아이디어를 얻을 수 있습니다. 규칙이 평가되는 방식은 완전히 결정적인 것은 아닙니다. 이 섹션에서는 WHEN*, DEFAULTCOPY 규칙을 사용할 때 예상되는 동작 및 상호 작용을 설명합니다.

다음 단계에서는 TFS에서 수행하는 상호 작용과 작업 항목 폼 사용자의 상호 작용을 올바른 순서로 보여 줍니다. 1, 8 및 13단계만 사용자가 수행합니다.

  1. Team Foundation 클라이언트(예: Visual Studio, 팀 탐색기, Team Web Access 또는 Team Explorer Everywhere)에서 사용자가 새 작업 항목을 만들거나 기존 작업 항목을 편집합니다.

  2. 필드 기본값을 입력합니다. 모든 필드에 WHEN* 규칙 외부에 있는 DEFAULT 규칙을 사용합니다.

  3. 필드 값을 복사합니다. 모든 필드에 WHEN* 절 외부에 있는 COPY 규칙을 사용합니다.

  4. 일치하는 WHEN 규칙이 있는 모든 필드에 대해 먼저 DEFAULT를 적용한 다음 COPY를 수행하여 규칙을 내부에 복사합니다.

  5. 일치하는 WHENNOT 규칙이 있는 모든 필드에 대해 먼저 DEFAULT를 적용한 다음 COPY를 수행하여 규칙을 내부에 복사합니다.

    TFS에서는 항상 WHENNOT 규칙 전에 WHEN 규칙을 처리합니다.

  6. 1단계 이후에 값이 변경되고 WHENCHANGED 규칙이 포함된 모든 필드에 대해 먼저 DEFAULT를 적용한 다음 COPY를 수행하여 규칙을 내부에 복사합니다.

  7. 사용자가 편집을 시작하도록 허용합니다.

  8. 사용자가 필드 값을 변경한 다음 포커스를 필드에서 이동합니다.

  9. 해당 필드에 대해 새 값과 일치하는 WHEN 규칙을 발생시킵니다.

  10. 해당 필드에 대해 새 값과 일치하는 WHENNOT 규칙을 발생시킵니다.

  11. 해당 필드에 대해 새 값과 일치하는 WHENCHANGED 규칙을 발생시킵니다.

  12. 사용자에게 편집 기능을 반환합니다.

  13. 사용자가 변경 내용을 데이터베이스에 저장합니다.

  14. 모든 필드에 대해 WHEN 또는 WHENNOT 규칙에 따라 직접 또는 간접적으로 필드에 정의된 SERVERDEFAULT 작업을 수행합니다.

Q: 폼의 키 입력은 규칙 평가에 어떤 영향을 미칩니까?

A: 사용자가 UI 작업 항목 폼을 통해 필드 내에 키를 입력할 때마다 시스템에서 필드의 새 값을 설정합니다. 따라서 규칙의 필수 조건이 충족될 때마다 조건부 규칙이 예기치 않게 발생할 수 있습니다.

다음 XML 예제에서는 사용자가 Approved에 문자 "e"를 입력한 경우 의도한 최종 값이 "Approve"가 아닌 경우에도 WHEN* 규칙이 즉시 발생하므로 Status 필드에 "Approved Again"을 입력하면 SubStatus가 비어 있게 됩니다. 따라서 조건부 규칙을 사용할 때 신중해야 합니다.

<FIELD refname="MyCorp.SubStatus" />
<WHEN field="MyCorp.Status" value="Approve" >
<EMPTY />
</WHEN>
</FIELD>

Q: 하나의 필드에 다른 두 필드의 합계 값을 유지하려면 어떻게 해야 합니까?

A: 이 기능은 현재 기본적으로 지원되지 않습니다.

Q: 전역 워크플로를 사용하여 필드 규칙을 정의하는 경우는 언제입니까?

A: 전역 워크플로는 여러 팀 프로젝트 간에 정의 및 규칙이 동일한 많은 필드를 유지 관리하는 일을 맡은 경우에만 사용합니다. 전역 목록과 마찬가지로, 전역 워크플로를 사용하면 필드 정의를 업데이트해야 하는 경우에 필요한 작업을 최소화할 수 있습니다. 자세한 내용은 전역 워크플로 사용자 지정을 참조하십시오.

참고 항목

개념

모든 WITD XML 요소 참조

기타 리소스

작업 항목 필드 정의