Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: ГлазастыйМышь
как вариант, но не очень красивый (плюс надо смотреть как будет себя вести при большом количестве веток)
создать функцию

Public Function GetParent(Id As Double) As String
    Dim prom As Double
On Error GoTo ErrDebug
    
    prom = Nz(DLookup("ParentID", "Departments", "DepID =" & Id), 0)
    
    If prom > 0 Then
        GetParent = "|" & prom & GetParent(prom)
    End If
ExitHere:
    Exit Function
ErrDebug:
    Resume ExitHere
End Function


тогда запрос будет иметь вид

SELECT q.DepID, w.DepID
FROM Departments AS q, Departments AS w
WHERE (((InStr("|" & [q].[ParentID] & GetParent([q].[parentid]) & "|","|" & [w].[depid] & "|"))>0))
ORDER BY q.DepID, w.DepID DESC


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.