pears.NetDashboardObjects

Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.

CREATE PROCEDURE "pears"."NetDashboardObjects"( IN "pWebUserID" CHAR(20),IN "pDashboardObjectID" CHAR(20) DEFAULT NULL,IN "pAll" SMALLINT DEFAULT NULL,IN "pDashboard" SMALLINT DEFAULT NULL,IN "pHomePage" SMALLINT DEFAULT NULL ) 
RESULT( "DashboardObjectID" CHAR(20),"UserName" CHAR(60),"Type" CHAR(50),"Title" CHAR(250),"Descriptor" long VARCHAR,"Shared" SMALLINT,"AccessLevel" SMALLINT,"OnDashboard" SMALLINT,"OnHomePage" SMALLINT ) 
// IQXWeb
BEGIN
  DECLARE "uStaffID" CHAR(20);
  DECLARE "uLevel" SMALLINT;
  SELECT "u"."staffid","isnull"("s"."ReportView",0) INTO "uStaffID","uLevel" FROM "iqxnetuser" AS "u" KEY JOIN "staff" AS "s" WHERE "u"."iqxnetuserid" = "pWebUserID";
  SELECT "d"."DashboardObjectID",'' AS "UserName","d"."Type","d"."Title","d"."Descriptor","d"."Shared","d"."AccessLevel","dd"."onDashboard","dd"."onHomePage" FROM "DashboardObject" AS "d" LEFT OUTER JOIN "DashboardDisplayedObject" AS "dd" ON "dd"."DashboardObjectID" = "d"."DashboardObjectID" AND "dd"."staffid" = "uStaffid" WHERE "d"."staffid" = "uStaffID" AND("d"."DashboardObjectID" = "pDashboardObjectID" OR "pAll" = 1 OR "pDashboard" = "dd"."onDashboard" OR "pHomePage" = "dd"."onHomePage") UNION ALL
  SELECT "d"."DashboardObjectID","s"."name" AS "UserName","d"."Type","d"."Title","d"."Descriptor","d"."Shared",NULL,"dd"."onDashboard","dd"."onHomePage" FROM "DashboardObject" AS "d" KEY JOIN "staff" AS "s","DashboardObject" AS "d" LEFT OUTER JOIN "DashboardDisplayedObject" AS "dd" ON "dd"."DashboardObjectID" = "d"."DashboardObjectID" AND "dd"."staffid" = "uStaffid" WHERE "d"."staffid" <> "uStaffID" AND "d"."Shared" = 1 AND "uLevel" >= "isnull"("d"."AccessLevel",0) AND("d"."DashboardObjectID" = "pDashboardObjectID" OR "pAll" = 1 OR "pDashboard" = "dd"."onDashboard" OR "pHomePage" = "dd"."onHomePage") AND "isnull"("s"."divisionid",'') = any(SELECT "DivisionID" FROM "DashboardStaffDivisions"())
    ORDER BY "UserName" ASC,"Title" ASC
END
GO
 
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."NetDashboardObjects" IS 
{CREATE PROCEDURE pears.NetDashboardObjects( IN pWebUserID CHAR(20), IN pDashboardObjectID CHAR(20) DEFAULT NULL, IN pAll SMALLINT DEFAULT NULL , IN pDashboard SMALLINT DEFAULT NULL , IN pHomePage SMALLINT DEFAULT NULL ) 
RESULT(DashboardObjectID CHAR(20), UserName CHAR (60), TYPE CHAR(50), Title CHAR(250), Descriptor long VARCHAR, Shared SMALLINT, AccessLevel SMALLINT, OnDashboard SMALLINT, OnHomePage SMALLINT) 
// IQXWeb
BEGIN
  DECLARE uStaffID CHAR(20);
  DECLARE uLevel SMALLINT;
  SELECT u.staffid, isnull(s.ReportView,0) INTO uStaffID, uLevel FROM iqxnetuser u KEY JOIN staff s WHERE u.iqxnetuserid = pWebUserID;
  SELECT d.DashboardObjectID,'' AS UserName, d.Type, d.Title, d.Descriptor, d.Shared, d.AccessLevel, dd.onDashboard, dd.onHomePage FROM DashboardObject d LEFT OUTER JOIN DashboardDisplayedObject dd ON dd.DashboardObjectID=d.DashboardObjectID AND dd.staffid=uStaffid WHERE d.staffid=uStaffID AND (d.DashboardObjectID=pDashboardObjectID OR pAll=1 OR pDashboard=dd.onDashboard OR pHomePage=dd.onHomePage)
  UNION ALL
  SELECT d.DashboardObjectID,s.name AS UserName, d.Type, d.Title, d.Descriptor, d.Shared, NULL, dd.onDashboard, dd.onHomePage FROM DashboardObject d KEY JOIN staff s, DashboardObject d LEFT OUTER JOIN DashboardDisplayedObject dd ON dd.DashboardObjectID=d.DashboardObjectID AND dd.staffid=uStaffid WHERE d.staffid<>uStaffID AND d.Shared=1 AND uLevel>=isnull(d.AccessLevel,0) AND (d.DashboardObjectID=pDashboardObjectID OR pAll=1 OR pDashboard=dd.onDashboard OR pHomePage=dd.onHomePage) AND isnull(s.divisionid,'') IN (SELECT DivisionID FROM DashboardStaffDivisions())
  ORDER BY UserName, Title
END
}
  • database/procedures/pears_netdashboardobjects.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1