Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Выполнение хранимой процедуры          
Yoja Подменю пользователя
сообщение 28.07.14, 15:51
Сообщение #1

Говорящий
***
Группа: Пользователи
Сообщений: 90
Спасибо сказали: 4 раз
Рейтинг: 0

Добрый день!
Имеется 1С 8.2 ЗУП
Написал внешнюю обработку, которая должна выгружать новых сотрудников в таблицу SQL Server 2000
На сервере, создал хранимую процедуру, ее проверил - работает
Base1C_TO_SQL - название хранимой процедуры.
В процедуру должны передаваться параметры, но если их нет, то есть значение по умолчанию.

Код выполняется, но нового сотрудника не добавляет, ошибок не выдает.

помогите, уже целый день на это угробил

Вот код подключения:
    
       mServerAddress = "192.168.1.1";
       mDataBase = "NAuser";
       mUsername = "root";
       mPassword = "root";
       mPort       = "3603";
  
    СтрокаПодключения =
    "Provider=SQLOLEDB.1;
    |User ID="+mUsername+";
    |Pwd="+mPassword+";
    |Data Source="+mServerAddress+";
    |Initial Catalog ="+ mDataBase+"";
    
    Connection  = Новый COMОбъект("ADODB.Connection");
    Command  = Новый COMОбъект("ADODB.Command");
    RecordSet  = Новый COMОбъект("ADODB.RecordSet");
    
     Попытка
     Connection.Open(СокрЛП(СтрокаПодключения));
     Command.ActiveConnection   = Connection;
     Command.CommandText = "USE NAuser; EXEC dbo.Base1C_TO_SQL;";
     RecordSet = Command.Execute();
    Исключение
     Сообщить(ОписаниеОшибки());
    КонецПопытки;
    
    Command = Неопределено;
    Connection = Неопределено;
    RecordSet = Неопределено;




Спасибо за конструктивные ответы

logist Подменю пользователя
сообщение 28.07.14, 15:56
Сообщение #2

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Yoja @ 28.07.14, 15:51) *
Код выполняется, но нового сотрудника не добавляет

А где в коде добавление сотрудника?


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Yoja Подменю пользователя
сообщение 28.07.14, 16:02
Сообщение #3

Говорящий
***
Группа: Пользователи
Сообщений: 90
Спасибо сказали: 4 раз
Рейтинг: 0

Цитата(logist @ 28.07.14, 16:56) *
А где в коде добавление сотрудника?


В данном случае, сама хранимая процедура выполняется, и при этом в ней забиты параметры по умолчанию (для тестов), если я щас не передаю никаких параметров, то она просто добавляет мне одного и того же тестового сотрудника.
----

Выполняя код из БД, все срабатывает
USE NAuser; EXEC dbo.Base1C_TO_SQL;

Yoja Подменю пользователя
сообщение 05.08.14, 12:53
Сообщение #4

Говорящий
***
Группа: Пользователи
Сообщений: 90
Спасибо сказали: 4 раз
Рейтинг: 0

Проблема решена.
Решение:
В хранимой процедуре передавались параметры типа DATETIME
Microsoft SQL Server Management Studio 2010
пропустил переменную со значение типа '01.01.1980'
а Microsoft SQL Server Management Studio 2012 сообщил что нужно сделать CONVERT(datetime, '01.01.1980')
и + в 1С при передачи параметра типа дата преобразовал в формат в соответствии с форматом в БД SQL yyyy.MM.dd

вот и все

и вот еще, код, с передаваемыми параметрами в хранимую процедуру изменился так
Command.CommandText = "USE [NAuser]; EXEC [dbo].[Base1C_TO_SQL] @cN='"+cN+"',@cD ='"+cD+"';";   
         Command.CommandType = 8;


Command.CommandType

4 - означает хранимую процедуру.
8 - (значение по умолчанию) – сервер баз данных определяет тип команды самостоятельно.

Спасибо сказали: Vofka,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 26.04.24, 23:44
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!