Hızlı ve kolay: Veri Görünümü web bölümü xslt köprü katıştırma

GÜNCELLEŞTİRME (01/17/08): Bu blog girişi daha fazla köprüyü XSL iyilik hakkında görüşmeler: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.

Genel bakış ve amaç: Ben bir kontrol panelinde bileşeni olarak hizmet etmek için basit bir çubuk grafik yaratmıştı. Grafik başka bir yazı için bina ayrıntıları kaydetmek gerekir, Ama ben bu tekniği icat etmedi (ne de soru işareti, Bu konuda). Grafikte ve ben sabit iken bir hata olduğu çıktı, Alttaki liste grafiğin arkasında işaret köprüler bazı Etiketler dönüştürmek için fırsat aldı. Örneğin, "Tut" değeri olan bir etiket olduğunu. Böylece kullanıcı tıkırtı üstünde o ve durum değeri "Tut" olan listedeki belirli girdileri aşağı matkap etiketi köprü açmak istedim.

Adımları:

  1. Kullanmak için visual studio SharePoint uyumlu IntelliSense.
  2. DVWP'ın XSLT visual Studio'ya kopyalayın (boş bir proje oluşturma, bir XSL dosyası projeye ekleyin).
  3. Pano kullanmak istediğiniz bağlantı Kopyala.
  4. XSL doğru konuma yapıştırın.
  5. URL bağımsız değişkeni ayırıcıları Tarih ve sorgu dizesindeki değiştirmek"&" "&"
  6. URL-encode bireysel değişkenleri.
  7. İçerideki şal bir <bir href…> </bir>

Örnek:

I-si olmak bir URL:

http://[sunucu]/[Site]/Lists/Open Positions/AllItems.aspx?Görünüm ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 işveren =&FilterValue1 tut =

İçine dönüştürmek:

     <bir href="Lists/Open Positions/AllItems.aspx?Görünüm = % 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1 %7 d&amp;FilterField1 işveren =&amp;FilterValue1 tut ="> Basılı tutun: </bir>

El ile ilk bağımsız değişkenden dönüştürülmüş:

{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}

Hedef:

%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1 %7 d

(Bunun içinde, Dönüşümler %7 d % 7b için Açık ayraç dönüşümler ve Kapanış ayracı)

İkinci ve üçüncü bağımsız değişken’ parametreleri ("FilterField1 =İşveren" ve "FilterValue1 =Basılı tutun" sırasıyla) Çünkü onlar güvenli olmayan herhangi bir karakter içermeyen url olarak kodlanmış olması gerekmez.

Notlar:

Bu teknik genellikle köprü nerede köprünün URL parametreleri içerir XSLT'de katıştırmak istediğiniz her yerde çalışması gerekir:

http://[sunucu]/[Site]/Lists/Open Positions/AllItems.aspx?Görünüm ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 işveren =&FilterValue1 tut =

Özel listeyi erişim ve durum sütunu el ile filtre uygulama URL'si var (Etiketlenmiş "işveren" yukarıda).

6 “Üzerine düşüncelerHızlı ve kolay: Veri Görünümü web bölümü xslt köprü katıştırma

  1. Paul Galvin

    Cristina, Bu 84EE.. listeyi kendi içinde benzersiz olarak tanımlayan bir GUID. Tarayıcınızın URL teftiş ve tarayıcı görünümünde yukarı çekerek alabilirsiniz.

    Yanıtla
  2. Cristina Perez Otaiza

    Nereden ya da nasıl bu kodu üret ' 84EEA2F5-121B-40B7-946F-0FA704A1DAA1′

    Bunu yapmak mümkün olabilir …&FilterField1 = işveren Merkezi &FilterValue1 tutun CE = / ASM?

    Veya
    Aralarında boşluk kaldırmak gerekiyor mu?

    Yanıtla
  3. Eric Anderson
    FilterValue1 değeri olarak SharePoint listesinden veri aktarmak istediğiniz durum için herhangi bir öneriniz var mı, ve nerede sütunundaki değeri ve işaretleri içerebilir? (Değer kodlama/kaçış için çok sayıda yol denedim, Ama şans düzgün geçerken çok sahibi olmayacağım.)
    Yanıtla
  4. Costas Tsaklas
    Yardım Masası uygulamasında örneğe gördüm ' fab 40'. Bilmiyorum nasıl üretileceğini ve bu yüzden sorun yapmak nasıl adımlar için sabırsızlanıyorum
    Yanıtla
  5. Paul Galvin
    Bunu uydurmadım, Ama garip bulmak ne kadar zor olduğunu.
    I deve karşıdan karşıya bu birinden sanırım işlevsel bir örnek "fab 40" şablonları.
    Bu veri görünümü web bölümü ile bir grafik oluşturur XSLT. Kesinlikle bir yayında yapmayı planlıyoruz.
    Yanıtla
  6. Costas Tsaklas
    Ben ileri bir grafik oluşturma hakkında yazı için arıyorum. Ben listelerine dayanan grafikler oluşturma hakkında bilgi için arıyordum var. (Örneğin açık, kapalı konular, yüzdeleri vs.) ve hiç bulamıyorum. Teşekkürler
    Yanıtla

Cevap bırak

E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlendi *