Arkivat e Kategorisë: SharePoint

Përdorim “Person ose grup” në një kolonë llogaritur

People commonly ask about using a column of data type "Person or Group" in another column of data type "Calculated".

Bottom line, kjo nuk do të punojnë në WSS 3.0 (ose MOSS).

Kur duke shtuar një kolonë llogaritur, 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, ajo ju tregon:

Një ose më shumë referenca kolonë nuk janë të lejuara, sepse shtyllat janë të përkufizohet si një lloj të të dhënave që nuk është i mbështetur në formulat.

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.

Lidhje të dobishme në fusha të llogaritura në përgjithësi:

Mohim i shpejtë: Unë besoj se më lart që të jetë e vërtetë dhe e saktë, por unë kam parë mjaft truket zgjuar këtu dhe atje në MOSS / WSS se unë nuk do të jetë i befasuar shumë (etur në qoftë se ju do të) 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, please let me know!

MOSS / WSS tregon mua: “Faqja është ndryshuar nga një tjetër autor në …” por në fakt, ajo nuk ishte.

We did some heavy duty re-organizing of our site taxonomy via "Manage Content and Structure". For reasons unknown to me, ky proces (pse punon në kryesore) broke some navigation links in the quick launch. The broken links are characterized by:

  • Wrong URL. Për shembull, it should be "/sites/departments/HumanResources/…". Megjithatë, the new link is "/sites/Corporate/HumanResources/…".
  • Bit e përsëritura në vargun pyetës të kreut, si në:

/faqet / departamentet / HumanResources / _layouts / viewlsts.aspx?BaseType = 0?BaseType = 0?BaseType = 0?BaseType = 0

That’s easy enough to fix via site settings/navigation. Except, MOSS prezanton mua me këtë, kur unë të përpiqet dhe të bëjë atë:

imazh

Fakti është, askush nuk është duke bërë ndonjë ndryshim atje (mënjanë prej meje, sigurisht).

Një kërkim të shpejtë kthehet deri këtë diskutim Forume MSDN: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1691577&SiteID=1

William Heurdier paraqet atë bukur në parafundit (si i 10/02/07) post:

Fakti është:

Për të rivendosur titujt korruptuar, ju keni për të :

– hequr të gjitha listat nën titullin korruptuar

– hiqni korruptuar nisej

– Nga cilësimet e listës, add a removed list to the quick launch (Kjo rigjenerohet një titull jo i korruptuar)

Atëherë ju jeni të mirë për të shkuar….


SharePoint Ekspert – Sogeti Cap Gemini Zvicer

Unë kam qenë pak i hutuar, sepse kam mbajtur që dëshirojnë për të shkuar tek faqja e navigimit, 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!

</fund>

Abonohen në blogun tim!

Problemet me “Pause Deri Data” Aktiviteti në SPD-krijuara workflows

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. Pastaj, sharepoint configuration utility on each server. Here is the MS Support link for that KB: http://support.microsoft.com/kb/932816.

Sfond:

We have a business requirement where an environmental engineering manager needs to ensure that 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 (or her assistant) enters all the required permits and reminder dates at the start of the year. The system then does all the heavy lifting.

Environment:

Moss, 64 bit, virtual machine environment (development box), 2 servers (SQL on server #1, everything else on server #2).

Problems:

The Pause Until Date action seems like the perfect solution and it may well prove itself to be. Megjithatë, it does not work well out of the box (for us).

  1. The workflow job was not scheduled to run, ever. I discovered this by reading through Christopher White’s (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:\>

    That was a surprising result but easily solved:

    C:\>stsadm -o setproperty -propertyname "job-worfklow" -propertyvalue "every 1 minuta në mes të 0 dhe 59" -url http://localhost

    Operation completed successfully.

    C:\>

    Upon doing that, the first "In Progress" workflow quickly fired up and did it’s job.

  2. Mjerisht, the next one didn’t work as expected. Fatmirësisht, Christopher refers us këtu (http://support.microsoft.com/kb/932816). As of writing of this entry, we’re waiting for the IT department to obtain that hotfix, but it does look promising. Our copies of the affected .dll’s do not share the same byte size, so hopefully this will solve the problem.

Workaround:

Re-running the stsadm -o setproperty command seemed to prod the workflow timer awake. It would, roughly 7 minutes later, actually wake up and continue along with the workflow.

Questions / Issues Addressed:

Pause Until Date does not work.

Pause Until Date does not resume.

Workflow status does not change from "In Progress"

Workflow status stays "In Progress"

MRO studim rasti Workflow përdorur myshk, SPD, InfoPath & Shërbime web.

Përmbledhje

Kjo hyrje përshkruan një rast studimor përshkruan një MRO-në aktuale (Mirëmbajtje, Riparimi dhe Operacioneve) Procesi i miratimit workflow zbatuar në MOSS.

Kjo nuk është një diskutim haptazi teknike, por në vend shërben për të ofruar një shembull të botës reale që tregon se si platformë MOSS plotësuar një nevojë të vërtetë të botës.

(This entry is cross posted between http://paulgalvin.spaces.live.com dhe http://blogs.conchango.com)

Sfond

The client’s MRO process had been characterized by the following

  • Manual approval process.
  • Some support using excel spreadsheets.
  • Irregular approval process. The same MRO purchase approval process would vary day to day, person by person.
  • Lots of paper and hand-written signatures — purchase requisitions required up to 3 written signatures before final approval.

The objectives of this project included:

  • Fully automate the process.
  • Enforce enterprise standards for approval.
  • Provide consolidated view of MRO purchasing to various managers.
  • Detailed audit trail.

As a side effect of the solution, written signatures were no longer required.

Approval Process

The approval process consists of four "swim lanes": Originator, Direct manager, Functional manager and division manager.

Originator:

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. Some times, the originator does not have the technical expertise to fill out the PO requisition. Për shembull, a user may want to requisition a new laptop computer, but does not know the best vendor, IT standards, etj. Në këtë rast, the originator works with IT and IT actually fills out the requisition.

Direct manager:

This is the direct manager of the originator (which may be different from the person who actually entered the PO requisition into 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. Për shembull, 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.

The Solution

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

Moss: Serves as the platform off which everything else "hangs". MOSS provides bedrock services for security, master data, audit trails and other features.

InfoPath forms services: A MOSS component, this enables users to fill out purchase requisitions via a web browser.

SharePoint Designer (SPD): We used SPD to implement the automated workflow process.

Web Service: 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. Shoh këtu for a technical deep dive on this subject and our reasons for using it.

Listat Custom: MOSS user profiles provided a given user’s direct manager, but did not provide most of the data that controlled workflow decisions (e.g. whether the divisional manager is required to approve the PO requisition). 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) functionality with auditing and security out of the box.

Use Case

This use case illustrates how the solution fits together:

  1. Paul wants a new laptop. He describes his needs to Vivek, an IT person familiar with corporate laptop standards, preferred vendors, etj.
  2. Vivek logs into 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 based workflow starts, determines Paul’s direct manager and routes the requisition to his manager, Stacy.
  4. Stacy approves the purchase requisition.
  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 approves the requisition.
  7. SPD workflow again inspects the requisition and determines that the purchase amount exceeds a maxium dollar amount and routes it to the division manager for approval.
  8. The division manager approves the purchase requisition.

Shënimet

  • 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.
  • If a responsible manager rejects the purchase requisition at any point, the PO requisition is "dead" and the process must be started from the beginning.
  • Workflow notifies the originator at every step of the process.
  • No written signatures — the client determined (after some forceful recommendations) that the audit trail as provided via workflow history, served their auditing needs.
  • Effort — it took approximately three man weeks to implement this solution.

Conclusion

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 (which itself leverages MOSS), almost no actual "programming" was required.

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

Glossary

MRO: Mirëmbajtje, repair and operations. These purchases typically include items such as notepads, chairs, personal computers, printers, cell phones and the like.

Moss / WSS Rezultatet e kërkimit (dhe dataviews): të parë të dhënat e papërpunuara XML

Kjo mund të jetë e qartë për shumë, por duke studiuar për provimin e programimit tim MOSS, Kam mësuar se kjo është goxha e lehtë për të marrë XML aktuale nga një pyetje kërkimi me anë të ndërfaqes së përdoruesit.

Një metodë e shpejtë është si vijon:

  • Qasja kërkimin e avancuar.
  • Kryen një kërkim që kthen disa të dhënave.
  • Redaktoni faqen (nëpërmjet settings faqes).
  • Change the XSL to the following:

<?xml version="1.0" encoding="utf-8"?>
<
XSL:stylesheet version="1.0" xmlns:XSL="http://www.w3.org/1999/XSL/Transform">
<
XSL:prodhim metodë="xml" version="1.0" encoding="UTF-8" porosit="po"/>
<
XSL:shabllon ndeshje="/">
<
pre>
<
XSL:copy-of zgjedh="*"/>
</
pre>
</
XSL:shabllon>
</
XSL:stylesheet>

  • Hit apply.
  • View Source in the browser.

Note that the <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 times I created some customized search results.

This ought to work for dataviews as well, though I have not tested that out as yet.

Asnjë CQWP për WSS? Provoni këtë…

I see that Eric Kraus was faced with a requirement normally met with a content query web part. The problem? He was in a pure WSS environment with no access to the CQWP. Rather than curling up in the fetal position (Unë kam një thirrje për të luftuar çdo ditë, duket), he came up with solution that at least gives WSS shops a fighting chance to succeed. It’s described këtu.

Shiko Brilliant dhe i detajuar i menaxhimit të përmbajtjes API

Stefan Goßner has put together a terrific 4-part series on the SharePoint Content and Deployment API këtu. It offers a great overview and very good examples in code (C #).

I first picked up this link from joris poelmans blog at http://jopx.blogspot.com/.

Edhe në qoftë se ju jeni si mua, in that you have not had to do much hands-on work for content management, this is well worth 20 minutes of your time to read.

Using the API, one can:

  • Export and import content very easily.
  • Re-parent content. If you want to export some content from a site "A" and send it to site "B" but in a totally new place in the hierarchy, this is possible.
  • Export content from a site A and import selected bits into site A.
  • Re-link content (meaning deal with all the hyperlinks).

WSS, libs doc & Listat, Kolona llogaritura përfshijnë [Mua]

Someone on the Internets was asking about how to create a calculated column on a list that would show a value formatted as "[Përdorues] – [Statusi] – [Vend]" as in "Paul Galvin – Pirja [falas] Birrë – The Beach".

Paul would go in and update his entry in the list and the calculated column would update appropriately. The [Përdorues] duhet të parazgjedhur për përdoruesit e hyrjes / përditësimin e listës.

A calculated column cannot use "volatile" funksione të tilla si [Mua] ose [Sot]. I solved it in a test environment with these steps:

  1. Create a text column named "Current User".
  2. Set vlerën e saj të paracaktuar për [Mua]
  3. Create a calculated column called "Calc Test".
  4. Set vlerën e saj = [Përdoruesi aktual]

Unë shkova në, shtuar një artikull në listë dhe ai ka punuar.

Rrëzohet përhershme IE kur qasja në dokumente në një bibliotekë WSS / MOSS dokument

Unë kam qenë i rrënuar nga kjo për 9 muaj dhe unë shoh se njerëzit në MSDN dhe forumeve Usenet kanë atë too.l

Nganjëherë, kur qasja në një dokument Word (ose lloje të tjera doc) nga një bibliotekë dokument shkakton Internet Explorer për të thjesht të rrëzuar dhe të shkojë larg (duke marrë të gjitha skedat me atë nëse ndonjë janë të hapura).

This MS hotfix may solve it: http://support.microsoft.com/kb/938888

Edhe, there’s some description about the problem here:

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

Will vërtetë XPath hap përpara?

Përmbledhje:

Krijuar një listë me porosi që menaxhon një lloj përmbajtje me disa kolona duzinë.

Shtuar atë në një faqe dhe pastaj nëpërmjet SPD, konvertuar në një pamje të dhënave.

Problem:

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:vlera-e>
          </td>
        </tr>
      </XSL>
    </tryezë>

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.

Zgjidhje:

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".

Marr me vete:

SPD ofron autoritative shprehje XPath për rreshtat & kolona në një pikëpamje të dhënave.

I dytë, it shows the actual data. So for example, një kolonë e tipit tregon këtë:

<nobr><hapësirë><A HREF="/sites/Corporate/HumanResources/TalentAcquisition/_layouts/userdisp.aspx?ID=17">Galvin, Paul</Një><img border ="0" height="1" width="3" src="/_layouts/images/blank.gif"/><a href = "javascript:’ onClick = "IMNImageOnClick();kthimit të rreme;’ class = "ms-imnlink '><Emri img = 'imnmark’ title =” border =’0′ height = '12’ width = '12’ _layouts / src = '/ images / blank.gif’ alt '= Asnjë informacion prania’ PGalvin@xxx.com Sip = '’ id = 'imn_77, type = SMTP' /></një></hapësirë></nobr>