====== pears.NetOwnerContactList ======
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
===== Original SQL =====
create procedure "pears"."NetOwnerContactList"( in "pWebUserID" char(20),in "pCompanyID" char(20) )
result( "Value" char(20),"Descrip" char(100) )
begin
if not exists(select * from "company" where "companyid" = "pCompanyID") then
select '0','No Contacts Available';
return
end if;
select "e"."employmentid",
"p"."name"
from "employment" as "e"
key join "person" as "p"
where "e"."temp" = 0
and "e"."leavedate" is null
and "p"."status" in( 'L','C' )
and "e"."companyid" = "pCompanyID"
order by "p"."keyname" asc
end /* DOC
2016-08-22 PC Provide a list of contacts for creating a contact event for a Company
2018-09-14 JW Performance improvement for pulse
2018-09-28 IW-686 Changed order by from surname to keyname
Inputs:
pCompanyID - company id to create list
Outputs:
Value - EmploymentID
Descrip - Person Name
Test:
Check with empty CompanyID
check with incorrect CompanyID
Check with Correct CompanyID
*/
/* TEST
call NetTestSetup('');
delete from contactevent where contacteventid like 'TEST%';
insert into contactclass (classcode,classdescrip) on existing update values ('~~','Test Class');
update person set status='L' where personid='TEST';
select * from "NetOwnerContactEventsSet"('test.owner','TEST1','n','~~','test','test','test',dateformat(now(*),'dd/mm/yyyy'),'TestDescription','TestNote',dateformat(dateadd(hh,1,now(*)),'dd/mm/yyyy'),'TestOutcome',1);
expect pResult=0:~Success;
select * from NetOwnerContactList('TEST.OWNER',null);
expect value=0;
select * from NetOwnerContactList('TEST.OWNER','rr');
expect value=0;
select top 1 * from NetOwnerContactList('TEST.OWNER','TEST') where value='test';
expect Value=TEST,Descrip=test;
expect EOF;
update person set status='P' where personid='TEST';
delete from contactevent where contacteventid like 'TEST%';
*/
go
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."NetOwnerContactList" IS
{create PROCEDURE pears."NetOwnerContactList"(in pWebUserID char(20), in pCompanyID char(20))
RESULT(Value char(20),Descrip char(100) )
BEGIN
if not exists (select * from company where companyid=pCompanyID) then
select '0','No Contacts Available';
return;
end if;
select
e.employmentid,
p.name
from
employment e
key join person p
where
e.temp =0
and e.leavedate is null
and p.status in ('L','C')
and e.companyid=pCompanyID
order by
p.keyname asc
END
/* DOC
2016-08-22 PC Provide a list of contacts for creating a contact event for a Company
2018-09-14 JW Performance improvement for pulse
2018-09-28 IW-686 Changed order by from surname to keyname
Inputs:
pCompanyID - company id to create list
Outputs:
Value - EmploymentID
Descrip - Person Name
Test:
Check with empty CompanyID
check with incorrect CompanyID
Check with Correct CompanyID
*/
/* TEST
call NetTestSetup('');
delete from contactevent where contacteventid like 'TEST%';
insert into contactclass (classcode,classdescrip) on existing update values ('~~','Test Class');
update person set status='L' where personid='TEST';
select * from "NetOwnerContactEventsSet"('test.owner','TEST1','n','~~','test','test','test',dateformat(now(*),'dd/mm/yyyy'),'TestDescription','TestNote',dateformat(dateadd(hh,1,now(*)),'dd/mm/yyyy'),'TestOutcome',1);
expect pResult=0:~Success;
select * from NetOwnerContactList('TEST.OWNER',null);
expect value=0;
select * from NetOwnerContactList('TEST.OWNER','rr');
expect value=0;
select top 1 * from NetOwnerContactList('TEST.OWNER','TEST') where value='test';
expect Value=TEST,Descrip=test;
expect EOF;
update person set status='P' where personid='TEST';
delete from contactevent where contacteventid like 'TEST%';
*/
}