Добрый вечер, форумчани, есть проблема не могу выгрузить из базы данных супермага данные документов в буферную базу выдает такую ошибку
Сообщение 50000, уровень 16, состояние 1, процедура insRABSODDNovus, строка 44
Error converting data type nvarchar to int.
Запрос который запускаю
--Выгрузка из Киева--
declare @datu datetime;
set @datu = GETDATE();
execute dbo.insRABFOLDNovus '2020-01-23', @datu; --заголовки документов
execute dbo.insRABSODDNovus '2020-01-23', @datu; -- содержимое документов
execute dbo.insTovarNovus '2020-01-23', @datu; --Справочник Товаров
execute dbo.insKlientNovus
Данный запрос запускает скрипт
Скрипт который отрабатывает
USE [buffer]
GO
/****** Object: StoredProcedure [dbo].[insRABSODDNovus] Script Date: 03.02.2020 9:52:07 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[insRABSODDNovus]
@DateLoad date = null,
@dateunload datetime = null
as
DECLARE @vdateload nvarchar(20);
DECLARE @sqltext nvarchar(2000);
DECLARE @vdateunload nvarchar(20);
SET NOCOUNT ON;
BEGIN TRY
-- Если не задали дату значит дата текущая
set @DateLoad=IsNull(@DateLoad,CONVERT(DATE, GETDATE()));
set @dateunload=IsNull(@dateunload,GETDATE());
-- Устанавливаем дату загрузки
set @vdateload = convert(nvarchar(20),@DateLoad,104);
-- Устанавливаем дату выгрузки
set @vdateunload = convert(nvarchar(20),@dateunload,120);
--Формируем текст запроса
set @sqltext= 'select KOD,TYPD,KODTOV,CU,KOLPR,
KOLRS,CO,NDS,AKZ,TYPOPL,DATE_UNLOAD
from openquery(OrclDB,
''select * from TABLE
(SUPERMAG.NOVUS_KVINT.fGetRabSod('''''+@vdateload+''''''+',
'+''''''+@vdateunload + '''''))'')';
-- Вставка данных строк документов
insert into buffer.dbo.RABSOD(KOD,TYPD,KODTOV,
CU,KOLPR,KOLRS,CO,NDS,AKZ,TypOpl,DTML)
execute sp_executesql @sqltext;
-- Вставка данных строк документов в rabsod_backup_new
insert into buffer.dbo.RABSOD_backup_new(KOD,TYPD,KODTOV,
CU,KOLPR,KOLRS,CO,NDS,AKZ,TypOpl,DTML)
execute sp_executesql @sqltext;
END TRY
BEGIN CATCH
DECLARE @ErrorMessage nvarchar(4000), @ErrorSeverity int;
SELECT @ErrorMessage = ERROR_MESSAGE(),@ErrorSeverity = ERROR_SEVERITY();
RAISERROR(@ErrorMessage, @ErrorSeverity, 1);
END CATCH;
Что означает данная ошибка указанная мною выше в тексте, это что не может преобразовать строку в число, как можно узнать где именно произошел сбой.
Так как я не могу загрузить в другую систему около 600 документов.