|
|
|
| подскажите, в чем ошибка синтаксиса и как исправить?
или ошибка в strSql ? | |
|
| |
|
|
|
| Наверное в strSql , так как остальное - всё красиво и по моему правильно. | |
|
| |
|
|
|
| оцените, плиз!
strSql = "SELECT Sum(BedCalc([ПланОбъемДеят],[кодФункционал],[МедОрг])) AS РасчетКоек "
strSql = strSql & "FROM (сСпециальностей INNER JOIN сШН ON сСпециальностей.Код = сШН.МедСпец) "
strSql = strSql & "INNER JOIN ФункционалМедОрг ON сШН.КодФункционал = ФункционалМедОрг.Функционал"
strSql = strSql & "WHERE (((ФункционалМедОрг.МедОрг)=""" & glngMedOrgCode & """) AND "
strSql = strSql & "((ФункционалМедОрг.Функционал)<69) AND ((сСпециальностей.Хирургичность)=Yes));"
strSql сварганил из запроса | |
|
| |
|
|
|
| Найти тута ошибку - не представляется возможным
ДЛЯ МЕНЯ
--------------------------------
хотя вот тут """ & glngMedOrgCode & """ - дофига кавычек
'" & glngMedOrgCode & "'
вот так достаточно.
Это вообще - строковое значение в таблице? в коде ? | |
|
| |
|
|
|
|
кавычки у вас похоже нормально, а вот пробелы ---увы
strsql = "SELECT Sum(BedCalc([ПланОбъемДеят],"
strsql = strsql & " [кодФункционал],[МедОрг])) AS РасчетКоек "
strsql = strsql & " FROM (сСпециальностей INNER JOIN сШН"
strsql = strsql & " ON сСпециальностей.Код = сШН.МедСпец) "
strsql = strsql & " INNER JOIN ФункционалМедОрг"
strsql = strsql & " ON сШН.КодФункционал = ФункционалМедОрг.Функционал"
strsql = strsql & " WHERE (((ФункционалМедОрг.МедОрг)=""" & glngMedOrgCode & """) AND "
strsql = strsql & "((ФункционалМедОрг.Функционал)<69) AND ((сСпециальностей.Хирургичность)=Yes));"
хотя glngMedOrgCode--похоже число, зачем тогда кавычки
strsql = "SELECT Sum(BedCalc([ПланОбъемДеят],"
strsql = strsql & " [кодФункционал],[МедОрг])) AS РасчетКоек "
strsql = strsql & " FROM (сСпециальностей INNER JOIN сШН"
strsql = strsql & " ON сСпециальностей.Код = сШН.МедСпец) "
strsql = strsql & " INNER JOIN ФункционалМедОрг"
strsql = strsql & " ON сШН.КодФункционал = ФункционалМедОрг.Функционал"
strsql = strsql & " WHERE (((ФункционалМедОрг.МедОрг)=" & glngMedOrgCode & ") AND "
strsql = strsql & " ((ФункционалМедОрг.Функционал)<69) AND ((сСпециальностей.Хирургичность)=Yes));"
каков тип ФункционалМедОрг.МедОрг
|
| |
|
| |
|
|
|
| оставил одни кавычки " & "
и исправил пробелы (спасибо, не увидел) и вроде прошло
ВСЕМ спасибо!! | |
|
| |
|
|
|
|
предпочитаю создание строк без лишних сцеплений
Dim s1
Dim glngMedOrgCode
Dim rst As DAO.Recordset
Sub a110526_0905()
s1 = "SELECT Sum(BedCalc([ПланОбъемДеят],"
s1 = s1 & " [кодФункционал],[МедОрг])) AS РасчетКоек "
s1 = s1 & " FROM (сСпециальностей INNER JOIN сШН"
s1 = s1 & " ON сСпециальностей.Код = сШН.МедСпец) "
s1 = s1 & " INNER JOIN ФункционалМедОрг w"
s1 = s1 & " ON сШН.КодФункционал = w.Функционал"
s1 = s1 & " WHERE ((w.МедОрг)=pp1) "
s1 = s1 & " and ((w.Функционал)<pp2)"
s1 = s1 & " AND ((сСпециальностей.Хирургичность)=pp3);"
'DoCmd.RunSQL s1
glngMedOrgCode = 1
s1 = zm(s1, "pp1", glngMedOrgCode)
s1 = zm(s1, "pp2", 69)
s1 = zm(s1, "pp3", True)
''s1 = zm(s1, "pp4", True)
Debug.Print s1
Set rst = CurrentDb.OpenRecordset(s1)
End Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function zm(nstroka, npoisk, nzamena)
zm = Replace(nstroka, npoisk, nzamena)
Dim j1
j1 = InStr(nstroka, npoisk)
If j1 = 0 Then
MsgBox "неверно имя параметра " & npoisk & Chr(13) & nstroka
Else
Debug.Print npoisk, nzamena, Mid(nstroka, j1 - 5, 20)
End If
End Function
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
кавычки и # расставляю сразу
''''''''''''''''''''''''
s1 = s1 & " WHERE ((w.колич)=pp1) "
s1 = s1 & " and ((w.датаФункционал)<#pp2#)"
s1 = s1 & " AND ((сСпециальностей.символХирургичность)='pp3');"
|
| |
|
| |
|
|
|
| shanemac51 ! Интересное решение!
а вот Sub a110526_0905() не понял. Где то еще Sub есть? | |
|
| |
|
|
|
|
автор: ser60 (26.05.2011 в 16:30) личное сообщение
to: shanemac51 (26.05.2011 в 09:38)
shanemac51 ! Интересное решение!
а вот Sub a110526_0905() не понял. Где то еще Sub есть?
|
день и время --для идентификации версий | |
|
| |
|
|
|
| glngMedOrgCode это long
с одними (двойными) кавычками тоже не проходит | |
|
| |
|
|
|
| сформируйте готовый стринг запроса и покажите | |
|
| |
|
|
|
| ды не с одними двойными а апостоф и кавычки - ' " вот так только без пробела. | |
|
| |
|