|
|
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Решил плотно ими заняться, но сразу же столкнулся с проблемой - создаю обычную форму на основе одной таблицы, запускаю... Записи отсутствуют. Вношу новые, сохраняю - в таблице они появляются. Видимо, что-то ставить где-то надо. Хелп, плз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 09:23 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
1. см. Query 2. Раз только начал, лучше изучай Jdeveloper 9.0.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 09:37 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
А как сделать, чтобы запрос запускался сразу? До JDeveloper-а ещё доберёмся:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 10:06 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
вставь квери в триггер... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 10:07 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
А конкретнее? Какой триггер, на каком объекте? И что писать? Замучил уже наверное... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 11:03 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
например, на триггере when-new-form-instcance (триггер на уровне формы, естественно), написать go_block('.....'); execute_query; а вообще, почитайте книжки по формам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 11:48 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Забей на все это и займись нормальной работой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 12:00 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Тут с фраером полностью не согласен, лучше средства для работы по виндой для табличных приложений под Oracle пока еще нет.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 12:17 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Ну и где книги добыть? Нормальные, а не где пол-книги объясняется интерфейс. Мда... Трудновато с Делфи переходить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 12:59 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Что за глюк? Выставляю все поля высвечиваемым текстом - runtime вылетает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 13:46 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
>>> Решил плотно ими заняться, но сразу же столкнулся с проблемой - создаю обычную форму на основе одной таблицы, запускаю... Записи отсутствуют. Вношу новые, сохраняю - в таблице они появляются. Видимо, что-то ставить где-то надо. Хелп, плз. V triggere WHEN-NEW-INSTANCE dla FORM v celom procto napish : EXECUTE_QUERY; i vce. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 18:02 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Возможно ли создать блок данных по запросу, а не только по вьюверу с таблицей? Рога и копыта Иванов Денежный мешок Петров Форс Сидоров Где, соответственно, люди идут из другой таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2002, 08:45 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
На формсе сделать можно практически все, что делают на делфе. Вопрос в том, что нужно поменять взгляд на программирование. И научиться работать в жестких рамках формализации. Дока хорошая есть в девелопере под линухом(PDF & HTML), правда на англицком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2002, 09:33 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Только как правило это не надо. Но если уж очень приспичет, то можно сделать блок на основе query, и подставлять в качестве источника (SELECT .....) только имена столбцов должны совпадать. Или можно построить блок на основе процедуры в базе, через REF курсор. А если хрчешь - то на моей страничке можешь скачать книжку на русском языке по Developer www.insoft.ru/alexey в разделе библиотека. ЗЫ: Если будешь через чур мудрствовать, то могут пойти проблему при работе с другими базами из твоей програмы (не Oracle) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2002, 09:54 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Взгляд на программиронаие развернулся ровно на 180. Всё направлено строго в противоположную сторону. С англицким проблем нет. А первые шаги нашёл как делать - baks.gaz.ru. Конкретно и понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2002, 10:11 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
расскажите, плз, как сделать, чтобы строки, выбранные из таблицы, отображались собственно таблицей, а не в отдельных recordах на разных страницах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 15:59 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Parovozik, Установите на блоке данных Number of record displayed = 5 (или другое > 1 значение) Record orientation = Vertical Или когда блок создаете, то см.картинку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:39 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Еще вопросик тогда. Сделал форму на основе таблицы emp стандартной скоттовской схемы. На канве отображается таблицей(так как описано выше), хочу чтоб по нажатии на кпонку, выводились только те служащие, которые являются подчиненными того сотрудника, на котором стоял курсор в таблице. На кнопку завязываю триггер WHEN_BUTTON_PRESSED: go_block('emp'); set_block_property('emp',default_where,'mgr=???'); execute_query; вместо ??? должна быть какая-то переменная или константа. Вопрос в том как ее получить, то есть как получить значение записи, на которой установлен курсор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 15:10 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Parovozik, Ну, т.к. вам нужны значения текущей строки (CURRENT_RECORD), то никаких манипуляций особо делать не нужно. У меня нет тестовой схемы SCOTT, потому примерно пишу: WHEN-BUTTON-PRESSED: Код: plaintext 1. Но сразу на будущее хинт: так лучше не делать, а правильнее будет сделать переменную и биндить её в запросе. Например, создать скрытый элемент на форме (поместить его в управляющий блок, не в блок данных, для примера назовём его CONTROL), назвать, например, MGR_ID. А where в таком случае сделать так: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 16:08 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
OmegaMale, да, забыл, что нужно сделать установку этого элемента при нажатии на кнопку: :EMP.MGR_ID := :EMP.EMP_ID; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 16:10 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
попробовал сделать так, но все равно не пашет: declare c number:=:system.cursor_record; f number; cursor c1 is select empno, rownum from emp; begin for i in c1 loop if i.rownum=c then f:=i.empno; else NULL; end if; end loop; go_block('emp'); clear_block; set_block_property('emp',default_where,'mgr='||f); execute_query; end; причем тотже код пробовал переписать в виде блока PL/SQL для SQL*Plus, все работало: declare c number:=9; f number; cursor c1 is select empno, rownum from emp; cursor c2(nemp number) is select empno,ename,mgr from emp where mgr=nemp; begin for i in c1 loop if i.rownum=c then f:=i.empno; else NULL; end if; end loop; for x in c2(f) loop dbms_output.put_line(x.empno||' '||x.ename||' under '||x.mgr); end loop; end; / 7566 JONES under 7839 7698 BLAKE under 7839 7782 CLARK under 7839 PL/SQL procedure successfully completed. Здесь с сразу равно строке в таблице, получается как будто :system.cursor_record ничего не выдает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 16:46 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
упс))простите, долго писал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 16:47 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
Спасибо, OmegaMale. Возился несколько часов=) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 16:53 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
можно ли с помощью FORMS_DDL дропнуть таблицу?если нельзя, то как это сделать в FORMS? делаю вот так, входной параметр tab_name передается через text_item: PROCEDURE del_table (tab_name varchar2) IS myddl varchar2(2000); BEGIN myddl:='drop table '||tab_name||';'; Forms_DDL(myddl); IF NOT FORM_SUCCESS then message ('Таблицы с таким именем не существует'); else message ('Таблица удалена'); end if; END; в результате выводит сообщение 'Таблицы с таким именем не существует', то есть ничего не работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2010, 15:14 |
|
||
|
Oracle Forms. Начало.
|
|||
|---|---|---|---|
|
#18+
1. зачем точка с запятой после tab_name. Это же SQL, а не PL/SQL 2. а таблица-то вообще видна? 3. если что-то не проходит из Forms, завсегда можно сваять хранимую процедуру на сервере PS DDL из кода - не шибко хорошее дело (ну за некоторым исключением :) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2010, 15:59 |
|
||
|
|

start [/forum/topic.php?fid=51&msg=32075584&tid=1878888]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
130ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 246ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...