Posts

HTabs-js Jquery Plugin

Image
JQuery plugin to render Tabs and navigation content by applying it to div. HTML at first we must add references to "htabs.js" and "htabs.css" as below. <script type= "text/javascript" src= "scripts/htabs.js" ></script> <link href= 'styles/HTabs.css' rel= 'stylesheet' type= 'text/css' /> HTML is as simple as having a container div contains an un-ordered list, and another div with the class 'tabs_container' contains content divs with the class 'htabs-cont' as below. to set selected tab add class 'htabs-selec' to the anchor element. <div id= 'tabDiv' style= "width: 400px" > <ul> <li><a href= "#exp1" class= 'htabs-selec' > tab1 </a></li> <li><a href= "#exp2" > tab2 </a></li> <li><a href= "#exp3" >

Sharepoint 2010 : Nintex 2010 custom Inline function

Image
Nintex - as new technology to me - is a nice, easy, and simple workflow engine, that is very useful and fast to learn. and as any other technology there is always a room for expandability. For me the case was I needed a piece of code to be run often and not only in custom forms, the best approach I have found is to use a custom inline function. Nintex has several built-in inline functions, and to add extra custom one , lets follow these steps: Develop a static class with static function to use as inline function, usually it will be a class in the Sharepoint project which after deploying it will be registered in the GAC, otherwise you will have to register it in the GAC ( it has been discussed in previous post ) . The resulted code will be something like this: namespace  Project.TestNameSpace {      public   static   class  TestInlineFunction     {          public   stati

Project Server 2010 : Server Event Handlers (Part 2)

Image
Now we have wrote the business logic code, and registered the dll in GAC (in Part 1 ), we will register this event handler association in Project Server Application, so that when an event is raised, our function will be triggered. lets open server side event handler from Server Settings under Operational policies chose Server Side Event Handler , this will open the following page: Figure 1 Chose the event that we need to trigger our function on, in our example from the previous post it will be Project on Creating; locate the Project parent and Creating event, it will list all the registered associations (if there are any). to add new association click on New Event Handler which will open the following page: Figure 2 the Display Information section is for the name and description that appears in the list. the System Information section is to fill the dll information from GAC, as below: Assembly Name: which is the dll's name in this format ddlName, Version=1.1.

Project Server 2010 : Server Event Handlers (Part 1)

Image
Server Event handlers are the expansion points for Project Server 2010, to register a custom event handlers with project server's events, Project Server raises pre-events and post-events when Project Server Interface (PSI) methods change business objects such as Project, Task, Resource, or Timesheet. When you associate an event handler with an event, Project Server runs the event handler when that particular event occurs. To start with event handlers development, you need to create new Class Library Project, from File > New > Project and select Class Library template (Figure 1) Figure 1 Delete the default class file class1.cs and right click on the project Add > New Item select class and rename it to ProjectEventHandler.cs , that will create new class file with a class called ProjectEventHandler . Add public access modifier to make this class accessible. Add these Project Server 2010 reference, right click on the project > Add Reference on the browse ta

Retrieving Sharepoint Lists' Information In Project Sites - Project Server 2010

Image
In a previous blog post we have discussed how to retrieve Risks and Issues custom columns information (built in project properties) from Sharepoint through SQL query. But ... what If I have another custom list that is not a project property by default, lets say "Project Monthly Review" that contains these columns "Month" as text, "Year" as text, and "Review" as multiline text. for retrieving this information in Sharepoint 2010 through SQL below is the query that will just do the work: SELECT  P.ProjectUID, A.tp_ListId, A.tp_IsCurrent, A.nvarcahr3  as  [ Year ], A.nvarchar4  as  [ Month ], A.nText2  as  [Review] FROM  PWA_ContentDB.dbo.AllLists  as  L   INNER   JOIN  PWA_ContentDB.dbo.AllUserData  AS  A  ON  L.tp_ID = A.tp_ListId There the trick ... again ... the new custom Sharepoint list added to this certain site template (or project site) is not connected to the project, which this site is for. Tracking this issue, and lots of g

Projects' Risks and Issues custom columns Querying in Project Server 2010

Image
Working with Project Server 2010 Reporting database makes me realize how it can be painful to get information and properties that was customized on Risks or Issues sharepoint lists (or any sharepoint list). Risks, Issues, and Deliverables are lists in the project site, yet they are project's properties. those properties have their own Tables in the project server 2010 reporting database as: Risks : MSP_WssRisk Issues : MSP_WssIssue Deliverables: MSP_WssDeliverable And since they are sharepoint lists then they can be customized to add columns or update column's values. and there the trick is ... the new custom columns are added to the sharepoint content database as database columns that will be named by the data type of the property and a postfix number, in the [AllUserData] table like: datetime2, sql_variant1, nvarchar9 ...etc. After lots of googling the way to do it I have found a blog (unfortunately I can't find it again) that suggeste

What Is JQuery

Image
Hey every one, hope you are having a good productive shinny development day :) yes ... its a long hello sentence :P I could just said "Hi, Hope you are having fun" ... its exactly how JQuery would look like if it wasn't a javascript library, but what the hell ... it is, this blog talks technologies so if you are not interested in programming technologies (like JQuery) you are more than welcome to read for fun :) any how, back to JQuery ... for who does not already know it, the reason I said it would look like that sentence is because the main purpose of JQuery is to write less, do more . Its simply a free, open source, under the MIT License and the GNU General Public License javascript library (a js file) that referenced to it through web pages to use its already done functionalities, it meant to reduce the written javascript code and manipulate the DOM objects in an HTML page. for a best reference for JQuery here is the official site http://jquery.com/