1с для команды не определен способ запуска
Многие пользователи сталкивались с ошибками при работе в программе: появлялось уведомление с описанием сути и местом возникновения. Но что делать, когда во время работы зависает база или не запускается 1С конфигурация? Прежде всего — не теряться и не паниковать: хотя причины сбоев различны, в большинстве случаев разобраться по силам рядовому сотруднику с минимальными знаниями в администрировании.
Проблемы с запуском конфигураций
Сложности с открытием конфигураций условно можно разделить на две категории:
- Выдано информационное окно с описанием ошибки, например:
- «Отсутствует файл базы данных»;
- «Информационная база не обнаружена»;
- «Файл базы данных поврежден»;
- «Неверное имя пользователя или пароль»;
- «Нет прав на запуск требуемого вида клиента» и т. д.
- 1С зависает, загрузка не проходит дальше заставки конфигурации, база не открывается.
В статье рассмотрены несколько ошибок запуска конфигураций на платформе 1С:Предприятие 8.3.17.1549.
Ошибки при старте конфигурации
Недостаточно прав на запуск программы
Может возникнуть у новых пользователей или после изменения учетной записи.
Для устранения следует поменять пользователю настройки прав и ограничений. Это доступно под учетной записью администратора 1С. Пункт Настройка пользователей и прав в типовых конфигурациях размешен в разделе Администрирование .
Не найдена база данных
- перемещена;
- удалена;
- переименован каталог хранения;
- для пользователя закрыт доступ к папке с базой.
Чтобы устранить ошибку:
- Попробуйте пройти по указанному пути до файла 1Cv8.1CD.
- Убедитесь, что имена компьютера/диска и всех папок совпадают с указанными в уведомлении. Если обнаружили отличия, исправьте параметры запуска базы: по кнопке Изменить пропишите новый каталог расположения ИБ.
- Проверьте права на изменение файлов для текущего пользователя. В окне Свойств каталога базы на вкладке Безопасность должны стоять отметки Разрешить .
- При отсутствии каталога или файла 1Cv8.1CD посмотрите Корзину : возможно, база случайна удалена.
Ярлык запуска 1С не действителен
Для быстрого запуска программы администраторы выносят ярлык (ссылочный файл) на рабочий стол пользователя. При перемещении или установке новой платформы ярлык обновляют. Иногда специалисты забывают это сделать, и сотрудники сталкиваются с ошибкой неработающего ярлыка 1С.
Для создания нового ярлыка:
После выполнения команды на рабочем столе появится новый значок 1С. Можете его переименовать на свое усмотрение. Старый ярлык удалите.
Ошибки запуска, связанные с форматом потока или хранилищем данных, решаются очисткой кэша 1С. Вообще удаление временных файлов 1С помогает решить многие проблемы. Поэтому когда все варианты уже перепробованы, почистите кэш.
Программа 1С зависает при запуске
Когда 1С не отвечает при запуске после выбора конфигурации, а на экране долгое время висит заставка, то:
- база перегружена или повреждена;
- производительности компьютера недостаточно для работы с программой.
Предпосылками этих проблем могут быть и частые зависания 1С при выполнении каких-либо действий в программе.
Проверка и восстановление целостности БД
Если база 1С не запускается ни в пользовательском режиме, ни в режиме конфигуратора, следует проверить ее на ошибки утилитой chdbfl.exe. Она устанавливается вместе с конфигурацией, находится в папке bin и имеет тип Приложение.
Если в директории 1cv8 несколько папок с разными релизами платформы, откройте последнюю установленную.
Перед использованием утилиты рекомендуется сделать копию каталога с файлами базы.
В открывшемся окне Проверка физической целостности файла БД в поле Имя файла БД укажите путь до файла 1Cv8.1CD, находящегося в каталоге базы. При затруднении путь можно посмотреть в нижней части окна запуска 1С.
Отметьте флаг Исправлять обнаруженные ошибки , чтобы утилита chdbfl.exe сразу делала исправления в базе. После завершения процедуры ознакомьтесь с результатом в окне приложения.
Далее, независимо от итога проверки, сделайте диагностику ИБ через конфигуратор:
- Запустите 1С в режиме конфигуратора.
- Перед началом действий с базой создайте резервную копию Конфигурация — Выгрузить информационную базу .
- Перейдите в меню Администрирование — Тестирование и исправление .
- В открывшемся окне отметьте все режимы проверки, поставьте флаг Тестирование и исправление и нажмите Выполнить . Результат отобразится в служебном окне.Еще эту функцию используют, когда зависает 1С при формировании отчетов, проведении документов и т. д. После пересчета итогов, реиндексации, реструктуризации таблиц ИБ повышается быстродействие программы 1С.
- Проверьте работу конфигурации в пользовательском режиме.
Изменение параметров компьютера
Приведенные ниже действия следует применять только после согласования с системным администратором, т. к. изменение настроек компьютера может повлиять на другие программы и работу операционной системы.
При повторных зависаниях программы 1С, появлениях ошибок «Недостаточно памяти» обратитесь к системному администратору, чтобы он увеличил физический объем ОЗУ на компьютере. В качестве временной меры при нехватке оперативной памяти можно рассмотреть вариант с увеличением файла подкачки — это выделенная на жестком диске область под нужды приложений.
Для увеличения файла подкачки:
- Откройте окно свойств компьютера и выберите пункт Дополнительные параметры системы .
- В окне Свойства системы на вкладке Дополнительно нажмите кнопку Параметры .
- В Параметрах быстродействия перейдите на вкладку Дополнительно . В разделе Оптимизировать работу выставьте флажок у программ. Нажмите Изменить .
- В окне Виртуальная память выберите диск, на котором будет выделено пространство для файла подкачки. После установки флажка Указать размер задайте величину области в Мб. Исходный и Максимальный размер опытные сисадмины рекомендуют ставить одинаковые, т. к. это снижает разброс данных в виртуальной памяти. Чем меньше на компьютере ОЗУ, тем больше выделяют места для файла подкачки:
- для 1 Гб ОЗУ — до 4096 Мб;
- 2 Гб — 3584 Мб;
- 4 Гб — 3048 Мб;
- 6 Гб — 2560 Мб.
- Кнопкой Задать новые параметры сохраняются в системе. Чтобы они вступили в силу, перезагрузите компьютер.
Для выбора оптимального размера поэкспериментируйте с пошаговым увеличением файла до максимального значения.
Используйте файл подкачки только при недостатке оперативной памяти, иначе система начнет часто обращаться к этой области для сохранения временных файлов, а из-за низкой скорости (по сравнению с ОЗУ) стабильно работающий компьютер станет дольше обрабатывать запросы.
Принудительное закрытие 1С
Если зависла 1С 8.3 — что делать пользователю? Вот несколько вариантов:
- нажмите комбинацию клавиш Alt+F4 и немного подождите, программа прервет выполнение текущего процесса и выдаст диалоговое окно с вопросом «Завершить работу с программой?»;
- в панели задач вызовите контекстное меню значка 1С и выберите Закрыть окно ;
- откройте диспетчер задач Ctrl+Shift+Esc. Выделите неотвечающее приложение и нажмите Снять задачу .
Если зависла 1С — как закрыть программу без последствий для базы данных?
- Не пользоваться кнопкой RESET на системном блоке;
- Не отключать подачу электричества.
При небольшой производительности компьютера не забивайте базу 1С лишней информацией: чаще удаляйте помеченные объекты. Чем меньше объем БД, тем быстрее обрабатываются запросы. Если устранить проблему зависания 1С не помог ни один из способов, выход только один: увеличить ОЗУ и повысить разрядность ОС — обратитесь к системному администратору.
См. также:
Если Вы еще не подписаны:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы по 1С:Бухгалтерия, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Здравствуйте.
В УТ 11.3 при добавлении обработки во внешние обработки имеется возможность назначить регламентное задание для данной обработки.
Стандартная обработка не работает, пишет: Не применимо для команд с вариантом запуска "Открытие формы".
Какие требования к разработки внешней обработки чтобы повесить на нее регламентное задание. Ищу данную информацию - не могу найти и разобраться.
Если кто может - помогите.
Благодарю.
в параметрах обработки, добавлять нужно команду не открытие формы,
а "ВызовСерверногоМетода"
Это же очевидно, какая форма в регламентном задании
Получается формы вообще не должно быть, весь код в модуле объекта располагать? Но тогда вопрос с какой процедуры стартует выполнение кода?
Позволю себе вмешаться в тему, тоже актуален вопрос.
А кто подскажет какой командой 1С регламентное может запустить внешний отчет?
У меня полностью самописная Конф. Механизм внешних тоже свой.
Регламентные задания нормально запускают обработку из состава конфигурации, в которой есть Процедура КакаяТо() Экспорт.
А вот со внешними файлами эксперимент не проходит. В документах внешние файлы запускаются через выгрузку во временный файл:
Регламентное задание выдает ошибку. Точно не помню, но что-то "невозможно выполнить".
Чтобы отвязаться от механизма хранения внешних отчетов, можно сформулировать так:
* уже записан на диске отчет. В нем есть экспортная проц-ра Выполнить()
* есть глобальная процедура Старт(), запускаемая РЗ.
* Она дает команду:
Процедура Старт() Экспорт
Отчет = ВнешниеОтчеты.Создать(ИмяФайла, Ложь);
Отчет.Выполнить();
Т.е. постановка вопроса такова: РЗ в принципе может запустить внешний файл?
Есть и второй вариант вопроса:
РЗ может дать команду Выполнить(ТекстМодуля) ?
Извините за неточность информации. Проблемой занимался давно, зубы обломал. А как выглядят ругательства 1С не помню.
Поэтому и спрашиваю, у кого-то работает?
Ребята, а, как быть если надо открывать форму по расписанию? Например, в ЗКГУ 3.1 уведомлять пользователя каждый день кто пойдет в отпуск через две недели или раньше. Напоминания не катят, там только статический текст, а, нужно чтобы текст формировался запросами к базе каждый день.
Напоминания: можно открыть форму но нельзя выполнить алгоритм запроса и сформировать текст
Регламентные задания: Можно выполнять код но нельзя открыть форму. Как и то и то чтобы было сделать?
(6) нашли какой ниб. вариант решения, кроме как добавления отдельной дополнительной формы с вызовом формы?
-------------------
Администрирование -> Дополнительные отчеты и обработки
Подключить вашу внешнюю обработку
Т к указано две команды, то при подключении обработки на вкладке Команды появляются две строки
В одной из них есть доступ к расписанию запуска регламентного задания
Запуск приложений из 1С:Предприятия 8.x
Платформа 1С:Предприятие 8.x позволяет выполнять запуск сторонних приложений встроенными средствами. Например, если нужно запустить браузер для открытия ссылки, то достаточно написать следующий программный код:
Таким же способом можно выполнять запуск любого другого приложения, явно указав путь к исполняемому EXE-файлу.
После выполнения этой строчки кода будет запущено стандартное приложение Windows - "Блокнот".
Использовать этот метод глобального контекста больше имеет смысл на стороне клиента (тонкого или толстого), так как в абсолютном большинстве случаев после запуска приложения работать с ним из 1С:Предприятия не представляется возможным. Т.е. после открытия браузера обрабатывать его события или получать из него данные платформа не сможет.
Но выполнять взаимодейтсвие с запущенным таким способом приложением все же можно! Например, выполнив запуск ожидаем когда запущенное приложение сформирует ответный файл и затем читаем его. Если использовать метод "ЗапуститьПриложение()", то нам придется проверять наличие ответного файла в цикле и в случае появления доступа к этому файлу - обработать его.
Рациональней было бы запустить приложение, дождаться завершения его выполнения и затем выполнить все необходимые действия. А если запуск выполняется на клиентской машине, то показывать окно приложения вообще может оказаться не обязательно.
Для этих целей можно использовать COM-объект "WScript.Shell":
А) - команда системы (путь к исполняемому файлу или любая другая команда в формате DOS).
Б) - вариант показа окна приложения. Указывать не обязательно. Возможные значения:
1 - Активизирует и показывает окно. Если окно минимизировано или максимизировано, система восстанавливает его к оригинальному размеру и положению. Используется при первом открытии окна программы.
2 - Активизирует окно в свернутом режиме.
3 - Активизирует окно и разворачивает на весь экран.
4 - Показывает окно в его новом размере и положении. Активным остается текущее окно.
5 - Активизирует окно и показывает его в текущем размере.
6 - Минимизирует окно и активизирует следующее на панеле задач.
7 - Показывает окно как минимизированное. Активное окно остается активным.
8 - Показывает окно в его текущем состоянии. Активное окно остается активным.
9 - Активизирует и показывает окно. Если окно минимизировано или максимизировано, система восстанавливает его к оригинальному размеру и положению. Используется для восстановления минимизированного окна.
10 - показывает окно в том-же состоянии, что и окно вызывающей программы.
В) - нужно ли ожидать завершения команды: 0 - не нужно ждать завершения выполнения команды, 1 - ждать окончания выполнения команды.
Вот так выглядит запуск приложения "Блокнот" этим способом:
Но опять же, ожидания завершения работы приложения не будет. Для этого третий параметр нужно выставить в значение 1.
Пример использования COM-объекта "WScript.Shell" можно посмотреть в обработке "Yandex.Wordstat", где с его помощью запускается утилита отправки JSON-запроса через Yandex.API.
Минусом второго способа является его не универсальность, ведь работа COM-объекта возможна только для случаев, когда платформа (или сервер 1С:Предприятия) запущены под управлением операционной системы Windows.
Добрый вечер! Нужно открыть любой файл из 1С. Кто может дать пример НачатьЗапускПриложения()? НЕ могу понять как использовать. Раньше было все просто - ЗапуститьПриложение("С:\\1.txt") и запускался блокнот. Включать режим совместимости синхронных вызовов не хочу.
ЛюбойФайл = "С:\\1.txt";
Оповещение = Новый ОписаниеОповещения("ЗапускПриложения", ЭтотОбъект);
НачатьЗапускПриложения(Оповещение. Истина);
А что дальше?
Что нужно писать в процедуре ЗапускПриложения(), какие параметры?
Не понятно, как только дождаться завершения приложения? Нужно что бы после закрытия файла, он удалился.
Тип: ОписаниеОповещения.
Содержит описание процедуры, которая будет вызвана после завершения со следующими параметрами:
Тип: Строка.
Задает текущий каталог запускаемого приложения.
Истина - дожидаться завершения запущенного приложения перед продолжением работы.
Значение по умолчанию: Ложь.
Описание:
Начинает запуск внешнего приложения либо открытие файла с использованием ассоциированного с ним приложения.
Тонкий клиент, веб-клиент, толстый клиент.
(3) Да, я в коде выставляю его в "Истину", он 4 и в коде выше, видно, что я его выставил в "Истину", Но! Что получается по факту. Открываю свой файл, а программа отрабатывает дальше. Что я ожидаю получить. Открыть файл, программа пусть дальше работает. Или останавливается. Но важно, после отработки внешнего приложения, удалить файл.
(5) Хотя, это я ошибся. Попробовал сейчас - всё работает корректно и без явного указания экзешника. Вы просто неправильно понимаете смысл процедуры в описании оповещения - она вызывается не при запуске, а при завершении. Вот там и удаляйте свой файл.
(5) А для чего тогда служит параметр, дождать завершения? Вроде раньше, процедура ЗапуститьПриложение(), отрабатывала как я описал выше (вспомнил пример, где я запускал mp3 файл.). На самом деле я запуская картинку, могу запустить пдф файл.
(6)Как я понимаю смысл - открылась картинка. я ее посмотрел. Закрыл. и вот тут я должен удалить файл. Но отчкаостанова в отладчике не отрабатывает. У меня как "НачатьЗапускПриложения(ЗапускПриложения, ЛюбойФайл,, Истина);", отработала. Файл открылся и тут же переходим в Процедура ЗапускПриложения(КодВозврата, ДополнительныйПараметр) Экспорт
(8) После закрытия файла, я в эту процедуру не попадаю. У меня в вызываемой процедуре
Первый параметр пустой. Может по этому я не попадаю в нее после закрытия файла?
(10) я просто не пойму, почему он пустой. В синтаксисе написано что он равен 1 или неопределенно, если не задан, но у меня он заданю
На самом деле, это способ помочь финансированию здравоохранению за счет автомобилистов. Каждая справка - платная, очевидно, что объем работы врача при приеме такого "пациента" на порядок меньше чем с реальным больным, а денежки идут.
(12) Вот пример
Первый параметр у меня пустой. Не могу понять почему. И как только открылся файл. Я разу попал в нижнюю процедуру. Может платформа баговая
(16) :D это уже смешно. У меня все тоже. У меня в коде нет ошибок? :D. Может параметры конфигурации не такие? Я в чистой базе это пишу.
(17) Аналогично. В чистой базе все работает.
Сделайте в процедуре ЗапускПриложения Сообщить("Закрылось").
Я так понимаю, если первый параметр истина, то будет отрабатывать после закрытия. Но у меня первый параметр = неопределено.
Здравствуйте, Живой Ископаемый!
Перед обменом нужно, как я понимаю, чтобы пользователей в базе не было. Как раз мое 1сПредприятие (польз "obmen") я и спрашиваю как закрыть (это к (26)).
У нас пользователи не в терминале работают и я тоже, спасибо, учту.
Сейчас попробую сделать, как Вы советуете.
во 2 случае только код в кону загружается, и даже из конф для обновления 1сПредпр не запускается - остается "!" в конф-ре
"только код" - это я после выполнения случая2 захожу в конфигуратор и вижу что код заменился на новый и стоит в окне конф-ра "!"; те видимо сработала только первая строка батника,
"только код" - данные не загрузились
2(45) нет, не просите вы помочь.. вы сообщаете ничего не значащие замечания о работе какого-то припадочного скрипта.
Кстати, в (30) - предположение "Перед обменом нужно, как я понимаю, чтобы пользователей в базе не было" - абсолютно ложное. могут быть. Пользователей быть не должно только в том случае, если пришли изменения конфы, при чем такие, которые меняют структуру. Если же просто поменялся код модуля - то пусть будут, ничего страшного нет
2(49) да что вы говорите. вы серьезно думаете что кто-то будет следить за последней версией отлаживаемого вами кода? всем плевать на него.
(52)но ведете себя так, как будто предполагаете что все в курсе на какой именно строчке у вас сейчас ошибка.. у вас шаблончик не рвется от такой разницы в отношении и поведении?
(46) спасибо, я это еще в Ваше предыд. объяснение поняла
не ясно следующее:
если в батнике одна строка и батник запускаю дважды то 1 результат
если в батнике таже самая строка 2 раза написана и батник запускаю 1раз - другой результат
2(55) у вас вторая строка батника дожидается окончания выполнения приложения запущенного первой строкой?
видимо нет, т.е. нужно в батнике как-то определять, что первая строка закончила свою работу?
и этот батник запускаю дважды все работает как надо, и без ожидания почему-то
2(58) ну так а чего вы придуриваетесь что не видите разницы?
читайте до посинения:
Запуск указанной программы или команды в отдельном окне.
START ["заголовок"] [/Dпуть] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
команды.
Изменения вызова внешних команд из командной строки или с помощью команды
START при включении расширенной обработки команд:
2(58) "и этот батник запускаю дважды все работает как надо, и без ожидания почему-то" - то есть вы не дожидаетесь самостоятельно окончания работы батника первый раз, второй раз сразу же запускаете? или все же дожидаетесь?
кстати и во второй строке также надо и start и /wait иначе третья ваша команда сразу зарубит 1Сv8.exe только что запущенный второй командой.
START "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/WAIT/Execute Obmen.epf
написал не удалось найти ENTERPRISE
2(69) я даже уже и не знаю какими словами мне еще выразить - что всем на это плевать. и никто вас не пожалеет за то что вы не смогли вчитаться в вывод команды START /? и попробовать по разному кавычки и т.д. и т.п.
но ДО прошлого раза было еще 10 раз когда не получилось.. сейчас также будет.
Но.. попытайтесь меня удивить
start /wait "" /DisableStartupMessages/WAIT/Execute Obmen.epf" C:\Program Files\1cv81\bin\1cv8.exe ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf
первая строка выполняется а вторая нет
Напишите в батнике такое:
Dear computer Santa! I want you to acomplish my wish, but, I'm not able to express it properly. So, let's come to an agreement - i just put some words, and you feel free to combine them in a way, whichever you want.
Ok, here these words:
start
wait
DisableStartupMessages
WAIT
Execute
Obmen.epf
"C:\Program Files\1cv81\bin\1cv8.exe"
And don't forget - I want you to accomplish my wish twice, deal?
start /wait "" "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf
start /wait "1C" "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf - все равно не ждет
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F"C:\UAT8_les_KOT" /N"obmen" /P"obmen" /DisableStartupMessages/Execute Obmen.epf
TaskKill /F /IM 1cv8.exe
start "Запускаем 1C. " /d "C:\Program Files\1cv81\bin" /wait "1cv8.exe Enterprise /F C:\UAT8_les_KOT /N obmen /P obmen /Execute Obmen.epf /DisableStartupMessages"
Рез-т: не удалось найти 1cv8.exe Enterprise /F C:\UAT8_les_KOT /N obmen /P obmen /Execute Obmen.epf /DisableStartupMessages
видимо с внешней обработкой не так пишется
start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
start "" "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
rem "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
TaskKill /F /IM 1cv8.exe
Вот такой батник из 2-ходинаковых строк:
start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
start "" /wait "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F C:\UAT8_les_KOT /N obmen /P obmen /DisableStartupMessages/Execute Obmen.epf
строка1 выполняется, но 1с закрываю вручную - сама не закрывается. Видимо, "WAIT Запуск приложения с ожиданием его завершения." означает что следующая строка батника будет выполняться после завершения работы приложения, открытого предыд. строкой.
После выполнения строки2 тоже 1с надо закрывать вручную, причем данные не перенеслись (в окне конфигуратора знак "!")
Читайте также: