Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 07:28

Создание нового документа на основании данных из формы внешней обработки

Автор kssh24, 25 янв 2023, 14:11

0 Пользователей и 1 гость просматривают эту тему.

kssh24

Задача такая:

Необходимо создать внешнюю обработку, которая создаст новый документ Поступление товаров и услуг, заполнит реквизиты документа согласно указанных данных на форме обработки.

Как создать новый документ из внешней обработки?

LexaK

kssh24, в форме внешней обработке пишите примерно такой код
&НаСервевре
Процедура СоздатьДокументПТУ()

лкДок = Документы.ПоступлениеТоваровИУслуг.СоздатьДокумент();
лкДок.Дата = ТекущаяДата();
    //и далее заполняете все реквизиты документа
...

    //и не забываем записать
Попытка
лкДок.Записать(РежимЗаписиДокумента.Запись);//просто Запись
Исключение
лкОшибка = ОписаниеОшибки();
Сообщить(лкОшибка);
КонецПопытки;

КонецПроцедуры
если помогло нажмите: Спасибо!

Afinogen

kssh24,
Точно также как и из невнешней
загоняете в реквизиты обработки или формы (это уже как душе угодно) всю нужную информацию и затем делаете серверную процедуру

&НаСервере
Процедура СоздатьНовыйДокумент()
ДокОбъект = Документы{имя в конфигурации вашего документа}.СоздатьДокумент();

//заполняете данные документа

ДокОбъект.записать();

КонецПроцедуры


kssh24

Afinogen, я так и написала, а оно не работает(

&НаСервере
Процедура СоздатьДокументНаСервере()

НовыйДокумент = Документы.ПриобретениеТоваровУслуг.СоздатьДокумент();

НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Организация = Объект.Организация;
НовыйДокумент.Контрагент = Объект.Поставщик;
НовыйДокумент.Договор = Объект.Договор;
НовыйДокумент.Склад = Объект.Склад;

        НовыйДокумент.Записать();



LexaK

kssh24,
Цитироватья так и написала, а оно не работает(
что оно работало, эту процедуру надо выполнить!
вы ее выполняете/запускаете?
если помогло нажмите: Спасибо!

kssh24

LexaK, &НаКлиенте
Процедура СоздатьДокумент(Команда)

СоздатьДокументНаСервере();

КонецПроцедуры

LexaK

kssh24, а что нибудь в окно сообщений пишет?

так сделайте

    ...
    Попытка
        НовыйДокумент.Записать(РежимЗаписиДокумента.Запись);//просто Запись
        Сообщить("Создан новый документ: " + НовыйДокумент.Ссылка);
    Исключение
        лкОшибка = ОписаниеОшибки();
        Сообщить(лкОшибка);
    КонецПопытки;

если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск