Как обратиться к подчиненному справочнику
// ЗиК 7.70.269
СпрПС=СоздатьОбъект("Справочник.ПланСчетов");
СпрВС=СоздатьОбъект("Справочник.ВидыСубконто");
СпрШП=СоздатьОбъект("Справочник.ШаблоныПроводок");
СпрШП.Новый();
СпрПС.НайтиПоКоду(20,0);
СпрШП.СчетДебета=СпрПС.ТекущийЭлемент();
СпрПС.НайтиПоКоду(70,0);
СпрШП.СчетКредита=СпрПС.ТекущийЭлемент();
СпрВС.НайтиПоНаименованию("Затраты на производство",0,1);
???
СпрШП.Субконто2Дебета= ???
СпрШП.Записать();
С справочнике "Виды субконто" у элемента "Затраты на производство" есть подчиненный справочник. Как выбрать элементы подчиненного справочника, чтобы там потом найти элемент "Основная заработная плата".
СпрПС=СоздатьОбъект("Справочник.ПланСчетов");
СпрВС=СоздатьОбъект("Справочник.ВидыСубконто");
СпрШП=СоздатьОбъект("Справочник.ШаблоныПроводок");
СпрШП.Новый();
СпрПС.НайтиПоКоду(20,0);
СпрШП.СчетДебета=СпрПС.ТекущийЭлемент();
СпрПС.НайтиПоКоду(70,0);
СпрШП.СчетКредита=СпрПС.ТекущийЭлемент();
СпрВС.НайтиПоНаименованию("Затраты на производство",0,1);
???
СпрШП.Субконто2Дебета= ???
СпрШП.Записать();
С справочнике "Виды субконто" у элемента "Затраты на производство" есть подчиненный справочник. Как выбрать элементы подчиненного справочника, чтобы там потом найти элемент "Основная заработная плата".
По теме из базы знаний
- Всякие полезности
- Перенумерация документов и справочников с учетом префиксов (учет уникальности кодов) для обычных и управляемых форм
- Как мы со Стасом завод за 2 месяца автоматизировали
- 1С СППР, как инструмент по внедрению, разработке и сопровождению информационных систем
- Как переносить номенклатуру в новую базу 1С?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Попробуй так:
СпрПодч=СоздатьОбъект("Справочник.ХХХ");
СпрПодч.ИспользоватьВладельца(СпрВС.ТекущийЭлемент());
СпрПодч.НайтиПоНаименованию("Основная заработная плата",1,0);
В отладчике проверь - тот ли элемент он нашёл, т.к. код не проверен
ps ты не сказал как называется подчинённые справочник, поэтому я поставил его идентификатор ХХХ
СпрПодч=СоздатьОбъект("Справочник.ХХХ");
СпрПодч.ИспользоватьВладельца(СпрВС.ТекущийЭлемент());
СпрПодч.НайтиПоНаименованию("Основная заработная плата",1,0);
В отладчике проверь - тот ли элемент он нашёл, т.к. код не проверен
ps ты не сказал как называется подчинённые справочник, поэтому я поставил его идентификатор ХХХ
Я тоже не знаю как называется подчиненный справочник.
В Зик справочник я открываю так:
Справочники - Бухучет зарплаты - Виды Субконто
У большинства элементов можно выбрать подчиненные справочники. Только их нет в конфигураторе (они импортированы из бухучета).Там только "Виды Субконто". Вот и не понятно как создать СпрПодч=СоздатьОбъект("Справочник.ХХХ");
В отладчике после строки:
СпрВС.НайтиПоНаименованию("Затраты на производство",0,1);
делаю рассчитать выражение СпрВС
получаю:
Код="6"
Наименование="Затраты на производство"
Владелец=
Родитель=
Идентификатор="Справочник.СтатьиЗатратНаПроизводство "
Попытка создать:
СпрПодч=СоздатьОбъект("Справочник.СтатьиЗатратНаПроизводство");
вызывает ошибку.Еще неясно почему в
Идентификатор="Справочник.СтатьиЗатратНаПроизводство "
присутствуют пробелы справа.Может в них дело, так все-равно в конфигураторе нет справочника "СтатьиЗатратНаПроизводство" поэтому я думаю СоздатьОбъект в данном случае недопустимо.
В Зик справочник я открываю так:
Справочники - Бухучет зарплаты - Виды Субконто
У большинства элементов можно выбрать подчиненные справочники. Только их нет в конфигураторе (они импортированы из бухучета).Там только "Виды Субконто". Вот и не понятно как создать СпрПодч=СоздатьОбъект("Справочник.ХХХ");
В отладчике после строки:
СпрВС.НайтиПоНаименованию("Затраты на производство",0,1);
делаю рассчитать выражение СпрВС
получаю:
Код="6"
Наименование="Затраты на производство"
Владелец=
Родитель=
Идентификатор="Справочник.СтатьиЗатратНаПроизводство "
Попытка создать:
СпрПодч=СоздатьОбъект("Справочник.СтатьиЗатратНаПроизводство");
вызывает ошибку.Еще неясно почему в
Идентификатор="Справочник.СтатьиЗатратНаПроизводство "
присутствуют пробелы справа.Может в них дело, так все-равно в конфигураторе нет справочника "СтатьиЗатратНаПроизводство" поэтому я думаю СоздатьОбъект в данном случае недопустимо.
В справочнике "Значения субконто" есть только Виды номенклатуры.
СпрПодч=СоздатьОбъект("Справочник.ЗначенияСубконто");
Это я пробовал.
СпрВС.НайтиПоНаименованию("Затраты на производство",0,1);
СпрПодч.ИспользоватьВладельца(СпрВС.ТекущийЭлемент());
Не работает (получается ссылка на Виды Субконто)
Это у меня и так работало.
СпрЗС=СоздатьОбъект("Справочник.ЗначенияСубконто");
СпрЗС.НайтиПоНаименованию(ИмяЗаказа,0,1);
СпрШП.Субконто1Дебета=СпрЗС.ТекущийЭлемент();
СпрПодч=СоздатьОбъект("Справочник.ЗначенияСубконто");
Это я пробовал.
СпрВС.НайтиПоНаименованию("Затраты на производство",0,1);
СпрПодч.ИспользоватьВладельца(СпрВС.ТекущийЭлемент());
Не работает (получается ссылка на Виды Субконто)
Это у меня и так работало.
СпрЗС=СоздатьОбъект("Справочник.ЗначенияСубконто");
СпрЗС.НайтиПоНаименованию(ИмяЗаказа,0,1);
СпрШП.Субконто1Дебета=СпрЗС.ТекущийЭлемент();
ДмитрийF Написал:
-------------------------------------------------------
> В справочнике "Значения субконто" есть только Виды
> номенклатуры.
> СпрПодч=СоздатьОбъект("Справочник.ЗначенияСубконто
> ");
> Это я пробовал.
Ну...
> СпрВС.НайтиПоНаименованию("Затраты на
> производство",0,1);
> СпрПодч.ИспользоватьВладельца(СпрВС.ТекущийЭлемент
> ());
> Не работает (получается ссылка на Виды Субконто)
СпрВС - Это вид субконто, а (в данном случае) СпрПодч - это ЗначенияСубконто. ТАк?
> Это у меня и так работало.
> СпрЗС=СоздатьОбъект("Справочник.ЗначенияСубконто");
> СпрЗС.НайтиПоНаименованию(ИмяЗаказа,0,1);
> СпрШП.Субконто1Дебета=СпрЗС.ТекущийЭлемент();
У тебя работало, потому что не было больше совпадающих наименований для разных элементов справочника-владельца! ;-)
Пользуйся использоватьВладельца на всякий случай
Если не понятно, то ещё раз объясни, что не работает на текущий момент.
-------------------------------------------------------
> В справочнике "Значения субконто" есть только Виды
> номенклатуры.
> СпрПодч=СоздатьОбъект("Справочник.ЗначенияСубконто
> ");
> Это я пробовал.
Ну...
> СпрВС.НайтиПоНаименованию("Затраты на
> производство",0,1);
> СпрПодч.ИспользоватьВладельца(СпрВС.ТекущийЭлемент
> ());
> Не работает (получается ссылка на Виды Субконто)
СпрВС - Это вид субконто, а (в данном случае) СпрПодч - это ЗначенияСубконто. ТАк?
> Это у меня и так работало.
> СпрЗС=СоздатьОбъект("Справочник.ЗначенияСубконто");
> СпрЗС.НайтиПоНаименованию(ИмяЗаказа,0,1);
> СпрШП.Субконто1Дебета=СпрЗС.ТекущийЭлемент();
У тебя работало, потому что не было больше совпадающих наименований для разных элементов справочника-владельца! ;-)
Пользуйся использоватьВладельца на всякий случай
Если не понятно, то ещё раз объясни, что не работает на текущий момент.
Вроде разобрался, все работает.
Я писал:
> В справочнике "Значения субконто" есть только Виды
> номенклатуры.
Как я сразу не допер, что там показываются "Значения субконто" в зависимости от текущего элемента в справочнике "Виды Субконто". А так как Виды номенклатуры были первым элементом справочника, поэтому я и видел их в Значениях субконто.
Я писал:
> В справочнике "Значения субконто" есть только Виды
> номенклатуры.
Как я сразу не допер, что там показываются "Значения субконто" в зависимости от текущего элемента в справочнике "Виды Субконто". А так как Виды номенклатуры были первым элементом справочника, поэтому я и видел их в Значениях субконто.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот