Latest News Blog

Follow our News Blog
where we share our knowledge

We will be posting about latest technology, techniques, tips & tricks, design and many more,
you are invited to join us too!
Wednesday, 12 February 2014 13:10

Membuat C# Viewer dengan WOPI di Sharepoint 2013

Written by

Halo khalifah bumi, kali ini kita coba bermain-main lagi dengan WOPI. Apa sih WOPI itu ? Web Application Open Interface, nah ini protocol buatan Microsoft untuk komunikasi antara WOPI Host dan WOPI App. Nah apa gunanya? Paling mudah dicerna kalau kita bicara tentang Office Web Apps 2013 yang digunakan untuk melakukan view atau edit file Microsoft office yang berada diatas sharepoint 2013 di browser, yang berperan sebagai WOPI Host disini adalah sharepoint 2013, sedangkan WOPI App adalah Office Web Apps 2013.

1

Nah, sekarang yang seru itu kita bisa bikin custom viewer sendiri dengan WOPI protocol ini. Contoh berikut kita coba bikin viewer khusus file C# di sharepoint 2013. Oke, simak langkah berikut ini:

  1. Download solusi viewer dari link ini, extract filenya
  2. Trus buka file dari folder /hosting/discovery/discovery.xml
  3. Replace kata “adserver” dengan nama server Anda, kemudian simpan
  4. Kopi web ini di server lain diluar server sharepoint dan host dengan IIS 7 yang sudah support .NET 4.5 dan ingat taruh di port 80 (non SSL).
  5. Abis itu ke sharepoint server login pake administrator, lalu buka powershell sharepoint. Dan ketik command berikut untuk meregister wopi app kita:
    New-SPWOPIBinding-ServerName[nama server viewer] –AllowHTTP

    2

  6. Abis gitu sekarang coba buka sharepoint portal kamu, buka salah satu document library dan upload file berextension .cs

  7. Abis itu coba klik file yang sudah di upload

    3

    4

  8. Otomatis file C# itu dirender di web browser Anda, begitu juga kalau Anda pilih menu “Edit in Browser”

    5

  9. Nah sekarang kita konfigurasi supaya bisa muncul previewnya di search result. Buka powershell sharepoint di server sharepoint lalu ketik begini:

    $ssa= Get-SPServiceApplication| ?{$_.TypeName -eq"Search Service Application"}
    New-SPEnterpriseSearchCrawlExtension-namecs -SearchApplication$ssa
  10. Terus buka regedit dari Start > ketik “Regedit.exe

  11. Lalu expand ke folder HKEY Local Machine, HKLM\SOFTWARE\Microsoft\Office Server\15.0\Search\Setup\ContentIndexCommon\Filters\Extensions

  12. Disitu klik kanan pilih “new key” dan ketik “.cs

  13. Klik dua kali di default value, trus ubah dengan “{0FF1CE15-002C-0000-0000-000000000000}

  14. Trus balik ke powershell dan ketik “Restart-Service OSearch15

  15. Sekarang balik ke portal, buka Site Settings > Design Manager

  16. Pilih “Display Templates”, lalu upload file “Item_Cs.html” dan “Item_Cs_HoverPanel.html” trus publish deh major versionnya. Filenya download disini.

  17. Trus ke Site Settings > Search Result Types

  18. Add new search result type, kasih nama “C# Files”,

  19. Dibawah Conditions chooseShow more conditions kemudian pilih property FileExtension, set “Equals any of…” dan ketik “cs”

  20. Di bagian Actions pilih “Cs item“ dan OK

  21. Trus coba aja search file C#-nya harusnya muncul kaya begini

    6

Nah Asyik khan… ni sedikit penjelasan cara kerjanya:

  • Kalau lihat di solusi viewer-nya itu cek ke folder /hosting/discovery/discovery.xml

    7

  • File ini yang dibaca sama command New-SPWOPIBinding pas kita ketik di powershell. File ini meregisterasikan viewer/editor untuk file extension tertentu di sharepoint. Sehingga ketika kita pilih file di doclib maka viewer ini yang dipanggil. Jika Anda ingin menghapus binding ini bisa dengan command “Remove-SPWOPIBinding-Server [nama server]” di powershell
  • Step 9 – 20 menunjukan bahwa itu adalah langkah untuk meregisterasikan file dengan ekstensi .cs agar bisa di-index oleh search service dan dibuka dengan viewer custom buatan kita.

Ya semoga manfaat, berkarya terus rekans.

Fadhil

© Copyright 2019 PT. Gravicode Multinovative Plexindo. All Rights Reserved.

Explore

Reach Us

This email address is being protected from spambots. You need JavaScript enabled to view it.