Wednesday, July 16, 2008

Custom WorkFlow System

I will post this blog with clear and detail example.

Monday, July 7, 2008

Share Point Configuration Exam

Hi,
Now a days I m preparing for Share Point Configuration Exam.I got "Sams Microsoft SharePoint 2007 Unleashed" this book is very informative.you can get this book from www.flazx.com. not only this book a lot of books available here .Any how I will update my blog as I got my certification,or I found something helpful for this exam.

Friday, June 13, 2008

Nhibernate with tirggers

I was working on Nhibernate Framework, I found a feature in this framework that I want to explain you.
I have to make a transaction between two tables they have parent and child relation on child creation or updating a trigger is fired take sum of child rows and update into parent.
Everything doing fine with transaction no exception but no updating in parent record after hitting trigger.That’s amazing for me .Long story short actually Nhibernate having a state of parent with previous values again updated on commit of transaction.So, I have to create a separate transaction for parent and child also. And don’t forget to Call NHibernateSession.Flush();after commit a transaction. Like
BaseDao.NHibernateSession.Transaction.Commit();
NHibernateSession.Flush();

But it’s very critical in the situation when you have to ensure that every thing should be in one go(transaciton) then realy it’s a question.I had faced this problem in the same project,but fourtunately I have a columns which shows record is deleted in first transaction I pass this true isdeleted=true and after commiting and flushing .Begin another transaction the then pass isdeleted=false.Because my trigger only works on isdeleted=false record.Anyhow its just a one solution which works in my scenario.if any one has some good idea please share with us.

Friday, June 6, 2008

Feature Framework Code

Recursively I have to drill down all the control, one thing off course every table row, td should be tagged as runat=”server” and with proper Ids.

foreach (Control pageChildControl in Page.Controls)
{
if (pageChildControl is HtmlForm)
{
HtmlForm frmControl = (HtmlForm) pageChildControl;
frmControl.Attributes.Add(m_LinkedId, m_PageFeatureId.ToString());
formControl = pageChildControl;
break;
}
}

if (formControlCollection != null)
{
foreach (Control formChildControl in formControlCollection.Controls)
{
if (formChildControl is AsynchPanel)
{
AsynchPanel lbPanel = (AsynchPanel) formChildControl;
string parentId = ExtractControlLinkedId(lbPanel.Parent);
lbPanel.Attributes.Add(m_LinkedId, parentId);

ExtractHtmlTableControl(formChildControl);
}
else if (formChildControl is HtmlTable)
{
if (CheckFeatureExistanceInParent(formChildControl, string.Empty))
{
if (!formChildControl.Visible)
{
continue;
}
ExtractHtmlRowsFromTableControl(formChildControl);
}
}
}
I have also attached code with it which I have written .Still I am working on it due to urgent task and off course following timeline I have postponed this for some time.

Wednesday, June 4, 2008

Feature FrameWrok

Last week I worked on some sort of parser for my own security in the application. My application domain is financial application is for Private Equity Funds and its distributions.
Actually our requirement is we want to assign rights on each and every item in the application. Some of them I am sharing with you .like.
Restriction on field level like one user can’t see this field but can see others. For example an ordinary user can’t see the head’s phone numbers, although he can see all other information.
Similarly on changing of any fund user logged in user should have rights to see the incoming data. Restriction level is up to the gird’s columns level .Logged in user can see this columns only depends on his rights.
And I will write about when I start working on the security of methods either Logged in User can call this method or not. I am thinking about enterprise security library for this. Let see
For the every feature security we assume every item in my application either it’s control or any data it’s a feature. This is DataBase view of my feature FrameWork.
imgframework.jpg

Saturday, May 24, 2008

What is Share Point?

What is Windows share point3.0?

WSP3.0 is consisting of these features.

· Storage

· Security

· Deployment

· Site Model

· Deployment

Storage

Windows share point server3.0 providing us best way of storing our contents (documents of any type, custom binary files, and web contents) with classification of their major and minor versions, metadata with full data management capabilities. All Data reside in MS SQL server.

Security

Security is everyone’s concern WSP3.0 providing a range of security providers. NTLM, Kerberos, Active Directory, Single Sign On Server (SSO), Asp.net Forms authentication and we can apply security permissions on entire sites and its individual items.

It’s very helpful to integrate these providers because without implementing a new security policy we can use existing security policy. Like we can allow those who are already had an account on Active Directory list and more or different security features with other providers.

Tuesday, May 13, 2008

user control casting of different directory

Today I face a very good problem­­ :) in asp.net user controls and I am sure most of our developers face this same problem when they havily use usercontrols in their projects.
I have two controls one has a dropdown on the change of this dropdown selection I have to notify other controls .Yes you are right I promptly go for observer pattern but in .net we have events a good replacement. So I expose this dropdown event as property.But problem is I have to know the this dropdown selected value on other events also like on grid selection.So its better to expose this dropdown selected Item as property.Above discussion have only technical complexity ,but problem you face is different.I have to cast this dropdown usercontrol in its own type but in other user control.
ui_usercontrols_common_namefinder_ascx ucCurrentnamefinder = (ui_usercontrols_common_namefinder_ascx)namefinder;
ucCurrent
namefinder.NameChange +=new EventHandler(OnNameChange);
You will get the error “you are referenceing unkown type or assembly”.so you have to specify a tag of Reference VirtualPath = "../Common/namefinder.ascx"
you have to use this tag in that control in which you want to access other controls like in my case is namefinder.ascx
Then you should also use asp as prefix of control for safe side as following.
ui_usercontrols_common_namefinder_ascx ucCurrentnamefinder = (ui_usercontrols_common_namefinder_ascx)namefinder;
ucCurrent
namefinder.NameChange +=new EventHandler(OnNameChange);