-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
75ab04f
commit 10f2d3b
Showing
1 changed file
with
142 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,143 @@ | ||
#Общий модуль __РаботаСФормами - Модуль Динамического Формирования Интерфейса | ||
|
||
Демо-пример использования методов | ||
|
||
```1C (BSL) | ||
#Область ДемоПример | ||
#Область РаботаСРеквизитамиФормы | ||
// | ||
СтруктураРеквизитов = Новый Структура; | ||
СтруктураРеквизитов.Вставить("_ДемоДата", __РаботаСФормами.ОписаниеТипаДатаВремя()); | ||
СтруктураРеквизитов.Вставить("_ДемоНомер", __РаботаСФормами.ОписаниеТипаСтрока(11)); | ||
СтруктураРеквизитов.Вставить("_ДемоПокупатель", __РаботаСФормами.ОписаниеТипаСправочник("_ДемоКонтрагенты")); | ||
СтруктураРеквизитов.Вставить("_ДемоПлатнаяДоставка", __РаботаСФормами.ОписаниеТипаБулево()); | ||
СтруктураРеквизитов.Вставить("_ДемоТолькоБудни", __РаботаСФормами.ОписаниеТипаБулево()); | ||
СтруктураРеквизитов.Вставить("_ДемоПолКурьера", __РаботаСФормами.ОписаниеТипаПеречисление("_ДемоПолФизическогоЛица")); | ||
СтруктураРеквизитов.Вставить("_ДемоТовары", __РаботаСФормами.ОписаниеТипаТаблицаЗначений()); | ||
СтруктураРеквизитов.Вставить("_ДемоКомментарий", __РаботаСФормами.ОписаниеТипаСтрока(100)); | ||
__РаботаСФормами.СоздатьРеквизиты(Форма, СтруктураРеквизитов); | ||
// Реквизит таб. части. | ||
СтруктураРеквизитовТабЧасти = Новый Структура; | ||
СтруктураРеквизитовТабЧасти.Вставить("_ДемоТовар", __РаботаСФормами.ОписаниеТипаСправочник("_ДемоНоменклатура")); | ||
СтруктураРеквизитовТабЧасти.Вставить("_ДемоКоличество", __РаботаСФормами.ОписаниеТипаЧисло(10)); | ||
СтруктураРеквизитовТабЧасти.Вставить("_ДемоЦена", __РаботаСФормами.ОписаниеТипаЧисло(10,2)); | ||
СтруктураРеквизитовТабЧасти.Вставить("_ДемоУпаковать", __РаботаСФормами.ОписаниеТипаБулево()); | ||
СтруктураРеквизитовТабЧасти.Вставить("_ДемоХрупкое", __РаботаСФормами.ОписаниеТипаБулево()); | ||
__РаботаСФормами.СоздатьРеквизитыТаблицы(Форма, "_ДемоТовары", СтруктураРеквизитовТабЧасти); | ||
#КонецОбласти | ||
#Область РаботаСГруппамиФормы | ||
// | ||
ГруппаШапка = __РаботаСФормами.СоздатьГруппаОбычнаяБезОтображения(Форма, "_ДемоГруппаШапка", Форма, 3); | ||
ГруппаШапкаЛевая = __РаботаСФормами.СоздатьГруппаОбычнаяБезОтображения(Форма, "_ДемоГруппаШапкаЛевая", ГруппаШапка, 1); | ||
ГруппаНомерДата = __РаботаСФормами.СоздатьГруппаОбычнаяБезОтображения(Форма, "_ДемоГруппаНомерДата", ГруппаШапкаЛевая, 3); | ||
ГруппаШапкаПравая = __РаботаСФормами.СоздатьГруппаОбычнаяБезОтображения(Форма, "_ДемоГруппаШапкаПравая", ГруппаШапка, 1); | ||
ГруппаСтраниц = __РаботаСФормами.СоздатьГруппаСтраниц(Форма, "_ДемоГруппаСтраниц", Форма, 1, 1); | ||
ГруппаТовары = __РаботаСФормами.СоздатьСтраница(Форма, "_ДемоГруппаТовары", ГруппаСтраниц, "Товары",, 1, 1); | ||
ГруппаЗаказы = __РаботаСФормами.СоздатьСтраница(Форма, "_ДемоГруппаЗаказы", ГруппаСтраниц, "Заказы клиента",, 1, 1); | ||
ГруппаПодвал = __РаботаСФормами.СоздатьГруппаОбычнаяБезОтображения(Форма, "_ДемоГруппаПодвал", Форма, 3); | ||
#КонецОбласти | ||
#Область РаботаСЭлементамиФормы | ||
// | ||
НовыйЭлемент = __РаботаСФормами.СоздатьПоле(Форма, "_ДемоНомер", ГруппаНомерДата, "Номер", 1, "_ДемоНомер"); | ||
ШиринаПоля = __РаботаСФормами.СтруктураСвойствРасположение(10,,, 10, Ложь,, Ложь); | ||
ОсновныеНастройкиПоля = __РаботаСФормами.СтруктураСвойствОсновные(,,,,,, Истина); | ||
__РаботаСФормами.УстановитьМножествоСтруктурСвойствЭлементу(НовыйЭлемент, ШиринаПоля, ОсновныеНастройкиПоля); | ||
// | ||
__РаботаСФормами.СоздатьПоле(Форма, "_ДемоДата", ГруппаНомерДата, "от", 1, "_ДемоДата"); | ||
__РаботаСФормами.СоздатьПоле(Форма, "_ДемоПокупатель", ГруппаШапкаЛевая, "Покупатель", 1, "_ДемоПокупатель"); | ||
__РаботаСФормами.СоздатьПоле(Форма, "_ДемоПлатнаяДоставка", ГруппаШапкаЛевая, "Платная доставка", 2, "_ДемоПлатнаяДоставка"); | ||
__РаботаСФормами.СоздатьПоле(Форма, "_ДемоПолКурьера", ГруппаШапкаПравая, "Пол курьера",1, "_ДемоПолКурьера"); | ||
__РаботаСФормами.СоздатьПоле(Форма, "_ДемоКомментарий", ГруппаПодвал, "Комментарий", 1, "_ДемоКомментарий"); | ||
// Флажки | ||
__РаботаСФормами.СоздатьПолеФлажок(Форма, "ТолькоБудни", ГруппаШапкаЛевая, "Только будни", 3, "_ДемоТолькоБудни"); | ||
// Декорации | ||
__РаботаСФормами.СоздатьДекорацияКартинка(Форма, "_ДемоКартинкаЛоготип", ГруппаПодвал, "_ДемоРазделБизнесПроцессыИЗадачи"); | ||
__РаботаСФормами.СоздатьДекорацияНадпись(Форма, "ИнформационнаяНадпись", ГруппаЗаказы, "Заказы по клиенту с начала года", 1); | ||
НовыйЭлемент = __РаботаСФормами.СоздатьДекорацияКартинка(Форма, "_ДемоBotFather", ГруппаПодвал, "BotFather"); | ||
ОсновныеНастройкиПоля = __РаботаСФормами.СтруктураСвойствОсновные(,,,, Ложь); | ||
__РаботаСФормами.УстановитьМножествоСтруктурСвойствЭлементу(НовыйЭлемент, ОсновныеНастройкиПоля); | ||
// Выпадающий список | ||
МассивЗначений = Новый Массив; | ||
МассивЗначений.Добавить("Седан"); | ||
МассивЗначений.Добавить("Универсал"); | ||
МассивЗначений.Добавить("Грузовик"); | ||
МассивЗначений.Добавить("Метро"); | ||
__РаботаСФормами.СоздатьВыпадающийСписок(Форма, "ВыборТС", ГруппаШапкаПравая, "Тип ТС", МассивЗначений); | ||
// Переключатель | ||
МассивЗначений = Новый Массив; | ||
МассивЗначений.Добавить("Обычная"); | ||
МассивЗначений.Добавить("Срочно"); | ||
МассивЗначений.Добавить("Вчера"); | ||
__РаботаСФормами.СоздатьПереключатель(Форма, "СрочностьДоставки", ГруппаШапкаПравая, "Срочность", МассивЗначений, 1); | ||
// Таблица формы | ||
СтруктураКолонок = Новый Структура; | ||
СтруктураКолонок.Вставить("_ДемоТовар", "Товар"); | ||
СтруктураКолонок.Вставить("_ДемоКоличество", "Количество"); | ||
СтруктураКолонок.Вставить("_ДемоЦена", "Цена"); | ||
НовыйЭлемент = __РаботаСФормами.СоздатьТаблицаФормы(Форма, "_ДемоТовары", ГруппаТовары, "_ДемоТовары", СтруктураКолонок); | ||
ВысотаТаблицы = __РаботаСФормами.СтруктураСвойствТаблицыФормы(,,,,,,, 4); | ||
__РаботаСФормами.УстановитьСвойстваЭлементу(НовыйЭлемент, ВысотаТаблицы); | ||
// Колонки таблицы формы | ||
ГруппаКолонки = __РаботаСФормами.СоздатьГруппаКолонокТаблицыФормы(Форма, "_ДемоГруппаДополнительно", НовыйЭлемент, 2,,, "Дополнительно"); | ||
__РаботаСФормами.СоздатьКолонкаТаблицыФормы(Форма, "_ДемоУпаковать", ГруппаКолонки, 2, "Упаковать", "_ДемоТовары._ДемоУпаковать"); | ||
__РаботаСФормами.СоздатьКолонкаТаблицыФормы(Форма, "_ДемоХрупкое", ГруппаКолонки, 2, "Стекло", "_ДемоТовары._ДемоХрупкое"); | ||
// Динамический список | ||
ТекстЗапроса = "ВЫБРАТЬ | ||
| _ДемоСчетФактураПолученный.Ссылка КАК Ссылка, | ||
| _ДемоСчетФактураПолученный.Номер КАК _ДемоНомер, | ||
| _ДемоСчетФактураПолученный.Дата КАК _ДемоДата, | ||
| _ДемоСчетФактураПолученный.Контрагент КАК _ДемоКонтрагент, | ||
| _ДемоСчетФактураПолученный.Сумма КАК _ДемоСумма | ||
|ИЗ | ||
| Документ._ДемоСчетФактураПолученный КАК _ДемоСчетФактураПолученный | ||
|ГДЕ | ||
| _ДемоСчетФактураПолученный.Дата > &Дата"; | ||
ПараметрыЗапроса = Новый Структура; | ||
ПараметрыЗапроса.Вставить("Дата", НачалоГода(ТекущаяДатаСеанса())); | ||
СтруктураКолонок = Новый Структура; | ||
СтруктураКолонок.Вставить("_ДемоДата", ""); | ||
СтруктураКолонок.Вставить("_ДемоНомер", ""); | ||
СтруктураКолонок.Вставить("_ДемоКонтрагент","Покупатель"); | ||
СтруктураКолонок.Вставить("_ДемоСумма", ""); | ||
НовыйЭлемент = __РаботаСФормами.СоздатьДинамическийСписок(Форма, "_ДемоЗаказы", ГруппаЗаказы, ТекстЗапроса, | ||
ПараметрыЗапроса,, СтруктураКолонок,,, Истина); | ||
__РаботаСФормами.УстановитьСвойстваЭлементу(НовыйЭлемент, ВысотаТаблицы); | ||
#КонецОбласти | ||
#Область РаботаСКомандами | ||
// | ||
__РаботаСФормами.СоздатьКоманду(Форма, "КогдаОбед", НСтр("ru='Когда обед?'; en='When is lunch?'"), "ПодсказатьКогдаОбед"); | ||
__РаботаСФормами.СоздатьКнопка(Форма, "КогдаОбед", ГруппаПодвал,, "КогдаОбед", 2); | ||
__РаботаСФормами.СоздатьКоманду(Форма, "СкрытьОтца", "Скрыть отца", "СкрытьОтца"); | ||
__РаботаСФормами.СоздатьКнопка(Форма, "СкрытьОтца", ГруппаПодвал,, "СкрытьОтца", 1); | ||
__РаботаСФормами.СоздатьКоманду(Форма, "ПоказатьОтца", "Показать отца", "ПоказатьОтца"); | ||
__РаботаСФормами.СоздатьКнопка(Форма, "ПоказатьОтца", ГруппаПодвал,, "ПоказатьОтца", 1); | ||
#КонецОбласти | ||
#КонецОбласти | ||
``` |