Если вы хотите использовать естественный язык внутри кнопки, то, возможно, вам следует попробовать использовать драйвер разговора вместо cell-card
. Преимуществом этого является то, что он будет работать не только при нажатии кнопки, но и в режиме громкой связи, если пользователь произносит запрос.
В вашем просмотре результатов вы бы добавили блок, подобный этому:
conversation-drivers {
conversation-driver {
template ("What is the sports news for the next week.")
}
}
И вы бы тренировали подобные высказывания на вкладке обучения. Выровненный nl в исходном представлении будет выглядеть примерно так:
[g:NewsSearch] What are the (sports)[v:CategoryName:Sports] news for (next week)[v:time.DateTimeExpression]
Я использую опцию отмены в операторе выполнения. Он проверит синтаксис шага данных, а затем завершит его, фактически не выполняя. Это шаг данных, аналогичный параметру noexec
в proc sql.
data something;
<stuff here>
run cancel;
Дополнительные сведения см. В этом SUGI pdf
Я пишу весь свой код на своем ПК с помощью SAS на моем ПК и расширенного редактора с цветовой кодировкой. Затем я использую SAS / CONNECT, чтобы обработать его на мэйнфрейме. Если наборы данных находятся на DASD, я использую SAS / CONNECT и Enterprise Guide для непосредственного запуска кода на мэйнфрейме (без JCL!). Если задействована лента данных и, следовательно, это должен быть пакетный запуск, я использую SAS / CONNECT и SAS. ftp-движок для отправки кода в пакетную очередь мэйнфрейма. Я использую механизм электронной почты SAS, чтобы отправить мне по электронной почте свои результаты и журнал. Я помещаю в свой код сэндвич ODS, чтобы мэйнфрейм сгенерировал документ WORD для вывода. Я использую загрузку PROC для загрузки вывода на мой сервер, чтобы я мог открыть его в WORD.
Этот совет не зависит от языка.
Я бы хотел утверждают, что предпочтительный метод выявления синтаксических (и логических) ошибок - это тщательное чтение (или проверка) вашего собственного кода (который должен уловить большинство синтаксических ошибок) с последующими модульными тестами на небольших наборах данных (которые обнаружат любые оставшиеся синтаксические ошибки, а также множество логических ошибок, если ваши тесты хорошо разработаны).
Я согласен, что есть некоторая ценность изолированной проверки синтаксиса, но достаточно внимательно прочитать и понять ваш код перед первой компиляцией, чтобы вы знали, он будет компилироваться - это хороший идеал, к которому нужно стремиться. Стив МакКоннелл затрагивает эту идею в Code Complete (см. Стр. 827 2-го издания).
PS Вы упомянули выделение синтаксиса в своем исходном сообщении; есть и другие редакторы (например, VIM), которые будут выделять синтаксис для файлов SAS.