Ps query results to xml using xml link function registry
In People tools version 8.46 we need something like where the ps query result output is in the form of XML so that it can be used for external system. The catch I cannot use webservices. It is something like opening peoplesoft queires form excel using hyperlink but in this case we need xml. I looked at David Vandiver's Excel XML libraries which open the data in excel but is there something where the hyperlink output is xml using xml link function registry. I have capatured the data in rowset and now need to create mime type of xml to write the data
thanks in advance
vinn
If I understand correctly, you want to use something like Microsoft Excel's web queries to get data from a PeopleSoft query in XML format. I have never done this before, but if I were to implement this, here is what I would do in PT 8.46:
1. Create an unstructured message in app designer.
2. Create a user that only has access to the queries you want to expose to Excel
3. Write synchronous message handler PeopleCode to call SwitchUser to switch to a specific query user rather than the generic integration broker user and execute a query, returning the results in XML (see [Query.RunToRowsest|http://download.oracle.com/docs/cd/E13292_01/pt849pbr0/eng/psbooks/tpcr/htm/tpcr31.htm#d0e113933] for an example).
4. Call the message through IB using the HTTP GET URL format as defined in PeopleBooks: [http://download.oracle.com/docs/cd/E13292_01/pt849pbr0/eng/psbooks/tibr/book.htm?File=tibr/htm/tibr33.htm#H4026|http://download.oracle.com/docs/cd/E13292_01/pt849pbr0/eng/psbooks/tibr/book.htm?File=tibr/htm/tibr33.htm#H4026].
Similar Messages
-
Gurus,
Is it possible to read/write XML using DB Link?
If yes please let me know how to achieve this.
Thanks in Advance.
VenuYou need to use quoted names. SQL Server data dictionary stores names in same case they were entered while Oracle in upper case. So when you issue
Select test.status from testtable@DBLINK test Oracle parser will look for column STATUS while on SQL Server side it could be stored, for examle, as Status or status. Check column names on SQL Server side and use quoted names. Assuming column name is Status:
Select test."Status" from testtable@DBLINK test SY. -
Hi ,
I am forming XMLs using XMLBeans whose XSDs been provided.
The tag values are coming from the database which I am querying.
and then adding the various tags as per the XSD.
In the End,I am using the ,doc.toString() where doc is the Document object as per the XSD.
and then writing it to a file.
I want to know ,what limitations can this method have or what might be a better way.
Will there be a restriction on the size of the xml being formed??
Thanks in AdvanceI modified the code :
[code]
Select P.PAT_MRN,
XMLELEMENT("Patient",
(XMLELEMENT("pat_mrn", P.pat_mrn)),
(XMLForest(cm_results_o_t(CAST(MULTISET
(SELECT O.COMP_NAME AS "ID"
FROM oper O
WHERE O.ENCOUNTER_ID =
E.ENCOUNTER_ID) AS
component_list_t)) AS
"Results"))) AS Orderxml
FROM PATIENT P
JOIN ENCOUNT E
ON P.PAT_MRN = E.PAT_MRN
AND P.PAT_MRN = '63280'
AND E.ENCOUNTER_ID = 42
[/code]
Need the Res_LIST tag to be removed which is coming from object type. -
Export query result to csv using Export Wizard
Been a decade since I last used Oracle and related tools.
I had to use Oracle server again, I have a query over multiple tables, I am to run a scheduled script that will spit out the query result as a csv file.
I started with SQL Developer Export wizard, in step "Specify Data", I am at a loss, where to specify the query itself? I see a Name,Schema,Type input, a text area below, Up,UpAll,Down,DownAll buttons etc etc. Where do I specify my query here? Can someone please help?
Is this the best way to go about to schedule a data export (query to csv) daily?To export a user query rather than a whole table, run it in a worksheet and export using the context menu on the result grid. However none can be scheduled.
Instead you can look at the SPOOL command and schedule it through SQL*Plus. Any questions can go to the iSQL*Plus and/or SQL And PL/SQL forum.
Have fun,
K. -
Retrieving BEx Query Results Area for use in Excel formulas
Hello,
I run BEx queries in workbooks and then use Excel formulas ( mostly VLOOKUP(LookupValue, ResultsArea, ColumnReturned,) ) to retrieve certain information from the query ResultsArea.
****Problem:
Depending on the query parameters, the query "Results Area" is larger or smaller.
****Non-optimal solution:
One way to define the ever changing Excel range occupied by the Results Area is to create an Excel name as:
QueryRange = OFFSET(QueryFirstCell,,,COUNTA(OFFSET(Sheet1!$A:$A,,COLUMN(QueryFirstCell)-1,,)),COUNTA(OFFSET(Sheet1!$1:$1,ROW(QueryFirstCell)-1,,,)))
Then, the only input required is the top-left cell of the Results Area, which stays the same (unless the query definition changes).
****Question
What is the best way to refer to an ever-changing query Results Area in an Excel formula?
Thank you!
LouisIt is actually much easier than that.
Use a VBA statement like the following:
Set RptRng = ActiveCell.CurrentRegion
This will retrieve the data in the Results Area, no matter what the size is.
Hope this helps...
Bob -
Parsing xml using the .text() function in as3
I am accessing an xml document in actionscript, I know flash can see the xml as I am tracing it but when I add the .text() funtion to my trace to strip out the tags by trace doesn't see anything.
this works...
function LoadXML(e:Event):void {
xmlData = new XML(e.target.data);
ParseXML(xmlData);
function ParseXML(thexmlInput:XML):void {
trace("XML Output");
trace("------------------------");
trace(thexmlInput.wrapper.page);
this doesn't...
function LoadXML(e:Event):void {
xmlData = new XML(e.target.data);
ParseXML(xmlData);
function ParseXML(thexmlInput:XML):void {
trace("XML Output");
trace("------------------------");
trace(thexmlInput.wrapper.page.text());The text() function returns an XMLList object, not a string literal.
To trace out the return of XML.text() - you need to loop through the object.
var xmlText:XMLList = myXML.text();
for each (var i:String in xmlText){
trace(i);
Or you could use the toString() method instead.
trace(myXML.toString());
(The reason your first code works is because toString is automatically applied to trace statements, unless you specify something different) -
Generating a XML using XML Schema
Hi,
I have a requirement where I need to generate a XML which should follow XML Schema. If XML schema changes, i should still be able to generate XML file. Any sample code or idea will help me.http://java.sun.com/webservices/jaxb/users-guide/jaxb-using.html
This tutorial is a good place to start. ideally you will use the xjc.bat file present in
jwsdp-2.0 (thats whaty i use) to generate a package full of classes that corresponds to your
schema.
Use ANT-build script to generate this package then you will do some marshalling
followed by validating against a DTD, and unmarshalling - to do get java objects out of XML -
Get query results to itab; using RSCRMBW_REPORT?
Hi,
I am interested in "calling" a BW query from an R/3 system and getting the results in an internal table. I'm on the path of using function module RSCRMBW_REPORT, but I'm not sure how to use it since I keep getting an error: "Could not find query definition:" - maybe I am not using the correct parameters?
Currently I'm using:
I_MODE OPEN
I_REPORTUID Z0VENDOR_TEST >>>the name of the query that I'm trying to test
(along with the defaults).
If anyone can please help out; I'd really appreciate it
Thanks!!Hi
look at these threads:
Re: Calling BW queries programatically
Re: RSCRM_BAPI
I hope it helps.
Edan -
Displaying Query Results as Hyperlinks using PHP
I have a table returning a query, one of the fields returns
an email address. I want to link this so the admin user can click
on it and have his or her email client open to that address. The
address does not go in the DB as a link. Here is the code:
.$row[4]. being the returned value, I tried adding a <a
href='mailto:'> the value</a> several different ways but
it just breaks the page. any insight?
Thanks,
Stevesteevo2 wrote:
> Thanks, it didn't work , but got me going in the right
direction. double
> quotes will not work inside any tag
Complete nonsense. The reason it didn't work is because I
missed out a
single quote. The correct code is this:
echo '<td width="175"><a
href="mailto:'.$row[4].'">'.$row[4].'</a></td>';
Note the extra single quote after the first $row[4].
> Double quotes do work outside of tags, I have them
surrounding the rest of my
> table tag elements, but single quotes work in that
respect as well.Thanks for
> responding, plan on getting your books soon.
If you get one of my books, you'll find a detailed discussion
of the
difference between single and double quotes, and how to mix
them. It's a
subject that confuses many beginners. And, as my mistake
shows, it
catches out more experienced people too. The difference
between a
beginner and a more experienced developer is that the latter
can spot
more quickly where the error lies.
> I must confess, pulling this off
> in CF is much easier. But hey, open source is free. I
use CF at work and PHP at
> home.
Personally, I don't find CF easier, but I'm sure it's more a
question of
what you're used to, rather than one being "easier" than the
other.
David Powers, Adobe Community Expert
Author, "The Essential Guide to Dreamweaver CS3" (friends of
ED)
Author, "PHP Solutions" (friends of ED)
http://foundationphp.com/ -
Straight SQL query results are considerably faster than a FUNCTION...
Hey all,
First time new poster, long time reader.
I have a function that calls a specific query with 2 variables. When I execute the query and hardcode the values, it executes <strong>much </strong>quicker than when the function is called, and the values are passed. I'll give some examples below... here's the full function:
FUNCTION get_golf_gameplay_completed (
p_cabinet_id_in NUMBER,
p_days_back_in NUMBER
RETURN ref_cursor
IS
cu_ref_cur ref_cursor;
BEGIN
OPEN cu_ref_cur FOR
SELECT golf_game_data.cabinet_id, golf_game_data.player_num,
TO_CHAR
(global_utility_pkg.cnvrt_gmt_to_local_time_by_cab
(golf_game_data.cabinet_id,
golf_game_data.server_start_time,
golf_game_data.server_start_time
'MM/DD/YYYY HH:MI:SS AM'
) cab_local_event_timestamp,
TO_CHAR
(global_utility_pkg.cnvrt_gmt_to_local_time_by_cab
(golf_game_data.cabinet_id,
golf_game_data_end_time.server_end_time,
golf_game_data_end_time.server_end_time
'MM/DD/YYYY HH:MI:SS AM'
) cab_local_session_end,
TO_CHAR
(global_utility_pkg.cnvrt_gmt_to_local_time_by_cab
(golf_game_data.cabinet_id,
golf_game_data_end_time.server_end_time,
golf_game_data_end_time.server_end_time
'HH:MI:SS AM'
) cab_local_session_end_time,
TO_CHAR
(global_utility_pkg.cnvrt_gmt_to_local_time_by_cab
(golf_game_data.cabinet_id,
golf_game_data_end_time.server_end_time,
golf_game_data_end_time.server_end_time
'MM/DD/YYYY'
) cab_local_server_end_date
FROM golf_game_data INNER JOIN golf_game_data_end_time
ON golf_game_data.cabinet_id =
golf_game_data_end_time.cabinet_id
AND golf_game_data.player_num =
golf_game_data_end_time.player_num
AND golf_game_data.session_id =
golf_game_data_end_time.session_id
WHERE golf_game_data.cabinet_id = {color:#ff0000}<strong>p_cabinet_id_in</strong>{color}
AND golf_game_data_end_time.cabinet_id = {color:#ff0000}<strong>p_cabinet_id_in</strong>{color}
AND golf_game_data_end_time.server_end_time IS NOT NULL
AND golf_game_data.server_start_time >= SYSDATE - {color:#ff0000}<strong>p_days_back_in</strong>{color}
ORDER BY golf_game_data_end_time.server_end_time;
RETURN cu_ref_cur;
END get_golf_gameplay_completed;
I've highlighted the variables for readability.
This is how I've been executing the function from the SQL*Plus command line:
select tech_report_package.get_golf_gameplay_completed(122477,10) from dual;
The speed differences between running the raw query versus the function as a whole have been driving me nuts. For the cabinet IDs (the first variable inserted - in the case above, it would be 122477) that have a high amount of activity on the GOLF_GAME_DATA table, the query itself returns results within a few seconds (usually under 10 seconds even for the most bloated data). However, the function, when called with the same IDs, takes minutes - as long as 3 or 4 minutes in some cases.
I've run various tests in a cloned production environment, and we've isolated any possible issues with networking, data contention, and partitioning (the GOLF_GAME_DATA table is not partitioned) - the issue is simply the query speed versus function speed, with no external influences.
What baffles me is the fact that the function is very basic - all it does it executes the query and returns the results, just like the query... the only difference being the cursor that's opened.
So, getting back to square one; my question was: <u>why would any query run much quicker than a function that does nothing but call the same query?</u>
Any thoughts?
Thanks
-BobNo change after using that parameter in the session.
Any other ideas? I was playing with results with one of my coworkers and my manager, and we were unable to produce any results that were, well, reproducable. Even after <strong>shutting the database down</strong>, and starting it back up, it seems that the results from some of the example queries that we were running were being cached on the SAN which hosts the database's files, or cached and restored after the instance was started up.
FYI - we test on an instance that mimics production. It's a clone that's produced once a day against the production database, and has no user contention. We bring it up, and are able to test things like we would in production with no other users on the instance at the same time. We are still seeing slow results. -
Query performance affected with use of package.function in 11g
Hi,
I have a view that helps select account details for a particular account and use that in a form. The query in the view is:
select acc.* from accounts acc where acc.account_no = pkgacc.fGetAccNo;
Here "pkgacc" is a package that has set and get methods. ACCOUNT_NO is the PK for ACCOUNTS table. This same query when run in a 10g database makes use of the PK INDEX. However in 11g it does a FULL SCAN.
RegardsHi,
1/ Volume is the same
2/ All statistics are up to date
10g Plan
Plan
SELECT STATEMENT ALL_ROWS
Cost: 18 Bytes: 462 Cardinality: 3
23 NESTED LOOPS
21 NESTED LOOPS
Cost: 18 Bytes: 462 Cardinality: 3
19 VIEW VIEW SYS.VW_NSO_1
Cost: 12 Bytes: 39 Cardinality: 3
18 HASH UNIQUE
Cost: 12 Bytes: 110 Cardinality: 3
17 UNION-ALL
2 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.OLD_ACCOUNT_LINKS
Cost: 0 Bytes: 25 Cardinality: 1
1 INDEX RANGE SCAN INDEX SUMMIT.OACCL_2
Cost: 0 Cardinality: 1
8 NESTED LOOPS
6 NESTED LOOPS
Cost: 7 Bytes: 40 Cardinality: 1
4 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.ACCOUNTS
Cost: 4 Bytes: 18 Cardinality: 1
3 INDEX RANGE SCAN INDEX (UNIQUE) SUMMIT.ACC_PRIME
Cost: 3 Cardinality: 1
5 INDEX RANGE SCAN INDEX SUMMIT.ACCL_2
Cost: 2 Cardinality: 1
7 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.ACCOUNT_LINKS
Cost: 3 Bytes: 22 Cardinality: 1
16 NESTED LOOPS
Cost: 5 Bytes: 45 Cardinality: 1
14 MERGE JOIN CARTESIAN
Cost: 5 Bytes: 30 Cardinality: 1
10 TABLE ACCESS BY INDEX ROWID TABLE CVC.ACT01
Cost: 3 Bytes: 15 Cardinality: 1
9 INDEX RANGE SCAN INDEX (UNIQUE) CVC.PK_ACT01
Cost: 2 Cardinality: 1
13 BUFFER SORT
Cost: 2 Bytes: 30 Cardinality: 2
12 TABLE ACCESS BY INDEX ROWID TABLE CVC.ACF02
Cost: 2 Bytes: 30 Cardinality: 2
11 INDEX RANGE SCAN INDEX (UNIQUE) CVC.PK_ACF02
Cost: 1 Cardinality: 2
15 INDEX UNIQUE SCAN INDEX (UNIQUE) CVC.PK_BIT41
Cost: 0 Bytes: 15 Cardinality: 1
20 INDEX UNIQUE SCAN INDEX (UNIQUE) SUMMIT.CUST_PRIME
Cost: 1 Cardinality: 1
22 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.CUSTOMERS
Cost: 2 Bytes: 141 Cardinality: 1
11g Plan
Plan
SELECT STATEMENT ALL_ROWS
Cost: 1,136,322 Bytes: 138,218,223,528 Cardinality: 897,520,932
19 HASH JOIN
Cost: 1,136,322 Bytes: 138,218,223,528 Cardinality: 897,520,932
1 TABLE ACCESS FULL TABLE SUMMIT.CUSTOMERS
Cost: 14,455 Bytes: 355,037,154 Cardinality: 2,517,994
18 VIEW VIEW SYS.VW_NSO_1
Cost: 20,742 Bytes: 11,685,473,072 Cardinality: 898,882,544
17 HASH UNIQUE
Cost: 20,742 Bytes: 35,955,720,360 Cardinality: 898,882,544
16 UNION-ALL
3 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.OLD_ACCOUNT_LINKS
Cost: 0 Bytes: 25 Cardinality: 1
2 INDEX RANGE SCAN INDEX SUMMIT.OACCL_2
Cost: 0 Cardinality: 1
8 HASH JOIN
Cost: 20,354 Bytes: 35,951,952,800 Cardinality: 898,798,820
5 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.ACCOUNTS
Cost: 5,398 Bytes: 1,400,292 Cardinality: 77,794
4 INDEX RANGE SCAN INDEX (UNIQUE) SUMMIT.ACC_PRIME
Cost: 102 Cardinality: 28,006
7 TABLE ACCESS BY INDEX ROWID TABLE SUMMIT.ACCOUNT_LINKS
Cost: 4,634 Bytes: 4,575,208 Cardinality: 207,964
6 INDEX RANGE SCAN INDEX SUMMIT.ACCL_2
Cost: 145 Cardinality: 37,433
15 HASH JOIN
Cost: 388 Bytes: 3,767,535 Cardinality: 83,723
10 TABLE ACCESS BY INDEX ROWID TABLE CVC.ACT01
Cost: 271 Bytes: 4,065 Cardinality: 271
9 INDEX RANGE SCAN INDEX (UNIQUE) CVC.PK_ACT01
Cost: 3 Cardinality: 342
14 HASH JOIN
Cost: 115 Bytes: 92,580 Cardinality: 3,086
12 TABLE ACCESS BY INDEX ROWID TABLE CVC.ACF02
Cost: 76 Bytes: 46,290 Cardinality: 3,086
11 INDEX RANGE SCAN INDEX (UNIQUE) CVC.PK_ACF02
Cost: 4 Cardinality: 555
13 INDEX FAST FULL SCAN INDEX (UNIQUE) CVC.PK_BIT41
Cost: 38 Bytes: 557,220 Cardinality: 37,148 -
Returning query results in XML format
Besides using custom tag library, does anyone know any methods or techniques that i can retrive the query results from database in XML format. for example, i have a table named student in database like this:
StudentNo Name Gender Degree
123 Tony male B.Comp.Sci.
456 Tom male B.Fiance
343 Mary female B.Accountingso, if i have query select * from table student, i would get someting like the following:
<row>
<studentNo>123</studentNo>
<name>Tony</name>
<Gender>male</Gender>
<Degree>B.Comp.Sci</Degree>
</row>
<row>
<studentNo>456</studentNo>
<name>Tom</name>
<Gender>male</Gender>
<Degree>B.Finace</Degree>
</row>
The reason i am asking for this is i need query results returned in XML format, so i can wrap XSLT tag around, and apply for HTML, WML, and XHTML template resprectively so i can display them on different terminals. any help is appreciated.I have this method in a ResultSetMapper class:
* Return result sets as an XML stream, with root tag named
* "results", one "result" tag per row, and "result" child tag
* names equal to the column name
* @param query result set
* @param list of column names to include in the result map
* @throws SQLException if the query fails
* @throws JDOMException if the XML stream creation fails
public static final Document toJDOM(ResultSet rs, List wantedColumnNames)
throws SQLException, JDOMException
Element rows = new Element("results");
int numWantedColumns = wantedColumnNames.size();
while (rs.next())
Element row = new Element("result");
for (int i = 0; i < numWantedColumns; ++i)
String columnName = (String)wantedColumnNames.get(i);
Object value = rs.getObject(columnName);
row.addContent(new Element(columnName).setText(value.toString()));
rows.addContent(row);
return new Document(rows);
}It uses JDOM from www.jdom.org. - MOD -
Splitting columns using xml path
Please see my script below,
This is one of the msdn user request but as he is newbie unable to put ddl and dmls.. but all he wants is doing pivot on values.. but I'm trying the same using dynamic pivot which I'm not able to achieve. Help is appreciated.
Table Script:
create table #temp(
ProjectNO int,projectname varchar(10),client varchar(10),programmers varchar(10));
declare @cols AS nvarchar(MAX)
,@QUERY AS NVARCHAR(MAX);
Insert into #temp
Select 01 , 'ave' , 'zica' , 'dee'
UNION
Select 01, 'ave', 'zica ', 'law'
UNION
Select 01 ,'ave', 'zica', 'amy'
UNION
Select 01 , 'ave' , 'rowan' , 'dee'
UNION
Select 01 ,'ave' ,'rowan' ,'law'
UNION
Select 01 ,'ave' ,'rowan' ,'amy'
Select * from #temp
Question 1: Desired output:
ProjectNO. Prjtname Clt1 Clt2 Prog1 Prog2 Prog3
01 ave zica rowan dee law amy
Question 2: Query:
Select distinct Replace((select distinct convert(char(8),client)
from #temp
FOR XML path('')) ,'";;#;;"',' ') as clients
FROM #temp
GROUP BY ProjectNO
In the above query I'm doing xml path and I'm getting result in single row like
clients
rowan zica
Instead can I get result like below using xml path?
client1 client2
rowan zica
- please mark correct answersFor this particular problem we don't want to use XML path. I already answered in the other thread with a link to this article
T-SQL:
Dynamic Pivot on Multiple Columns
Let me know if using that article code you will be able to achieve the goal. It's rather simple, actually, I can write up the mock up idea.
declare @MaxClients int, @MaxProgrammers int
select @MaxClients = max(ClientsCount) from (select ProjectNo, count(distinc(Client)) as ClientsCount from #Temp GROUP BY ProjectNo) X
select @MaxProgrammers = max(ProgrammersCount) from (select ProjectNo, count(distinc(Programmer)) as ProgrammersCount from #Temp GROUP BY ProjectNo) X
declare @SQL nvarchar(max), @Loop int
set @Loop = 1
Actually, that't the beginning of the idea and you should be able to figure this out till completion based on the article I pointed out. We would need to use 2 dense_rank functions.
For every expert, there is an equal and opposite expert. - Becker's Law
My blog
My TechNet articles -
How Do You Use XML To Create Image Upload On A WebSite?
Hello,
Could some one please help me understand how to create web image gallery and web video gallery using XML? I have found few xml codes that could be used to do this but I am not so sure how to use them. I want my clients to be able upload images and videos with linking thumbnails to Image and or Videos. Do you think the codes I included in this question will help me achive this goal? And do I need to put all in one and in the same directory so it will work? Please help with your idea and tell me how you would use these codes and how you may step-by-step implement the idea your self to your own web site.
I have also included the instruction I found on the web with the codes.
Starting with You Tube, API on their video gallery, here are the codes I found,
Assume you are to use the YouTube, XML code; What will you change here so it will work on your own www.domain.com?
<% Dim xml, xhr, ns, YouTubeID, TrimmedID, GetJpeg, GetJpeg2, GetJpeg3, thumbnailUrl, xmlList, nodeList, TrimmedThumbnailUrl Set xml = Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
xml.async = False
xml.setProperty "ServerHTTPRequest", True
xml.Load("http://gdata.youtube.com/feeds/api/users/Shuggy23/favorites?orderby=updated") If xml.parseError.errorCode <> 0 Then
Response.Write xml.parseError.reason End If Set xmlList = xml.getElementsByTagName("entry") Set nodeList = xml.SelectNodes("//media:thumbnail") For Each xmlItem In xmlList
YouTubeID = xmlItem.getElementsByTagName("id")(0).Text
TrimmedID = Replace(YouTubeID, "http://gdata.youtube.com/feeds/api/videos/", "")
For Each xmlItem2 In nodeList
thumbnailUrl = xmlItem2.getAttribute("url")
Response.Write thumbnailUrl & "<br />"
Next Next
%>
For the image gallery, the following are the codes I found with your experience do I need to use the entire codes or just some of them that I should use?
CODE #01Converting Database queries to XML
Using XML as data sources presumes the existence of XML. Often, it is easier to have the server create the XML from a database on the fly. Below are some scripts for common server models that do such a thing.
These are starting points. They will need to be customized for your particular scenario.
All these scripts will export the data from a database table with this structure:
ID: integer, primary key, autoincrement
AlbumName: text(255)
ImagePath: text(255)
ImageDescription: text(2000)
UploadDate: datetime
The output of the manual scripts will look like:
<?xml version="1.0" encoding="utf-8" ?>
<images>
<image>
<ID>1</ID>
<album><![CDATA[ Family ]]></album>
<path><![CDATA[ /family/us.jpg ]]></path>
<description><![CDATA[ here goes the description ]]></description>
<date><![CDATA[ 2006-11-20 10:20:00 ]]></date>
</image>
<image>
<ID>2</ID>
<album><![CDATA[ Work ]]></album>
<path><![CDATA[ /work/coleagues.jpg ]]></path>
<description><![CDATA[ here goes the description ]]></description>
<date><![CDATA[ 2006-11-21 12:34:00 ]]></date>
</image>
</images>
These are all wrapped in CDATA because it is will work with all data types. They can be removed if you know you don't want them.
Note: If using the column auto-generating versions, ensure that all the column types are text. Some databases have data type options like 'binary', that can't be converted to text. This will cause the script to fail.
CODE #02ASP Manual: This version loops over a query. Edit the Query and XML node names to match your needs.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Dim MM_conn_STRING
MM_conn_STRING = "dsn=image_gallery;uid=xxxx;pwd=xxxx"
%>
<%
Dim rsImages
Dim rsImages_cmd
Dim rsImages_numRows
' Query the database and get all the records from the Images table
Set rsImages_cmd = Server.CreateObject ("ADODB.Command")
rsImages_cmd.ActiveConnection = MM_conn_STRING
rsImages_cmd.CommandText = "SELECT ID, AlbumName, ImagePath, ImageDescription, UploadDate FROM images"
rsImages_cmd.Prepared = true
Set rsImages = rsImages_cmd.Execute
' Send the headers
Response.ContentType = "text/xml"
Response.AddHeader "Pragma", "public"
Response.AddHeader "Cache-control", "private"
Response.AddHeader "Expires", "-1"
%><?xml version="1.0" encoding="utf-8"?>
<images>
<% While (NOT rsImages.EOF) %>
<image>
<ID><%=(rsImages.Fields.Item("ID").Value)%></ID>
<album><![CDATA[<%=(rsImages.Fields.Item("AlbumName").Value)%>]]></album>
<path><![CDATA[<%=(rsImages.Fields.Item("ImagePath").Value)%>]]></path>
<description><![CDATA[<%=(rsImages.Fields.Item("ImageDescription").Value)%>]]></description>
<date><![CDATA[<%=(rsImages.Fields.Item("UploadDate").Value)%>]]></date>
</image>
<%
rsImages.MoveNext()
Wend
%>
</images>
<%
rsImages.Close()
Set rsImages = Nothing
%>
CODE #03
Automatic: This version evaluates the query and automatically builds the nodes from the column names.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Dim MM_conn_STRING
MM_conn_STRING = "dsn=image_gallery;uid=xxxx;pwd=xxxx"
%>
<%
Dim rsAll
Dim rsAll_cmd
Dim rsAll_numRows
' Query the database and get all the records from the Images table
Set rsAll_cmd = Server.CreateObject ("ADODB.Command")
rsAll_cmd.ActiveConnection = MM_conn_STRING
rsAll_cmd.CommandText = "SELECT * FROM Images"
rsAll_cmd.Prepared = true
Set rsAll = rsAll_cmd.Execute
' Send the headers
Response.ContentType = "text/xml"
Response.AddHeader "Pragma", "public"
Response.AddHeader "Cache-control", "private"
Response.AddHeader "Expires", "-1"
%><?xml version="1.0" encoding="utf-8"?>
<root>
<% While (NOT rsAll.EOF) %>
<row>
<%
For each field in rsAll.Fields
column = field.name
%>
<<%=column%>><![CDATA[<%=(rsAll.Fields.Item(column).Value)%>]]></<%=column%>>
<%
Next
%>
</row>
<%
rsAll.MoveNext()
Wend
%>
</root>
<%
rsAll.Close()
Set rsAll = Nothing
%>OK, I understand - thanks for that.
I thought the whole process was supposed to be a bit more seemless? Having to upload/download documents and manually keep them in sync will leave a lot of room for errors.
It's kinda painful the way iOS doesn't have folders. It makes things incompatible with the Mac and means you can't group files from multiple apps into a single project - who organises their digital life by the apps they use?
I think I'll recommend they use their iPad only.
Thanks for that.
Cheers
Ben -
Using Query Results in Queries
I understand how to "Using Query Results in Queries" through
this link:
http://www.adobe.com/livedocs/coldfusion/5.0/Developing_ColdFusion_Applications/queryDB11. htm;
However, does anyone know how to do this inside a component?
note: the first query gets parameters through a form and the second
query is called through a grid bind.I didn't read the link, but there are two ways to use query
results in other queries. At least two that I know about.
One is to use valuelists. Since your link was for Cold Fusion
5, that's probably what they mentioned.
The other is with Query of Queries.
You do it in a component the same way you do it in a
template.
Maybe you are looking for
-
IMovie HD 6 Stopped Controlling Sony DCR-PC350
I just upgraded from iMovie HD to iMovie HD 6 and began attempting to import a widescreen format movie from my Sony DCR-PC350 into iMovie HD 6. I've been using this HandyCam successfully through iMovie 5 and iMovie HD... both controlled the camera fl
-
Just to say thanks to Rich Flemming
Rich Flemming answered a question of mine on the 7th of June and I just wanted to say thanks. I didn't want to post it on the same page as the page was marked as answered and you probably wouldn't see it. Anyway, thanks your a STAR! Other OS Ot
-
Date validation in ABAP Webdynpro.
Hi, I have created a field for date in my table and binded it with a field of a data dictionary table . The problem is when the user enters the year , whether one , two or three digits it automatically sets the remaining digits and the year is a
-
How to enable IPS IPS/IDS in cisco 2811
Hi all, I have a Cisco 2811 with IOS Version 12.4(20)T and I need to enable IPS or IDS in this. What is the config for this? First of all, I need to know whether I can do IPS/IDS in my router as well.. - Ribin
-
I've been using Adobe Photoshop Elements 3.0 to edit photo's and create graphic images quite some time so I have a few thousand images/creations in its Organizer. I'm going to replace my Desktop computer soon and I like to know how to port all of t