Autor Beitrag
Amsel0_0
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 02.03.09 10:39 
Hallo an alle,
Habe ein kleines Problem mit Delphi 6.0. Will mit meinem Programm auf Outlock Kalender zugreifen, das geht so weit schon mal. Nun mein Problem es werden mir nich alle Felder zum Auslesen angezeigt, es Fehlen mir Wann Erstelt Um welche Urzeit, endet dann und der Ort.
Wie kann ich diese Felder mit ADO auf Kalender Auslesen, arbeite mit Exchange 4.0 von ADO?

Ich hoffe ich bin hier richtig in der Sparte.

Ich danke schon mal allen im Vorraus.

mit freundlichen Grüßen
Amsel0_0

Habe mal noch eine Frage: Hat sich jemand mit dem Package von sourceforge.net und zwar das Office Partner auseinander gesetzt weil jedes mal wenn ich da was starten will hängt sich immer Delphi auf?

mit freundlichen Grüßen
Amsel0_0
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Di 03.03.09 15:17 
Wenn Du Lust hast das was Du brauchst aus einem Fetzen meines Codes zu extrahieren.....


procedure TForm1.adsAfterOpen(DataSet: TDataSet);
var
i : Integer;
begin
for i := 0 to ads.FieldCount - 1 do
begin
ads.Fields[i].DisplayWidth := 20;

end;
end;

Function GetFullPath4Node(Node:TTreenode;PathPart:String):String;
begin
if Assigned(Node) then
begin
if Node.Level=0 then Result := Node.Text +'|' + PathPart else Result := GetFullPath4Node(Node.Parent,Node.Text + '\' + PathPart);
end
else Result := '';
end;

procedure TForm1.FormCreate(Sender: TObject);
var
sl1,sl2:TStringList;
i:Integer;
pn:TTreenode;
Procedure AddChildren(Node:TTreenode;Path:String);
var
sl:TStringList;
ii:Integer;
lac:TAdoConnection;
begin

sl := TStringList.Create;
lac:=TAdoConnection.Create(self);
lac.LoginPrompt:=false;
try

lac.ConnectionString:='Provider=Microsoft.JET.OLEDB.4.0;Exchange 4.0;MAPILEVEL=' + path + ';PROFILE=Outlook;TABLETYPE=0;DATABASE=\;';
lac.open;
lac.GetTableNames(sl);
for ii := 0 to sl.count - 1 do
begin
AddChildren(tv.Items.Addchild(Node,sl[ii]),path+sl[ii]+'\');
end;
finally
lac.Free;
sl.Free;
end;

end;
begin
{
try
ac.ConnectionString:='Provider=Microsoft.JET.OLEDB.4.0;Exchange 4.0;MAPILEVEL=;PROFILE=Outlook;TABLETYPE=0;DATABASE=\;';
ac.open;
ac.GetTableNames(Postfaecher.items);
Postfaecher.ItemIndex := Postfaecher.Items.Count - 1;
PostfaecherDblClick(nil);
except end;
ac.Close;
}

sl1 :=TStringList.Create;
try
ac.ConnectionString:='Provider=Microsoft.JET.OLEDB.4.0;Exchange 4.0;MAPILEVEL=;PROFILE=Outlook;TABLETYPE=0;DATABASE=\;';
ac.open;
ac.GetTableNames(sl1);
for i := 0 to sl1.count - 1 do
begin
AddChildren(tv.Items.Add(nil,sl1[i]),sl1[i]+'|');
end;
finally
sl1.Free;
end;
tv.OnChange := tvChange;
tvChange(nil,tv.Items[0]);
end;


procedure TForm1.tvChange(Sender: TObject; Node: TTreeNode);
begin
if Assigned(Node) and (Node<>FLastNode) then
begin
FLastNode := Node;
Fdir := GetFullPath4Node(Node.Parent,'');
ac.Close;
ac.ConnectionString:='Provider=Microsoft.JET.OLEDB.4.0;Exchange 4.0;MAPILEVEL=' + Fdir+';PROFILE=Outlook;TABLETYPE=0;DATABASE=\;';
ac.open;
ads.Close;
ads.CommandText := 'Select * from [' + Node.text + ']' ;
ads.Open;
end;

end;

MfG
bummi