|
v7: 2 и более таблицы значений на форме обработки | ☑ | ||
---|---|---|---|---|
0
vladko
14.01.18
✎
17:12
|
Всем привет,
Есть несколько закладок на форме обработки, на каждой закладке есть своя таблица значений. Так вот по размеру окна расширяется только первая ТЗ. Есть ли способ сделать так, чтобы и другие тоже раздвигались по ширине? Может как-то через formex или как? |
|||
1
mehfk
14.01.18
✎
17:18
|
Класс Общие.Форма.Привязка
|
|||
2
Злопчинский
14.01.18
✎
17:34
|
на форме - одну ТЗ.
в зависимости от закладки - заполнять нужными значениями |
|||
3
MWWRuza
гуру
14.01.18
✎
20:14
|
Да вообще без проблем, именно через Formex. Вот кусок кода из работающего документа:
Процедура ПривязатьТзКТабДока() Перем Лево,Верх,Ширина,Высота; РасширениеФормы.МногострочнаяЧасть.ПолучитьКоординаты(Лево,Верх,Ширина,Высота); РасширениеФормы.ТзОстатков.УстановитьКоординаты(Лево,Верх,Ширина,Высота); КонецПроцедуры Процедура ПриИзмененииРазмераОкна(ТипСобытия,ШиринаФормы,ВысотаФормы) ПривязатьТзКТабДока(); КонецПроцедуры В документе табличная часть на одной закладке, и ТзОстатков на другой. Размеры таблиц синхронизированы. Именно, как Вам надо. Не разберетесь - пишите, подробнее раскажу. |
|||
4
Владимир1С
15.01.18
✎
11:14
|
(0) Да, Формэкс. Учтите, в обходе элементов формы ТЗ, с которой считываются размеры,должна быть первой - изменяемая платформой таблицаНаФорме. Потом все остальные, друг за дружкой. По крайней мере у меня эта особенность вылезла.
|
|||
5
MWWRuza
гуру
15.01.18
✎
12:23
|
Кстати, вариант(2) тоже очень интересный. Именно для нескольких ТЗ. Иметь одну ТЗ на форме, в отдельном слое, которую перезаполнять методом Выгрузить() при переключении закладок. Сами данные хранить в виртуальных ТЗ, которых может быть нужное количество. Ну, или если они быстро заполняются, то можно заполнять их и "на лету", при выборе нужной закладки.
Но, у меня такой способ не прокатил-бы, в моем примере на одной закладке табличная часть документа, а на второй ТЗ, которая заполняется из связанного, "служебного" документа. |
|||
6
Масянька
15.01.18
✎
12:25
|
(0) Маленький "прикол" эски.
Далее - по пунктам выше. |
|||
7
Злопчинский
15.01.18
✎
12:29
|
(5) но ты ж не одновременно две закладки смотришь.. ;-)
|
|||
8
MWWRuza
гуру
15.01.18
✎
12:53
|
(5) Нет конечно ;-) Либо табличную часть документа, либо таблицу остатков. Но, размеры у них одинаковые, не зависимо, растянут документ на весь экран или в окне произвольного размера.
|
|||
9
Злопчинский
15.01.18
✎
13:02
|
(8) это ты ловко извратился...
но если надо не форму дока, а форму обработки... |
|||
10
Владимир1С
15.01.18
✎
16:10
|
Процедура ПриИзмененииРазмераОкна(ТипСобытия)
Если ТипСобытия=1 Тогда // окно свернуто Возврат; КонецЕсли; АтрибутТаб=СоздатьОбъект("АтрибутФормы"); АтрибутТаб.УстановитьАтрибут(Форма,"ТабЗаказов"); Лево=0; Верх=0; Ширина=0; Высота=0; АтрибутТаб.ПолучитьКоординаты(Лево,Верх,Ширина,Высота); //Сообщить("Лево "+Лево+" Верх "+Верх+" Ширина "+Ширина+" Высота "+Высота); АтрибутТаб.УстановитьАтрибут(Форма,"ТабЗаказовПикПоинт"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); АтрибутТаб.УстановитьАтрибут(Форма,"ТабЗаказовПикПоинтПредоплата"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); АтрибутТаб.УстановитьАтрибут(Форма,"ТабЗаказовВнесениеПикПоинт"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); АтрибутТаб.УстановитьАтрибут(Форма,"ТабЗаказовОплатаПочта"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); // Б О К С Б Е Р И АтрибутТаб.УстановитьАтрибут(Форма,"ТабБоксБериОтгрОплтПриПолуч"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); АтрибутТаб.УстановитьАтрибут(Форма,"ТабБоксБериОплатаПредоплата"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); АтрибутТаб.УстановитьАтрибут(Форма,"ТабБоксБериОплатаПриПолучении"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); // П О Н И Э К С П Р Е С С ПониЭкспОтгрОплтПриПолуч АтрибутТаб.УстановитьАтрибут(Форма,"ПониЭкспОтгрОплтПриПолуч"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); // АтрибутТаб.УстановитьАтрибут(Форма,"ПониЭкспОплатаПредоплата"); АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); // АтрибутТаб.УстановитьАтрибут(Форма,"ПониЭкспОплатаПриПолучении"); // ПониЭкспОплатаПриПолучении АтрибутТаб.УстановитьКоординаты(Лево,Верх,Ширина,Высота); АтрибутТаб=0; КонецПроцедуры // ПриИзмененииРазмераОкна() |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |