12. juni 2001 - 10:00Der er
21 kommentarer og 1 løsning
DB Udtræk skrives til text fil ????
Jeg har et program hvor jeg trækker noget ud fra en Database med en Query og smider det ned i en DBGrid, men jeg vil gerne have det skrevet til en fil. Hvordan gøres dette??
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hmmmm, jeg er faktisk ikke klar over om du skal \"op i\" en Enterprise før du har MIDAS med eller om den også finde i D5 Developer udgaven. Men HVIS du har MIDAS i din Delphi så kan ClientDataSet bruges til formålet.
MIDAS er egentlig beregnet på at din applikation \"snakker samme med\" (evt. via internette) med en Applikations server (som igen \"snakker sammen med\" en database server). MIDAS\'s ClientDataSet har dog den fordel at data kan skrives til/hentes fra en ekstern fil: \"EtEllerAndetClientDataSet.LoadFromFile(NavnPaaFilen);\".
Hvis ikke du har en MIDAS så kan du som nævnt (med mindre du selv vil programmere det) brugen en eller anden MemoryTable. Jeg anvender selv en der hedder TdxMemData, men denne er en dele af et købe produkt (DevExpress). RxLib har en MemoryTable i deres samling (http://www.rxlib.com/), men jeg kan på stående fod ikke huske hvorvidt den kan gemme til/læse fra fil. En rimeligt rost produkt er \"TkbmMemTable\" (http://www.optical.dk/delphi/products.htm).
Personligt tror jeg at jeg ville bruge en MemoryTable. TkbmMemTable er freeware og jeg har ligehentet den (for at se hvad det var jeg foreslog dig <G>). Såvidt jeg kan se har den både save og load til eksterne filer, samt den har en \"overføre fra DataSet\" funktion.
Jeg ville således gøre din query, overflytte alle data til MemoryTabel\'en (et kald) og så er det denne der vises i griden. Når du (eksempelvis) lukker formen så gemmes din MemoryTable til disk.
Nu har jeg lige siddet og prøvet mig lidt frem med denne her Memory tabel, jeg kan ikke rigtigt få fat på den, hvordan fik du fat på: kbmMemTable det er vel det der Attached to felt der skal bruges til at få fat på ens Query ??
Jeg vil nu stadig anbefale dig at se på QReport komponenterne
Nedenstående er fra QReport hjælpen
Filters Sometimes, instead of printing or displaying it directly, you need to export data from your database to another format. QuickReport comes complete with three filter components that let you do this quickly and easily for their respective formats. Simply drop the export filter onto the same form as the report, and the file format appears in the drop-down list of the Save To file dialog in the preview. Registration is automatic, and you don’t need to code a thing! (Don’t worry - you can export a report programmatically too if you wish – see below.) Note that not all printable components are exported by filters. Specifically, only the contents of the following text-producing components appear in exported data: TQRLabel, TQRDBText, TQRExpr, TQRMemo, TQRSysdata and TQRExprMemo. TQRTextFilter. ‘Text’ format: exports the contents of the report in plain ASCII, using spaces to separate fields. TQRCSVFilter. CSV format: exports the report as ‘Comma Separated Variables’. As well as using a comma to separate fields, this filter places “double quotes” around them, which allows you to have commas within the fields themselves. This format is easily imported into spreadsheets such as Microsoft Excel. By the way, the component has a Separator property that specifies the character used to separate the fields. By default this value is set to ‘,’ comma, but it can be changed to match your requirements. TQRHTMLFilter. HTML format: exports the report to a HyperText Markup Language file, as used in web browsers, some emailers, help systems and many other places. It is also possible to call filters explicitly from code. This fragment uses the HTML filter. quickrep1.ExportToFilter( TQRHTMLDocumentFilter.Create(\'c:\\report.txt\')); To use the Text or CSV filters in this way, use the same ExportToFilter call but instantiate a TQRAsciiExportFilter or TQRCommaSeparatedFilter object as appropriate.
morten_s> Hvis ikke mr_green i forvejen bruger QR så vil dette give ET STORT overhead. Jeg har umiddelbart ikke testet det, men skal jeg komme med et kvalificeret gæt vil jeg tro at brugen af QR får EXE-filens størrelse til at stige med 500-800 KB
pellelil> Jeg har ummidelbart et problem med den der TkbmMemTable den melder fejl i min uses list nå jeg prøver at kompilere det, jeg laver muligvis en fejl når jeg installerer komponenten, jeg følger readme filen men det virker ikke?
Jeg var heller ikke selv vidre \"forgrint\" over demoprogrammet til TkbmMemTable (men hvad kan man næsten forvente til \"den pris\" <G>). Det endte med at jeg kopierede Compress-unitet (husker ikke dens korrekte navn) over i samme folder som Demoprogrammet.
Muligvis det er samme problem du har? ellers bliver du nødt til at beskrive din fejl NOGET MERE konkret. Jeg skal med det samme sige at jeg ikke selv bruger TkbmMemTable (da jeg som nævnt tidligere benytter en der er en del af et købe produkt), men det jeg har hørt om TkbmMemTable har være MEGET positivt (så umiddelbart kan jeg kun forestille mig at den til fulde kan \"løse problemet\").
Jeg har lige prøvet med QReporten, og det virkede da umiddelbart rimeligt simpelt jeg fik ihvertfald skrevet til en text fil uden problemer, så jeg takker mange gange for hjælpen, morten_s får pointene
I min bog er 400 Kb MEGET \"bare\" for at kunne skrive til en tekstfil, men så\'n er det nok når man har vært med fra den gang programmerne ikke måtte fylde noget :-)
Ja det var tider med Poly-pascal et program kunne maks fylde 64 kB der blev kun genereret COM filer husker du da den kom til at hedde Turbo 3 hvor vi kunne lave Overlays sikke en fest ?
hov hov - Anders\'s gode gamle Poly-Pascal kunne også lave overlays. Det var \"tider\" hvor man kunne bruge laaaangtid på at finde ud af hvilke ting der skulle i hvilke overlay filer samt hvilke ting der skulle ligge i \"hoved-programmet\" (streng-formaterings og indtastnings routiner i en overlay fil er ikke tilrådeligt <G>). Som \"database-værktøj\" havde vi Poly-files\" som på KUN 40 sekunder var i stand til at gemme en post med adskillige indexer, og hvis man var heldig kunne man læse den igen.
Nej, prøv så i stedet at lave vægtsystemer i Basic på en bærebar PX-4 (var det HP\'s ?), hvor man skulle have kommunikation (med tilhørende protokooler) op mod eksterne enheder (vægte/relæer) samt overførsel til/fra PC (alt på 16-32 Kb inkl program og data).
Ja men hvor når f...... kommer den f........ Delphi 6 :-(
Jeg beklager min harme, men leveringen af min Delphi 6 Enterprise er netop blevet udsat (for 4. gang) fordi Borland åbentbart ikke er ret hurtige til at fremstille nok CDer (så \"lige nu\" hedder leverings tidspunktet d. 29.6.)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.