5 строк кода

Как писать приложения на MS Access

Archive for the ‘решения’ Category

2 полезные строковые функции

2 комментария

В своей работе некоторые самописные функции для работы со строками стали уже не заменимыми. Они располагаются в модуле mc_str.

1. CM_ConcLabel() — объединить название и значение.
2. CM_ConcStr() — объединить набор строк через разделитель.

Пример использования CM_ConcLabel():

Dim stAddress as String

'-- Если корпус не указан, то он не отобразится
stAddress = CM_ConcLabel("ул. ", stUl) & " " CM_ConcLabel("дом ", stDom) & " " & CM_ConcLabel("корп. ", stKorpus)

Пример использования CM_ConcStr():

Dim stFilter As String
Dim frmPl as Form

'-- ...

If Nz(frmPl("P_T_KLIENT_FLT")) <> "" Then
	stFilter = "T_KLIENT Like '*" & frmPl("P_T_KLIENT_FLT") & "*'"
End If

If Nz(frmPl("P_MES_FLT"), 0) <> 0 Then
	stFilter = CM_ConcStr(" AND ", stFilter, "MES = " & frmPl("P_MES_FLT"))
End If

If Nz(frmPl("P_GOD_FLT"), 0) <> 0 Then
	stFilter = CM_ConcStr(" AND ", stFilter, "GOD = " & frmPl("P_GOD_FLT"))
End If

Тест функций:
Read the rest of this entry »

Written by Сергей Скоков

Август 8th, 2012 at 12:09 пп

Как создать временные таблицы

Комментариев нет

Что бы не загаживать базу с данными и/или интерфейсную базу временными таблицами я решил перенести их в специальную временную базу данных. Это делает функция CM_CreateTempMDB(). И живет она в модуле mc_TempMDB. Для своей работы функция использует функции из внешних модулей: mc_LT.CM_LT_AddAllExt(), mc_File.CM_GetDBPath(), mc_StrSost.CM_StrSost().

У меня временная база пересоздается каждый раз при запуске программы. Функция копирует шаблоны временных таблиц из интерфейсной базы, имя которых подходит под условие: temp_*_def. Например, temp_import_def.

Текст функции:
Read the rest of this entry »

Written by Сергей Скоков

Октябрь 17th, 2011 at 10:32 пп