Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Import z Excela do IB przez Delphi

12 views
Skip to first unread message

maniek

unread,
Nov 4, 2002, 3:06:18 AM11/4/02
to
Witam
Czy ma ktoś jakiś pomysł?
Może jakieś źródła?( komponent)

Dziekuje z góry!
Maniek


Jacek Badziak

unread,
Nov 4, 2002, 3:20:38 AM11/4/02
to
Osobiście używam XLSReadWrite z www.axolot.com i chwalę sobie. Co do
przepisywania danych do IB - jak już sobie odczytasz te dane (albo
XLSReadWrite-m lub inną metodą - jest ich kilka) to przypisz sobie te dane
do odpowiednich pól Query / Stored Procedury aktualizującej bazę danych.
Odpal, commit-nij transakcje jeśli się da...

I tyle,

Jacek

ya_corp

unread,
Nov 4, 2002, 3:34:00 AM11/4/02
to

"maniek"
> Czy ma kto¶ jaki¶ pomysł?

Byłem swego czasu w takiej podobnej sytuacji, ale nie chciało mi się bujać z
xls'ami, wiec przekonewertowałem to do dbf'a.
Jak masz dbf to juz bułka z masłem, generalnie chodzi o zbudowania INSERT'a

np. tak
var
dbFields, dbValues: String;

with TTable.Create(nil) do
begin
TableName := 'baza.dbf';
// ustaw też inne parametry
try
Open;
While EOF do
begin
dbFields := '';
dbValues := '';

// budowanie stringa z polami bazy
for i:=0 to FieldList.Count-1 do
begin
if i <> FieldList.Count-1 then
dbFields := dbFields + Strings[i] +',';
else
dbFields := dbFields + Strings[i];
end;

// budowanie stringa z danymi
for i:=0 to FieldList.Count-1 do
begin
if i <> FieldList.Count-1 then
dbValues := dbValues + '"'+
FieldByName(Strings[i]).AsString + '", ';
else
dbValues := dbValues + '"'+
FieldByName(Strings[i]).AsString + '"';
end;

// zapis do bazy IB
// INSERT ('+dbFields+') INTO baza VALUES('+dbValues+');
// to już wiesz jak zrobić

Next;
end;
Close;
finally
Free;
end;
end;

(pisane w czytniku)

Oczywiście to jest tylko pewien pogląd na temat, możesz napotkac na lika
trudniści, w zależności od typu danych w bazie źródłowej.

> Może jakie¶ Ľródła?( komponent)

Nie znam.
Może na odpowiedniej grupie *.bazy-danych będą wiedzieli więcej?

Sukcesów,
Jarek

maniek

unread,
Nov 4, 2002, 5:09:37 AM11/4/02
to
dziękuje!


Użytkownik "maniek" <man...@wp.pl> napisał w wiadomości
news:aq59pq$kgn$1...@news.lublin.pl...

Piotr Hosowicz

unread,
Nov 4, 2002, 7:40:13 AM11/4/02
to
maniek wrote:

> Czy ma ktoś jakiś pomysł?

Moze warto by bylo sprobowac przez ODBC, to znaczy podlaczyc sie z Dlphi
do bazy IB, do Excela przez ODBC i przepompowac dane.

Pozdrawiam,

Piotr Hosowicz
--
pl.comp.lang.delphi:
"Dotyczy to głównie okien `systemowych` typu (...) Outlook Express."

Sebastian Ciesielski

unread,
Nov 5, 2002, 1:40:08 AM11/5/02
to
Użytkownik "Piotr Hosowicz" <no.e...@sorry.INVALID.net> napisał w
wiadomości news:aq5pos$27i$1...@news.tpi.pl...

> maniek wrote:
>
> > Czy ma ktoś jakiś pomysł?
>
> Moze warto by bylo sprobowac przez ODBC, to znaczy podlaczyc sie z Dlphi
> do bazy IB, do Excela przez ODBC i przepompowac dane.
>
> Pozdrawiam,
>
> Piotr Hosowicz

Pewnie to byłoby najbardziej proste, ale udaje się tylko, gdy arkusz jest
jednolitą tabelką.

pozdrawiam

S.

--
Serwis Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

0 new messages