다음을 통해 공유


제품 속성 값 지역화

제품 이름은 다른 지역에 대해 지역화할 수 있습니다. Dynamics 365 Sales를 사용하면 특정 제품 특성에 대해 지역화된 레이블을 제공하여 언어 기본 설정과 일치하는 지역화된 이름을 볼 수 있습니다. 이 문서에서는 개발자가 이 기능과 상호 작용하는 방법에 대해 설명합니다. 애플리케이션에서 이 기능을 사용하는 단계별 지침은 제품 이름 및 속성을 여러 언어로 번역에 대한 이전 버전 설명서를 참조하십시오.

지역화된 속성 값을 지원하는 특성

다음 목록에는 지역화 가능한 값을 지원하는 특성이 포함되어 있습니다.

  • Product.Name

  • DynamicProperty.Name

  • DynamicPropertyOptionSetItem.DynamicPropertyOptionName

  • DynamicPropertyOptionSetItem.DynamicPropertyOptionDescription

    StringAttributeMetadataMemoAttributeMetadata 클래스에는 이전 표의 4개를 제외한 모든 특성에 대해 false인 읽기 전용 IsLocalizable 부울 속성이 있습니다.

지역화된 속성 값 검색

사용자의 언어 기본 설정과 일치하는 지역화된 값을 검색하기 위해 다른 작업을 수행할 필요가 없습니다. 사용자의 기본 설정 언어에 대한 지역화된 값이 있으면 반환됩니다. 지역화된 값이 없으면 조직의 기본 언어에 대한 값이 반환됩니다. 이 동작은 이전 버전과의 호환성을 유지합니다. 현재 제품 이름 특성을 사용하는 모든 코드는 지역화된 값을 사용하여 계속 작동합니다. 속성 값의 지역화가 완료되지 않은 경우 사용자에게 혼합 언어 값이 표시될 수 있습니다.

특정 지역화 가능한 특성에 대한 모든 지역화된 레이블을 검색하려면 RetrieveLocLabelsRequest 메시지를 사용합니다.

지역화된 값을 사용하여 쿼리

지역화된 특성에 대한 값을 사용하여 조건이 있는 테이블을 쿼리하는 경우 먼저 기본 설정 언어를 사용하여 조건이 평가됩니다. 특성에 대한 지역화된 값이 없으면 쿼리가 기본 언어로 되돌아갑니다. 지역화된 특성 값에 대한 쿼리 결과는 기본 설정 언어로 반환됩니다(있는 경우). 그렇지 않으면 결과가 기본 언어로 반환됩니다.

지역화 가능한 특성을 사용하여 레코드 만들기 또는 업데이트

기본 설정 언어가 조직의 기본 언어가 아닌 경우 지역화된 특성이 있는 레코드는 읽기 전용입니다. 조직의 기본 언어를 사용하여 지역화된 속성 값으로만 레코드를 만들 수 있습니다. 지역화 가능한 특성에 대한 기본 언어 값을 업데이트하는 경우 기본 언어의 값을 지우는 경우를 제외하고 해당 특성에 대한 지역화된 값은 변경되지 않습니다. 기본 언어 값을 null 또는 빈 문자열로 설정하면 해당 속성에 대한 모든 지역화된 값도 지워집니다.

특정 지역화된 특성에 대해 지역화된 레이블을 추가하거나 업데이트하려면 SetLocLabelsRequest 메시지를 사용하거나 번역된 값을 가져옵니다. 지역화 가능한 특성에 대한 변경 내용은 레코드에 대한 감사 기록에 표시됩니다. 지역화된 값에 대한 LCID(언어 코드 식별자)가 감사 기록에 표시됩니다.

지역화 가능한 특성 번역

지역화 가능한 특성을 프로그래밍 방식으로 지역화하는 프로세스는 지역화된 솔루션 레이블을 변환하는 데 사용되는 프로세스와 유사합니다. [!INCLUDE[proc_more_information]사용자 정의된 표 및 열 텍스트를 번역

메타데이터 값을 변환하는 것과 달리 지역화된 특성 값을 내보내고 가져오는 사용자에게는 시스템 관리자 보안 역할이 필요하지 않습니다. 영업 관리자 보안 역할에는 지역화 가능한 특성을 변환하는 데 필요한 권한이 있습니다. 지역화된 속성 값을 번역하는 사람은 업데이트할 권한이 있는 레코드를 보고 업데이트할 수 있는 레코드만 내보낼 수 있습니다.

지역화 가능한 특성을 프로그래밍 방식으로 변환하려면 먼저 ExportFieldTranslationRequest를 사용하여 현재 지역화된 레이블 정의를 내보내야 합니다. ExportFieldTranslationResponse. ExportTranslationFile 속성에는 [Content_types].xml 파일이 포함된 압축된 crmFieldTranslations.zip 파일과 Office Excel을 사용하여 열 수 있는 crmFieldTranslations.xml 파일에 대한 byte[]이 포함되어 있습니다. 지역화된 레이블 워크시트에는 조직의 프로비전된 각 언어에 대한 LCID 값이 있는 열이 포함되어 있습니다. 기본 언어 값이 있는 열이 채워지고 프로비전된 각 언어의 열에 이전에 지역화된 값이 포함됩니다. 번역기에서 이 파일을 편집하여 지역화 가능한 속성에 대해 지역화된 레이블을 제공할 수 있습니다.

팁 (조언)

기본 언어 이름만 대량으로 업데이트하려면 기본 언어 값을 편집할 수도 있습니다.

지역화된 레이블을 제공하도록 crmFieldTranslations.xml 파일을 편집한 후 [Content_types].xml 파일과 함께 압축하고 해당 파일을 해당 파일의 ImportFieldTranslationRequestTranslationFile 속성으로 설정합니다.

변환된 속성 값을 내보낼 때 포함된 값 수정

내보낸 변환에 포함된 값은 지역화 가능한 속성 값을 지원하는 테이블과 연결된 사용자 지정 가능한 뷰에 의해 제어됩니다. 제품 테이블만 사용자 지정 사용자 인터페이스에 이 보기를 표시합니다. 이러한 보기의 이름은 내보내기 필드 번역입니다. 다음 테이블에서는 이러한 보기에 대해 SavedQueryId을 제공합니다.

Table SavedQueryId 기본값 FetchXml
제품 9cfe2a9f-13c4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical"
distinct="false">
<엔티티 이름="product">
<attribute name="name" />
</entity>
</fetch>
dynamicproperty 4833cf48-1ac4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical">
<entity name="dynamicproperty">
<attribute name="name" />
</entity>
</fetch>
dynamicpropertyoptionsetitem d64cce30-1fc4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical">
<entity name="dynamicpropertyoptionsetitem">
<attribute name="dynamicpropertyoptionname" />
<attribute name="dynamicpropertyoptiondescription" />
</entity>
</fetch>

이러한 보기의 FetchXml 속성을 편집하여 포함하지 않으려는 특성 속성 값을 필터링할 수 있습니다. 예를 들어 보관된 레코드를 제외하거나 특정 날짜 이후에 업데이트된 레코드만 포함할 수 있습니다.

필드 변환 가져오기 작업의 진행률 모니터링

시스템 작업 테이블에는 필드 변환 가져오기 작업의 진행률을 모니터링하는 다음 보기가 포함되어 있습니다.

  • 모든 필드 번역 가져오기 작업

  • 완료된 필드 번역 가져오기 작업

  • 진행 중인 필드 번역 가져오기 작업

  • 내 필드 변역 가져오기 작업

  • 시작되지 않은 필드 번역 가져오기 작업

    다음 조건에서는 번역 작업을 가져올 때 오류가 발생합니다.

Message Description
경고: 워크시트 {0}, 줄 {1}에 대한 가져오기 파일에 지정된 하나 이상의 행에 대한 쓰기 권한이 없습니다. 가져오기를 실행하는 사용자에게 가져온 파일에 포함된 행에 대한 쓰기 권한이 없을 수 있습니다.

다른 행의 처리는 계속됩니다.
경고: 워크시트 {0}, 행 {1}, 열 {2}에 있는 기본 언어 번역 문자열이 null입니다. 번역을 가져와 기본 언어 값을 지울 수 없습니다.

다른 행의 처리는 계속됩니다.
경고: 행 {0}의 셀 수가 워크시트 {1}의 행 1에 있는 셀 수와 일치하지 않습니다. 스프레드시트의 모든 행에는 동일한 수의 셀이 있어야 합니다.

다른 행의 처리는 계속됩니다.
경고: 워크시트 {0}, 줄 {1}, 열 A에서 잘못된 테이블 이름을 찾았습니다. 워크시트의 이름을 사용하는 시스템에 유효한 테이블이 없습니다.

다른 행의 처리는 계속됩니다.
경고: 워크시트 {0}, 줄 {1}, C 열에 잘못된 개체 열 이름이 있습니다. 워크시트의 이름을 사용하는 시스템에 유효한 지역화 가능한 특성이 없습니다.

다른 행의 처리는 계속됩니다.
경고: 워크시트 {0}, 줄 {1}, B 열에 잘못된 개체 IDrk 있습니다. 이 행의 항목에 대해 조직에 일치하는 레코드가 없습니다.

다른 행의 처리는 계속됩니다.
오류: 워크시트 {0}에서 행을 찾을 수 없습니다. 가져올 워크시트가 비어 있습니다.
오류: 워크시트 {0}에 있는 조직 ID가 현재 조직 ID와 일치하지 않습니다. 번역만 내보낸 것과 동일한 조직으로 다시 가져올 수 있습니다.
경고: 워크시트 {0}, 열 {1}에서 잘못된 언어 코드가 발견되었습니다. | 세부 정보: {2} 열의 LCID가 유효한 정수가 아니거나 언어에 대한 언어 팩이 설치되지 않았습니다.

열의 번역은 무시됩니다.

유효한 로캘 ID 값은 LCID(로캘 ID) 차트에서 찾을 수 있습니다.
오류: 워크시트 {0}, 열 {1}에서 중복 언어 코드가 발견되었습니다. 각 열에는 다른 언어 코드가 있어야 합니다.
오류: 번역 파일이 잘못되었습니다. 압축된 파일은 루트에 다음 파일을 포함해야 합니다. CrmFieldTranslations.xml, [Content_Types].xml 가져올 압축(zip) 파일에는 오류에 설명된 파일만 포함되어야 합니다.
오류: 번역 파일이 잘못되었거나 필요한 스키마를 준수하지 않습니다. 압축(zip) 파일에 포함된 CrmFieldTranslations.xml 파일은 시스템에서 내보내고 지역화된 값을 제공하기 위해 편집된 파일이어야 합니다. 다른 변경 내용으로 파일을 무효화할 수 있습니다.

언어 제거

제거된 언어에 대해 제공된 지역화된 레이블은 시스템에 유지되므로 언어가 다시 설치될 경우 해당 위치에 있습니다.

제품 카탈로그 테이블
사용자 지정된 테이블 및 열 텍스트 번역제품 이름 및 속성을 여러 언어로 번역