 Можно
ли расширить возможности программ на языке STATISTICA
BASIC, вызывая внешние DLL файлы (процедуры
написанные на других языках программирования)?
Возможности пользовательских приложений на
языке STATISTICA BASIC могут быть дополнительно
расширены вызовами процедур, написанных на
других языках программирования. Язык STATISTICA BASIC
имеет возможность взаимодействия с внешними
программами с помощью гибкого интерфейса
внешних DLL файлов (динамически
присоединяемых библиотек), поэтому программы
на языке STATISTICA BASIC могут служить интерфейсом
между существующими приложениями, написанными
на других языках программирования (например,
процедурами из области коммерческого или
общедоступного программного обеспечения) и
пользовательскими файлами данных STATISTICA,
графиками и отчетами.

Кроме того, язык STATISTICA BASIC может быть
использован для создания STATISTICA-совместимого
интерфейса для других приложений, например, Microsoft
Organization Chart (см. предыдущий рисунок).
Можно ли использовать язык STATISTICA BASIC
для создания “дополнений” к системе STATISTICA и
“новых модулей”?
Приложения на языке STATISTICA BASIC, включающие
преобразование данных, вычислительные и
аналитические процедуры, взаимодействие с
другими программами, а также новые графики,
определенные пользователем, могут быть
добавлены к пользовательской конфигурации
системы STATISTICA и впоследствии вызываться
нажатием кнопки на панели инструментов Кнопки
автозадач или другим способом. Библиотеки
пользовательских программ могут быть удобно
организованы с помощью локальных или глобальных
панелей инструментов. STATISTICA BASIC также может
быть использован для разработки ваших
собственных, спроектированных в соответствии с
вашими потребностями “модулей STATISTICA” или
“приложений STATISTICA" на основе модуля Сервер
файлов системы STATISTICA.

В чем разница между режимами последовательного
и прямого доступа в языке STATISTICA BASIC?
При использовании режима последовательного доступа
система STATISTICA рассматривает набор данных как
базу данных, запуская программу на языке STATISTICA
BASIC отдельно для каждой записи (наблюдения).
Последовательный порядок обработки записей
может быть нарушен только с помощью оператора Jump(x).
В режиме прямого доступа система STATISTICA
рассматривает набор данных в виде электронной
таблицы, все данные которой содержатся в уже
заполненном массиве DATA(i,j), где i
представляет номер переменной (столбца), а j -
номер наблюдения (строки).
В режиме прямого доступа программа на языке
STATISTICA BASIC выполняется один раз и любая ячейка
таблицы доступна непосредственно по номеру
переменной и наблюдения. Подробное обсуждение
некоторых преимуществ и способов использования
этих двух режимов содержится в Электронном
руководстве.
Как установить (или оставить
неизменными) значения параметров функций по
умолчанию
Многие функции языка STATISTICA BASIC имеют
большое количество параметров. Для упрощения
процесса программирования язык STATISTICA BASIC
позволяет не указывать некоторые необязательные
значения параметров. Это может быть осуществлено
одним из двух следующих способов:
(1) Вместо значения параметра, поместите знак
вопроса "?" перед любым словом в позиции
ввода параметра (для текстовых параметров для
обозначения конца слова должен использоваться
символ "$"). Отметьте, что если вы
вставите функцию из окна Мастер функций, то
вместо значений параметров в запись будут
помещены их обозначения (ключевые слова). (Для них
даже могут использоваться сокращения вида "?"
для численных параметров или "?$" - для
текстовых параметров.) Например, следующая
программа оставляет без изменений заголовок
построенной диаграммы рассеяния и размещает
стрелки с установленным по умолчанию типом,
стилем, размером и углом в заданном месте
графика.
my_graph := NewGraph(SCATTERPLOT,
?Top_Title$, ?Left_Title$,
?Left_Title$, NCases, v5, v10);
GraphDrawArrow(graph, ?ArrowType, ?Size,
?Angle, ?Style, 43, 55, 66, 59);
(2) Если вы не хотите изменять параметры и
принять установки по умолчанию, вместо задания
значений параметров можно использовать ключевое
слово UNUSED (или UNUSED$ для текстовых
значений). Например, для получения тех же
результатов, приведенная выше программа может
быть переписана в виде:
my_graph := NewGraph(SCATTERPLOT, UNUSED$,
UNUSED$, UNUSED$, NCases, v5, v10);
GraphDrawArrow(my_graph, UNUSED, UNUSED,
UNUSED, UNUSED, 43, 55, 66, 59);

|