Arkib Kategori: SharePoint Pembangunan

Calendar Buluh Berinteraksi dengan SharePoint Punca "Satu kesilapan yang tidak dijangka berlaku"

Hari ini, Saya telah bekerja dalam persekitaran yang menggunakan sebahagian web Kalendar buluh bagi beberapa kerjasama yang lebih baik. Ini standard sederhana/kecil ladang dengan dua beban seimbang WFEs, a "pelayan aplikasi" untuk pengindeksan dan InfoPath dan berkelompok SQL kembali akhir.

Pelanggan memasang beberapa perisian pemulihan bencana ke salah satu WFEs dalam dan yang mengakibatkan WFE yang rosak untuk laman web tertentu dalam koleksi laman web. Bila-bila masa imbangan beban menunjuk pada yang terjejas WFE dan tapak yang, pengguna melihat skrin putih yang sebahagian besarnya kosong dengan hukuman "Ralat yang tidak dijangka telah berlaku". Tidak lain-lain maklumat yang menunjukkan, hanya ayat itu.

Mereka meminta saya untuk melihat. Saya mudah dihasilkan semula masalah dan kemudian ditambah dengan ?kandungan 1 hingga akhir URL =. Ini adalah bagaimana saya belajar mereka telah menggunakan bahagian web buluh. Saya kembali ke halaman dan sekarang, tiba-tiba, ia menunjukkan kepada saya satu mesej ralat teratur baik:

image

Saya tidak tahu apa yang berlaku atau apa yang saya lakukan untuk mendapatkan mesej ralat terkawal memaparkan selain appending yang ?isi = 1 sedikit rentetan pertanyaan.

Ini mungkin kes yang sangat jarang berlaku kelebihan tetapi jika anda mendapat mesej yang, "Satu kesilapan yang tidak dijangka berlaku" pergi ke hadapan dan menambah ?kandungan = 1 kepada rentetan pertanyaan dan melihat di mana yang membawa.

</akhir>

Langgan ke blog saya.

Mengikuti aku di Twitter http://www.twitter.com/pagalvin

Technorati Tags: ,

Menggunakan reflektor pada Microsoft.SharePoint.dll

Redgate .NET Reflector Michael Blumenthal telah meletakkan seorang Artikel tentang amaran dan views ("Pemandangan yang boleh digunakan apabila mewujudkan amaran ?"), yang menarik di atas kewajarannya sendiri. Walau bagaimanapun, Saya adalah lebih berminat untuk melihat bagaimana dia methodically berjalan melalui proses penggunaan reflektor .NET 's Redgate. Langkah demi langkah, dia menunjukkan bagaimana untuk menggunakan trek alat itu turun berapa SharePoint menentukan sama ada pemandangan senarai harus "subscribable" kerana kekurangan satu perkataan yang lebih baik (he explains this much better than I do 🙂 ).

Pada titik ini, dalam SharePoint era, anda hampir akan menjadi pekak dan buta tidak mendengar atau membaca tentang menggunakan alat itu. Ia telah maju barangan dan rasa saya sendiri adalah bahawa ia adalah cara yang banyak alat terakhir. Walau bagaimanapun, Jika anda fikir anda memerlukannya tetapi tidak benar-benar tahu bagaimana, Michael's tulis seolah-olah seperti sebuah tutorial yang besar mengenai perkara ini.

</akhir>

Langgan ke blog saya.

Mengikuti aku di Twitter http://www.twitter.com/pagalvin

Menyusun Calendar Item dalam View Calendar

Saya menggunakan kalendar untuk menjejaki perbincangan panel pada suatu hari tertentu. Saya mempunyai dua sesi: pagi dan petang. Saya ingin mencipta paparan yang menunjukkan sesi pagi sahaja disenaraikan mengikut turutan abjad melalui ID sesi. Ini adalah agak rumit untuk mencapai (melainkan jika saya terlepas sesuatu yang jelas nyata).

Saya boleh dengan mudah membuat gambaran yang ditapis yang menunjukkan acara-acara pada hari itu hanya. Kalendar akan memaparkan peristiwa-peristiwa tersebut dan jika mereka semua mengambil tempat pada jam yang sama, Ia menyenaraikan mereka sebelah menyebelah dalam slot jam. itu sangat bagus. Bahagian yang rumit ialah yang, secara lalai, Ia mahu Senaraikan dalam ID format. Jadi, Jika saya menambah "sesi 02" dan kemudian "sesi 01" ke kalendar, Ia menunjukkan mereka dalam perintah itu (Dgn kata lain, Sesi 02 kemudian sesi 01). Untuk Senaraikan mengikut sesi ID, Saya berfikir untuk mencuba perkara-perkara ini:

  1. Konfigurasi paparan menggunakan antara muka pengguna web. Tidak berjaya. Terdapat tiada opsyen untuk menyusun barang-barang begini.

    Kerana yang tidak bekerja, Saya kini mengharapkan terdapat pertanyaan CAML di suatu tempat di sana yang akan membolehkan saya untuk mengatasi yang semacam itu. CQWP membolehkan saya membuat jenis perubahan, mungkin kalendar akan serta?

  2. Edit bahagian web, mencari "eksport" fungsi dan … BZZZT! Saya tidak dapat mengeksport XML yang. Terdapat tiada pilihan eksport.

    Aku masih memegang keluar berharap bahawa saya boleh mencari dan mengubah suai beberapa pertanyaan CAML. Kerana saya tidak dapat mengeksport bahagian web, yang meninggalkan SharePoint Reka bentuk.

  3. Saya menambah bahagian web Kalendar ke tapak kotak pasir dan membuka tapak SharePoint Reka bentuk menggunakan. Saya melihat penanda untuk bahagian web dan saya dapati apa yang saya Cari. Ia telah dikodkan kegilaan, tetapi ianya ada: "<ListViewXml …. >kegilaan dikodkan</ListViewXml>". Khususnya, ada permata ini:

<Pertanyaan>
<Jika>
<DateRangesOverlap>
<FieldRef nama "EventDate" = />
<FieldRef nama "EndDate" = />
<FieldRef nama "RecurrenceID" = />
<Nilai jenis = "TarikhMasa">
<Bulan />
</Nilai>
</DateRangesOverlap>
</Jika>
<OrderBy><FieldRef nama "Session_x0020_ID =" /></OrderBy>
</Pertanyaan>

(Saya telah diterjemahkan dalam &lt;ini dan &gt di dan berpecah mereka berbilang baris demi jelas di).

Tambah dalam <OrderBy> bit dan kini ia Mengisih mengikut sesi ID, tidak dalaman senarai item ID yang.

O Petua GERGASI’ topi untuk Becky Isserman untuk komen beliau untuk posting blog Isya mencatatkan: http://www.sharepoint-tips.com/2008/07/caml-sorting-by-file-name.html. Saya tidak akan meletakkan di <OrderBy> di tempat yang betul tanpa komen beliau.

Saya berharap untuk menulis ini lebih jelas dengan screen Shot tidak lama lagi, tetapi sekiranya saya tidak, sekurang-kurangnya saya banyak ini.

</akhir>

Ciri-ciri SharePoint & Penyelesaian pengurusan — Jangan lupa U di dalam CRUD (atau D untuk perkara itu)

Kita bersama-sama menghabiskan banyak masa berfikir tentang penyelesaian SharePoint — Bagaimana untuk mewujudkan mereka, alat yang menggunakan, apa yang berlaku apabila mereka gagal untuk menggunakan, kerja-kerja pemasa, Skop, dan sebagainya.. Kita menghabiskan begitu banyak masa memikirkan bit pendahuluan yang sangat mudah lupa bahawa kita perlu untuk menarik balik pengakuan mereka serta. Menarik balik penyelesaian adalah mungkin lebih sukar, dari perspektif rekabentuk konseptual ke atas, daripada mengatur kedudukan mereka. Penggunaan secara asasnya hubungan buku masakan. Biasanya, memasang sesuatu sifat, mungkin mempunyai penerima ciri yang memuatkan beberapa data ke dalam senarai, hal seperti itu. Walau bagaimanapun, menarik balik adalah berpotensi lebih kompleks.

Penyelesaian yang diberikan boleh mencipta artifak-artifak seperti ini:

  • Jenis kandungan
  • Senarai definisi
  • Definisi Laman web
  • Data dalam senarai
  • Malah penerima
  • Borang-borang InfoPath

Seterusnya.

Walaupun ia jelas penting untuk mereka bentuk penyelesaian yang instantiates artifak tersebut dengan betul, Ia adalah sama pentingnya untuk mempertimbangkan pengemaskinian dan padam kes-kes. Jika penyelesaian anda mencipta senarai baru dan mempopulasi senarai itu dengan data, apa yang berlaku apabila penyelesaian undur? Dalam sesetengah kes, Senarai perlu dihapuskan. Dalam kes-kes lain, Ia harus dibiarkan dalam keadaan elok untuk tujuan sejarah. Keperluan perniagaan anda akan membimbing anda untuk keputusan yang tepat.

Untuk membantu dengan ini, mewujudkan matriks yang menyenaraikan setiap artifak yang penyelesaian anda merekacipta untuk SharePoint. Senaraikan tiga kolum setiap artifak, satu untuk buat, Kemaskini dan Hapus. Bagi setiap kes, menentukan keputusan yang betul bagi operasi.

Analisis jenis ini sudah tentu paling baik dilakukan sebelum penyelesaian yang pernah dikerahkan ke ladang ternakan lembu SharePoint. Walau bagaimanapun, seperti Rokok, ianya tidak pernah terlambat untuk mula melakukan perkara-perkara dengan betul. Mewujudkan matriks itu dan membangunkan rancangan untuk menangani senario Kemaskini/Hapus yang hilang. Ia mungkin menjadi satu masalah yang sukar untuk menyelesaikan, tetapi sekurang-kurangnya anda akan telah meletakkan sekotak sekitar masalah.

</akhir>

Langgan ke blog saya.

Mengikuti aku di Twitter http://www.twitter.com/pagalvin

Technorati Tags:

Fix cepat: Perkhidmatan web yang Berinteraksi dengan SharePoint, InvalidOperationException

Satu juta tahun yang lalu, Saya membantu membangunkan perkhidmatan web yang telah dikuatkuasakan melalui tindakan yang tersuai bagi aliran Reka bentuk SharePoint. Minggu ini, pelanggan mahu berpindah kepada pengeluaran (akhirnya!) supaya kita tidak.

Tindakan adat bekerja denda, tetapi perkhidmatan web ia disembelih tidak, memberi kita kesilapan ini:

System.InvalidOperationException: Operasi ini boleh dilakukan hanya pada komputer yang bergabung dengan sebuah ladang pelayan oleh pengguna yang mempunyai kebenaran dalam SQL Server untuk membaca dari pangkalan data konfigurasi. Untuk menyambung pelayan ini ke ladang pelayan, menggunakan Produk dan Teknologi SharePoint Wizard Konfigurasi, terletak di dalam menu Start Alat Pentadbiran.
pada Microsoft.SharePoint.Administration.SPWebApplication.Lookup(Uri requestUri)

Ternyata bahawa saya terlupa untuk menambah Perkhidmatan SharePoint aplikasi kolam di IIS. Sebaik sahaja saya, ia bekerja denda.

Ini forum MSDN posting memberikan saya petunjuk yang saya perlukan: http://social.msdn.microsoft.com/Forums/en-US/sharepointdevelopment/thread/2c97c004-7118-4e06-a62c-b2b0ac07ac99

