Archive

Archive for the ‘Microsoft SharePoint’ Category

MOSS 2007 – Sharepoint Server 2007 Beraber Çalışma Bölüm – 2

October 4th, 2009 Comments off

 

Makalemin bu bölümünde kendi oluşturduğumuz Sharepoint web sitemiz üzerinde nasıl işlemler yapılabileceği konusunda ayrıntılı olarak durulacaktır.

Bu ayarları yapabilmek için öncelikle yarattığımız web sitesine giriş yapmalıyız.

image001

-Paylaşılan Belgeler:Bu kısımda yaratılmış olan bir dökümanın nasıl kullanıcılara publish edileceği verilecektir.Aynı zamanda bu dökümanın nasıl editleneceğinden bahsedilecektir.Bunun için “Paylaşılan Belgeler” kısmı seçilerek belge paylaştırma işlemi başlatılır.

image002

Karşıya Yükle seçeneğinden “Belgeyi Karşıya Yükle ” kısmı seçilir.

image003

Paylaşılacak dosya browse edilip seçilir ve tamam a basılır.

image004

Belge paylaşıma açılmış olur.

image005

Paylaşılmış olan bu belgeleri bizim yaratacağımız klasörler içine almamızda mümkündür.Bunun için Yeni kısmından “Yeni klasör ” seçeneği seçilir ve kalsöre bir isim verilir.

image006

image007

image008

Eylemler seçeneğinden bu dökümanların “Veri sayfasında düzenle” ile excel ortamında düzenleyebiliriz.”Windows gezgini ile aç” seçeneğiyle explorer tarafında açılmasını sağlayabilir,”RSS Akışını Görüntüle” ile döküman üzerinde oluşan değişimleri kullanıcılara otomatik olarak gönderebilir,”Beni Uyar” ile kullanıcılara dökümanda olan değişklikleri otomatik e-mail yoluyla gönderebiliriz.image009

Ayarlar kısmında ise şu değişklikler yapılabilir,

“Sütun oluşturma” ile dökümanların yayınlanacağı yerde sütunlar oluşturulur.Örnek olarak share adında bir sütun oluşturalım,

image010

image011

image012

Share adındaki sütun oluşturulmuş olur.

image013

“Görünüm oluşturma” ile dökümanların kullanıcılara web sitesinde nasıl görüntüleneceğine dair view lar oluşturulur.

image014

Standart görünüm seçilir.

 

image015

image016

image017

image018

Kendimize özel bir “Cenk” adında görünüm oluşturduk.

image019

“Belge kitaplığı ayarları” ile bu belgelerin paylaşıldığı kısmın erişim izinleri,iş akış ayarları,başlıkları,RSS ayarları gibi birçok ayarının değişiklikleri yapılabilir. image020

image021

Örnek olarak oluşturulan her döküman için versiyon bilgisi(1,1-1,2-1,3 gibi) üretebiliriz.Bunun için “Sürüm oluşturma ayarları” tıklanır.Şekilden görüleceği gibi istediğimiz sayıda sürüm tutabiliriz.

image022

-Geri Dönüşüm kutusu:Kullanıcıların kullanmış oldukları bu dökümanları silme ihtimaline karşılık Sharepoint server Recycle Bin özelliği ile kullanıcılara bu dökümanları geri döndürme şansı vermektedir.Kullanıcının dökümanını geri getirmek için “Geri dönüşüm kutusu” seçilir. image023

Silinmiş olan döküman seçilerek “Seçimi Geri yükle” seçilerek döküman kurtarılır.

image024

 

-Görevler(Tasklar):Kullanıcılara proje tasklarınıda Sharepoint üzerinden atayabilmekteyizdir.Buna göre örnek bir proje taskını herhangi bir kullanıcıya atayalım.Bunun için “Görevler” sekmesi seçilir. image025

Ardından Yeni seçeneğinden “Yeni Öğe” tıklanır.

image026

image027

Gereken değerler girilerek ilgili kişilere task atanmış olur.

 

image028

-RSS Akışları:Kullanıcılara yapılan bu değişkilikleri online bir şekilde yansıtabilmek için RSS özelliği kullanılabilir.Örnek olarak Yukardaki şekilde atanmış olan taskın atandığına dair ilgili kişiye uyarı vermesini sağlayalım.Bunun için Eylemler menüsünden “RSS akışını görüntüle” seçilir.image029

image030

Administrator kullanıcısı için bir RSS akışı oluşturulmuş olur.

-Tartışma Formları:Kullanıcıların web sitesi üzerinde herhangi bir konu hakkında tarışma forumları vasıtasıyla yazışması için “Ekip Tartışması” seçeneği bulunmaktadır.Bunun için yönetim konsolundan bu seçenek seçilir.

image031

Yeni menüsünden “Yeni Tartışma ” seçilir.

image032

Tartışma formuna bir isim verilerek tartışma oluşturulur.

image033

image034

 

-Anketler:Kullanıcıların Web sitesi üzerinden düzenlenmiş olan anketlere katılmaları Sharepoint ile yeni gelen bir özelliktir.Kullanıcılar şirket tarafında düzenlenmiş olan herhangi bir ankete katılabilirler.Örnek olarak bir yemek anketi düzenleyelim.Bunun için site içerisinde bulunan “Oluştur” seçeneği seçilir.

image035

Anket düzenlemek için “Anket” seçeneği seçilir.

image036

image037

Ankete bir isim verilerek bir sonraki adıma geçilir.

image038

Anket için iyi-kötü-idare eder şeklinde 3 lü bir yanıtlama sistemi verdik.Son seçilerek anket yayınlanmış olur.

image039

Ana sayfada sağ köşeye gelen linke tıklanır ve anket yanıtlanır.

image040

Bu anketi yanıtla seçilir.

image041

Ankete verilen sonuçlar tablo halinde kullanıcılara şu şekilde yansıtılır.

image042

-Takvim seçeneği:Bu sayede kullanıcılara web sitesinde takvim yayınlayabiliriz.Bu takvimde kullanıcılara toplantı taleplerini online bir şekilde gönderebiliriz.”Takvim” seçeneği seçilir ve yayınlanacak takvime gerekli değerler girilir.

image043

image044

image045

Takvimimiz yayınlanmış olur.

image046

-Kişiler ve Gruplar:Sharepointe erişecek kullanıcı ve grupları ekleme şansımız bulunmaktadır.Bunun için site üzerinde “Kişiler ve Gruplar” linnki tıklanır.

image047

Kullanıcı eklemek için yeni menüsünden “Kullanıcı Ekle” tıklanır.

image048

Sms adındaki kullanıcı eklenir ve bu kullanıcıya site üzerinde sadece  okuma izni verilir.

image049

Ve sms kullanıcısı yaratılmış olur.

image050

 

Makalemin bir sonraki bölümünde görüşmek üzere

Cenk BALCI

Categories: Microsoft SharePoint

MOSS 2007 – Sharepoint Server 2007 Beraber Çalışma Bölüm – 1

October 4th, 2009 Comments off

 

Bu makalenin amacı, Sharepoint Server üzerindeki yönetim işlemlerinin anlatılmasıdır.

Öncelikle Sharepoint serverın kullanım amaçlarına değinmek gerekirse;

*Colloboration projeleri için çok uygun bir ortam sunar.

*Data paylaşımı için son derece uygundur.

*E-mail ile haberleşme olanağı sağlamaktadır.

*Kurumsal şirketler açısından data kaybının önlenmesine yardımcı olur.

*Hazırlanmış olan dökümanların versiyonlanmasına ve kontrolüne imkan verir.

*Süresi geçimş ve kullanılmayan datanın silinmesini sağlamaktadır.

*Döküman ve Data entegrasyonunu sağlar.

*Döküman ve yazılımları oluşturan insan gücünün verimli kullanılmasını sağlayarak işgücü kaybının önüne geçer.

*Data paylaşımını güvenli hale getirip zararlı kişilere karşı önlem almanıza olanak verir.

*İş akışlarının düzenli bir şekilde oluşturulmasını sağlar.

 

Sharepointin en önemli özelliklerinden olan Döküman Depolama ve Yönetilmesi özelliği bulunur.Bu özelliğin getirdiği yenilikler kısaca şöyle özetlenebilir:

-Döküman Kütüphanesi

-Döküman Versiyonlama

-Geri Dönüşüm kutusu

-Resim Kütüphanesi

-Task atama olayları

-Problem Listeleri

 

Sharepoint serverın en önemli özelliği web sayfası dizayn edebilme seçeneğidir.Firma çalışanlarına birtakım web paylaşımları sunar.Bunları özetlemek gerekirse:

*Online Sunum:Firma çalışanları arasında real time haberleşmeyi sağlar.Exchange ve Active Directory entegrasyonu sayesinde kişilerin free,busy,offline olup olmadıklarını gözlemlemeye olanak verir.

*Web Parts:Web partlar sayesinde custom web siteleri yapılabilmektedir.

*Tartışma Panoları:Kişilere tartışma forumları açabiliriz.

*Contact Lists:Kontak listeleriyle kişilerin telefon,adres bilgisi vb. bilgilerini yayınlayabiliriz.

*Shared Calendars:Bu özellikle kişiler birbirlerinin Calendar durumlarını görebilir ve önemli toplantılarını buna göre organize edebilirler.

*Döküman Alanı:Bu kısımda kişiler birbirleriyle döküman paylaşımı yapabilirler.

 

 

Bilgi Yönetim Özellikleri

*Alerts:Kullanıcıların dökümanlar yaratıldığında ,silindiğinde veya değiştirildiğinde e-mail ile uyarılması için alertler kullanılmalıdır.

*RSS Desteği:RSS desteği ile diğer web sitelerinde oluşan update bilgileri direkt olarak kullanıcıya yansıtılır.

*Search Desteği:Bu sayede dizayn edilmiş olan site içerisinde arama işlemleri yapılabilmektedir.

 

İletişim Özellikleri

*Duyurular:Web sitesinde oluşan değişikliklerin kullanıcılara anons edileceği kısımdır.

*Linkler:Kullanıcıların sıklıkla kullandıkları web sayfalarının linklerini buraya koyarak yayınlatabiliriz.

*Tartışma Panoları:Şirket çalışanları için çeşitli konularda tartışma yapılabilecek kısımdır.

Sharepoint Server 2007 Kurulum Aşamaları

Sharepoint kurulumu için server üzerinde bulunması gereken temel özellikler şöyledir;

-Min. W2003 standart server+sp1

-.net 2.0 ve .net 3.0

-IIS 6.0

-SQL 2005 Sp2

-Min. 1 GB ram

 

Sharepoint server kurulumunda öncelikle yapılan işlemler şöyledir;

clip_image001

Office server.exe ile setup işlemine başlanır.

clip_image002

Lisans key girilir.

clip_image003

Kurulum seçeneklerinden Gelişmiş seçeneği seçilir.

clip_image004

Tüm bileşenleri yükle seçeneği seçilir.

clip_image005

Sharepoint server 2007 yüklenmeye başlanır.

clip_image006

Ve sharepoint kurulumu bitirilir.

clip_image007

Şimdi Sharepoint serverın database bağlantısı ve diğer özelliklerini configüre edeceğimiz sihirbaz kısmına başlıyoruz;

clip_image008

clip_image009

Yes seçilerek ilerlenir.Yeni bir sunucu grubu kurmak istediğimizden hayır seçeneği seçilerek ilerlenir.

clip_image010

Veritabanı sunucusu ve database ismi belirtilir.

clip_image011

Sharepointe bağlanacağımız port numarası ve authentication seçenekleri doldurulur.

clip_image012

 

clip_image013

İleri seçilerek Sharepoint yapılandırması başlatılır.

clip_image014

Son  seçilerek kurulum bitirilir.

clip_image015

Sharepoint serverı kurduktan sonra Sp1 kurulumuna geçilir.Önce WSS service pack i kurulur. clip_image016

clip_image017

clip_image018

clip_image019

Son seçilerek kurulum bitirilir.

clip_image020

Kurulumdan sonra windows servisi olarak gelen Office Sahrepoint servera ait 4 adet servis aşağıdaki gibidir.

clip_image021

Sharepoint serverın console unun yapılandırması için sırasıyla şu adımlar yapılmalıdır.İlk olarak Yönetim Merkezi konsolu açılır.Burada Sharepointin tüm servisleri default olarak kapalı olarak geldiğinden servisler enable edilmelidir.

clip_image022

Bu kısımda “İşlemler” menüsü seçilir.

clip_image023

“Sunucudaki Hizmetler” seçeneği seçilerek servislerin olduğu kısma geçilir.

Burda görülen servisler tek tek manuel olarak başlatılır.

clip_image024

Servisleri başlattıktan sonra Sharepoint serverın özellikle mail haberleşmesinde kullanacağı gelen ve giden mail hesapları oluşturulmalıdır.Önce giden posta hesabı oluşturulur.

clip_image025

clip_image026

Tamam seçilir ve ardından Gelen posta ayarlarına geçilir.

clip_image027

Yönetim merkezi konsolundan Sharepoint uygulamalarına temel teşkil edecek ilk web sayfası ve SSP uygulaması oluşturulmalıdır.Bunun için Uygulama Yönetimi kısmı seçilir.”Web Uygulaması oluştur veya genişlet” seçeneği seçilerek default bir web site oluşturulur.

clip_image028

Bu kısımda “Yeni web uygulaması oluştur” seçilir.

clip_image029

Default web sitesinin ayarları bu bölümde yapılmaktadır.

clip_image030

Tamam seçilir.

clip_image031Default web site oluşturulduktan sonra bu site ın kullanacağı içeriği belirleyecek olan site kolleksiyonu oluşturulmalıdır.Bunun için “Site kolleksiyonu oluştur” seçeneği seçilir.

clip_image032

Bu kısımda sitenin kullanacağı port,hangi kullanıcı ile sitenin servisinin çalışacağı,kullanacağı database gibi bilgiler girilir.

clip_image033

 

clip_image034

clip_image035

Sharepoint serverın çalışabilmesi için önemli bir ayarda SSP(Shared Service Provider) uygulaması yaratılmasıdır.Bu sharepoint serverın servisinin web tarafından ayarlanması ile mümkündür.Web konsolundan “Paylaşılan Hizmetler Yönetimi ” kısmına tıklanır.

clip_image036

Yeni SSP seçeneği seçilir.

clip_image037

clip_image038

clip_image039

Tamam seçilerek SSP yaratılmış olur.

clip_image040

Bir sonraki makalemde görüşmek üzere.

Cenk BALCI

Categories: Microsoft SharePoint

Windows Sharepoint Services (WSS) Uzerinde kullanici Izinleri

August 18th, 2009 Comments off

Bu makalemizde WSS üzerinde oluşturduğumuz site ve collection’ların izinlerini inceleyeceğiz. Bu sayede artık birbirinden bağımsız siteler oluşturmuş ve bunların erişimlerini kullanıcı veya grup bazlı ayarlamış olacağız.

İlk olarak makalemize yeni kurulmuş olan bir Sharepoint sitesinin nasıl anonim erişime açılacağının detayını vererek başlayalım;

Bir Sharepoint sitesi kurarken bizlere anonim erişime açık olup olmayacağı ile ilgili bir sorunun yöneltildiğini hatırlayın ( ilk makalemde collection oluşturulurken bu bölüme değinmiştim )

image001

Biz bu soruyu “No” olarak yanıtlamış olsak ta benim şu anda anlatacağım yöntem ile var olan bir siteyi anonim erişime açabiliriz.

Örneğin elimizdeki var olan “cozumpark.com” sitemizi kurarken anonim erişimi açmamıştık ve browser’a www.cozumpark.com yazdığımızda aşağıdaki gibi bir ekran ile karşı karşıya kalacağız

image002

Burada görüldüğü gibi site açıldı ancak “Administrator” kullanıcısı ile logon olduk (bilgisayara hangi kullanıcı ile logon olmuş isek otomatik olarak o kullanıcı ile sharepoint sitesine login olduk.)

Not; Bunun için IE üzerine aşağıdaki ayarın yapılması gerekli;

image003

Bu ayarı yapmamanız halinde ise anonim erişim açık olmadığı için siteye giriş yaparken size kullanıcı adı ve şifre soracaktır.

Siteye giriş yaptıktan sonra aşağıdaki gibi site ayarları bölümüne geçiyoruz

image004

Gelişmiş izinler

image005

image006

Ve ayarlar bölümüne tıkladığım zaman burada anonim erişim ile ilgili bir bölüm olmadığını görüyorum. Bunun sebebi bu site kurulurken anonim erişim istemediğimi söylemiştim ( diğer makalemde bu bölümleri anlatmıştım ) bu nedenle anonim bölümü yok, ancak şimdi ben bu sitede anonim erişimi açmak istiyorum bunun için ise ilk olarak Central Administration bölümüne erişiyorum

image007

Buradan “Authentication providers” kısmına tıklıyorum

image008

Şu anda w2003 yani sharepoint kurulumu ile gelen varsayılan sharepoint sitesi seçili olduğu için onun üzerine tıklayıp aşağıya doğru açılan menüden “Change Web Application” bölümünü seçiyorum.

image009

Kendi web sitemizi seçiyoruz

image010

Ardından “Default” bölümüne tıklıyoruz

image011

Açılan menüden anonim erişime izin veriyoruz.

Bu değişiklikten sonra sitenize girerken kullanıcı adı ve şifre bilgisinin doğru veriliyor olmanıza rağmen logon sorunları yaşıyorsanız aşağıdaki kayıt defteri değişikliğini yapmanız yeterli olur.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

Altında new DWORD değeri oluşturun, ismi ise “DisableLoopbackCheck” olacak ve değeri “1” olarak tanımlanacak. Makineyi bir kere kapatıp açtıktan sonra “Integrated Windows Authentication” ile sistem çalışmaya başlayacak.

Siteye logon olduktan sonra yine site ayaları ve gelişmiş izinlerin olduğu bölüme gidiyoruz ( yukarıdaki bölüme bakıp aynı yolu izleyebilirsiniz )

image012

Artık burada “Anonim Erişim” ile ilgili bir seçeneğin olduğunu görüyoruz ve tıklıyoruz

image013

Kendi şirket politikalarınıza göre istediğiniz izinleri seçip tamam dedikten sonra artık sharepoint sitemiz anonim erişime hazır hale geliyor

image014

Yukarıda görüldüğü gibi değişiklikten sonra anonim olarak giriş yaptım.

Şimdi ise sharepoint siteleri için tanımlı kullanıcı gruplarını ve yetkilerini görelim;

Bunun için site ayarları bölümünden kişiler ve gruplara tıklıyoruz

image015

image016

Sol bölümde kurulum ile beraber gelen 3 kullanıcı grubunun olduğunu görüyoruz. Bunlardan Üyeler ve Ziyaretçiler tanımlanmamış durumdadır.

image017

Ancak Sahipler bölümü ise site kurulurken bize sorulan soru gereği ( collection yöneticisini bir collection kurarken mutlaka tanımlamak gerekiyor, bunuda yine bir önceki makalemde detaylandırmıştım ) tanımladığımız kişiyi görebiliyoruz ( Administrator ) .

image018

Bu durum bize şunu anlatıyor; eğer bu sitede anonim erişim açık olmasaydı “administrator” kullanıcısı dışında kimse bu siteye login dahi olamayacaktı. Çünkü sahipleri kısmı dışında tanımlı bir kullanıcı veya grup mevcut değil. Bizlerde site yöneticileri olarak bu bölümleri tanımlamak zorundayız.

Eğer site bu hali ile kullanılacak ise “ÇözümPark Ziyaretçileri” isimli bölümü doldurmak pek anlamlı olmayacaktır. Çünkü bu bölüm sadece bu sharepoint sitesini görüntüleme yetkisine sahip olacak kullanıcılar içindir. Örneğin anonim erişimi açık tutmayıp şirket çalışanlarını bu gruba eklerseniz sadece şirket çalışanlarınız siteyi ziyaret edecektir.

Bu grupların varsayılan yetkileri ise aşağıdaki gibidir;

Ziyaretçiler – Okuma – Yalnızca görüntüleyebilir

Üyeler – Katılım – Görüntüleyebilir, ekleyebilir, güncelleştirebilir ve silebilir.

Sahipler – Tam Denetim – Tam denetime sahip

Biz istersek kendimize yeni gruplarda açabilir ve elimizdeki Windows grupları veya kullanıcılarını bu yeni açacağımız Sharepoint gruplarına üye yapabiliriz.

Varsayılan gruplar ile uygulamamıza devam etmek gerekir ise; Senaryom aşağıdaki gibi olacaktır.

ÇözümPark ana sayfası herkes tarafından görüntülenmesine karşın Biz Kimiz bölümü sadece şirket çalışanlarına, online destek bölümü ise sadece muhasebe çalışanlarına açık olacaktır.

Bu amaçla ilk olarak yapmam gereken alt sayfaların yukarıdan izin almasını engellemek olacaktır. Çünkü Biz Kimiz ve Online Destek bölümlerinin izinleri birbirinden ayrı olmalı ancak her iki alt site aynı collection da olduğu için aşağıdaki resimlerden de görüleceği üzere alt sitelerin de yöneticileri yani grupları aslında ÇözümPark Collection’nının gruplarıdır.

image019

Biz Kimiz bölümünde site ayarlarını açıyorum

image020

Gelişmiş izinler bölümüne giriyorum

image021

Ve collection dan gelen grupları görüyorum . Yani Bu gruplar aslında Biz Kimiz bölümü için değil ÇözümPark ana collection için oluşturulmuş durumda.

Aynı şekilde diğer alt sitemiz olan Online Destek bölümüne geçtiğimizde de tablo farklı değil;

image022

Site ayarları

image023

Gelişmiş izinler

image024

Burada da aynı grupları görüyoruz. Bu da demek oluyor ki şu anda her iki alt sitede aynı gruplar tarafından yönetiliyor. Bunu değiştirmek için aşağıdaki adımları izleyebiliriz;

Yukarıdan izin almasını istemediğimiz alt sitede “Site Ayarları – İzinler” bölüme geliyoruz

image025

Ve izinleri düzenle dediğimizde aşağıdaki gibi bir uyarı ile karşılaşıyoruz;

image026

Bu uyarıya “Ok” diyerek artık “Biz Kimiz” bölümünü yukarıdan bağımsız hale getirmiş oluyoruz. ( Not; şu anda yukarıdan izin alma dedik ancak var olan izinleri yani grupları silmediğiniz sürece hala ÇözümPark Collection grupları bu alt siteyi etkilemektedir ) .

image027

Görüldüğü gibi artık bu grupları silebiliyoruz.

Şimdi ilk olarak yukarıdan gelen izinleri silip kendi gruplarımızı oluşturalım.

Yukarıdan gelen bu izinleri silmek için hepsini seçtikten sonra Eylemler menüsünden Kullanıcı izinlerini kaldır dememiz yeterli olacaktır.

image028

Yukarıdan gelen tüm izinleri kaldırdığımıza göre artık bu site için yeni gruplar ve gruplarada var olan Windows kullanıcı veya gruplarını ekleyebiliriz.

image029

Yeni menüsünden Biz Kimiz sitesini ziyaret etmek isteyecek kullanıcıların içerisinde yer alacağı grubu tanımlayabiliriz.

image030

Grubun adını, açıklamasını, grubun sahibini ve grup ayarlarını tamamlıyoruz.

image031

En alt bölümde ise bu grubun yetkilerini belirliyoruz. Amacımız ziyaret olduğu için bu gruba yetki olarak sadece “Okuma” izni veriyoruz ve grubu oluşturuyoruz.

image032

Görüldüğü gibi gruba tek üye grubun sahibi olan Administrator kullanıcısı. Biz hemen bu gruba Biz Kimiz sitesi için ziyaretçileri ekleyelim.

image033

image034

