Вообщем я сделал ка кто так. Картинки у меня лежат в отдельной папке. Пока что путь я указываю прямо в коде. В папке он ищет картинки по такой формуле. КодНоменклатуры_Счетчик. Если находит, то выполняет почти стандартный код. Если нет, то считает что картинок нет. Счетчик увеличивается на каждом шаге цыкла. Код оченб сырой, ибо отлаживать времени нет. Скину две процедуры которе я собственно менял. Будут вопросы - пишите. Процедуры из общего модуля Б_ПроцедурыИФункцииВыгрузкиДанныхНаСайт. Это
модуль для 1с комплесная автоматизация 5 версия.
ЗЫ Я получается твою строку просто заменил на какую то строку
[CODE]Процедура ВыгрузитьИзображенияНоменклатуры(ПараметрыОбмена, ИмяКаталога, Владелец, лМенеджерВременныхТаблиц, ВыборкаНоменклатуры, ОписаниеФайлов, ВыгруженоКартинок, МассивКартинок)
Запрос = Новый Запрос;
запрос.МенеджерВременныхТаблиц = лМенеджерВременныхТаблиц;
Запрос.Текст = "ВЫБРАТЬ *
|ИЗ
| ВремКартинки КАК ВремКартинки
| ГДЕ ВремКартинки.Номенклатура = &Номенклатура";
Запрос.УстановитьПараметр("Номенклатура", ВыборкаНоменклатуры.Номенклатура);
РезультатЗапроса = Запрос.Выполнить();
// отото ишем картинку в папке +++
МойКаталог = "\\aroma.local\dfs\Docs\Богатырев\ЖПГ\";
ИмяКартинки = ВыборкаНоменклатуры.Номенклатура.Код;
МойМассивКартинок = НайтиФайлы(МойКаталог, "*.*");
сч=1;
//НайтиФайлы("C:\Users\egor\Desktop\foto\", "*.*").Найти(СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_1");
НайденныеФайлы = НайтиФайлы("\\aroma.local\dfs\Docs\Богатырев\ЖПГ\", "*.*");
ТЗФайлов = новый ТаблицаЗначений;
ТЗФайлов.Колонки.Добавить("Имя");
ТЗФайлов.Колонки.Добавить("Расширение");
Для каждого стр из НайденныеФайлы цикл
НС = ТЗФайлов.Добавить();
нс.Имя = стр.ИмяБезРасширения;
нс.Расширение = стр.Расширение;
КонецЦикла;
//Для каждого Файл Из НайденныеФайлы цикл
//Если Найти(ТЗФайлов, СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_1") > 0 тогда
//Прервать;
//КонецЕсли;
//КонецЦикла;
Пока не ТЗФайлов.Найти(СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_"+сч)=Неопределено цикл
ПоискКартинки = ТЗФайлов.Найти(СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_"+сч);
ПутьНаименованиеКартинки = МойКаталог+СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_"+сч+ПоискКартинки.Расширение;
МоеИмяКартинки =СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_"+сч;
// отото-----------------------------
//Если НЕ РезультатЗапроса.Пустой() Тогда
ВыборкаКартинок = РезультатЗапроса.Выбрать();
тзнКартинок = Новый ТаблицаЗначений;
тзнКартинок.Колонки.Добавить("Картинка");
тзнКартинок.Колонки.Добавить("НадоВыгружать");
тзнКартинок.Колонки.Добавить("Основная");
ОсновнаяКартинка = ВыборкаНоменклатуры.ОсновноеИзображение;
Пока ВыборкаКартинок.Следующий() Цикл
ТекКартинка = ВыборкаКартинок.ХранилищеСсылка;
МассивКартинок.Добавить(ТекКартинка);
НовСтр = тзнКартинок.Добавить();
НовСтр.Картинка = ТекКартинка;
НовСтр.НадоВыгружать = ВыборкаКартинок.НадоВыгружать;
Если ТекКартинка = ОсновнаяКартинка тогда
НовСтр.Основная = Истина;
иначе
НовСтр.Основная = Ложь;
КонецЕсли;
КонецЦикла;
тзнКартинок.Сортировать("Основная Убыв");
//Для Каждого КартинкаДляВыгрузки Из тзнКартинок Цикл
АдресКартинки = ВыгрузитьКартинку(ПараметрыОбмена, ИмяКаталога, ВыборкаНоменклатуры.Номенклатура,ПутьНаименованиеКартинки,МоеИмяКартинки );//КартинкаДляВыгрузки.Картинка, КартинкаДляВыгрузки.НадоВыгружать);
Если ЗначениеЗаполнено(АдресКартинки) Тогда
ОписаниеКартинки = СокрЛП(ВыборкаНоменклатуры.Номенклатура.Код)+"_"+сч;//СокрЛП(КартинкаДляВыгрузки.Картинка.Наименование);
Владелец.Картинка.Добавить(АдресКартинки);
//Если НЕ ПустаяСтрока(ОписаниеКартинки) И НЕ КартинкаДляВыгрузки.Основная Тогда
ОписаниеФайлов.Вставить(АдресКартинки, ОписаниеКартинки);
//КонецЕсли;
ВыгруженоКартинок = ВыгруженоКартинок + 1;
КонецЕсли;
//КонецЦикла;
//КонецЕсли;
сч= сч+1;
КонецЦикла;
КонецПроцедуры
Процедура ВыгрузитьФайлыНоменклатуры(ПараметрыОбмена, ИмяКаталога, Владелец, лМенеджерВременныхТаблиц, ВыборкаНоменклатуры, Файлы, ОписаниеФайлов, ВыгруженоФайлов, МассивФайлов)
Запрос = Новый Запрос;
запрос.МенеджерВременныхТаблиц = лМенеджерВременныхТаблиц;
Запрос.Текст = "ВЫБРАТЬ *
|ИЗ
| ВремФайлы КАК ВремФайлы
| ГДЕ ВремФайлы.Номенклатура = &Номенклатура";
Запрос.УстановитьПараметр("Номенклатура", ВыборкаНоменклатуры.Номенклатура);
РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда
ВыборкаФайлов = РезультатЗапроса.Выбрать();
тзнФайлов = Новый ТаблицаЗначений;
тзнФайлов.Колонки.Добавить("Файл");
тзнФайлов.Колонки.Добавить("НадоВыгружать");
Пока ВыборкаФайлов.Следующий() Цикл
ТекФайл = ВыборкаФайлов.ХранилищеСсылка;
МассивФайлов.Добавить(ТекФайл);
НовСтр = тзнФайлов.Добавить();
НовСтр.Файл = ТекФайл;
НовСтр.НадоВыгружать = ВыборкаФайлов.НадоВыгружать;
КонецЦикла;
Для Каждого ФайлДляВыгрузки Из тзнФайлов Цикл
АдресФайла = ВыгрузитьФайл(ПараметрыОбмена, ИмяКаталога, ВыборкаНоменклатуры.Номенклатура, ФайлДляВыгрузки.Файл, ФайлДляВыгрузки.НадоВыгружать);
Если ЗначениеЗаполнено(АдресФайла) Тогда
ОписаниеФайла = СокрЛП(ФайлДляВыгрузки.Файл.Наименование);
Файлы.Добавить(АдресФайла);
Если НЕ ПустаяСтрока(ОписаниеФайла) Тогда
ОписаниеФайлов.Вставить(АдресФайла, ОписаниеФайла);
КонецЕсли;
ВыгруженоФайлов = ВыгруженоФайлов + 1;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Функция ВыгрузитьКартинку(ПараметрыОбмена, ИмяКаталога, Номенклатура, ПутьНаименованиеКартинки,МоеИмяКартинки)//ХранилищеСсылка, НадоВыгружать)
Результат = НеОпределено;
//Если НЕ ЗначениеЗаполнено(ХранилищеСсылка) Тогда
// Возврат Результат;
//КонецЕсли;
Картинка = новый Картинка(ПутьНаименованиеКартинки);//ХранилищеСсылка.Хранилище.Получить();
Если ТипЗнч(Картинка) <> Тип("Картинка") Тогда
Возврат Результат;
КонецЕсли;
ФорматКартинкиРазрешен = Истина;
РасширениеФайлаКартинки = "";
Попытка
ФорматКартинкиОбъекта = Картинка.Формат();
Исключение
ФорматКартинкиОбъекта = ФорматКартинки.НеизвестныйФормат;
КонецПопытки;
Если ФорматКартинкиОбъекта = ФорматКартинки.НеизвестныйФормат Тогда
ФорматКартинкиРазрешен = Ложь;
Иначе
Если НЕ (ФорматКартинкиОбъекта = ФорматКартинки.GIF
ИЛИ ФорматКартинкиОбъекта = ФорматКартинки.JPEG
ИЛИ ФорматКартинкиОбъекта = ФорматКартинки.PNG) Тогда
Попытка
ФорматКартинкиОбъекта = Картинка.Преобразовать(ФорматКартинки.JPEG);
Исключение
Б_ОбщиеПроцедурыИФункцииОбменаССайтом.СообщитьПодробно("Не удалось преобразовать формат картинки. Номенклатура: " + Номенклатура + ". Преобразование из " + Строка(ФорматКартинкиОбъекта) + " в JPEG", ПараметрыОбмена);
Возврат Результат;
КонецПопытки;
КонецЕсли;
РасширениеФайлаКартинки = Строка(ФорматКартинкиОбъекта);
КонецЕсли;
Если НЕ ФорматКартинкиРазрешен Тогда
Б_ОбщиеПроцедурыИФункцииОбменаССайтом.СообщитьПодробно("Формат основного изображения неизвестен или запрещен. Номенклатура: " + Номенклатура, ПараметрыОбмена);
Возврат Результат;
КонецЕсли;
ИмяПоНоменклатуре = Строка(Номенклатура.УникальныйИдентификатор());
ИмяПоХранилищу = ПутьНаименованиеКартинки;//Строка(ХранилищеСсылка.УникальныйИдентификатор()); //отото
ИмяФайлаКартинки = ИмяПоНоменклатуре+"_"+МоеИмяКартинки + "." + НРег(РасширениеФайлаКартинки);//ИмяПоНоменклатуре + "_" + ИмяПоХранилищу + "." + НРег(РасширениеФайлаКартинки);
КаталогПоИмени = "d3";//Лев(ИмяПоНоменклатуре, 2);
КаталогКартинки = Б_ОбщиеПроцедурыИФункцииОбменаССайтом.ПолучитьПутьДляПлатформы(ПараметрыОбмена.ПлатформаWindows, (ИмяКаталога + "\" + ПараметрыОбмена.ПодкаталогФайлов + "\" + КаталогПоИмени));
НадоВыгружать = истина;
Если НадоВыгружать тогда
СоздатьКаталог(КаталогКартинки);
ПолноеИмяФайлаКартинки = Б_ОбщиеПроцедурыИФункцииОбменаССайтом.ПолучитьПутьДляПлатформы(ПараметрыОбмена.ПлатформаWindows, (КаталогКартинки + "\" + ИмяФайлаКартинки));
Попытка
Картинка.Записать(ПолноеИмяФайлаКартинки);
Исключение
Б_ОбщиеПроцедурыИФункцииОбменаССайтом.СообщитьПодробно("Не удалось записать файл картинки на диск. Номенклатура: " + Номенклатура, ПараметрыОбмена);
Возврат Результат;
КонецПопытки;
КонецЕсли;
Результат = ПараметрыОбмена.ПодкаталогФайлов + "/" + КаталогПоИмени + "/" + ИмяФайлаКартинки;
Возврат Результат;
[/CODE]