Solved

ADOExpress problems !

Posted on 2001-07-02
6
170 Views
Last Modified: 2010-04-06
Hi!

I have a few problems. Let me first say that im a newbie at ADOexpress.
(Problem) It's like this ;
Im creating an application(.)where The user selects tables in a database. After the user has selected these tables, the application is supposed to save these (Recordsets) tables in  XML file(s). The application should also support, that the user selects an XML file and updates a table in the database.

So my question is.
What component in ADOExpress should i use to save and load xml files, I've read something about RecordSets...?.
I need some code Example in c++ or op, pleace.!
(I use BCB 5.0 )



?
Let me write some pseudo code.
-- first bit ----
do while list not Nil
 RecordList[i] =  get Recordset from table list()
  i+1
 list.next()
..
for i to i.length() i+1
SaveInXML.RecordList[i]

--- second bit.----

do while list not Nil
 Recordlist[i] = openXMLFile(list)
 i+1
 list.next()
...
for i to i.length() i+1
UpdateTable[list].RecordList[i]
-- end ---

/ wr Henrik Franzen
0
Comment
Question by:swingfly
  • 3
  • 2
6 Comments
 
LVL 1

Accepted Solution

by:
bnemmers earned 50 total points
Comment Utility
Try using the SaveToFile & LoadFromFile using an
ADODataSet. Here's some sample code.



procedure TForm1.Button1Click(Sender: TObject);
begin
  ADOTable1.SaveToFile('C:\TestXML.xml', pfXML);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  if (FileExists('C:\TestXML.xml')) then
    ADOTable2.LoadFromFile('C:\TestXML.xml')

end;

Good luck.
Bill
0
 

Author Comment

by:swingfly
Comment Utility
Its not hard to load and save to an XML file, the problem is how do you update a database with an open XML file!
0
 
LVL 1

Expert Comment

by:bnemmers
Comment Utility
I assume you will not know what or if any record were updated, added or deleted.

Because in a sense you have two complete data set. Which one will be the master copy the new xml or the current table in the db?  
Without some control over the xml file you might have to step through each record in the 2nd (XML file) record set and update, insert or delete from the 1st record set (master db).
I would create the same index on both dataset to
insure that you have the same sort order then compare each record against the master db.
 
The best way would have some type of flag in the xml file that would identify what occurred, insert, update or delete.
Then you could just step through the xml dataset and based on the status of the flag perform the needed action on the master db.
0
What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

 

Author Comment

by:swingfly
Comment Utility
Yes, thats true, but can't you solve the problem by using updatebatch ?.. That would be a nice solution, but it doesn't seem to work.


Pesudo :
Temp openXML
ConnectionOpen
Temp use ConnectionOpen
Temp.updatebatch
0
 
LVL 1

Expert Comment

by:bnemmers
Comment Utility
From what I understand ADODataSet.UpdateBatch is like transaction control. Where you can post all of your changes
at the same time or cancle them also. I'm not aware of any
replacement for TBatchMove from BDE that woks for ADO.
You might have to write you own.

Bill
0
 

Expert Comment

by:SpideyMod
Comment Utility
Force Accepted

SpideyMod
Community Support Moderator @Experts Exchange
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now