<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1670796892062451419</id><updated>2012-02-16T06:19:47.708-05:00</updated><category term='SharePoint'/><category term='Microsoft InfoPath'/><category term='Visual Studio'/><category term='Microsoft Office SharePoint Server'/><category term='MOSS'/><category term='Windows SharePoint Services'/><category term='Microsoft Office'/><category term='WSS'/><category term='Microsoft SharePoint'/><category term='SharePoint Designer'/><title type='text'>SharePoint Consulting and Codeless Solutions</title><subtitle type='html'>A blog about SharePoint from an expert consultant in the field. Learn about SharePoint, find planning and assessment tools and articles, or ask questions and receive free advice.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sharepointcodeless.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sharepointcodeless.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Cheri</name><uri>http://www.blogger.com/profile/16187653067496294609</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://2.bp.blogspot.com/_Mc16RsyC8pA/S7o4CzNWnhI/AAAAAAAAAA8/kwL5mm5fOgc/S220/profilephoto.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>3</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1670796892062451419.post-8258795739408763705</id><published>2010-10-20T08:54:00.000-04:00</published><updated>2010-10-20T08:54:35.747-04:00</updated><title type='text'>Special Character Problems in DVWPs and InfoPath Managed Code</title><content type='html'>There are a couple of instances where we've run into problems with SharePoint-related technologies handling of special characters. Whether in InfoPath forms or DVWPs, there are sometimes glitches with converting fields, URLs, or filenames with special characters like &amp;amp;, ', %, etc. This article discusses some specific examples of workaround code that we have applied. &lt;br /&gt;&lt;strong&gt;Data View Web Parts&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;DVWPs can be a powerful way to work around some of the limitations of TOCs and CQWPs. For example, on our public website,&amp;nbsp;we have two DVWPs in the News and Events &amp;gt; Press Releases &amp;gt; Pages area.&lt;br /&gt;&lt;br /&gt;The issue surfaced when we entered an article with an apostrophe in the title. What was happening was that SharePoint was trying to auto-encode the URL of the page, and thus converting the aprostophe to it's own special code equivalent. Unfortunately, that made the URL invalid and the user would receive a 404 error. So in order to bypass the auto-encoding, The following code in the DVWP Title hyperlink code had to be replaced:&lt;br /&gt;&lt;br /&gt;Line 212:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;&amp;lt;a href="{@FileRef}"&amp;gt;&amp;lt;xsl:value-ofselect="@Title" /&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Was changed to:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;&amp;lt;a href="./{@FileLeafRef}"&amp;gt;&amp;lt;xsl:value-of select="@Title" /&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To explain further, the {@FileRef} attribute is a reference to the full URL path of the article. When employed, Microsoft technology tries to be "smart" and auto-encode the url beause it recognizes that it is a URL. But sometimes you really don't want it to be "smart", and this is one of those cases. So we construct the URL manually by using "./" to indicate the current site path (relative reference) and adding {@FileLeafRef} which is basically the attribute which stores the page file name. For some reason, it doesn't try to auto-encode the 'Leaf' attribute, just the full path attribute. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;InfoPath Managed Code&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;We ran into a very similar problem a little while ago an application site. In there, we use a administrator-deployed, 2007 InfoPath form with managed code, which contains C#/xpath code to connect to the SQL Data Warehouse, look up a Facility by&amp;nbsp;ID Number, and return the facility's official name. The problem was when it tried to bring back a facility name (or factility type, or any other field) with a special character like an ampersand (e.g. Tom &amp;amp; Joe's Clinic). We were not able to successfully determine how to remove the auto-encoding, so instead we found another short-term workaround. Now I'll try to briefly describe the code change employed. &lt;br /&gt;&lt;br /&gt;After setting up some XPathNavigators to point to the secondary datasource fields, the code then defines local variables to store the retreived field values. The original code was as follows:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacName = DWfacName.Value; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacCity = DWfacCity.Value; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacState = DWfacState.Value; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacType = DWfacType.Value; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The modified code used the variable.value.replace() function to strip out the auto-encoded special character for the ampersand and replace them with an actual ampersand. &lt;br /&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacName = DWfacName.Value.Replace("&amp;amp;", "&amp;amp;"); &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacCity = DWfacCity.Value; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacState = DWfacState.Value; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;myFacType = DWfacType.Value.Replace("&amp;amp;", "&amp;amp;"); &lt;/span&gt;&lt;br /&gt;&lt;span style="color: #660000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now obviously, this is not the ideal solution, as it does not take into account all special characters--only the ampersand. But in this case we only really needed it to handle the ampersand. And the solution will likely be retired in the next six months or so and replaced with a SP2010 solution. So it's not worth digging much deeper into at this point.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1670796892062451419-8258795739408763705?l=sharepointcodeless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointcodeless.blogspot.com/feeds/8258795739408763705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1670796892062451419&amp;postID=8258795739408763705' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default/8258795739408763705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default/8258795739408763705'/><link rel='alternate' type='text/html' href='http://sharepointcodeless.blogspot.com/2010/10/special-character-problems-in-dvwps-and.html' title='Special Character Problems in DVWPs and InfoPath Managed Code'/><author><name>Cheri</name><uri>http://www.blogger.com/profile/16187653067496294609</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://2.bp.blogspot.com/_Mc16RsyC8pA/S7o4CzNWnhI/AAAAAAAAAA8/kwL5mm5fOgc/S220/profilephoto.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1670796892062451419.post-2358201734473691919</id><published>2010-04-06T23:38:00.000-04:00</published><updated>2010-04-06T23:38:59.887-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Designer'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft Office'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft InfoPath'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>What are SharePoint 'Codeless Solutions'?</title><content type='html'>One of the popular aspects of SharePoint is how much power it puts into the end user’s--or perhaps more accurately--the power-users’s hands. This is a formula Microsoft has employed before. You might remember when Microsoft Office came out and suddenly business users could create databases and spreadsheets and eventually even build their own ad-hoc applications with macros and forms. Today business users can build their own collaborative environments with SharePoint. But this capability also comes with a whole new set of risks. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Codeless SharePoint development is a way of building actual web applications, using tools which do not require compilable code.&lt;/strong&gt;&amp;nbsp;Codeless solutions can usually be built in shorter time frames than traditional development cycles. This is not to say that a certain level of technical knowledge is not required, but given the extent of information available on the internet, it is easier to self-teach than ever before. &lt;br /&gt;&lt;br /&gt;For example, traditional application developers use tools like Visual Studio to write code which they then compile and deploy for user consumption. The development process requires a dedicated technical resource as well as a configured environment for creating the executable code. It is not the kind of thing which is accessible to most business users and it requires a certain technical education and experience level to perform this kind of development. &lt;br /&gt;&lt;br /&gt;Codeless development uses tools which are commonly accessible to users, such as SharePoint Designer and InfoPath. Technically one could argue that other Office products are also part of this toolset. Any innovative power-user can learn how to develop full-functioning applications using these tools, if they have the inclination. &lt;br /&gt;&lt;br /&gt;On a cautionary note, one should consider the axiom that ‘just because you can do it, doesn’t mean you should’. There is no replacement for planning and thought. One of the risks with any highly accessible tool is that it opens the possibility for ‘junk’ solutions, as well. One still needs to have a well thought-out design plan, and take the time to weigh the risks of the software you’re creating. Have you considered how your solution handles data integrity? Are you building logical flaws into your system? Will the solution be scalable over time? &lt;br /&gt;&lt;br /&gt;If your organization is considering utilizing codeless solutions, do some research on the pros and cons specific to the toolsets you want to employ. For example, here is a good article about &lt;a href="http://mdasblog.wordpress.com/2008/12/17/sharepoint-designer-useful-tool-or-spawn-of-the-devil/"&gt;SharePoint Designer&lt;/a&gt;. &lt;br /&gt;&lt;div class="zemanta-pixie" style="height: 15px; margin-top: 10px;"&gt;&lt;a class="zemanta-pixie-a" href="http://reblog.zemanta.com/zemified/ef458c1d-4c6a-4f89-abc9-5f7a27dbcaf7/" title="Reblog this post [with Zemanta]"&gt;&lt;img alt="Reblog this post [with Zemanta]" class="zemanta-pixie-img" src="http://img.zemanta.com/reblog_e.png?x-id=ef458c1d-4c6a-4f89-abc9-5f7a27dbcaf7" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; float: right;" /&gt;&lt;/a&gt;&lt;span class="zem-script more-related pretty-attribution"&gt;&lt;script defer="defer" src="http://static.zemanta.com/readside/loader.js" type="text/javascript"&gt;&lt;/script&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1670796892062451419-2358201734473691919?l=sharepointcodeless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointcodeless.blogspot.com/feeds/2358201734473691919/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1670796892062451419&amp;postID=2358201734473691919' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default/2358201734473691919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default/2358201734473691919'/><link rel='alternate' type='text/html' href='http://sharepointcodeless.blogspot.com/2010/04/what-are-sharepoint-codeless-solutions.html' title='What are SharePoint &apos;Codeless Solutions&apos;?'/><author><name>Cheri</name><uri>http://www.blogger.com/profile/16187653067496294609</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://2.bp.blogspot.com/_Mc16RsyC8pA/S7o4CzNWnhI/AAAAAAAAAA8/kwL5mm5fOgc/S220/profilephoto.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1670796892062451419.post-6039098793117100654</id><published>2010-04-05T14:24:00.009-04:00</published><updated>2010-04-06T23:35:20.181-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft Office SharePoint Server'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='WSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft SharePoint'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows SharePoint Services'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Is SharePoint Right for You?</title><content type='html'>Many companies have embraced the 'We are a Microsoft shop' mantra.&amp;nbsp;As a result of&amp;nbsp;this, some have been sold on the SharePoint products even before they knew what it really was. I personally get a lot of inquiries along the lines of: &amp;nbsp;'how can I do (fill-in-the-blank) in SharePoint'?&amp;nbsp;Upon questioning, I usually determine that they do not have a clear plan of approach and often not even a clear business need. This is a case of putting the cart before the horse, or more accurately, picking a tool before defining the requirements of the tool. Would you use a hammer to insert a screw in the wall, just because you already bought the hammer? &lt;br /&gt;&lt;br /&gt;First, in order to determine if SharePoint is right for you, you need to assess three things.&lt;br /&gt;&lt;br /&gt;1. What is your business driver or drivers and does SharePoint cover them?&lt;br /&gt;2. What is your budget level?&lt;br /&gt;3. What is your tolerance for technology and culture change within your business?&lt;br /&gt;&lt;br /&gt;Now there are some more detailed feasibility questions you will eventually need to get into such as compatibility and integration needs, supportability, scalability, and others. But first we need to know more about what the product is and is not, and whether it can theoretically fulfill some or all of your needs. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Let’s start at the top, with identifying your business drivers.&lt;/strong&gt; Take a few moments to consider your needs. Do you need things like tools to support web development, content and document management, and general business collaboration and communication? Do you have a specific project or goal in mind, such as starting a company intranet or building a sales management tool? If so, then this tool may meet your needs. If you’re looking for an out-of-the-box total business solution, such as a CRM, or if your primary need is document management or data management, this may not be tool for you. SharePoint does have these capabilities, but its power is in doing a combination of these things moderately well, rather than being an expert product for specific niches. It is not the best document management product available, for example. &lt;br /&gt;&lt;br /&gt;The first thing you need to know is that SharePoint is not just a single product, but more of a product line, or suite of products. It has two main components, WSS and MOSS. &lt;br /&gt;&lt;br /&gt;WSS stands for Windows SharePoint Services. WSS is a free framework component which, in essence, gives you the ability to use SharePoint features in your Microsoft Windows network environment. It gives you the ability to create collaborative websites for your business teams with document sharing, Outlook and Office integration, and built-in organizational tools like announcement lists, discussion boards, contact lists, calendars, etc. Here is a Microsoft TechNet article which will describe some of the &lt;a href="http://technet.microsoft.com/en-us/windowsserver/sharepoint/bb848085.aspx"&gt;Features of WSS&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The challenge with using WSS without MOSS is developing a scalable and supportable implementation. WSS is really just a loose collection of features without good administrative cohesion, when used without the MOSS portal product. &lt;br /&gt;&lt;br /&gt;MOSS stands for Microsoft Office SharePoint Server. MOSS is the commercial SharePoint server product, and it is usually what people are thinking of when they think of “SharePoint”. Depending upon factors like your licensing and feature needs, it can be a costly undertaking. Understanding the Microsoft licensing options can also be a challenge. If you decide to invest in MOSS, expect to spend some time and resources on research, planning activities, and possibly hiring a consulting resource to help shorten the learning curve. To learn more, view&amp;nbsp;&lt;a href="http://office.microsoft.com/en-us/sharepointserver/HA101656531033.aspx"&gt;Microsoft’s product overview for MOSS&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Now onto question number two, your budget level.&lt;/strong&gt; Up until recently, SharePoint was not well known or adopted amongst the small to mid-sized business levels. There were several significant large corporate implementations, some with SharePoint proper, and others with Microsoft products which were later incorporated into SharePoint, like MS Content Management server. Nowadays, SharePoint is marketed as a single suite of tools, much like Microsoft Office. And it’s also much more broadly adopted, mostly because many mid-sized and larger businesses are finding tremendous potential value in the features it offers. But if you don’t need the whole suite or can’t afford it, that doesn’t mean you’re completely out of luck. If your needs are simply to increase collaborative abilities within your organization, and you’re willing to put some design planning time into it, you may be able to use WSS. If your need is for a modest public website, you might consider OfficeLive. OfficeLive, or www.OfficeLive.com, is a Microsoft-hosted web site which offers free SharePoint-based websites for both commercial and non-commercial use. Yes, that’s right, free for commercial use. And of course there are non-Microsoft alternatives, as well, but which I won’t get into here for brevity sake. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Lastly, what is your business’ level of tolerance for technology culture change?&lt;/strong&gt; The reason I bring this up as one of the three key questions, is because the SharePoint decision is, in my opinion, far more than just a simple product purchase. It can also be a new way of doing business, which can have dramatic effects on your existing business processes and systems. I have done full-scale, enterprise implementations several times, and what I’ve seen is that when business users ‘catch on’ to the possibilities of the tool, your SharePoint environment takes on a life of its own. It becomes an organic, evolving entity which is developed and run by its business users. The power of the platform lies in the power it puts into the average user’s hands. Now users can build their own websites and sometimes even their own automated solutions. If you do not plan your implementation well, you may find yourself in over your head very quickly. &lt;br /&gt;&lt;br /&gt;A successful SharePoint implementation requires 1) a business environment which is flexible and agile; ready for change and new ways of communicating and sharing information; 2) technical and business experts who are proactive thinkers and dedicated to solving business needs; and 3) clear, efficient business processes modeling and strategic planning. You should expect to spend time and resources on handling direct and indirect impacts to your existing business processes when you choose this tool. You may find that once users have better access to business data and better communication tools, existing process gaps and data integrity flaws become a lot more visible. You may find that user demand increases not only technical staff utilization but also marketing and other business units’ staff utilization significantly. And you may also find that the system quickly becomes different than you planned, hopefully better than you planned, as your solution morphs to fit your real business needs rather than just your perceived ones. &lt;br /&gt;&lt;br /&gt;If you determine that SharePoint is the right option for you, you may find the following governance planning resource links useful:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://office.microsoft.com/download/afile.aspx?AssetID=AM102306291033"&gt;Office SharePoint Server 2007, SharePoint Governance Checklist Guide&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.prescientdigital.com/services/intranet%20services/the-sharepoint-plan"&gt;The SharePoint (MOSS) Plan&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you'd like more information about choosing a web/communication platform, this article has a nice usage graph and accurate info. I've also found the author to be a fairly unbiased source of information, although&amp;nbsp;I do not have any personal familiarity with the company or its services: &lt;br /&gt;&lt;a href="http://intranetblog.blogware.com/blog/_archives/2010/2/11/4453334.html"&gt;The best 2.0 technology for your intranet&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="zemanta-pixie" style="height: 15px; margin-top: 10px;"&gt;&lt;a class="zemanta-pixie-a" href="http://reblog.zemanta.com/zemified/70957747-c748-4942-84b2-2f8ef5542a6b/" title="Reblog this post [with Zemanta]"&gt;&lt;img alt="Reblog this post [with Zemanta]" class="zemanta-pixie-img" src="http://img.zemanta.com/reblog_e.png?x-id=70957747-c748-4942-84b2-2f8ef5542a6b" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; float: right;" /&gt;&lt;/a&gt;&lt;span class="zem-script more-related pretty-attribution"&gt;&lt;script defer="defer" src="http://static.zemanta.com/readside/loader.js" type="text/javascript"&gt;&lt;/script&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1670796892062451419-6039098793117100654?l=sharepointcodeless.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointcodeless.blogspot.com/feeds/6039098793117100654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1670796892062451419&amp;postID=6039098793117100654' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default/6039098793117100654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1670796892062451419/posts/default/6039098793117100654'/><link rel='alternate' type='text/html' href='http://sharepointcodeless.blogspot.com/2010/04/evaluating-sharepoint-as-solution.html' title='Is SharePoint Right for You?'/><author><name>Cheri</name><uri>http://www.blogger.com/profile/16187653067496294609</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://2.bp.blogspot.com/_Mc16RsyC8pA/S7o4CzNWnhI/AAAAAAAAAA8/kwL5mm5fOgc/S220/profilephoto.jpg'/></author><thr:total>4</thr:total></entry></feed>
