====== pears.NetDivisionPopup ======
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
===== Original SQL =====
create procedure "pears"."NetDivisionPopup"(
in "pWebUserID" char(20),in "pDivisionID" char(20) default null,in "pStaffID" char(20) default null,in "pPersonID" char(20) default null,in "pEmploymentID" char(20) default null,in "pVacancyID" char(20) default null,in "ptitle" char(100),in "pdescription" long varchar default null )
result( "pResult" char(250) )
begin
declare local temporary table "sids"(
"sid" char(20) null,
) not transactional;
insert into "sids"( "sid" ) select "staffid" from "staff" where("divisionid" = "pDivisionID" or "staffid" = "pStaffID");
if "pVacancyID" is not null and "pEmploymentID" is null then
set "pEmploymentID" = (select "employmentid" from "vacancy" where "vacancyid" = "pVacancyID")
end if;
insert into "diary"( "diaryid","staffid","personid","employmentid","vacancyid","diaryfrom","description","notes","durationtype","popupminutes" )
select "uniquekey"("sid"),"sid","pPersonID","pEmploymentID","pVacancyID",current timestamp,"ptitle","pdescription",'R',0
from "sids";
select '0:~Success'
end /* DOC
2019-7-24 MHS created for IW-993
Can pass in pDivisionID and/or pStaffID along with any of pPersonID, pEmploymentID, pVacancyID
pTitle is required, pdescription is optional
*/
/* TEST
call NetTestSetup('');
delete from diary where staffid='TEST' and diaryfrom > current date;
select * from netdivisionpopup(pWebUserID='TEST',pStaffID='TEST',pVacancyID='TEST',pTitle='T1',pdescription='T2');
select * from diary where staffid='TEST' and diaryfrom > current date;
expect staffid=TEST, employmentid=TEST, notes=T2;
*/
go
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."NetDivisionPopup" IS
{create PROCEDURE pears.NetDivisionPopup
(in pWebUserID char(20),in pDivisionID char(20) default null, in pStaffID char(20) default null, in pPersonID char(20) default null,in pEmploymentID char(20) default null,in pVacancyID char(20) default null,in ptitle char(100),in pdescription long varchar default null)
result(pResult char(250))
begin
declare local temporary table sids(
sid char(20),
) not transactional;
insert into sids (sid) select staffid from staff where divisionid=pDivisionID or staffid=pStaffID;
if pVacancyID is not null and pEmploymentID is null then
set pEmploymentID=(select employmentid from vacancy where vacancyid=pVacancyID)
end if;
insert into diary( diaryid,staffid,personid,employmentid,vacancyid,diaryfrom,description,notes,durationtype,popupminutes) select
uniquekey(sid),sid,pPersonID,pEmploymentID,pVacancyID,current timestamp,ptitle,pdescription,'R',0
from sids;
select '0:~Success'
end
/* DOC
2019-7-24 MHS created for IW-993
Can pass in pDivisionID and/or pStaffID along with any of pPersonID, pEmploymentID, pVacancyID
pTitle is required, pdescription is optional
*/
/* TEST
call NetTestSetup('');
delete from diary where staffid='TEST' and diaryfrom > current date;
select * from netdivisionpopup(pWebUserID='TEST',pStaffID='TEST',pVacancyID='TEST',pTitle='T1',pdescription='T2');
select * from diary where staffid='TEST' and diaryfrom > current date;
expect staffid=TEST, employmentid=TEST, notes=T2;
*/
}