AS SELECT  DISTINCT   Paragraphs.ParaID,Paragraphs.ParaName, OccurrencesStmt.StatementType, Files.LogicalName, Files.FileID,
		OccurrencesStmt.StartRow, OccurrencesStmt.EndRow, OccurrencesStmt.StartCol, OccurrencesStmt.EndCol,
        Paths.PathStr, Files.Name, Files.TypeCode, Programs.ProgramID,
        JCLPhysicalDataSet.DataSetName as PhysicalFileName, StatementReference.bRead
 FROM         OccurrencesStmt INNER JOIN
                      Programs ON OccurrencesStmt.ProgID = Programs.ProgramID INNER JOIN
					  (SELECT AliasName AS ProgramName, ProgramId FROM ProgramAliases WHERE ProgramAliases.AliasType = 0)pa ON Programs.ProgramID = pa.ProgramId INNER JOIN
                      StatementReference ON OccurrencesStmt.OccurID = StatementReference.OccurID LEFT JOIN
                      Paragraphs ON OccurrencesStmt.ParaID = Paragraphs.ParaID INNER JOIN
                      Files ON StatementReference.ResourceID = Files.FileID
                      INNER JOIN Paths on paths.PathID = OccurrencesStmt.PathID
              LEFT OUTER JOIN ProgramsUsedInPgm
                      LEFT  OUTER JOIN
                      (JCLJob INNER JOIN
                      JCLStep ON JCLJob.JobID = JCLStep.JobID INNER JOIN
                      JCLDD ON JCLStep.StepID = JCLDD.StepID INNER JOIN
                      JCLPosition AS DDPosition ON DDPosition.PositionID = JCLDD.PositionID INNER JOIN
                      JCLDDRef ON JCLDD.DDID = JCLDDRef.DDID LEFT OUTER JOIN
                      JCLPhysicalDataSet ON JCLDDRef.DataSetID = JCLPhysicalDataSet.DataSetID 
                      ) ON ProgramsUsedInPgm.JclPgmID = JCLStep.CalledPgmID
                      ON Programs.ProgramID = ProgramsUsedInPgm.ProgramID 
                      and (jcldd.DDName is null or (Files.Name = JCLDD.DDName OR Files.Name LIKE '%' + '-' + JCLDD.DDName))
 WHERE     (pa.ProgramName IN (Select * from #string_param_temp)) 
 			AND (StatementReference.ResourceType = 9)
 			AND OccurrencesStmt.StatementType NOT IN (12,29,122,1819,124,1821,118,1815)
 			AND (Files.TypeCode <> 32 OR Files.TypeCode IS NULL)
 ORDER BY OccurrencesStmt.StartRow