Bu bölüme Windows kullanıcısı veya Windows grubu ekleyebiliriz; yani bir Sharepoint grubuna yetki verdikten sonra bu Sharepoint grubuna bir Windows grubu veya bir Windows kullanıcısı eklenebilir. Kullanıcı tanımladıktan sonra istersek bu kullanıcıyı bu gruba eklemek yerine direk kullanıcıya da yetki verebiliriz. Yani Bir Windows kullanıcısını direk olarak bir SharePoint grubuna eklemeden de yetkilendirebiliriz.

Buradaki izin düzeylerinin detayı aşağıdaki gibidir;

Tam Denetim

Bu izin düzeyi bütün izinleri içerir. Varsayılan olarak Site adı Sahipleri SharePoint grubuna atanmıştır. Bu izin düzeyi özelleştirilemez veya silinemez.

Tasarım

Web sitesinde liste ve belge kitaplığı oluşturabilir, sayfaları düzenleyebilir ve tema, kenarlık ve stil sayfası uygulayabilir. Varsayılan olarak herhangi bir SharePoint grubuna atanmamıştır.

Katkıda Bulunma

Var olan liste ve belge kitaplıklarında öğe ekleyebilir, düzenleyebilir ve silebilir. Varsayılan olarak Site adı Üyeleri SharePoint grubuna atanmıştır.

Okuma

Web sitesine salt okuma erişimi. Bu izin düzeyine sahip kullanıcılar ve SharePoint grupları öğeleri ve sayfaları görüntüleyebilir, öğeleri ve belgeleri açabilir. Varsayılan olarak Site adı Ziyaretçileri SharePoint grubuna atanmıştır.

Sınırlı Erişim

Sınırlı Erişim izin düzeyi, kullanıcılara sitenin tamamına erişim hakkı vermeden belirli bir liste, belge kitaplığı, öğe veya belgeye erişim hakkı vermek için ayrıntılı izinlerle birleştirilecek şekilde tasarlanmıştır. Ancak, örneğin bir liste veya kitaplığa erişmek için kullanıcının üst Web sitesini açma ve Web sitesinin teması ve gezinti çubukları gibi paylaşılan verileri okuma izni olmalıdır. Sınırlı Erişim izin düzeyi özelleştirilemez veya silinemez.

Yukarıda tanımlı izin gruplarının tam olarak neler yapabildiğini aşağıdaki tablolardan takip edebilirsiniz.

Liste Üzerindeki İzinleri;

image035

Site Üzerindeki İzinleri ;

image036

Tabii ki vereceğiniz izinlerin bağımlılığı da önemlidir; yani bir izin vermeniz bağımlı olduğu bazı izinlerinde o kullanıcı veya gruba verilmesi demektir;

Bağımlılık tablosu ise aşağıdaki gibidir;

image037

image038

image039

Bu detayları verdikten sonra makaleye kaldığımız yerden devam edelim;

Sağ taraftaki küçük adres defterine tıklarsanız liste şeklinde kullanıcı ve grupları görme şansına sahipsiniz

image040

İstediğiniz kullanıcı ve grubu seçtikten sonra ekleme yapıyoruz. Son durumda ziyaretçiler grubumuzun iki üyesi bulunmaktadır.

image041

Sizlerde aynı şekilde Biz Kimiz bölümü için 3 veya istediğiniz adette gruplar açıp bunların içerisine istediğiniz kullanıcıları yerleştirebilirsiniz. Aynı şekilde bu işlemleri bir diğer sitemiz olan Online Destek bölümü içinde yapabiliriz.

Şimdi Hakan kullanıcısı sadece Biz Kimiz bölümünde yetkili olduğu için hakan kullanıcısı ile login olduğumuz Sharepoint sitemizin nasıl görüneceğine bir bakalım

image042

Şekilde görüldüğü gibi “hakan uzuner” kullanıcısı ile login olmama rağmen her üç Siteyide görebiliyorum ( ana sayfa yani root collection içerisindeki sayfa, biz kimiz ve online destek bölümü ) . Ama bir dikkat çekici konuda hiçbir yetkisinin olmaması. Bunun sebebi her 3 siteninde anonim erişime açık olması. Yani aslında gerek ana sitede gerekse online destek sitesinde hakan uzuner kullanıcısı ziyaretçi veya başka bir şekilde tanımlı değil, bu durumda bu siteleri görmemesi gerekiyor, ancak görme nedeni her 3 site içinde anonim erişimin açık olması. Şimdi Online destek bölümündeki anonim erişimi kapatarak olayın değişimini izleyelim;

image043

Anonim erişim ayarları bölümüne gelip anonim erişimi kapatıyoruz.

image044

Şimdi hakan uzuner kullanıcısı ile bir daha login oluyoruz ve son durum aşağıdaki gibi;

image045

Görüldüğü gibi Online Destek sitesinde henüz tanımlı hiç bir kullanıcı olmadığı için, daha doğrusu hakan uzuner kullanıcısının burada yetkisi olmadığı için bu siteyi göremiyor. Biz istersek hakan uzuner kullanıcısını online destek bölümü için ziyaretçi olarak ekler katılım izni vermeyebilirdik, yani siteyi gezebilir ancak döküman ekleme, anket yanıtlama vb hiçbir katılım gösteremezdi. Bu şekilde istediğiniz siteler için istediğiniz Sharepoint grublarını tanımlar ve bunlara Windows grupları veya kullanıcılarını ekleyerek sitelerin arasında güvenlik ayarlarını yapmış olursunuz.

Categories: Microsoft SharePoint

WSS ile Web Application Site – Collection ve Subsite Tanimlama

July 13th, 2009 Comments off

 

WSS Ürünün kurulumu ve genel özellikleri hakkında bilgileri daha önceki makalelerimde sizlerle paylaşmıştım. Bu makalemde ise artık kurulumunu yaptığımız WSS ürününün şirket içerisinde kullanıma hazır bir hale nasıl getireceğimize değineceğim.

 

Sisteminize WSS kurmanız halinde IIS üzerinde aşağıdaki gibi yeni iki adet site karşımıza çıkmaktadır.

 

image001

 

Yine kurulum sonrası aşağıdaki dizinde ise bu iki web sitesine ait dosyalar yer almaktadır

 

image002

 

 

IIS Üzerinde görüldüğü üzere var olan sitenin dışında biri yönetim amaçlı olmak üzere iki yeni web sitemizin olduğunu görüyoruz.

 

Bunlardan ilki olan “Central Administration” ; yeni sharepoint siteleri tanımlamak , var olan siteler için yeni içerikler oluşturmak , servis ve sunucu ayarları gibi temel görevleri yerine getirmek amacı ile kullanacağımız yönetim sayfasıdır. Diğer web sitemiz ise kurulum ile beraber gelen örnek bir sharepoint sitesidir.

 

image003

 

Yönetim Sayfası

 

image004

 

Örnek Sharepoint Sitesi ;

 

Burada dikkatimizi çeken bir noktada kurulum sonrası varsayılan ve IIS kurulumu ile gelen web sitemizin artık çalışmıyor olması . Bunun sebebi gerek varsayılan sitemiz gerekse sharepoint kurulumu ile beraber gelen örnek sitenin aynı portu kullanarak yayın yapıyor olması ( http – 80 nolu port ) . Bir port üzerinden host header olmadan birden çok site yayınlayamadığımız için varsayılan sitemiz durmuş bulunuyor. WSS kurulumunun hemen ardından böyle bir sorun yaşıyor iseniz bu iki siteden birine aşağıdaki şekilde görüldüğü gibi bir host header eklemeniz yeterli olacaktır ( bu adresi dns üzerinde de tanımlamanız gerekiyor ki şirket çalışanları bu adres üzerinden siteye erişebilsinler ) .

 

image005

 

Bu işlemin ardından DNS üzerinde ilgili zone’u tanımlamak ve gerekli A kaydını açmak işlemin tamamlanması için yeterli olacaktır.

 

image006

 

Bu işlemin ardından WSS kurulumu ile servis vermeyi durduran varsayılan web sitemizde servis vermeye devam etmektedir.

 

Şimdi ise WSS kurulumu ile gelen ilk Sharepoint Web sitemizi açalım ; ( kullanıcı adı ve şifre bilgisi için yerel makinede veya domain ortamı var ise domain de yetkili bir kullanıcı ile giriş yapabilirsiniz. Çünkü bu site için Administrator kullanıcısı dışında bir kullanıcı ne ziyaretçi olarak nede sitenin bir üyesi olarak tanımlı değildir ) .

image007

 

Bu site kurulum ile gelmiş olup istersek gerekli değişiklikleri üzerinde yapabiliriz ancak biz kendi sitemizi oluşturup onun üzerinde çalışmalar yapacağız.

 

Evet artık kendi sitemizi oluşturmaya başlayalım ;

 

İlk olarak Central Administration sayfasından Application Management sekmesinin hemen altında yer alan “Create or Extend Web Application” bölümüne tıklayalım.

image008

 

Hemen ardından aşağıdaki gibi bir pencere ile karşılaşıyoruz ;

image009

 

Buradan “Create a new Web application” linkine tıklayıp bir sonraki sayfaya geçiyoruz ;

 

image010

 

Bu bölümde ilk olarak IIS üzerinde var olan ancak içerisinde Sharepoint bileşenleri yüklü olmayan sitelerin herhangi birini seçmemizi sağlayan açılır bir menü görüyoruz. Yani özetle size ; oluşturacağınız bu yeni Sharepoint sitesi IIS üzerinde zaten var olan bir site üzerine mi yüklensin yoksa tamamen yeni bir web sitesi mi oluşturulsun. Bu açılır menüde şu anda var olan 3 web sitesinden yanlızca “Default Web Site” seçilebilir ; çünkü onun dışındaki diğer iki site zaten WSS tarafından kuruldu ve içerisinde Sharepoint bileşenlerini barındırıyor.

 

Ben burada seçim olarak tamamen yeni bir web sitesi oluşturmak istediğimi belirtiyorum ve sitenin IIS üzerindeki açıklaması için ( sadece tanımlayıcı bir isimdir ) “cozumpark.com” yazıyorum ve hemen ardından yayın yapacağı port olan “80” nolu portu tanımlıyorum. Tabiki bu port üzerinden yayın yapan iki web sitesi daha hali hazırda IIS üzerinde tanımlı olduğu için ben siteme hemen bir host header tanımlıyorum ve bu adres benim için kullanıcıların benim web siteme erişmek için kullanacağı adres olacaktır ; “www.cozumpark.com” . Bu tanımlamadan sonra ise bu web sitesi için dosyaların nerede saklanacağını tanımlıyorum. Alt bölümde ise ;

 

image011

 

Siteye giriş esnasında gerçekleştirilecek olan kimlik doğrulama için hangi kimlik doğrulama yönteminin kullanılacağını ve bu sitenin anonim erişime açık olup olmayacağına karar veriyorum. Ayrıca eğer bu site için SSL kullanmayı düşünüyorsanız buradan veya kurulum tamamlandıktan sonra buradaki hemen hemen bütün ayarlarda olduğu gibi IIS üzerinden bu ayarıda değiştirebilirsiniz.

 

image012

 

Bu bölümde ise yeni web siteniz için ortam havuzu ayarlayabilirsiniz. Yani bu web sitesi için donanım kaynaklarını diğer sitelerden bağımsız olarak yönetmek istiyorsanız bunu tercih edebilirsiniz. Veya varolan ortam havuzlarından birini seçerek devam edebilirsiniz.

 

image013

 

 

Son bölümde ise bu web sitesi için veri tabanı bilgileri , varsa sql ile bağlantı bilgileri ve arama servisinin hangi makine üzerindeki servis olacağını seçebilirsiniz. Bu işlelerin sorununda sitenizi oluşturmuş oluyorsunuz.

 

image014

 

Site oluşturma işleminin ardından yukarıdaki gibi bir uyarı ile karşılaşıyoruz. Burada bahsedilen konu ; site oluşturmuş olsanız dahi içeriği boş olduğu için sitenin içini doldurmak adına mutlaka bir “collection” oluşturmak zorundayız. Bunun için ilgili linke tıklamak ve aşağıdaki yönergeleri takip etmeniz gerekmektedir ;

 

image015

 

Sitemize açıklayıcı bir isim ve tanımlama bilgisini giriyoruz.

 

image016

 

WSS yüklemesi ile beraber gelen ( Collaboration – Meetings ) veya bizlerin daha sonra yüklediğimiz bir çok ( application templates ) şablon site içerisinden bizr uygun olanı seçiyoruz. Buradaki menüler dil ayarlarına görede değişiklik göstermektedir. Yani eğer siz WSS kurulumunun hemen ardından birde Türkçe yama paketini yüklerseniz aşağıdaki gibi türkçe seçeneğini seçtiğinizde size sadece elinizde mevcut türkçe şablonları gösterecektir ;

 

image017

 

Bu seçimlerin ardından bu site için bir veya iki yönetici tanımlayıp gerek duyuyorsak kota tanımını yapıp ( önceden central administration bölümünden kota şablonlarını tanımlamanız gerekli ) collection kurulumunu tamamlıyoruz.

 

image018

 

Son bölümde artık sitemizi ziyarete açabiliriz ( dns üzerinde www.cozumpark.com için kayıt açmayı unutmayın ).

 

Yine karşımıza bir kimlik logon penceresi gelir ve siz yine yetkili bir kullanıcı ile giriş yapabilirsiniz.

 

image019

 

Artık içinde bir Collection olan sitemiz hazır. Bir collection dememin sebebi bu site içerisine birden çok collection açabiliyor olmam. Sharepoint mimarisinde Açtığınız bir site içerisine bir collection ve bu collection içerisine ise pek çok alt siteler açabilirsiniz. Veya bir site içerisine birden çok collection açarak yine bu collectionların içine alt siteler açabilirsiniz.

 

Bu kavramları daha iyi anlamak için aşağıdaki şekli kullanabiliriz

 

image020

 

Bu şekilde Shrapoint yapısındaki “Web Application” , “Web Site Collection” , “Sites” ve “Subsites” kavramları son derece açık bir şekilde çizilmiştir.

 

Kapsam olarak ise aşağıdaki şekilde de gösterilebilmektedir ;

 

1. Web Application

1.1 Site Collection (SPSite)

1.1.1 Site (SPWeb)

1.1.2 Site (SPWeb)

1.2 Site Collection (SPSite)

1.2.1 Site (SPWeb)

1.2.1.1 Sub Site (SPWeb)

1.2.1.2 Sub Site (SPWeb)

Yukarıdaki örnekte bir adet Web Application içerisinde iki adet site collection bulunmakta ve ilk site collection içerisinde iki adet site bulunmaktadır. İkinci site collection içerisinde ise bir tane site ve o site a ait olan iki tane subsite görünebiliyor.

 

Peki biz ne zaman collection açmalıyız ne zaman subsite yapmalıyız ? Bir site yaptınız ( web application ) ve içine gerekli olan ilk collection’ı yüklediniz artık elinizde bir web application ve bir web site collection var. Peki bunun içine 20 ayrı site açabilirmiyiz ?  tabiki açabiliriz. Peki bir bu kadar collection açıp içlerine siteler ekleyebilirmiyiz ? yine sorunun cevabı evet olacaktır. Bu durumda collection ‘ı ayıran en önemli özellik kotalardır. Yani eğer farklı sitelere ( şirket bölümleri , eğitim bölümleri , vb ) farklı kotalar uygulamak istiyorsanız ayrı collection’lar açmak zorundasınız ( bu aslında yapılabilir ancak biraz yazılım bilgisi gerekmektedir ) . Bunun dışında gerek güvenlik gerekse diğer konular için collection açmanıza gerek yoktur.

 

Şimdi ÇözümPark.com sharepoint sitesi için yeni bir collection oluşturalım ;

 

Central Administration bölümünden aşağıdaki adımları izleyelim ;

 

image021

 

image022

 

Bu bölümde yeni açacağımız collection için bir isim veriyoruz ve burada da görüldüğü üzere ilk collection içeriği ( root dizininde “/” çalışıyor ancak bundan sonrakiler ise “/sites” yolu ile temsil ediliyor ). ÇözümPark sitesi için ilk collection ana sayfası temsil ederken bu açacağım ikinci collection ise makaleleri temsil edecek.

 

 

 

 

image023

 

Bu collection için ihtiyaç duyduğumuz şablonu seçiyor ve kurulumu tamamlıyoruz.

 

image024

 

Artık bir Site içerisinde iki adet collection’ a sahibiz. Ancak bu iki collection yapı gereği birbirinden bağımsız olduğu için aynı sayfa üzerinde görüntülenmeyecektir.

 

Ana Sayfamız ;

 

image025

 

Ve yeni açtığımız collection

 

image026

 

Yukarıdaki iki şekle baktığımızda zaten collection kavramını bir kez daha anlamış oluyoruz. Görüldüğü gibi birbirinden bağımsız iki ayrı site gibi görünmektedir ki isterse birbirleri arasına link koyarak bu siteleri bağlayabiliriz. Yani ana sayfaya ( www.cozumpark.com) makale collection için bir bölüm , makale bölümüne ise ( www.cozumpark.com/sites/makale/) ana sayfa için bir link koyabiliriz .

 

Şimdi makale collection’ını gibi yeni bir collection daha açıyorum ve ismini forum olarak belirliyorum.

 

Son durumda onunda resmi aşağıdaki gibidir ;

 

image027

 

Son durumda bir ana sayfa ( ve içerisinde bir collection = root collection “/” ) ve altında iki adet collection açmış bulunuyoruz. Oysaki bunu bir ana sayfa ve altında root collection içine subsite ile bu işi aynı şekilde yapabilirdik. Böyle bir durumda tek ana sayfa ( ve içerisinde bir collection = root collection “/” ) ve bunun içinde iki tane alt site olacak ve şu andaki durumda tek farkı kota uygulaması olacaktı. Eğer her bir sitenin fiziksel disk üzerinden ne kadar alan kullanacağına dair bir yönetim planı yapmayacaksanız ayrı collection açmanıza gerek yoktur .

 

Şimdi ise root dizini altına iki tane alt site açacağım ( yani collectionların bir nevi olmadığını düşünüyorum root altına iki tane alt site açacağım ) .

 

Bunun için root yani ana sayfada site ayarları sayfasına geliyorum ;

 

image028

 

image029

 

image030

 

image031

 

Sitemiz için bir isim belirliyoruz ve gerekli şablonu seçiyoruz ;

image032

 

Bu bölümde ise önemli bir nokta bulunmaktadır. Pek çok kişi collection ları güvenlik nedenleri ile kullanmaktadır. Yani sanki Active Directory yapısındaki farklı forestlar gibi. Burada anlatmak istediğim şudur ki ; eğer iki ayrı collection varsa ortamda zaten onların güvenlik izinleri birbirinden bağımsız bir şekilde çalışır. O kadar ki siz ayarlamadığınız sürece bu collection içindeki siteler birbirilerini dahi göremezler. Bu nedenle bir site içerisindeki alt siteleri güvenlik nedenleri ile ayırmak içinde collection kullanılabilir. Ancak ben bunun bir neden olacağından bahsetmedim . Çünkü bu bölümden de göreceğiniz gibi siz isterseniz aynı collection içindeki sitelerin yukarıdan izin almayarak kendine özel izinlerin tanımlanmasını sağlayabilirsiniz. Buradaki gerekli seçenekler tamamen sizin yönetim planlarınız doğrultusunda değişebilir.

 

Sitemizin açıldıktan sonra ana sayfadaki durumu aşağıdaki gibidir ;

 

image033

 

Bunun gibi hemen ikinci bir site daha oluşturdum ve son durum aşağıdaki gibidir ;

 

image034

 

Bu arada “Wiki sayfaları” nedir diye düşünüyorsanız ; ben değişiklik olsun diye açtığım her site veya collection için farklı bir şablon seçmeye gayret gösteriyorum.

 

Son durumda ana sayfa ise aşağıdaki gibidir ;

 

image035

 

Yukarıdaki şekil bize ; bir web application içinde root collection içinde iki site olduğunu gösteriyor ve tabiki bizim bildiğimiz ama burada görünmeyen iki collection ve içlerinde root siteler var. Bu makale yardımı ile artık WSS üzerinde web application , collection , site ve subsite kavramlarını anlamış bulunuyoruz. Bir sonraki makalemde ise güvenlik konuları üzerinde duracağım. Bir sonraki Sharepoint makalesinde görüşmek üzere.

Hakan UZUNER

Categories: Microsoft SharePoint

Adım Adım Sharepoint 2007 Kurulum ve Konfigurasyon

February 23rd, 2009 Comments off

Sharepoint sisteme kurulmadan önce iyi bir planlama yapılması gerekmektedir. Öncelikle sistem kaynaklarınızı belirlemek için Sharepoint Capacity Planning Toolu kullanabilirsiniz. İlk kurulumda sistem kaynaklarınızı en minimum seviyede tutabilirsiniz.

http://www.microsoft.com/DOWNLOADS/details.aspx?FamilyID=dbee0227-d4f7-48f8-85f0-e71493b2fd87&displaylang=en

Sharepoint Serverımızı indiriyoruz

http://www.microsoft.com/downloads/details.aspx?FamilyId=2E6E5A9C-EBF6-4F7F-8467-F4DE6BD6B831&displaylang=en

OfficeServer.exe dosyasını çalıştırarak kuruluma başlıyoruz. Ürün anahtarımızı giriyoruz.

clip_image002

Bir sonraki ekranda size yükleme taahhüdü sunacaktır. Sonraki ekranda 2 çeşit yükleme seçeneği sunacaktır.

Temel Seçenek:
Tek bir sunucuda her şey yüklenir.
Tüm kurulumları basit bir şekilde kendi hazırlar.

Gelişmiş seçenek ile ayarları kendimiz belirtiyoruz.

clip_image004

Sunucu Türünü seçiyoruz. Burada 3 seçenek vardır. Tam seçenek ile tüm kurulumları yapıyoruz. Burdan SQL serveri kendimiz yerini belirliyoruz. Web ön ucu ile sadece web erişim sunucusu olarak kurabiliyoruz. Tek başına seçeneği ile kurulumları MSDE üzerinde yapar.

clip_image006

İşlemleri tamamladıktan sonra kuruluma başlıyoruz.

clip_image008

clip_image010

Kurulum bittikten sonra kurulum sihirbazımızı çalıştırıyoruz.

clip_image012

Yapılandırma sihirbazında bize hali hazırda olan bir Sharepoint database ine bağlanma imkânı sağlayabilir. Eğer herhangi bir database imiz yoksa yeni bir sunucu grubu oluşturma seçeneğini seçiyoruz.

clip_image014

Veritabanı sunucumuzu tanımlıyoruz. Veritabanı Adı listede çıkacaktır. Veritabanı erişim için kullanıcı adımızı ve parolamızı tanımlıyoruz.

clip_image016

Eğer sıfırdan bir kurulum yapıyorsak veritabanı sunucumuzu seçiyoruz. Sonrasında config database mizin adını yazıyoruz. Database erişim için kullanıcı adı ve parolamızı belirtiyoruz. Bu kullanıcın database üzerinde dbcreator yetkisi olması gerekmektedir.

clip_image018

Sonraki ekranda Sharepoint kontrol yönetimin bağlantı portunu belirtiyoruz. Default olarak kendisi bir port atayabilir. İsterseniz kendinizde boş bir port tanımlayabilirsiniz. Portal üzerinde kullanıcı doğrulaması için istediğiniz modeli seçiyorsunuz. Ben burada NTLM seçiyorum.

clip_image020

clip_image022

clip_image024

clip_image026

Kurulumumuz bitti. Bundan sonra yapmamız gereken Sharepoint Yönetim Merkezimize giriyoruz.

clip_image028

İlk olarak yapmamız gereken sunucudaki hizmetleri çalıştırmamız gerekiyor. İşlemler>Sunucudaki Hizmetleri bölümüne giriyoruz. Burdaki tüm servislerimizi başlatıyoruz. Bu işlemleri yaparken karşımıza o servisleri çalıştırmak için bir kullanıcı adı soracaktır. Ayrıca Sharepoint Arama Servisinin indexleme zamanlarını da bu ekranlarda belirtiyoruz.

clip_image030

Daha sonra İşlemler>Giden E-posta ayarlarından Sharepointin uyarılar, bilgilendirmeler için kullanılacak mail adresini tanımlıyoruz.

clip_image032

Bir sonraki görevimiz Paylaşılan Hizmetler Yönetimine girerek yeni bir SSP(Shared Service Provider) tanımlıyoruz.

clip_image034

Öncelikle SSP adımızı veriyoruz. Sonrasında SSP nin üzerinde çalışacağı web uygulamamızı seçiyoruz. Eğer yoksa yeni bir web uygulaması oluşturuyoruz.

clip_image036

Yeni bir uygulaması oluşturuyoruz. Burda Web sitemizin bağlantı portunu, Web sitemizin kimlik doğrulaması, erişim linki ve çalıştıracak kullanıcı adını belirtiyoruz.

clip_image038

SSP servisimizi başarılı bir şekilde kurduğumuzu görüyoruz.

clip_image040

Şimdi şirketimizin intranet sitesini oluşturmak için Uygulama Yönetimi>Web uygulaması oluşturma kısmına girerek yeni bir web uygulaması oluşturuyoruz.

clip_image042

Sitemizi oluşturduktan bunun erişimi için Uygulama Yönetimi>Site Koleksiyonu Oluşturma bölümüne girerek Intranet sitemizle ilgili Başlığımızı tanımlıyoruz. Daha sonra hazır bir şablon kullanabiliriz yâda boş bir site tanımlayarak kendimiz içeriğini doldurabiliriz.

clip_image044

En sonunda intranetimiz hazır geldi.

Bu işlemlerden sonra site eylemlerine girerek kullanıcılarımızı tek tek intranetimize tanımlıyoruz. Eğer toplu bir şekilde hepsini almak isterseniz Yönetim Merkezinden SSP sayfasından Kullanıcı profillerine girerek toplu bir şekilde çekebilirsiniz. Karşılaştığınız sorunlar ile ilgili forumun Sharepoint kısmından sorunlarınızı iletebilirsiniz.

Bir sonraki makalede ISO kapsamında dokuman kütüphanesi oluşturma, iş akışlarına sokma ve versiyonlama yönetimi ile ilgili örnekler yapacağız.Emre BALCI

Categories: Microsoft SharePoint

Web Partlarda Farkli Veri Turlerinde Toolpart Kullanimi

February 18th, 2009 Comments off

Sharepoint içerisinde özel içeriklerin görüntülenebilmesi ve kişiselleştirilebilme için webpartları kullandığımızdan daha önce söz etmiştik. Hazırladığımız webpartlarda dinamikliğin sağlanabilmesi için “EditorPart” veya “ToolPart” olarak adlandırabileceğimiz, webpartın önyüzünde görüntülenmeyen ancak düzenleme modundayken görebildiğimiz bir konsolu vardır. Bu konsol içerisinde Appearance, Layout ve Advanced isminde varsayılan tablar her zaman bulunur ancak bizde bu bölüme yeni kontroller ekleyebilir ve bu kontrollerde yapacağımız değişikliğin webpart içerisinde aktif hale gelmesini sağlayabiliriz.

image001

Örneğin Sharepoint’te yer alan bir listedeki verileri çeken ve sizin istediğiniz farklı bir görünümde gösteren bir webpart yazdığımızı varsayalım. Sharepoint’te yer alan 100 tane listeniz varsa ve hepsinde aynı görünüm değişikliğini yapmak istiyorsanız 100 farklı webpart yazmanız gerekir. Oysa ToolPart’ı kullanarak okunacak listeyi parametre olarak geçebiliecek olursa tek bir dinamik webpart yazıp her sayfada webpartın okuyacağı liste özelliğini değiştirip aynı webpartı tekrar tekrar kullanabiliriz.

Toolpart içerisinde pek çok kontrol türünden ASP.Net kontrolleri yaratabilirsiniz. Textbox, dropdownlist, checkbox, radiobutton gibi. Şimdi bir toolpart nesnesini projemize nasıl ekleriz ve yukarıda bahsettiğim türde farklı veri türlerini barındıran toolpart kontrollerini nasıl yaratabiliriz bunu örnekleyelim.

TextBox Türünde

private string _myString;

[Category("Custom Properties")]
[DefaultValue(c_MyStringDefault)]
[WebPartStorage(Storage.Personal)]
[FriendlyNameAttribute("Custom String")]
[Description("Type a string value.")]
[Browsable(true)]
[XmlElement(ElementName = "MyString")]
public string MyString
{
get
{
return _myString;
}
set
{
_myString = value;
}
}

Checkbox Türünde

private bool _myBool;

[Category("Custom Properties")]
[DefaultValue(c_MyBoolDefault)]
[WebPartStorage(Storage.Personal)]
[FriendlyNameAttribute("Custom Boolean")]
[Description("Select to set value to True.")]
[Browsable(true)]
[XmlElement(ElementName = "MyBoolean")]
public bool MyBool
{
get
{
return _myBool;
}
set
{
_myBool = value;
}
}

DropDownList Türünde

public enum myFarmEnum
{
barn = 0,
tractor,
hay,
pitchfork
};

[Category("Custom Properties")]
[DefaultValue(myFarmEnum.hay)]
[WebPartStorage(Storage.Personal)]
[FriendlyName("Custom Enum")]
[Description("Select a value from the dropdown list.")]
[Browsable(true)]
public myFarmEnum MyEnum
{
get
{
return _myEnum;
}
set
{
_myEnum = value;
}
}

DateTime Türünde

private System.DateTime _myDateTime;

[Category("Custom Properties")]
[WebPartStorage(Storage.Personal)]
[FriendlyNameAttribute("Custom Date Time")]
[Description("Type a DateTime value.")]
[Browsable(true)]
[XmlElement(typeof(System.DateTime))]
public System.DateTime MyDateTime
{
get
{
return _myDateTime;
}
set
{
_myDateTime = value;
}
}

Yukarıdaki örnekler ve birkaç farklı örneği projemize eklediğimizde aşağıdaki şekilde bir ekran görüntüsüyle karşılaşacağız webpartımızın editorpartında.

image002

Toolparta girdiğimiz bilgilerin webpartın “Render” metodunda görüntülenebilmesi için ise standart .Net bilgimizden başka bir şeye ihtiyacımız yok.

protected override void RenderWebPart(HtmlTextWriter output)
{
output.Write(“<b>Stored Property Values</b>”);
output.Write(“<br><b>String: </b>” + this.MyString);
output.Write(“<br><b>Boolean: </b>” + this.MyBool.ToString());
output.Write(“<br><b>Int: </b>” + this.MyInt.ToString());
output.Write(“<br><b>Float: </b>” + this.MyFloat.ToString());
output.Write(“<br><b>DateTime: </b>” + this.MyDateTime.ToString());
output.Write(“<br><b>Enum: </b>” + this.MyEnum.ToString());
output.Write(“<br><b>Color Enum: </b>” + this.MyColor.ToString());
}

Evren AYAN
WSS Architecture MVP, ISPA Regional Evangelist

Categories: Microsoft SharePoint

Microsoft Office Sharepoint Designer 2007 Is Akısı Aktiviteleri

February 18th, 2009 Comments off

Microsoft Office Sharepoint Designer 2007 içerisinde varsayılan olarak 21 farklı iş akışı aktivitesi yer almaktadır. Bu aktiviteler aracılığı ile iş akışı adımlarında kullanıcılara mail gönderilmesi, görev atanması, liste öğelerinin check-in/check-out edilmesi, gruplara görev atanması, iş akışının bekletilmesi, log kayıtlarının tutulması gibi işlemler gerçekleştirilebilir. Aşağıda varsayılan olarak gelen bu aktivitelerin hangi işlemler için kullanıldığı yer almaktadır.

MICROSOFT OFFICE SHAREPOINT DESIGNER 2007 VARSAYILAN AKTİVİTELERİ

Add Time To Date : Tarih tütündeki verilerle çalışmanızı ve bu verileri bir değişken içerisinde tutabilmenizi sağlar. Mevcut bir değişken içerisindeki tarih/saat formatındaki değere zaman eklemenizi ve çıkarmanızı sağlar.

Assign a Form To a Group : Grup üyelerine veya kullanıcılara bir form atamanızı sağlar. Atanacak formun oluşturulması için bir sihirbaz görüntülenir. Sihirbaz aracılığı ile yeni bir görev içerik türü ve içerik türüne bağlı alanlar yaratılır. Kullanıcı seçim listesinden seçilecek kullanıcılara veya gruplara oluşturulan içerik türü bir anket gibi atanır.

Assign a To Do Item : Karşınıza çıkacak bir diyalog kutusu aracılığı ile basit yapılacak işler / görev öğesi yaratılabilmesine ve kullanıcılara atanmasına yardımcı olur.

Build Dynamic String : Adım adım bir text değişken yaratılmasına yardımcı olur. Açılan editör ekranı aracılığı ile look-up alanlar text değişkenin içerisine yerleştirilir. Text değişkenler arasında birleştirme işlemi “+” (artı) operatörü kullanılarak gerçekleştirilir.

Check-In Item : Check-Out konumdaki öğenin tekrar kullanımında verilmesine olanak tanır. Bu işlem gerçekleşirken yeni versiyon oluşturma da gerçekleşebileceğinden Check-In işlemi için yorum yazılmasını ister.

Check-Out Item : Check-In konumdaki öğrenin kullanıma alınmasına olanak tanır. Bu işlem sonrası öğe üzerinde versiyonlama aktif ise minör versiyonlar oluşturulur. (0.1, 0.2 gibi) Düzenleme sonrası öğenin geri iade edilmesi (Check-In yapılması) gerekir.

Collect Data From a User : Bir sihirbaz aracılığı ile kullanıcı için görev atanmasına yardımcı olur. Atanacak formun oluşturulması için bir sihirbaz görüntülenir. Sihirbaz aracılığı ile yeni bir görev içerik türü ve içerik türüne bağlı alanlar yaratılır. Kullanıcı seçim listesinden seçilecek kullanıcıya oluşturulan içerik türünden bir görev atanır. İşlem sonrası oluşturulan görevin ID bilgisi output değişken olarak iş akışı içerisinde kullanılabilecek şekilde dışarı verilir.

Delete Item : Herhangi bir liste öğesinin iş akışı esnasında silinmesi için kullanılır. Özellikle temp olarak yaratılmış olan öğelerin başka bir listede gerçek kayıt olarak yaratılması durumunda iş akışında temp kayıt ile olan işlem tamamlandığında bu öğenin silinmesi için kullanılır.

Discard Check-Out : Check-Out edilmiş bir öğe üzerindeki kullanıma almanın kaldırılması amacıyla kullanılır. Bu işlem sonrasında eğer öğede bir güncelleme yapıldıysa bu güncellemede geri alınır ve yaratılan minör versiyon silinir.

Do Calculation : İki alan arasında temel hesaplama işlemlerinin yapılabilmesine olanak tanır (toplama, çıkarma, çarpma, bölme, mod alma gibi).

Log To History List : İş akışı esnasında look-up alan değerlerinin veya manuel olarak yazılacak açıklamaların iş akışı geçmişine kaydedilmesini sağlar. İş akışının sistemsel akışını izlemek ve nerede kaldığını öğrenmek adına kullanılabilecek manuel tek loglama aktivitesidir.

Pause for Duration : İş akışının gün, saat, dakika gibi zamansal bir değer boyunca beklemesini sağlar. İş akışı bu süre boyunca sadece bekleme görevini üstlenir ve sürenin sonunda kaldığı yerden devam eder.

Pause Until Date : İş akışının spesifik bir tarihe kadar beklemesini sağlar. Belirtilen tarih geldiğinde iş akışı kaldığı yerden devam eder.

Send an Email : İş akışı esnasında kullanıcılara ve bilgi sahibi olması gereken kişilere HTML tabanlı email gönderme işlemi yapar. Açılan editör HTML tabanlıdır ancak herhangi bir tasarımsal WYSWYG editör kullanıcının karşısına getirilmeyecek, HTML’in manuel olarak yazılması istenecektir. İstenirse editör içerisinde yer alan look-up butonu aracılığı ile iş akışı değişkenleri, iş akışının çalıştığı öğeye ilişkin alan değerleri veya farklı bir listedeki alan değerleri mailin içerisine eklenebilir.

Set Content Approval Status : İlgili öğe üzerinde içerik onayı çalışıyorsa içeriğin onaylanmasını sağlar. (Örneğin onaylamadan yayınlanmasını istemediğiniz dokümanlar). Approval esnasında hangi yorumun yazılacağı belirtilebilir. Ancak bu yorum bu iş akışının tüm instancelarında aynı text ile yer alacağından yorum alanının bir look-up alandan alınması daha yararlıdır.

Set Field In Current Item : İş akışının üzerinde çalıştığı öğe içinde bulunan veya farklı bir listede yer alan alana değer ataması için kullanılır. Değer ataması esnasında text türde manuel veriler kabul edilebileceği gibi look-up alanlardan veri girişi de kabul edilir. Unutulmaması gereken nokta eğer farklı bir listedeki öğenin alanınına değer ataması yapılacaksa ilgili sihirbaz SQL sorgularındaki “WHERE” anahtarına benzeyen bir bölüm açacaktır. Bu alana iş akışının üzerinde çalıştırğı öğe ile değer ataması yapılmak istenen liste arasındaki ortak alanlar belirtilmelidir. Aksi halde değer atama işlemi diğer listedeki tüm öğeler için geçerli olacaktır.

Set Time Portion of Date/Time Field : Add Time To Date aktivitesi gibi çalışır. Tarih/Saat türündeki öğe alanlarına dakika, saat gibi zaman dilimlerinin eklenmesine olanak tanır.

Set Workflow Variable : İş akışı esnasında çeşitli aktivitelerin yaratmış olduğu veya sizin tarafınızdan yaratılan değişkenlere değer ataması yapmaya olanak tanır. Değer ataması manuel olabileceği gibi bu işlem esnasında look-up alanlardan da yararlanılabilir.

Stop Workflow : İş akışının durdurulmasını sağlar. Durdurma işlemi esnasında sebep belirten bir yorum girilmesi zorunludur. Yorum alanı manuel girilebileceği gibi look-up bir alandan da yararlanılabilir.

Update List Item : Herhangi bir liste öğesinin iş akışı içerisinden güncellenmesini sağlar. Liste öğesi iş akışının üzerinde çalışmakta olduğu öğe olabileceği gibi farklı bir listedeki alanda güncellenebilir. Farklı bir listedeki alanın güncellenecek olması durumunda iş akışının üzerinde çalıştığı liste ile bu liste arasında ortak bir alanın bulunması ve SQL’deki “WHERE” koşuluna benzeyen bölümde bu ortak alanlara ilişkin bağın belirtilmesi gerekir.

Wait for Field Change in Current Item : İş akışını belirtilen alandaki değişim gerçekleşene kadar beklemeye alır. Belirtilen alandaki değişim gerçekleştiğinde iş akışı kaldığı yerden iş akışı adımlarını gerçekleştirmeye devam eder. Bu aktivite Sharepoint Designer’ın sequential formattaki akış modelini kısmen state Machine Workflow’a çevirir. Ve böylelikle forward-only olan yapının dinamik koşullara göre bekletilebilmesine olanak tanır.

Tüm bu Microsoft Office Sharepoint Designer 2007 aktivitelerine ek olarak internetten edinilebilecek veya gerekli extensionları yüklemenin ardından Visual Studio 2005 ve Visual Studio 2008 aracılığı ile kendi yaratabileceğiniz Sharepoint Designer aktivitelerini de mevcut sisteminizde kullanabilirsiniz.

Sharepoint Designer 2007 üzerinde kullanılabilecek son derece kullanışlı pek çok aktiviteye http://www.codeplex.com adresinden veya yapımcı firmaların web adreslerinden ulaşılabilir. Ücretli yada ücretsiz olabilecek bu aktivitelerin size iletilen kurulum materyallerine göre farklı yükleme alternatifleri olacaktır. Aşağıda bu yöntemlerin adımlarından bahsedilmektedir.

ÖZEL AKTİVİTENİN MANUEL OLARAK YÜKLENMESİ

Kendinizin yazdığınız veya internetten kaynak kodunu (veya assembly, actions dosyası gibi çıktılarını) indirdiğiniz bir aktivitenin Microsoft Office Sharepoint Designer 2007 aracılığı ile kullanılabilmesi için öncelikle bazı manuel adımların atılması gerekir.

Elde edilen kaynakta aşağıdaki materyallerin eksiksiz olarak bulunması veya yaratılması gerekir.

  • Tasarlanan iş akışı aktivitesinin assemblysi (Stronge name bir assembly olması gerekir GAC deploymentı için)
  • İş akışı aktivitesinin Sharepoint Designer’a tanımlanabilmesi için gerekli olan “*.ACTIONS” dosyası.

Tüm materyallerin hazır olmasının ardından aşağıdaki iş adımları ile ilgili aktivite kullanıma hazır hale getirilebilir.

  1. İş akışına ait assemblynin GAC’a deploy edilmesi. Bu işlem için ilgili dll’in C:\WINDOWS\Assembly klasörüne sürüklenip bırakılması veya GACUTIL aracı kullanılarak GAC’a deploy edilmesi gerekmektedir.
  2. Aktiviteye ilişkin Sharepoint tanımlamalarının yapılabilmesi adına aktivitenin kullanılacağı web uygulamasının C:\Inetpub\wwwroot\wss\Virtual Directories dizinindeki web.config dosyasına gidilmeli ve <SafeContols></SafeControls> taglarının arasına asseblye ilişkin safe control tanımlanmasının yapılması gerekir. Bu işlem için SafeControls tagındaki herhangi bir satır kopyalanır ve içeririsnde yer alan AssemblyName, Culture, Version, NameSpace, PublicKeyToken ifadeleri sizin assemblynizinkiyle değiştirilir.

    Kendi assemblynize ilişkin bu bilgileri elde etmek için bir öndeki adımda deploy ettiğinizi C:\WINDOWS\Assembly adresinde dll’inizi bulun ve uzerinde sağ tıklayıp “Özellikler” alanına gelin. Açılan pencere az önce saydığımız tüm bilgileri size iletiyor olacaktır.

  3. Aynı web.config dosyasında yer alan <System.Workflow.ComponentModel.WorkflowCompiler> tagının içerisine yine assemblynize ilişkin bilgilerin girilmesi. Bu işlem için SafeControls eklemesinde olduğu gibi içerideki satırlardan birini kopyalayabilir ve değişmesi gereken AssemblyName, PublicKeyToken, Version, Culture ifadelerini değiştirebilirsiniz.
  4. web.config deki bu işlemlerin ardından dosyayı kaydedin ve kapatın.
  5. Bir sonraki adımda Sharepoint Designer’ın tanımladığınız iş akış aktivitesine dair bilgileri okuyabilmesi ve aktivite listesinde buna ilişkin kayıtları size gösterebilmesi için gerekli tanımlamaları yapıyoruz. Bu işlem için C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1033\Workflow dizinine kadar gidin. Burada “WSS.ACTIONS” isimli bir dosya göreceksiniz. Eğer iş akış aktivitesi materyalleriniz arasında *.ACTIONS uzantılı bir dosya varsa onu buraya kopyalayın. Eğer yoksa sizin yaratmanız gerekecektir. Bu durumda mevcut WSS.ACTIONS dosyasını bir XML editörü ile açın ve içerisinden işinize en çok yarayacak(Sizin aktivitenize en fazla benzeyen) bir iş akışı aktivitesinin tanımlama textini kopyalayın. Yeni oluşturduğunuz bir text editöründe bu dosya içerisinde sizin aktivitenize göre gerekli alan adı ve tanımlama değişikliklerini yapın ve kaydedin.

    Şayet Türkçe bir sisteminiz varsa bu işlemin aynısını C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1055\Workflow klasöründe de yapın.

  6. IIS’i restart edin
  7. Microsoft Office Sharepoint Designer 2007’i açın ve yeni bir iş akışı oluturup Actions bölümünde tanımlamasını yaptığınız aktiviteyi gördüğünüzü doğrulayın.

ÖZEL AKTİVİTELERİN SETUP İLE YÜKLENMESİ

Şayet kullanmayı planladığınız ve ihtiyaç duyduğunuz özel aktivite daha önce bir başkası tarafından yazılmışsa ve içeriğe güveniyor, kullanmak istiyorsanız bunu internetten indirebilirsiniz. Son dönemde karşımıza çıkan pek çok aktivite setup dosyaları veya setup.bat batchleri ile beraber gelmektedir. Bu durumda yapacağınız yükleme çok daha kolay olacaktır. Aşağıda bu işlemin adımları anlatılmıştır.

  1. İnternetten indirdiğiniz setup dosyasını Sharepoint’in yüklü olduğu sunucu üzerinde çalıştırın.
  2. Setup uygulaması öncelikle sistem doğrulaması yapacaktır. (Kimi eklentiler SP1 istemekte ve bunun gibi yüklemeler ile sisteminizin uygun versiyonda olup olmadığını kontrol etmektedir.)
  3. Şayet bir önceki adım başarılı geçtiyse “İleri” butonları aracılığı ile kurulumu tamamlayın.

Bu işlem son derece hızlı gerçekleşecektir. Sonrasında IIS restart gibi işlemlerde setup uygulaması tarafından yapılmış olacağından doğrudan Sharepoint Designer’deki kontrol aşamalarına geçebilirsiniz. Şayet ilgili aktivite çalışmayacak olursa bir önceki başlıkta anlattığımız “Manuel Yükleme” adımlarının tamamını sırayla ilgili dosya sisteminde kontrol edin ve eksik kalan adımlar varsa yükleme sonrası bunları siz tamamlayın. (Örneğin sisteminiz Türkçe’dir ve ilgili setup sadece C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1033\Workflow klasörüne ACTIONS dosyasını kopyalamıştır. Bu durumda 1055 klasörüne sizin kopyalamanız gerekecektir.

Evren AYAN
WSS Architecture MVP, ISPA Regional Evangelist

Categories: Microsoft SharePoint

Microsoft Office Sharepoint Designer 2007 Is Akıs Genel Ozellikleri

February 18th, 2009 Comments off

Microsoft Office Sharepoint Designer 2007, Microsoft Office Sharepoint Server 2007 ve Windows Sharepoint Services 3.0 üzerinde pek çok özelleştirme işleminin yapılabilmesi için tek araç konumundadır.

Microsoft’un Office 2007 ürününde Frontpage’e yer vermemesi ve Frontpage’in üstlendiği görevlerin tamamına ek olarak MOSS 2007 ve WSS 3.0 üzerinde özelleştirme çalışmaları için de bu aracı adreslemesi bunda temel sebeptir.

Teknik anlamda Sharepoint Designer’ın tek ürün olma sebebi ise Sharepoint sistemlerinde sayfa, stil dosyası, imajlar, içerikler gibi tüm yapıların veritabanında binary formatta tutulması ve bu binary dosyalar üzerinde güncelleme yeteneğinin sadece bu üründe yer alması gösterilebilir.

Sharepoint Designer aracılığı ile Sharepoint sistemleri üzerinde tasarım özelleştirmesinin yapılabilmesinin yanı sıra bazı etkin kullanıcı ve yönetici eylemleri de bu ürün aracılığı ile yapılabilmektedir. Örneğin doküman kütüphanesi, liste, anket gibi Sharepoint öğelerinin yaratılabilmesi, sitelerin yedeğinin alınabilmesi, yeni sayfa ve layoutların yaratılabilmesi bu eylemlere örnek olarak gösterilebilir. Yine Sharepoint Designer aracılığı ile yapılabilecek eylemlerden bir tanesi de iş akışlarının hazırlanabilmesi ve bu iş akışlarının mevcut sistem üzerindeki liste ve kütüphanelere deploy edilebilmesidir.

SHAREPOINT DESIGNER İŞ AKIŞI YETENEKLERİ

Microsoft Office Sharepoint Designer aracılığı ile yaratılabilecek iş akışları in-browser iş akışlarına göre bazı temel farklılıklar ve artılar gösterir. İki iş akışı arasındaki temel farklar aşağıda listelenmiştir.

  • In-browser iş akışlarında herhangi bir iş akışı koşulu belirtilemezken Sharepoint Designer iş akışlarında kütüphane veya listedeki alanlara ilişkin koşullar tanımlanabilir. (Örneğin masraf formunun 500 YTL’den büyük bir tutara sahio olması durumu gibi)
  • In-browser iş akışlarında görev formu sabit iken (onay/red, yorum gibi alanlar) Sharepoint Designer iş akışlarında özelleştirilmiş görev formları aracılığı ile kullanıcıdan daha fazla bilgi toplanabilir.
  • In-browser iş akışlarında organizasyon hiyerarşisi gibi iş akışlarında dinamikliği sağlayacak yapılar sunmak son derece zorken Sharepoint Designer iş akışlarında bu tip bilgiler dışarıdaki veya içerideki bir kaynaktan okunarak iş akışına dahil edilebilir.
  • In-browser iş akışlarında iş akışı esnasında yapılabilecekler kısıtlıyken Sharepoint Designer iş akışlarında 21 adet temel ve eklenebilecek özel aktiviteler ile pek çok sayıda özel aktivitenin gerçekleşmesi sağlanabilir. (Örneğin liste öğesinin güncellenmesi, log kaydının girilmesi, iş akışının bekletilebilmesi gibi)

Yukarıda sayılan farklar sebebiyle Sharepoint ortamında iş akışı hazırlanması konusunda en çok tercih edilebilecek yöntemlerden bir tanesi Sharepoint Designer iş akışlarıdır. Bu türün daha da gelişmişi olarak adlandırabileceğimiz bir diğer yöntem ise Windows Workflow Foundation kullanarak iş akışları geliştirmektir ki .Net Framework 3.0 / 3.5 bilgisi gerektirmesi ve sonuç itibariyle kod yazıyor olmanız sebebiyle development süresini uzatacak ancak diğer yandan çok daha esnek yöntemleri kullanabileceğiniz bir iş akışı geliştirme ortamıdır.

Microsoft Office Sharepoint Designer 2007 kolay bir arayüzde tek bir satır kod yazmaya gerek kalmaksızın iş akışlarını oluşturmanıza ve deploy etmenize imkan verecek şekilde tasarlanmıştır. Özel aktivitelerin yazılabiliyor ve eklenebiliyor olması aracın varsayılan özelliklerinin dışında da yeteneklere kavuşabilmesini sağlayacaktır.

SHAREPOINT DESIGNER ILE İŞ AKIŞI GELİŞTİRMEK

Microsoft Office Sharepoint Designer 2007 ile iş akışı geliştirmek için öncelikle iş akışını hangi kütüphane veya liste üzerinde çalıştırmak istediğinizi belirlemeniz gerekir. Çünkü Sharepoint Designer’da iş akışı, tasarım özelleştirmesi gibi işlemler site bazında yapılır. İlgili kütüphane veya listeye karar verildikten File>New>Workflow seçeneği aracılığı ile yeni iş akışını yaratacağınız sihirbaz karşınıza getirilir.

image001

Bu ekranda iş akışına o site için tekil bir isim vermeli ve iş akışının hangi liste veya kütüphane üzerinde çalışacağını belirtmelisiniz. İş akışı sisteme deploy edildikten sonra bu iki alandaki değerler değiştirilemeyecektir.

Bu temel bilgileri verdikten sonra iş akışının başlama şeklini seçmeniz gerekir. Üç farklı şekilde başlatılabilir Sharepoint Designer iş akışları:

  1. Manuel : Bu durumda kullanıcı liste veya kütüphanede ilgili öğenin üzerindeki menüyü açar ve “Workflows” butonuna tıkladığı zaman birazdan tasarlayacağınıziş akışını listede görür. İsterse o anda sadece ilgili öğe için manuel bir iş akışı başlatabilir.
  2. “Created” Anında : Bu durumda iş akışı seçtiğiniz kütüphane veya listeye atanır ve deploy anından itibaren o liste veya kütüphanede yaratılacak tüm öğeler için otomatik olarak çalışır.
  3. “Modified” Anında : Bu durumda iş akışı seçtiğiniz kütüphane veya listeye atananır ve deploy anından itibaren o liste veya kütüphanede değiştirilecek tüm öğeler için otomatik olarak başlar.

Aynı ekranda üç adet konfigürasyon butonu da görmekteyiz. Bunlar aşağıda belirtilen işlemler için kullanılmaktadır.

  1. Check Workflow : İş akışı içerisinde herhangi bir hata yapılıp yapılmadığını denetler. İş akışı sihirbazının devamında da sürekli olarak görünür. Bir iş akışını deploy etmeden önce bu butona tıklayarak çalışmayı engelleyici bir hata yapıp yapmadığınızı görebilirsiniz.
  2. Initiation : İş akışının initiation yani başlangıç aşamasında çalışacak formu tasarlamanızı sağlar. Özellikle bir iş akışı manuel olarak kullanıcı tarafından başlatılacaksa initiation formunu başlangıç anında kullanıcıdan alması gereken bilgilere göre konfigüre edebilirisiniz. Butona tıklamanızın ardından bir sihirbaz başlatılacak ve iş akışı başlatılırken kullanıcıya gösterilip veri toplanacak formun alanlarını oluşturmanız sağlanacaktır.
  3. Variables : İş akışı değişkenlerini yaratmanıza olanak tanır. İş akışının devamı boyunca kullanıcıdan topladığınız bilgileri veya iş akışı içerisinde çalıştırdığınız aktiviterlerden dönen sonuçları burada yaratacağınız değişken listesinde depolayabilirsiniz.

Tüm bu ana konfigürasyonları yaptıktan sonra “Next” butonuna tıklayarak iş akışında tanımlayacağınız koşulları ve bu koşullara karşılık iş akışının çalıştıracağı aktiviteleri tasarlayabilirsiniz.

image002

Bu bölümde ekranın sağ köşesinde gördüğünüz “Workflow Steps” kısmı iş akışındaki mevcut adımlarınızı görüntüler ve yeni adımlar yaratabilmenizi sağlar. Böylelikle iş akışı esnasında karmaşık bir tasarım yerine adım adım ilerlemeleri tasarlayabilmenize olanak tanır.

Ekranın sol bölümü ise seçili adımda iş akışının yapması gereken koşul kontrolleri ve bu koşullara ilişkin çalıştıracağı aktiviteleri gösterir. Burada “Conditions” alanını kullanarak iş akışının üzerinde çalıştığı liste veya kütüphanede bulunan alanların değerlerini karşılaştırabilip üzerinde koşul çalıştırma işlemi yapabileceğiniz gibi farklı kütüphane ve listedeki alanlar için de bu işlemi gerçekleştirebilirsiniz.

Aynı bölümde yer alan “Actions” butonu aracılığı ile ise üstte seçmiş olduğunuz koşulun gerçeklemesi durumunda iş akışının alması gereken aksiyonları sıralayabilirsiniz. Örneğin koşul kısmında listede yer alan “Tutar” alanının “500” değerinden büyük yada küçük olması koşulunu sorgulayabilir ve bu koşul doğru ise o anki öğe için alttaki Actions bölümünde bir kullanıcıya görev oluşturması, aynı kullanıcıya email ile görevi bildirmesi, iş akışı loglarına görevin yaratıldığına dair bir mesaj yazmasını ve görevin atandığı kullanıcının bir aksiyonu yerine getirmesini beklemesini söyleyebilirsiniz. Gerekli aksiyon yerine geldiğinde siz ikinci iş akışı adımında yeni bir koşul ve yeni aksiyonları tanımlamış olabilirsiniz.

Bu bölümde seçilecek aksiyonlar 21 varsayılan ve bunun üzerinde sizin ekleyeceğiniz özel aksiyonlar olabilir. Dolayısıyla Sharepoint Designer’ın varsayılanları ile sınırlı kalmayıp edineceğiniz veya yazacağınız özel aksiyonlar ile iş akışının kendi sistemleriniz ile entegre olmasını sağlayabilirsiniz. Örneğin yazacağınız özel bir aktivite aracılığı ile iş akışına konu olan öğaye ait bilgileri bir veritabanı sistemine yazdırabilirsiniz.

ŞAYET GÖREV ATANAN BİR İŞ AKIŞINIZ VAR İSE

Sharepoint Designer aracılığı ile yaratılan iş akışları her zaman görev atama yönünde ilerlemez. Bazen bir öğenin yaratılmasını takiben o öğe üzerindeki yetkileri değiştirmek veya o öğenin yaratıldığından bazı kullanıcıları haberdar etmek de bir iş akışı olarak adlandırılabilir.

Eğer hazırladığınız iş akışında bir kullanıcıya görev ataması yaptıysanız ve Sharepoint Designer tarafında ikinci bir iş akışı yaratmanızı gerektirecektir. Zira ilk yarattığınız iş akışı normal bir liste veya kütüphane üzerinde çalışırken bu iş akışı içerisinden bir kullanıcıya görev oluşturduğunuzda görev öğesi bir görev listesinde yaratılacaktır. Yani yarattığınız iş akışının kontrolünde olmayan bir yerde. Bu durumda Görev listesi üzerinde çalışacak ikinci bir iş akışı yaratabilir ve yaratılan görevin durumuna göre ilk yaratılan iş akışı ile entegre olmasını sağlayabilirisiniz.

Evren AYAN
WSS Architecture MVP, ISPA Regional Evangelist

Categories: Microsoft SharePoint

Web Servislerini Kullanarak Sharepoint Listeleri ile Calısmak

February 18th, 2009 Comments off

Sharepoint amacı ve yapısı itibariyle bir veritabanı gibi çalışır. Çünkü kurumsal veya topluluk amacınız ne olursa olsun Sharepoint’i kullanım amaçlarınızdan bir tanesi de içerikleri yönetmektir. İçerik yönetimi diyoruz farkındaysanız “Doküman Yönetimi” değil. Çünkü “İçerik Yönetimi” tabiri ile sadece doküman olmayan ve saklamayı hedeflediğimiz liste türündeki verileride Sharepoint içerisinde saklıyor ve yönetiyoruz. Örneğin şirketinizin kütüphanesinde yer alan kitap ve dergileri Sharepoint siteniz aracılığı ile paylaştığınızı varsayarsak burada sakladığınız şey bir doküman değil kitapların Yazar, Sayfa Sayısı, ISBN Numarası, Yayınevi gibi profil bilgileridir.

Sharepoint’in bilgileri saklayan bir yapıda olduğunu söylediğimize göre bu bilgilere Sharepoint içerisinde yarattığımız web partlar veya Sharepoint dışındaki uygulamalarımızdan da erişebilmeyi isteriz. Aynı örnekten devam edecek olursak şirket kütüphanesinde yer alan kitapların profil bilgilerini Sharepoint sitemiz aracılığı ile saklıyoruz ve aynı zamanda bu bilgilere yazdığımız bir Windows veya Web uygulamasından da erişmek istiyoruz. Tıpkı bir veritabanından bu bilgileri okur gibi. Bu işlem için iki temel yöntem kullanabiliriz.

  • Sharepoint Object modeli aracılığı ile ilgili uygulamaya bağlanıp Microsoft.Sharepoint.dll içerisindeki metodlar ve sınıflarla bu veriye erişmek
  • Sharepoint uygulamamızın sunduğu ve ISAPI klasörü içerisinde yer alan Sharepoint web servisleri yardımıyla bu veriye erişmek

Biz burada Web Servisleri aracılığı ile veriye erişmeye ve verileri listelemeye çalışacağız. Bu işlem için öncelikle Sharepoint sitemiz içerisinde bir liste yaratıyoruz ve bu listeyede özel kolonlar ekleyip yukarıda bahsettiğimiz yazar, yayınevi, sayfa sayısı gibi bilgileri ekliyoruz. Listeyi oluşturalım ve okuyabileceğimiz birkaç test verisini ekleyelim.

image001

Şimdi bu verileri okuyacağımız bir Windows uygulaması yaratalım kendimize Visual Studio içerisinden.

image002

Formumuzunda tasarımı tamamlandıktan sonra referans olarak Sharepoint kurulumu ile beraber gelen web servislerinden lists.asmx’i ekliyoruz. Sharepoint web servisleri üzerinde çalışılan siteye göre instance üretir bu nedenle biz ana sayfa üzerindeki lists.asmx’e bağlantı kuracağız ancak sonra kod içerisinde web servis URL’ini manipüle edeceğiz.

image003

Şimdi kod kısmında root site olarak verdiğimiz bu URL’i “Test” sitesine göre değiştireceğiz. Sharepoint üzerinde web servisleri ile işlem yaparken unutmamanız gereken bazı noktalar var:

  • Web servislerinizi adresi http://<siteKoleksiyonuAdi>/<siteAdi>/_vti_bin/<servisAdi>.asmx olacak şekilde kullanmalısınız.
  • Web servislerini referans olarak eklerken site koleksiyonunun adresine göre eklemeli ve sonra kod içerisinde sitenize göre URL’i değiştirmelisiniz.
  • Web servisi ile bilgi çekme veya yazma işlemi yaparken web servisine kod üzerinden yetkili bir kullanıcının credential bilgilerini göndermelisiniz.
  • Web servisleri aracılığı ile bilgi okurken alan isimleri ve batch olan herşeyi XML olarak göndermelisiniz.

image004

Kodumuzu çalıştırdığımızda oluşturduğumuz “viewFields” alanı web servis metodumuza gönderilecek ve sadece bu listede verdiğimiz alanlara ait bilgiler XML olarak geri dönecek. Ardından XQuery ile belirttiğimiz

listItems.SelectNodes(“//*[local-name()='row']“)

komutu ile “row” cinsindeki tüm satırları okuyoruz ve datatable a ekliyoruz.

image005

Evren AYAN
WSS Architecture MVP, ISPA Regional Evangelist

Categories: Microsoft SharePoint

Temel Web Part Gelistirme Ve Deploy Etme

February 8th, 2009 Comments off

 

ASP.Net 2.0′ın hayatımıza girmesinin ardından .Net Framework içerisinde pek çok yeni kontrol grubu ve alt frameworkler ile çalışmaya başladık. Membership, Webpart gibi alt frameworkler işimizi son derece kolaylaştıran ve development süremizi kısaltan bir yapıyı hizmetimize sunmaya başladı. Aynı dönemde ortaya çıkan pek çok internet sitesinde bu alt frameworklerin kullanım örneklerini gördük ve teşvik edildik. Örneğin Live ürün ailesi içerisinde yer alan “Spaces” bize webpart konusunda örnek sunan ilk sitelerdendi. Sitenin kavuştuğu yeni yapı ile kullanabileceğimiz bölümler webpart olarak geliştirilmiş ve istediğimizi sayfamızda gösterebilir, istediğimizi engelleyebilir hale geldik. Webpartların yerlerini değiştirerek daha kişiselleştirilmiş siteler yaratabildik.

Aslında webpartın ortaya çıkışında temel nedenlerden biri de buydu. Yani sadece site sahibine değil kullanıcıya da sitenin tasarımı ve içeriği konusunda tercihte bulunma hakkı vermek. Bu sayede ben bir portala girdiğimde ana sayfada IMKB Endeksi, Döviz Kuru gibi beni daha çok ilgilendiren bölümleri görmek isterken bir başka kullanıcı aynı bölümlerde Flaş Haberler ve Oyunları görmeyi tercih edebildi.

Microsoft Office Sharepoint Server 2007 ve Windows Sharepoint Services 3.0 altyapısını kullanan sitelerde de hem developmentı parçalar halinde gerçekleştirebilmeyi sağlamak hemde sitelerin kişiselleştirilebilmesine olanak tanımak adına webpart frameworkden yoğun bir şekilde faydalanılmış durumda. Alttaki ekran görüntüsünde Sharepoint ile beraber gelen standart bir “Team Site” ın düzenleme modunu görüyorsunuz. Resimden de göreceğiniz üzere site içerisinde gördüğümüz herşey kutucuklara ayrılmış durumda ve ister kişisel tercihlerle ister yöneticilerin uygun gördükleri şekilde bu kutucukların görünümünde ve yerlerinde değişiklik yapma şansımız var.

 

image001

 

Burada gördüğümüz “Left” ve “Right” ifadeleri WebPartZone olarak isimlendirdiğimiz ASP.Net bileşenlerine karşılık geliyor. WebPartZone kontrolleri birer konteynır görevi üstlenip içerisinde webpartları barındırabiliyor. Dolayısıyla o kadar da özgür olmadığımız anlıyoruz. WebPartZone’lar dışında bir yerde webpartlarımızı görüntülememiz mümkün değil.

Hedefimizi biraz daha Sharepoint odaklı hale getirirsek akla ilk olarak şu soru gelecektir: “Neden Webpart?”

Çünkü webpart hem iç hemde dış verileri görüntüleyebilmek ve bunları modül halinde yazabilmek için elimizdeki men kullanışlı tekniği bize sunar ve Sharepoint sistemlerinde özelleştirme genellikle webpartlar aracılığı ile yapılır. Bazen site içerisinde yarattığınız bir listenin farklı bir şekilde görüntülenebilmesi için webpart yazarsınız bazense tamamen dışarıdaki bir veritabanından bilgileri okumak ve Sharepoint sisteminiz içerisinde göstermek için. Sharepoint’te temel amaç sunulabilen tüm kurumsal bilginin birlikte çalışabilirlik adına tek adresten sunulması olduğundan örneğin bir CRM uygulamanızdaki müşterileriniz için veri girişini hala uygulamanın kendisinden yaparken verilerin sorgulanması işini Sharepoint’e bırakabilirsiniz. Bu sayede CRM uygulamasını sadece veri sorgulamak için kullanacak kullanıcılarınıza CRM clientını kurmaktan kurtulabilir ve her türlü bilgiye tek ekrandan ulaşma prensibini yerine getirebilirsiniz.

Burada konu alnınacak şey webpartın ne olduğu ve temel bir “Merhaba Dünya” webpartının nasıl geliştirilip deploy edileceği konusu. Ancak konu bununla sınırlı değil elbette. Daha ileri aşamalarda daha özelleştirilebilir webpartların, birbirine bağlı webpartlarında örneklerini bulabileceksiniz.

Sharepoint sitenizde yeni bir webpart geliştirmek için öncelikle Visual Studio 2005 veya 2008′de yeni bir “Class Library” projesi yaratıyoruz. Microsoft’un hazırlamış olduğu ve çok daha hızlı webpart geliştirmenizi sağlayabilecek VS 2005 ve 2008 proje templateleri de bulunmakta, isterseniz bu templateleri de kullanabilirsiniz geliştirirken. Projemizi yaratalım.

 

 

image002

 

 

Projenizi ekledikten sonra yapmanız gereken bazı temel referans eklemeleri, using satırı eklemeleri ve WebPart sınıfından kalıtım sağlama eklentilerini yapmamız gerekiyor.Sırasıyla :

  • References bölümünde yeni bir referans olarak “System.Web” kütüphanesini ekleyin
  • using elemanı olrak “using System.Web.UI.WebControls.WebParts” namespaceini ekleyin
  • Sınıfınızın “WebPart” sınıfından referans almasını sağlayın. “TemelWP:WebPart” şeklinde.

 

image003

 

Not : WebPart sınfından referans almak için “System.Web” yerine “Microsoft.Sharepoint” kütüphanesini de tercih edebilirsiniz. Aynı WebPart sınıfını her ikisi de barındırmaktadır.

Şimdi kalıtımı sağladığımız “WebPart” sınıfındaki “Render” metodunu override edeceğiz, yani yeniden kodlayacağız. “Render” metodu webpartın içeriğinin oluşturulduğu metoddur ve string bir ifadeyle HTML olarak her türlü içeriği gönderebilirsiniz. Bu sayede ekrana bir şeyler yazdıralım.

 

image004

 

 

Webpartımız kod itibariyle hazır. Şimdi bunun Sharepoint sistemimiz tarafından kullanılabilir hale gelmesi için deploy edilmesi gerekiyor. Deploy ederken webpart projemizin oluşturduğu “dll” e ihtiyaç duyacağız. Ancak eğer GAC’a deployment yapacaksanız oluşacak assemblyi “sign” etmeniz gerekiyor. Bu işlem için Solution Explorer’da proje üzerinde sağ tıklayıp “Özellikler” penceresine ve burada da “Signing” tabına geliyoruz. “Sign the assembly” checkboxını iaretleyip alttaki dropdownmenüden “New” seçeneğini işaretliyoruz. Karşınıza assemblyniz için oluşturacağınız “snk” uzantılı dosyanın yaratılacağı basit form geldi. Herhangi bir isim verin ve “Protect my key file with a password” checkboxını kaldırın.

 

image005

 

Şimdi projenizi build edebilir ve deployment adımlarına geçebilirsiniz.

 

DEPLOYMENT ADIMLARI

  1. Elde ettiğiniz TemelWebPart.dll’i C:\Windows\assembly dizinine deploy edin. Bu işlem için gacutil’i de kullanabilirsiniz. Eğer manuel deploy edecekseniz ilgili klasör copy/paste i desteklemediğinden sürükle/bırak ile işlemi gerçekleştirebilirsiniz.
  2. Sharepoint’in hazırladığınız webpartı güvenli bulabilmesi için uygulamanın web.config dosyasında yer alan <SafeControls> bölümüne gitmeli ve webpartınızı tanıtmalısınız. Bu işlem için C:\Inetpub\wwwroot\wss\VirtualDirectories\<UygulamanizinAdi> klasöründe yer alan web.config dosyasını açın, <SafeControls> tagını bulun ve içerisine şu satırı kopyalayın. (Tabi kendi Public Key Toke’ınızla. Public Key Token’a dll’i deploy ettiğiniz GAC’dan ulaşabilirsiniz.)<SafeControl Assembly=”TemelWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=11b24de2dc63fc73″ Namespace=”TemelWebPart” TypeName=”*” Safe=”True” />

  3. IIS’i restart edin

4.     

Web uygulamanızın anasayfasını açın.(Sitenin değil, site collectionın) Site Actions>Site Settings>Modify All Site Settings bölümünde yer alan “Galleries” bölümünde “Web Parts” ı tıklayın. Yazdığınız webpartı burada göremeyeceksiniz, çünkü henüz populate etmedik. Populate edebilmek için bu ekranda “New” butonuna tıklayın. Karşınıza tüm webpartların bulunduğu bir liste gelecek. Buradan kendi webpartınızı bulun, işaretleyin ve üst bölümden “Populate” butonuna tıklayın.

image006

 

5.     

Şimdi webpartı kullanmak istediğiniz siteyi Site Actions>Edit menüsü aracılığı ile düzenleme modunda açın. Sayfada yer alan WebPartZone’ların üstünde yer alan “Add a Web Part” butonunu tıklayın ve karşınıza gelecek listeden webpartınızı seçip sayfaya ekleyin.

image007

 

6.                 

Ve sonuç …

image008

 

Evren AYAN
WSS Architecture MVP, ISPA Regional Evangelist

Categories: Microsoft SharePoint
UA-2825094-1 model ilanlari model ilanlari