Інтернет Windows Android

Механізм поділу даних 1с. Використання механізму поділу даних замість RLS

Загальний реквізит у 1С 8.3 - це об'єкт метаданих платформи, що дозволяє використовувати один реквізит для багатьох об'єктів конфігурації (довідників, документів, планів рахунків тощо). Об'єкт створено переважно полегшення праці розробника і поділу даних.

Загальні реквізити були спочатку реалізовані у версії 1С 7.7, але одразу у платформу 8 версії розробники його не включили. Механізм загальних реквізитів був запроваджений розробниками 1С лише у релізі 8.2.14.

Загальні реквізити дуже зручно додавати, щоб не змінювати стандартні об'єкти в конфігурації, я часто використовую їх поряд з .

Після додавання загального реквізиту його можна використовувати і в запитах та виводити на форму об'єктів. зовні він нічим не відрізняється від звичайного реквізиту.

Єдине обмеження загальних реквізитів - неможливість використання їх у .

Розглянемо основні налаштування та властивості загальних реквізитів, відмінні від інших об'єктів конфігурації:

склад— список об'єктів, до яких буде використано спільний реквізит, налаштування нагадує налаштування плану обміну.

Отримайте 267 відеоуроків з 1С безкоштовно:

Автовикористання— Налаштування визначає, чи використовуватиметься загальний реквізит для тих об'єктів, у яких у складі вказано режим використання «Автоматичний».

Поділ даних- це налаштування розглянемо окремо.

Поділ даних у 1С за допомогою загального реквізиту

Поділ даних- Механізм, аналогічний механізму. Проте продуктивність даного механізму ефективніша, і він налаштовується простіше.

Механізм дозволяє настроїти відображення лише елементів, які може бачити користувач. Наприклад, можна розмежувати всі об'єкти (документи, довідники тощо), де встановлено певну організацію.

Налаштування поділу даних за допомогою загальних реквізитів 1С

Для налаштування в загальному реквізиті необхідно вказати поділ даних. Розділяти. Відразу після натискання система запропонує створити параметри обліку за промовчанням:

При цьому необхідно буде при старті системи вказати параметри сеансу, як це зробити, з прикладом описано в статті .

На цьому налаштування завершено — користувачеві буде доступна лише та інформація, яка вказана у вибраних параметрах сеансу.

Приклад використання загального реквізиту

Розберемо налаштування загального реквізиту в 1С 8.3 на прикладі каркасної конфігурації та реквізиту Організація:

В системі є 3 документи, де необхідна вказівка ​​реквізиту Організація: це Прибуткова Накладна, Видаткова Накладна, Нарахування Зарплати.

Налаштування просте:

  1. Створюємо новий Загальний реквізит, вказуємо тип - Довідник Посилання. Організація.
  2. У складі розставляємо для наших документів. Використати.

Все, налаштування закінчено!

Дивимося результат:

Система відображає загальний реквізит «як свій»: і запитах, і реквізитах форми, та інших місцях. Ось таке чаклунство! 🙂

Не додається загальний реквізит 1С 8.3

У попередній статті ми додали загальний реквізит всім довідникам нашої конфігурації, для того щоб знати хто створив цей об'єкт довідника. Тепер ми створимо передплату на подію та вкажемо, якою інформацією заповнити цей реквізит.

Таким чином щоразу перед записом об'єкта у нас буде переписуватись автор об'єкта, бажано звичайно вказати і коли це сталося, додамо до автора ще й дату запису.

Процедура АвтоматичнеЗбереженняАвтораПередЗаписом(Джерело, Відмова) Експорт // Вставити вміст обробника.Джерело. АвторОб'єкту = Ім'яКористувача() + " ; + рядок (поточна дата () ); КінецьПроцедури

Чудово. Тепер подумаємо де ще можна використовувати загальнореквізити?

По-перше, за допомогою загальних реквізитів можна до всіх документів у конфігурації додати реквізит «Коментар», реквізит «автор», а також інші реквізити, які вам потрібно.

У загальних реквізитів є ще один цікавий параметр Поділ даних».Цей механізм дозволяє визначити дані, які хочемо показати користувачеві. Наприклад, щоб жоден з менеджерів не знав усіх клієнтів компанії, ми показуватимемо йому лише тих клієнтів, яких він вніс до бази, з якими він працює. Давайте постараємося додати цей функціонал до бази. Для початку нам потрібно буде вказати, що ми використовуватимемо розділення даних, система автоматично запропонує створити параметри сеансу за замовчуванням.

Після цього нам залишається лише встановити параметри сеансу в модулі сеансу:

Наведемо приклад, як виглядає довідник контрагентів без використання «Поділу даних» та з ним:

Без поділу

З поділом

Зверніть увагу, що Реквізит «Відповідальний» у першому контрагенті не знайдено, оскільки автором цього реквізиту був хтось інший.

Класичний приклад поділу обліку - по організаціях, показувати користувачам ті документи, які належати до відповідної організації.

