powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите, пожалуйста, исправить ошибку в VB Script
8 сообщений из 8, страница 1 из 1
Помогите, пожалуйста, исправить ошибку в VB Script
    #37862863
Novichek_1004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, товарищи-профессионалы! :)

Помогите, пожалуйста, исправить ошибку в скрипте. Возникает после выполнения функции update, и явно из-за ее неправильного задания.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
Call DoInsert()

Sub DoInsert()

    Dim objArgs 
    Dim sDb
    Dim CurrentUser
    Dim Client 
    Dim Phone 
    Dim City
    Dim Village
    Dim MDistrict
    Dim Street
    Dim HouseNumber
    Dim HouseCorp
    Dim PostalCode
    Dim District
Dim ID
    

    Set objArgs = WScript.Arguments 
    sDb = objArgs(0)
    CurrentUser = objArgs(1)
    Client = objArgs(2)
    Phone = objArgs(3)
    City = objArgs(4)
    Village = objArgs(5)
    MDistrict = objArgs(6)
    Street = objArgs(7)
    HouseNumber = objArgs(8)
    HouseCorp = objArgs(9)
    PostalCode = objArgs(10)
    District = objArgs(11)
    ID = objArgs(12)

    sDb = Mid(sDb, 2)
    CurrentUser=Mid(CurrentUser,2)
    Client= Mid(Client,2)
    Phone= Mid(Phone,2)
    City= Mid(City,2)
    Village= Mid(Village,2)
    MDistrict= Mid(MDistrict,2)
    Street= Mid(Street,2)
    HouseNumber= Mid(HouseNumber,2)
    HouseCorp= Mid(HouseCorp,2)
    PostalCode= Mid(PostalCode,2)
    District= Mid(District,2)
    ID= Mid(ID,2)  
    Dim Con 'объект Connection
    Set Con = CreateObject("ADODB.Connection") 'создание объекта Connection
    Con.Mode = 3      

    Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sDb & ";Persist Security Info=False"

    Set rstA = CreateObject("ADODB.Recordset") 'создание объекта Recordset
   
       If rstA.State = 1 Then 'if open
    	rstA.Close 'закрываем ранее открытый набор записей
    End If
     sSql = "SELECT * FROM tblMain WHERE Client= '" & Client & "' AND Phone='" & Phone & "' AND City='" & City & "';"
     rstA.Open sSql, Con 'открытие набора записей
	MsgBox sSql
      If rstA.EOF=TRUE Then 
	  sSql="INSERT INTO tblMain (Client, Phone, City, Village, MDistrict, Street, HouseNumber, HouseCorp, PostalCode, District) VALUES ('" & Client& "', '" & Phone & "', '" & City & "', '" & Village & "', '" & MDistrict & "', '" & Street & "', '" & HouseNumber & "', '" & HouseCorp & "', '" & PostalCode & "', '" & District & "'  )"
	  Con.Execute sSql
	MsgBox sSql
	End If

	sSql="UPDATE tblClientOrders SET ClientID= (SELECT ID FROM tblMain WHERE Client='" & Client & " ' AND Phone='" & Phone & "' AND City='" & City & "') WHERE ID=" & ID & ";"
MsgBox sSql	
Con.Execute sSql 	
	rstA.Close	
    Set rstA = Nothing
    Set rstB = Nothing
    Set Con = Nothing
End Sub





Во вложении скриншот ошибки.
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37862892
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В конструкции Update не указана собственно, таблица
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37862899
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProВ конструкции Update не указана собственно, таблицасорри, не то сказал, не туда посмотрел. tblClientOrders является реаольной таблицей или это представление?
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37862926
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProShocker.ProВ конструкции Update не указана собственно, таблицасорри, не то сказал, не туда посмотрел. tblClientOrders является реаольной таблицей или это представление?в общем, надо попытаться выполнить этот запрос прямо в аксессе
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37863013
Novichek_1004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Таблица tblClientOrders является реальной. После выполнения запроса напрямую в access получилась та же ошибка:
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37863023
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда лучше задать вопрос в "Аксессе".
Я вот не уверен, что он поддерживает такой синтаксис (подзапрос в качестве параметра)
Можно переписать запрос UPDATE иначе (через JOIN)
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37863034
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Novichek_1004Shocker.Pro,

Таблица tblClientOrders является реальной. После выполнения запроса напрямую в access получилась та же ошибка:
попробуй так, может повезёт
Код: sql
1.
    sSql = "UPDATE tblClientOrders b, (SELECT ID FROM tblMain WHERE Client='" & Client & " ' AND Phone='" & Phone & "' AND City='" & City & "') a SET b.ClientID=a.ID  WHERE b.ID=" & ID & ";"



не пойдёт - переделывай "доставание ID из tblMain" через рекордсет
...
Рейтинг: 0 / 0
Помогите, пожалуйста, исправить ошибку в VB Script
    #37863064
Novichek_1004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qwerty112,

Помогло!! Спасибо огромное за помощь!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите, пожалуйста, исправить ошибку в VB Script
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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