(Add a Custom Button To Ribbon For a Document Library in SharePoint)
Get-itlabs.com sitemizde bir adet “Document” adlı bir doküman kitaplığımız mevcut. Bu kitaplığımıza “Status” adında bir kolon ekleyerek, buradaki belgelerin işlemde mi (onProcess) yoksa işlemi tamamlanmış (Expired) yani arşive gönderilmeye hazır mı olup olmadığını belirliyoruz. İşlemi tamamlanmış yani “Expired” olanların yine aynı sitede bulunan “Archive” adlı arşiv kitaplığımıza göndermek istiyoruz. Bunu bir workflow yardımıyla yapacağız. Fakat bu workflowun kullanıcılar tarafından işlemi tamamlanmış belgeler işaretlendikten sonra, elle çalıştırılarak seçilen dosyaların durumunu Expired yapıp, arşiv kitaplığımıza taşımak istiyoruz. Şimdi işlemleri baştan aşağı bir görelim.
Aşağıda “Document” adlı kitaplığımızı görebilirsiniz. Varsayılan kolonların yanısıra “Status” adlı belgenin durumunu gösteren kolonumuzu da görebilirsiniz. Tabi Expired olan her doküman arşive gideceği için buradaki dokümanların hepsinin OnProcess yani işlemi devam eden olması gerekir.
“Archive” adlı diğer kitaplığımızda aynı kolonlara sahip ve boş durumda. Henüz “Document” kitaplığımızda workflow oluşturup işlemlere başlamadık.
En büyük yardımcımız “Sharepoint Designer 2013” ile ana sitemizi açıp, “Workflows” linkine tıklıyoruz. Ribbon menu üzerinden “List Workflow” linkine tıklıyarak “Document” adlı kitaplığımızı seçiyoruz. Workflow adını “SendArchive”, açıklama bilgisini ve “Platform Type” kısımlarını doldurarak “OK” butonuna tıklıyoruz. Sharepoint 2013 Workflow Platform Type olarak göremiyorsanız nasıl ekleyeceğinizi görmek için tıklayınız.
Basit bir workflow yazmamız yeterli. Seçtiğimiz belgenin “Status” kolonundaki durum bilgisini “Expired” olarak değiştir. Bu dokümanı “Archive” kitaplığına kopyala. Sonrada “Document” kitaplığından bu dokümanı sil ve Workflow’u bitir.
Ardından dosya yolundan “SendArchive” sekmesine tıklayarak aşağıdaki gibi önce workflowun elle başlatılmasını işaretliyoruz. Ve workflowu “Publish” ediyoruz.
Artık workflow hazır olduğuna göre nasıl kullanacağımızı görelim. Öncelikle size uzun yolu göstereyim. “Document” kitaplığında “Document1” adlı dokümanı secerek, Ribbon menüden “FILES” sekmesi altında “Workflows” linkine tıklıyoruz.
Oluşturmuş olduğumuz workflow ismi karşımıza geliyor ve tıklıyoruz. Ve böylece workflow başlatılıyor.
Workflow sonunda aşağıda gördüğünüz gibi, “Document1” dokümanı artık burada değil.
“Archive” kitaplığımıza bu dokümanın “Expired” olarak kopyalandığını görebiliyoruz.
Fakat bir workflow çalıştırmak için bu kadar çok adımı uygulamaya gerek var mı? “Keşke Ribbon menu üzerinde bir “Archive” butonumuz olsaydı da sadece o butona tıklayarak bu Workflowu çalıştırabilseydik” diyorsanız doğru yerdesiniz. Hadi bu butonu biz kendimiz yapıp Ribbon’a ekleyelim.
Tekrar Sharepoint Designer ile sitemizi açtık ve bu defa soldaki menüden “Lists and Libraries” linkine tıklıyoruz. “Document” adlı kitaplığımızı seçiyoruz. Ribbon menüde “Custom Actions” butonu altında “View Ribbon” linkine tıklıyoruz.
Butonumuzun adını ben “Archive” olarak girdim kısa tutmakta fayda var. Sonuçta Ribbon menü küçük bir yer. Açıklama girmenizde fayda var. Yapacağı fonksiyon için “Initiate Workflow” RadioButton’ını işaretliyoruz ve oluşturmuş olduğumuz “SendArchive” workflowunu seçiyoruz. Not: Eğer bu kısımda Workflow’unuzu göremiyorsanız, başından beri Sharepoint Designer’ınız açık kalmış bu nedenle de “Refresh” yapılmasına ihtiyaç var demektir.
Aşağıda da görebileceğiniz gibi, Artık “Document” kitaplığında Ribbon üzerinde “Archive” butonumuzu görebiliyoruz. Fakat daha güzel olabilir. Butonumuza birde küçük resim ekleyelim. Fazla uğraşmadan “Paint” ile bu işi bitirelim.
Paint programında “FILE” sekmesi altında “Properties” e tıklayarak butonumuzun ölçülerini girmemiz gerek.
32×32 piksel buton resmi için standartlardan birisidir. Ayarları yapıp “OK” butonuna tıklıyoruz.
Küçük alan içerisine ben küçük bir ok figurü kullandım. Siz hazır şekillerden birini kullanabilirsiniz. Masaüstüne kaydettim.
Sitemizde “Site Assets” kitaplığımıza “Archive.png” adlı resim dosyasını kaydettim.
Sharepoint Designer ile “Document” adlı kitaplığımızın özelliklerinden “Custom Actions” başlığı altından oluşturmuş olduğumuz “Archive” butonuna çift tıklıyoruz.
İlgili ayarların alt kısmında “Button image URL (32×32)” kısmında “Browse” yardımıyla “Site Assets” te kayıtlı bulunan “Archive.png” resmini seçiyoruz ve “OK” butonuna tıklıyoruz. Eğer bu kısımda da Archive.png adlı resim dosyanızı göremiyorsanız Sharepoint Designer’I “Refresh” ile yeniden başlatmanız gerekmektedir.
Ve artık aşağıda da görebileceğiniz gibi, Archive Butonumuz resmine kavuştu. Eminim siz benden daha güzel resimler ile butonunuzu daha güzel bir görünüme kavuşturacaksınızdır. Peki butonumuzun çalışıp çalışmadığını bir görelim. “Document2” adlı belgemizi seçip “FILES” sekmesi altında yeni oluşturmuş olduğumuz “Archive” adlı butona tıklıyoruz.
Gördüğünüz gibi “Document2” de gitti.
“Archive” kitaplığımızda “Expired” olarak hem de sadece tek bir tıklama ile yerini aldı.
Faydalı olması dileğimle…
Görüşmek Üzere….Saygılar…Murat GÜL…