<% '------------------------------------------------------------ ' This function finds the last date of the given month '------------------------------------------------------------ Function GetLastDay(intMonthNum, intYearNum) Dim dNextStart If CInt(intMonthNum) = 12 Then dNextStart = CDate( "1/1/" & intYearNum) Else dNextStart = CDate(intMonthNum + 1 & "/1/" & intYearNum) End If GetLastDay = Day(dNextStart - 1) End Function '------------------------------------------------------------------------- ' This routine prints the individual table divisions for days of the month '------------------------------------------------------------------------- Sub Write_TD(sValue, sClass) Response.Write " " & sValue & "" & vbCrLf End Sub ' Constants for the days of the week Const cSUN = 1, cMON = 2, cTUE = 3, cWED = 4, cTHU = 5, cFRI = 6, cSAT = 7 ' Get the name of this file sScript = Request.ServerVariables("SCRIPT_NAME") ' Check for valid month input If IsEmpty(Request("MONTH")) OR NOT IsNumeric(Request("MONTH")) Then datToday = Date() intThisMonth = Month(datToday) ElseIf CInt(Request("MONTH")) < 1 OR CInt(Request("MONTH")) > 12 Then datToday = Date() intThisMonth = Month(datToday) Else intThisMonth = CInt(Request("MONTH")) End If ' Check for valid year input If IsEmpty(Request("YEAR")) OR NOT IsNumeric(Request("YEAR")) Then datToday = Date() intThisYear = Year(datToday) Else intThisYear = CInt(Request("YEAR")) End If strMonthName = MonthName(intThisMonth) datFirstDay = DateSerial(intThisYear, intThisMonth, 1) intFirstWeekDay = WeekDay(datFirstDay, vbSunday) intLastDay = GetLastDay(intThisMonth, intThisYear) ' Get the previous month and year intPrevMonth = intThisMonth - 1 If intPrevMonth = 0 Then intPrevMonth = 12 intPrevYear = intThisYear - 1 Else intPrevYear = intThisYear End If ' Get the next month and year intNextMonth = intThisMonth + 1 If intNextMonth > 12 Then intNextMonth = 1 intNextYear = intThisYear + 1 Else intNextYear = intThisYear End If ' Get the last day of previous month. Using this, find the sunday of ' last week of last month LastMonthDate = GetLastDay(intLastMonth, intPrevYear) - intFirstWeekDay + 2 NextMonthDate = 1 ' Initialize the print day to 1 intPrintDay = 1 ' Open a record set of schedules Set Rs = Server.CreateObject("ADODB.RecordSet") ' These dates are used in the SQL dFirstDay = intThisMonth & "/1/" & intThisYear dLastDay = intThisMonth & "/" & intLastDay & "/" & intThisYear sSQL = "SELECT DISTINCT Start_Date, End_Date FROM t50Events WHERE " & _ "(Start_Date >=#" & dFirstDay & "# AND Start_Date <= #" & dLastDay & "#) " & _ "OR " & _ "(End_Date >=#" & dFirstDay & "# AND End_Date <= #" & dLastDay & "#) " & _ "OR " & _ "(Start_Date < #" & dFirstDay & "# AND End_Date > #" & dLastDay & "# )" & _ "ORDER BY Start_Date" 'Response.Write sSQL ' Open the RecordSet with a static cursor. This cursor provides bi-directional navigation Rs.Open sSQL, sDSN, adOpenStatic, adLockReadOnly, adCmdText %>  Fifty Plus - Richmond Reads

 

july books
Fifty Plus Logo Banner
Richmond Reads by John Denniston

Four on the Shore

There’s nothing like grabbing a goodmystery and losing yourself in it while sitting out on the beach in July. These four new page-turners will definitely keep you reading through several applications of sun block.
(Caution: They’re also guaranteed to keep you reading after the sun goes down.)

Silence, (Harcourt, 448 pages, $25), Edgar Award-winning Thomas Perry’s latest psychological thriller, is a roller coaster ride between the present and past as former policeman Jack Till takes it on himself to prove that Wendy Harper, a woman he helped “disappear” years ago, is in no way responsible for the recent murder of her former partner.
As Till winds his way through the labyrinth of Wendy’s six-year-old new identity, in itself a story that will keep you wanting to know more, it’s Perry’s villains—high-styling, tango-dancing Paul and Sylvie Turner—who steal the show. “Silence” is due in bookstores July 2.

Former Boston big-shot attorney Scott Finn also takes it on himself to right a wrong in Innocence, the new legal whodunit from David Hosp, due out July 11 (Warner, 420 pages, $24.99). An illegal Salvadoran immigrant charged with shooting a policewoman has been in prison for 15 years, but new DNA evidence may show he’s the wrong man, despite eye-witness testimony and heaps of forensics that convicted him.
Finn reluctantly agrees to take a look at the case, and as new evidence (and bodies) mounts, he is propelled—as is the reader—into solving what may be a decades-old conspiracy that extends from street gangs to the top of the police force.
For those who like a lighter tone with their reading, here’s good news: Lomax and Biggs are back in Boodthirsty (MacAdam/Cage, 425 pages, $26). Marshall Karp’s wise-cracking West Coast detectives, who gained a strong following from his debut “The Rabbit Factory,” return during a fast-paced, brings-a-smile-to-your-face series of killings in La-La Land. Want dead producers in garbage cans? You got it. Want sycophantic assistants drained of all their, um, enthusiasm? You got that, too. And much, much more.
Karp’s humorous tone and larger-than-life approach (or is it really more ordinary and lifelike?) never interfere with what is a truly good police plot written in crisp, quick language.

On the other hand, Icemoon by Jan Costin Wagner (Harcourt, 288 pages, $25) can be described as a haunting work that uses the mystery form to reach deep into the reader’s soul. Using the barest of language and emotion, this German novel set in Finland explores loss from dual perspectives: that of Detective Kimmo Joentaa, whose wife has just died, and of the serial killer he’s tracking. The results, like the title moon, are chilling.

John Denniston lives and writes in Richmond.

50 plus cover Sept 07

Home