ОБСУЖДЕНИЕ

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

6 ответов 5,6 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

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

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

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

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

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

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

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

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

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

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

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

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

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


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


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

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

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

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

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

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

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