'SQL-fråga
sSQL = "SELECT * FROM [tblTask] WHERE [PlanStartDate] >= '" & tmStartDate & "' AND [PlanStartDate] < '" & tmStopDate & "' AND CustomerNr = '" & sCustomerNr & "'"
Rs.Open sSQL, Conn
while not rs.eof
if sSQL <> "" then sSQL = sSQL & vbcrlf
sSQL = sSQL & "INSERT INTO [tblContractTemplate] ([Id], [Modified], [StartDate], [StopDate])" _
& " VALUES ("&Rs("field1")&", "&Rs("field2")&", "&Rs("fieldn")&")"
Rs.Movenext
wend
Conn.execute sSQL,,128
Jag skulle vilja komplettera denna med följande pseudokod:
while not rs.eof
'Loopa ut en vecka i taget
'Samla alla veckodagarna (mån;tis,ons osv) i en variabel baserat på [tblPlanStartDate]
'När veckan är slut ska En insert göras till db
'Nästa vecka
Rs.MoveNext
Wend
dim dateStr, currentWeek, sTask
dateStr = ""
currentWeek = -1
sTask = ""
while not rs.eof
if currentWeek <> datepart("ww", rs("PlanStartDate"), 2, 2) then
if currentWeek <> -1 then
'gör insert
dateStr = ""
'else
currentWeek = datepart("ww", rs("PlanStartDate"), 2, 2)
end if
end if
if dateStr <> "" then dateStr = dateStr & ";"
dateStr = dateStr & Left(weekDayName(WeekDay(rs("PlanStartDate"))), 3)
Rs.Movenext
wend
if dateStr <> "" then
'gör insert
dateStr = ""
end if
Som fungerar nästan...
Den ger dock EN sträng...
Jag vill ju få en sträng per vecka och göra INSERT, därefter ny vecka och ny sträng... :)
Mvh
Henrik
284 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e