Mga Archive ng kategorya: SharePoint

Paggamit “Tao o Group” sa isang kinakalkula na haligi

People commonly ask about using a column of data type "Person or Group" sa ibang hanay ng mga data type "Kinalkula".

Ika-line, na ito ay hindi gumagana sa WSS 3.0 (o Moss).

Kapag pagdaragdag ng isang kinakalkula haligi, WSS shows the list of fields it allows you to use for the calculation. If you type in the name of a column that is not in its list, ito ay nagsasabi sa iyo:

Isa o higit pang mga haligi ng sanggunian ay hindi pinahihintulutan, dahil ang mga haligi ay tinukoy bilang isang uri ng data na ay hindi suportado sa formula.

Workaround: Use an event handler. The event handler fires when the user saves the item. It performs the update you would have wanted the calculated column to do for you.

Kapaki-pakinabang na mga link sa mga kinakalkula patlang sa pangkalahatan:

Quick disclaimer: Naniniwala ako sa itaas upang maging totoo at wasto, ngunit nakita ko na sapat na matalino tricks dito at doon sa Moss / WSS na hindi ko lubos na nagulat (sabik na sabik kung kalooban mo) if someone has figured out a way to do this without resorting to code. If you’ve figured out clever work-around or know someone that did, mangyaring ipaalam sa akin!

Moss / WSS ay nagsasabi sa akin: “Ang pahina na ito ay binago ng isa pang may-akda sa …” ngunit talagang, ay hindi ito.

We did some heavy duty re-organizing of our site taxonomy via "Manage Content and Structure". For reasons unknown to me, ang prosesong ito (kahit na nagtatrabaho sa pangunahing) broke some navigation links in the quick launch. The broken links are characterized by:

  • Wrong URL. Halimbawa, it should be "/sites/departments/HumanResources/…". Gayunman, the new link is "/sites/Corporate/HumanResources/…".
  • Paulit-ulit na mga piraso sa query string ng heading, tulad ng sa:

/mga site / mga kagawaran / HumanResources / _layouts / viewlsts.aspx?BaseType=0?BaseType=0?BaseType=0?BaseType=0

That’s easy enough to fix via site settings/navigation. Except, Moss ay nagpapakita sa akin na may ito kapag sinusubukan kong gawin at ito:

imahen

Ang katotohanan ay, walang paggawa ng anumang mga pagbabago doon (bukod sa akin, mangyari pa).

Ang isang mabilis na paghahanap lumiliko up ang diskusyong ito sa MSDN forums: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1691577&SiteID=1

William Heurdier lays ito mabuti sa ang una sa huli (bilang ng 10/02/07) ipaskil:

Katotohanan ay:

Upang i-reset corrupt heading, mayroon kang upang :

– alisin ang lahat ng mga listahan sa ilalim ng heading na napinsala

– alisin Nasira ang heading

– Mula sa listahan ng mga setting, add a removed list to the quick launch (Ito papagbaguhing-buhay ang isang hindi sira ang heading)

Ikaw ay pagkatapos ay handa na upang patakbuhin….


Sharepoint Expert – Cap Gemini Sogeti Switzerland

Ako ay isang bit nalilito dahil ako iningatan kinakapos upang pumunta sa pahina ng nabigasyon, make the change and then get hit with the "page was modified" message. Eventually, I realized I had to go to the list settings and remove/add it to quick launch. That did the trick. Happy times are here again!

</dulo>

Mag-subscribe sa aking blog!

May mga problema sa “I-pause Hanggang sa Petsa” aktibidad sa SPD nilikha ng daloy ng trabaho

I-UPDATE 12/10/07: Hotfix as described in MSDN KB929816 solved the problem for us mentioned below. Obtain the hotfix and then install on each server on the farm. Pagkatapos, sharepoint configuration utility on each server. Here is the MS Support link for that KB: http://support.microsoft.com/kb/932816.

Likuran:

Mayroon kaming isang negosyo na kinakailangan sa kung saan ang isang kapaligiran manager engineering Kailangang matiyak na 30 some-odd manufacturing locations located throughout the United States needs to ensure that those plants file for their various state-mandated permits in a timely fashion. One approach we’ve investigated leverages the "Pause Until Date" activity available to us via SharePoint Designer worfklow. The engineering manager (o ang kanyang katulong) enters all the required permits and reminder dates at the start of the year. The system then does all the heavy lifting.

Kapaligiran:

Lumot, 64 kaunti, virtual machine kapaligiran (pag-unlad box), 2 server (SQL sa server #1, lahat ng iba pa sa server #2).

Problema:

The Pause Until Date action seems like the perfect solution and it may well prove itself to be. Gayunman, Hindi ito gumagana ng maayos sa labas ng kahon (sa amin).

  1. Ang daloy ng trabaho sa trabaho ay hindi naka-iskedyul na tumakbo, ever. I discovered this by reading through Christopher White ni (http://chrissyblanco.blogspot.com/2007/06/issues-with-delay-activity-in-moss.html) excellent write-up by using stsadm thusly:

    C:\>stsadm -o getproperty -propertyname "job-workflow" -url http://localhost

    <Property Exist="No" />

    C:\>

    Iyon ay isang kamangha-mangha resulta ngunit madaling malulutas:

    C:\>stsadm -o setproperty -propertyname "job-worfklow" -propertyvalue "every 1 minuto sa pagitan ng 0 at 59" -url http://localhost

    Ang operasyon ay matagumpay na nakumpleto.

    C:\>

    Sa paggawa na, the first "In Progress" workflow mabilis fired up at ginawa ito ng trabaho.

  2. Sadly, the next one didn’t work as expected. Thankfully, Christopher refers us dito (http://support.microsoft.com/kb/932816). As of writing of this entry, kami ay naghihintay para sa IT department upang makuha na hotfix, but it does look promising. Our copies of the affected .dll’s do not share the same byte size, kaya sana ito ay malutas ang problema.

Workaround:

Re-running the stsadm -o setproperty command seemed to prod the workflow timer awake. It would, humigit-kumulang 7 minuto mamaya, actually wake up and continue along with the workflow.

Tanong / Isyu natugunan:

I-pause Hanggang sa Petsa ay hindi gumagana.

I-pause Hanggang sa Petsa ay hindi ipagpatuloy.

Workflow status does not change from "In Progress"

Workflow status stays "In Progress"

MRO workflow case study gamit Moss, SPD, InfoPath & web mga serbisyo.

Pangkalahatang-ideya ng

Entry na ito ay naglalarawan ng isang case study na naglalarawan ng isang aktwal na MRO (Pagpapanatili, Pagawaan at Operations) daloy ng trabaho sa pag-apruba ng proseso na ipinapatupad sa Moss.

Ito ay hindi isang teknikal na pantao talakayan, ngunit sa halip ay naghahain upang magbigay ng real-world na halimbawa na nagpapakita kung paano ang Moss platform nakamit ng isang real-world na pangangailangan.

(Entry na ito ay nai-post tumawid sa pagitan ng http://paulgalvin.spaces.live.com at http://blogs.conchango.com)

Likuran

MRO proseso ng kliyente ay nailalarawan sa pamamagitan ng mga sumusunod na

  • Mano-manong pag-apruba ng proseso.
  • Ang ilan sa suporta gamit ang mga spreadsheet sa excel.
  • Irregular approval process. The same MRO purchase approval process would vary day to day, isang tao.
  • Napakaraming papel at kamay naisulat na mga lagda — pagbili requisitions kinakailangan hanggang sa 3 nakasulat lagda bago ang huling pag-apruba.

Ang layunin ng proyektong ito kasama:

  • Ganap na awtomatiko ang proseso.
  • Ipatupad ang mga pamantayan ng enterprise para sa pag-apruba.
  • Magbigay ng pinagsama-samang tanawin ng MRO sa pagbili ng iba't-ibang mga tagapamahala.
  • Detailed audit trail.

As a side effect of the solution, nakasulat na mga lagda ay hindi na kinakailangan.

Pag-apruba ng Proseso

The approval process consists of four "swim lanes": Maylikha, Direktang manager, Functional manager at division manager.

Maylikha:

Sees the need for the purchase and starts the process. Note that the originator may or may not actually enter the purchase requisition, but instead direct another staff member to do so. Ang ilang mga beses, the originator does not have the technical expertise to fill out the PO requisition. Halimbawa, ang isang gumagamit ay maaaring magnais na pag-uutos ng isang bagong computer laptop, ngunit hindi alam ang pinakamahusay na vendor, IT pamantayan, at iba pa. Sa kasong ito, the originator works with IT and IT actually fills out the requisition.

Direktang manager:

Ito ang direct manager ng maylikha (na kung saan ay maaaring naiiba mula sa tao na aktwal na ipinasok ang PO pag-uutos sa Moss). Direct managers must approve the PO requisition before the system seeks approval further down the line.

Functional Manager:

The functional manager is the individual responsible for ensuring that the proposed purchase conforms to enterprise standards within the scope of a particular corporate function. Halimbawa, IT purchases are approved by an IT functional manager.

Division Manager:

Division managers approve purchase requisitions strictly by dollar amount. Division manager approve purchase requisitions in excess of a configurable dollar amount.

Ang Solusyon

We used the following tools and components to implement the solution:

Lumot: Serves as the platform off which everything else "hangs". MOSS provides bedrock services for security, master data, audit trails at iba pang mga tampok.

InfoPath bumubuo serbisyo: Ang isang bahagi Moss, ito ay nagbibigay-daan sa mga gumagamit punan requisitions pagbili sa pamamagitan ng isang web browser.

SharePoint Designer (SPD): Ginamit namin SPD upang ipatupad ang automated na proseso ng daloy ng trabaho.

Web Serbisyo: A c# web service enhances the user experience by enabling cascading selections lists in the InfoPath form and provides better performance with respect to filtering data. Tingnan dito para sa isang teknikal na dive malalim sa paksang ito at ang aming mga dahilan para sa paggamit nito.

Custom na Mga Listahan: MOSS user profiles provided a given user’s direct manager, but did not provide most of the data that controlled workflow decisions (e.g. kung ang naghahati manager ay kinakailangan upang aprubahan ang PO pag-uutos). We used custom lists in an "Enterprise Data" site to maintain data such as "Divisional Manager Approval Dollar Amount", "Functional Area Manager" and so forth. Lists integrated very nicely with InfoPath and also provide create/update/delete (CRUD) pag-andar na may pag-audit at seguridad sa labas ng kahon.

Gamitin ang Case

Ang paggamit kaso ay naglalarawan kung paano ang solusyon ay magkasya magkasama:

  1. Paul wants a new laptop. He describes his needs to Vivek, isang IT tao pamilyar sa corporate pamantayan ng laptop, ginustong vendor, at iba pa.
  2. Vivek log in sa Moss, accesses the PO Requisition form and enters the requisition on behalf of Paul. The form prompts Vivek for a purchase category which then uses the web services to populate a drop-down list of company-approved vendors. Vivek also specifies the corporate functional area of this purchase (e.g. "IT" or "Finance").
  3. SPD batay sa daloy ng trabaho ng mga pagsisimula, direct manager Tinutukoy ni Pablo at mga ruta sa pag-uutos sa kanyang manager, Stacy.
  4. Stacy aprubahan ang pagbili hingi.
  5. SPD workflow inspects the requisition and determines it’s an IT purchase. It routes the workflow to the IT functional manager, Wonson.
  6. Wonson aprubahan ang pag-uutos.
  7. SPD workflow muli inspects ang pag-uutos at tumutukoy na ang mga pagbili na halaga ay lumampas sa isang maxium halagang dolyar at ruta ito sa division manager para sa pag-apruba.
  8. Ang division manager aprubahan ang pagbili hingi.

Mga Tala

  • The use case demonstrates a "clean" run with no rejections or jumps.
  • Every approver has the ability to approve or reject the requisition as well as provide written comments. These are logged in the audit trail.
  • Kung ang isang responsable manager rejects ang pagbili pag-uutos sa anumang punto, the PO requisition is "dead" and the process must be started from the beginning.
  • Workflow Inaabisuhan ang nagpasimula sa bawat hakbang ng proseso ng.
  • Walang nakasulat na mga lagda — ang client natutukoy (makalipas ang ilang malakas na rekomendasyon) na ang pag-audit trail tulad ng ibinigay sa pamamagitan ng daloy ng trabaho sa kasaysayan, Hinahain ang kanilang mga pangangailangan sa pag-audit.
  • Pagsisikap — it took approximately three man weeks to implement this solution.

Konklusyon

This solution leverages MOSS as a development and run-time platform. The client was able to leverage core MOSS features to automate a routine business process that affected nearly every employee in the company. With the exception of a simple web service (kung saan mismo Pinakikinabangan Moss), almost no actual "programming" ay kinakailangan.

The solution also serves as a "showcase" para sa client, demonstrating how different MOSS features can be combined to create a fully featured business application and generate new consulting opportunities in the future.

Talahulunganan

MRO: Pagpapanatili, repair and operations. These purchases typically include items such as notepads, mga silya, personal na mga computer, printer, mga cell phone at ang mga tulad ng.

Moss / WSS Mga resulta ng paghahanap (at dataviews): tingnan ang raw data ng XML

Maaaring ito ay kitang-kita sa maraming, pero habang nag-aaral para sa aking pagsusulit Moss programming, Natutunan ko na ito ay medyo madali upang makuha ang aktwal na XML mula sa isang query sa paghahanap sa pamamagitan ng interface ng gumagamit.

Isang mabilis na paraan ay ang mga sumusunod:

  • I-access ang mga advanced na paghahanap.
  • Magsagawa ng paghahanap na nagbabalik ng ilang data.
  • I-edit ang pahina (sa pamamagitan ng mga setting ng site).
  • Baguhin ang XSL sa mga sumusunod na:

<?xml salin="1.0" pag-encode="utf-8"?>
<
xsl:stylesheet salin="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<
xsl:pagbubuhos pamamaraan="xml" salin="1.0" pag-encode="UTF-8" mag-urong="oo"/>
<
xsl:template tumugma="/">
<
pre>
<
xsl:-kopya ng piliin="*"/>
</
pre>
</
xsl:template>
</
xsl:stylesheet>

  • Pindutin apply.
  • Tingnan ang Source sa browser.

Tandaan na ang <pre> tag doesn’t do much except serve as a convenient marker when you view the results.

This trick can be very helpful when working with managed properties and customizing search. It will provide a definitive list of the XML available for you to use in your xslt which would have been very helpful the last 25 beses ko nilikha ang ilang mga customized na mga resulta ng paghahanap.

Ito marapat upang gumana para sa dataviews pati na rin, kahit na hindi ko pa nasubok na out bilang pa.

Walang CQWP para sa WSS? Subukan ito…

Nakikita ko na Eric Kraus was faced with a requirement normally met with a content query web part. Ang problema? He was in a pure WSS environment with no access to the CQWP. Rather than curling up in the fetal position (isang gumiit Mayroon akong upang labanan ang araw-araw, wari), he came up with solution that at least gives WSS shops a fighting chance to succeed. It’s described dito.

Brilliant at detalyadong pagtingin ng pamamahala ng nilalaman API

Stefan Gossner has put together a terrific 4-part series on the SharePoint Content and Deployment API dito. It offers a great overview and very good examples in code (C #).

Ako unang kinuha ang link na ito mula sa Joris poelmans blog sa http://jopx.blogspot.com/.

Kahit na ikaw ay tulad ng sa akin, sa na hindi mo pa nagkaroon na gawin magkano hands-on sa trabaho para sa pamamahala ng nilalaman, ito rin ay nagkakahalaga ng 20 minutes of your time to read.

Gamit ang mga API, maaari:

  • I-export at i-import ng nilalaman napaka madali.
  • Re-parent content. If you want to export some content from a site "A" and send it to site "B" ngunit sa isang ganap na bagong lugar sa hierarchy, ito ay posible.
  • I-export ng nilalaman mula sa isang site at i-import ang mga napiling mga piraso sa isang site.
  • Re-link nilalaman (ibig sabihin na deal sa lahat ng mga hyperlink).

WSS, doc libs & mga listahan, Kinalkula haligi na kinasasangkutan [Sa akin]

Someone on the Internets was asking about how to create a calculated column on a list that would show a value formatted as "[Gumagamit] – [Katayuan] – [Kinalalagyan]" as in "Paul Galvin – Pag-inom [libre] Serbesa – The Beach".

Paul would go in and update his entry in the list and the calculated column would update appropriately. The [Gumagamit] dapat default sa user na pagpasok / pag-update ng listahan.

A calculated column cannot use "volatile" function tulad ng [Sa akin] o [Ngayon]. I solved it in a test environment with these steps:

  1. Create a text column named "Current User".
  2. Itakda ang default na halaga nito sa [Sa akin]
  3. Create a calculated column called "Calc Test".
  4. Itakda ang halaga nito = [Kasalukuyang Gumagamit]

Nagpunta ako sa, idinagdag na item sa listahan at nagtrabaho.

Pasulput-sulpot na IE crash kapag nag-access ng mga dokumento sa isang WSS / Moss library dokumento

Ako plagued sa pamamagitan ng ito para sa 9 na buwan at ko makita na ang mga tao sa MSDN at mga forum ng Usenet mayroon itong too.l

Kung minsan, kapag-access ng isang salita dokumento (o iba pang mga uri ng doc) mula sa isang library dokumento nagiging sanhi ng Internet Explorer upang simpleng pag-crash at pumunta ang layo (pagkuha ng lahat ng mga tab na may ito kung mayroon man ay bukas).

Ito MS hotfix Maaaring malutas ito: http://support.microsoft.com/kb/938888

Din, mayroong ilang mga paglalarawan tungkol sa problema dito:

http://jopx.blogspot.com/2007/07/solving-internet-explorer-crash-when.html

Magpapakita ba ang real xpath hakbang pasulong?

Pangkalahatang-ideya ng:

Nilikha ng isang pasadyang listahan na namamahala ng isang uri ng nilalaman na may ilang mga hanay dosena.

Idinagdag ito sa isang pahina at pagkatapos ay sa pamamagitan ng SPD, convert sa isang view ng data.

Problema:

My Xpath expression was returning blank for a column named "Current Position". I referenced it thusly:

    <table border="1">
      <xsl:for-each select="/dsQueryResponse/Rows/Row" >
        <tr>
          <td>
            Current Status:
            <xsl:value-of select="@Current_x0020_Status"></xsl:halaga-ng>
          </td>
        </tr>
      </xsl>
    </talahanayan>

The column in the CT is named "Current Status". It shows up in the lookup as "Current Status". Everywhere you look, you see "Current Status".

While thrashing madly about, looking for a solution, I instead referred to "@Recruiter" and behold! — that actually returned back the current status. I expected it to return back the recruiter when I did that.

Solusyon:

I poked about in SPD. Go to that page in SPD and it shows the data view. You can inspect the actual data provided to the view and associated Xpath. Here I found out that indeed, the Xpath pointed at "Recruiter". Strangely enough, the "actual" recruiter field pointed from "Recruiter1".

Take Away:

SPD provides authoritative Xpath expressions for rows & columns in a data view.

Pangalawa, it shows the actual data. So for example, a column of type shows this:

<nobr><maikling panahon><A HREF="/sites/Corporate/HumanResources/TalentAcquisition/_layouts/userdisp.aspx?ID=17">Galvin, Paul</Ang isang><img border ="0" height="1" width="3" src="/_layouts/images/blank.gif"/><a href=’javascript:’ onclick=’IMNImageOnClick();return false;’ class=’ms-imnlink’><img name=’imnmark’ title=” border =’0′ height=’12’ width=’12’ src=’/_layouts/images/blank.gif’ alt=’No presence information’ sip=’PGalvin@xxx.com’ id=’imn_77,type=smtp’/></isang></maikling panahon></nobr>