Пожелания к докомпиляции интерфейсов

Приемы и подходы, обмен опытом

Модераторы: Screw, larin

Ответить
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Пожелания к докомпиляции интерфейсов

Сообщение cruger »

В настоящее время ведутся работы по расширению возможностей докомпиляции (alter interface).
Принимаются пожелания к функциональности.

Пока планируется сделать:
  1. перекрытие локальной функции;
  2. добавление панели в закладку;
  3. перекрытие панели;
  4. изменение панели.
Peter
партнер
Сообщения: 28
Зарегистрирован: Пт, 19/10/2007 11:49
Имя Фамилия: Петр Кузьмин
Откуда: ЗАО "Галактика Про"
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение Peter »

Очень ждем, особенно п. 1.
m0p3e
заказчик
Сообщения: 46
Зарегистрирован: Вт, 13/01/2009 10:52
Имя Фамилия: Сергей Головчак
Откуда: Гипротрубопровод

Re: Пожелания к докомпиляции интерфейсов

Сообщение m0p3e »

Уточнение по пункту 1.
Только перекрытие или с наследованием? Как с событийной частью?

Еще бы полное перекрытие скринов, браузов (по исходным именам) не помешало.
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

Как обычно - хочешь вызываешь родителя, хочешь - не вызываешь.

А при перекрытии панелей как должен работать родительский код, взаимодействующий с видимыми элементам родительской панели?
m0p3e
заказчик
Сообщения: 46
Зарегистрирован: Вт, 13/01/2009 10:52
Имя Фамилия: Сергей Головчак
Откуда: Гипротрубопровод

Re: Пожелания к докомпиляции интерфейсов

Сообщение m0p3e »

cruger писал(а):А при перекрытии панелей как должен работать родительский код, взаимодействующий с видимыми элементам родительской панели?
Как с родной панелью.
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

Это если элементы есть и в новой панели. А если нет? Или они там с другими свойствами?
m0p3e
заказчик
Сообщения: 46
Зарегистрирован: Вт, 13/01/2009 10:52
Имя Фамилия: Сергей Головчак
Откуда: Гипротрубопровод

Re: Пожелания к докомпиляции интерфейсов

Сообщение m0p3e »

Это уже будет отслеживать программер.
Такая возможность нужна при замене панели в закладках, т.к. сейчас при навигации по закладкам предыдущая панель перекрывает новую. Сейчас это можно предотвратить, но крайне неудобно.
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

как-то сделаем, но насчёт того, как это потом будет работать в сложных случаях - вопрос
m0p3e
заказчик
Сообщения: 46
Зарегистрирован: Вт, 13/01/2009 10:52
Имя Фамилия: Сергей Головчак
Откуда: Гипротрубопровод

Re: Пожелания к докомпиляции интерфейсов

Сообщение m0p3e »

Родилось еще одно пожелание.
Докомпиляция статус-лайнов. Частенько бывает, что необходимо добавить в уже готовый обработку какого-либо события.
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

m0p3e писал(а):Докомпиляция статус-лайнов.
К сабжу не относится, очевидно. Да и сущ. средствами вроде решается.
Аватара пользователя
Magic
топ-софт
Сообщения: 35
Зарегистрирован: Вт, 20/11/2007 10:30
Имя Фамилия: Роман Тищенко
Откуда: Галактика-Украина
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение Magic »

Наибольшие проблемы с текущей реализацией докомпиляции вызывает добавление в существующие интерфейсы новых визуальных елементов (например, добавить поле в существующий screen или browse) - приходится брать исходник screen или browse, добавлять в него свои визуальные елементы и вставлять как новый screen или browse с теми же координатами, а в секции cmInit переключаться на него функцией SetFormat. Частично решить эту проблему можно средствами конфигуратора, но это очень неудобно с точки зрения технической поддержки доработки.
В данной ситуации очень помогла бы возможность добавления полей в существующие экранные и табличные редакторы (в screen - добавление новых полей в секцию fields и строк с форматом в конец секции << ... >>, в browse и tree - добавление новых полей в секцию fields).

Например, это может выглядеть так:

Код: Выделить всё

interface Test;
  Show at (,, 50, 10);

create view
  from
    KatOrg
;

screen scParam 'Основные настройки' ('',, sci1EnEsc);
fields
  KatOrg.Name ('Наименование');
<<
`Наименование`.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
>>
end;

end.

alter interface Test;

alter screen scParam;
fields
  KatOrg.Code ('Код');
<<
`Код`         .@@@@@@@@@@@
>>
end;

end.
В результате докомпиляции получится такой экранный редактор:

Код: Выделить всё

screen scParam 'Основные настройки' ('',, sci1EnEsc);
fields
  KatOrg.Name ('Наименование');
  KatOrg.Code ('Код');
<<
`Наименование`.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
`Код`         .@@@@@@@@@@@
>>
end;
Можно также предусмотреть возможность указать номер строки экранного редактора, куда нужно вставить новый фрагмент и порядковый номер поля табличного редактора, перед которым нужно вставить новые поля.
Думаю, реализовать это не очень сложно.
Достоинства предлагаемого метода расширения визуальных элементов интерфейса:
1. Минимальные затраты на выполнение доработки и сопровождение.
2. Прозрачность и понятность исходного кода доработки.
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

Роман, см. п.4 списка
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

Кстати, п.1 выйдет в 5.4.36, пп 2-4 - в 5.4.37 (они уже сделаны, но решили пока не заливать, дабы иметь более управляемую ситуацию с выпуском релиза).
Аватара пользователя
Magic
топ-софт
Сообщения: 35
Зарегистрирован: Вт, 20/11/2007 10:30
Имя Фамилия: Роман Тищенко
Откуда: Галактика-Украина
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение Magic »

cruger писал(а):Роман, см. п.4 списка
Я видел. Просто предложил вариант реализации.
cruger писал(а):Кстати, п.1 выйдет в 5.4.36, пп 2-4 - в 5.4.37 (они уже сделаны, но решили пока не заливать, дабы иметь более управляемую ситуацию с выпуском релиза).
Отлично!
А как именно реализован п.4?
Похоже на то, что я предложил, или каким-то другим способом?
cruger
топ-софт
Сообщения: 566
Зарегистрирован: Пт, 21/09/2007 15:19
Имя Фамилия: Фёдор Терсин
Откуда: Галактика Софт
Контактная информация:

Re: Пожелания к докомпиляции интерфейсов

Сообщение cruger »

Magic писал(а):А как именно реализован п.4?
Примерно так, но в твоём примере надо строчку пустую вставить в начало экрана в докомпиляции, что бы добавленный элемент не накладывался на существующий.
Ответить