Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Помогите с деревом, please! Я уже много чего попробывал, может быть я какойто сути не уловлю, получилось одним способомтолько с помощью Add_tree_node. А пробовал вот так: DECLARE v_ignore NUMBER; find_node ftree.NODE; BEGIN Ftree.Set_Tree_Property('B.T', Ftree.RECORD_GROUP, 'RG1'); v_ignore := Populate_Group('RG1'); Ftree.Populate_Tree('B.T'); find_node := Ftree.Find_Tree_Node('B.T', '', Ftree.FIND_NEXT_CHILD, Ftree.NODE_LABEL, Ftree.ROOT_NODE, Ftree.ROOT_NODE); :system.message_level:='10'; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 10:36 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
А что пробовал-то? Чего хочешь от дерева? Из вопроса не очень понятно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 10:46 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
хочу в дерево залить данные, чтобы отображались колонки как узлы в дереве, а их данные как child этого узла, а пробывал через add_tree_data, с recordgroup, но пишет "нет данных для заполнения", , запрос в группе вроде правильный типа:"select 1, level, Firm_name, NULL, Firm_ID from FIRM". А также заполнял с помощью add_tree_node - но у меня на один узел выдавало одну запись, хоть и циклом выбирал. Помоги пожалуста, или хоть пример приведи... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 11:33 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Sqaimesselect 1, level, Firm_name, NULL, Firm_ID from FIRM В свойствах группы задайте явно тип данных и размер 4-го столбца (NULL). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 12:07 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Спасибо за ссылку , но там уже примере нет только описание :( John: получается, что если я беру RECORDGROUP, то мне надо использовать тип группы записей - статический? и если да, то в Name надо писать привязку на поле, или имя столбца как оно есть в таблице, а в значениях что писать? Может есть какой нибудь примерчик? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 13:00 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Для такого случая (имхо, конечно) проще формировать дерево вручную (FTree.Add_Tree_Node). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 13:14 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
так у меня получилось, а мне надо с Add_tree_data или так как я писал изначально в примере, с помощью recordgroup ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 13:23 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Sqaimesтак у меня получилось, а мне надо с Add_tree_data или так как я писал изначально в примере, с помощью recordgroupНу а что именно не получается с Add_tree_data? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 13:38 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
пишет мне ошибку "ненверные данные для заполнения" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 14:33 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Может код покажешь или мне по кофейной гуще угадывать в какой строке ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 14:40 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Выдает ошибку:"Не могу определить свойства корневого узла", а ошибка "неверные даные для заполнения" - это когда с recordgroup -я перепутал DECLARE htree ITEM; rg_data RECORDGROUP; BEGIN htree := Find_Item('B.T'); rg_data := FIND_GROUP('RG1'); 'RG1' - имя группы Ftree.Add_Tree_Data(htree, Ftree.ROOT_NODE, Ftree.PARENT_OFFSET, Ftree.LAST_CHILD, Ftree.RECORD_GROUP, rg_data); END; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 15:22 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Покажи структуру своей RG1, это важно, она должна быть не абы какая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 15:42 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Привожу пример рабочего кода на заполнение дерева: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 16:00 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Еще один код declare node ftree.node; state varchar2(30); htree item; v_gnore number; rg_emps recordgroup; begin -- Find the tree itself. htree:=Find_item('article.tree'); rg_emps:=Create_group_from_query('rg_emps', 'SELECT 1,level,bdfs||'' ''||name_article,null, id FROM article START WITH id_parent is null CONNECT BY PRIOR id = id_parent'); v_gnore:=populate_group(rg_emps); Ftree.Set_tree_property(htree, Ftree.record_group,rg_emps); -- Find the tree itself. htree := Find_Item('article.tree'); -- Find the root node of the tree. node := Ftree.Find_Tree_Node(htree, ''); --Loop through all nodes and expand each one if it is collapsed. WHILE NOT Ftree.ID_NULL(node) LOOP state := Ftree.Get_Tree_Node_Property(htree, node, Ftree.NODE_STATE); IF state = Ftree.EXPANDED_NODE THEN Ftree.Set_Tree_Node_Property(htree, node, Ftree.NODE_STATE, Ftree.COLLAPSED_NODE); END IF; node := Ftree.Find_Tree_Node(htree, '', free.find_NEXT,Ftree.NODE_LABEL,'', node); END LOOP; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 16:09 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Tolmachev большое спасибо, щас попробую... Frm42100: вот как заз с этим я думаю и проблема написал так: select 1, level, Firm_name, null Firm_ID from FIRM - если знаешь подскажи как правильно построить и для чего используется статический тип ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 16:16 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Tolmachev я попробывал, но мне пишет нет данных для заполнения, видно не так подставил, если не трудно поясни некоторые значения: 'st.st_pack.item_decode(t.ITEM_ID, ''FULL'') || '' (*''||to_char(t.amount) ||''/''||TO_CHAR(T.COMPLETE)||'')'', '|| 'st.st_pack.GET_icon_name('||to_char(:production_task.Production_id)|| ', LEVEL, T.PROD_PARENT_ID, T.PROD_CHILD_ID) AS ICONS, '|| 'T.PROD_CHILD_ID '|| 'FROM st.prod_task_structure t '|| 'WHERE t.production_id = '||to_char(:production_task.Production_id)|| ' AND ST.ST_PACK.ITEM_DECODE(T.ITEM_ID, ''STORE_ID'') = '||to_char(:parameter.p_store_id)|| ' AND st.st_pack.Check_Drafts(t.ITEM_ID) = 1 '|| ' CONNECT BY T.PROD_PARENT_ID = PRIOR T.PROD_CHILD_ID '|| ' START WITH PROD_PARENT_ID = 0'|| ' ORDER BY st.st_pack.Get_Tree_seq(T.ITEM_ID, LEVEL) '; ----- st.st_pack? ------ connect by и обязателен ли он? Я та значения свои подогнал, скомпилилось, а вот ошибочка есть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 17:00 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Sqaimesнаписал так: select 1, level, Firm_name, null Firm_ID from FIRM - если знаешь подскажи как правильно построить и для чего используется статический типУ тебя не хватает полей в запросе. Почитай в online help главу "Customizing objects in Forms" -> "Format of Data Used to Populate a Hierarchical Tree" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 17:10 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
См. раздел справки Forms "Format of data used to populate a hierarchical tree" Попробуй для тренировки код Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 17:19 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
вот еще Вам пример что все объясняет сам по себе Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2006, 19:28 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Всем огромное спасибо за помощь, вы мне очень помогли!!!!!!!!!!!!!! :) У меня все получилось! MERCI! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2006, 09:20 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
есть блок в форме у меня. Основанный на query, т.е. свойство Data query source type = 'from clause query' При этом хотелось бы в процессе работы программно добавлять новые and в предложение where моего select-а для моего блока. Если использовать default_where (билт-ин set_block_property()), то условия, заданные в нем работают ПОСЛЕ того как получен результат моего "основного" селекта, что не требуется. Как обратиться к свойству блока, содержащему мой селект? (и поменять ег, ессно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 18:11 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Вот чем хорош Forms, то что зная принципы его построения, найти ответ на подобного рода вопросы - элементарно. Q.Нужно программно {прочитать|изменить} свойство некоего объекта? A.Смотрим хелп на {GET|SET}_<object>_PROPERTY и получаем список свойств, которые можно читать/менять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 18:39 |
|
||
|
Oracle Forms
|
|||
|---|---|---|---|
|
#18+
Меняй программно свойство "Query Data Source Name" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 18:40 |
|
||
|
|

start [/forum/topic.php?fid=51&msg=33478107&tid=1879330]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 261ms |
| total: | 420ms |

| 0 / 0 |
