GUID abfragen in einer verlinkten ASP-Seite
-
5 august 2010 10:26
Hi,
ich habe per ISV einen neuen Button im Navigationsbereicht der Entitaet "Account" hinzugefuegt. Dieser Button verweist auf eine selbsterstellte ASP-Webseite. Wenn diese Seite jetzt geoffnet wird, wie kann ich der Asp-Seite die GUID der Entitaet mittteilen ?
Per Iframe wuerde da beim Onload-Event ueber crmForm.ObjectId funktionieren, aber wie frage ich dies bei einer eigenen Seite ab und wie hat diese Laufzeitzugriff auf die anderen Attribute der Entitaet?
Danke im Voraus!
Toate mesajele
-
5 august 2010 10:39
Hallo Martin,
kommt drauf an wie du deine ASP-Website aufrufst.
Wenn Du das JavaScript Attribute in der ISV benutzt kannst du die Parameter natürlich selber übergeben.
Falls Du das URL-Attribute benutzt, kann mit PassParams="1" u.a. die ID übergeben werden.
siehe dazu:
http://msdn.microsoft.com/en-us/library/cc150844.aspx
Gruß
Andreas
-
5 august 2010 10:45Moderator
Hallo Martin,
das ist kein Problem. Mit "crmForm.ObjectId" erhälst du direkt die GUID des Accounts, wenn der Button aus dem Account heraus gedrückt wird.
Viele Grüße
Michael Sulz
MVP für Microsoft Dynamics CRM -
5 august 2010 14:03
Danke erstmal fuer die Antworten.
@Andreas
Wenn ich auf eine selbsterstellte ASP-Seite verweise, dann ist die Url des Links nicht mit der GUID der Entitaet gefuellt.
@ Michael
Wenn ich auf crmForm.ObjectId in meiner ASP-Seite im SkriptTag nutze, dann bekomme ich die Fehlermeldung: crmForm is undefined. Ich habe bis dato mit crmForm nur in der Form der Entitaet selber gearbeitet bei OnLoad und OnChange -Events. Da der Button nichts mit der Form zu tun hat und sich im linken Navigationsbereich befindet, wie kann ich dann auf den Befehl zurueckgreifen?
Ich seht, ich habe eure Ansaetze ausprobiert, aber ich komme nicht an die GUID der Entitaet heran. Oder mache ich etwas komplett verkehrt?
Danke nochmal!
Gruss Martin
-
5 august 2010 15:11
Hast du PassParams="1" in der ISV drinstehen?
Poste mal deine XML für den Button, denn du in der ISV eingefügt hast.Andreas
-
6 august 2010 05:46
<NavBarItem PassParams="1" Icon="/_imgs/ico_18_debug.gif" Area="Sales" Id="navCustomerAnalysis" Url=ISV/WebApplication1/Default.aspx>
Ich dachte der Parameter GUID wird zu der Url meiner ASP-Seite hinzugefuegt, dann haette ich ihn einfach auslesen koennen.
So ist in der URL nur der Link zu meiner Webseite.
-
6 august 2010 06:20Moderator
Hallo Martin,
crmForm.ObjectId steht nur innerhalb des Formulares zur Verfügung. Darum hatte ich ja auch geschrieben, das es mit einem ISV Button aus dem Formular heraus funktioniert.
Wenn du also einen ISV-Button auf der Form anlegst, z.B. so:
<ToolBar ValidForCreate="0" ValidForUpdate="1">
<Button Icon="/_imgs/ico_18_debug.gif" JavaScript="window.open('meineSeitete.aspx?test=' + crmForm.ObjectId ,'','width=447,height=160,toolbar=0,resizable=1');" PassParams="1" WinParams="" WinMode="0" Client="Web, Outlook" AvailableOffline="true">
<Titles>
<Title LCID="1033" Text="GPS" />
</Titles>
<ToolTips>
<ToolTip LCID="1033" Text="GPS Daten downloaden" />
</ToolTips>
</Button>
</ToolBar>wird das funktionieren.
Viele Grüße
Michael Sulz
MVP für Microsoft Dynamics CRM -
6 august 2010 08:28
Hi,
@Michael
Leider kann ich diese Loesung nicht nehmen, auch wenn sie funktioniert. Mein Button muss im Navi-Bereich der Entitaet liegen.
-
6 august 2010 08:37
Hallo Martin, zumindest dein XML Eintrag scheint schon zu stimmen.
Mach bitte folgendes:
Geh in deine ASP Applikation und füge in deiner .cs ( falls C#) im Onload
if(Request.QueryString["id"] != null){
Response.Write(Request.QueryString["id"].ToString());
} else {
Response.Write("ID is null");
}
ein.
Damit müsste er dir die ID des Datensatzes anzeigen.
Andreas