powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
7 сообщений из 7, страница 1 из 1
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446342
Истина где-то рядом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот это должно работать

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Sub Агрегация()
    Dim s
    Dim d
    d = "& ""--"" &"
    s = "Insert into Сведения(ДатаДокумента, НомерДокумента, КодКонтрагента, ДатаНакладной, НомерНакладной, КодОтветственного, Сумма, ОтметкаОбОплате, НомерНакладнойСПрефиксом " & _
        "SELECT First(ВедомостьПоступленийТовара.ДатаДокумента) AS [First-ДатаДокумента], First(ВедомостьПоступленийТовара.НомерДокумента) AS [First-НомерДокумента], " & _
        "First(Контрагенты.КодКонтрагента) AS [First-КодКонтрагента], First(ВедомостьПоступленийТовара.ДатаНакладной) AS [First-ДатаНакладной], " & _
        "First(ВедомостьПоступленийТовара.НомерНакладной) AS [First-НомерНакладной], First(Ответственные.КодОтветственного) AS [First-КодОтветственного], " & _
        "Sum(ВедомостьПоступленийТовара.СуммаПоЗакупочнойЦене) AS [Sum-СуммаПоЗакупочнойЦене], first('не оплачено') as Отметка, [НомерНакладной] " & d & " [КодОтветственного] " & _
        "AS ВиртНакл " & _
        "FROM ВедомостьПоступленийТовара INNER JOIN (Ответственные INNER JOIN ((СправочникТоваров INNER JOIN Классификатор ON СправочникТоваров.КодПодгруппы = Классификатор.КодПодгруппы) " & _
        "INNER JOIN Контрагенты ON СправочникТоваров.КодПоставщика = Контрагенты.КодКонтрагента) ON Ответственные.КодОтдела = Классификатор.КодОтдела) " & _
        "ON ВедомостьПоступленийТовара.КодТовара = СправочникТоваров.КодТовара " & _
        "GROUP BY [НомерНакладной] " & d & " [КодОтветственного];"
    Debug.Print s
    
    
    CurrentDb.Execute s
    MsgBox ("Импорт успешно завершен")
End Sub



Выдает строку: "Insert into Сведения(ДатаДокумента, НомерДокумента, КодКонтрагента, ДатаНакладной, НомерНакладной, КодОтветственного, Сумма, ОтметкаОбОплате, НомерНакладнойСПрефиксом SELECT First(ВедомостьПоступленийТовара.ДатаДокумента) AS [First-ДатаДокумента], First(ВедомостьПоступленийТовара.НомерДокумента) AS [First-НомерДокумента], First(Контрагенты.КодКонтрагента) AS [First-КодКонтрагента], First(ВедомостьПоступленийТовара.ДатаНакладной) AS [First-ДатаНакладной], First(ВедомостьПоступленийТовара.НомерНакладной) AS [First-НомерНакладной], First(Ответственные.КодОтветственного) AS [First-КодОтветственного], Sum(ВедомостьПоступленийТовара.СуммаПоЗакупочнойЦене) AS [Sum-СуммаПоЗакупочнойЦене], first('не оплачено') as Отметка, [НомерНакладной] & "--" & [КодОтветственного] AS ВиртНакл FROM ВедомостьПоступленийТовара INNER JOIN (Ответственные INNER JOIN ((СправочникТоваров INNER JOIN Классификатор ON СправочникТоваров.КодПодгруппы = Классификатор.КодПодгруппы) INNER JOIN Контрагенты ON СправочникТоваров.КодПоставщика = Конт
рагенты.КодКонтрагента) ON Ответственные.КодОтдела = Классификатор.КодОтдела) ON ВедомостьПоступленийТовара.КодТовара = СправочникТоваров.КодТовара GROUP BY [НомерНакладной] & "--" & [КодОтветственного];"

Оригинал ЗАПРОСА в ACCESS


Код: sql
1.
2.
3.
SELECT First(ВедомостьПоступленийТовара.ДатаДокумента) AS [First-ДатаДокумента], First(ВедомостьПоступленийТовара.НомерДокумента) AS [First-НомерДокумента], First(Контрагенты.КодКонтрагента) AS [First-КодКонтрагента], First(ВедомостьПоступленийТовара.ДатаНакладной) AS [First-ДатаНакладной], First(ВедомостьПоступленийТовара.НомерНакладной) AS [First-НомерНакладной], First(Ответственные.КодОтветственного) AS [First-КодОтветственного], Sum(ВедомостьПоступленийТовара.СуммаПоЗакупочнойЦене) AS [Sum-СуммаПоЗакупочнойЦене], first('не оплачено') as Отметка, [НомерНакладной] & "--" & [КодОтветственного] AS ВиртНакл
FROM ВедомостьПоступленийТовара INNER JOIN (Ответственные INNER JOIN ((СправочникТоваров INNER JOIN Классификатор ON СправочникТоваров.КодПодгруппы = Классификатор.КодПодгруппы) INNER JOIN Контрагенты ON СправочникТоваров.КодПоставщика = Контрагенты.КодКонтрагента) ON Ответственные.КодОтдела = Классификатор.КодОтдела) ON ВедомостьПоступленийТовара.КодТовара = СправочникТоваров.КодТовара
GROUP BY [НомерНакладной] & "--" & [КодОтветственного];



Добавил команду Insert Into
...
Рейтинг: 0 / 0
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446344
Истина где-то рядом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
догадываюсь, что в этих знаках " ' & все проблемы
...
Рейтинг: 0 / 0
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446347
ы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ы
Гость
в конце isert into нет закрывающей скобки. А вообще, текст ошибки не мешало бы приводить - обычно там и написано, в чем ошибка
...
Рейтинг: 0 / 0
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446348
Истина где-то рядом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ы,

СУПЕР. Час возился с этими ковычками, а ответ был прост ))) СПАСИБО
...
Рейтинг: 0 / 0
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446351
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё это прекрасно... а вопрос-то в чём? Ну или суть проблемы, буде она есть...
...
Рейтинг: 0 / 0
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446352
вопрос___222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Истина где-то рядом,

вопросы вы конечно формулируете...

ну попробую угадать

если вы хотите получить строку запроса для исполнения с включением подстроки [НомерНакладной] & "--" & [КодОтветственного] и именно в таком виде, то в коде VBA она будет "звучать" так:

"[НомерНакладной]" & chr(38) &chr(34) & "--" & chr(34) & chr(38) & "[КодОтветственного]"

если не угадал, то приведите наименование ошибки
...
Рейтинг: 0 / 0
Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
    #39446373
Истина где-то рядом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Действительно я думал, что ошибка в этих кавычках - оказалось все правильно делал просто скобку не закрыл.
При этом нашел удобный костыль для замены кавычек и т.п.
Код: vbnet
1.
2.
Dim d
d = "& ""--"" &"
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Уважаемые специалисты помогите найти ошибку в синтаксисе запроса SQL в VBA
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]