Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Помогите пожалуйста разобраться с хранимой процедурой / 4 сообщений из 4, страница 1 из 1
16.11.2006, 07:47
    #34132012
r90000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста разобраться с хранимой процедурой
Добрый день!

Я сделал такую хранимую процедуру, но при вызове ее результатов выдается ошибка, что здесь может быть неправильно? Ошибка 'Value out of bounds.Implicit from datatype Varchar to int is not
allowed.Use the Convert function to run this query'
CREATE PROCEDURE dbo.TESTACCOUNTCOMISSIONSIMPLEpr
AS

BEGIN


declare @KB money
declare @ID money
declare @KBOut varchar(20)
declare @IDOut varchar(20)
declare @K1 int
declare @K2 numeric(10,2)
declare @K3 int
declare @K4 int,
@K5 money,
@K6 double precision,
@K7 double precision
select @K1=Invest,@K2=Activ,@K3=Sum_amount,@K4=Pens_activ from Premium
select @K5=CreditRest from RecipientSubAccounts a, PensionContracts b where a.RecipientAccount=b.RecipientAccount and
b.ContractNumber=18551

select @K6=0
select @K7=0

select @K6=((@K1*100/(100-@K1))/100)
select @K7=((@K2/100)*(@K4/@K3))

select @ID=convert(money,599836,96 * @K6)

select @KB=convert(money,@K5 * @K7)

select @KBOut=convert(varchar(20),@KB),@IDOut=convert(varchar(20),@ID)

END
...
Рейтинг: 0 / 0
16.11.2006, 10:35
    #34132331
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста разобраться с хранимой процедурой
Вопрос, мало относящиеся к делу :
1) Почему ты так называешь переменные ? К1, K2 ... - на большее фантазии не хватает ?

А так проблема очевидна - где-то есть колонка или переменная типа varchar и ты без преобразования ее пытаешься присвоить колонке или переменной типа int. Где - непонятно, поскольку DDL-я нет, ну значит ищи сам...
...
Рейтинг: 0 / 0
16.11.2006, 10:45
    #34132353
komrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста разобраться с хранимой процедурой
Ну если исходить из той инфы, что дали, то вижу два варианта для проверки:
1)
Код: plaintext
1.
2.
3.
4.
declare @K1 int
declare @K3 int
declare @K4 int
[skipped]
select @K1=Invest,@K2=Activ,@K3=Sum_amount,@K4=Pens_activ from Premium
возможно поля Invest, Sum_amount или Pens_activ имеют тип данных varchar

2)
Код: plaintext
1.
select @K5=CreditRest from RecipientSubAccounts a, PensionContracts b where a.RecipientAccount=b.RecipientAccount and 
b.ContractNumber= 18551 
возможно поле PensionContracts.ContractNumber имеет тип varchar
...
Рейтинг: 0 / 0
16.11.2006, 12:38
    #34132904
r90000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста разобраться с хранимой процедурой
Да спасибо я нашел это ContractNumber='18551' должен быть таким
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Помогите пожалуйста разобраться с хранимой процедурой / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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