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

Хранилище

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

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



> Запись графических файлов в базу MS SQL 2 страниц V  < 1 2          
logist Подменю пользователя
сообщение 14.07.16, 17:35
Сообщение #21

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

А что такое "un" ? Предварительно - несоответствие типов.


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

andrew76 Подменю пользователя
сообщение 14.07.16, 18:05
Сообщение #22

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Цитата(logist @ 14.07.16, 20:35) *
А что такое "un" ? Предварительно - несоответствие типов.



un- это уникальный идентификатор(GUID),определенный выше по тексту проги.

andrew76 Подменю пользователя
сообщение 15.07.16, 5:10
Сообщение #23

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Может попробовать залить фотки вот как-то так :

(но мне еще нужно заполнить 2 поля :MainID=GUID,и Active=1
как эти 2 поля добавить в нижеприведенный запрос затрудняюсь smile.gif

ТекстЗапросаADO ="INSERT INTO tbFoto (Foto) SELECT * FROM OPENROWSET(BULK N'C:\san\s.jpg', SINGLE_BLOB)";

logist Подменю пользователя
сообщение 15.07.16, 10:35
Сообщение #24

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

Цитата(andrew76 @ 14.07.16, 19:05) *
un- это уникальный идентификатор(GUID),определенный выше по тексту проги.

Проверьте что он совпадает по типу с базой. Например у вас это тип УникальныйИдентификатор а в sql это строка.

Еще попробуйте поле с данными изображения сделать последним.


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

andrew76 Подменю пользователя
сообщение 15.07.16, 10:52
Сообщение #25

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Сделал как Вы советовали :

Ошибка следующего содержания :

Ошибка при установке значения атрибута контекста (Value):
Произошла исключительная ситуация (Microsoft Cursor Engine):
Произошли ошибки во время выполнения многошаговой операции. Проверьте значения всех состояний

andrew76 Подменю пользователя
сообщение 21.07.16, 7:20
Сообщение #26

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Следующий фрагмент кода выполняется -при записи в базу ошибок не дает:
Но при запуске проги появляется сообщение "Invalid image type":

Connection = Новый COMОбъект("ADODB.Connection");
unn=ТекущаяДата();
Картинка = Новый Картинка("c:\san\s.jpg");
ИмяВрФайла = ПолучитьИмяВременногоФайла();
Картинка.Записать(ИмяВрФайла);
СодержимоеФайла = Base64Строка(Новый ДвоичныеДанные(ИмяВрФайла));
un=Новый УникальныйИдентификатор;
ТекстЗапросаADO   ="Insert into tbFoto (MainID,Active,EditDate,Foto) Values ('" + un + "',1,'"+unn+"','"+СодержимоеФайла+"')";
Connection.Execute(ТекстЗапросаADO,,128);



Следующий фрагмент кода не выполняется -при записи в базу -ошибка : не найден член группы
в строке с кодом RecordSet.Fields("MainID").Value = un;

Поток = Новый COMОбъект("ADODB.Stream");
Поток.Type = 1;
Поток.Open();
Поток.LoadFromFile("c:\san\s.jpg");
файл_=Поток.Read();
    
RecordSet = Новый COMОбъект("ADODB.RecordSet");
RecordSet.CursorLocation = 3;
RecordSet.LockType = 4;
RecordSet.Open("Select MainID,Active,EditDate,Foto from tbFoto", Connection);
RecordSet.AddNew();
un=Новый УникальныйИдентификатор;
RecordSet.Fields("MainID").Value = un;
RecordSet.Fields("Foto").Value = Поток.Read(-1);
RecordSet.Fields("Active").Value = 1;
RecordSet.Fields("EditDate").Value =ТекущаяДата();
RecordSet.Fields("Foto").Value = Поток.Read(-1);
RecordSet.Update();
Поток.Close();
RecordSet.Close();


Есть какая-нибудь команда в MS SQL которая может на время отключить связь текущей таблицы (куда идёт запись данных-
в моём случае это таблица TbFoto) с другими таблицами?
Может в этом проблема ?

Petre Подменю пользователя
сообщение 21.07.16, 8:40
Сообщение #27

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

andrew76 @ Сегодня, 8:20 *,
вот здесь:
un=Новый УникальныйИдентификатор;
RecordSet.Fields("MainID").Value = un;

вы пытаетесь присвоить объект 1с в совершенно другой среде - MS SQL. Так не пройдет. Либо присваивайте примитивные типы, либо объекты, созданные в MS SQL.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

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


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

 

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