다음을 통해 공유


표 개체 및 메서드(클라이언트 쪽 참조)

 

게시 날짜: 2016년 11월

적용 대상: Dynamics CRM 2015

Microsoft Dynamics CRM Online 2015 업데이트 1를 사용하면 새 이벤트 및 개체를 사용하여 양식에서 하위 표 개체로 더 많은 작업을 수행할 수 있습니다.추가 정보:하위 표를 위한 스크립트 작성

중요

Microsoft Dynamics CRM Online 조직의 경우 이 기능은 조직이 Dynamics CRM Online 2015 업데이트 1로 업데이트된 경우에만 사용할 수 있습니다. 이 기능은 Dynamics CRM(온-프레미스)에서는 사용할 수 없습니다.

이 항목의 내용

  • GridControl
    GridControl: OnLoad 이벤트, addOnLoad, getEntityName, getGrid, getViewSelector 및 removeOnLoad에 대한 이벤트 및 메서드.


  • GridControl.getGrid 메서드에 의해 반환된 Grid에 대한 메서드: getRows, getSelectedRows 및 getTotalRecordCount.

  • GridRow
    Grid. getRows 및 Grid. getSelectedRows 메서드에 의해 반환된 GridRow 에 대한 getData 메서드.

  • GridRowData
    GridRow. getData 메서드에 의해 반환된 GridRowData에 대한 getEntity 메서드.

  • GridEntity
    GridRowData. getEntity 메서드에 의해 반환된 GridEntity에 대한 메서드: getEntityName, getEntityReference, getId 및 getPrimaryAttributeValue.

  • ViewSelector
    GridControl.getViewSelector, getCurrentView, isVisible 및 setCurrentView에 의해 반환된 ViewSelector에 대한 메서드

GridControl

CRM Online 2015 업데이트 1 전에는 하위 표 컨트롤에 유일한 고유 메서드는 refresh였습니다. 하위 표 컨트롤의 이름을 알고 있으면 다음 코드를 사용하여 기본 계정 양식의 CONTACTS 하위 표 등에 액세스할 수 있습니다.

var contactsSubgrid = Xrm.Page.getControl("Contacts");

양식 편집기를 열지 않고 양식에서 하위 표 컨트롤의 이름을 식별하려면 브라우저 개발자 도구 사용의 정보를 참조하십시오.

Xrm.Page.ui 컨트롤인 GridControl에는 getControlType, 레이블 메서드, getParent, 표시 메서드, setFocus알림 메서드는 물론 refresh 같은 모든 표준 컨트롤 메서드도 있습니다. 이러한 메서드에 대한 자세한 내용은 Xrm.Page.ui 컨트롤(클라이언트 쪽 참조)를 참조하십시오.

OnLoad 이벤트

이벤트 처리기를 이 이벤트에 추가하여 하위 표를 새로 고칠 때마다 실행합니다. 여기에는 사용자가 열 머리글을 클릭하여 값을 정렬할 때가 포함됩니다.GridControl.addOnLoad 및 GridControl.removeOnLoad 메서드를 사용하여 양식 Onload 이벤트에서 이벤트 처리기를 관리합니다.

addOnLoad

이 메서드를 사용하여 GridControlOnLoad 이벤트에 이벤트 처리기를 추가합니다.

매개 변수 유형: 함수

예: myContactsGridOnloadFunction 함수를 연락처 하위 표 OnLoad 이벤트에 추가합니다.

var myContactsGridOnloadFunction = function () { console.log("Contacts Subgrid OnLoad occurred") };
Xrm.Page.getControl("Contacts").addOnLoad(myContactsGridOnloadFunction);

getEntityName

이 메서드를 사용하여 표에 표시되는 엔터티 데이터의 논리적 이름을 가져옵니다.

반환 값 형식: 문자열

예: 기회 레코드를 표시하는 하위 표 컨트롤의 배열로 opportunitySubgrids 변수를 설정합니다.

var opportunitySubgrids = Xrm.Page.getControl(function (ctrl, i) {
 if (ctrl.getControlType() == "subgrid") {
  return (ctrl.getEntityName() == "opportunity");
 }
 else {
  return false;
 }
})

getGrid

이 메서드를 사용하여 GridControl에서 사용 가능한 표에 액세스합니다.

반환 값 유형:

예: contactsSubgridGrid 변수를 연락처 하위 표의 표로 설정합니다.

var contactsSubgridGrid = Xrm.Page.getControl("Contacts").getGrid();

getViewSelector

이 메서드를 사용하여 GridControl에서 사용 가능한 ViewSelector에 액세스합니다.

반환 값 유형: ViewSelector

예: contactsSubgridViewSelector 변수를 연락처 하위 표의 보기 선택기로 설정합니다.

var contactsSubgridViewSelector = Xrm.Page.getControl("Contacts").getViewSelector();

removeOnLoad

이 메서드를 사용하여 GridControlOnLoad 이벤트에서 이벤트 처리기를 제거합니다.

매개 변수 유형: 함수

예: myContactsGridOnloadFunction 함수를 연락처 하위 표 OnLoad 이벤트에 추가한 다음 제거합니다.

var myContactsGridOnloadFunction = function () { console.log("Contacts Subgrid OnLoad occurred") };
Xrm.Page.getControl("Contacts").addOnLoad(myContactsGridOnloadFunction);
Xrm.Page.getControl("Contacts").removeOnLoad(myContactsGridOnloadFunction);

Grid 메서드를 사용하여 표에 있는 데이터에 대한 정보에 액세스합니다.GridGridControl.getGrid 메서드로 반환됩니다.

getRows

Grid에서 모든 GridRow의 모음을 반환합니다.

반환 값 형식: 모음

예: allRows 변수를 연락처 하위 표에서 GridRow의 모음으로 설정합니다.

var allRows = Xrm.Page.getControl("Contacts").getGrid().getRows();

설명:

모음에서 데이터에 액세스하는 데 사용되는 메서드에 대한 정보는 컬렉션(클라이언트 쪽 참조)을 참조하십시오.

getSelectedRows

Grid에서 선택된 모든 GridRow의 모음을 반환합니다.

반환 값 형식: 모음

예: 연락처 하위 표에서 선택된 행에 대한 엔터티 참조로 selectedEntityReferencesArray 변수를 채웁니다.

//Get an array of entity references for all selected rows in the subgrid
var selectedEntityReferences = [];
var selectedRows = Xrm.Page.getControl("Contacts").getGrid().getSelectedRows();
selectedRows.forEach(function (selectedRow, i) {
 selectedEntityReferences.push(selectedRow.getData().getEntity().getEntityReference());
});

설명:

모음에서 데이터에 액세스하는 데 사용되는 메서드에 대한 정보는 컬렉션(클라이언트 쪽 참조)을 참조하십시오.

getTotalRecordCount

서버에 연결되어 있는 동안 웹 응용 프로그램 또는 Outlook용 Dynamics CRM 클라이언트에서 이 메서드는 단일 페이지에 표시되는 수로 제한되지 않고 보기의 필터 조건과 일치하는 레코드의 전체 수를 반환합니다.

Outlook용 Dynamics CRM 클라이언트가 서버에 연결되면 이 수는 사용자가 오프라인이 되도록 선택한 레코드로 제한됩니다.

태블릿용 Microsoft Dynamics CRM 및 휴대폰용 Microsoft Dynamics CRM의 경우 이 메서드는 하위 표에 있는 레코드 수를 반환합니다.

반환 값 형식: 숫자

예: filteredRecordCount 변수를 보기의 필터 기준과 일치하는 총 수로 설정합니다.

var filteredRecordCount = Xrm.Page.getControl("Contacts").getGrid().getTotalRecordCount();

GridRow

GridRow. getData 메서드를 사용하여 GridRowData에 액세스합니다.GridRow 의 모음은 Grid. getRows 및 Grid. getSelectedRows 메서드에 의해 반환됩니다.

getData

GridRow에 대해 GridRowData를 반환합니다.

반환 값 유형: GridRowData

예: 연락처 하위 표에서 모든 행에 대한 GridRowData로 allGridRowDataArray 변수를 채웁니다.

var allGridRowData = [];
var rows = Xrm.Page.getControl("Contacts").getGrid().getRows();
rows.forEach(function (row, i) {
 allGridRowData.push(row.getData());
});

GridRowData

GridRowData. getEntity 메서드를 사용하여 GridEntity에 액세스합니다. GridRowDataGridRow. getData 메서드로 반환됩니다.

getEntity

GridRowData에 대해 GridEntity를 반환합니다.

반환 값 유형: GridEntity

예: 연락처 하위 표에서 모든 행에 대한 GridEntity로 allGridEntitiesArray 변수를 채웁니다.

var allGridEntities = [];
var rows = Xrm.Page.getControl("Contacts").getGrid().getRows();
rows.forEach(function (row, i) {
 allGridEntities.push(row.getData().getEntity());
});

GridEntity

GridEntity 메서드를 사용하여 행에 있는 특정 행에 대한 데이터에 액세스합니다.GridEntityGridRowData. getEntity 메서드로 반환됩니다.

getEntityName

행의 레코드에 대한 논리적 이름을 반환합니다.

반환 값 형식: 문자열

예: firstEntityType 변수를 연락처 하위 표에서 첫 번째 행에 대한 엔터티 논리 이름의 값으로 설정합니다.

var firstEntityType = Xrm.Page.getControl("Contacts").getGrid().getRows().get(0).getData().getEntity().getEntityName();
// firstEntityType == "contact"

getEntityReference

반환 값 형식: 조회

예: firstEntityType 변수를 연락처 하위 표에서 첫 번째 행에 대한 엔터티 참조로 설정합니다.

var firstEntityReference = Xrm.Page.getControl("Contacts").getGrid().getRows().get(0).getData().getEntity().getEntityReference();
// firstEntityReference.entityType == "contact"
// firstEntityReference.id == "{13CD16BD-3EC4-E411-80CF-00155DB58496}"
// firstEntityReference.name == "Rene Valdes (sample)"

설명:

이 조회에는 다음과 같은 속성이 있습니다.

이름

유형

설명

entityType

문자열

행의 레코드에 대한 논리적 이름입니다.GridEntity.getEntityName 메서드에 의해 반환되는 같은 데이터입니다.

id

문자열

행의 레코드에 대한 ID입니다.GridEntity.getId 메서드에 의해 반환되는 같은 데이터입니다.

이름

문자열

행의 레코드에 대한 기본 특성 값입니다.GridEntity.getPrimaryAttributeValue 메서드에 의해 반환되는 같은 데이터입니다.

getId

행의 레코드에 대한 ID를 반환합니다.

반환 값 형식: 문자열

예: firstEntityId 변수를 연락처 하위 표에서 첫 번째 행에서 레코드의 ID 값으로 설정합니다.

var firstEntityId = Xrm.Page.getControl("Contacts").getGrid().getRows().get(0).getData().getEntity().getId();
// firstEntityId == "{13CD16BD-3EC4-E411-80CF-00155DB58496}"

getPrimaryAttributeValue

행의 레코드에 대한 기본 특성 값을 반환합니다.

반환 값 형식: 문자열

예: currentView 변수를 연락처 하위 표의 보기 선택기의 현재 보기로 설정합니다.

var firstEntityPrimaryAttributeValue = Xrm.Page.getControl("Contacts").getGrid().getRows().get(0).getData().getEntity().getPrimaryAttributeValue();
// firstEntityPrimaryAttributeValue == "Rene Valdes (sample)"

ViewSelector

ViewSelector 메서드를 사용하여 하위 표 컨트롤의 보기 선택기에 대한 정보를 가져오거나 설정합니다.

참고

하위 표 컨트롤이 보기 선택기를 표시하도록 구성되지 않은 경우 ViewSelector 메서드를 호출하면 오류가 throw됩니다.

getCurrentView

이 메서드를 사용하여 현재 보기에 대한 참조를 가져옵니다.

반환 값 형식: 조회 개체

예: currentView 변수를 연락처 하위 표의 보기 선택기의 현재 보기로 설정합니다.

var currentView = Xrm.Page.getControl("Contacts").getViewSelector().getCurrentView();

설명:

하위 표 컨트롤이 보기 선택기를 표시하도록 구성되지 않은 경우 GridControl.getViewSelector 메서드에 의해 반환되는 ViewSelector에 대해 이 메서드를 호출하면 오류가 throw됩니다.

isVisible

이 메서드를 사용하여 보기 선택기를 표시할지 여부를 결정합니다.

반환 값 형식: 부울

예: viewSelectorIsVisible 변수를 연락처 하위 표의 보기 선택기의 가시성 상태를 나타내도록 설정합니다.

var viewSelectorIsVisible = Xrm.Page.getControl("Contacts").getViewSelector().isVisible();

설명:

하위 표 컨트롤이 보기 선택기를 표시하도록 구성되지 않은 경우 GridControl.getViewSelector에 의해 반환되는 ViewSelector에 대해 이 메서드를 호출하면 오류가 throw됩니다.

setCurrentView

이 메서드를 사용하여 현재 보기를 설정합니다.

매개 변수 형식: 조회 개체

예: ContactsIFollow 변수를 연락처 하위 표의 현재 보기로 설정합니다.

var ContactsIFollow = {
 entityType: 1039, // SavedQuery
 id:"{3A282DA1-5D90-E011-95AE-00155D9CFA02}", 
 name: "Contacts I Follow"
}
//Set the view using ContactsIFollow
Xrm.Page.getControl("Contacts").getViewSelector().setCurrentView(ContactsIFollow);

설명:

하위 표 컨트롤이 보기 선택기를 표시하도록 구성되지 않은 경우 GridControl.getViewSelector에 의해 반환되는 ViewSelector에 대해 이 메서드를 호출하면 오류가 throw됩니다.

이 조회에는 다음과 같은 속성이 있습니다.

이름

유형

설명

entityType

번호

사용자가 선택할 수 있는 보기를 나타내는 SavedQuery(1039) 또는 UserQuery(4230)에 대한 개체 유형 코드입니다.

id

문자열

사용자가 선택할 수 있는 보기의 ID입니다.

이름

문자열

사용자가 선택할 수 있는 보기의 이름입니다.

참고 항목

Microsoft Dynamics CRM Online 2015 Update 1의 새로운 기능
하위 표를 위한 스크립트 작성
Xrm.Page.ui 컨트롤(클라이언트 쪽 참조)
컬렉션(클라이언트 쪽 참조)
클라이언트 쪽 프로그래밍 참조
Microsoft Dynamics CRM 2015 양식용 코드 작성
클라이언트 응용 프로그램 확장 작성

© 2017 Microsoft. All rights reserved. 저작권 정보