Hallo NeObEnDeR,
diese Funktion wird nur benötigt, wenn ein code geschreiben wird, der durch SMARTEAM aufgerufen wird. Solltest Du eine eigene SMARTEAM Applikation schreiben wollen, ist dieser Aufruf nicht nötig.
Um aber code von SMARTEAM aus aufzurufen, musst Du ohnehin über eine Script-Datei gehen, welche in der Script Maintenance bekannt gemacht wird. Insofern würde ich Dir empfehlen, diesen Aufruf (mit ein paar anderen Standard-Aufrufen als Einsprungmarke in eine zentrale Script-Datei aufzunehmen und von dort aus mit den richtigen Objekten den Code aus Visual Basic aufzurufen.
Somit steht in der .bs bspw. folgendes:
Function myFunction(ApplHndl As Long,Sstr As String,FirstPar As Long,SecondPar As Long,ThirdPar As Long ) As Integer
Dim SmSession As ISmSession
Dim FirstRec As Object
Dim oDLL As Object
Dim iReturn As Integer
CONV_RecListToComRecordList FirstPar,FirstRec
Set SmSession = SCREXT_ObjectForInterface(ApplHndl)
Set oDLL = CreateObject("Project1.clsModule")
iReturn = oDLL.ImportDataFromExcel(SmSession, FirstRec)
If iReturn <> 0 Then
myFunction = Err_Gen
End If
End Function
In der dll kannst Du dann direkt auf die Session und das Objekt zurgreifen:
Function ImportDataFromExcelAs SmApplic.SmSession, FirstRec As SmRecList.SmRecordList) As Integer
Dim SmObject As SmApplic.ISmObject
Set SmObject = SmSession.ObjectStore.ObjectFromData(FirstRec.GetRecord(0), True)
...
End Function
Grüße
KleinerMuck
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP