Выполнение сценариев закончено были ошибки

В этом видео мы разберем, как писать инструкции-тренажеры для пользователей (такие, чтобы по ним они ТОЧНО научились работать, с проверкой и всеми делами) – без дополнительных затрат времени.

Как это работает:

1. Пишем за 20 минут тест, используем в ходе разработки, а потом – voi la – и превращаем его в интерактивную документацию-тренажер.

2. Даем в шаловливые руки сотрудникам – и эта инструкция покажет и заставит его делать все операции правильно и в правильном порядке.

3. В качестве бонуса – и видим, кто научился работать, а кто нет, с какой попытки, кто еще косячит, а кого уже можно допустить к работе.

Где это нужно?

Взглянем на две типовые ситуации – с похожими проблемами на практике сталкивались многие :)

Пользователи не читают инструкции и «роняют» систему

Классика – распределенный офис, большое число сотрудников, пользователи/администраторы в разных городах (ну, для примера, розничная сеть).

Разработчики загружены по уши – «Надо срочно сделать эту акцию еще вчера, времени нет, конкуренты уже анонсировали такую акцию, и у нас должно быть похожее».

А потом все падает.

Почему? Потому что до инструкций толковых не дойти, проблематично это вообще запустить хоть как-то, а кассиры, не разобравшись, начинают бить по клавишам наугад. Пара неудачных кликов – и система упала.

Система обновляется, а пользователи не в курсе изменений

Мы что-то дорабатываем – и не всегда своевременно оповещаем об изменениях. А клиент иногда теряется в программе, что-то забывает, стоит поменяться панелям местами – уже не знает, что делать. Спросить стесняется – вдруг опять что-то вылетело из памяти, а не изменилось/сломалось на нашей стороне. И в итоге у клиента уходят часы, чтобы разобраться самостоятельно…

Людей, которые что-то забыли или боятся/стесняются/стыдятся подойти и спросить 10 раз, немало. Программисты что-то опять сдвинули, справка не актуальна – пользователи пытаются сами понять, тратят на это рабочее время, нервничают, ненавидят программистов/программы/компанию и т.д.

Что же общего между этими двумя историями?

Отсутствие актуальных инструкций и проверки их понимание приводит к серьезным проблемам у клиентов, а регулярно обновлять инструкции не получается.

Да, пользователи «такие»… И никто не любит читать инструкции.

Но крайними будут те, кто не обеспечил понимание.

Дело даже не в написании инструкции на 100500 страниц. Нужно ведь не просто дать инструкцию: важно убедиться, что кассиры ее не по диагонали посмотрели, а внимательно прочитали и попробовали воспроизвести. Заставить сделать несколько раз, до выработки навыка – и только потом пускать в работу.

Но на это времени нет. Писать инструкции традиционным способом – слишком долго.

Альтернатива

От Леонида Паутова (основной разработчик/создатель Vanessa Automation) мы узнали о появлении новой интерактивной справки. Но, честно говоря, не сразу оценили этот функционал.

Затем начали добавляться «повествовательные» справки: нажимаете F5 – и система вас ведет по всем кнопочкам, поясняет голосом, текстом, выделяет квадратиком, затемняет фон и прочее. В нашей команде это вызвало эффект «вау!!!». Но все равно чего-то не хватало.

Что делать, если человек не успел заметить что-то? Надо воспроизводить сценарий с самого начала, так как непонятно, что сейчас на экране?

Вспомните, как Вы рассказываете что-то клиентам, например, как создать новый товар:

  1. Нажмите слева на раздел «Продажи», появится панель функций текущего раздела, нажмите там гиперссылку «Товары»
  2. Когда откроется список товаров, нажмите на команду «Создать»
  3. Далее, вы увидите поля – «Наименование», «Вид товара» и т.д. Заполните их
  4. Нажмите команду «Записать и закрыть», и у вас в списке товаров будет ваш товар.

В идеале – этот текст сопровождается какими-то скринами, которые отличаются от того, что у клиента на компьютере, плюс, нередко инструкцию пишут по памяти, а потом ищи-свищи описанные гиперссылки – в интерфейсе.

Знакомо?

И тут – бинго: это же реально сценарий! Сценарий готового теста.

Единственное, в чем было отличие – надо было научить Vanessa Automation ждать действия от пользователя.

Решение всех проблем

И буквально в течение дня (не без помощи Леонида) был сделан вот такой прототип:

#language: ru
@tree
Функционал: Создание нового товара.
Переменные:
    ЗаголовокПодсистемыПродаж = {!Metadata.Subsystems.SalesAR.Synonym}
    ИмяСправочникаТоваров = {!Metadata.Catalogs.Items.Synonym}
    ИмяОбъектаТоваров = {!Metadata.Catalogs.Items.ObjectPresentation}
    ТекстОткрытьПодсистемуПродаж = {НСтр("ru='Для начала - откройте подсистему $ЗаголовокПодсистемыПродаж$'; en='To get started - open the subsystem $ЗаголовокПодсистемыПродаж$'")}
    ТекстОткрытьСправочникТоваров = {НСтр("ru='Теперь откройте справочник $ИмяСправочникаТоваров$'; en='Now open catalog $ИмяСправочникаТоваров$'")}
    ТекстСозданиеСправочникТоваров = {НСтр("ru='Далее, надо создать новый элемент справочника'; en='Next, you need to create a new item'")}
 
    ТекстВведитеНаименованиеТоваров = {НСтр("ru='В это поле необходимо ввести Наименование товара'; en='In this field you must enter Description of the product'")}
    ТекстВидНоменклатурыТоваров = {НСтр("ru='Необходимо выбрать Вид товара'; en='You have to select Product Type'")}
    ТекстУкажитеЕдиницуИзмеренияТоваров = {НСтр("ru='Необходимо выбрать Единицу измерения товара'; en='You have to select The Unit of Measure for the Item'")}
    ТекстСохранитьТоваров = {НСтр("ru='После этого - необходимо сохранить элемент справочника'; en='After that - you need to save the reference item'")}

Сценарий: Нажмите на подсистему
	И я ожидаю нажатие на элемент с именем "$ЗаголовокПодсистемыПродаж$" и типом "TabItem" показывая текст "$ТекстОткрытьПодсистемуПродаж$" пока не появится элемент с именем "$ИмяСправочникаТоваров$" и типом "MenuItem"
	
	И я ожидаю нажатие на элемент с именем "$ИмяСправочникаТоваров$" и типом "MenuItem" показывая текст "$ТекстОткрытьСправочникТоваров$" пока не появится элемент с именем "$ИмяСправочникаТоваров$" и типом "Pane"
	
	И я ожидаю нажатие на элемент с именем "Create" и типом "Button" показывая текст "$ТекстСозданиеСправочникТоваров$" пока не появится элемент с именем "$ИмяОбъектаТоваров$ (create)" и типом "Pane"

	И Пауза 1

	И я делаю эффект затемнения у элементов формы UI Automation "ЭтотСеанс"
		| 'Имя/ID' | 'Тип' |
		| 'ENG'    | 'Edit'|
		
		| 'Имя'      | 'Значение'  |
		| 'text'     | '$ТекстВведитеНаименованиеТоваров$' |
		| 'duration' | 4000       |
	И Пауза 4	

	И я делаю эффект затемнения у элементов формы UI Automation "ЭтотСеанс"
		| 'Имя/ID' | 'Тип' |
		| 'Item type'    | 'ComboBox'|
		
		| 'Имя'      | 'Значение'  |
		| 'text'     | '$ТекстВидНоменклатурыТоваров$' |
		| 'duration' | 4000       |
	И Пауза 4	

	И я делаю эффект затемнения у элементов формы UI Automation "ЭтотСеанс"
		| 'Имя/ID' | 'Тип' |
		| 'Unit'    | 'ComboBox'|
		
		| 'Имя'      | 'Значение'  |
		| 'text'     | '$ТекстУкажитеЕдиницуИзмеренияТоваров$' |
		| 'duration' | 4000       |
	И Пауза 4	

	И я делаю эффект затемнения у элементов формы UI Automation "ЭтотСеанс"
		| 'Имя/ID' | 'Тип' |
		| 'Save and close'    | 'Button'|
		
		| 'Имя'      | 'Значение'  |
		| 'text'     | '$ТекстСохранитьТоваров$' |
		| 'duration' | 4000       |
	И Пауза 4

Как это работает и выглядит – мы покажем в видео ниже.

Как это выглядит?

video

Тайминг ключевых моментов видео:

00:12 – показываем, как работает интерактивная справка
01:34 – как работает интерактивная справка в интерфейсе на другом языке
02:42 – пример работы интерактивного тренажера для обучения
04:20 – изменяем сценарий интерактивной справки.

Что это нам всем дает:

  1. Инструкция-тест на Vanessa Automation сама показывает, что нажать, где и что должно быть в итоге.
  2. Если пользователям сложно / непонятно / страшно / просто лень, то консультанты могут по такому сценарию рассказать пользователю: куда нажать, что должно появится дальше, за какие функции какие поля отвечают.
  3. Это – тест, можно запускать эту документацию на своей базе именно как тест.
  4. Легко получить ответ на главный вопрос – когда надо обновлять документацию? Ответ простой: когда тест упал, тогда и надо обновлять. Четко и понятно :)
  5. Мы можем реально мониторить процесс обучения (и момент окончания обучения) наших сотрудников – достаточно добавить последний шаг, где зафиксировать: такой-то пользователь прошел сценарий до конца. Развернуть шаблонную базу и проводить там обучение – а тем, кто не прошел, блокируем доступ в базу, чтобы не начудили. Шутка. Хотя…

Вместо заключения

Да, технология пока новая и требуются еще время на доработки. Скорее всего, будут полезны: возможность диалога, кнопки Далее и Назад. Но такие вещи не появляются в один миг, а развиваются постепенно.

Так что советуем присмотреться к этой технологии и просто «поиграть» в нее. Возможно, для вас (как и для нас) – это станет быстрым и удобным решением рутинных и порой крайне скучных задач :)

Содержание:

1.      Первый вариант ошибки файла сценария в конфигурации 1С: УНФ

2.      Второй вариант ошибки файла сценария в конфигурации системы 1С: Предприятие  

1.      Первый вариант ошибки файла сценария в конфигурации 1С: УНФ

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

Иногда, у пользователей конфигурации «1С: Управление нашей фирмой», во время начала установки обновления при помощи интерфейса конфигурации системы «1С: Предприятие», вся система 1С «вылетает» — закрывается, после чего, происходит некий ряд непонятных действий и возникает окно с текстом о том, что произошла ошибка файла сценария. Внутри данного окна будет располагаться такой вопрос: «Вы хотите продолжить выполнение сценариев на этой странице?». Но, что бы юзер не начинал делать – процесс не происходит и изображение, сзади окна, о выполнении, зависает.

Чтобы устранить данную неполадку, нам необходимо запустить саму систему- приложение 1С через рабочий стол, причём, из сеанса «Администратор». В таком случае, наше обновление будет проходить с расширенными, полными, правами и изменения смогут свободно записываться.

Получаем, что, в данном варианте сценарной ошибки 1С, достаточно изменить права юзера на администраторские.

2.      Второй вариант ошибки файла сценария в конфигурации системы 1С: Предприятие

В этом случае, при обновлении именно файловой информационной базы 1С, появляется окно с текстом о том, что произошла ошибка файла сценария, дальше пишется о том, что «предполагается наличие…» и, вместо точек, какой-то символ. После чего, задаётся вопрос о том, нужно ли выполнять сценарии далее. Пример окна с ошибкой показан на примере ниже:

Ошибка сценария

При этом, в таком случае, ни администраторские права, ни обновления на «Windows», ни любые компоненты – ничего не устраняет ошибку.

Всё дело в том, что, в данном случае, ошибка возникла не из-за недостатка в 1С прав доступа пользователя, а из-за того, что сам скрипт, который сформировала система конфигурации 1С, был недоработан. Либо, внутри кода есть ссылка на некий объект, который не содержится внутри доступа к базе данных 1С.

В любом из вариантов, как ни странно, устранение ошибки будет основано на некорректных патчах. Получаем, что есть некие строки внутри скрипта « main.js», которых выполняются действия по устранению правок. Ниже показан пример такой строки:


Var removeFixNames

Чтобы, всё-таки устранить эту неполадку, которая была в неверной в 1С установке патчей, необходимо следовать такому плану:

1. Сделать копию 1С-базы данных. От этого, напрямую, не зависит устранение ошибки, но, чтобы перестраховаться, лучше всегда это делать в обязательном порядке.

2. Удалить все неверные правки-патчи, это можно сделать:

·        Собственноручно, через интерфейс;

·        При помощи команды, у которой есть функция «/DeleteCfg -AllExtensions», по запуску базы данных;

·        При помощи такой обработки, ниже приведён её текст:


На Сервере

Она вызывает такую типовую процедуру:


Процедура

После чего, все патчи, которые находятся в программе 1С базы данных, будут удалены.


Внутри системы конфигурациит1С, для удаления патчей, понадобится лишь кликнуть по одной кнопке:


Удалить патчи

3.      Теперь можно заново подключать проведение обновления и ошибка более не появится.

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

Специалист компании «Кодерлайн»

Елена Шачнева

I have a main script. Inside it I call other three shell scripts, A,B and C. All were successful. Exit codes are all equal to zero. However, when I looked into the output file of the first script which is A, it contains an error message. Now I want to exit the main script and not to continue running the other scripts after the script that has output error. Can anyone help me on this? Thanks!

asked Dec 15, 2015 at 8:14

smflores07's user avatar

Even if some command in your first bash script results in an error, the script as a whole may complete with exit code 0.

You can check the exit code of any individual command in your script by using the $? variable. This variable stores the exit code of the previous command. This will allow you to check for errors within the script.

answered Dec 15, 2015 at 8:20

William Rosenbloom's user avatar

5

The easiest way is to append || exit 1 to the statement which is throwing the error. That will cause the script to exit if the exit code of the command is 1 (i.e. an error).
So assuming you had a command sqlscript and you wanted the entire script to exit if sqlscript exited with a non-zero exit code you would do

sqlscript || exit 1

As a point of trivia, the 1 in exit 1 is not needed. A plain exit command would also exit with the exit status of the last executed command.
Which would be false (code=1) if the sqlscript command fails. If the sqlscript command succeeds, the exit code is the exit code of sqlscript. In that case, the || does not trigger and the exit command is not executed.

answered Dec 15, 2015 at 8:22

the_velour_fog's user avatar

the_velour_fogthe_velour_fog

2,0944 gold badges17 silver badges29 bronze badges

I have a main script. Inside it I call other three shell scripts, A,B
and C. All were successful. Exit codes are all equal to zero. However,
when I looked into the output file of the first script which is A, it
contains an error message. Now I want to exit the main script and not
to continue running the other scripts after the script that has output
error.

Since script A doesn’t return an error exit code, you have to inspect its output. This is quite easy with grep provided that you have a search string which clearly identifies an error message, e. g.:

# this echo command simulates script A - it outputs "error" and exits with 0:
echo "contains an error message" >StoreKey_All.csv  # assumed this output file
grep error StoreKey_All.csv && exit 1               # exit if output has error
# continue with scripts B and C
echo B

answered Oct 26, 2017 at 8:35

Armali's user avatar

ArmaliArmali

18.3k14 gold badges57 silver badges174 bronze badges

  • Описание ошибки

  • Решение проблемы

  • В Internet Explorer

  • В приложениях и играх

Технологии не стоят на месте. Вспомните, какими были сайты 15 лет назад. Лишь текст на цветном фоне. Ни анимации, ни плавных переходов, ни разнообразия функций. Сейчас же многие визуальные эффекты и функции реализованы с помощью скриптов. Так давайте рассмотрим, как исправить ошибку сценария в Windows?
Ошибка скрипта

Описание ошибки

Ошибка сценария – это сбой в работе скрипта, который выполняет ту или иную функцию на веб странице. И не удивляйтесь, если подобная проблема появилась во время игры, установленной на ПК, – они тоже реализуют свой функционал с помощью JavaScript и Visual Basic. К счастью, никаких фатальных последствий для личных данных и системы в целом ошибка скрипта не представляет. А лечится проблема несколькими простыми способами.

Решение проблемы

Универсальных способов не существует, поэтому для начала нужно знать, при использовании чего появляется сообщение о сбое. Не удивительно, что в нашем списке есть Internet Explorer – браузер лидирует во многих антирейтингах по стабильности и производительности, поэтому рекомендуется заменить его на более качественный аналог. Возможно, это и будет лучшим решением данной проблемы.

В Internet Explorer

Но если вы истинный фанат софта от Microsoft или просто прикипели за долгие годы к приложению, то выполните следующее:

  1. Откройте браузер и перейдите на страницу, на которой отображалось сообщение об ошибке.
  2. Обновите страницу с очисткой кэша, нажав Ctrl+F5.
  3. Проверьте наличие проблемы.

Если ошибка скрипта не появляется – поздравляю! Иначе – переходите к следующим пунктам:

  1. Перейдите в «Меню» – «Свойства браузера».
    Свойства в Internet Explorer
  2. Откройте вкладку «Дополнительно».
  3. Установите параметры работы скриптов в соответствии с данными на скриншоте.
    Отключение отладки сценариев в Internet Explorer
  4. Сохраняем параметры нажатием кнопки «ОК».
  5. Далее перейдите во вкладку «Безопасность» и нажмите кнопку «Выбрать уровень безопасности по умолчанию для всех зон».
    Выбор уровня безопасности для зон
  6. После этого откройте вкладку «Общие» и нажмите кнопку «Удалить» в подкатегории «Журнал браузера».
    Удаление данных в журнале
  7. Выберите все поля и нажмите кнопку «Удалить».
    Выбор категории удаляемых данных

    Внимание! При очистке паролей все сохраненные данные для входа на сайты удалятся! Убедитесь, что знаете всю необходимую информацию. В противном случае не отмечайте пункт «Пароли».

В приложениях и играх

Для решения проблем с ошибкой сценария в приложениях и играх выполните несколько шагов:

  1. Откройте окно «Выполнить» нажав Win+R.
  2. В текстовое поле окна введите regedit и нажмите «ОК».
    Создание задачи
  3. В новом окне ищем HKEY_LOCAL_MACHINE, нажимаем ПКМ по полю и выбираем пункт «Разрешения».
  4. Ставим галочки напротив всех доступных полей в столбце «Разрешить».
    Изменение разрешений в реестре
  5. Далее нажимаем кнопку «Дополнительно».
  6. Кликаем на поле, где в столбце «Субъект» стоит значение «Все» и нажимаем кнопку «Изменить».
    Изменение разрешений в реестре
  7. В новом окне устанавливаем галочку возле поля «Полный доступ» и нажимаем «ОК».
    Изменение разрешений в реестре
  8. Перезагружаем компьютер.

Теперь осталось зарегистрировать внесенные изменения:

  1. Откройте окно «Выполнить» нажав Win+R.
  2. Введите команду cmd и нажмите «ОК».
    Вызов командной строки
  3. В командной строке наберите regsvr32 msxml.dll и нажмите Enter.
  4. Перезапустите устройство.

Выше представлены исчерпывающие методы, которые работают в 99% случаев. Теперь вы знаете, что такое ошибка скрипта и как ее исправить. Если известен какой-либо другой способ – поделитесь им в комментариях. Удачи!

Полное описание проблемы:
на вкладке Сервис — Основные — если установить «Тэги для запуска» и после этого не указать тэг в фиче, то при запуске фичи — ванесса выдает сообщение «Выполнение сценариев закончено. БЫЛИ ОШИБКИ.». Предлагаю добавить развернутый ответ, указывающий на то, что заполнен «Тэги для запуска», которые не установлены в фиче. Убил 30 минут на то, чтобы понять в чем дело и почему фича не может запуститься)

Укажите:

  1. 1.2.040.9
  2. 8.3.19.1770
  3. Режим совместимости базы, где запускается Vanessa Automation
  4. Windows

Заполните шаблон обсуждения GIT

Функционал: Добавить более развернутый ответ при ошибке
   Как пользователь
   Я хочу ускорить процесс поиска ошибки


Сценарий: Дополнить базу ответов при возникновении ошибок
  Допустим: мы указали "Тэг для запуска"
  Когда: Нажимаю "Выполнить", чтобы выполнить фичу
  Тогда: Высвечивается сообщение "Выполнение сценариев закончено. БЫЛИ ОШИБКИ."
  Должно быть: Служебное сообщение, которое указывает, на заполненность "Тэг для запуска", которого нет в фиче.

Понравилась статья? Поделить с друзьями:

Интересное по теме:

  • Выпиши слова которым дана неправильная характеристика ошибки исправь
  • Выполнение операции невозможно ошибка авторизации
  • Выпей чашку чая ошибка
  • Выполнение операции заполнение xdto ошибка установки значения свойства
  • Выпас собак запрещается речевая ошибка какая

  • Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: