SELECT ET.Operator, ET.Route, ET.Class, ET.Date, ET.RorF, op.Desc as OpDesc, RF1.ServType, ; IIF( ET.Route == ET.Mcl_Rte, " ", ET.Mcl_Rte) as ContrNum, ; SUM( IIF( BETWEEN( ET.date, ldStartCurr, ldEndCurr), ET.Number, 0000000)) AS CurrPass, ; SUM( IIF( BETWEEN( ET.date, ldStartPrev, ldEndPrev), ET.Number, 0000000)) AS PrevPass ; FROM ETMData ET ; JOIN Operator op ; On ET.Operator == op.Code ; JOIN RF1 ; On ET.Operator == RF1.Operator ; and ET.Route == RF1.ERoute ; WHERE op.Code == lnOpCode ; And ( ET.date BETWEEN ldStartCurr and ldEndCurr ; OR ET.date BETWEEN ldStartPrev and ldEndPrev) ; GROUP BY ET.Mcl_Rte, ET.Operator, ET.Route, ET.Class ; ORDER BY ET.Operator, ET.Route, ET.Class ; INTO CURSOR csrETMPassengers NOFILTER