본문 바로가기

SharePoint

SPList 추가 또는 SPList 템플릿 Feature 추가 중에 발생되는 오류 중. List 템플릿 추가 중에 아래와 같은 오류가 끊임없이 발생하여, 추가 List 템플릿으로 web.Lists.Add(".....", "......", listTemplate) 메소드로 SPList를 추가할 수 없는 경우가 있습니다. System.Data.SqlClient.SqlException: 테이블 'WSS_Content.dbo.EventReceivers', 열 'Name'에 NULL 값을 삽입할 수 없습니다. 열에는 NULL을 사용할 수 없습니다. INSERT이(가) 실패했습니다. 문이 종료되었습니다. 위치: System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) 위치: System.Dat.. 더보기
SPListItem 중 원하는 되풀이 데이터만 가져오기. 금일 작업 중에, 일정 – 되풀이된 일정들을 SPQuery를 이용하여 SPListItemCollection을 가져오는 방법에 대해서 분석했습니다. 문제원인 만일 오늘 날짜에 해당하는 일정(되풀이 포함) 사항을 가져오려면 아래와 같이 작성하게 됩니다. SPQuery query = new SPQuery(); // 쿼리문생성 query.Query = "" + "" + "" + "" + "" + "" + "" + "" + "" + ""; SPListItemCollection listItems = list.GetItems(query); 위의 코드대로 작성하게 되면, listItems( SPListItemCollection )의 목록은 오늘 날짜에 해당하는 일정을 가져오는 동시에, 오늘 날짜의 이전 되풀이 일정(한.. 더보기
권한 상승 엘리베이트 태우기 예전에 가상 함수를 만들어 엘리베이트 태우는 방법을 프로젝트 할 떄 배웠다. 그런데, 그 방법은 좀 아름 답지 않게 만들 수 밖에 없었다. 그런데, 이번에 SharePoint SDK 문서를 읽던 중... 참으로 아름 다운 방법을 발견해서 적는다. SPSecurity.CodeToRunElevated elevatedGetSitesAndGroups = new SPSecurity.CodeToRunElevated(엘리베이트 태울 함수이름); SPSecurity.RunWithElevatedPrivileges(elevatedGetSitesAndGroups); 예를 들자면... 만일 Button Click Event 중에, DoElevate 라는 함수를 권한 상승 처리를 해야 한다면 다음과 같이 구성될 수 있다. pr.. 더보기
WSS 3.0의 RSS 기능이 IE 7.0에서는 비정상적으로 표시 WSS 3.0 에서 추가적인 기능 중에, RSS Feed를 구독하는 기능이 있다. 일정, 작업, 목록 등등에서 위의 메뉴 바의 내용 중 작업 -> RSS 피드 보기를 선택하면 된다. 그러면 RSS 피드가 활성화 되게 되는데, 이 내용을 그대로 클릭하게 되면 Xml 문서가 꺼내지고 그에 맞는 Xslt 파일과 연동되면서 화면에 보여지게 된다. 그런데, Internet Explore 7.0 같은 경우에는 이 RSS 리더 기능을 자체적으로 가지고 있다보니 다소 희안하게 표시되게 된다. 같은 일정 목록을 가지고 RSS 피드 보기를 각각 IE 6.0과 IE 7.0에서 돌려보았다. 차이는 아래의 그림을 참조하면 된다. 보면 알 수 있듯이 IE 7.0 같은 경우에는 무슨 dll 이라고 표시되고 IE 6.0 같은 경우에.. 더보기
MOSS 2007상에 가상 디렉토리 만들기 [기본편] MOSS 2007 개발을 할 때, 가상 디렉토리를 만들어 별도의 ASPX 페이지를 만들어 추가적인 기능을 꾸미려고 할 때가 있다. 그러나 임의대로 만들거나, 기본적으로 생성되는 대로 만들게 되면 MOSS 2007의 기능을 사용할 수 없거나 혹은, 아예 페이지 자체가 뜨지 않는 경우가 있다. 그래서 대부분의 개발자들은 _layouts 에 ASPX 페이지를 저장하는 경우가 많다. 그러나 자신만의 파일들을 별도로 구성해 관리하려면 역시 별도의 가상 디렉토리를 구성하는 것이 좋고, 그를 위한 방법을 정확히 파악하는 것이 좋다. 1. INETMGR - 인터넷 정보 서비스 관리자 실행을 한다. 그리고 난 뒤 가상 디렉토리 생성을 시작한다. 가상 디렉토리 만들려면 만들려는 사이트에서 오른쪽 버튼을 클릭한 뒤, 새로 .. 더보기
MOSS 2007 마스터 페이지 수정 권한 MOSS 2007에서 사이트 내 마스터 페이지를 추가/삭제/편집 하는 페이지가 있다. 일반적인 설정으로 모든 권한을 Administrators 그룹에 속한 계정에게 주고, 그 계정으로 로그인 하면 모든 페이지를 접근 할 수 있으며, 지금 말하려는 마스터 페이지 및 페이지 레이아웃 안의 설정 페이지에도 들어갈 수 있다. 그러나 Form 인증과 같은 전혀 다른 Login을 하거나 Administrators 그룹내의 계정이 아니면, 저 안의 페이지에 접근 할 수 없다. 심지어 사이트의 소유자 권한을 가지고 있어도 불가하다. 이 안에 들어가려면, 사이트의 모음(Site Collection)의 관리자에 등록되어 있어야 한다. 여기에 등록하려면, 최소한 SharePoint 3.0 중앙관리에 들어가야 가능하다. 중앙.. 더보기