Looks like ClearTable is not the correct method. As per the code, its doing

ClassMethod %ClearTable(pTable As %String)
Kill ^Ens.LookupTable(pTable)

so..i did this but not too comfortable touching the globals directly. Hoping there is a cleaner way... (the below works)..

Table initialization

s tmpTable = ##class(Ens.Util.LookupTable).%New()
s ^Ens.LookupTable("myNiCTmpTable00992314","DUMMYVAL")=0 //create some randomly named table

<....use this tmp table for lookup and adding new rows.>

delete the tmpTable once done with usage

d tmpTable.%ClearTable("myNiCTmpTable00992314")

Edit: Adding a 2 digit random number at the end of the temp table name to ensure no conflict if multiple threads are running at the same time.

HI Marc - how about during daylight savings time? Does this routine take care of that case even though we are specifying %K(-5)? May be use  $System.Util.IsDST() and do -4 if true.

Edit: That check if DST will not work if the input timestamp falls in DST but we are doing the conversion outside of that. There has to be an easier way to convert this (may be against the local OS timezone or something).