Проблема последнего+1 номера для офисных приложений (+++ - VB
Формулировка задачи:
Например, у меня в таблице Docs-реестр накладных.
Когда я вызываю форму регистрации накладных мне нужно, чтобы был по умолчанию последний+1 номер для накладной.
Какие есть решения ?
P.S. Пишу под MS SQL Server 7.0
Решение задачи: «Проблема последнего+1 номера для офисных приложений (+++»
textual
Листинг программы
Public Function GetMaxID(Table As String, ID_Name As String) As Long
'Table - Название таблицы из которой надо выбрать
'ID_Name - Название поля из которого надо выбрать максимальное значение
Dim rcsGetMax As ADODB.Recordset
Set rcsGetMax = New ADODB.Recordset
Set rcsGetMax.ActiveConnection = connect 'сonnect объявлен глобально (у меня)
rcsGetMax.CursorLocation = adUseClient
rcsGetMax.CursorType = adOpenForwardOnly
rcsGetMax.LockType = adLockReadOnly
rcsGetMax.Open 'SELECT MAX(' & ID_Name & ') AS MaxID FROM ' & Table
GetMaxID = CLng(rcsGetMax('MaxID').Value)
rcsGetMax.Close
Set rcsGetMax = Nothing
End Function
Затем в форме вызываю:
ID=GetMaxID('MyTable','MyField')+1