SharePoint에서 간단한 게시판 만들기
5946 단어 SharePointPowerShell
요 전날 SharePoint 보기에 적용되는 필터에서 동적 값을 사용할 수 있음을 알게 되었습니다.
[Me]와 [Today]를 사용하면 액세스한 사용자와 액세스한 날을 필터로 사용할 수 있습니다.
여기를 사용하여 논프라밍으로 간단한 게시판을 만들려고 생각했습니다.
※논프라밍은 무리였습니다 _(:3」∠)_
하고 싶은 일(사양)
환경
서버 환경
클라이언트 환경
준비한 목록
리스트명은 게시판으로 했습니다.
리스트의 작성 방법은 자세하게 쓰지 않습니다만, 열의 내부명을 반각 영숫자로 붙이기 위해서, 아래 표의 「열의 내부명」으로 일단 등록해, 그 후에 「열명」으로 변경하고 있습니다 .
열의 내부 이름
열 이름
종류
필수
body
본문
여러 줄 텍스트
-
publish_date
공개일시
날짜와 시간
◯
limit_date
게재 마감
날짜와 시간
-
필터 만들기
필터가 기존의 '모든 항목'을 수정했습니다.
표시
정렬
이 필터로 다음을 실현하고 있습니다.
(게재 기한 is null and 공개 일시 <= 오늘) or (게재 일시 >= 오늘) or (등록자 = 현재 사용자)
[Today]의 함정
SharePoint를 사용하는 사람이라면 상식이지만 [Today]는 날짜 만 비교합니다. [Now] 라든지는 준비되어 있지 않은 것 같습니다. 뭐가 잘못 됐니?
이대로라면, 공개일시 2017/05/06 12:00 으로 한 기사가 2017/05/06 00:00 가 되면 볼 수 있습니다! 아니, 좋지만 절각을 만들었는데 슬프다.
그래서 SharePoint Designer에서 CAML Query를 변경하는 기사가 많기 때문에 그곳을 모방하고 SharePoint Designer는 싫어서 PowerShell로 하기로 했습니다.
[Today]를 시간을 보도록 설정
PowerShell을 시작하고 다음을 수행합니다.
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.Runtime") | Out-Null
# 取得する SharePoint Online の URL
$url = 'https://<your tenant>/';
# ユーザー名
$user = '<your account>';
# パスワード
$secure = Read-Host -Prompt "Enter the password for ${user}(Office365)" -AsSecureString;
# SharePoint Online 認証情報
$credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($user, $secure);
# SharePoint Client Context インスタンスを生成
$context = New-Object Microsoft.SharePoint.Client.ClientContext($url)
$context.Credentials = $credentials
# View の取得
$view = $context.Web.Lists.GetByTitle("掲示板").Views.GetByTitle("すべてのアイテム")
$context.Load($view)
$context.ExecuteQuery()
# DateTime 型に時間も含める
$view.ViewQuery = $view.ViewQuery -replace '<Value Type="DateTime">', '<Value Type="DateTime" IncludeTimeValue="True">'
# 保存
$view.update()
$context.Load($view)
$context.ExecuteQuery()
# オブジェクト破棄
$context.Dispose()
18행째까지는 거의 흔들리지 않습니다.
21행째로 기존의 뷰 「모든 아이템」을 취해 오고, 26행째로
IncludeTimeValue="True"
를 덧붙여 시간도 더하는 설정을 하고 있습니다.결과
등록자는 모두 데이터를 볼 수 있습니다
다른 사용자로부터는 공개 일시 ≦ 현재 ≦ 게재 기한 의 데이터가 보이고 있다
# 공개 기한 12:00의 데이터 (패턴 2와 패턴 6)가 보입니다
다른 사용자로부터는 공개 일시 ≦ 현재 ≦ 게재 기한 의 데이터가 보이고 있다
# 패턴 2와 패턴 6의 데이터가 보이지 않습니다
참고
Reference
이 문제에 관하여(SharePoint에서 간단한 게시판 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/miyamiya/items/0e823e38c6bfe13dea8f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)