проблема с датой в хранимой процедуре

Yury609
Дата: 06.06.2011 15:53:59
Всем привет!
Недавно мы перешли на новый 2008 R2 SQL
старый JOB раньше работал так:
execute Fill_FIFO_Item_Inventory '30 apr 2011', 'исх 310511'

теперь - ругается на преобразование varchar в datetime

если исправить '30 apr 2011' на '30 апр 2011', то все снова прекрасно работает
Может кто подсказать, что можно сделать, чтобы английскую дату не менять на кирилицу?
Раньше язык установки был английский, теперь русский.
Спасибо!
Konst_One
Дата: 06.06.2011 15:55:08
а зачем же вы так извращаетесь то? почему параметр не datetime у процедуры?
Yury609
Дата: 06.06.2011 16:00:41
Konst_One
а зачем же вы так извращаетесь то? почему параметр не datetime у процедуры?


параметр - datetime

вот код процедуры:
ALTER procedure [dbo].[Fill_FIFO_Item_Inventory]
@toDate datetime,
@OperationType varchar(30)
as
insert into [dbo].[FIFO Item Inventory]
(
[товар но],
[код варианта],
[код склада],
[общая бизнес группа],
[себестоимость],
[кол-во],
[дата],
[год],
[месяц],
[неделя],
[квартал],
[тип операции],
[источник учетная группа],
[положительно],
[код источника],
[юр лицо]
)
execute InvByDate @toDate, @OperationType

ALTER  procedure [dbo].[InvByDate]
@toDate datetime,
@OperationType varchar(30)
as 
select	[f2] as 'товар но',
	[f5402] as 'код варианта',
	[f8] as 'код склада',
	'' as 'общая бизнес группа',--[f57] as 'общая бизнес группа',
	sum([s43]) as 'сумма',
	sum([s13]) as 'кол-во',
	@toDate as 'дата',
	year(@toDate) as 'год',
	month(@toDate) as 'месяц',
	(select w.[Week] from [dbo].[DateWeek] w where w.[Date]=@toDate) as 'неделя',
	datepart(quarter, @toDate) as 'квартал',
	@OperationType as 'тип операции',
	'' as 'источник учетная группа',
	'' as 'положительно',
	'' as 'код источника',
	'' as 'юр лицо'
	from [dbo].[MR$53002$2]
	where (bucket=12)
		and [f2] <> ''
		and [f3] <= @toDate
	group by [f2], [f5402], [f8]--, [f57]--, [f4]
	having sum([s43]) <> 0
Konst_One
Дата: 06.06.2011 16:01:22
ну так и передавайте туда дату , а не вашу строку
Yury609
Дата: 06.06.2011 16:04:25
Konst_One
ну так и передавайте туда дату , а не вашу строку


Konst_One, теперь так и буду делать.
это единственное решение?
или есть ещё какие?
Спасибо
Glory
Дата: 06.06.2011 16:06:12
Konst_One
Дата: 06.06.2011 16:06:24
это единственное правильное решение
Yury609
Дата: 06.06.2011 16:11:28
СПАСИБО