G
Gor
Всем доброго время суток...
Опять столкнулся с проблемой которую никак не могу решить.
В общем ситуация следующая. Есть View на нём Action - Составить отчёт.
В общем надо сделать следующее. Чтобы по нажатию на кнопку создавался новый документ с отчётом по динамически созданой вьюхе. Мне удалось сформировать отчёт с отбором по Дате. Но тут появилась ещё одна задача сформировать отчёт по дате + ещё по названию. (каждому названию соответствует определённая дата). Код ниже я скинул формирование отчёта я обрезал оставил только ребилд который именно и не получается.
НЕ ПОЛУЧАЕТСЯ СЛЕДУЮЩЕЕ!!!! втюха не может отобрать документы по следующей формуле которую я формирую программно
formula = "SELECT Form = 'TE' & ((dprk >= @date(" + date1 + "))" + "& (dprk <= @date(" + date2 + ")) & training =(" + kurs + ")"
А ПОЧЕМУ? а потому что в дебагере она выглядит вот так (если вводим в inputbox - Знание, а дата 01-01-2006 , 01-01-2007
SELECT Form = "TE" & ((dprk >= @date(01;01;2006)) + (dprk <= @date(01;01;2007)) & (training = Знание)
В таком виде он её посовывает во вьюху(((
и естественно отбор не проходит.... причём с датой всё ок а вот с
training = Знание ....касяк.... надо чтобы было training = "Знание"
а он без ковычек во вьюху записывает...Как это обойти? Буду очень рад если поняли мой вопрос)
Опять столкнулся с проблемой которую никак не могу решить.
В общем ситуация следующая. Есть View на нём Action - Составить отчёт.
В общем надо сделать следующее. Чтобы по нажатию на кнопку создавался новый документ с отчётом по динамически созданой вьюхе. Мне удалось сформировать отчёт с отбором по Дате. Но тут появилась ещё одна задача сформировать отчёт по дате + ещё по названию. (каждому названию соответствует определённая дата). Код ниже я скинул формирование отчёта я обрезал оставил только ребилд который именно и не получается.
Код:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim cView As String
Dim formula As String
Dim supplier As String
Dim vecoll
Dim kurs As String
Set ws = New NotesUIWorkspace
Set v = ws.CurrentView.View
Set db = session.CurrentDatabase
cView = "TE"
kurs = Inputbox$("Введите название курса")
date1 = Inputbox$("Введите дату начала тестирования. Формат: < ДД-ММ-ГГГГ >")
date1 = Right(date1,4) + ";" + Left(Right(date1,7),2) + ";" + Left(date1,2)
date2 = Inputbox$("Введите дату окончания тестирования. Формат: < ДД-ММ-ГГГГ >")
date2 = Right(date2,4) + ";" + Left(Right(date2,7),2) + ";" + Left(date2,2)
v.AutoUpdate = False
formula = "SELECT Form = 'TE' & ((dprk >= @date(" + date1 + "))" + "& (dprk <= @date(" + date2 + ")) & (kurs = training))" & training =(" + kurs + ")"
REM (dprk - поле дата в колонке TE, training - поле название в колонке TE)
v.SelectionFormula = formula
Call v.Refresh
v.AutoUpdate = True
Call ws.ViewRebuild
formula = "SELECT Form = 'TE' & ((dprk >= @date(" + date1 + "))" + "& (dprk <= @date(" + date2 + ")) & training =(" + kurs + ")"
А ПОЧЕМУ? а потому что в дебагере она выглядит вот так (если вводим в inputbox - Знание, а дата 01-01-2006 , 01-01-2007
SELECT Form = "TE" & ((dprk >= @date(01;01;2006)) + (dprk <= @date(01;01;2007)) & (training = Знание)
В таком виде он её посовывает во вьюху(((
и естественно отбор не проходит.... причём с датой всё ок а вот с
training = Знание ....касяк.... надо чтобы было training = "Знание"
а он без ковычек во вьюху записывает...Как это обойти? Буду очень рад если поняли мой вопрос)