Шаг 11 - Создаем свои процедуры и функции

Наверное, ни одна мало-мальски серьезная программа не обходится без написания собственных процедур и функций. Давайте рассмотрим, как это делается в FoxPro. Создадим под программку возвращающую завтрашнюю дату относительно передаваемого параметра. Вот текст программы, в которой это реализуется и через функцию, и через процедуру:

? TomorrowFunc(date())
? TomorrowProc(date())

function TomorrowFunc(dToday)
	if parameters() = 1
		if type('dToday') = 'D'
			return dToday + 1
		else
			messagebox('Передаваемый параметр должен быть датой')
			return {} && Пустая дата
		endif
	else
		messagebox('Неверное количество параметров')
		return {}
	endif
endfunc

procedure TomorrowProc
parameters dToday
	if parameters() = 1
		if type('dToday') = 'D'
			return dToday + 1
		else
			messagebox('Передаваемый параметр должен быть датой')
			return {} && Пустая дата
		endif
	else
		messagebox('Неверное количество параметров')
		return {}
	endif
endproc

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


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Клементьев В.А.