MS CRM 2011의 사용자 정의 및 개발(12) - 양식 스크립트 확장 개발(4)

7045 단어 사용자 정의
이전 글에 소개된 Xrm을 제외하고는.Page.data.entity 대상 자체에 포함된 방법 외에 Xrm.Page.data.entity 대상은 현재 실체가 모든 속성을 기록하는 집합을 포함합니다. 이름은 Xrm입니다.Page.data.entity.attributes, 폼의 모든 필드에 대한 정보를 포함합니다.또한 각 필드에 대해 데이터 유형에 따라 Microsoft Dynamics CRM은 상응하는 방법으로 조종, 관리와 제어를 제공한다.
메서드
묘사
해당 필드 유형
addOnChange
매개변수를 메소드 포인터로 입력하고 필드 OnChange 이벤트 처리 함수 추가
소유하다
fireOnChange
해당 필드의 OnChange 이벤트를 트리거하여 해당 필드의 OnChange 이벤트 처리 함수를 수행합니다.
소유하다
getAttributeType
필드의 데이터 형식을 가져오고 반환 값은 문자열입니다. 필드의 데이터 형식에 따라 반환 값은'boolean','datetime','decimal','double','integer','lookup','memoney','optionset','string'일 수 있습니다.
소유하다
getFormat
필드의 포맷 옵션을 가져오고 문자열로 되돌려줍니다
소유하다
getInitialValue
폼을 열 때 bool 형식이나 OptionSet 형식 필드의 초기 값을 가져오고, 되돌아오는 값은 숫자입니다
bool、OptionSet
getIsDirty
특정한 필드가 이 폼이 열린 후에 변경되었는지 표시하기 위해 bool 값을 가져옵니다.
소유하다
getMax
특정 형식 필드 (money,decimal,integer,double) 의 최대 값을 가져오고, 되돌아오는 값은 숫자입니다.
money, decimal, integer, double
getMaxLength
string이나memo 필드의 최대 길이를 가져옵니다. 되돌아오는 값은 숫자입니다.
string、memo
getMin
특정 형식 필드 (money,decimal,integer,double) 의 최소 값을 가져오고, 되돌아오는 값은 숫자입니다.
money, decimal, integer, double
getName
필드의 논리 이름을 가져오고 문자열로 되돌려줍니다
소유하다
getOption
입력 매개 변수를 숫자나 문자열로 입력하고 입력 매개 변수에 대응하는option 대상을 되돌려줍니다
OptionSet
getOptions
OptionSet 필드의 모든 드롭다운 옵션을 반환합니다.
OptionSet
getParent
주어진 필드의 실체 기록 대상을 되돌려줍니다
소유하다
getPrecision
주어진 필드의 정밀도 값을 가져옵니다. 정밀도 값이란 소수점 오른쪽의 자릿수를 가리킨다
money, decimal, integer, double
getRequiredLevel
필드의 요구 단계를 가져옵니다. 되돌아오는 값은 다음과 같습니다: none: 필요 없음,required: 업무 필수;recommanded: 작성을 권장합니다
소유하다
getSelectedOption
OptionSet 필드에서 현재 선택한 옵션 가져오기
OptionSet
getSubmitMode
필드의 제출 모드를 가져옵니다. 즉, 폼이 저장될 때 특정한 필드의 제출 방식은 다음과 같습니다:always: 항상 제출되는never: 제출되지 않는dirty: 값이 변할 때만 제출합니다
소유하다
getText
현재 OptionSet 필드의 선택 항목에 대한 텍스트 정보를 나타내는 문자열을 반환합니다.
OptionSet
getUserPrivilege
현재 사용자가 이 기록에 대한 조작 권한을 확인하기 위해 대상을 되돌려줍니다. 이 대상의 속성은 다음과 같습니다: canRead: 읽기 권한 canUpdate: 업데이트 권한 canCreate: 창설 권한이 있는지 여부입니다.
소유하다
getValue
필드의 값을 가져옵니다. 필드의 유형은 다음과 같습니다.
필드 유형
필드 값 유형
bool
부울 부울
datetime
날짜Date
decimal
디지털 Number
double
디지털 Number
integer
디지털 Number
money
디지털 Number
lookup
배열 Array, 배열의 요소 유형은 객체 찾기 lookup object입니다.모든 검색 대상은 다음과 같은 속성을 포함합니다:entityType: 검색 대상이 대표하는 기록의 실체 논리 구조 이름 id: 검색 대상이 대표하는 기록의 키 값name: 검색 대상이 대표하는 기록의 주 속성의 값
memo
문자열 스트링
optionset
숫자 Number, 옵션의value 속성 값
string
문자열 스트링
소유하다
removeOnChange
addOnChange에 대응하여 해당 필드의 OnChange 이벤트 처리 함수 목록에서 처리 함수를 제거합니다.
소유하다
setRequiredLevel
필드의 수요 등급을 설정합니다. 받아들인 입력 매개 변수는 다음과 같습니다. none: 수요 등급이 없습니다.required: 업무 필수;recommanded: 작성을 권장합니다
소유하다
setSubmitMode
제출 모드를 설정합니다. 받아들인 입력 매개 변수는 다음과 같습니다:always: 항상 제출됩니다:dirty는 제출되지 않습니다: 값이 변할 때만 제출합니다
소유하다
setValue
필드의 값을 설정합니다. 서로 다른 유형의 필드가 수신하는 값의 유형도 다릅니다. 구체적인 것은 getValue 부분의 필드 형식과 필드 값 유형의 대비 설명을 참조할 수 있습니다.
소유하다
Xrm에서.Page.data.entity.attributes 컬렉션에서 속성을 가져오는 경로는 다음과 같습니다.
첫째, Xrm을 통과한다.Page.data.entity.attributes 대상의 get 방법으로 현재 폼의 모든 속성 집합을 가져옵니다. 예를 들어:
var attributeList = Xrm.Page.data.entity.attributes.get(); 

