@showJobInfo integer
AS 
begin
set NOCOUNT ON;

/* create table #ids (
    id int
    )
if (@showJobInfo = 1)
	INSERT INTO #ids (id) select CA7_Jobs.JobID from CA7_Jobs
	WHERE 
			 CA7_Jobs.JobID IN (Select * from #numeric_param_temp)
			 and CA7_Jobs.JobID NOT IN  (SELECT CA7_JobsTriggeredByJobs.JobID FROM CA7_JobsTriggeredByJobs)
			 and CA7_Jobs.JobID IN  (SELECT CA7_JobsTriggeredByJobs.TriggeredBy_JobID FROM CA7_JobsTriggeredByJobs)
*/
	 
select CA7_Jobs.JobID,
		CA7_Jobs.LibID,
		CA7_Jobs.JOB_NAME,
		JCLJob.JobId,
		CA7_Jobs.JCL_MEMBER,
		CA7_Jobs.SYSTEM_NAME,
		case when (1 = 1 /*@showJobInfo = 1 AND (CA7_Jobs.JobID IN  (SELECT CA7_SchedulesPerJob.JobID FROM CA7_SchedulesPerJob UNION select id from #ids))*/)
                    then CA7_Jobs.JOB_INFORMATION_Text else null end as infoTxt,
        case when  EXISTS (select CA7_SchedulesPerJob.JobID FROM CA7_SchedulesPerJob where CA7_SchedulesPerJob.JobID = CA7_Jobs.jobID ) then 0 -- 0 is for 'scheduled'
			else (case when (EXISTS (SELECT TriggeredBy_JobID FROM CA7_JobsTriggeredByJobs where CA7_JobsTriggeredByJobs.TriggeredBy_JobID = CA7_Jobs.jobID)
				       AND NOT EXISTS (SELECT   JobID FROM CA7_JobsTriggeredByJobs where CA7_JobsTriggeredByJobs.JobID = CA7_Jobs.jobID)) then 1 --'1 is for start'
			else (case when ( NOT EXISTS (SELECT  TriggeredBy_JobID FROM CA7_JobsTriggeredByJobs where CA7_JobsTriggeredByJobs.TriggeredBy_JobID = CA7_Jobs.jobID)
			      		AND EXISTS (SELECT JobID FROM CA7_JobsTriggeredByJobs where CA7_JobsTriggeredByJobs.JobID = CA7_Jobs.jobID)) then 3 -- 3 is for 'end'
			else 2 --2 is for 'middle' 
				end) 
				end) 
				end as jobtype,
		JCLJob.BuildStatus 
from CA7_Jobs --INNER JOIN CA7_Libraries ON CA7_Jobs.LibID = CA7_Libraries.LibID  
	LEFT JOIN JCLJob ON CA7_Jobs.JCL_MEMBER = JCLJob.MemberName
WHERE CA7_Jobs.JobID IN (Select * from #numeric_param_temp)

--drop table #ids

end 