Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / vbs, Не вставляются поле. / 8 сообщений из 8, страница 1 из 1
31.05.2016, 11:35
    #39246925
Ainur.sm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Добавляются все поля кроме PriceSell. PriceSell 0?! В чем ошибка?

Код: 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.
Dim rstA,rstB,rstC, sSql,iPrice,iQuantity,iProductID,iID,iDeliveryCostPerProduct,iPerProductPrice,iDocumentNumber,iProductPerPrice,iOtherExpenses,iSaleID,sClient,sUserName,aQuantity,bQuantity,cQuantity,iDivField,x,y

y = 1
ExecuteSQL "DELETE * FROM tblDirectCosts"

sSql = "SELECT ProductID, SalePrice,Quantity,ClientDeliveryCalc/(select sum(Quantity/DivField) from tblSalesProducts as a where a.SaleID = tblSalesProducts.SaleID),DocumentNumberCalc,SaleID,ID,IIF(DivField >=1,DivField,1) FROM qdfSalesProducts Order by ProductID,DocumentDateCalc"
OpenRecordset rstA, sSql
If  Not rstA.EOF Then
		Do Until rstA.EOF
            SetStatusText "Обработка " & rstA.AbsolutePosition & " из " & rstA.RecordCount
            iProductID = rstA("ProductID").Value
			iQuantity = rstA("Quantity").Value
			iPrice = rstA("SalePrice").Value
			
			iPrice = Replace(iPrice,",", ".")
			
			iPerProductPrice = rstA(3).Value
			iPerProductPrice = Replace(iPerProductPrice,",", ".")
			iPerProductPrice = Val(iPerProductPrice)
			iPerProductPrice = Replace(iPerProductPrice,",", ".")
			iDocumentNumber = rstA("DocumentNumberCalc").Value
			iSaleID = rstA("SaleID").Value
			iID = rstA("ID").Value
			iDivField = rstA(7).Value
			ExecuteSQL "INSERT INTO tblDirectCosts (ProductID,QuantitySell,[color=green]PriceSell[/color],PerProductPrice,DocumentNumber,SaleID,DocumentDate, QuantityBuy,PriceBuy,DeliveryCostPerProduct,OtherExpenses,ProductPerPrice,Saldo,Saldo2,ProductSaleID,DivField) VALUES (" & iProductID & "," & iQuantity & "," [color=red]& iPrice &[/color] "," & iPerProductPrice & ",'" & iDocumentNumber & "'," & iSaleID & ",(SELECT TOP 1 DocumentDate FROM tblSales WHERE ID = " & iSaleID & "),0,0,0,0,0,0,0," & iID & "," & iDivField & ")"
			rstA.MoveNext
		Loop
End If
rstA.Close

MsgBox "Пересчет окончен"
...
Рейтинг: 0 / 0
31.05.2016, 12:04
    #39246987
by-pass
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Ainur.sm,

Возможно в этом:
PriceSell
В данном месте запроса указываются имена полей в таблице.
...
Рейтинг: 0 / 0
31.05.2016, 12:16
    #39247013
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Замените проблемную строку на
Код: vbnet
1.
2.
3.
strSQL = "INSERT INTO tblDirectCosts (ProductID, ... "
WScript.Echo strSQL ' либо MsgBox strSQL
ExecuteSQL strSQL


и покажите сформированный текст запроса.
...
Рейтинг: 0 / 0
31.05.2016, 15:07
    #39247267
Ainur.sm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Akina,
Результат нечего не получила.
Код: 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.
Dim rstA,rstB,rstC, sSql,iPrice,iQuantity,iProductID,iID,iDeliveryCostPerProduct,iPerProductPrice,iDocumentNumber,iProductPerPrice,iOtherExpenses,iSaleID,sClient,sUserName,aQuantity,bQuantity,cQuantity,iDivField,x,y, strSQL
y = 1
ExecuteSQL "DELETE * FROM tblDirectCosts"

sSql = "SELECT ProductID, SalePrice,Quantity,ClientDeliveryCalc/(select sum(Quantity/DivField) from tblSalesProducts as a where a.SaleID = tblSalesProducts.SaleID),DocumentNumberCalc,SaleID,ID,IIF(DivField >=1,DivField,1) FROM qdfSalesProducts Order by ProductID,DocumentDateCalc"
OpenRecordset rstA, sSql
If    rstA.EOF Then
		Do Until rstA.EOF
            SetStatusText "Обработка " & rstA.AbsolutePosition & " из " & rstA.RecordCount
            iProductID = rstA("ProductID").Value
			iQuantity = rstA("Quantity").Value
			iPrice = rstA("SalePrice").Value
			
			iPrice = Replace(iPrice,",", ".")
			
			iPerProductPrice = rstA(3).Value
			iPerProductPrice = Replace(iPerProductPrice,",", ".")
			iPerProductPrice = Val(iPerProductPrice)
			iPerProductPrice = Replace(iPerProductPrice,",", ".")
			iDocumentNumber = rstA("DocumentNumberCalc").Value
			iSaleID = rstA("SaleID").Value
			iID = rstA("ID").Value
			iDivField = rstA(7).Value
			strSQL = "INSERT INTO tblDirectCosts (ProductID,QuantitySell,PriceSell,PerProductPrice,DocumentNumber,
SaleID,DocumentDate,QuantityBuy,PriceBuy,DeliveryCostPerProduct,OtherExpenses,ProductPerPrice,Saldo,Saldo2,ProductSaleID,DivField) VALUES (" & iProductID & "," & iQuantity & "," & iPrice & "," & iPerProductPrice & ",'" & iDocumentNumber & "'," & iSaleID & ",
(SELECT TOP 1 DocumentDate FROM tblSales WHERE ID = " & iSaleID & "),0,0,0,0,0,0,0," & iID & "," & iDivField & ")"
			rstA.MoveNext
		Loop
End If
rstA.Close
 
MsgBox strSQL
...
Рейтинг: 0 / 0
31.05.2016, 15:38
    #39247304
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Ну потому что надо сделать то, что попросили, а не то, что показалось.
...
Рейтинг: 0 / 0
31.05.2016, 15:41
    #39247308
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
потому что нельзя такое делать:


Код: vbnet
1.
insert into ... values(... (SELECT TOP 1 DocumentDate FROM tblSales WHERE ID = " & iSaleID & "), ... )
...
Рейтинг: 0 / 0
31.05.2016, 19:43
    #39247533
Ainur.sm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Konst_One, Почему нельзя?
...
Рейтинг: 0 / 0
01.06.2016, 12:24
    #39248001
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vbs, Не вставляются поле.
Ainur.sm,

нет такого синтаксиса у MS SQL
https://msdn.microsoft.com/ru-ru/library/ms174335(v=sql.120).aspx
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / vbs, Не вставляются поле. / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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