Gibt es irgend eine Möglichkeit, um nichtnumerische Daten, die innerhalb eines Scripblocks anfallen, zu empfangen?
Die Datenleitungen können nur numerische Werte (grüne Leitungen)
übertragen. Die Kanlal oder Scriptparameter können nur Daten an das
Script übergeben, jedoch keine Daten empfangen. Ich benötige aber einen
Weg, um einen innerhalb der Scriptbearbeitung anfallenden String (es
ist ein Pfad) irgendwie zu empfangen.
In meiner Verzweifelung habe ich in Abwandlung eines Beispiels aus der
Hilfe versucht, Daten über eine OLE bzw. ActiveX -Verbindung in den
Datenbereich zu schaufeln. Hier der relevante Ausschnitt:
Function ConnectToDIAdem
'Create the DIAdem object
Dim nValueT
ConnectToDIAdem = 0
On Error Resume Next
Set oDIAdem = CreateObject("DIAdem.TOCommand")
If Err.Number > 0 then
MsgBox ("Err No " & CStr(Err.Number) & " " & Err.Description)
Err.Clear
Else
oDIAdem.bNoErrorDisplay = true
oDIAdem.bNoWarningDisplay = true
ConnectToDIAdem = 1
End If
End Function
Sub DisconnectFromDIAdem
'Destroy the DIAdem object
Set oDIAdem = Nothing
End Sub
Dim oDIAdem
Sub SFD_Init( DeviceParam1V, DeviceParam2V, ErrorP )
Const strCanNotStart = "An error has occurred while executing the example."
'Execute the DIAdem command
Dim Exe_All, Exe_One, Exe_Type, Para
If ConnectToDIAdem Then
If oDIAdem.CmdExecuteSync("ChD(2,2) = 15" ) <> 1 Then
MsgBox strCanNotStart
End If
oDIAdem.CmdExecuteSync("WndShow('SHELL','Show')")
Call DisconnectFromDIAdem
Else
MsgBox strCanNotStart
End If
End Sub
Beim Start des DAC-Plans (mit Scriptblock) stürtzt zunächst Diadem
kommentarlos ab. Beim Versuch, Diadem mit dem Task-manager zu beenden,
gibt es promt ein reset des Rechners. (Win2000)
--
Ich poste in Deutsch, da Diadem-DAC ohnehin nur im deutschsprachigem Raum verbreitet sein dürfte.