Wednesday, June 3, 2009

Triggerrrrrrrrrrrrrrrrrrrr

/* Commment : Ensure that the same Reasoncode is not used more than once within an ActivityType. Ex: ReasonCodeID=44; ReasonCode=570; Reason=Return to Natural Parent; linked to ActivityType = Trail Discharge ReasonCodeID=69; ReasonCode=570; Reason=Return to Natural Parent; linked to ActivityType = Discharge ReasonCodeID=101; ReasonCode=570; Reason=Return to Natural Parent (other); linked to ActivityType = Trail Discharge --> bad data*/
/* Begin Transaction Insert into ChildActivityReasonCode (ReasonCode, Reason, ReasonGroup, StatusID, ReasonShortDesc, BillingCodeID) Values (570, 'xxx22', 'xxx22', 17, 'xxx22', 1)
Insert into ChildActivityTypeToReasonCode Values (2, @@Identity) Commit Transaction
Begin Transaction Insert into ChildActivityReasonCode (ReasonCode, Reason, ReasonGroup, StatusID, ReasonShortDesc) Values (570, 'yyy', 'yyyy', 17, 'yyy') -- Return to Natural Parent
Insert into ChildActivityTypeToReasonCode Values (2, @@Identity) Commit Transaction
*/
CREATE TRIGGER dbo.trig_ReasonCode_AssertNoDuplicatesWithinActivity ON dbo.ChildActivityTypeToReasonCode
FOR INSERT, UPDATE
AS
BEGIN
DECLARE @reasoncode varchar(50)
DECLARE @activityTypeID int
DECLARE @reasonCodeID int

SELECT @reasoncode = r.Reasoncode, @activityTypeID = i.ChildActivityTypeID, @reasonCodeID = i.ChildActivityReasonCodeIDFROM inserted i
INNER JOIN
dbo.ChildActivityReasonCode r on
i.ChildActivityReasoncodeID = r.ChildActivityReasoncodeID
WHERE r.FlagDeleted = 0
IF ( @reasoncode IS NOT NULL ) AND
EXISTS ( SELECT 'X' FROM dbo.ChildActivityTypeToReasonCode a2r
INNER JOIN
dbo.ChildActivityReasonCode r ON
a2r.ChildActivityReasoncodeID = r.ChildActivityReasoncodeID
WHERE
r.ChildActivityReasonCodeID <> @reasonCodeID
AND a2r.ChildActivityTypeID=@activityTypeID
a2r.ChildActivityTypeID=@activityTypeID
AND Coalesce(r.reasoncode, '-2') = @reasoncode AND r.FlagDeleted = 0 )
BEGIN
RAISERROR ('Duplicate ReasonCode not allowed within an Activity', 16, 1)
ROLLBACK TRANSACTION
END
ELSE
BEGIN
COMMIT TRANSACTION
END
END

Sunday, May 24, 2009

How to get the current user logged into Sharepoint

SPWeb web = SPControl.GetContextWeb(Context);
SPUser sUser = web.CurrentUser;
string str = "Name:" + sUser.Name + "
"; "Login Name :" + sUser.LoginName + "
"; "Email:" + sUser.Email + "
"; "Groups:" + sUser.Groups.Count + "
";
foreach (SPGroup grp in sUser.Groups) { " * " + grp.Name + " total Members:" + grp.Users.Count + "
"; catch (Exception ex) { "No Current User" ;

Getting the Current User Name or ID in SharePoint using SharePoint Designer (no code):
http://blogs.msdn.com/joshuag/archive/2008/06/03/getting-the-current-user-name-or-id-in-sharepoint-using-sharepoint-designer-no-code.aspx

Monday, May 18, 2009

New User Request WF



--- On Wed, 13/5/09, ravi kumar <raviurpal@yahoo.com> wrote:

From: ravi kumar <raviurpal@yahoo.com>
Subject: W
To: raviurpal@yahoo.com
Date: Wednesday, 13 May, 2009, 5:56 PM


Tuesday, May 5, 2009

Updating in Tbl1 col based on cols from Tbl2 and Tbl3

scenario:This query updates the ModuleId,SubModuleID columns in tbl1 based on PQR column by using the values from the two different tables tbl2 and tbl3 i.e. tbl2.ModuleId and tbl3.SubModuleId if PQR column has in the foramt of ModuleName\SubModuleName.

select (select ModuleID from appmodules where Modulename =
substring(permissionssection,0,charindex('\',permissionssection))) as MainModuleID,(select Max(SubModuleID) from appsubmodules where (SubModulename = substring (permissionssection
,charindex('\',permissionssection)+1,len(permissionssection))) or (Replace(SubModulename,' ','') = substring (permissionssection
,charindex('\',permissionssection)+1,len(permissionssection))) ) as SubModuleID,substring(permissionssection,0,charindex('\',permissionssection)) as start,substring (permissionssection ,charindex('\',permissionssection)+1,len(permissionssection)) as endID from securable.

Tuesday, March 24, 2009

Nth Highest salary and Fetching column values for a Id as a single row

declare @vSQL varchar(1000)
declare @n int
set @n=5
set @vSQL='select Top 1 EmpSalary From
(Select Distinct Top ' + convert(varchar, @n) + ' EmpSalary
from EmpsInfo order by EmpSalary desc) a
order by EmpSalary'
exec(@vSQL)



declare @retstr varchar(8000)
select @retstr = COALESCE(@retstr + ',','') + cast(memno as varchar) from sample where sno=1
print @retstr

preparing Insert statement for the ros exst in table -sql server

Declare @qt as varchar(1000)
set @qt = ''''
print @qt
select 'insert into program values ',ProgramID, ',', ProgramCode ,',', @qt+ Description + @qt from program

Monday, March 23, 2009

Regular expression for a Foramt 'XX99999X'

function validationForXYZ()
{

var iKeyCode,strKey;
if(window.event)
iKeyCode = window.event.keyCode;

if ((iKeyCode > 96) && (iKeyCode < keycode =" iKeyCode-32;" ikeycode =" window.event.keyCode;" strkey =" String.fromCharCode(iKeyCode);" obj =" document.getElementById('txtAgencyCIN');" value =" obj.value.toUpperCase();" xyzval =" obj.value" validchars =" /^[A-Z]{1,2}$/;">=3) && (XYZVal.length <= 7)) //checking next 5 chars of numbers
validChars = /^[A-Z]{2}[0-9]{1,5}$/;
else if (XYZVal.length ==8)
validChars = /^[A-Z]{2}[0-9]{5}[A-Z]$/; //again last two if chars
else
return false;
if(!validChars.test(XYZVal))
{
alert("Invalid XYZ format: If present, it must be 8 characters in the format: 'XX99999X'. (eg. AB74819R)");
return false;
}

}