AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ADO | Edit | Post - aktualisierbare Abfrage
Thema durchsuchen
Ansicht
Themen-Optionen

ADO | Edit | Post - aktualisierbare Abfrage

Ein Thema von cltom · begonnen am 24. Jul 2006 · letzter Beitrag vom 1. Aug 2006
Antwort Antwort
Seite 3 von 3     123   
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#21

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 30. Jul 2006, 19:01
Du musst den Dataset schließen (Close) - erst dann kann Excel die Tabelle laden und die Berechnung durchführen. Dann muss Excel die Tabelle schließen und du kannst wieder auf die Daten zugreifen. Keine gute Lösung finde ich.

Du solltest vielleicht mal über OLE-Automation nachdenken ...

marabu
  Mit Zitat antworten Zitat
cltom

Registriert seit: 22. Sep 2005
221 Beiträge
 
Delphi 12 Athens
 
#22

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 30. Jul 2006, 19:55
Nun, das Dataset wird geschlossen.

Zitat von marabu:
... erst dann kann Excel die Tabelle laden und die Berechnung durchführen. Dann muss Excel die Tabelle schließen und du kannst wieder auf die Daten zugreifen.
Was meinst Du damit, dass Excel die Tabelle schließt? Wie löse ich das "von aussen" aus?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#23

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 30. Jul 2006, 20:06
Zitat:
Was meinst Du damit, dass Excel die Tabelle schließt? Wie löse ich das "von aussen" aus
?Per OLE/COM. Aber dann kannst du ja auch den rest darüber machen, dann entfällt auch das ständige Schließen und Wiederöffnen.
Markus Kinzler
  Mit Zitat antworten Zitat
cltom

Registriert seit: 22. Sep 2005
221 Beiträge
 
Delphi 12 Athens
 
#24

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 30. Jul 2006, 20:24
ok, das schaue ich mir mal an.

Vielen Dank erst mal!!
  Mit Zitat antworten Zitat
cltom

Registriert seit: 22. Sep 2005
221 Beiträge
 
Delphi 12 Athens
 
#25

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 31. Jul 2006, 19:32
Nochmals aufwärm, ich bleib aber beim Thema:

Also die Datei mit einer ExcelApplication hinterher öffnen, speichern und wieder schließen funktioniert zwar, ist aber ziemlich unbefriedigend. a) weil unhübsch b) weil langsam. Gibt es echt keinen Weg, das mit ADO zu lösen? Wenn nicht sehe ich den Sinn eines ADO-Edit-Posts nicht so ganz. Wie soll man das sinnvoll einsetzen, wenn man die Datei irgendwo extra noch speichern muss?

Danke im voraus für weitere Hilfe!

gruß
tom
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#26

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 31. Jul 2006, 20:32
Hallo Tom,

soweit ich dein Problem verstehe suchst du nach einer Möglichkeit Excel als Taschenrechner zu missbrauchen. Offensichtlich sind die Formeln in Excel so komplex geraten, dass du sie nicht direkt in Delphi implementieren kannst. Also benötigst du eine Art der Programm-Programm-Kommunikation. Ich habe dir gezeigt, wie du ein Spreadsheet lesen und verändern kannst, aber da wusste ich noch nicht, was du wirklich vorhast.

Wenn möglich implementiere die Formeln direkt in Delphi, wenn nicht benutze die Automationsschnittstellen von Excel. Der Jet OLEDB Provider für Excel hilft dir hier nicht so recht. Er ist einfach vom Design her ungeeignet für deine Zwecke. Benutze ihn, wenn du Daten importieren oder exportieren möchtest.

Zitat von cltom:
Gibt es echt keinen Weg, das mit ADO zu lösen?
Ich laufe Gefahr mich zu wiederholen: Solange du das Spreadsheet im Zugriff hast, kann Excel die Datei nicht öffnen und umgekehrt. Der Provider greift exklusiv auf die Datei zu. Probiere es einfach mal aus.

Grüße vom marabu
  Mit Zitat antworten Zitat
cltom

Registriert seit: 22. Sep 2005
221 Beiträge
 
Delphi 12 Athens
 
#27

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 31. Jul 2006, 21:22
Hallo marabu,

Zitat von marabu:
Offensichtlich sind die Formeln in Excel so komplex geraten, dass du sie nicht direkt in Delphi implementieren kannst.
nun, jein. Ein Teil der Formeln ist trivial, ein Teil relativ komplex und zwar so komplex, dass es nicht in Delphi nachgebaut werden soll (erst einmal).


Zitat von marabu:
Solange du das Spreadsheet im Zugriff hast, kann Excel die Datei nicht öffnen und umgekehrt. Der Provider greift exklusiv auf die Datei zu. Probiere es einfach mal aus.
Sorry, aber das verstehe ich nicht ganz. Ich öffne die ADO-Connection, mache locate, edit, post und schließe sie hinterher. In der derzeitigen Fassung öffne, lese und schließe ich die Excel-Datei andauernd, das macht eigentlich keine Probleme.
Welcher Provider greift dann noch auf die Datei zu?

Die OLE Automatisation hat mir eigentlich recht wenig gefallen, weil dann Excel immer aufgemacht werden muss. Das ist a) zeitintensiver und b) erlaubt es (soweit ich durchblicke) nicht so elegante Queries etc.

gruß
tom
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#28

Re: ADO | Edit | Post - aktualisierbare Abfrage

  Alt 1. Aug 2006, 18:04
Hallo Tom,

Zitat von marabu:
Solange du das Spreadsheet im Zugriff hast, kann Excel die Datei nicht öffnen und umgekehrt. Der Provider greift exklusiv auf die Datei zu. Probiere es einfach mal aus.
ich muss das revidieren - ich wechsle immer zwischen zwei Maschinen, auf einer ist MS Office installiert, auf der anderen nur der XL Viewer. Beim Testen mit MS Office gibt es keine Probleme mit dem Zugriff per ADO auf ein geöffnetes Spreadsheet. Weil ich das Stichwort Multi-User ins Spiel gebracht hatte, hier eine authentische Darstellung dazu:

MS KB Artikel 195951
IMPORTANT: Though ASP/ADO applications support multi-user access, an Excel spreadsheet does not. Therefore, this method of querying and updating information does not support multi-user concurrent access.


Zitat von cltom:
Die OLE Automatisation hat mir eigentlich recht wenig gefallen, weil dann Excel immer aufgemacht werden muss. Das ist a) zeitintensiver und b) erlaubt es (soweit ich durchblicke) nicht so elegante Queries etc.
Egal was du zuletzt machen wirst - Excel muss geöffnet werden, wenn du die Dienste der calculator engine nutzen willst. Wer sollte sonst deine Formeln auswerten?

Grüße vom marabu
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz