scoodizzy619 @ Сегодня, 10:57
необходимо зарегистрироваться для просмотра ссылки
,
Ну во- первых такие вещи не пишутся в обработке заполнения, не "корректный" подход. Обычно пишутся обработка с признаком "заполнение объекта"; как вариант а лучше
по типу
Функция СведенияОВнешнейОбработке() Экспорт
ИмяОбработки = ЭтотОбъект.Метаданные().Имя;
Синоним = ЭтотОбъект.Метаданные().Синоним;
Синоним = ?(ЗначениеЗаполнено(Синоним),Синоним, ИмяОбработки);
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиСозданиеСвязанныхОбъектов();
ПараметрыРегистрации.Версия = "1.0.0.1";
ПараметрыРегистрации.Наименование = Синоним;
ПараметрыРегистрации.БезопасныйРежим = Ложь;
ПараметрыРегистрации.Информация = "Создание на основании";
ПараметрыРегистрации.Назначение.Добавить("Документ.НазваниеДокумента");
Команда = ПараметрыРегистрации.Команды.Добавить();
Команда.Представление = Синоним;
Команда.Идентификатор = ИмяОбработки;
Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовКлиентскогоМетода();
Команда.ПоказыватьОповещение = Истина;
Возврат ПараметрыРегистрации;
КонецФункции
2 Уточните у Вас Обычные формы или Управляемые конфигурации ( разные подходы)
Пример что когда то писал давно :
ОтборОбновить = Новый Структура("Обновить",Истина);
Если Объект.Товары.НайтиСтроки(ОтборОбновить).Количество() =0 Тогда
Сообщить ("Не выбраны позиции номенклатуры. Прервано. ",СтатусСообщения.Важное);
Возврат;
КонецЕсли;
Если ЗначениеЗаполнено(Объект.Документ1С) Тогда
ДокументОбъект = Объект.Документ1С.ПолучитьОбъект();
ДокументОбъект.Товары.Очистить();
ДокументОбъект.ВидыЦен.Очистить();
Иначе
ДокументОбъект = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
ДокументОбъект.Дата = ТекущаяДата();
КонецЕсли;
ДокументОбъект.Статус = Перечисления.СтатусыУстановокЦенНоменклатуры.Согласован;
Для Каждого СтрТовары Из Объект.Товары Цикл
Если ЗначениеЗаполнено(СтрТовары.Номенклатура) и ЗначениеЗаполнено(СтрТовары.ВидНоменклатуры) и
(СтрТовары.Обновить) Тогда
// поищем дубляж
СтрокаТЧ = ДокументОбъект.Товары.Найти(СтрТовары.Номенклатура,"Номенклатура");
Если СтрокаТЧ = Неопределено Тогда
СтрДок = ДокументОбъект.Товары.Добавить();
ЗаполнитьЗначенияСвойств(СтрДок,СтрТовары);
СтрДок.ВидЦены = Объект.ВидЦены;
СтрДок.Упаковка = СтрДок.Номенклатура.ЕдиницаИзмерения;
Иначе
// сравним цены
Если СтрокаТЧ.Цена < СтрТовары.Цена Тогда
СтрокаТЧ.Цена = СтрТовары.Цена;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
СтрВидыЦен = ДокументОбъект.ВидыЦен.Добавить();
СтрВидыЦен.ВидЦены = Объект.ВидЦены;
ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
Сообщить (" Записан / обновлен документ цен ",СтатусСообщения.Информация);
Объект.Документ1С = ДокументОбъект.Ссылка;
После выполнить ОткрытьФорму для Объект.Документ1С ; ( ссылка-документ)
либо собрать их в массив и открыть каждый документ что создан на основании в цикле перебором уже этого массива;
Profi_1C77 @ Сегодня, 11:22
необходимо зарегистрироваться для просмотра ссылки
,
пример открытия созданного документа
Результат = ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта",Новый Структура ("Ключ",Объект.Документ1С));
scoodizzy619 @ Сегодня, 10:57
необходимо зарегистрироваться для просмотра ссылки
,
- >>> и нужно к примеру создавать кнопку на документе и через нее это выводить?
как вариант да,
если не использовать БСП ( или их нету в вашей конфигурации)