Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема не знаю на какой версии стало происходить, но периодично всплывает ерунда к (число прочтений - 3691 )
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
не знаю на какой версии стало происходить, но периодично всплывает ерунда к
27. Января 2012 :: 04:13
Печать  
не знаю на какой версии стало происходить, но периодично всплывает ерунда какая-то Печаль из-за чего запрос падает.
"State 22007, native 241, message [Microsoft][ODBC SQL Server Driver][SQL Server]Syntax error converting datetime from character string."

вот запрос из 1с:
перед тем как послать его естественно сделана запись документа.
Код
Выбрать все
		ТекстЗапроса = "-- qryMaker:Долги
			|SELECT Остатки.Договор [Договор $Справочник.Договора]
			|	, Остатки.Счет [Счет $Справочник.ПланСчетов]
			|	, Остатки.Док [Док $Документ]
			|	, Остатки.СуммаОстаток СуммаРуб
			|	, Остатки.СуммаВОстаток СуммаВал
			|	, Остатки.ХвостОстаток Хвост
			|	, Остатки.РазницаОстаток Разница
			|FROM $РегистрОстатки."+рег+"(:наДату,,
			|		(Фирма = :Фирма)"+усл+"
			|		AND (Контрагент = :Контр),
			|		(Договор, Счет, Док),) AS Остатки
			|ORDER BY Остатки.Док
			|";
	рс.УстановитьТекстовыйПараметр("Фирма", Фирма);
	рс.УстановитьТекстовыйПараметр("Контр", Контрагент);
	рс.УстановитьТекстовыйПараметр("Сотр" , Сотрудник);
	рс.УстановитьТекстовыйПараметр("рСчет", Счет);
	рс.УстановитьТекстовыйПараметр("наДату", СформироватьПозициюДокумента(ТекущийДокумент(),-1));
	тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);

 



вот развернутый запрос, где видно что год почему то не выставляется в виртуальной таблице, причем происходит не всегда это Печаль

Код
Выбрать все
-- qryMaker:Долги
SELECT Остатки.Договор [Договор $Справочник.Договора]
	, Остатки.Счет [Счет $Справочник.ПланСчетов]
	, Остатки.Док [Док $Документ]
	, Остатки.СуммаОстаток СуммаРуб
	, Остатки.СуммаВОстаток СуммаВал
	, Остатки.ХвостОстаток Хвост
	, Остатки.РазницаОстаток Разница
FROM (
select
rr523_vt.sp4373 as Договор,
rr523_vt.sp3485 as Счет,
rr523_vt.sp527 as Док,
sum(rr523_vt.sp529) as СуммаОстаток,
sum(rr523_vt.sp1290) as СуммаВОстаток,
sum(rr523_vt.sp3486) as ХвостОстаток,
sum(rr523_vt.sp3487) as РазницаОстаток
from (
select
rg523_vt.sp4373,
rg523_vt.sp3485,
rg523_vt.sp527,
rg523_vt.sp529,
rg523_vt.sp1290,
rg523_vt.sp3486,
rg523_vt.sp3487
from rg523 as rg523_vt (nolock)
where rg523_vt.period={d '0000-11-01'}
and ((rg523_vt.sp524 = '     1   ') AND (rg523_vt.sp525 = '   3E3   '))
union all
select
ra523_vt.sp4373,
ra523_vt.sp3485,
ra523_vt.sp527,case ra523_vt.debkred when 1 then ra523_vt.sp529 else -ra523_vt.sp529 end,
case ra523_vt.debkred when 1 then ra523_vt.sp1290 else -ra523_vt.sp1290 end,
case ra523_vt.debkred when 1 then ra523_vt.sp3486 else -ra523_vt.sp3486 end,
case ra523_vt.debkred when 1 then ra523_vt.sp3487 else -ra523_vt.sp3487 end
from ra523 as ra523_vt (nolock)
where ra523_vt.date_time_iddoc >= '#20111231 863990000   3324826ЯЯЯ' and ra523_vt.date_time_iddoc < '00001130Z'
and ((ra523_vt.sp524 = '     1   ') 		AND (ra523_vt.sp525 = '   3E3   '))) as rr523_vt
group by
rr523_vt.sp4373,
rr523_vt.sp3485,
rr523_vt.sp527
having
sum(rr523_vt.sp529) <> 0 or
sum(rr523_vt.sp1290) <> 0 or
sum(rr523_vt.sp3486) <> 0 or
sum(rr523_vt.sp3487) <> 0) as Остатки
ORDER BY Остатки.Док
 



кто нить сталкивался?
p.s. параметр :наДату с тильдой (~) был до того как сюда написал, толку нет.
« Последняя редакция: 27. Января 2012 :: 07:47 - trad »  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #1 - 27. Января 2012 :: 05:26
Печать  
Это смущает: '#20111231 863990000   3324826ЯЯЯ'
попробуй завернуть этот код в попытка-исключение, типа:
Код
Выбрать все
Попытка
  Позиция = СформироватьПозициюДокумента(ТекущийДокумент(),-1);
...
Исключение
  Сообщить("Проблема в документе:"+ТекущийДокумент()+" Позиция:"+Позиция");
  ВызватьИсключение;
КонецПопытки 


  
Наверх
ICQ  
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #2 - 27. Января 2012 :: 05:42
Печать  
это как раз не смущает если в QA исправить вверху 0000-12-31 на 2011-12-31 отлично все пашет.

также без попытке ставил там точки останова туже позицию и выдает, что и в запросе.
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3046
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #3 - 27. Января 2012 :: 06:36
Печать  
чтобы ВТ воспринимала строку с позицией документа как позицию, параметр должен быть применен с первым модификатором
:наДату~
  

1&&2&&3
Наверх
 
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #4 - 27. Января 2012 :: 06:43
Печать  
хм, качаю из шапки 3.2.3.19, в инфо показывает 3.2.3.1 Печаль
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #5 - 27. Января 2012 :: 06:45
Печать  
trad писал(а) 27. Января 2012 :: 06:36:
чтобы ВТ воспринимала строку с позицией документа как позицию, параметр должен быть применен с первым модификатором
:наДату~

я ниже писал, что с модификатором тоже падает так периодично, изначально с модификатором и стояло, убрал попробовать. Просто у юзеров падает иногда и я вижу это, не всегда но случается и от чего не понятно.
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Re: icpp 3.2.3.x
Ответ #6 - 27. Января 2012 :: 07:09
Печать  
pavlo писал(а) 27. Января 2012 :: 06:43:
хм, качаю из шапки 3.2.3.19, в инфо показывает 3.2.3.1 Печаль


Уважаемый!
Вы ничего не напутали?
у меня скачена и везде написано 19.
ток походу не из шапки качать надо а ближайшей от этих веток.
  
Наверх
 
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #7 - 27. Января 2012 :: 07:19
Печать  
я качал из шапки этой темы и там есть 19 версия, но скачанная говорит другое Улыбка
попробую сейчас найти в теме.... угу в теме есть нормальная версия Подмигивание сенкс
а вот с вопросом по запросу пока не понятно....
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: icpp 3.2.3.x
Ответ #8 - 27. Января 2012 :: 12:02
Печать  
pavlo писал(а) 27. Января 2012 :: 05:42:
это как раз не смущает если в QA исправить вверху 0000-12-31 на 2011-12-31 отлично все пашет.

также без попытке ставил там точки останова туже позицию и выдает, что и в запросе.

Кому что... Просто сравниваться должно по дате, а если первым символом стоит "#" то и сравнение получится некорректным. Это первое. Второе - из-за того, что передал непонятно что в ВТ, она и разворачивает эту дату вторым параметром во всякую ерунду. Т.е. вместо получения нормального "20111231" и преобразования его к "20111231Z у тебя на вход идет "#20111231" что превращается в "00001130Z", т.е. #201 - преобразуется в год 0000, 11 - остается и 30 - это последний день этого месяца.
Поэтому:
1. Используй рекомендацию Уважаемого trad-а и используй модификатор "~"
2. Если будет падение, то приведи развернутый запрос с ошибкой (как в 1), но только с модифицированным параметром
  
Наверх
ICQ  
IP записан
 
pavlo
1c++ donor
1c++ power user
Отсутствует



Сообщений: 712
Местоположение: г. Новосибирск
Зарегистрирован: 10. Ноября 2006
Пол: Мужской
Re: не знаю на какой версии стало происходить, но периодично всплывает ерунда к
Ответ #9 - 30. Января 2012 :: 02:15
Печать  
Я писал ранее, что с тильдой стояло на рабочей базе и периодично падало, из-за чего начал в тестовой разбираться и временно убрал тильду Подмигивание на боевой как была так и есть, но периодично падает, но не всегда Печаль
Ладно буду ловить...
  

1с++     3.2.4.1
Formex  2.0.5.99b
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать