Расширение ДокументОснование новый тип

1. Coole 26.07.19 01:30 Сейчас в теме
После добавления в расширение док-та СборкаЗапасов ДокументОснование тип уустановился - ЛюбаяСсылка. Надо, чтобы СборкаЗапасов вводилась на основании РасходнойНакладной
Ставила (в расширении) как в конфигурации галочки, их всего 4 и свою - получила
"Склады: Значение контролируемого свойства Тип у объекта Документ.СборкаЗапасов.Реквизит.ДокументОснование не совпадает со значением в расширяемой конфигурации"
Что делать?? :(
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. dhurricane 26.07.19 08:28 Сейчас в теме
(1) Дело вот в чем. На самом деле в расширении, установив 4 типовые галочки + свою, Вы не расширили тип допустимых значений реквизита "ДокументОснование". Вы поставили тип реквизита на проверку, запретив расширению подключаться к ИБ, если тип данного реквизита в своем составе в расширяемой конфигурации не будет содержать эти 5 галочек.

Расширять тип реквизитов у объектов основной конфигурации нельзя. Можно только контролировать. Еще раз обращу на это Ваше внимание: флажками вы не добавляете типы, Вы устанавливаете контроль на состав типа.

Что делать? Зависит от Ваших возможностей касательно доработки основной конфигурации. В самом простом случае: добавить в тип основания свой документ прямо в расширяемой конфигурации, а в самом расширении уже описать необходимую логику заполнения объектов. Либо, если платформа позволяет и менять основную конфигурацию нельзя, можно добавить в расширении свой дополнительный реквизит, например "ОснованиеРасходнаяНакладная" с нужным типом, и работать уже с ним.
2. chemezov 47 26.07.19 06:31 Сейчас в теме
РасходнойНакладной - этот документ уже добавили в расширение из конфигурации? Не очень понятно из описания почему не получилось. Будем уточнять от простого к сложному. Я подобное делал, все работало
4. Coole 26.07.19 10:29 Сейчас в теме
(2)
РасходнаяНакладная и СборкаЗапасов - документы из конфигурации. Типовые.
В расширении делаю возможность из РасходнойНакладной ввести на основании в СборкаЗапасов.
Это все получилось, но СборкаЗапасов.ДокументОснование = Неопределено, хотя ставлю = РасходнаяНакладная.Ссылка.
Я НЕ спрашиваю как сделать ввод на основании. Я спрашиваю, как расширить тип ДокументОснование СборкаЗапасов.
5. dhurricane 26.07.19 10:45 Сейчас в теме
(4) Мне Вы стало быть не поверили? :)

Вот тогда выдержка из документации к 14-ой платформе:
Объекты, размещенные в расширении конфигурации, могут изменять поведение существующих объектов расширяемой конфигурации, не изменяя структуру данных, которые хранятся в информационной базе. В тоже время объекты, расположенные в расширении конфигурации, имеют возможность дополнять структуру хранения расширяемых объектов конфигурации (добавлять реквизиты) и создавать собственные объекты расширения, которые будут хранить «свои» данные в информационной базе расширяемой конфигурации.
https://its.1c.ru/db/v8314doc#bookmark:dev:TI000001922

Изменять реквизиты - нельзя, добавлять - можно.
6. Coole 26.07.19 11:47 Сейчас в теме
(5)
я не понимаю по одинэсовски)))

вот у меня в расширении СборкаЗапасов
вот в ДокументОснование добавляю РасходнаяНакладная
и ошибка
Прикрепленные файлы:
7. dhurricane 26.07.19 12:04 Сейчас в теме
(6) Так. Попробую другими словами.

1. Когда Вы в основной конфигурации открываете окно с типом реквизита "ДокументОснование", Вы включаете те документы, которые могут записываться в данный реквизит.

2. Когда Вы делаете тоже самое в расширении, т.е. открываете окно типа реквизита и включаете документы, этими действиями Вы не расширяете состав типа реквизита. Этими действиями Вы говорите 1С: "Выдай мне ошибку, если вдруг в основной конфигурации выбранных мной документов не окажется в типе реквизита ДокументОснование!" Вот 1С Вам и выдает ошибку: в основной конфигурации же нет расходной-накладной среди типов документа-основания.

Это не Вы как-то неправильно расширяете тип реквизита. Это в 1С так задумано - одно и то же диалоговое окошко в конфигурации и в расширении делает разные вещи.

И еще раз резюме: через расширение включить расходную накладную в состав типа для реквизита "ДокументОснования" у Вас не получится, это невозможно. Вам придется либо менять саму конфигурацию, либо придумывать обходные пути. Например, добавлять в расширении свой дополнительный реквизит для хранения документа-основания.
kida1; erazh; Coole; +3 Ответить
8. Coole 26.07.19 12:18 Сейчас в теме
(7) кшмар...
спасибо за много букв.
чо делать то?)
9. Coole 26.07.19 12:47 Сейчас в теме
(7) ну в смысле в расширении свой реквизит добавила, а как теперь выводить структуру подчиненности? потому что в самой конфе ОбщаяФорма СтруктураПодчиненности
Процедура СформироватьДеревьяДокументов()

ДеревоРодительскиеОбъекты.ПолучитьЭлементы().Очистить();
ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Очистить();

ВывестиРодительскиеОбъекты(ОбъектСсылка, ДеревоРодительскиеОбъекты);
ВывестиПодчиненныеОбъекты(ОбъектСсылка, ДеревоПодчиненныеОбъекты);

КонецПроцедуры
10. Coole 26.07.19 15:22 Сейчас в теме
(7)
подскажите пожалуйста в общей команде в расширении
сделала так -
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Массив1 = Новый Массив;
Для каждого стр из ПараметрыВыполненияКоманды.Источник.Элементы.Запасы.ВыделенныеСтроки Цикл
Массив1.Добавить(стр);
КонецЦикла;
СтрДанные = Новый Структура("Основание,Строки", ПараметрКоманды, Массив1);
// СтрДанные = Новый Структура("Основание", ПараметрКоманды);
ПараметрыФормы = Новый Структура("ЗначенияЗаполнения,ИспользоватьЭтапыПроизводства", СтрДанные, Истина);
ОткрытьФорму("Документ.СборкаЗапасов.ФормаОбъекта", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка);

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

Как бы в этом месте проверить - для РасходнойНакладной - может уже есть СборкаЗапасов?
11. babybu 29 23.03.21 14:14 Сейчас в теме
(5)вот здесь на ИТС пишется, что можно изменять, точнее расширять, тип заимствованного реквизита https://its.1c.ru/db/v8318doc#bookmark:dev:TI000002338
раздел 36.4.22
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот