powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
8 сообщений из 8, страница 1 из 1
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553358
alex_bf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть две табло. Связь многие-ко-многим через третью таблицу.
Остальное, собственно, сабж.
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553376
Фотография John.D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такой вариант, не универсальный, но в ряде случаев удобный:
Одну таблицу сделать блоком. Соответствующие данные из второй отображать в т-листе. Добавить кнопочки "Добавить", "Удалить", "Изменить". Короче - через визард, как в форточках, юзерам это нравится.
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553407
alex_bf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Было бы конечно удобно так:

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

Но как это сделать в ораклиных формах?
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553408
alex_bf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...пользователи ставят галочки, все видно сразу, поставил где нужно галочки,
и все
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553421
Фотография John.D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oracle Spread Table control OCX поможет. Но только если в блоках нет прокрутки. Или же данные из одной таблицы - метки строк, из другого - метки столбцов.
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553480
alex_bf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно по подробнее про Oracle Spread Table control.
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553608
Фотография John.D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про ЭТО надо смотреть демонстрашку ocxstbl.fmb. Вот кусочек кода из ВНФИ этой формы:
...
--create spread table
for counter in 1..colcount loop
colname(counter) := To_Char(counter-1);
colsize(counter) := 50;
end loop;

for counter in 1..rowcount loop
rowname(counter) := To_Char(counter-1);
rowsize(counter) := 25;
end loop;

ORACLESPREADTABLE_DMMTX.CreateTable(:item('OCXBLK.OCXITM').interface,
colcount,FORMS_OLE.To_Variant(colname, vtype=>VT_BSTR), FORMS_OLE.To_Variant(colsize, vtype=>VT_I4),
rowcount,FORMS_OLE.To_Variant(rowname, vtype=>VT_BSTR), FORMS_OLE.To_Variant(rowsize, vtype=>VT_I4));

--
....

Как видно, если Вы решитесь на это, то надо быть готовым к набиванию дли-ин-ных названий пакетов.

Сама это штука поставляется без демонстрашки в 6-м формсе. (в 5-ом только с демо). См. в %ORACLE_HOME%\bin. Файл, по-моему, называется mmtx32.ocx, но не уверен.
Зарегистрируйте ОЦИкс. Можно запустить ocxreg.bat

В лейаут эдиторе создайте элемент ОЦИкс

Задайте Класс ОЛЕ "OracleSpreadTable"

Щёлкните в лейаут эдиторе по элементу правой кнопкой. В меню выбирите "Вставить объект". В появившемся окошке выбирите "Oracle Spread Table Control" и нажмите ОК

Щёлкните в Объектном навигаторе по элементу правой кнопкой. Выбирите "Универсальные триггеры"-"ON-DISPATCH-EVENT"

В меню формс билдера: "Программы"- "Импорт интерфейса библиотеки ОЛЕ"-Если в Объектном навигаторе выделен элемент ОЛЕ, то выделите ВСЁ. Если нет, то выбирите "OracleSpreadTable", выделите всё в двух окошечках внизу. Нажмите ОК. Сосдадуться пакеты (8 спец и 7 боди).

Хелп доступен в разделе "функциональный" св-ств элемента, не ахти какой, но есть кое-что интересное. Лучше начать изучение с демонстрашки.

Запаситесь [чаем|кофе|пивом|колой|водкой], а, главное, терпением - И вперёд!
...
Рейтинг: 0 / 0
Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
    #32553679
alex_bf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Огромное спасибо. Буду разбираться.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Заполнение кросс-таблицы в Oracle Forms. Как сделать удобней для пользователя?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]