|
Ввод только одного документа на основании | ☑ | ||
---|---|---|---|---|
0
Bodrug
25.07.19
✎
12:02
|
Всем доброго времени суток!
Есть 2 документа: Док1, Док2. Док2 вводится на основании Док1. Нужно реализовать следующее: можно создать только один Док2 на основании Док1. Если уже существует такой документ, нужно открыть его форму и заполнить данными заполнения Док1. Никак не пойму, как это сделать. |
|||
1
Кац
25.07.19
✎
12:03
|
проверять кол-во созданных доков в обработке заполнения
или посмотреть ка сделана связка РТиУ и СФ |
|||
2
Гипервизор
25.07.19
✎
12:04
|
В один документ добавить реквизит - ссылку на другой документ.
|
|||
3
Bodrug
25.07.19
✎
12:06
|
(1) (2) с частью проверки на существование Док2 проблем нет - я это сделал в ОбработкеЗаполнения. Вот дальше непонятно как действовать.
|
|||
4
Bodrug
25.07.19
✎
12:09
|
Как сделать открытие сущетсвующего Док2, вместо открытия нового?
|
|||
5
Cyberhawk
25.07.19
✎
12:17
|
(3) В обработке заполнения заполняешь служебный реквизит документа. В форме уже делаешь манипуляции с подменой объекта.
|
|||
6
Cyberhawk
25.07.19
✎
12:17
|
+(5) Или в форме закрываешь текущую и открываешь новую нужную
|
|||
7
Гипервизор
25.07.19
✎
12:21
|
Проверяйте ПередОткрытием.
|
|||
8
DrWatson
25.07.19
✎
12:31
|
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Если Объект.Ссылка.Пустая() И ЗначениеЗаполнено(Параметры.Основание) Тогда СуществующийДок = НайтиДокументНаОсновании(Параметры.Основание); Если ЗначениеЗаполнено(СуществующийДок) Тогда ЗначениеВРеквизитФормы(СуществующийДок.ПолучитьОбъект(), "Объект"); КонецЕсли; КонецЕсли; КонецПроцедуры &НаСервереБезКонтекста Функция НайтиДокументНаОсновании(ДокОснование) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | Документ2.Ссылка КАК Ссылка |ИЗ | Документ.Документ2 КАК Документ2 |ГДЕ | Документ2.ДокументОснование = &ДокОснование"; Запрос.УстановитьПараметр("ДокОснование", ДокОснование); РезультатЗапроса = Запрос.Выполнить(); Если РезультатЗапроса.Пустой() Тогда Возврат Неопределено; КонецЕсли; Выборка = РезультатЗапроса.Выбрать(); Выборка.Следующий(); Возврат Выборка.Ссылка; КонецФункции |
|||
9
Bodrug
25.07.19
✎
12:40
|
(8) Спасибо большое! Все работает!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |