pears.NetOwnerEmployeeEdit

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

CREATE PROCEDURE "pears"."NetOwnerEmployeeEdit"( IN "pWebUserID" CHAR(20),IN "pObjID" CHAR(20),IN "pParentObject" CHAR(20),IN "pForenames" CHAR(50) DEFAULT NULL,IN "pSurname" CHAR(50) DEFAULT NULL,IN "pSalutation" CHAR(50) DEFAULT NULL,IN "pDirect_Phone" CHAR(50) DEFAULT NULL,IN "pMobile" CHAR(50) DEFAULT NULL,IN "pEmail" CHAR(50) DEFAULT NULL,IN "pDirect_Fax" CHAR(50) DEFAULT NULL,IN "pPosition" CHAR(50) DEFAULT NULL,IN "pDepartment" CHAR(50) DEFAULT NULL,IN "pNotes" CHAR(100) DEFAULT NULL,
  IN "pOldForenames" CHAR(50) DEFAULT NULL,IN "pOldSurname" CHAR(50) DEFAULT NULL,IN "pOldSalutation" CHAR(50) DEFAULT NULL,IN "pOldDirect_Phone" CHAR(50) DEFAULT NULL,IN "pOldMobile" CHAR(50) DEFAULT NULL,IN "pOldEmail" CHAR(50) DEFAULT NULL,IN "pOldDirect_Fax" CHAR(50) DEFAULT NULL,IN "pOldPosition" CHAR(50) DEFAULT NULL,IN "pOldDepartment" CHAR(50) DEFAULT NULL,IN "pOldNotes" CHAR(100) DEFAULT NULL ) 
RESULT( "pResult" CHAR(250) ) 
BEGIN
  DECLARE "PersID" CHAR(20);
  DECLARE "ssql" CHAR(255);
  DECLARE "divid" CHAR(20);
  SET "divid" = (SELECT FIRST "staff"."divisionid" FROM "iqxnetuser" KEY JOIN "staff" WHERE "iqxnetuser"."iqxnetuserid" = "pwebuserid");
  IF "divid" IS NULL THEN
    SELECT '99:~Permission denied';
    RETURN
  END IF;
  IF "IQXNetHasPermission"("pWebUserID",'ADDCANDIDATES') = 0 THEN
    SELECT '99:~Permission denied';
    RETURN
  END IF;
  IF "pForenames" = '' OR "pSurname" = '' THEN
    SELECT '101:~Please ensure there is both a Forename and a Surname';
    RETURN
  END IF;
  IF("pObjID" = '') THEN
    SET "PersID" = "uniquekey"("pForenames"+"pSurname");
    INSERT INTO "person"( "personid","name","keyname","salutation","forenames","surname","status" ) VALUES( "PersID","pForenames"+' '+"pSurname","ucase"("pForenames")+' '+"ucase"("pSurname"),"pSalutation","pForenames","pSurname",'C' ) ;
    INSERT INTO "employment"( "employmentid","personid","companyid","temp" ) VALUES( "PersID","PersID","pParentObject",'0' ) 
  ELSE
    SET "PersID" = "pObjID";
    UPDATE "person" SET "forenames" = "pForenames","surname" = "pSurname","name" = "pForenames"+' '+"pSurname","keyname" = "ucase"("pForenames")+' '+"ucase"("pSurname"),"salutation" = "pSalutation" WHERE "personid" = "PersID"
  END IF;
  IF "pNotes" <> "pOldNotes" THEN
    UPDATE "employment" SET "note" = "pNotes" WHERE "personid" = "PersID"
  END IF;
  IF "pPosition" <> "pOldPosition" THEN
    UPDATE "employment" SET "position" = "pPosition" WHERE "personid" = "PersID"
  END IF;
  IF "pDepartment" <> "pOldDepartment" THEN
    UPDATE "employment" SET "department" = "pDepartment" WHERE "personid" = "PersID"
  END IF;
  IF "pDirect_Phone" <> "pOldDirect_Phone" THEN
    CALL "SetPhone"('CP','Direct Telephone',"PersID","pDirect_Phone")
  END IF;
  IF "pMobile" <> "pOldMobile" THEN
    CALL "SetPhone"('CP','Mobile',"PersID","pMobile")
  END IF;
  IF "pEmail" <> "pOldEmail" THEN
    CALL "SetPhone"('CP','E-mail',"PersID","pEmail")
  END IF;
  IF "pDirect_Fax" <> "pOldDirect_Fax" THEN
    CALL "SetPhone"('CP','Direct Fax',"PersID","pDirect_Fax")
  END IF;
  SELECT "string"('0:',"PersID",'#',"pParentObject",'~Success')
END
GO
 
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."NetOwnerEmployeeEdit" IS 
{CREATE PROCEDURE pears."NetOwnerEmployeeEdit"( IN "pWebUserID" CHAR(20),IN "pObjID" CHAR(20),IN "pParentObject" CHAR(20),IN "pForenames" CHAR(50) DEFAULT NULL,IN "pSurname" CHAR(50) DEFAULT NULL,IN "pSalutation" CHAR(50) DEFAULT NULL,IN "pDirect_Phone" CHAR(50) DEFAULT NULL,IN "pMobile" CHAR(50) DEFAULT NULL,IN "pEmail" CHAR(50) DEFAULT NULL,IN "pDirect_Fax" CHAR(50) DEFAULT NULL,IN "pPosition" CHAR(50) DEFAULT NULL,IN "pDepartment" CHAR(50) DEFAULT NULL,IN "pNotes" CHAR(100) DEFAULT NULL,
  IN "pOldForenames" CHAR(50) DEFAULT NULL,IN "pOldSurname" CHAR(50) DEFAULT NULL,IN "pOldSalutation" CHAR(50) DEFAULT NULL,IN "pOldDirect_Phone" CHAR(50) DEFAULT NULL,IN "pOldMobile" CHAR(50) DEFAULT NULL,IN "pOldEmail" CHAR(50) DEFAULT NULL,IN "pOldDirect_Fax" CHAR(50) DEFAULT NULL,IN "pOldPosition" CHAR(50) DEFAULT NULL,IN "pOldDepartment" CHAR(50) DEFAULT NULL,IN "pOldNotes" CHAR(100) DEFAULT NULL ) 
RESULT( "pResult" CHAR(250) ) 
BEGIN
  DECLARE "PersID" CHAR(20);
  DECLARE "ssql" CHAR(255);
  DECLARE "divid" CHAR(20);
  SET "divid" = (SELECT FIRST "staff"."divisionid" FROM "iqxnetuser" KEY JOIN "staff" WHERE "iqxnetuser"."iqxnetuserid" = "pwebuserid");
  IF "divid" IS NULL THEN
    SELECT '99:~Permission denied';
    RETURN
  END IF;
  IF "IQXNetHasPermission"("pWebUserID",'ADDCANDIDATES') = 0 THEN
    SELECT '99:~Permission denied';
    RETURN
  END IF;
  IF "pForenames" = '' OR "pSurname" = '' THEN
    SELECT '101:~Please ensure there is both a Forename and a Surname';
    RETURN
  END IF;
  IF("pObjID" = '') THEN
    SET "PersID" = "uniquekey"("pForenames"+"pSurname");
    INSERT INTO "person"( "personid","name","keyname","salutation","forenames","surname","status" ) VALUES( "PersID","pForenames"+' '+"pSurname","ucase"("pForenames")+' '+"ucase"("pSurname"),"pSalutation","pForenames","pSurname",'C' ) ;
    INSERT INTO "employment"( "employmentid","personid","companyid","temp" ) VALUES( "PersID","PersID","pParentObject",'0' ) 
  ELSE
    SET "PersID" = "pObjID";
    UPDATE "person" SET "forenames" = "pForenames","surname" = "pSurname","name" = "pForenames"+' '+"pSurname","keyname" = "ucase"("pForenames")+' '+"ucase"("pSurname"),"salutation" = "pSalutation" WHERE "personid" = "PersID"
  END IF;
  IF "pNotes" <> "pOldNotes" THEN
    UPDATE "employment" SET "note" = "pNotes" WHERE "personid" = "PersID"
  END IF;
  IF "pPosition" <> "pOldPosition" THEN
    UPDATE "employment" SET "position" = "pPosition" WHERE "personid" = "PersID"
  END IF;
  IF "pDepartment" <> "pOldDepartment" THEN
    UPDATE "employment" SET "department" = "pDepartment" WHERE "personid" = "PersID"
  END IF;
  IF "pDirect_Phone" <> "pOldDirect_Phone" THEN
    CALL "SetPhone"('CP','Direct Telephone',"PersID","pDirect_Phone")
  END IF;
  IF "pMobile" <> "pOldMobile" THEN
    CALL "SetPhone"('CP','Mobile',"PersID","pMobile")
  END IF;
  IF "pEmail" <> "pOldEmail" THEN
    CALL "SetPhone"('CP','E-mail',"PersID","pEmail")
  END IF;
  IF "pDirect_Fax" <> "pOldDirect_Fax" THEN
    CALL "SetPhone"('CP','Direct Fax',"PersID","pDirect_Fax")
  END IF;
  SELECT "string"('0:',"PersID",'#',"pParentObject",'~Success')
END
}
  • database/procedures/pears_netowneremployeeedit.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1