pears.NetAPIProcSet

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

CREATE PROCEDURE "pears"."NetAPIProcSet"( IN "pWebUserID" CHAR(20),IN "pOwner" CHAR(50),IN "pName" CHAR(50),IN "pBody" long VARCHAR ) 
RESULT( "pResult" CHAR(250) ) 
// IQXWeb
BEGIN
  DECLARE "iSpace" tinyint;
  IF "IQXNetHasPermission"("pWebUserID",'APIDESIGN') = 0 THEN
    SELECT '99:~Permission denied';
    RETURN
  END IF;
  SET "pBody" = "ltrim"("pBody");
  SET "iSpace" = "charindex"(' ',"pBody");
  IF EXISTS(SELECT "p"."proc_name" FROM "sys"."sysprocedure" AS "p" JOIN "sys"."sysuser" AS "u" ON "p"."creator" = "u"."user_id"
      WHERE "p"."proc_name" = "pName" AND "u"."user_name" = "pOwner") THEN
    SET "pBody" = "stuff"("pBody",1,"iSpace",'Alter ')
  ELSE
    SET "pBody" = "stuff"("pBody",1,"iSpace",'Create ')
  END IF;
  EXECUTE IMMEDIATE "pBody";
  EXECUTE IMMEDIATE 'grant execute on '+"pOwner"+'.'+"pName"+' to IQXNet';
  SELECT '0:~Success'
END
GO
 
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."NetAPIProcSet" IS 
{CREATE PROCEDURE pears."NetAPIProcSet"( IN "pWebUserID" CHAR(20),IN "pOwner" CHAR(50),IN "pName" CHAR(50),IN "pBody" long VARCHAR ) 
RESULT( "pResult" CHAR(250) ) 
// IQXWeb
BEGIN
  DECLARE "iSpace" tinyint;
  IF "IQXNetHasPermission"("pWebUserID",'APIDESIGN') = 0 THEN
    SELECT '99:~Permission denied';
    RETURN
  END IF;
  SET "pBody" = "ltrim"("pBody");
  SET "iSpace" = "charindex"(' ',"pBody");
  IF EXISTS(SELECT "p"."proc_name" FROM "sys"."sysprocedure" AS "p" JOIN "sys"."sysuser" AS "u" ON "p"."creator" = "u"."user_id"
      WHERE "p"."proc_name" = "pName" AND "u"."user_name" = "pOwner") THEN
    SET "pBody" = "stuff"("pBody",1,"iSpace",'Alter ')
  ELSE
    SET "pBody" = "stuff"("pBody",1,"iSpace",'Create ')
  END IF;
  EXECUTE IMMEDIATE "pBody";
  EXECUTE IMMEDIATE 'grant execute on '+"pOwner"+'.'+"pName"+' to IQXNet';
  SELECT '0:~Success'
END
}
  • database/procedures/pears_netapiprocset.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1