2011-09-13 5 views
5

나는 콘텐츠 유형에 조회 필드를 추가하려고 :.셰어 조회 필드 및 필드이 정의가있는 WebID = "

<Field ID="{c80e8e3c-7124-4772-a39d-5b69f131d542}" 
     Name="Site" 
     Group="Tieto Intranet Columns" 
     Type="Lookup" 
     DisplayName="Site" 
     StaticName="Site" 
     List="Lists/FavoriteSites" 
     ShowField="Title" 
     PrependId="TRUE" 
     WebId="~sitecollection" 
    > 

FavoriteSites 목록, 나는이 조회 필드에 의해 참조를 원하는 사이트 모음 범위에 존재 배포가 잘되었지만이 조회를 사용하여 컨텐츠 유형을 기반으로 목록을 만들면 조회 필드가 FavoriteSites 목록에 연결되지 않은 것처럼 보입니다. FavoriteSites에 데이터를 추가하고 조회 필드가있는 두 번째 목록에 뭔가를 추가하려고합니다. FavoriteSites에서. 불행히도 드롭 다운 선택, FavoriteSites 목록에서 데이터가 비어 있습니다.

내가 FavoriteSites에 새로운 조회 열을 수동으로 만들면 모든 것이 정상입니다.

누구나이 조회 정의에서 문제가 될 수있는 아이디어가 있습니까?

UPDATE :

있는 WebID = ~ sitecollection과 필드에 지정된 목록 = 목록/FavoriteSites 속성 {c80e8e3c-7124- : 리치 나를 추천으로

이, 나는이 메시지를 찾아 자세한 정보에 대한 로그 레벨 설정 {d86c7005-d31d-43ae-b86b-38f28b81072e}의 {4772-a39d-5b69f131d542}을 (를) 찾을 수 없습니다. 목록 설정 = {39CEC23E-FB28-47B3-BC36-C21780AD1D94}.

목록 FavoriteSites가 있기 때문에 이해가 가지 않습니다. FavoriteSites 목록과 사이트 필드가있는 두 번째 목록은 사이트 모음 범위의 한 기능으로 배포됩니다.

배포 시간에 guid를 모르므로 GUID로 조회 할 때 목록을 지정할 수 없습니다.

+1

"WebId = ~ sitecollection 및 List = Lists/FavoriteSites 속성이 지정되었습니다."라는 메시지에 대해 기능이 활성화 된 시점의 SP 로그 (Verbose 수준의 로그 필요)를 검색 한 후 질문의 두 번째 부분을 업데이트합니다. 메시지. –

+0

의견을 보내 주셔서 감사합니다 리치,이 메시지를 발견하고 내 게시물을 업데이 트되었습니다. 이제 문제가 어디 있는지 생각해 보시겠습니까? – Michal

답변

4

목록은/FavoriteSites이 존재하지 않습니다 사이트 모음 루트 사이트 또는 기능이 활성화되는 사이트 (하위 사이트 인 경우)

기능으로 목록/즐겨 찾기 사이트를 만드는 경우 필드 기능 전에 활성화되어 있는지 확인하십시오. 필요한 경우 ListInstance 요소를 Field 요소 바로 위에 놓습니다. 그러나 메시지는 분명합니다. 사용자 지정 필드가 사이트 모음에 제공 될 때 목록이 존재하지 않습니다. 그리고 그것이 작동하지 않는 이유입니다.

분명히하려면 해당 필드를 사용할 목록 인스턴스를 만들 때뿐만 아니라 기능이 활성화 될 때 목록이 있어야합니다.

P. "documentation"에 Microsoft.SharePoint.SPFieldElement.PerformFixUpIfLookUpField 메서드가 있는지 확인하여이를 발견했습니다.

+0

Rich에게 감사드립니다. 기능 활성화 순서에 의해 발생했습니다. 필자가 필드가있는 기능 이전에 목록을 사용하여 기능을 활성화하면 모든 것이 잘 작동합니다. – Michal

1

목록 필드를 목록의 ID로 변경해보십시오. 예 : List="{4641f5f2-b358-4805-9d7d-e910d2243fb5}"

나는 또한 수동으로 만든 필드의 필드 정의를보고 SharePointManager를 사용하는 것이 좋습니다 것입니다 쉽게 목록 등의 개화 GUID를 찾을

무슨 로그 메시지가 의미하는 것은
+0

답장을 보내 주셔서 감사합니다 Nat, SharePointManager는 정말 유용한 응용 프로그램입니다. 전에는 몰랐습니다. 배포 시간에 ID를 모르므로이 목록을 ID로 지정할 수 없습니다. 지형지 물 이벤트 수신자별로이 열을 추가 할 수 있지만 사용하고 싶지는 않습니다. 제 생각에 XML 정의 및 목록 URL은 Sharepoint 2010에서 확인해야합니다. – Michal

1

나는 동일한 문제가있었습니다. 결국 내 문제는 루트 웹에있는 목록을 선언적으로 참조 할 수 없다는 것이 었습니다. WebId 속성의 ~ sitecollection 토큰은 중괄호 사이에 Guid를 쓰고 있기 때문에 작동하지 않습니다. SharePoint는 중괄호없이이를 기대합니다 (설명은 http://martensboarterstun.wordpress.com/2013/06/15/how-to-create-a-list-definition-with-a-lookup-field-declaratively/에서 찾을 수 있음). 나는 목록 정의에 루트 웹 ID를 배치했다.

관련 문제