Разделы вопросов - ответов |
|
Вопросы - ответы по 1С |
В этом разделе будут подобраны короткие вопросы с вариантами их решения. По мере наполнения разделами вопросами последние будут сгруппированы по тематическим разделам, а что-то будет оставлено в общем разделе. В
гостевой книге можете оставлять свои вопросы,
по возможности на них будут даны ответы и размещены здесь.
Вопрос. Как открыть изображение во внешнем приложении из картинки, размещенной на форме?
Ответ. Для этого можно воспользоваться процедурой глобального контекста ЗапуститьПриложение(). Пусть для примера на форме есть картинка с именем ГрафическийОбраз (тип Картинка).
Тогда обработчик события Нажатие будет выглядеть следующим образом:
Процедура ГрафическийОбразНажатие(Элемент)
прИзображение = ГрафическийОбраз.Получить();
прФильтр = прИзображение.ФильтрИменФайлов();
прРасширение = РаботаСФайлами.ВыделитьРасширениеИзИмениФайла(прФильтр);
Попытка
прИзображение.Записать(КаталогВременныхФайлов() + "tmp_pict" + прРасширение);
ЗапуститьПриложение(КаталогВременныхФайлов() + "tmp_pict" + прРасширение);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
При нажатии на картинку на форме будет определено, какое приложение в
операционной системе запускается для открытия файлов изображений, и это
приложение будет запущено. Следует заметить, что здесь использована
экспортная функция ВыделитьРасширениеИзИмениФайла(СтрокаОбработки),
расположенная в общем модуле РаботаСФайлами.
Вопрос. Как получить список документов из формы
списка в, например, таблицу значений?
Или вообще выгрузить данные из табличной части?
Ответ. Для этого можно поступить следующим образом:
ПеребираемыеДанные = Новый ПостроительОтчета;
ПеребираемыеДанные.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЭтаФорма.ДокументСписок);
Выборка = ПеребираемыеДанные.Результат.Выгрузить();
Затем следует обычная работа с выборкой, как с результатом запроса.
Вопрос. Как определить путь до рабочего стола текущего пользователя Windows?
Ответ. Для этого можно поступить следующим образом:
WSS = Новый COMОбъект("WScript.Shell");
ПеременнаяНазначения = WSS.SpecialFolders().Item("Desktop");
Возвращаемое значение без символа "\"
|
|