Запуск тонкого клиента 1С из Java
Есть задача:
Запуск тонкого клиента 1С с выбранной задачей из документооборота. Особенность задачи в том, что запустить надо задачу 1С из обычной программы, написанной на Java. Начиная с версии 8.3, можно запускать тонкий клиент из командной строки, с аргументом задачи:
>path_to\1cestart.exe ENTERPRISE /RunShortCut path/file.v8i /IBName database_name /URL link
Сделаем пояснение:
path_to - полный путь до расположения файла тонкого клиента.
/RunShortCut path/file.v8i - указываем путь с ссылкой на параметры подключения базы
/IBName database_name - имя базы
/URL link - здесь указываем навигационную ссылку с задачей Исходный код:
public void open1с(String url) { Runtime rt = Runtime.getRuntime(); try { String exe1cPath = "\"C:\\Program Files (x86)\\1cv82\\common\\1cestart.exe \""; String confPath = " ENTERPRISE //RunShortCut link.v8i"; String db = " //IBName DO"; String link = " //URL " +url; String main = exe1cPath+confPath+db+link; rt.exec(main); } catch (IOException e) { e.printStackTrace(); } }
В качестве входного параметра используем внешнюю навигационную ссылку. То, каким образом вы ее получите, это уже совсем отдельная тема;-)
Повторюсь еще раз: в версии 8.2 данный код не сработает, т.к. эта возможность была предоставлена только в версии 8.3