• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Как заполнить поле Заказ в Документе РезервированиеТовара?

  • Автор темы Автор темы cacti
  • Дата начала Дата начала
C

cacti

Подскажите пожалуйста. как сделать та чтобы заполнился заказ на основании документа ЗаказПокупателя?
так не получается

ДокументЗаказ = Документы.ЗаказПокупателя.НайтиПоНомеру("");
ДокументРезОбъект.Заказ =ДокументЗаказ.Ссылка;
 
И правильно, что не работает сейчас.

1) Если вы ищите существующий документ, то первая строка относительно правильная (номера не хватает только). Если нашли, то ПОЛУЧАЕМ объект иначе у вас будет только ссылка на документ (ярлык)
2) Если новый создаете, то необходимо СОЗДАТЬ документ
Код:
Объект = Документы.Заказ.СоздатьДокумент();
3) После того как определили какой заказ заполняете, вызываете обработчик заполнения нового документа
Код:
Объект.Заполнить(ЗаказПокупателя);

4) Записываете объект
Код:
	Объект.Записать();
 
номер есть))я просто его не написала..

ДокументРезОбъект = Документы.РезервированиеТоваров.СоздатьДокумент();

ДокументЗаказ = Документы.ЗаказПокупателя.НайтиПоНомеру("00000000001");
ДокументРезОбъект.Заказ =ДокументЗаказ.Ссылка;

новый документ создавать не надо. вообще заказ покупателя уже есть и на основе него нужно заполнить документ резервирование товара, а точнее поле Заказ.
 
номер есть))я просто его не написала..

ДокументРезОбъект = Документы.РезервированиеТоваров.СоздатьДокумент();

ДокументЗаказ = Документы.ЗаказПокупателя.НайтиПоНомеру("00000000001");
ДокументРезОбъект.Заказ =ДокументЗаказ.Ссылка;

новый документ создавать не надо. вообще заказ покупателя уже есть и на основе него нужно заполнить документ резервирование товара, а точнее поле Заказ.

1) А где получение объекта?
Код:
ДокументРезОбъект=ДокументЗаказ.ПолучитьОбъект();
2) а если система не найдет по номеру? где обработка исключения (проверка, что ссылка существует)?

Код:
Если ДокументЗаказ <> Неопределено Тогда
ДокументРезОбъект=ДокументЗаказ.ПолучитьОбъект();
ДокументРезОбъект.Заказ =ДокументЗаказ;
ДокументРезОбъект.Записать();
КонецЕсли;

P.S. прочитайте еще раз внимательно предыдущее сообщение.
 
Спасибо у меня получилось ;)


ДокументЗаказ = Документы.ЗаказПокупателя.НайтиПоНомеру("00000000001", '20100206');
Документ = ДокументЗаказ.ПолучитьОбъект();
ДокументРезОбъект.Заказ =Документ.Ссылка;


А как сделать чтобы он искал не по заданному номеру, а по номеру который соответствует номеру документа РезервированиеТоваров.

Номер = ДокументРезОбъект.Номер;
ДокументЗаказ = Документы.ЗаказПокупателя.НайтиПоНомеру(Номер);

Так не получается((
 
ДокументРезОбъект.Заказ =Документ.Ссылка;

1) Не обязательно дописывать "ссылка". Документ у вас и так будет ссылкой. Получается что

Код:
ДокументРезОбъект.Заказ =Ссылка.Ссылка;

2) "НайтиПоНомеру" - искать по номеру именно тот документ который указан после "Документы."
Код:
НайтиПоРеквизиту(ИмяРеквизита, ЗначениеРеквизита);

3) Почитайте Синтаксис-помощник, там много интересного написано.
 
все получилось)) большое спасибо..без вашей помощи я бы долго еще копалась.. :)
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab