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

 

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

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

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

ник: АлексейЕ
Вот так в лоб реализовать не получится. А вот с помощью «маневрирования» можно очень даже неплохие способы найти.

Способ 1. С использованием класса

Создаем класс КлассПараметров
 
Option Compare Database
Option Explicit

Private strFIRMA_NAME As String
Private strFIRMA_ADRES As String



Public Property Get FIRMA_NAME() As String
    FIRMA_NAME = strFIRMA_NAME
End Property

Public Property Let FIRMA_NAME(ByVal vNewValue As String)
    strFIRMA_NAME = vNewValue
End Property

'=========

Public Property Get FIRMA_ADRES() As String
    FIRMA_ADRES = strFIRMA_ADRES
End Property

Public Property Let FIRMA_ADRES(ByVal vNewValue As String)
    strFIRMA_ADRES = vNewValue
End Property 
 


Заполнять теперь будем таким образом.

 
Public ПараметрыКонтрагента As New КлассПараметров

    CallByName ПараметрыКонтрагента, "FIRMA_ADRES", VbLet, "ЗначениеАдрес"
    CallByName ПараметрыКонтрагента, "FIRMA_NAME", VbLet, "ЗначениеИмя"
 


Читаем значения
 
?ПараметрыКонтрагента.FIRMA_ADRES
ЗначениеАдрес

?ПараметрыКонтрагента.FIRMA_NAME
ЗначениеИмя
 

Очень удобный способ для разработчика, т.к. при таком структурировании надо помнить лишь имя класса, а ограниченный список параметров сам выпадет в контекстное меню.
Можно создавать тематические группы параметров.
Если параметр не существует, то следует ловить ошибку при заполнении

Способ 2 Использование коллекции
Объявление и заполнение
 
Public КоллекцияПараметров As New Collection

    КоллекцияПараметров.Add Item:="АдресФирмы", Key:="FIRMA_ADRES"
    КоллекцияПараметров.Add Item:="НаименованиеФирмы", Key:="FIRMA_NAME"
 


Чтение
 
?КоллекцияПараметров.Item("FIRMA_NAME")
НаименованиеФирмы

?КоллекцияПараметров.Item("FIRMA_ADRES")
АдресФирмы
 

Удобен тем, что список параметров не ограничен, просто ввели в таблице новый параметр, и он автоматом заполнится в коллекцию.
Только при считывании ловим ошибку при обращении к несуществующему ключу


Ваше имя:

Пароль:

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

Сообщение:

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

Прикрепить:

 

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