Operation Details
Description:  
Sterotype: nsmulti
SQL
SELECT *
	INTO :outcomePlanFavouriteID, 
		:username,
		:relatedID, 
		:recordStatus,
		:relatedType,
		:activityType,
		:relatedNameTextID,
		:versionNo
	FROM outcomePlanFavourite opf 
		WHERE opf.relatedType = :relatedType
			AND OPF. recordStatus = :recordStatus
			AND opf.username = :username
			AND (
					EXISTS( SELECT * FROM outcomePlanExpectedOutcome opeo
											WHERE opeo.outcomePlanID = :outcomePlanID
												AND opeo.expectedOutcomeID = opf.relatedID
												AND opf.relatedType = 'OPIT31002'
					)
					OR
					EXISTS( SELECT * FROM OutcomePlanAction opa
												WHERE opa.outcomePlanID = :outcomePlanID
													AND opa.outcomeplanActionAdminID = opf.relatedID
													AND opf.relatedType = 'OPIT31001'
					)								
					OR
					EXISTS( SELECT * FROM ServiceDelivery sd
												WHERE sd.caseID = :outcomePlanID
													AND sd.serviceOfferingID = opf.relatedID
													AND opf.relatedType = 'OPIT31001'
					)
					OR
					EXISTS( SELECT * FROM referral r, referralRole rr
												WHERE r.relatedObjectID = :outcomePlanID
													AND rr.relatedObjectID = opf.relatedID
													AND r.referralID = rr.referralID
													AND rr.relatedObjectType = 'RRR3001'
													AND opf.relatedType = 'OPIT31001'													
					)
			)