Need help to read a _fmb. XML and write the properties of the element to a table
We want to retrieve all the properties of elements of forms at a table.Table has this format:
Describing oracle_forms_item_list....
NAME Null? Type
------------------------------- --------- -----
FORM_NAME NOT NULL VARCHAR2(100)
ITEM_NAME NOT NULL VARCHAR2(50)
ITEM_TYPE NOT NULL VARCHAR2(50)
PROPERTY NOT NULL VARCHAR2(50)
PROPERTY_VALUE VARCHAR2(500)
We want to get all D_e_p_a_r_t_m_e_n_t_s.fmb items (blocks, paintings, text etc.). So first convert us it to XML and we get the D_e_p_a_r_t_m_e_n_t_s_fmb.xml file which is shown below.<?xml version = '1.0' encoding = 'UTF-8'?>
<Module version="101020002" xmlns="http://xmlns.oracle.com/Forms">
<FormModule Name="D_E_P_A_R_T_M_E_N_T_S" ConsoleWindow="WINDOW1" DirtyInfo="true" MenuModule="DEFAULT&SMARTBAR" Title="MODULE5">
<Coordinate CharacterCellWidth="7" CoordinateSystem="Real" CharacterCellHeight="14" RealUnit="Point" DefaultFontScaling="true"/>
<Alert Name="ALERT6" DirtyInfo="true" DefaultAlertButton="Button 2" AlertMessage="Do you want to save ???" Button2Label="No" AlertStyle="Caution" Title="Saving........................... <>" Button1Label="Yes"/>
<Block Name="DEPT" ScrollbarTabPageName="" DirtyInfo="true" QueryDataSourceName="dept" ScrollbarWidth="14" ScrollbarYPosition="39" ShowScrollbar="true" ScrollbarCanvasName="CANVAS4" ScrollbarLength="70" RecordsDisplayCount="5" ScrollbarXPosition="237">
<Item Name="DEPTNO" DirtyInfo="true" Height="14" PromptAlign="Center" XPosition="14" Width="27" ColumnName="DEPTNO" DataType="Number" YPosition="39" PromptDisplayStyle="First Record" ItemsDisplay="0" MaximumLength="3" PromptAttachmentEdge="Top" ItemType="Text Item" TabPageName="" CanvasName="CANVAS4" Prompt="Deptno"/>
<Item Name="DNAME" DirtyInfo="true" Height="14" PromptAlign="Center" XPosition="41" Width="101" ColumnName="DNAME" YPosition="39" Tooltip="Dep name goooes here." DataLengthSemantics="BYTE" Hint="Entter the department name" PromptDisplayStyle="First Record" ItemsDisplay="0" MaximumLength="14" PromptAttachmentEdge="Top" ItemType="Text Item" TabPageName="" CanvasName="CANVAS4" Prompt="Dname"/>
<Item Name="LOC" DirtyInfo="true" Height="14" PromptAlign="Center" XPosition="142" Width="95" ColumnName="LOC" YPosition="39" DataLengthSemantics="BYTE" PromptDisplayStyle="First Record" ItemsDisplay="0" MaximumLength="13" PromptAttachmentEdge="Top" ItemType="Text Item" TabPageName="" CanvasName="CANVAS4" Prompt="Loc"/>
<DataSourceColumn Type="Query" DSCType="NUMBER" DSCNochildren="false" DSCLength="0" DSCPrecision="2" DSCName="DEPTNO" DSCScale="0" DSCMandatory="false"/>
<DataSourceColumn Type="Query" DSCType="VARCHAR2" DSCNochildren="false" DSCLength="14" DSCPrecision="0" DSCName="DNAME" DSCScale="0" DSCMandatory="false"/>
<DataSourceColumn Type="Query" DSCType="VARCHAR2" DSCNochildren="false" DSCLength="13" DSCPrecision="0" DSCName="LOC" DSCScale="0" DSCMandatory="false"/>
</Block>
<Canvas Name="CANVAS4" ViewportHeight="324" DirtyInfo="true" Height="324" WindowName="WINDOW1" Width="540" ViewportWidth="540" CanvasType="Content">
<Graphics Name="FRAME5" GraphicsText="" FrameTitleOffset="14" Height="108" VerticalMargin="14" GraphicsFontColor="" GraphicsFontSpacing="Ultradense" Width="251" GraphicsFontSize="0" GraphicsFontWeight="Ultralight" StartPromptOffset="7" FillPattern="none" GraphicsFontColorCode="0" HorizontalObjectOffset="0" EdgeBackColor="white" FrameTitle="Departments" ShowScrollbar="true" RecordsDisplayCount="5" LayoutStyle="Tabular" DirtyInfo="true" XPosition="7" Bevel="Inset" GraphicsFontStyle="0" ScrollbarWidth="14" HorizontalMargin="7" FrameTitleSpacing="7" EdgePattern="solid" YPosition="15" GraphicsType="Frame" GraphicsFontName="" LayoutDataBlockName="DEPT"/>
</Canvas>
<ProgramUnit Name="ASK_FROM_USER" ProgramUnitType="Function" ProgramUnitText="FUNCTION ask_from_user RETURN BOOLEAN IS&#10; v_button number;&#10;BEGIN&#10; v_button := SHOW_ALERT('ALERT6');&#10; &#10; if v_button = ALERT_BUTTON2 THEN&#10; RETURN false;&#10; ELSE&#10; RETURN TRUE;&#10; END IF;&#10;END;"/>
<Trigger Name="POST-DATABASE-COMMIT" TriggerText="/*&#10; Created by ABC de Silva&#10; <<<<<..>> &#10; testing for special characters < rock & roll &#10;*/&#10;BEGIN&#10; MESSAGE('*** Records successfully <<<> commmited to the DB. ***');&#10; PAUSE;&#10;END;" DirtyInfo="true"/>
<Window Name="WINDOW1" Height="324" Width="540"/>
</FormModule>
</Module>
Now, we want to read this file with UTL_FILE (in a PL/SQL stored procedure) and fill in the chart above like this:FORM_NAME ITEM_NAME ITEM_TYPE PROPERTY PROPERTY_VALUE
----------------------------------------------------------------------------------------------------------
D_e_p_a_r_t_m_e_n_t_s.fmb ALERT6 Alert Title Saving........................... <>
D_e_p_a_r_t_m_e_n_t_s.fmb DEPTNO Text Item Prompt Dname
D_e_p_a_r_t_m_e_n_t_s.fmb DEPTNO Text Item MaximumLength 3
It's, I went through Google, nobody can give a complete solution. All are partial solutions.Any help will greatly be apprectiated.
Published by: Channa on 30 Sep 2011 06:31
Here goes:
select x1.item_name
, x1.item_type
, x2.property
-- to convert back entities such as
to their character values :
, utl_i18n.unescape_reference(x2.property_value) as property_value
-- parent information :
, x1.parent_item_name
, x1.parent_item_type
from xmltable(
xmlnamespaces(default 'http://xmlns.oracle.com/Forms', 'http://xmlns.oracle.com/Forms' as "def")
, 'for $i in /Module/descendant::*[@def:Name]
return element item {
attribute item_name {data($i/@def:Name)}
, attribute item_type {local-name($i)}
, attribute parent_item_name {data($i/parent::*/@def:Name)}
, attribute parent_item_type {local-name($i/parent::*)}
, $i
}'
passing xmltype(bfilename('TEST_DIR','module2.xml'), nls_charset_id('AL32UTF8'))
columns item_name varchar2(50) path '@item_name'
, item_type varchar2(50) path '@item_type'
, parent_item_name varchar2(50) path '@parent_item_name'
, parent_item_type varchar2(50) path '@parent_item_type'
, item xmltype path '.'
) x1
, xmltable(
xmlnamespaces(default 'http://xmlns.oracle.com/Forms', 'http://xmlns.oracle.com/Forms' as "def")
, 'for $i in /item/*/attribute::def:*
let $propname := local-name($i)
where $propname != "Name"
return element p {
element name {$propname}
, element value {data($i)}
}'
passing x1.item
columns property varchar2(50) path 'name'
, property_value varchar2(500) path 'value'
) x2
;
To make it easier, instead of calculating an ID, the information of the parent are given as (parent_name, parent_type).
Tags: Oracle Development
Similar Questions
-
Impossible to update LR CC ~ my one day to change and nothing work updated my Mac and all LR will do is CRASH! Need help. Tried to stop CC and remove the 1.0 file already and who does not work for me. What can I do?
If lr crashes repeatedly, reset preferences. http://www.lightroomforums.NET/showthread.php?14226-resetting-%28or-trashing-%29-the-light file-Preferences-room
-
I need help to remove Adobe Acrobat. I got the free trial version, and it has expired. I thought I deleted the program, but I get this message "before you proceed you must first launch Adobe Acrobat and accept the end user license agreement." I thought I deleted the program, so I can't seem to be able to throw. I have a MacBook Pro OS x help, please.
This message comes from Adobe Reader; Launch the Reader application and accept the EULA.
-
Need help with this gallery of xml!
I have build a gallery but its very simple... There are pictures of the xml file.
I have attached all the zip files.
I just want two things if anyone can help.
first of all when I press the next button, he's going to the next image, but without effect. It just displays the following image... I want to incorporate the effect of dragging when the image is changed to another.
and secondly, I want to use the AutoPlay feature.
Once swf starts images came one by one with a vertical drop of a few seconds.
Thanks in advance... I really need help with this..!
For the look of sliding effect using the actionscript class Tween. Allows you to create motion tweens using the code. The example below will be tween property _x of the instance named anObject from 0 to 300 in 3 seconds...
import classes before using
Import mx.transitions.Tween;
Import mx.transitions.easing.Regular;TW var = new Tween (anObject, "_x", Regular.easeIn, 0, 300, 3, true);
To implement an enforcement function auto you need to import all the images first, in the order, then you will need to use form any controlled timer, such as setInterval (with clearInterval not to need) in order to have things turn on automatically by some part-time
-
I need help, I forgot my security answers and Email not send to my Email of relief.
I need help, I forgot my security answers and Email not send to my Email of relief.
Unless it is in a spam filter, you have to ask Apple to reset your security questions. To do this, click here and choose a method; If this page does not list one for your country or if you are unable to call, complete and submit this form.
(137175)
-
Need help to install Photoshop Extended CS5 and Photoshop Lightroom 3 on my macbook. No hard drive! I have serial numbers. I paid $1200 for it
Download the competent installers of Adobe
Download Adobe Creative Suite 5 products
Adobe - Lightroom: For Macintosh: Adobe Photoshop Lightroom 3.6
Install, then enter your serial numbers.
-
Need help. My tool Panel disappeared and I need to get it back
Need help. My tool Panel disappeared and I need it back.
Window > tools
-
' I need help. I updated Adobe cc and now my photoshop does not work. Here is the error message:
Problem event name: APPCRASH
Application name: Photoshop.exe
Application version: 16.0.0.88
Application timestamp: 55681d 39
The default module name: StackHash_76b2
The default module version: 0.0.0.0
The default module timestamp: 00000000
Exception code: c0000005
Exception offset: 0000000000000006
The system version: 6.1.7601.2.1.0.768.3
Locale identifier: 3084
Information extra No. 1: 76 b 2
Information extra No. 2: 76b2e5a7b24373bbe6f47563f13e47b1
Information extra No. 3: 51ff
Information extra No. 4: 51ff68a42cf4d2164e10e22e1f794f34
Hi Oscar,.
Please see the thread below:
You can also check: 2015 release of Photoshop CC: FAQ
Kind regards
Sheena
-
Is there a default value for the color management in PSE10? Beautiful photos from iPhoto, but blur with elements. I need help with this before as I consider that the upgrade to PSE13 and beyond.
Printing which forms an angle seems ok, but one that is horizontally seems faded, incomplete.
I was wondering if I saved a layer somewhere and set it as a default value.
If you group the layers, you will be left with a single layer, thus spreading your concern.
Suggest that you do the following:
- Make sure you have the latest drivers for your printers
- Reset the default preferences.
Hold the Alt, Ctrl + Shift keys when you click the icon to open the items. When asked if you want to delete the settings file, say Yes.
Items nearby and let regenerate the file.
-
I have a problem to download a Web of Muse - the following site seems to be the problem - unable to validate the specified domain is associated with the FTP server and folder. Still
In Adobe help, it tells me to download and extract the ftppefs.xml file - it's supposed to be found in the Mac/Library/Preferences/Adobe/Adobe Muse CC/20141 and paste this folder GO.
I checked this place and there is no file. I have re-installed Muse but preference file doesn't show up - where I can get it?
Daryl
Please check the used domain in the domain and the server is entered, it can be the reason for the absence of the field.
Thank you
Sanjit
-
Need to install KB947821 update but fails and displays the error 9370001 code
You will need to install KB947821 update but fails and displays the error code 9370001. Does anyone have a solution?
CrystalBall © SEZ...
Free unlimited installation and compatibility support is available for Windows Vista, but only for Service Pack 2 (SP2). This support, initially planned to end on November 26, 2009, has been extended until February 26, 2010. Availability of support chat or messaging differs depending on your location. Some questions may require that more support for which he is advanced a charge. Go to http://support.microsoft.com/oas/default.aspx?prid=13014&gprid=582034 & select appropriate category (i.e., download problem;) Installation problem; Problems after installing a service pack).
~ Robear Dyer (PA Bear) ~ MS MVP (that is to say, mail, security, Windows & Update Services) since 2002 ~ WARNING: MS MVPs represent or work for Microsoft
-
I need something to smooth out grainy photos and set the color. I have several photos that I need to use which has a blue cast on them. Photoshop will remove the color blue? I need an answer immediately.
Yes, photoshop can remove noise and remove color casts
-
I bought 13 items and seeks the elements + download. exe?
I bought 13 items and seeks the elements + download. exe?
Available downloadable Setup files:
- Suites and programs: CC 2014 | CC | CS6 | CS5.5 | CS5 | CS4, CS4 Web Standard | CS3
- Acrobat: XI, X | 9,8 | 9 standard
- First Elements: 13 | 12 | 11, 10 | 9, 8, 7 win | 8 mac | 7 mac
- Photoshop Elements: 13 | 12 | 11, 10 | 9,8,7 win | 8 mac | 7 mac
- Lightroom: 5.7.1. 5 | 4 | 3
- Captivate: 8 | 7 | 6 | 5.5, 5 | 1
- Contribute: CS5 | CS4, CS3 | 3,2
- FrameMaker: 12, 11, 10, 9, 8, 7.2
Download and installation help links Adobe
Help download and installation to Prodesigntools links can be found on the most linked pages. They are essential; especially steps 1, 2 and 3. If you click on a link that does not have these listed steps, open a second window by using the link to Lightroom 3 to see these "important Instructions".
-
How to connect to an Adobe Javascript(Folder Level Script) SAP Web Service and retrieve the response in a table of the Adobe Javascript/AcroJS. Could you please it explain with an example. I have two required input parameters that must be filled.
I s generic SOAP example/tutorial on my blog: get a serial number in a form using SOAP - KHKonsulting LLC
The web service uses only a single parameter, but you should be able to adapt the code to two arguments without problems.
-
Need help to read the xml file and place it in a table.
Nice day!
Here is the configuration. I have a xml file from another source which will call a stored procedure in my database (which I am supposed to create). This is a first for me, I've never done development pl/sql or worked with xml. :(
That's what I hoped to accomplish, if there is a better way, that I am open to him.
In short, to have a stored procedure that takes the xml file (transmitted by third parties via the call, no url must be a file), creates a temporary table and populates the two columns needed. Then, the SP will make a select join with the temporary table and other data available in another schema. Once the completed table selection will be truncated and dropped. SP farm.
Details:
DB: Oracle 11.2.0.1 RAC.
Charset: AL32UTF8
Example of XML: (nearly 10,000 lines like this in production)
"< MerchantID report =" "#" name = 'Conversion detail report' ReportStartDate = '2011-09-27 12:00:00GMT' ReportEndDate = '2011-09-27 21:38:13GMT"Version ="1.1"> < Conversion = '1234567891234567 D' MerchantReferenceNumber Convertingdate =" 2011-09-27 13:39:02 "RequestID ="1234567891234567891234"> < OriginalDecision > REVIEW < / OriginalDecision > < NewDecision > ACCEPT < / NewDecision > < Reviewer > testusr < / examiner > < ReviewerComments > no reason to reject. < / ReviewerComments > < Notes > < Note Date = "2011-09-27 13:39:02" AddedBy = "testusr" comment = "Took possession" / > < / Notes > < queue > Digital Review < / queue > < profile > Digital orders QA < / profile > < / Conversion > "
...
< / report >
What I tried.
I found a tutorial: http://it.toolbox.com/blogs/oracle-guide/oracle-and-xml-in-action-a-real-world-example-5319 I tried and was able to make it work. But I could not duplicate the results with my xml file. So I looked away and have had no success. :( I'm not a developer, so I'm really bad...
I found a note of support: (how to load an XML file into a Database Table using DBMS_XMLSave unaided Bfile [227476.1 ID]) and couldn't make it work.
I found some online then Odie son xml and tried these but slipped and couldn't get my versions of these great answers to work for me.
Then... I'm here now and hoping that someone could walk me through this.
I tinkered this SP (it doesn't have to be that way, the suggestions are greatly appreciated)
create or replace procedure xml_to_table (call_1 call_2) as
Start
run immediately "CREATE GLOBAL TEMPORARY TABLE XMLType IMRPT
--(clé primaire contrainte-imrpt_pk (MerchantReferenceNumber))
XmlType store as xml binary basicfile
-(high compression)
virtual columns
(MerchantReferenceNumber as (xmlcast (xmlquery ('/ Conversion/MerchantReferenceNumber ' from object_value content back) as VARCHAR2 (32))))
, NewDecision as (xmlcast (xmlquery ('/ Conversion/NewDecision ' from object_value content back) as VARCHAR2 (10)))
)
-ON COMMIT PRESERVE ROWS
run immediately 'save xml as a file on the local system?'
insert into IMRPT (MerchantReferenceNumber, NewDecision)
run immediately "join select statement.
run immediately 'truncate table IMRPT.
run immediately "drop table IMRTP.
end;
/
On my last test, I tried to select just in the xml file using this:
DECLARE
indomdoc DBMS_XMLDOM. DOMDocument;
innode DBMS_XMLDOM. DOMNode;
myParser DBMS_XMLPARSER.parser;
buf VARCHAR2 (2000);
BEGIN
myParser: = DBMS_XMLPARSER.newParser;
DBMS_XMLPARSER.setBaseDir (myparser, 'XML_DIR');
DBMS_XMLPARSER. Parse (myParser, "test.xml");
indomdoc: = DBMS_XMLPARSER.getDocument (myParser);
-just to test content
innode: = DBMS_XMLDOM.makeNode (indomdoc);
DBMS_XMLDOM.writeToBuffer (innode, buf);
Dbms_output.put_line (BUF);
dbms_xmldom.freeDocument (indomdoc);
dbms_xmlparser.freeParser (myParser);
END;
/
It was another accident and burn.
Any help would be appreciated.
Thank youLike I said:
Here is an example using a REF CURSOR variable ( you will need to declare a plus for your actual procedure )
Your procedure has two parameters, you must declare two variables to hold the two REF CURSOR ;)
DECLARE v_filename VARCHAR2(50) := 'DMReport.xml'; v_rc1 SYS_REFCURSOR; v_rc2 SYS_REFCURSOR; v_order_name VARCHAR2(100); v_reason_text VARCHAR2(100); BEGIN xml2table(v_filename, v_rc1, v_rc2); commit; loop fetch v_rc1 into v_order_name; exit when v_rc1%notfound; dbms_output.put_line('ORDER_NAME='||v_order_name); end loop; close v_rc1; loop fetch v_rc2 into v_order_name, v_reason_text; exit when v_rc2%notfound; dbms_output.put_line('ORDER_NAME='||v_order_name||', REASON_TEXT='||v_reason_text); end loop; close v_rc2; END; /
If you test this in SQL * Plus, do not forget to SET SERVEROUTPUT ON to see the result.
Maybe you are looking for
-
change the color of the title effect
For this example of a readymade title: I would like to know how I could change the color (red) behind the title of the text. Let's say, I would like the blue instead, or yellow, or anything else. I tried a number of ways (just getting used to FCP X
-
How can I set up the AEBS as a router with sky Hub as a modem?
I have sky broadband with a Hub of Sky SR102-Z router. I had the problems of slow speed, and the tour engineer told me that it is caused by the interference of a wi - fi connection. I have an Airport Extreme Base Station that I stopped using when I g
-
List numbers blocked/rejected - everything?
Hello is there a way to reject/block unwanted number entering motorcycle G3 (6.0 Android)? There was once such feature in my previous Samsung mobile. -Carlo
-
The power just went out on my Power Mac G5 2 .3GHz and will no longer start up. My question is this. If I pick up another opportunity G5 2 .3GHz and install the hard drive of my computer it starts as usual? I just need to get the files on my computer
-
MX922 project Option grayed out in OSX
Hello What should I do to activate the option 'Project' in the slider quality under OSX (screenshot below)? I have black and white serveral documents mutlipage I want to print without wasting, it seems arbitrary to me that this option could be grayed