MiniM. Saving time.


| About | Download | Tools | Knowledge Base | How to Buy |

MiniM Overview

Getting Started

Download

Documentation

Tools

Cache Tools

GT.M Tools

Knowledge Base

FAQ

Contacts

Copyrights

MiniM Knowledge Base | Oct 7, 2010

Как проверить синтаксис строки

Для проверки синтаксиса строки команд в MiniM Database Server предназначена функция $view("rou","s"). Третий параметр функции должен быть строкой команд языка MUMPS.

Строка команд проверяется на корректность синтаксиса как если бы эта строка была аргументом команды xecute. В строке не должно быть метки, точек начала строки для безаргументной формы команды do и самой безаргументной формы команды do.

Функция возвращает пустую строку в случае если третий аргумент полностью синтаксически корректен. Если обнаруживается ошибка, то функция возвращает строку с ошибкой. При работе функции контекст ошибок и значения переменных $ecode и $zerror не изменяются. Пример:

USER>w $v("rou","s","s a=123")

USER>w $v("rou","s","s a=123aaa")
<SYNTAX> :SET: *s a=123aaa

Для проверки корректности синтаксиса аргументов команд, например, при необходимости такой проверки перед использованием косвенности, нужно составить строку для этой команды, например, проверка корректности аргумента команды set:

USER>s set="a=123"

USER>w $v("rou","s","s "_set)

Язык MUMPS является языком позднего связывания, поэтому само существование используемых в аргументах команд объектов на этапе синтаксического анализа не проверяется. Например, использованные имена переменных, реализация z-функций или метки в рутинах могут не существовать, но синтаксическая проверка строки команд не найдет синтаксической ошибки.

Функция проверки синтаксиса проверяет синтаксическую допустимость для текущей версии MiniM Database Server. В частности, если в последующих версиях будут введены дополнительные синтаксические конструкции или функции, то и синтаксис будет проверяться по возможностям этих последующих версий.

Евгений Каратаев
support@minimdb.com


Copyright (C) 2017 Eugene Karataev
Emails: Info Tech Support