Привіт всім, хто недавно взявся за керовані форми 1С.
Хоч ідея закладена в керованих формах і вельми цікава, проте після товстого клієнта виникає кілька питань - рішення яких досить нетривіально.
Почнемо з простого:
Як отримати Макет зовнішнього звіту / обробки?
Як зберегти налаштування форми звіту або обробки?
Те що раніше ми робили функціями (товстий клієнт)
Тепер робиться так (тонкий клієнт / керовані форми):
Тут варто пояснити пару нюансів:
- Приклад наведено для конфігурації Управління торгівлі 11.х. В УТ 11.х є кілька стандартних сховищ. Стандартні сховища не вимагають додаткового коду тобто можна користуватися «ЯК Є». Нюанс в тому що не всі з цих сховищ будуть робити те що вам потрібно - просто підберіть то яке буде працювати:
- ХраніліщеПользовательскіхНастроекДінаміческіхСпісков
- ХраніліщеНастроекДаннихФорм
- ХраніліщеОбщіхНастроек
- ХраніліщеПользовательскіхНастроекОтчетов
- ХраніліщеСістемнихНастроек
- В УТ 11 є також стандартне сховище ХраніліщеВаріантовОтчетов - для нього в конфігурації вже написаний спец обробник який вимагає певної структури параметрів. Якщо є бажання - можете розібратися з ними самостійно.
- Є також об'єкт ХраніліщеНастроек - він призначений для розробки власних сховищ. Тут нюанс в тому, що цей об'єкт сам по собі нічого не робить він надає кілька обробників (порожніх) в яких треба написати код для збереження переданих значень. Куди і як зберігати справа суто особиста, кожного хто вирішив з цим зв'язатися.
Довільний відбір в керованих формах.
Часто для різних спец обробок потрібно мати довільний відбір на формі. У товстому клієнті ми користувалися об'єктом Відбір, програмно його заповнювали і раділи життю. У керованих формах і тонкому клієнті у нас відібрали таку можливість, але дали іншу, виглядає вона страхітливо, проте вельми проста у використанні, а головне - писати коду потрібно навіть менше.
- Заводимо реквізит форми типу КомпоновщікНастроекКомпоновкіДанних (або реквізит обробки, кому як подобається) - назвемо його НовийОтбор (для прикладу)
- Якщо розгорнути хрестиком НовийОтбор, то всередині ми побачимо властивість Налаштування, а всередині Налаштування побачимо Відбір - хапаємо відбір мишкою і тягнемо на форму - в результаті побачимо форму стандартного відбору як в старі добрі ...
- Ініціалізація відбору - просто так заповнити відбір елементами вийде. Для цього потрібно зробити два кроки
- Створити макет схеми (приклад) - для тих хто в курсі як робити схеми СКД поясню простий принцип (хто не в курсі - дивимося приклад): Робимо елементарний запит (в СКД схемою) виду
Схему додаємо в макети обробки / звіту. - Виконати код (на сервері - функція з модифікатором На сервері): Код можна запхати наприклад в функцію ПріСозданііНаСервере (Відмова, СтандартнаяОбработка)
Це колекція, тому обходимо її стандартним чином