Miklix

Dynamics 365에서 확장을 통해 표시 또는 편집 방법 추가

게시됨: 2025년 2월 16일 오전 11시 55분 42초 UTC
마지막으로 업데이트되었습니다: 2026년 1월 12일 오전 8시 57분 21초 UTC

이 문서에서는 클래스 확장을 사용하여 Dynamics 365 for Operations의 테이블과 폼에 표시 메서드를 추가하는 방법을 X++ 코드 예제와 함께 설명합니다.


이 페이지는 가능한 한 많은 사람이 이용할 수 있도록 영어에서 기계 번역되었습니다. 안타깝게도 기계 번역은 아직 완성된 기술이 아니므로 오류가 발생할 수 있습니다. 원하시는 경우 여기에서 영어 원문을 보실 수 있습니다:

Add Display or Edit Method via Extension in Dynamics 365

Dynamics에서 표시 또는 편집 메서드를 사용할 계획을 세울 때는 일반적으로 솔루션을 다른 방식으로 설계할 수 있는지 고려해야 하지만, 경우에 따라서는 이러한 방법이 최선의 선택이 될 수 있습니다.

이전 버전의 Dynamics 및 Axapta에서는 테이블과 폼에 대한 표시 또는 편집 메서드를 매우 쉽게 만들 수 있었지만, 최근 Dynamics 365에서 처음으로 편집 메서드를 만들어야 했을 때 그 절차가 다소 다르다는 것을 알게 되었습니다.

분명히 여러 가지 유효한 접근 방식이 있지만, 제가 보기에 가장 좋은 방법(직관성과 코드 가독성 측면 모두에서)은 클래스 확장을 사용하는 것입니다. 클래스 확장을 사용하면 클래스뿐만 아니라 다른 요소 유형에도 메서드를 추가할 수 있습니다. 이 경우에는 테이블에 적용되었지만, 폼에도 똑같이 적용할 수 있습니다.

먼저 새 클래스를 만드세요. 이름은 원하는 대로 지을 수 있지만, 어떤 이유에서인지 "_Extension" 접미사를 붙여야 합니다. 예를 들어 CustTable에 표시 메서드를 추가해야 한다면 MyCustTable_Extension과 같이 이름을 지정할 수 있습니다.

클래스에 ExtensionOf 데코레이터를 추가하여 시스템이 어떤 클래스를 확장하는지 알 수 있도록 해야 합니다. 예를 들면 다음과 같습니다.

[ExtensionOf(tableStr(CustTable))]
public final class MyCustTable_Extension
{
}

이제 이전 버전의 Dynamics에서 테이블에 직접 구현했던 것처럼 이 클래스에 표시 메서드를 구현할 수 있습니다. "this"는 테이블을 참조하므로 필드 및 기타 메서드에 액세스할 수 있습니다.

예를 들어, 고객의 계좌번호만 반환하는 간단하고 (완전히 쓸모없는) 표시 메서드를 가진 클래스는 다음과 같을 수 있습니다.

[ExtensionOf(tableStr(CustTable))]
public final class MyCustTable_Extension
{
    public display CustAccount displayAccountNum()
    {
        ;

        return this.AccountNum;
    }
}

이제 폼(또는 폼을 직접 편집할 수 없는 경우 폼 확장)에 표시 메서드를 추가하려면 폼에 필드를 수동으로 추가하고 올바른 유형(이 예에서는 문자열)을 사용해야 합니다.

그런 다음 컨트롤에서 DataSource를 CustTable(또는 CustTable 데이터 소스의 이름)로 설정하고 DataMethod를 MyCustTable_Extension.displayAccountNum으로 설정합니다(클래스 이름을 반드시 포함해야 합니다. 그렇지 않으면 컴파일러가 메서드를 찾을 수 없습니다).

이제 끝났습니다 :-)

업데이트: 폼에 표시 메서드를 추가할 때 확장 클래스 이름을 포함할 필요가 없어졌지만, 최초 게시 당시에는 필요했습니다. 이전 버전을 사용하는 독자를 위해 해당 정보를 남겨둡니다.

추가 자료

이 글이 마음에 드셨다면 다음 제안도 마음에 드실 겁니다.


블루스카이에서 공유하기페이스북에서 공유하기LinkedIn에서 공유하기Tumblr에 공유하기X에서 공유LinkedIn에서 공유하기Pinterest에 고정

미켈 크리스텐슨

저자 소개

미켈 크리스텐슨
남자 이름은 miklix.com의 창시자이자 소유자입니다. 전문 컴퓨터 프로그래머/소프트웨어 개발자로 20년 이상 경력을 쌓았으며 현재 유럽의 대형 IT 기업에서 정규직으로 근무하고 있습니다. 블로그를 운영하지 않을 때는 여가 시간을 다양한 관심사, 취미, 활동으로 보내며 이 웹사이트에서 다루는 다양한 주제에 어느 정도 반영되어 있습니다.