Ми з вами скористалися механізмом «Параметри сеансу», коротко розберемося, що це таке. По суті параметри сеансу це глобальні змінні, які встановлюються на початку роботи системи. Як правило, це відбувається в «Модулі сеансу», зауважте, що параметри сеансу створюються виключно програмними методами.

Після того як ми встановили «Параметри сеансу», ми можемо звернутися до даного параметра з будь-якого модуля системи простим.

Відповідно, щоб змінити параметри сеансу, користувач повинен вийти і зайти в програму по новій.

Одного разу ми обговорювали механізми обмеження доступу користувачів до 1С і зокрема.

Він дозволяє дозволити користувачеві працювати не з усіма документами, а лише з тими, у яких зазначена певна організація чи склад. Відбори проводяться динамічно, тому накладають певне навантаження працювати бази даних.

Властивість загального реквізиту-розділювача – Поділ користувачів 1С – дозволяє встановити доступність списку користувачів залежно від використання роздільників.

Якщо розділювач включений для користувача, то його буде видно в списку користувачів у режимі 1С Підприємство – інакше не видно.

Таким чином, можна організувати різні списки користувачів для різних частин бази.

Властивість загального реквізиту-подільника – Поділ аутентифікації 1С – дозволяє заводити користувачів з однаковими іменами користувача для різних частин бази.

Умовний поділ 1С

Умовний поділ 1С дозволяє включати та відключати роздільник на підставі даних бази. Таким чином, можна створювати ланцюжки залежних один від одного роздільників динамічно діючих у тому чи іншому випадку.

Щоб включити умовний поділ 1С – необхідно вказати на властивості загального реквізиту-подільника – Умовний поділ 1С – , який буде відповідати визначення факту включення поділу 1С.

Можна використовувати константу з типом булева або реквізит довідника з типом булева.

Важливо – у цієї константи/довідника потрібно відключити використання (вибрати Не використовувати) у складі роздільників, тільки тоді його можна буде вибрати.

Загальний реквізит – це реквізит, що додається до кількох об'єктів конфігурації, і також може використовуватися як складова частина спеціального механізму поділу даних:

  • Загальний реквізит для кількох об'єктів. Реквізит, який є у кількох об'єктах конфігурації, у яких цей реквізит зберігає свій сенс і тип. Приклад такого використання: Реквізит "Організація" у документах регламентованого обліку у прикладному рішенні
  • Загальний реквізит як складова частина спеціального механізму поділу даних. Цей механізм дозволяє розділити на окремі частини роботу прикладного рішення і всі дані, що зберігаються. При цьому у загального реквізиту включається розподіл даних.
    Приклад такого використання: В одній фізичній інформаційній базі незалежно працюють різні "власники" даних, при цьому кожному користувачеві такого прикладного рішення будуть доступні лише його дані

Властивість "Поділ даних" загального реквізиту

Якщо цю властивість встановлено на значення "Не використовувати", то створений об'єкт конфігурації буде використовуватися лише як реквізит, що входить до складу кількох об'єктів конфігурації.
Якщо властивість встановлено на значення "Розділяти", загальний реквізит використовуватиметься як роздільник даних

Склад об'єктів

Властивість "Склад" загального реквізиту визначає список об'єктів конфігурації, до складу яких входить даний загальний реквізит.
Якщо властивість "Автовикористання" встановлено на значення "Не використовувати", автоматичного додавання реквізиту не буде, а для вибору об'єктів, до складу яких необхідно включити загальний реквізит, слід скористатися властивістю "Склад".
Також властивістю "Склад" слід скористатися, якщо при автоматичному використанні загального реквізиту існують об'єкти, у складі яких загальний реквізит не повинен бути присутнім.

Використання загального реквізиту

Для кожного об'єкта конфігурації стовпчик Використання може приймати одне з трьох значень:
  • Автоматично означає, що призначення об'єкта конфігурації загальному реквізиту залежить від значення якості "Автовикористання"
  • Використовувати означає, що об'єкт конфігурації входить до складу загального реквізиту
  • Не використовувати – означає, що об'єкт конфігурації не входить до складу загального реквізиту
Таким чином, за допомогою редактора властивості "Склад" можна вибірково виключати деякі об'єкти зі складу загального реквізиту, незважаючи на те, що для нього встановлено "Автовикористання".

Об'єкти конфігурації

До складу загального реквізиту (що не перебуває в режимі поділу даних) можуть входити такі об'єкти конфігурації:
  • Довідники
  • Документи
  • Журнали документів
  • Плани видів характеристик
  • Плани видів розрахунку
  • Бізнес процеси
  • Завдання
  • Реєстри відомостей
  • Регістри накопичення
  • Реєстри бухгалтерії
  • Плани обміну
  • Зовнішні джерела даних

Особливості

При записі документа на загальний реквізит журналу присвоюється значення загального реквізиту документа або значення NULL, якщо документ не входить до складу загального реквізиту
Загальний реквізит може бути використаний в обмеженнях доступу до даних. Включати зовнішні джерела даних у складі загального реквізиту має сенс у разі, коли загальний реквізит є разделителем.

ПОРАДА!Не слід використовувати загальні реквізити для опису даних, що є частиною бізнес-логіки конкретних об'єктів.