|
Установить созданный вручную объект справочник в форму документа. | ☑ | ||
---|---|---|---|---|
0
Vyacheslav_UZ
01.07.16
✎
14:28
|
Добрый день. Бухгалтерия.Хозрасчетный 8.2. Делаю внешнюю обработку которая устанавливает в банковских документах в зависимости от расчетного счета и мфо определенный договор. Если нет договора вообще то создает новый с нужным наименование и должен его подставить в этот документ. Вот тут и возникла проблема. Не хочет не как договор вставать в реквизит документа. Выдает ошибку "Поле объекта недоступно для записи". Но я же получаю ссылку из запроса которую приравниваю к объекту. Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | ПлатежныйОрдерПоступлениеДенежныхСредств.СчетКонтрагента.НомерСчета КАК НомерСчета, | ПлатежныйОрдерПоступлениеДенежныхСредств.Контрагент.ОсновнойБанковскийСчет.Банк.Код КАК МФО, | ПлатежныйОрдерПоступлениеДенежныхСредств.ДоговорКонтрагента, | ПлатежныйОрдерПоступлениеДенежныхСредств.Ссылка, | ПлатежныйОрдерПоступлениеДенежныхСредств.Контрагент |ИЗ | Документ.ПлатежныйОрдерПоступлениеДенежныхСредств КАК ПлатежныйОрдерПоступлениеДенежныхСредств |ГДЕ | ПлатежныйОрдерПоступлениеДенежныхСредств.Дата МЕЖДУ &Дата И &ДатаОкончания"; Запрос.УстановитьПараметр("Дата", ЭтотОбъект.ДатаНачало); Запрос.УстановитьПараметр("ДатаОкончания", ЭтотОбъект.ДатаОкончания); РезультатЗапроса = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл //Чек// //Андижан Если ВыборкаДетальныеЗаписи.НомерСчета = "29804000500226818002" И ВыборкаДетальныеЗаписи.МФО = "01114" Тогда Если НЕ ЗначениеЗаполнено(ВыборкаДетальныеЗаписи.ДоговорКонтрагента) Тогда // НЕ ДоговорКонтрагента.Наименование = "Чек" Тогда //Создаем новый договор контрагента НовыйЭлемент = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент(); Родитель = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000000199"); НовыйЭлемент.Наименование = "Чек"; НовыйЭлемент.Организация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнаяОрганизация"); НовыйЭлемент.Владелец = ВыборкаДетальныеЗаписи.Контрагент; НовыйЭлемент.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПокупателем; НовыйЭлемент.Родитель = Родитель; НовыйЭлемент.ВалютаВзаиморасчетов = Справочники.Валюты.НайтиПоКоду("860"); НовыйЭлемент.Записать(); //Вставляем в документ новый договор контрагента ИзменяемыйДокумент = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); ФормаДокумента = ИзменяемыйДокумент.ПолучитьФорму(); ФормаДокумента.ЭлементыФормы.ДоговорКонтрагента = СозданныйДоговор; ИзменяемыйДокумент.РасшифровкаПлатежа[0].ДоговорКонтрагента = СозданныйДоговор; ИзменяемыйДокумент.записать(); Иначе ИзменяемыйДокумент = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); НеобходимыйДоговор = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000002974"); ИзменяемыйДокумент.ДоговорКонтрагента = НеобходимыйДоговор; ИзменяемыйДокумент.РасшифровкаПлатежа[0].ДоговорКонтрагента = НеобходимыйДоговор; ИзменяемыйДокумент.записать(); КонецЕсли; |
|||
1
Зая Бусечка
01.07.16
✎
14:30
|
Искузе муа, а зачем значение в форму ставить?
|
|||
2
Nuobu
01.07.16
✎
14:31
|
ФормаДокумента.ЭлементыФормы.ДоговорКонтрагента.Значение = СозданныйДоговор;
или так: ИзменяемыйДокумент.ДоговорКонтрагента = СозданныйДоговор; |
|||
3
catena
01.07.16
✎
14:33
|
Во-первых, отстаньте уже от формы, пишите как в Иначе, сразу в объект.
Во-вторых, почему создается НовыйЭлемент, а записавается СозданныйДоговор? |
|||
4
Vyacheslav_UZ
01.07.16
✎
14:35
|
Nuobu пробовал и так и так не цепляет.
|
|||
5
Vyacheslav_UZ
01.07.16
✎
14:36
|
catena изначально ятак и делал как в иначе, тоесть :
//Вставляем в документ новый договор контрагента ИзменяемыйДокумент = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); ИзменяемыйДокумент.ДоговорКонтрагента = НовыйЭлемент; ИзменяемыйДокумент.РасшифровкаПлатежа[0].ДоговорКонтрагента = НовыйЭлемент; ИзменяемыйДокумент.записать(); |
|||
6
salvator
01.07.16
✎
14:36
|
(4) Что в переменной "СозданныйДоговор"?
|
|||
7
catena
01.07.16
✎
14:37
|
(5)И? Какой точный текст ошибки?
|
|||
8
Vyacheslav_UZ
01.07.16
✎
14:37
|
Если ВыборкаДетальныеЗаписи.НомерСчета = "29804000500226818002" И ВыборкаДетальныеЗаписи.МФО = "01114" Тогда
Если НЕ ЗначениеЗаполнено(ВыборкаДетальныеЗаписи.ДоговорКонтрагента) Тогда //Создаем новый договор контрагента НовыйЭлемент = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент(); Родитель = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000000199"); НовыйЭлемент.Наименование = "Чек"; НовыйЭлемент.Организация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнаяОрганизация"); НовыйЭлемент.Владелец = ВыборкаДетальныеЗаписи.Контрагент; НовыйЭлемент.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СПокупателем; НовыйЭлемент.Родитель = Родитель; НовыйЭлемент.ВалютаВзаиморасчетов = Справочники.Валюты.НайтиПоКоду("860"); НовыйЭлемент.Записать(); //Вставляем в документ новый договор контрагента ИзменяемыйДокумент = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); ИзменяемыйДокумент.ДоговорКонтрагента = НовыйЭлемент; ИзменяемыйДокумент.РасшифровкаПлатежа[0].ДоговорКонтрагента = НовыйЭлемент; ИзменяемыйДокумент.записать(); Иначе ИзменяемыйДокумент = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); НеобходимыйДоговор = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("000002974"); ИзменяемыйДокумент.ДоговорКонтрагента = НеобходимыйДоговор; ИзменяемыйДокумент.РасшифровкаПлатежа[0].ДоговорКонтрагента = НеобходимыйДоговор; ИзменяемыйДокумент.записать(); КонецЕсли; |
|||
9
Vyacheslav_UZ
01.07.16
✎
14:38
|
без Созданный договор. Не заменил текст.
|
|||
10
Nuobu
01.07.16
✎
14:38
|
НовыйЭлемент.ССылка; !!!!
СозданныйДоговор.ССылка; !!! |
|||
11
catena
01.07.16
✎
14:38
|
ИзменяемыйДокумент.ДоговорКонтрагента = НовыйЭлемент.Ссылка
|
|||
12
Vyacheslav_UZ
01.07.16
✎
14:39
|
В данном случаи ошибки не какой нет.Просто не подставляет.
|
|||
13
catena
01.07.16
✎
14:39
|
(12)Как это было проверено, что не подставляет?
|
|||
14
Vyacheslav_UZ
01.07.16
✎
14:40
|
Ятиишки матрешки. Получилось.ИзменяемыйДокумент.ДоговорКонтрагента = НовыйЭлемент.Ссылка Катена вам 5)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |