Scenario:
We work with an external environment and once in a while it goes down. As we don't really have access to login we inform our admin's to help us regain access.
But it can be a false positive also. So here's are quick steps before we conclude site is really down / in-accessible.
Solution:
1. Check for home page [ if 404/broken, try next step ]
http://intranet.contoso.com/SitePages/Home.aspx
2. Check for any layouts page in the site collection [ if 404/broken, try next step ]
http://intranet.contoso.com/_layouts/settings.aspx
3. Check for Site Pages library if team site [ if 404/broken, try next step ]
http://intranet.contoso.com/SitePages/Forms/AllPages.aspx
3a. If you can see all pages validate Entry page exist with no issues
4. Check for Pages library if publishing site [ if 404/broken, try next step ]
http://intranet.contoso.com/Pages/Forms/AllPages.aspx
4a. If you can see all pages validate Entry page exist with no issues
5. If you had access to any other site collection / web application. Try steps 1-4 for new url.
6. Ping the box to make sure server itself is not down.
Other things to keep in mind :
Usually any page marked as Home Page can't be deleted. But just in case you see it missing. Check Recycle bin once to validate if page is not deleted by some one.
http://intranet.contoso.com/_layouts/recyclebin.aspx
In case page is accessible but broken with weird error and if you have owner rights, you can look into webpart maintenance page to get some insite
http://intranet.contoso.com/SitePages/Home.aspx?contents=1
Monday, November 14, 2011
Monday, October 31, 2011
Scenario:
Client wanted to move his data from old system to SharePoint lists. We didn't have direct access to the external system but administrator was able to dump all the information in Excel sheet. So we were suppose to load that in SP Lists.
Lesson Learnt:
Excel is very powerful as it provides filtering , bulk edit , pivot and many more features. So massage the data in excel as much as you can before you attempt to load it to SharePoint.
On the other side we had DataSheet View which is almost excel , so copying multiple records is easier that way.
Steps:
1. Create a mapping document as it will be helpful to identify columns in excel > columns in SP List
2. Identify any missing columns
3. Identify required fields in SP List and using excel filter make sure that column doesn't contain Blank / None values
4. Visit List setting > column setting to check default values of columns. While copying SharePoint will assign Default value to these columns , which you may not like.
5. Create a datasheet view with columns in same sequence ( Left to Right ) as they are in excel. This will be helpful in copying data quickly.
6. Text Columns - Usually its easy to copy data but make sure length of text is max. 255
7. Choice Columns ( Single Selection )- This is tricky. Either have all the possible choices pre-configured , other wise data will not be copied properly. Other option which I will recommend is to have a text column and copy over data into it. Once done , convert text column to Choice Column
8. Choice Columns ( Multi-Selection ) - SharePoint uses '#;' as separator for multi-select values + Another issue is it doesn't like separator if there is only one option selected. So make sure you have proper text in excel before you attempt to copy.
9. Lookup Columns ( Single Selection )- This is tricky. Either have all the possible option in look-up list , other wise data will not be copied properly.
10. Lookup Columns ( Multi-Selection ) - SharePoint uses '#;' as separator for multi-select values. So make sure you have proper text in excel before you attempt to copy.
11. Yes / No Columns - Make sure that you dont have 'None'/NA etc in source excel for this columns. Yes / No / Blank are only allowed values.
12. We had 20+ columns and 10,000+ rows. Moving all the data in one shot was not possible because of clipboard limitations and other issues. I will recommend copying 1 column fully
Validations:
1. You can check item count from 'View All Content' , each list will show list of items.
2. If you have some Choice column / Look-up Column, you can export the SharePoint list in excel and do a pivot to see same number of item exist in original excel.
Monday, June 8, 2009
-- Mail Server is configured
-- Validate SSL is configured
-- Validate if Office Web Services are accessible from IIS
-- Logging has been configured
-- Change the Log location,make sure support team have read access to this location
-- Review the Blocked file types
-- Backup all the web.configs locally
-- Maintain a folder for scripts, specially solution clean up / retracting scripts
-- Alias for SQL Server should be set
-- Host headers are configued
-- Fore-front security is installed and configured
-- PDF IFilters are installed and PDF icons are configured
Farm Governance
-- Track the various custom site definition IDs to avoid clash
-- List of all the system files being updated by scripts/solution and way to revert them back
-- If any new Window Service is installed to host WCF or Web Service , make sure to assign new port numbers to avoid port clash
Follow on Twitter
Friday, May 29, 2009
Version Control:
-- All the code changes should be checked in
-- Label the build with proper Product Version Number
Refactoring Checklist:
-- Remove the extra namespace references, you can use VS to do this
-- Add some inline comments
-- Make sure you not using System.Data.SqlClient in UI code-behind class, it should only be used in Data Layer
-- Remove the Source Control binding
-- Make sure to Encrypt the connection strings and other sensitive information
-- Remove any hard-coded test accounts
-- Compile the project to RELEASE mode
-- If using any timer job, make the timer interval configurable
-- For any Window Service, make the timer interval configurable
-- Set some standard in-term of maximum lines of code per file ( 100-200 lines ) , and refactor accordingly.
-- Make sure assemblies are strongly named
-- Compile the project for minimum .net framework
-- Use Try Catch Finally blocks to handle exception
-- Use a robust logging framework ( i.e. log4net ) in-spite of redeveloping your own
Database Checklist:
-- Use a naming conversion for all the tables ( Users , Employees )
-- Make sure to create limited SPs per table ( GetAll, Get, Add, Update, Delete or Remove)
-- Only grant ‘execute' permission on all stored procedures, and grant that permission only for the application domain group.
You can use the Database roles with EXEC permissions to Stored Procedure.
-- Do not use "exec @sql" construct in your stored procedures , only use stored procedures.
Deployment Checklist:
-- If you using AppSettings make sure all of them point to proper server (Production server)
-- Prepare script for retracting the solutions and of-course for deploying the solutions
-- Prepare pre-install / post-install scripts for any additional operation which need to executed on each individual server
-- In case you are replacing system files , make sure you back them up and need to be restored when you back-out
Code Quality Checklist:
-- Unit Tests
-- Address Cross Scripting issues
-- Address for SQL Injection issues, use Stored Procedures
-- Address Blind SQL Injection