Posts

Showing posts with the label sharepoint

SharePoint Document Library Folders & Tagging

Although I'm aware of the downside of using folders in Document Libraries, I still think it's one of the best ways to categorise files. This is especially true when migrating from file-shares to SharePoint. Furthermore, it's a great hassle to individually tag metadata or column information for each file that I wish to dump into SharePoint. To workaround this issue, the solution is to use automatic tagging in conjunction with the use of folders. See here However, if you structure your Document Libraries with many folders and different levels, you will quickly end up with a different problem: Having to set-up the rules (mapping) for each folder using SharePoint. The easiest way to get around this is to edit the rules directly. This file can be found in the hidden Forms folder as client_LocationBasedDefaults.html. By opening the Document Library using Windows Explorer, you will be able to edit the file. Do so with great care!

Setting Default Column Values for Document

I had the requirement to map the default column values of documents to the nested folder structure it is created/ uploaded into. As an example, a document uploaded into \Document Library\2018\Jan\DeptABC would have default column values accordingly: Year: 2018 Month: Jan Dept: DeptABC The column values (metadata) make searches effective and rather than to have users provide the metadata as a distinct step, we determine the metadata based on the logical (directory) location of the document. To manually configure this, go to [Library Settings] -> [Column default value settings] See here . However, if there are too many columns to configure, a quicker way to do so is to edit the mapping file directly. This file is found in the root of the library: " Forms\client_LocationBasedDefaults.html ". It is an XHTML file that isn't too difficult to comprehend. Do be careful and backup the file before editing.

SharePoint Schema

Image
From my research, I’ve made some notes as to the structure of SharePoint 2013.

SharePoint OOTB Workflow

Recently, I had the chance to play with SharePoint lists and Document Libraries. I also had the challenge of using SharePoint without the use of Designer. In creating a List or Document Library and associating it with a Workflow, my challenge was to create a View such that I could filter it based on the Workflow status. Thanks to the wisdom of the internet crowd, I chanced upon this article here The status of each workflow is stored as a numeric value but displayed as a string description as follows: NotStarted = 0 FailedOnStart = 1 InProgress = 2 ErrorOccurred = 3 StoppedByUser = 4 Completed = 5 FailedOnStartRetrying = 6 ErrorOccurredRetrying = 7  ViewQueryOverflow = 8 Canceled = 15 (to be confirmed)  Approved = 16 Rejected = 17 (to be confirmed) To filter, compare the value against a numeric constant. For example: show only those that are in progress: = 2 show only those that are not completed: < 5 show only those approved: = 16

SharePoint - create an issue tracking list

I am trying to create an issue tracking list which takes a number of input criteria to determine the criticality of the reported issue. Sites to refer to: http://www.nothingbutsharepoint.com/ and http://blog.pathtosharepoint.com/ The general criteria are: Time Tolerance - how long can user tolerate the issue/ downtime Functional Impact - which aspect of the business is impacted No. of Affected Users - how many users are affected Availability of Alternatives/ Workarounds User Type/ Category - who/ which group of users are affected Based on the above input, some scoring is assigned and criticality is finally determined. I created the following Choice columns in the list with the fields preceded with a (x) to number the choices. Tolerance:  (x2) half day (5), 1 day (3), more than 1 day (1) Impact:  (x5) Others (0), Sales (5), Financial (5), Reputation (8), SSO/ Email/ Network (8) Affects:  (x5) Individual (1), Business Unit (3), Department (5), Site (8),...

SharePoint: "An unexpected error has occurred"

Debugging SharePoint is ridiculously difficult as the error in the title shows. To have any meaningful errors displayed, you need to enable the error display. To do so requires you to change the web.config of the site. Namely: Safe Mode Custom Errors Change Safe Mode to display call stack: <SafeMode MaxControls="200" CallStack="true" ... Change Custom Error to off: <customErrors mode="off"... After which, you will be able to see the standard ASP.NET error page that you're already accustomed to. More advanced troubleshooting tips can be found here: http://blog.thekid.me.uk/archive/2007/07/25/debugging-tips-for-sharepoint-and-wss-exceptions.aspx

Unable to access the SharePoint Default.aspx Page due to WebPart

Have you ever encountered a situation where after you've added a rogue WebPart into the SharePoint site's default.aspx page, the site perpetually complains "An unexpected error has occurred."? Such a rogue WebPart effectively blocks a user from entering the site to even correct the issue. The solution is rather simple: note the site URL (e.g. http://mymoss/sites/mysite/default.aspx) add "?content=1" to the end of the URL (e.g. http://mymoss/sites/mysite/default.aspx?content=1) at the Web Part Page Maintenance, remove the rogue WebPart and you're done!

SharePoint Document Locked by Oneself

Have you ever locked a document in SharePoint unknowingly? This happens when one edits a document directly from the site and one of the following happens: Network goes down Office client application crashes SharePoint site goes down When this happens, you will not be able to overwrite the document as the document had been "locked" by you "for editing"! There is no known way of unlocking the document. The solution is to wait-it-out (see http://support.microsoft.com/kb/899709 ). Wait for 10 minutes for the server to auto unlock the document.

Take-Home Notes from Seminars

Emerging Technologies Cloud – for starters, for for non-business critical functions like CRM, email, collaboration Collaboration User experience Data deluge – what to do with so much data? Top Business Prioritises Business process improvement Reduce enterprise costs Increase use of information & analytics Improve workforce effectiveness Attract & retain new customers Business Intelligence State of Business Intelligence today – 20% of users in an organisation have BI in place; 80% of users do not. BI Solution Architecture Source system ETL processes Data Warehouse solution (ODS, Staging, Analysis cubes) Report presentation Microsoft Business Intelligence Strategy Familiarity – Office integration Collaborative – SharePoint integration Manageability – MS SQL Data Warehouse Trends in Data-Warehouse Increase in volume Reduce cost Adoption of appliances Move into MPP Desire for real-time analytics Realisation of the importance of data quality Microsoft...

InfoPath 2007 Tips

To publish InfoPath forms to Sharepoint with time-stamped filenames: concat("Submission as at ", now()) as the filename in the publishing interface To develop using Tools for Office SDK for InfoPath, make use of these: System.Environment.UserName to derive the logged-in username; thisXDocument.Role to derive the roles; thisXDocument.ViewInfos["View Name"] to get to the appropriate view; thisXDocument.DOM.selectSingleNode to select nodes based on the full XML document; docActionEvent.Source.selectSingleNode to select nodes based on the event parameter; Use ActiveX component to derive the domain and username if not using tools for office. Use ActiveXObject("Wscript.Shell") and the process environment. Calling web services from scripting code is not straight-forward and doing the same from the native InfoPath form without code is buggy! Monetary values should be dealt with using String instead of double as multiplication of double yields unexpected ...

SharePoint 2007 Tips

To display the username in a Title column Choose Default value as Calculated Value; Type in: =REPLACE(Me,1,FIND("\",Me),""); For Team Discussion to work Subject field is used only in the first article within the thread; A web-part would mainly use the Subject and Replies fields for listing; Threaded view – which displays only Threading – is the only useful view; To sort a list by the abbreviated month Create a choice type for month input ([Report Mth]). The values should be the abbreviated month (e.g. Jan, Feb, Mar, etc); Create a calculated column to assign a numeric month to the list; The formulae should be: =MONTH("01-"&[Report Mth]&"-"&1990); To find the difference between 2 dates Use the DATEDIF function on 2 date fields DATEDIF(d1 : Date, d2: Date, “D”) : Number Example: DATEDIF(dateColumn, [Today], “D”) To convert a text value (from InfoPath) to numeric Create a calculated column of numeric type Apply ...

Son of ....... SmartPart; Sharepoint & ASP.NET 2.0

Image
Admittedly, I don't really know much about Sharepoint Services (WSS): My experience has been mainly in the area of ASP.NET. All I really wanted to do was to write user controls for deployment in a Sharepoint site. However, setting up the development environment was a real torture! My setup is to be: Windows 2003 Std. Ed. SQL 2000 WSS 2.0 SP2 ASP.NET 2.0 SonOfSmartPart (to run user controls as webparts [ http://www.smartpart.info ]) For the most part, the installation of the operating system, database server and Sharepoint Services was a breeze. Hell began with ASP.NET 2.0... Upgrading the Sharepoint website to use ASP.NET 2.0 causes all the webparts to show "Web Part Error"! After ploughing through several posts, this was resolved by changing the trust level of the website. Web.config: <trust level="Full" originurl=""/> (Note that this is probably not appropriate for a "live" site; but heck, I'm only setting up a development site......