Autor Beitrag
WormHole
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 145



BeitragVerfasst: Fr 27.11.09 12:07 
Hallo Leute,


ich versuche gerade über Delphi den CRM Webservice anzusprechen aber ich kriegs nicht hin.. Tutorials oder Beispiele habe ich auch schon vergeblich bei google gesucht :(

Hat hier jemand zufaellig schon mal sowas gemacht und könnte mir einen Beispiel-Code zeigen?

Gruß
Dennis
WormHole Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 145



BeitragVerfasst: Mo 30.11.09 17:34 
Vorab: Ich weiß nicht, ob hier Doppelposts erlaubt sind, sonst diesen hier bitte einfach löschen.

Und zwar habe ich es jetzt irgendwie geschafft, doch eine Verbindung zum CRM Webservice herzustellen. Leider taucht danach eine Authentifizierungsmaske auf und man kann sich mit den normalen Logindaten nicht einloggen (mehrfach getestet mit verschiedenen Benutzern die auf jeden Fall die Rechte besitzen).

Das Problem ist anscheinend, dass das CRM nicht weiß, dass hier ein angemeldeter Benutzer kommt. Man müsste ihm hier also eine bestehende Connection mitgeben. Leider weiß ich nicht, wie das hier funktionieren soll und durch die umfangreiche Doku des CRMs in Delphi ist dies auch nicht einfach mal eben nachgelesen.

Hier mal ein bisschen Code, das was ich bis jetzt schon hab:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
var
  token:CrmAuthenticationToken;
  service:CrmServiceSoap;
  xml:WideString;
  xmlresult:string;
begin
  WebBrowser1.Navigate('http://crm'); // per iframe crm schon einmal aufgerufen um zu testen ob ich darf.. ich darf.
  token := CrmAuthenticationToken.Create;
  service :=  GetCrmServiceSoap();
  try
    token.OrganizationName := '****';
    token.AuthenticationType := 0;
    xml := '<fetch mapping="logical">'+
      '  <entity name="account"> '+
      '    <attribute name="accountid"/> '+
      '    <filter type="and">       '+
      '      <condition attribute="accountnumber" operator="eq" value="KT300000"/>  '+
      '    </filter> '+
      '  </entity>  '+
      '</fetch>'  ;
    xmlresult := service.Fetch(xml); // Access Violation Unauthorized
  finally
    FreeAndNil(service);
    FreeAndNil(token);
  end;


Anmeldefenster ist das ganz normale:
Bild1

Wenn man irgendwann auf abbrechen geklickt hat, dann erscheint diese Fehlermeldung:
Bild2

Ich hoffe es kann mir jetzt einer weiterhelfen. Das kann doch nicht so schwierig sein, das CRM vom großen Microsoft mit Delphi anzusprechen... :/

Gruß
Dennis

Moderiert von user profile iconNarses: Code- durch Delphi-Tags ersetzt
Moderiert von user profile iconNarses: Images als Inline-Bilder hochgeladen
Einloggen, um Attachments anzusehen!