Функции для работы с записями
Администратор
Функция DLookUp работает медленно, опыт и практика показали, что лучше иметь под рукой собственную функцию, работающую аналогично. Системной функции удаления записи вообще не существует. На мастеровскую кнопку MSA вешает вызов пунктов меню. |
Возврат значения из таблицы. Возвращает ТОЛЬКО первое значение, даже если в выборке их несколько. Работает аналогично DLookUp, но несколько быстрее, иногда критично быстрее. Проведенный тестинг показывает, что на локальных таблицах данная функция работает сравнимо с DLookup, но все же немного медленнее. На прилинкованных таблицах DLookup уже значительно проигрывает, и чем сложнее условия, тем больше разрыв по производительности (см. http://msa.dimsign.ru/index.php?type=112&idTheme=114).
Public Function GetRec(NameOfField As String, NameOfTable As String, Optional Where As String = "") sql = "SELECT " & NameOfField & " FROM " & NameOfTable r.Close Удаление записи. Первый аргумент - имя таблицы, второй - условие. Последний аргумент необязательный, при его установке в неноль будет удалена только первая запись. На практике последний аргумент не использовался и носит исключительно теоретическое значение. Public Function Delrec(Tbl As String, Whr As Long, Optional OneRec As Long = 0) As Boolean Впрочем, ничто не мешает упросить функцию до следующего варианта, но тогда пропадает контроль за количеством удаленных записей: Public Function Delrec(Tbl As String, Whr As Long) As Boolean |