Function | Det_GetValue(ByVal strTable As String, ByVal strTableDsn As String, ByVal strFldArtDsn As String) As String |
---|---|
strTable: Tabellenname der Haupttabelle strTableDsn: Datensatznummer der Haupttabelle z.B. AD, Obj ... strFldArtDsn: Die Datensatznummer (DSN) der FeldArt Rückgabewert: Der Detailwert Public Function Det_GetValue(ByVal strTable As String, ByVal strTableDsn As String, ByVal strFldArtDsn As String) As String Dim strResult As String Dim rs As ADODB.Recordset Dim strSQL As String Dim strTblDet As String strResult = "" strTblDet = UCase(strTable) & "DET" If strFldArtDsn <> "" And strTable <> "" And strTableDsn <> "" Then 'Immer über Haupttabelle auf Det-Tabelle zugreifen, wg. Berechtigung 'Bei mehrfachen Detail-Felder wird das erste in der Tabelle genommen (Sortierung nach DSN) strSQL = "SELECT " & strTblDet & ".Eingabe " & _ "FROM " & strTable & " INNER JOIN " & strTblDet & " ON " & strTable & ".dsn = " & strTblDet & "." & strTable & "_dsn " & _ "WHERE (" & strTable & ".DSN=" & m_oUtil.SqlUid(strTableDsn) & ") AND (" & strTblDet & ".FLDART_DSN=" & m_oUtil.SqlUid(strFldArtDsn) & ") " & _ "ORDER BY " & strTblDet & ".DSN" Set rs = FF_GetRecordset(strSQL) If rs.EOF = False Then strResult = m_oUtil.k(rs("Eingabe").value) End If Set rs = Nothing End If Det_GetValue = strResult End Function |