I've been brought in as an intern to develop a SharePoint site. My team won't authorize the budget for Visual Studio and I don't have physical or remote access to the SharePoint server (running Windows SharePoint Services 3.0 a.k.a. WSS) on the back-end.
So what exactly can I do? I'm familiar with web technologies like PHP, JavaScript, HTML, and CSS. However, since the environment is SharePoint, I'm stumped trying to figure out how much control I have with Microsoft's definition of "Full Control".
If I can write some C#, I'm pretty sure that would be sufficient, but as I said no Visual Studio for me.
Any good ideas of features that people will use on a site built with the limited functionality of WSS and SharePoint Designer with "Full Control"? Can I somehow manipulate the default Web Parts into something cool or useful? Are there Ajax tricks I can do to accomplish something on the back-end?
Thanks in advance, I'm new to StackOverflow and eager to get involved here!
You can actually accomplish a LOT in SharePoint outside of a custom .NET solution. Some recommended learnings are:
JavaScript/jQuery - Know how to interface with a WebService using jQuery. SharePoint exposes a number of very useful WebServices in the /_vti_bin directory. Click here for a list: http://msdn.microsoft.com/en-us/library/ms479390.aspx. For example, I recently built a scrolling slide-show webpart entirely using jQuery and SharePoint's built-in webservices that pulls from a provided picture library.
DataForm Web Parts. Do some searching around on what these are and how they work in SharePoint. The tl;dr of these is that they're databound webparts that are bound to an SPDataSource and then rendered using XSLT to format the bound data. You can work with these in SharePoint designer, completely through the markup of your aspx page.
Do some searching on "customizing sharepoint list forms." The NewForm, DispForm and EditForm of any list or library can be customized to have behaviour or content added to them.
Those are just off the very top of my head...
EDIT:
I forgot to also mention http://www.muhimbi.com/Products/SharePoint-Infuser-%28Free%29.aspx
I've been meaning to check this out, since the concept is sound. I haven't tried it out myself but it will save you a lot of hassle when it comes to adding custom script that encompasses your entire site.
Related
I'm a developer with 5 years of MCMS development and without a single know how with SharePoint.
I want to use the CMS capabilities of Sharepoint to migrate my applications but I DONT KNOW HOW TO START!!!!!!
In my actual projects i have a Visual Studio solution with all my code, my templates and my usercontrols...
I cannot see how can i do the same thing with Sharepoint :(
I want to customise my site like i did before, i want to create pages based on templates like i did before.
Anyone knows where i can find a walkthrough that explains me that?
Thank U All.
Unfortunately I think you are going to have to learn SharePoint. Even the WCM features are a big topic, and probably the best book is Andrew Connell's "SharePoint 2007 Web Content Management Development" - I don't think a 2010 version is available yet. The good news is that I think the MCMS product had a big influence on how the SharePoint WCM features were architected, so the underlying principles will be similar.
SharePoint 2010 has a Visual Web Part that will encapsulate a user control which might make the transition easier. Also see my answer to this question about converting an ASP.NET site to SharePoint which might have some relevant information.
Most of the information about converting from MCMS to SharePoint is for the 2007 version of the product. This two-part article on MSDN seems to be the best starting point.
I cannot see how can i do the same thing with Sharepoint :( I want to customise my site like i did before, i want to create pages based on templates like i did before.
Problem is, SharePoint is not MCMS, no matter how Microsoft tries to brand it as its successor.
Creating sites in SharePoint is almost opposite of how things we were done in MCMS were you build from the ground up using ASPX templates, user controls and placeholders. In SharePoint, you'll have to strip out most of the OOB stuff you don't need. The recommended approach to custom development is through web parts, CAML, and the SharePoint APIs.
I did not use sharepoint before!!
Did you use Share-point 2010 before?, MS is saying that it can do a CMS website and without previous sharepoint version limitations, I am worry about that:-
1-
Can I create whatever I need in UI layer?
Any designer does not let me do things at the lowest level, (HTML, JQUERY, Javascript, CSS), will cause great troubles, does that apply on share-point?
2-
Is it really compatible with FF, and Chrome browsers, or I will find my self in deep troubles.
3-
Do u know anything that makes me not creating a CMS site like this http://www.editeur.org/ using sharepoint 2010 ?
Thanks
These websites use SharePoint:
http://sharepoint.microsoft.com/
http://www.cadbury.co.uk/
http://www.ferrari.com/
As you can see, it is possible to create highly customized layouts. However, you need to be aware that the learning curve is steep - you have never used SharePoint before, so there's a lot of learning ahead of you.
SharePoint 2010 supports non-IE browsers better than SharePoint 2007. This article contains a detailed analysis of this problem. There seems to be no known limitations related to content management, but you'll have to test it yourself to be sure.
Does any one know if there is a ASP.NET website available that is a pretty good clone of the style and layout of a SharePoint site? I don't need the functionality of SharePoint, I would like to be able to quickly mock up some controls for SharePoint, with out having to actually deploy stuff to the server, and want to be able to see what the controls would look like rendered in SharePoint.
Make sense?
If there is nothing available I'm just going to do a "save complete" with FireFox on my SharePoint site, and convert the results into a master page that I can use. If someone else has already done the work, that would be fantastic.
Heather Solomon has an excellent SharePoint CSS Cheat Sheet. Also, if you use sharepoint native controls like the SPGridView, most of the styling will be inherited / already implemented for you.
Your 'Save Complete' idea is the one I would suggest. You could also have some sort of bookmarklet/script that receives a html page url and injects it into the sharepoint page without actually changing it, but it is way more complicated.
My advice would be to use SharePoint Designer to play with the design and to use Features for deploying the customizations. Your question is pretty vague in that I can't tell if you have access to a VM to do a test install? Also, are we talking WSS 3.0 or MOSS 2007 or the latest version? Is it a publishing site? What kind of controls are you working on? Web Parts?
I have a requirement to select some data from a table in a database (SQL Server) and display it on a page in a SharePoint site (MOSS 2007).
I have a little bit of experience of MOSS, so I know I have a couple of options:
BDC
SSRS
or possibily even a custom ASPX page.
I've never really worked with any of these. Can anyone advise on the +/-'s of each?
It all depends on what functionality is required once the table is displayed in SharePoint. Do you need extra bells and whistles or is a dump of the data adequate? (Think about the future as well.) Here's some thoughts...
Business Data Catalog (BDC)
If you want to nicely integrate the SharePoint look and feel with your data as well as get some cool functionality, BDC is a good solution. There is no need to program anything and these are the features you get. However if this data will only be used once in one way then it is probably overkill.
You would need to roll your own XML description of the data so SharePoint knows how to pull it from the database (or use something third party like Lightning Tools). As Colin mentioned it requires the Enterprise license of MOSS.
SQL Server Reporting Services (SSRS)
If Reporting Services is already available for use then this is the quickest and simplest solution. It works well but can get painful as more advanced features are required in your reports.
You should be able to use the Report Designer wizard to point to your table and set everything up for you. There are SSRS web parts that can be used within SharePoint, or indeed you can run SSRS inside SharePoint using SharePoint integration mode.
Application Page
This method Steven mentioned lets you integrate an ASP.NET application into SharePoint (such that it can be accessible by a URL within your SharePoint site). This allows anything that ASP.NET does, and the code-behind will be aware of SharePoint so you can tap into that if needed as well. The cons here are code access security and deployment.
See this webcast for how to do it.
Web Part
Similar to developing an application page but much more integrated with SharePoint. A custom web part is very powerful and allows you to integrate ASP.NET code on a SharePoint page. As you would know web parts can be dragged to whatever location and give a consistent properties pane. Again, code access security and deployment needs to be considered.
If you like designer view in Visual Studio then be aware this isn't the approach that Microsoft push. You can however use something like SmartPart where you would develop your custom app as a user control and the SmartPart wraps it into a web part. I'm used to doing it the MS way now and actually prefer the additional control this gives, however it can take more time.
Page Viewer Web Part
If you don't want to touch your SharePoint installation at all then have a look at this web part. It takes a URL as parameter and displays an IFrame containing the page that would be your report, either in SSRS or standard ASP.NET.
The downside from this lack of integration is problems with sizing the IFrame, and possible security warnings from the browser if accessing the URL in a different domain.
Don't forget the DataView Webpart. It has a pretty small developement footprint and works really well as a first "cut" if you are unsure as to how hardcore you need the final result to be.
It renders using XSLT, giving you full control of the final HTML, so it can do some pretty things with Javascript and co.
For a very simple example of charting.
Have you ever used the .NET Framework do develop webpages?
MOSS 2007 uses this framework for master / template files.
So your best choice would be to create an ASPX template file to display the results on the webpage.
BDC is the way to go if you want to keep it "strictly Sharepoint". The problem is, it is only included in the Enterprise edition of SharePoint. If you have the Standard edition, you could go for SSRS and the SSRS webpart, or, create your own webpart. That way you can use your data display anywhere in your site and it's also ASP.NET compatible.
As Nat said - if all that is needed is to display some data from a database on a page - the DVWP is a great solution. Just open your page in SharePoint Designer, add the database connection, and drop the web part on your page. You can use any of the several pre-formatted layouts, or design/tweak your own so the data is displayed as you need.
Relatively straightforward, lots of HowTos online, and far faster/easier to setup than something like BDC.
Basically need to use SharePoint (because we promote MS yay!) as a content management system for an internet facing site.
How do I get rid of the default SharePoint look and feel and make it look like however I want it to?
I know the process involves creating a new masterpage with SharePoint Designer. However I prefer to code webpages rather than use a visual editor. Is this possible? Do I need knowledge of .NET?
Just check out ferrari.com for a very well made redesign of a SharePoint site.
Heather Solomon's Branding SharePoint series would be a good place to start. There's a lot you can do just with CSS, JS and HTML, but the most complete solutions (like Ferrari) require some pretty extensive customization with .NET and other SharePoint development techniques (features and delegate controls, in particular).
Your branding effort will be a lot easier if you only need to heavily brand the public-facing "publishing pages", from which you can remove most of the SharePoint-specific elements that make branding difficult.
Also, SharePoint Designer has a source view if you don't like the visual editor.
Yes it is possible to make it look like however you want it to (as you've seen from the Ferrari site). However to create that sort of site takes a lot of work.
Microsoft recommend the use of SharePoint Designer for 'designing' pages and layouts. However changing their behaviour almost always needs Visual Studio and development in .NET. You can largely avoid SharePoint Designer (which may worth considering as it can be a PITA) with an open source tool such as SPVisualDev. Use this with WSPBuilder for packaging your solutions (and avoid VSeWSS where possible).
Considering it sounds like you're just getting started, be aware this is a big topic with a reasonable learning curve. Read a good book on the topic such as Professional SharePoint 2007 Web Content Management Development: Building Publishing Sites with Office SharePoint Server 2007 by Andrew Connell. It takes you through most things you will encounter from the ground up.
I'm working my way through Real World Branding by Andrew Connell at the moment. It seems like a good demonstration, with code.
Plus the Heather Solomon articles as suggested by dahlbyk are always informative.
Just changing the theme, or creating a custom theme for the site, can go a long way towards making SharePoint look a lot better. It's also a lot less intensive then changing the master pages.
How to create a theme
How to deploy a theme
Example customization you can do with just CSS
Does the EULA allow you to disguise the fact that it's MS software?
Remember, you didn't buy the software, you're just paying for the privilege of using it.