====== pears.NetDashboardObjectSet ====== Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace. ===== Original SQL ===== create procedure "pears"."NetDashboardObjectSet"( in "pWebUserID" char(20),in "pDashboardObjectID" char(20) default null,in "pType" char(50) default null,in "pTitle" char(250) default null,in "pDescriptor" long varchar default null,in "pShared" smallint default null,in "pAccessLevel" smallint default null,in "pDashboard" smallint default null,in "pHomePage" smallint default null ) result( "pResult" char(250) ) // IQXWeb begin declare "uStaffID" char(20); select "staffid" into "uStaffID" from "iqxnetuser" where "iqxnetuserid" = "pWebUserID"; if "uStaffID" is null then select '99:~Permission denied'; return end if; if "pType" = 'DELETE' then delete from "DashboardObject" where "DashboardObjectID" = "pDashboardObjectID" and "StaffID" = "uStaffID"; select '0:~Success'; return end if; if "pDashboardObjectID" is null then set "pDashboardObjectID" = "uniquekey"(''); insert into "DashboardObject"( "DashboardObjectID","StaffID","Type","Title","Descriptor","Shared","AccessLevel" ) values( "pDashboardObjectID","uStaffID","pType","pTitle","pDescriptor","pShared","isnull"("pAccessLevel",0) ) else update "DashboardObject" set "Title" = "isnull"("pTitle","Title"),"Descriptor" = "isnull"("pDescriptor","Descriptor"),"Shared" = "isnull"("pShared","Shared"),"AccessLevel" = "isnull"("pAccessLevel","AccessLevel") where "DashboardObjectID" = "pDashboardObjectID" and "StaffID" = "uStaffID" end if; if "pDashboard" is not null then insert into "DashboardDisplayedObject"( "DashboardObjectID","StaffID","OnDashboard" ) on existing update defaults off values( "pDashboardObjectID","uStaffID","pDashboard" ) end if; if "pHomePage" is not null then insert into "DashboardDisplayedObject"( "DashboardObjectID","StaffID","OnHomePage" ) on existing update defaults off values( "pDashboardObjectID","uStaffID","pHomePage" ) end if; delete from "DashboardDisplayedObject" where "DashboardObjectID" = "pDashboardObjectID" and "StaffID" = "uStaffID" and "OnDashboard" = 0 and "OnHomePage" = 0; select '0:'+"pDashboardObjectID"+'~Success' end go COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."NetDashboardObjectSet" IS {create procedure pears.NetDashboardObjectSet( in pWebUserID char(20), in pDashboardObjectID char(20) default null, in pType char(50) default null, in pTitle char(250) default null, in pDescriptor long varchar default null, in pShared smallint default null, in pAccessLevel smallint default null, in pDashboard smallint default null, in pHomePage smallint default null) result(pResult char(250)) // IQXWeb begin declare uStaffID char(20); select staffid into uStaffID from iqxnetuser where iqxnetuserid = pWebUserID; if uStaffID is null then select '99:~Permission denied'; return end if; if pType='DELETE' then delete from DashboardObject where DashboardObjectID=pDashboardObjectID and StaffID=uStaffID; select '0:~Success'; return; end if; if pDashboardObjectID is null then set pDashboardObjectID=uniquekey(''); insert into DashboardObject (DashboardObjectID,StaffID,Type,Title,Descriptor,Shared,AccessLevel) values (pDashboardObjectID,uStaffID,pType,pTitle,pDescriptor,pShared,isnull(pAccessLevel,0)) else update DashboardObject set Title=isnull(pTitle,Title), Descriptor=isnull(pDescriptor,Descriptor), Shared=isnull(pShared,Shared), AccessLevel=isnull(pAccessLevel,AccessLevel) where DashboardObjectID=pDashboardObjectID and StaffID=uStaffID end if; if pDashboard is not null then insert into DashboardDisplayedObject (DashboardObjectID, StaffID, OnDashboard) on existing update defaults off values (pDashboardObjectID,uStaffID,pDashboard); end if; if pHomePage is not null then insert into DashboardDisplayedObject (DashboardObjectID, StaffID, OnHomePage) on existing update defaults off values (pDashboardObjectID,uStaffID,pHomePage); end if; delete from DashboardDisplayedObject where DashboardObjectID=pDashboardObjectID and StaffID=uStaffID and OnDashboard=0 and OnHomePage=0; select '0:'+pDashboardObjectID+'~Success' end }