또한 방법 지침을 매개 변수로 get () 방법에 전달하여 조건에 따라 되돌아오는 속성을 선별할 수 있습니다. 예를 들어 다음 코드는 폼의 모든lookup 형식 속성을 가져오는 예시 코드입니다.
 
    var lookupAttrList = Xrm.Page.data.entity.attributes.get(isLookup);

function isLookup(attribute, index)

{

attribute.getAttributeType == “lookup”;

}

둘째, 통과는 Xrm이다.Page.data.entity.attributes.get () 방법은 매개 변수를 입력하고 매개 변수가 지정한 속성을 가져옵니다. 매개 변수는 특정한 속성의 논리적 이름입니다. 예를 들어:
    var firstNameAttr = Xrm.Page.data.entity.attributes.get(“firstname”);

바로 고객 폼에서 '이름' 이라는 속성을 얻는 것입니다.
셋째, 간략하게 쓰는 방식으로 어떤 속성을 얻는다. 즉, Xrm을 통해.Page.getattribute () 방법, 그리고 가져올 속성의 논리적 이름을 입력하고, 예를 들어 위의 두 번째 경로의 간략한 쓰기:
    var firstNameAttr = Xrm.Page.getAttribute(“firstName”);

 
속성을 조작하는 방법에 대해 몇 가지 주의가 필요합니다.
우선 Lookup 형식의 속성을 조작합니다. 이 필드의 값은 lookup 대상의 그룹이기 때문에 이 필드를 조작할 때 조심해야 합니다.다음은 lookup 유형 필드를 가져오는 방법입니다.
 1 var createdByAttr = Xrm.Page.getAttribute(“createdby”);
2 if (createdByAttr != null)
3 {
4 createdByAttr = createdByAttr.getValue();
5 if (createdByAttr != null)
6 {
7 createdByAttr = createdByAttr[0];
8 //lookup
9 var createdBy_entityType = createdByAttr.entityType;
10 // GUID , xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
11 var createdBy_id = createByAttr.id;
12 //lookup
13 var createdBy_name = createdByAttr.name;
14 }
15 }

lookup 필드에 값을 부여하는 것은 반대 방향의 작업이다. 하나의lookup 대상을 조합하여 수조의 첫 번째 요소로 하고 setValue() 방법을 통해 수조를lookup 필드에 값을 부여한다.
그 다음으로 Optionset 형식의 필드는 간단하게 HTML의 select 요소와 유사합니다.따라서 이 형식의 필드는 여러 개의 하단 옵션 옵션을 포함하고, 각각의 옵션에는 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트 텍스트value 값이 있습니다.
셋째,datetime 형식의 필드에 값을 부여할 때Date 형식의 대상을 사용해야 한다.
넷째, 폼에서 비활성화된 필드는 기본적으로 저장될 때 서버에 제출되지 않습니다. setSubmitMode() 방법을 사용하고 입력 파라미터를'dirty'로 설정하여 비활성화된 필드의 수정된 값을 서버에 제출할 수 있습니다.비활성화된 필드의 값을 수정하려면 setValue () 방법을 사용하십시오.

좋은 웹페이지 즐겨찾기