Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Записать атрибут объекта по строковым названиям          
SV71 Подменю пользователя
сообщение 15.07.20, 14:53
Сообщение #1

Говорящий
***
Группа: Пользователи
Сообщений: 80
Спасибо сказали: 3 раз
Рейтинг: 0

Всем привет!

Самописная конфигурация 1С:Предприятие 8.3 (8.3.3.721) режим совместимости интерфейса Версия 8.2

Вопрос меня терзает как обойти необходимость писать серверную процедуру для каждого отдельного доступа к разным объектам.

Мысли такие, нужно передать строками:
1) тип метаданных объекта - "ПланыСчетов.НИС_Учт_Сч_Счета";
2) название объекта - "Яндекс.Кошелек";
3) название атрибута - "Наименование" ;
4) значение для записи в этот атрибут - "ЗАКРЫТ Яндекс.Кошелек".

Вызов процедуры что-нибудь типа:
ПрисвоитьНаСервере("ПланыСчетов.НИС_Учт_Сч_Счета", "Яндекс.Кошелек", "Наименование", "ЗАКРЫТ Яндекс.Кошелек");


Нужно программно из таких СТРОКОВЫХ параметров сформировать исполняемый код в процедуре:
&НаСервереБезКонтекста
Процедура ПрисвоитьНаСервере(ТипОбъекта, НазваниеОбъекта, Атрибут, Значение)

// Здесь программно надо из строк сделать код типа ...

ЭкзОбъекта = ПланыСчетов.НИС_Учт_Сч_Счета[НазваниеОбъекта];

ЭкзОбъекта[Атрибут] = Значение;

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


Можно это сделать?

Заранее благодарен за ответы.

Vofka Подменю пользователя
сообщение 16.07.20, 7:59
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13948
Из: Киев
Спасибо сказали: 4514 раз
Рейтинг: 3635.6

ЭкзОбъекта = ПланыСчетов.НИС_Учт_Сч_Счета[НазваниеОбъекта]

Если Яндекс.Кошелек будет предопределенным элементом, то код выше должен сработать. Иначе можно так
ЭкзОбъекта = ПланыСчетов.НИС_Учт_Сч_Счета.НайтиПоНаименованию(НазваниеОбъекта);


ЭкзОбъекта[Атрибут] = Значение;

Это должно работать вроде.

SV71 Подменю пользователя
сообщение 16.07.20, 13:09
Сообщение #3

Говорящий
***
Группа: Пользователи
Сообщений: 80
Спасибо сказали: 3 раз
Рейтинг: 0

Цитата(Vofka @ 16.07.20, 9:59) *
ЭкзОбъекта = ПланыСчетов.НИС_Учт_Сч_Счета.НайтиПоНаименованию(НазваниеОбъекта);


Спасибо за уточнение.
Вопрос главный как программно сформировать исполняемый код в части "ПланыСчетов.НИС_Учт_Сч_Счета.НайтиПоНаименованию".

Идея в том, чтобы в эту же процедуру можно было передавать в виде строки ссылки на другие объекты: "Справочники", "Документы".

Т.е. чтобы можно было легко сделать заполнение на сервера атрибутов любых объектов.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 28.03.24, 12:01
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!