.. highlightlang:: us .. index:: DdeCallback_Request .. _ddecallback_request: DdeCallback_Request =================== .. us.tag DdeCallback_Request GERMAN Die :ref:`DdeCallback_Request` Funktion wird vom Client aufgerufen um Daten von UniPlot zu erfragen. .. function:: ssData = DdeCallback_Request(hConv, ssItem, ssTopic) .. us.return **Returnwert** *ssData* ist ein skalarer String. .. us.params **Parameter** .. uparam:: hConv *hConv* ist die Kanalnummer. .. uparam:: ssItem *ssItem* ist der Item-Name. .. uparam:: ssTopic *ssTopic* ist der Topic-Name. .. us.example **Beispiel** Das folgende Word-Basic-Programm erfragt das Datum von UniPlot: .. highlight:: basic :: Sub Main chan = DDEInitiate("UniPlotSL", "test") StrResult$ = DDERequest$(chan, "date") MsgBox(StrResult$) DDETerminate(chan) End Sub .. highlight:: us Für die Basic-Anweisung ``StrResult$ = DDERequest$(chan, "date")``, die das Datum von heute von UniScript erfragen soll, muss die Funktion folgendermaßen geändert werden: :: def DdeCallback_Request(hConv, ssItem, ssTopic) { // diese Zeile ist für Debug-Zwecke. printf("---Request---\n"); printf("Conversation-No.: %x, Item: %s, Topic: %s\n\n", .. hConv, ssItem, ssTopic); if (ssTopic == "date") { return "Heute ist der " + sum(date()); } return "OK"; } Die Standard-DDE-Callback-Funktionen von UniScript machen dabei folgende Ausgaben im UniScript-Kommandofenster: :: ---Connect--- Service: UniPlotSL, Topic: xyz ---ConnectConfirm--- Conversation-No.: 21000d00, Service: UniPlotSL, Topic: xyz ---Request--- Conversation-No.: 21000d00, Item: xyz, Topic: date ---Disconnect--- Conversation-No.: 21000d00 .. seealso:: :ref:`uberblick-dde`, :ref:`DdeCallback_Connect`, :ref:`DdeCallback_ConnectConfirm`, :ref:`DdeCallback_Disconnect`, :ref:`DdeCallback_Poke`, :ref:`DdeCallback_Execute` :sub:`id-724605`