I’m using a calendar to track panel discussions on a given day. I have two sessions: morning and afternoon. I want to create a view that shows morning sessions only listed alphabetically via a session ID. This is a little tricky to accomplish (maliban kung Naiwan ako ng isang bagay na tunay na halata).
I can easily create a filtered view showing just that day’s events. The calendar will show all those events and if they all take place on the same hour, it lists them side by side in the hour slot. That’s great. The tricky part is that, sa pamamagitan ng default, it wants to list them in ID format. Kaya, if I add "Session 02" and then "Session 01" sa kalendaryo, ipinapakita nito ang mga ito sa pagkakasunud-sunod na (i.e, Sesyon 02 at pagkatapos Session 01). To list them in Session ID order, Akala ko upang subukan ang mga bagay:
- Configure the view using the web user interface. No luck. There are no options to sort items this way.
Dahil iyon ay hindi gumagana, I am now hoping there’s a CAML query somewhere in there that will allow me to override the sort. CQWP lets me make that kind of change, siguro kalendaryo kalooban pati na rin?
- I-edit ang mga web bahagi, look for an "export" function at … Bzzz! I can’t export its XML. There is no export option.
I’m still holding out hope that I can find and modify some CAML query. Since I can’t export the web part, na nag-iiwan sa SharePoint Designer.
- I add the calendar web part to a sandbox site and open that site using SharePoint Designer. I look at the markup for the web part and I find what I’m looking for. It’s encoded madness, subalit ito ay mayroong: "<ListViewXml …. >naka-encode kabaliwan</ListViewXml>". Tiyakan, may hiyas na ito:
<Tanong>
<Saan>
<DateRangesOverlap>
<FieldRef Name="EventDate"/>
<FieldRef Name="EndDate"/>
<FieldRef Name="RecurrenceID"/>
<Value Type="DateTime">
<Buwan />
</Halaga>
</DateRangesOverlap>
</Saan>
<Orderby><FieldRef Name="Session_x0020_ID" /></Orderby>
</Tanong>
(Ko na ang decoded <Ni at > at hatiin ang mga ito out sa maramihang mga linya para sa kapakanan ng kaliwanagan).
Idagdag ang <Orderby> kaunti at ngayon kusa itong isinasaayos sa pamamagitan ng Session ID, hindi ang panloob na mga item sa listahan ID.
Katakut-takot ang laki tip o’ ang sumbrero sa Becky Isserman para sa kanyang mga komento sa blog post Isha Sagi ni: http://www.sharepoint-tips.com/2008/07/caml-sorting-by-file-name.html. I wouldn’t have put the <Orderby> sa tamang lugar nang hindi kanyang komento.
Umaasa ako na magsulat ito up ng higit na malinaw na may mga screen shot sa lalong madaling panahon, pero kung sakali hindi ko magawa, hindi bababa sa ko ginawa ito magkano.
</dulo>