#0
by Renat11111
Добрый день. Возник такой вопрос. Надо программно из 1с подключиться к базе данных СКЛ2005, запустить хранимую процедуру, которая добавит что-то в таблицу. Допустим есть база "Test", в ней есть таблица Table_1 с одной колонкой Col1. Есть хранимая процедура, например InsertData, которая добавляет строку в таблицу. Есть следующий код: Проблема состоит в следующем: процедура запускается, но добавляет пустую строчку в таблицу. Я так понимаю неправильно заполняю или передаю параметр. Подскажите плиз что не так делаю. П.С. Сама процедура рабочая, так как если запускать ее в менеджмент студио, нормально добавляет значение в таблицу
#2
by Renat11111
InsertData это хранимая процедура, в которой прописан след. код: INSERT INTO Table_2(Col1) VALUES (@param1) Пример дан упрощенный. Но почему-то в таком варианте записывает пустые строки в таблицу. Хотя при вызове из студио нормально добавляет значения
#4
by Renat11111
Да нету никаких ошибок. Коннект с базой идет, процедура вызывается, но вместо переданного значения добавляет 0!
#6
by Renat11111
Все соответствует. Тип параметра (Type) 3 - это integer Взято из MSDN: adEmpty - значение не задано. adSmallInt - двухбайтное целое со знаком. adInteger - четырёхбайтное целое со знаком. adSingle - число с плавающей запятой с одинарной точностью. adDouble - число с плавающей запятой с двойной точностью. adCurrency - денежная сумма с фиксированной точкой с четырьмя цифрами справа от десятичной точки (восьмибайтное целое число со знаком). ... ...
#8
by shuhard
+ может в лоб сделать, а'ля MSDN Set objParm1 = objCmd.CreateParameter("CustId", adChar, _
#10
by Renat11111
mselling_ru не мешай человеку через ж..опу делать. объясни плиз что тут через ж..опу???? поставь для проверки Не помогает...
#13
by Renat11111
у кого ж..опа у тебя или у меня? что за вопросы? вполне нормальные вопросы.. Обычным текстом запроса параметры в хранимую процедуру ты не передашь!!! ты или давай нормальные ответы или вообще ничего не пиши!
#15
by shuhard
[Обычным текстом запроса параметры в хранимую процедуру ты не передашь] давно было, вроде катит: select InsertData должен работать, проверь в QA
#17
by Renat11111
Проблема решена. Всем отозвавшимся спасибо. Если кому интересно, проблема была в следующем: при создании хранимой процедуры в параметры были записаны значения по умолчанию. тоесть: Create Procedure InsertData(@id numeric = 0 out, @param1 varchar = '', @param2 numeric = 0) и почему-то они не заменялись передаваемыми параметрами. Убрал значения по умолчанию, все заработало. Правда пока не понял почему. Теперь еще один вопрос. Первый параметр выходной. Как мне получить его значение после выполнения процедуры. В самой процедуре он записывается. Что-то типа след. кода: INSERT INTO Table_1(Col1, Col2) VALUES (@param1, @param2) Когда пытаюсь получить его в выборке: выдает след. ошибку: Ошибка при вызове метода контекста (EOF): Произошла исключительная ситуация (ADODB.Recordset): Операция не допускается, если объект закрыт.
#18
by mselling_ru
"Обычным текстом запроса параметры в хранимую процедуру ты не передашь!!! " - c какого перепугу? у меня на этом весь обмен построен, а я не знал :)
#19
by Renat11111
Ну напиши как мне в моем конкретном случае вызвать мою процедуру с передачей параметров. Дай текст запроса!
#21
by Renat11111
ссылку дай. буду благодарен. только думаю что в моем конкретном случае это не подойдет
#26
by Renat11111
Ты знаешь, я вот тут сижу и думаю, зачем это тупые разработчики придумали передачу параметров, их типов, размера и т.д. Нефиг было им чем заняться?? Тут нашелся умный mselling_ru и сказал: "Ребята, так вы ж все через ж..пу сделали. Так неправильно. У меня есть другой метод. Надо прямо в тексте запроса на скл параметры в процедуры передавать!!!". Может ты им предложишь свою рационализаторскую идею???? Они ж фигню сделали, а ты у нас умный очень, решил что так через ж..пу!!!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v8 строка подключения V8.Connect
- Волшебнику и всем кто поможет по теме "v8 УРБД на v8 за четыре шага"
- v8: при v8 = Новый COMОбъект("V8.Application") дает ошибку ..
- v8: Не могу подключиться из V8 к V8
- v8: есть ли аналоги openconf для 1с v8
- v8: Как удалить 1С v8 ?
- v8: Код возврата, при запуске 1С8 в пакетном режиме запуска конфигуратора
- Где в УПП процедура первого запуска и процедура обновления ИБ?
В этой группе 1С
- Как настроить сервер терминалов
- Динамические меню с помощью RWidjets
- 1с 77, вызов процедуры из глобального модуля через оле
- Как включить множественное выделение в форме списка справочника?
- Неправильное имя кодировки
- v8: Обработка расшифровки в поле табличного документа
- УПП Контактная информация контрагентов
- оповещение с сервера на клиент
- v7: Реализовано ли в ЗУП или ЗИК ограничение оплаты больничного за счет ФСС в 60 дней?
- v7: Как правильно выставить счет фактуру для иностранной организации
- v8: Как получить макет внешнего отчета?
- ЗУП, минусовое удержание
- COM соединение из Web сервиса!
- ЗУП Форма Т 60
- Доступность элементов формы определенным пользователям
- ГТД в счет-фактуре 1с8.1 УТ 10.3
- УПП. Формирование записей книги покупок
- Как в управляемой форме разместить подчиненный справочник? Управляемое 8.2
- Запрос по документам.
- Кодирование штирхкода EAN 13 для 1С Предприятия 7.7 для шрифта CODE EAN-13