метадані 1с
Метадані 1С - це список довідників, документів, їх реквізитів і іншого, що становить конфігурацію. Список метаданих 1С правиться програмістів в конфігураторі в вікні конфігурації.
З програми на мові 1С доступний список метаданих 1С та їх властивості.
Це зручно, коли потрібно отримати список документів в конфігурації або відпрацювати всі реквізити документа.
Розглянемо, як працювати з метаданими 1С конфігурації з мови 1С.
Метадані 1С конфігурації
Глобальна змінна Метадані дає доступ до метаданих 1С всієї конфігурації (тобто до «корені» конфігурації). Далі через точку можна звертатися до «колекціям» - документи, довідники і т.п. щоб вийти на конкретний довідник або документ, у яких відповідно є «колекції» реквізити, табличні частини і т.п. - все, як у конфігураторі, в дереві конфігурації.
Приклад - створимо список всіх документів конфігурації для того, щоб користувач міг вибрати потрібний документ зі списку:
спДокументовКонфігураціі = Новий СпісокЗначеній (); // сюди будемо зберігати список
// Метадані - глобальна змінна, яка дає доступ до всіх метаданих 1С конфігурації
//Метаданние.Документи - колекція документів конфігурації
Для кожного Документ з Метаданние.Документи Цикл
// Документ - це метадані 1С документа (кожного, так як ми обходимо їх в циклі)
//.Імя - найменування документа так, як воно задано в конфігурації
//.Сінонім - "людське" найменування документа, яке відображається користувачеві
// список значень може зберігати значення (ім'я документа) і "уявлення для користувача" (якраз - синонім документа)
спДокументовКонфігураціі.Добавіть (Документ.Імя, Документ.Сінонім);
КонецЦікла;
// даємо можливість користувачу вибрати зі списку потрібний документ
елДокумент = спДокументовКонфігураціі.ВибратьЕлемент ();
// якщо користувач натиснув "Скасування", то результатом вибору буде значення, хто не визначився, інакше результатом буде - обраний елемент
якщо елДокумент <> Не визначено Тоді
// в .Значеніе списку значень ми записували ім'я документа "як в конфігурації"
// створимо новий документ з таким ім'ям, нагадаємо - до документів можна звертатися Документи.ІмяДокумента або Документи [ІмяДокумента]
обДокумент = Документи [елДокумент.Значеніе] .СоздатьДокумент ();
//ДокументОб'ект.ПолучітьФорму () - повертає форму з вказаним ім'ям, а якщо ім'я не вказано - то форму "по-замовчуванню"
обДокумент.ПолучітьФорму (). Відкрити ();
КонецЕсли;
Приклад - для загального журналу документів (що відображає всі види документів) створимо запит, який поверне список всіх документів:
Метадані 1С об'єкта
У посилань і об'єктів є метод .Метаданние (), який дозволяє вийти на метадані 1С цього об'єкта.
Проголосувати за цей пост: