Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БАЗЫ ДАННЫХ.docx
Скачиваний:
11
Добавлен:
16.11.2018
Размер:
41.16 Кб
Скачать

Способ передачи параметра переменных в процедуре или функции указывается при описание ее аргумента(формальных параметров). Именем аргумента может предшествовать явный описатель способ передач

ByRef- по ссылке

ByVal – по значению

Если же явное указание способа передачи параметра отсутствует то по умолчанию подразумевается передача по ссылке

Sub Main()

a=10

b=20

c=30

call Example1(a,b,c)

Call MsgBox(a)

Call MsgBox(b)

Call MsgBox(c)

Sub Example1(x, ByVal y, ByRef z)

End Sub

x=x+1

y=y+1

z=z+1

Call MsgBox(x)

Call MsgBox(y)

Call MsgBox(z)

End Sub

Программа может состоять и обычно состоит из многих процедур и функций которые могут располагаться в одном или нескольких модулях группирующихся в проекты. При этом проекте могут быть несколько программ использующие общие модули или процедуры. Каждая из процедур находящихся в одном модуле должна иметь уникальное имя. Однако в проекте может содержаться несколько различных модулей. Обычно рекомендуется использовать только уникальные имена процедур, но и допустимы исключения. В том случае если в проекте содержатся несколько различных процедур с одним и тем же именем следует для уточнения имени использовать при вызове процедуры следующий синтаксис:

<имя модуля>.<имя процедуры> если при этом имя модуля состоит из нескольких слов следует заключить это имя в квадратные скобки. Например если модуль называется графические процедуры, а процедура график вызов может выглядеть следующим образом. «[графические_процедуры].график»

Допускается так же использование процедуры расположенных в других проектах. При этом может потребоваться еще один уровень уточнения имени.<имя проекта>.<имя модуля><имя процедуры>

Переменные, константы, типы данных.

!#$&%@ – Эти символы не являются частью имени переменной. Нельзя использовать одно и тоже имя переменной с разными символами определения типа данных.

Array – массив переменных для ссылке на конкретный элемент массива используется индекс, требуемая память зависит от размеров массива.

Boolean – логическая

Byte – число без знака

Object –используется только для хранения ссылок на объекты

Variant – может использоваться для хранения различных типов данных: дата/время, чисел с плавающей точкой, целых чисел, строк, объектов. Требуемая память 16 байт + 1 байт на каждый символ строкового значения.

Тип определяемый пользователем – определяемые пользователем типы данных, назначения и размер выделяемой памяти зависит от определения. Используется для описании структур данных. Позволяет хранить переменные такого типа множества значений различного типа. Для определения типа данных аргументов или процедуры типов функции используется описание типов данных непосредственно в их заглавной строке.

Sub SplitStr(str1 AS string, str2 AS string)

Определение типа данных возвращаемого функцией значения завершает заглавную строку функции. Function Find Split Space (str1 AS String) AS Integer

Const<имя константы>[AS тип данных]= выражение

Кроме описываемых пользователем константы существуют еще предопределенные встроенные константы которые используют в тексте программ без предварительного описания. При именование встроенных констант используют стандартное соглашение позволяющие определить к объектам какого приложения они относятся: имена встроенных констант относящихся к объектам Access начинающихся с “ac” ; exel – xl; word – wd; VB – vb.

DoCmd.OpenForm “Orders”acnormal,,stlinkCriterial.

Кроме обычных переменных в VB часто используют переменные представляющие собой ссылку на объект. Использование переменной объекта немного отличается от использования обычных переменных: нужно не только объявить такую переменную но и перед ее использованием назначить ей соответствующий объект с помощью специального оператора Set.

Dim <имя переменной> AS Object

Set<имя переменной>=<ссылка на объект>

Иногда для объявления такой переменной удобно заранее указать тип объекта для чего можно использовать любой конкретный объект из объектной модели офис.

Dim MyBase AS DataBase

Set MyBase=DBEngine.workspase(0).DataBase(0)

Массивы

Массив – это переменная в которой храниться одновременно несколько значений одинакового типа. Формально массив представляет собой совокупность однотипных индексированных переменных. Число индексов массива может быть различным чаще всего используются массивы с одним или двумя индексами. В VB используется до 60 индексов. Прежде чем использовать массив нужно объявить с помощью оператора Dim и указать при этом тип хранящихся в нем значений. Все значения в массиве обязаны принадлежать к одному типу данных. Это ограничение на практике можно обойти используя при объявление массива тип Variant тогда элементы массива смогут принимать значения различных типов.

Dim<имя массива>(<размер1>.<размер2>) AS <тип данных>

При этом индексирование элементов массива начинается с 0. При объявление массива можно указать не только верхнюю границу индекса, но и нижнюю т.е. явно задать диапазон изменения конкретного индекса массива при чем нижняя граница может быть любым целым числом.

Dim<имя массива>(<min1>to<max1>) AS <тип данных>

Массивы в которых явно указаны размер называют статистическими массивами. В VB допускается использование и динамических массивов, размеры которых при описание не фиксируются. Определение размера динамического массива может быть сделано не посредственно во время выполнения программы. При определение динамического массива в операторе Dim после имени массива стоят лишь пустые скобки и описание имя переменных число индексов и диапазон их изменений не задаются. Однако перед тем как использовать массив нужно выполнить оператор ReDim который задаст размерность и диапазоны изменения индексов динамического массива

Dim<имя массива>() AS <тип данных>

ReDim<имя массива>(<размер1>.<размер2>)