|
КД. При выгрузке вылетает ошибка СУБД. | ☑ | ||
---|---|---|---|---|
0
espanol
23.03.12
✎
09:41
|
Начало выгрузки: 23.03.12 09:38:03
Ошибка исполнения обработчика: ПВД_ПередОбработкойПравила_ИзменениеЦен - State 42000, native 8114, message [Microsoft][ODBC SQL Server Driver][SQL Server]Error converting data type varchar to numeric. Выгружено объектов: 0 Окончание выгрузки: 23.03.12 09:38:03 Выгружаю цены, при выгрузке указываю параметр, какой тип цены выгружать. Все типы цен кроме одного выгружаются нормально. А последняя выдает ошибку вот эту. В чем может быть причина? |
|||
1
espanol
23.03.12
✎
10:21
|
Может кто все таки знает? Вот запрос:
КатегорияЦены = Параметры.ПараметрыАлгоритмов; Запрос = СоздатьОбъект("ODBCRecordSet"); ТекстЗапроса= " |SELECT | Номенклатура.ID as [Номенклатура $Справочник.Номенклатура] |, Цены.CODE as [Код $Строка] |, $Цены.Валюта as [Валюта $Справочник.Валюты] |, $Цены.КатегорияЦены as [КатегорияЦены $Справочник.КатегорииЦен] |, $ПоследнееЗначение.Цены.Цена(Цены.ID, :ВыбДата) as [Цена $Число] |FROM | $Справочник.Цены Цены |INNER JOIN | $Справочник.Номенклатура Номенклатура ON Цены.ParentExt = Номенклатура.ID |WHERE | $Цены.КатегорияЦены = :КатегорияЦены |ORDER BY | $Цены.КатегорияЦены |, Цены.CODE |"; Запрос.УстановитьТекстовыйПараметр("ВыбДата", ТекущаяДата()); Запрос.УстановитьТекстовыйПараметр("КатегорияЦены", КатегорияЦены); РезультатЗапроса = Запрос.ВыполнитьИнструкцию(ТекстЗапроса); |
|||
2
espanol
23.03.12
✎
10:55
|
Дело только в этой строке: $ПоследнееЗначение.Цены.Цена(Цены.ID, :ВыбДата)
Я так думаю это проблема с MSSQLSERVER2005... но как исправить чтобы работало, неужели никто не знает? |
|||
3
zva
23.03.12
✎
10:57
|
Скорей всего там isnull нужно добавить, на нужную дату цены не было
|
|||
4
МихаилМ
23.03.12
✎
11:01
|
что-то сомневаюсь,
1с8 поддерживает работу компоненты 1с++ 1с++ может выдать TSQL текст выложите его сюда. |
|||
5
espanol
23.03.12
✎
11:08
|
(4) Я в 1С 7.7 делаю:
SELECT Номенклатура.ID as [Номенклатура $Справочник.Номенклатура] , Цены.CODE as [Код $Строка] , Цены.sp4594 as [Валюта $Справочник.Валюты] , Цены.sp585 as [КатегорияЦены $Справочник.КатегорииЦен] , ( select top 1 cast(c588_vv.value as numeric(17, 2)) from _1sconst as c588_vv (nolock) where c588_vv.id = 588 and c588_vv.objid = Цены.ID and (c588_vv.date <= '20120323') order by c588_vv.date desc, c588_vv.time desc, c588_vv.docid desc, c588_vv.row_id desc ) as [Цена $Число] FROM sc590 Цены INNER JOIN sc270 Номенклатура ON Цены.ParentExt = Номенклатура.ID WHERE Цены.sp585 = ' 3 ' ORDER BY Цены.sp585 , Цены.CODE |
|||
6
espanol
23.03.12
✎
11:08
|
Видимо на этой херне падает: cast(c588_vv.value as numeric(17, 2))
|
|||
7
МихаилМ
23.03.12
✎
11:11
|
это понятно.
ну сосмотрите что вернет сей код без каста |
|||
8
espanol
23.03.12
✎
11:21
|
Ошибка исполнения обработчика: ПВД_ПередОбработкойПравила_ИзменениеЦен
- State 42000, native 170, message [Microsoft][ODBC SQL Server Driver][SQL Server]Line 9: Incorrect syntax near '('. Выгружено объектов: 0 Окончание выгрузки: 23.03.12 11:19:46 |SELECT | Номенклатура.ID as [Номенклатура $Справочник.Номенклатура] |, Цены.CODE as [Код $Строка] |, Цены.sp4594 as [Валюта $Справочник.Валюты] |, Цены.sp585 as [КатегорияЦены $Справочник.КатегорииЦен] |, ( |select top 1 //|cast(c588_vv.value as numeric(17, 2)) |c588_vv.value as numeric(17, 2) |from |_1sconst as c588_vv (nolock) |where |c588_vv.id = 588 and |c588_vv.objid = Цены.ID and |(c588_vv.date <= '20120323') |order by c588_vv.date desc, c588_vv.time desc, c588_vv.docid desc, c588_vv.row_id desc |) as [Цена $Число] |FROM | sc590 Цены |INNER JOIN | sc270 Номенклатура ON Цены.ParentExt = Номенклатура.ID |WHERE | Цены.sp585 = ' 3 ' |ORDER BY | Цены.sp585 |, Цены.CODE |"; |
|||
9
espanol
23.03.12
✎
11:22
|
чета не пойму откуда эта ошибка....
|
|||
10
espanol
23.03.12
✎
11:23
|
ай туплю, убрать as numeric(17, 2) забыл
|
|||
11
espanol
23.03.12
✎
11:24
|
вроде как выгружает, но выгружать будет часа 2
|
|||
12
zva
23.03.12
✎
11:25
|
а _1sconst - что за таблица?
|
|||
13
espanol
23.03.12
✎
11:28
|
(12) цены вроде как
|
|||
14
zva
23.03.12
✎
11:30
|
NULL там нигде нет?
|
|||
15
espanol
23.03.12
✎
11:33
|
(14) как это узнать?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |