Wednesday, November 28, 2012

SharePoint Config database from Registry

SharePoint stores the name of the Config database in the registry:

 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\14.0\Secure\ConfigDB

 

This is particularly useful when you are getting unable to connect to the configuration database, when running the PS Config wizard.


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Friday, November 2, 2012

Get into Edit mode of a SharePoint page directly.

Just append this to the end of the page:

?ControlMode=Edit&DisplayMode=Design

 

E,g:

http://abc.com/pwa/ProjectBICenter/SFReports/Pages/ProjectStatusReport.aspx?ControlMode=Edit&DisplayMode=Design


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Wednesday, September 5, 2012

Innovative design websites.

I thought that an excerpt from that letter might be of interest to this group.  (in brief: it's not time to give up yet if after 2 years you have 10 customers and $99 of monthly revenue).

Today I have a FreshBooks announcement to share with you. But first, a story almost 10 years in the making…
In January 2003 I was running a four person design agency. I was using Microsoft Word to create our firm's invoices and I was pulling out my hair because Word simply wasn't built to create good looking invoices efficiently or report on my business. One day I accidentally saved over an old invoice, and something in me snapped – I knew there had to be a better way. Over the next two weeks I coded up a solution for my clients, and eventually we turned that side project into what is now FreshBooks.
The road hasn't been easy. It took over 16 months to bring a product to market. When we launched no one cared and 24 months after starting we had only 10 paying customers and revenues of $99 per month. We moved into my parents' basement for 3.5 years. But despite all the evidence pointing to our failure, we carried on. Why? We loved our customers, our company and working together, and we'd discovered a passion to serve others.
Since those humble beginnings, over 5 million people have used FreshBooks to send and receive, print or pay invoices. Today FreshBooks has paying customers in over 120 countries. We are a rapidly growing 90 person company.

http://www.freshbooks.com/tour.php

 

Cross browser testing, download all browsers in one:

http://www.browseemall.com/Support/

 

UI prototyping tool:

Discussion:

http://discuss.joelonsoftware.com/default.asp?biz.5.847724.14

http://pencil.evolus.vn/en-US/Home.aspx

 

.NET obfuscators discussion:

http://discuss.joelonsoftware.com/default.asp?biz.5.848061.28

 

 

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Veeva(iRep) CRA in Cloud dream company uses jQuery and http://backbonejs.org/


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Thursday, May 24, 2012

Validation of ViewState failed - SharePoint farm or ASP.NET application cluster or while removing survery questions in SharePoint 2010

When you are removing Questions in a survey in SharePoint 2010 in a Farm environment, you might see this error:

 

“Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.”

 

This happens when you put down a node where a customer was served content. The customer makes a new request to the server and is redirected to the remaining node. Unfortunately, this node is not able to validate the Viewstate and goes in this exception.

The issue is solved by specifying the same machine Key settings for the application you are hosting on both servers.

If you are using IIS7, you can define it easily in the machine key section of the web application. You can generate and configure the machine key setting for your application directly there. Use the example below as a reference:

 

 

 

On the right side of the above window, you are able to find a “generate key” button. This is helpful when you don’t want to specify for yourself the key

 

The machine key must be the same on all web frontends for your application!!

 

Check this here:

http://msdn.microsoft.com/en-us/library/ms998288.aspx

 

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Wednesday, May 9, 2012

ToothPaste story, Ingenuity, simple solutions to complex problems

A toothpaste factory had a problem: they sometimes shipped empty boxes, without the tube inside. This was due to the way the production line was set up, and people with experience in designing production lines will tell you how difficult it is to have everything happen with timings so precise that every single unit coming out of it is perfect 100% of the time. Small variations in the environment (which can’t be controlled in a cost-effective fashion) mean you must have quality assurance checks smartly distributed across the line so that customers all the way down the supermarket don’t get pissed off and buy someone else’s product instead.

 

Understanding how important that was, the CEO of the toothpaste factory got the top people in the company together and they decided to start a new project, in which they would hire an external engineering company to solve their empty boxes problem, as their engineering department was already too stretched to take on any extra effort. The project followed the usual process: budget and project sponsor allocated, RFP, third-parties selected, and six months (and $8 million) later they had a fantastic solution — on time, on budget, high quality and everyone in the project had a great time. They solved the problem by using some high-tech precision scales that would sound a bell and flash lights whenever a toothpaste box weighing less than it should. The line would stop, and someone had to walk over and yank the defective box out of it, pressing another button when done.

 

A while later, the CEO decides to have a look at the ROI of the project: amazing results! No empty boxes ever shipped out of the factory after the scales were put in place. Very few customer complaints, and they were gaining market share. “That’s some money well spent!” – he says, before looking closely at the other statistics in the report.

 

It turns out, the number of defects picked up by the scales was 0 after three weeks of production use. It should’ve been picking up at least a dozen a day, so maybe there was something wrong with the report. He filed a bug against it, and after some investigation, the engineers come back saying the report was actually correct. The scales really weren'’t picking up any defects, because all boxes that got to that point in the conveyor belt were good.

 

Puzzled, the CEO travels down to the factory, and walks up to the part of the line where the precision scales were installed. A few feet before it, there was a $20 desk fan, blowing the empty boxes out of the belt and into a bin. “Oh, that — one of the guys put it there ’cause he was tired of walking over every time the bell rang”, says one of the workers.

 

http://www.reddit.com/r/AskReddit/comments/tenoq/reddit_my_friends_call_me_a_scumbag_because_i/

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Wednesday, May 2, 2012

FW: SharePoint warmup Warmup job fix.

Used the warmup script at:

http://spwarmup4admin.codeplex.com/releases/view/74482

 

 

Fixed the issues with the Warm-up script, these are the things that I had to do:

  1. Disable the power shell execution prompts, run this command: set-executionpolicy bypass
  2. In the task scheduler start the power shell with this parameter: C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe &'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WarmUp\WarmUp.ps1'
  3. Disable Loopback check:  Create the Dword DisableLoopbackCheck key in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa OR run the .reg file that I attached.
  4. Reboot the Server for the registry key to take effect.
  5. Add the site url in “Trusted Sites” in IE: <sharepoint url>

**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

An email message has been quarantined

The Quintiles email system has detected possible hostile content and has quarantined your email due to a violation of the policy, outbound_attachment_restrictions.
The details of the quarantined email are:

From: Anil.Bobba@quintiles.com
Subject: SharePoint warmup Warmup job fix.
Attachments: DisableLoopback check.reg
Date/time: 02 May 2012 21:37:55 -0400

Please contact the Quintiles Global IT Service Desk to receive assistance in delivery of this email if this is business critical material. Thank you.

Tuesday, April 17, 2012

To get the version of SharePoint from the UI (not CA)

Look at this layout page from the firefox: (IE should work but it might ask to download the response):

http://sharepoint.microsoft.com/_vti_pvt/buildversion.cnf

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Nice ecommerce site that is recomended


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Sunday, April 15, 2012

Softwares that Companies uses.

Airtran.com flight reservation uses Navitaire NewSkies reservation software: http://navitaire.com/res_and_dist/newskies.asp BGT Partners uses: Ektron CMS for working with Customer (sort of Intranet) (.NET content management system) Access ECM uses: Project Locker for Bug tracking and Project mangagement.

Friday, March 30, 2012

Zaarly uses

Uses Ruby, Clojure, Javascript (Backbone + Node.js) running Ubuntu/AWS.

 

clinical commercial consulting capital

      www.Quintiles.com

Anil Bobba

Architect 1

QRTP - Berrington / 5147F 

+ 1 713-624-0825 (m)

Anil.Bobba@Quintiles.com

 

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Monday, March 26, 2012

Faster LDAP query with ObjectCategory

ObjectClass and ObjectCategory:

When we are looking for an AD object, and trying to form a query, we should NEVER use ObjectClass and always use ObjectCategory. While AD objects are organized, these two attributes are used to define the object. ObjectCategory is a Single valued and is Indexed hence the queries go faster when this is used.

Example:

Computer object has a multi-valued objectClass of "top;person;organizationalPerson;user;computer" and its objectCategory is "computer". 

 

Always use ObjectCategory in the query to begin with:

string filter = string.Format("(&(objectCategory={0})(sAMAccountName={1})(memberof={2}))", "person", userSAM, groupDNName);

 

private static bool IsUserMemberOfGroup3(string userSAM, string groupDNName)

        {

            DirectoryEntry adRoot = new DirectoryEntry("LDAP://" + "some.come");

            DirectorySearcher searcher = new DirectorySearcher(adRoot);

            searcher.SearchScope = SearchScope.Subtree;

            searcher.ReferralChasing = ReferralChasingOption.All;

 

            string filter = string.Format("(&(objectCategory={0})(sAMAccountName={1})(memberof={2}))", "person", userSAM, groupDNName);

 

            searcher.Filter = filter;

            SearchResultCollection result = searcher.FindAll();

            return (result != null && result.Count > 0);

           

        }

 

 

clinical commercial consulting capital

      www.Quintiles.com

Anil Bobba

Architect 1

QRTP - Berrington / 5147F 

+ 1 713-624-0825 (m)

Anil.Bobba@Quintiles.com

 

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************

Friday, March 16, 2012

Project Center Error: Unknown Error has occurred

The Project Center page is failing to load, with the error “Unknown Error has occurred”. All the other pages and components are working fine, the Project Sites, PDP pages, Project publish and save, timer jobs etc.

The error that is logged in the ULS logs on the Application server (usadc-vsrpmp04) says:

 

Exception occurred in method Microsoft.Office.Project.Server.BusinessLayer.Project.ProjectGetProjectCenterProjectsForGridJson Microsoft.Office.Project.Server.DataAccessLayer.FilterDal+FilterException: Error during filter query execution. Query: declare @ResUid UniqueIdentifier; set @ResUid = 147d154f-7a41-4601-8914-7d107129ff06; declare @PermUid UniqueIdentifier; set @PermUid =

<…really long SQL Query …> ; ---> System.Data.ConstraintException: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

 

After ruling out the issues with Code or SQL Connection issues, we figured it is a data issue, because all the other components are working fine except the Project Center Grid. The Project center Grid and the views on it are rejecting the retrieved data from SQL. The data problem can be duplicate rows, NULL values, the ULS error said "One or more rows contain values violating non-null, unique, or foreign-key constraints". The problem can also be the data in the custom fields that might be causing the problem.

By adding filters on the Project center Views on Project creation date and modified date, we traced it on one specific Project that is failing the grid. When this project is filtered, Project Center grid is loading fine. We noticed this project has lots of issues, most of the key data required to create this project is missing, also the Project title is not the Project code but some descriptive text. The user might have used Project Pro and deleted the key data and changed the Project title and published the project.

 

On hindsight we figured we could have run the following query against the Published database, to get the list of projects that are modified today to track down the offending project.

SELECT *

 FROM  MSP_PROJECTS

 WHERE projectserver_reporting.dbo.MSP_Q_DateOnly(MOD_DATE) = projectserver_reporting.dbo.MSP_Q_DateOnly(CAST('03/16/2012' AS DATETIME))

 

To do:

1.       Contact MS and report this issue about the Project Center Grid and how bad data on one Project fails the entire page. Get an ETA on a patch or CU.

2.       In future to avoid longer downtimes, have the SOC monitor the Project Center grid, not just the page and alert immediately.

3.       Put additional checks during Reporting Publishing event handler to avoid deleting required fields.

For future reference:

http://social.technet.microsoft.com/Forums/ta/projectserver2010general/thread/236336b7-bbcb-4db3-9483-e4dd940aaff5

 


**********************  IMPORTANT--PLEASE READ  ************************
This electronic message, including its attachments, is COMPANY CONFIDENTIAL
and may contain PROPRIETARY or LEGALLY PRIVILEGED information.  If you are
not the intended recipient, you are hereby notified that any use, disclosure,
copying, or distribution of this message or any of the information included
in it is unauthorized and strictly prohibited.  If you have received this
message in error, please immediately notify the sender by reply e-mail and
permanently delete this message and its attachments, along with any copies
thereof. Thank you.
************************************************************************