where NET.Start_date < m.ldEndCurr and NET.End_date > m.ldStartCurr
instead of multiple 'or's.> > DATES: Start Curr End Curr > | | > <------------------------------> > <---------------> | > | <-------------------> > | <-----------> | > >With Thisform > lnOpCode = .nOpCode > ldStartCurr = .dStartDate1 > ldEndCurr = .dEndDate1 + 1 > ldStartPrev = .dStartDate2 > ldEndPrev = .dEndDate2 + 1 >EndWith > >... > >Select NotETM >Locate >Wait WINDOW "Non-ETM Data: Finding Journeys partially or wholly within the Time periods ..." NOWAIT NOCLEAR >SELECT NET.Operator, NET.Route, NET.Start_Date, NET.End_Date, NET.RorF, NET.Passengers, ; > IIF( NET.Route == NET.Mcl_Rte, " ", NET.Mcl_Rte) as ContrNum, ; > 0000000 AS CurrPass, 0000000 AS PrevPass, op.Desc as OpDesc, rf.ServType ; > FROM NotETM NET ; > JOIN Operator op ; > On NET.Operator == op.Code ; > JOIN RteFam rf ; > On NET.Operator == rf.Operator ; > and NET.Route == rf.ERoute ; > WHERE NET.Start_date < ldStartCurr and NET.End_date > ldEndCurr ; > OR ( NET.Start_date BETWEEN ldStartCurr and ldEndCurr ; > and NET.End_date BETWEEN ldStartCurr and ldEndCurr ) ; > OR ( NET.Start_date BETWEEN ldStartCurr and ldEndCurr ; > and NET.End_date > ldEndCurr) ; > OR ( NET.Start_date < ldStartCurr ; > and NET.End_date BETWEEN ldStartCurr and ldEndCurr) ; > OR NET.Start_date < ldStartPrev and NET.End_date > ldEndPrev ; > OR ( NET.Start_date BETWEEN ldStartPrev and ldEndPrev ; > and NET.End_date BETWEEN ldStartPrev and ldEndPrev ) ; > OR ( NET.Start_date BETWEEN ldStartPrev and ldEndPrev ; > and NET.End_date > ldEndPrev) ; > OR ( NET.Start_date < ldStartPrev ; > and NET.End_date BETWEEN ldStartPrev and ldEndPrev) ; > AND lnOpCode == op.Code; > GROUP BY NET.Mcl_Rte, NET.Operator, NET.Route ; > ORDER BY NET.Operator, NET.Route ; > INTO CURSOR csrNotETMPassengers NOFILTER READWRITE > >>