Имя: Пароль:
1C
1С v8
Создание нескольких документов на основе одного.
0 nscode
 
08.12.15
07:48
Добрый день!

1С 8.3, УФ.

Помогите пожалуйста в решении следующей задачи:
Есть документ "А", у которого в табличной части след. реквизиты : склад, материал, количество. Есть документ "Б", у которого есть реквизит склад в шапке, а в табличной части материал и количество. Необходимо по нажатию кнопки у документа "А" создать, но не записывать несколько документов "Б" и открыть их формы. Количество документов "Б" равно количеству строк в ТЧ документа "А".

Делаю так,

&НаКлиенте
Процедура Тест(Команда)
    
    Для Каждого Стр Из Объект.ТЧ Цикл
                
        Пар = Новый Структура;
        Пар.Вставить("Рек1",Стр.Склад);
        Пар.Вставить("Рек2",Стр.Материал);
        Пар.Вставить("Рек3",Стр.Количество);
        
        ФормаДок = ПолучитьФорму("Документ.Б.ФормаОбъекта",Пар,,Новый УникальныйИдентификатор());
        ФормаДок.Открыть();
        
    КонецЦикла;
    
КонецПроцедуры

в процедуре Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ловлю параметры и обрабатываю их.

Что-то мне подсказывает, что изобретаю велосипед, так как не использую стандартный механизм "СоздатьНаОсновании". Подскажите, может есть более оптимальный код решения задачи?

Спасибо.
1 Gangar
 
08.12.15
08:18
В модуле дока Б сделай обработку заполнения и передавай туда что надо из модуля команды дока А. Команда в форме списка может обрабатывать несколько доков.
2 nscode
 
08.12.15
08:40
Спасибо за ответ, но не совсем понял. Разве можно из ОбработкиЗаполнения создать другой документ, да и еще открыть его форму?
Независимо от того, куда вы едете — это в гору и против ветра!