</akhir>

Langgan ke blog saya.

Ikut saya di Twitter: http://twitter.com/pagalvin

Technorati Tags:

Pantas dan Mudah: Mendapat SPFolder daripada SPItemList

Saya terus berjalan ke dalam masalah ini dan Google tidak pernah seolah-olah memahami apa yang saya mahu lakukan, Jadi saya digambarkan saya menulis ini ke bawah.

Saya telah melakukan banyak acara penerima penyahpepijatan dalam minggu lepas atau dua. ER ditakrifkan terhadap sebuah perpustakaan dokumen. Item individu dalam Perpustakaan dokumen ketat berkaitan dengan folder induk mereka. Jadi, Aku selalu gettin folder item untuk tidak pelbagai. Manakala penyahpepijatan, Saya diperlukan untuk mengemaskini metadata folder item tertentu yang ID yang saya tahu.

Berikut adalah sedikit konsol permohonan (direka untuk menggunakan pelayan di dalam ladang) yang memerlukan dua hujah: ID item dan bernilai untuk menguntukkan kepada bidang yang, "Kelulusan Status". Ia sukar kod banyak hal dan mempunyai ralat tanpa menyemak.

Kod kelihatan sehingga tapak keras dikodkan, mendapat sebuah perpustakaan dokumen keras dikodkan dan kemudian mencari perkara yang dinyatakan. Ia kemudian mendapati folder induk perkara itu dan pemegang serah hak nilai status.

Pengajaran penting di sini untuk saya adalah bahawa SPItem tidak mendapatkan anda akses ke folder. Anda perlu menggunakan SPListItem.File.

Jika sesiapa yang peduli kritikan yang menawar atau mencadangkan cara yang lebih baik untuk mendapatkan folder item, sila tinggalkan komen.

<Kod>
menggunakan Sistem;
menggunakan System.Collections.Generic;
menggunakan System.Text;
menggunakan Microsoft.SharePoint;
menggunakan System.Collections;

ruang nama Conchango
{
    /// <Ringkasan>
 /// </Ringkasan>
 kelas ManualFolderUpdate
    {
        statik membatalkan Utama(rentetan[] args)
        {
            rentetan msh = "ManualFolderUpdate (v1.0): "; // msh = "pengepala mesej"

 Konsol.WriteLine(msh + "Bermula.  Saya kali terakhir dikemaskini pada 08/04/08.");

            rentetan URL = http://localhost/xyzzy;

            menggunakan (SPSite oSPSite = baru SPSite(url))
            {

                menggunakan (SPWeb oSPWeb = oSPSite.OpenWeb())
                {
                    SPList docLib = oSPWeb.Lists["Dokumen-dokumen"];

                    Konsol.WriteLine(msh + "Mendapat Perpustakaan dokumen.");

                    Konsol.WriteLine(msh + "Doc lib kiraan butiran: [" + docLib.ItemCount + "].");

                    int FolderID = 0;
                    rentetan NewStatus = "xyzzy";

                    FolderID = sistem.Menukar.ToInt32(args[0].ToString());
                    Konsol.WriteLine("Mencari folder untuk item: [" + FolderID + "].");

                    SPListItem Li = docLib.GetItemById(FolderID);

                    SPFolder thisItemFolder = li. File.ParentFolder;

                    Konsol.WriteLine(msh + "Mendapat folder induk.");

                    NewStatus = args[1].ToString();
                    Konsol.WriteLine("Status persekitaran untuk [" + NewStatus + "].");

                    Konsol.WriteLine("Tekan kembali untuk melakukan update atau CTRL-C untuk menggugurkan.");

                    Konsol.ReadLine();

                    thisItemFolder.Item["Status kelulusan"] = NewStatus;
                    thisItemFolder.Item.Update();

                    Konsol.WriteLine(msh + "Selesai mengemaskini folder.  Keluar.");

                } // menggunakan SPWeb

            } // menggunakan SPSite

 Konsol.WriteLine(msh + "Selesai.");

        } // Utama

    } // kelas foldersync
} // ruang nama
</Kod>

</akhir>

Langgan ke blog saya.

Technorati Tags:

Bersembunyi Tindakan Custom di SharePoint

Beberapa bulan yang lalu, semasa bekerja di projek untuk pelanggan, Saya telah mencipta satu ciri. Antara perkara-perkara lain, ciri yang ditakrifkan tindakan adat (ini muncul di bawah tetapan tapak). Tujuan hanya untuk aksi adat ini adalah untuk menunjukkan kepada saya bahawa pengaktifan semuanya adalah berfungsi seperti yang diharapkan. Pada asasnya, Saya menggunakannya sebagai satu bentuk mentah debugging.

Banyak malu saya, ini artifak debugging membuat jalan dari dev untuk UAT dan pengeluaran sebelum seseorang mendapat sekitar untuk meminta, "apa itu link ini xyzzy?"

Pada masa, kami dalam pengeluaran dan saya benar-benar tidak mahu buang ciri, membetulkan elements.xml dan kemudiannya pasang semula.

Todd bleaker menunjukkan cara mudah untuk mengendalikan. Dalam kata-katanya:

"CustomActions tidak disalin ke dalam pangkalan data, mereka membaca terus dari fail Elements.xml dan disalin ke negeri permohonan di runtime. Jadi, anda tidak perlu untuk menyahaktifkan, buang, pasang semula, dan mengaktifkan semula Ciri-ciri untuk menghapuskan CustomAction yang. Hanya mengeluarkannya dari fail yang Elements.xml dan kitar semula kolam permohonan(s) dilaksanakan. Masa depan Ciri-ciri ini dalam skop, anda tidak akan melihat CustomAction lagi."

Saya mengikuti arahan dan, sudah tentu, mereka bekerja.

Dalam kes saya,, Inilah sebuah pepasangan peringkat Jabatan dengan hanya satu WFE. Jika anda mendapati diri anda dengan masalah ini pada masa akan datang dan dengan WFE berbilang, Saya percaya anda akan perlu membuat perubahan dalam setiap.

</akhir>

Langgan ke blog saya.

Fix cepat: Mengakses tapak SharePoint membaling [HttpException (0x 80004005): Permintaan tamat.]

Salah satu daripada rakan-rakan pemaju saya bekerja pada sebuah projek minggu ini dan berlari ke masalah masa semasa bekerja membina sebahagian web gila. Pihaknya web saja, tetapi "tiba-tiba" sebuah laman yang tidak berkaitan menjadi sangat lambat dan kerap tamat dengan ralat ini:

[HttpException (0x 80004005): Permintaan tamat.]

Saya log masuk dan melihat bahawa beberapa laman web yang lain adalah saja. Saya mengesyaki bahawa terdapat beberapa bahagian web tersembunyi pada halaman dan menggunakan selamat ?isi = 1 teknik nyahpepijat, Saya sebenarnya mencari 11 Bahagian web pada halaman, hanya dua di antaranya telah kelihatan. Bahkan lebih baik (dari perspektif let's-hope-I-find-something-ugly-here-that-I-can-fix), tiga bahagian tertutup web tersebut mempunyai nama "Kesilapan".

Saya dipadam bahagian web (yang mengambil masa yang lama yang menghairankan) dan yang menyelesaikan masalah. For today 🙂

</akhir>

Langgan ke blog saya.

Technorati Tags:

Permulaan Perkhidmatan Web SSRS dari WSS / MOSS dalam persekitaran FBA

Kita perlu menyembah "CreateSubscription" kaedah mengenai perkhidmatan web SSRS yang dihoskan di FBA yang diuruskan persekitaran MOSS dari sebahagian membina laman web. Kami terus mendapatkan variasi:

  • 401: Tidak dibenarkan
  • Objek yang bergerak

"Objek bergerak" mesej adalah paling menarik kerana ia telah mengatakan bahawa "objek" (Perkhidmatan SSRS kami) telah "berpindah" untuk login.aspx. Ini jelas bermakna kita mempunyai beberapa jenis masalah pengesahan.

Akhirnya saya menyedari bahawa saya punya bookmarked entri blog oleh Robert Garret yang diterangkan bagaimana untuk memohon Perkhidmatan web WSS/MOSS maksud hidup di dalam persekitaran FBA. Ambil perhatian bahawa saya tidak dapat membuat pautan terus ke Artikel (sebagai kawan 06/09/08) kerana ia mahu untuk mengesahkan. Link yang saya berikan membawa anda ke satu "semua posting" Lihat dan anda boleh mencari artikel khusus dengan mencari "Accessing MOSS Web Perkhidmatan menggunakan pengesahan berdasarkan borang".

Berikut adalah kod yang bekerja untuk kita:

ReportingService2006 rs = Batal; 
// Mengesahkan Pengesahan pengesahan = baru Pengesahan(); 
kuasa URL = "http://URL/_vti_bin/Authentication.asmx";
kuasa CookieContainer =
baru CookieContainer();
LoginResult hasil = kuasa Log masuk("Administrative", "kata laluan");
jika (keputusan. ErrorCode == LoginErrorCode.NoError) 
{
// Tiada ralat, Jadi mendapatkan kuih.
Biskut CookieCollection = kuasa CookieContainer.GetCookies(baru URI(kuasa URL));
Kuih authCookie = biskut[keputusan. CookieName];
RS =
baru ReportingService2006();
RS. URL =
"http://Server/_vti_bin/ReportServer/ReportService2006.asmx";
RS. CookieContainer =
baru CookieContainer();
RS. CookieContainer.Add(authCookie);
}
cuba
{
  RS. CreateSubscription(Laporan, extSettings, desc, eventType, matchData, parameters1);
}
menangkap (Pengecualian ex)
{
  Console.WriteLine(bekas. Message.ToString());
}

Saya mentafsirkan apa yang anda perlu bekerja seperti ini:

  • Bahagian web kita perlu dail khidmat pengesahan dan berkata, "Hei, Tony, ini aku!".
  • Pengesahan Perkhidmatan balasan berkata, "Hei, Aku tahu kau. Bagaimana Adakah anak-anak? Inilah tanda."
  • Kami menelefon Perkhidmatan SSRS dan berkata, "Tony menghantar kepada saya, Inilah token."

</akhir>

Langgan ke blog saya.

Cepat mudah dan: Peruntukan Laman Web Menggunakan SharePoint Objek Model Dalam C #

Saya cuba mencari sedikit cebisan kod yang akan menunjukkan bagaimana saya boleh mencipta satu SPWeb baru dalam koleksi tapak. Saya tidak mendapati ia sebagai cepat atau mudah seperti yang saya harapkan jadi saya pikir saya akan Tepuk bersama sedikit catatan tentang subjek.

Kod ini mewujudkan sebuah laman Wiki baru:

 SPSite siteCollection;

    siteCollection = baru SPSite("http://conchang-o9l8qi");

    SPWeb w = siteCollection.OpenWeb();

    w.Webs.Add("xyzzy", "xyzzy tajuk",
        "keterangan xyzzy", 1033, SPWebTemplate.WebTemplateWIKI, palsu, palsu);

Carian awal saya gagal kerana saya Cari frasa seperti "peruntukan sebuah laman web yang menggunakan model objek sharepoint" dan sebagainya.

Jika anda mencari untuk "Webs.Add()", anda akan mendapati beberapa entri blog yang sangat berguna, MSDN rencana dan dokumentasi SDK yang pergi ke dalam mendalam mengenai perkara ini. Saya pasti mengesyorkan laman web ini.

</akhir>

Langgan ke blog saya.

Technorati Tags: