Arsip Kategori: SharePoint alur kerja

Membuat situs (SPWeb) melalui SharePoint Designer alur kerja

Entri blog ini adalah lebih dari "dalam dunia yang mungkin" Catatan vs.. beton info.

Kami memiliki desain teknis yang memanggil kami untuk membuat situs dalam situs koleksi melalui proses alur kerja manual diluncurkan. Pada dasarnya, pengguna memasukkan data ke dalam "pelanggan baru" daftar kustom dan kemudian ketika mereka telah selesai dan divalidasi yang data entri proses, kita perlu untuk membuat situs untuk pelanggan.

I'ma fan besar dari alur kerja deklaratif maupun lemah visual studio alur kerja programmer, Jadi saya ingin memenuhi persyaratan yang menggunakan SharePoint Designer.

Saya berencana untuk menulis tentang hal ini secara lebih rinci (dan mudah-mudahan sekarang untuk kelompok pengguna atau dua tahun yang akan datang), Tapi di sini adalah solusi keseluruhan:

  • Membuat tindakan kustom yang mengintegrasikan dengan SPD.
  • Tindakan kustom memungkinkan SPD untuk memohon layanan web dan lulus serangkaian XML.
  • Layanan web menempatkan baris di daftar kustom dan menciptakan sebuah situs baru berdasarkan data untuk klien baru menggunakan definisi situs kustom.
  • Layanan web kemudian update daftar kustom dengan beberapa informasi seperti link ke situs baru.

Kami dianggap sebagai pendekatan-pendekatan lain, seperti event handler dan visual studio yang berbasis workflow. Pendekatan SPD memberikan pengguna akhir lebih sedikit kontrol atas proses. Diberikan, ada banyak C# kode di solusi ini, tapi dibungkus dalam alur kerja deklaratif, Jadi kita mendapatkan beberapa manfaat deklaratif alur kerja sementara mengaitkan ke pembuatan situs layanan.

All we need now is an easy tool to automatically migrate SPD workflows around as easily as we can for visual studio workflows and we’ll really be cooking with gas 🙂 I understand that some folk are out there working on this problem and I hope they have some good success with it soon.

</akhir>

Berlangganan ke blog saya.

Technorati Tags: ,

Mengintegrasikan SharePoint Designer Workflow dengan layanan Web

Aku sudah bermain-main dengan tindakan kustom untuk SharePoint Designer untuk beberapa waktu (Lihat di sini untuk beberapa hal rinci, Jika yang menarik minat Anda).

Dalam proyek saya saat ini, kita perlu melakukan beberapa cukup angkat berat dan kami ingin menggunakan deklaratif SPD alur kerja untuk mengelola proses bisnis yang terkait.

Cerita panjang pendek, ini sepenuhnya mungkin. Saya diperpanjang proyek Codeplex saya untuk memohon layanan penolong"" dan sekarang kita dapat memanggil layanan web langsung dari sebuah alur kerja SPD.

Berikut adalah tanda tangan:

 Umum string Operator(
        GUID WebID, // Disahkan oleh lingkungan runtime
        GUID SiteID, // Disahkan oleh lingkungan runtime
        string ListID, // Melewati RTE (tidak tahu mengapa hal ini adalah string, tidak GUID)
        Int ListItemID, // Melewati RTE.
        string XmlMessage) // Disahkan oleh pengguna sebagaimana dinyatakan dalam SPD.

Ini memanfaatkan kenyataan bahwa kita bisa mendapatkan informasi penting alur kerja, seperti situs, Daftar ID, dll. Ini telah didokumentasikan di beberapa tempat bagi Anda yang tertarik untuk membuat tindakan kustom Anda sendiri. Idenya adalah untuk mengekstrak XML string yang disediakan oleh pengguna untuk mengirimkan prosedur yang tepat. Seru!

Sayangnya, ini sangat jelas tiket sekali jalan ke "Loosey Ramadhan" pola anti tanah, but it’s better than hitting a brick wall 🙂

Itu pola anti jika Anda melakukannya, meskipun Anda tahu itu adalah sebuah pola anti?

Saya berharap untuk membungkus ini dalam Codeplex dalam waktu dekat. Jika Anda tertarik pada saya melakukannya, memberi saya karung (email atau meninggalkan komentar) and I’ll be that more enthusiastic about doing it 🙂

</akhir>

Berlangganan ke blog saya.

Technorati Tags: ,

SPD alur kerja “Mengumpulkan Data dari pengguna”: Mengubah bentuk dihasilkan tugas

Saya bekerja pada sebuah proyek yang menggunakan lima aliran kerja SharePoint Designer yang berbeda untuk menangani beberapa dokumen persetujuan. SPD menyediakan "mengumpulkan data dari pengguna" tindakan sehingga kita dapat meminta pengguna untuk berbeda bit informasi, seperti apakah mereka menyetujui, beberapa komentar dan mungkin bertanya apa yang mereka miliki untuk makan malam.

Bentuk-bentuk sempurna fungsional. Semuanya terikat ke daftar tugas sebagai jenis konten. Mereka 100% sistem yang dihasilkan. Ini adalah kekuatan dan kelemahan mereka. Jika kita dapat hidup dengan formulir standar, lalu kami sudah baik untuk pergi. Namun, kami tidak memiliki terlalu banyak kontrol atas bagaimana SPD menciptakan bentuk. Jika kita tidak seperti perilaku default, kita perlu resor untuk berbagai trik untuk mendapatkan sekitar itu (misalnya, menetapkan prioritas pada tugas).

Saya perlu menyediakan link pada bentuk tugas ini yang membuka properti lihat (DispForm.asxp) "item terkait" di jendela baru. Ini memberikan akses sekali klik ke meta data item terkait. Ini adalah apa yang saya maksud:

gambar

Untungnya, kita bisa melakukan itu dan tidak sangat keras. Secara umum, api up SPD, Navigasikan ke direktori yang memiliki alur kerja file dan membuka file ASPX Anda ingin memodifikasi. Ini adalah hanya klasik XSL mengubah petunjuk dan jika Anda sudah mucked dengan itemstyle.xsl, pencarian atau skenario XSL lainnya, ini akan mudah bagi Anda. Sebenarnya, Saya menemukan hal itu terjadi biasanya lebih mudah karena bentuk yang dihasilkan agak mudah untuk mengikuti dibandingkan dengan bagian web hasil pencarian inti (atau mimpi buruk CWQP).

Tentu saja, ada satu kejatuhan utama. SPD alur kerja editor mengharapkan kontrol penuh atas file. Jika Anda memodifikasi itu, SPD bahagia akan menimpa perubahan Anda berikan hak set keadaan. Saya melakukan dua tes cepat untuk melihat seberapa buruk ini bisa. Mereka berdua mengandaikan bahwa Anda telah dibuat berlaku SPD alur kerja yang menggunakan "mengumpulkan data dari pengguna" langkah.

Tes 1:

  • Memodifikasi ASPX file dengan tangan.
  • Tes (Verifikasi bahwa perubahan Anda diselamatkan dengan benar dan tidak melanggar sesuatu).
  • Membuka alur kerja dan menambahkan tindakan tidak terkait (seperti "log sejarah").
  • Simpan alur kerja.

Hasil: Dalam hal ini, SPD Apakah tidak menciptakan kembali bentuk.

Tes 2:

  • Melakukan hal yang sama sebagai #1 kecuali secara langsung memodifikasi "mengumpulkan data dari pengguna" tindakan.

Hasil: Ini re-creates bentuk dari awal, over-tulisan perubahan Anda.

Catatan akhir:

  • Setidaknya dua SPD tindakan menciptakan bentuk-bentuk seperti ini: "Mengumpulkan Data dari pengguna" dan "Menetapkan untuk melakukan Item". Kedua tindakan ini’ bentuk dapat dimodifikasi secara manual.
  • Saya mampu menghasilkan saya link ke dispform.aspx karena, dalam hal ini, item berhubungan selalu memiliki ID yang tertanam dalam URL item terkait. Saya mampu untuk ekstrak dan kemudian membangun <a href> Berdasarkan untuk menyediakan fitur akses satu-klik meta data. Hal ini tidak mungkin bahwa URL Anda mengikuti aturan ini. Mungkin ada cara lain untuk mendapatkan ID dari item terkait tapi saya tidak punya untuk menyeberangi jembatan itu, Jadi saya tidak tahu jika sampai ke sisi lain dari jurang.
  • Saya tidak menyelidiki, tapi aku tidak akan terkejut jika ada beberapa jenis file template di 12 Sarang yang bisa memodifikasi mempengaruhi bagaimana SPD menghasilkan bentuk-bentuk standar (sama seperti kita dapat memodifikasi template alert).

</akhir>

Berlangganan ke blog saya!

Solusi (semacam): Menetapkan prioritas pada tugas menggunakan SharePoint Designer

Aku punya bisnis skenario seperti ini:

  • Pengguna upload dokumen ke perpustakaan dokumen.
  • Dia memilih tipe konten dan memasukkan meta data yang diperlukan. Salah satu kolom data meta adalah bendera, "Mendesak".
  • Ini memicu SharePoint Designer alur kerja yang, di antara hal lain, menggunakan "mengumpulkan Data dari pengguna" tindakan.

"Mengumpulkan Data dari pengguna" menciptakan item dalam daftar tugas yang meminta persetujuan untuk dokumen.

Saya perlu untuk membuat pemandangan daftar tugas yang menunjukkan permintaan mendesak untuk persetujuan.

Solusi: Meletakkan kata "mendesak:" ke judul tugas ini.

Saya lebih suka untuk menentukan prioritas bidang langsung. Namun, Aku tidak mampu untuk melakukannya untuk beberapa alasan:

  1. Tindakan mengumpulkan data tidak menyediakan sebuah mekanisme untuk memperbarui bidang lain selain judul (dan bidang tambahan yang Anda inginkan untuk mengumpulkan data).
  2. "Menetapkan untuk item" tindakan memiliki masalah yang sama.
  3. Dimungkinkan untuk memasukkan item ke daftar (yaitu. Masukkan item ke daftar tugas langsung) tetapi hal ini tidak menghalangi aksi. Itu berarti bahwa alur kerja tidak akan menunggu untuk pengguna untuk menyelesaikan tugas.

Aku dianggap beberapa pendekatan sebelum (Untungnya) menyadari kita bisa hanya menempatkan "mendesak" dalam judul.

  1. Mulai alur kerja pada daftar tugas itu sendiri sehingga ketika tugas baru dibuat, entah bagaimana salib referensi kembali ke dokumen yang mulai alur kerja pertama, mengeluarkan nilai mendesak bendera dan update prioritas yang diperlukan.
  2. Melakukan sesuatu yang serupa dengan acara Penerima. Pada menciptakan tugas, Cari dokumen terkait dan pembaruan prioritas yang diperlukan.
  3. Menggunakan "menciptakan daftar item" tindakan dalam hubungannya dengan "menunggu untuk bidang perubahan" tindakan dan Penerima acara. Jika kita membuat daftar item, kita dapat menentukan semua bidang yang kita inginkan. Menggunakan receiver acara untuk memperbarui original item ketika pengguna menyelesaikan tugas dan "tunggu untuk bidang perubahan" tindakan 's kondisi akan dipenuhi dan alur kerja akan melanjutkan. (Untuk beberapa alasan, Saya lebih atau kurang menetap pada pendekatan ini sebelum bijaksana memutuskan untuk pergi untuk sementara waktu).

Ada kelemahan untuk solusi saya (Selain dari fakta bahwa hanya teks judul menunjukkan urgensi). Sejak "mengumpulkan umpan balik" hanya menerima nama kode keras judul, Saya harus menggunakan dua umpan-balik mengumpulkan berbagai tindakan yang satunya perbedaan adalah bahwa judul dikodekan keras.

Tapi, setidaknya ada solusi yang tidak memerlukan acara penerima atau tindakan SPD kustom.

Jika seseorang telah memecahkan ini dalam cara yang lebih pintar, tolong beritahu saya.

</akhir>

Cepat dan mudah: Secara otomatis terbuka bentuk InfoPath dari SharePoint Designer Email

UPDATE: Madjur Ahuja poin keluar link ini dari newsgroup diskusi: http://msdn2.microsoft.com/en-us/library/ms772417.aspx. Hal ini cukup definitif.

===

Kita sering ingin embed hyperlink ke bentuk InfoPath di email yang dikirim dari SharePoint Designer Workflow. Ketika pengguna menerima email ini, mereka dapat mengklik link dari email dan pergi langsung ke bentuk InfoPath.

Konstruksi URL rakasa ini bekerja untuk saya:

http://server/sites/departments/Technical Services/InformationTechnology/HelpDesk/_layouts/FormServer.aspx?XmlLocation=/sites/departments/Technical Services/InformationTechnology/HelpDesk/REC REM RED Forms/REC2007-12-18T11_33_48.XML&Sumber = http % 3A % 2F % 2Fserver % 2Ecorp % 2Edomain % 2Ecom % 2Fsites % 2Fdepartments % 2FTechnical % 2520Services % 2FInformationTechnology % 2FHelpDesk % 2FREC % 2520REM % 2520RED % 2520Forms % 2FForms % 2FAllItems % 2Easpx&DefaultItemOpen = 1

Ganti teks tebal merah dengan nama bentuk, seperti yang ditunjukkan dalam gambar berikut:

gambar

Perhatikan bahwa ada banyak jalan yang keras-kode dalam URL, serta URL-encoded komponen. Apakah ini terlalu keras untuk menerjemahkan untuk situasi khusus Anda, Cobalah untuk menyalakan tanda untuk Perpustakaan bentuk. Posting bentuk dan ketika Anda mendapatkan email, Lihat sumber email dan Anda akan melihat semua yang Anda butuhkan untuk memasukkan.

Cerdik pembaca mungkin memperhatikan bahwa tubuh email di atas juga menunjukkan link yang langsung mengakses tugas melalui pandangan disaring. Saya berencana untuk menjelaskan bahwa secara lebih rinci dalam pos masa depan.

</akhir>

Technorati Tags:

LUMUT memberitahu saya “Akses ditolak” untuk mengedit tugas alur kerja, Tetapi saya benar-benar memiliki akses

Saya telah menerapkan alur kerja yang menggunakan SharePoint Designer di situs yang terutama hanya-baca untuk "NT_AUTHORITYAuthenticated pengguna" (yaitu. semua orang). Ada sebuah perpustakaan bentuk untuk sebuah bentuk InfoPath. Ada daftar tugas alur kerja terkait serta sehingga ketika beroperasi alur kerja, itu dapat menetapkan tugas untuk orang-orang.

Aku memecahkan izin untuk bentuk Perpustakaan dan tugas daftar sehingga setiap otentikasi pengguna dapat membuat bentuk dan memperbarui mereka tugas yang ditetapkan.

Saya menguji dengan account tes rendah-hak.

Dapat saya mengisi keluar dan menyimpan formulir untuk Perpustakaan? –> Ya

Saya bisa mengakses tugas dari email link? –> Ya

Saya bisa melihat link tugas alur kerja Edit –> Ya

Dapat saya klik pada link tersebut? –> Tidak … Izin ditolak.

Mengapa saya melihat link edit yang menyangkal Aku izin ketika saya klik pada itu? Itulah tidak bagaimana itu seharusnya bekerja…

Aku pergi melalui konfigurasi lagi, sangat erat. Saya melakukannya lagi. Saya mempertimbangkan menghapus posting ini karena saya jelas tidak tahu apa-apa tentang keamanan.

Akhirnya, Saya mencari Internets. Saya menemukan thread forum MSDN ini sangat tidak mungkin: http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1838253&SiteID=17

Poster tampaknya menunjukkan bahwa tindakan sederhana mengekspor alur kerja ke piring drive akan memperbaiki masalah keamanan MOSS? Aku hampir tak percaya aku hanya mengetik yang. Saya teringat episode South Park tentang 9/11 konspirasi yang mana Stan meminta kami Preznit, "Benar-benar?" lagi dan lagi.

Jadi, tidak perlu kehilangan, Saya menjalankan SPD, Klik kanan pada alur kerja dan menyimpannya ke c saya:\ berkendara. Itu akan menjadi c:\ drive pada laptop saya. Saya melihat bahu saya sepanjang waktu sehingga tidak ada yang akan bertanya, "Mengapa Anda menyimpan alur kerja itu ke laptop Anda?"

Sangat, yang memecahkan masalah saya. Dapat saya edit tugas.

Dengan ini mencalonkan ini menjadi paling aneh Workflow Solusi dari 2007.

</akhir>

Technorati Tags:

SharePoint Designer, Item yang saat ini “URL mutlak dikodekan” dan HTTPS

Kita sering ingin mengirim email yang mencakup hyperlink ke item atau dokumen yang memicu alur kerja. Kita dapat menggunakan item sekarang "dikodekan URL absolut" untuk tujuan ini. Namun, tampaknya selalu menggunakan "http" untuk protokol URL. Jika situs Anda berjalan pada HTTPS kemudian ia tidak akan bekerja untuk Anda.

gambar

Sejauh yang saya tahu, ada ada keluar dari kotak solusi untuk masalah ini. Jika Anda perlu menggunakan HTTPS, Anda belum keluar dari kotak pilihan.

Mengatasinya, membuat tindakan kustom yang menyediakan fungsi mengganti string untuk digunakan dalam alur kerja Anda. Atau, menggunakan alat pihak ketiga seperti paket yang sangat baik di sini: http://www.codeplex.com/spdwfextensions 🙂

</akhir>

Mengirim Email SharePoint Designer ???? dalam Email

Forum pengguna kadang-kadang bertanya: Mengapa SharePoint Designer meletakkan ???? ke email saya daripada nilai bidang?

Salah satu alasan ini terjadi adalah karena variabel yang Anda referensikan nol.

Hal ini dapat terjadi karena Anda mencoba untuk referensi lapangan dari "saat ini item" tetapi pengguna tidak pernah masuk nilai bidang bentuk itu.

<akhir />

Technorati Tags:

Membandingkan / Tes untuk tanggal kosong dalam alur kerja SharePoint Designer

Skenario: Dalam alur kerja SharePoint Designer, Anda perlu menentukan apakah Lapangan tanggal kosong.

Masalah: SPD tidak menyediakan metode langsung untuk membandingkan tarikh untuk apa pun selain tanggal. Anda tidak dapat membuat kondisi seperti ini: "Jika [DateField] sama dengan kosong".

Solusi: Mengkonversi tanggal ke string. Menggunakan perbandingan string untuk menentukan apakah tanggal kosong.

Screen shot:

Gambar layar berikut menunjukkan bagaimana melakukan ini. Dalam skenario ini, bidang item, "Izin lingkungan:Pertama mengizinkan pengingat tanggal", diajukan dan alur kerja kebakaran pada respon.

gambar

gambar

Catatan:

Ketika saya mencoba ini, Saya terkejut untuk mempelajari bahwa ia bekerja. Khawatir bahwa SharePoint Designer mungkin melarang penetapan string (Variabel:StringReminderDateDate) Tapi itu memungkinkan itu.

Juga prihatin bahwa memungkinkan, nilai yang mungkin menjadi null dan meledakkan WF pada saat runtime baik atau mungkin meningkatkan suhu global 1/2 gelar, Tapi kekhawatiran mereka tidak beralasan.

</akhir>

Technorati Tags:

Tindakan Custom alur kerja SharePoint Designer — Pengamatan tentang <FieldBind Desainer Type =”StringBuilder” … />

Just a quick pengamatan bahwa ada perbedaan yang sangat penting antara dua definisi:

<FieldBind lapangan = "InParam1" DesignerType = "StringBuilder" Id = "2" Teks = "Input parameter # 1" />

versus:

<FieldBind lapangan = "InParam1" Id = "2" Teks = "Input parameter # 1" />

Pertama menunjukkan seperti ini di SPD:

gambar

sedangkan yang kedua menunjukkan seperti ini:

gambar

I’m not sure how helpful these screen shots are but I put in the effort to make them so you have to view them 🙂

Pengamatan ini: StringBuilder memungkinkan Anda untuk membangun sebuah string (jelas) dengan mencampur bersama string literal dan alur kerja data (melalui "Tambah Lookup" tombol di sudut kiri bawah). Bila Anda menggunakan tombol Tambahkan Lookup, itu menyisipkan tanda dalam bentuk"[%token %]". Kapan SharePoint memanggil tindakan kustom Anda, (C# kode dalam kasus saya), SharePoint melewati tanda sendiri, bukan nilai token. Jika Anda menggunakan jenis desain default (Tipe kedua), SharePoint memperluas token dan melewati sebenarnya nilai token untuk tindakan Anda.

StringBuilder = buruk, standar jenis desainer = baik.

Tentu saja, Itulah tidak apa yang saya benar-benar maksud. Hanya jangan mencoba dan melewati parameter untuk tindakan kustom Anda ketika mengetik perancang = StringBuilder. Menggunakan jenis desain default dan rantai StringBuilder untuk itu di depan jika Anda perlu untuk membangun kompleks string dalam alur kerja Anda (yang kebetulan adalah persis apa yang satu tidak untuk membuat subjek yang dinamis untuk tindakan email, tapi itulah subjek entri blog lain, Har har).

<akhir />