собственно вопрос: Как можно вызвать глобальную команду справочника программно?
---
```1c
    ПерейтиПоНавигационнойСсылке("e1cib/command/ОбщаяКоманда.ИМЯ_КОМАНДЫ?cmdprm=СправочникСсылка.Контрагенты:a63bbcaec5e1325f11edb259cba3cf9e");
```
---
Сделал 2 кнопки. Одна выполняет глобальную команду. Другая для тонкого клиента. Обозвал одинаково. Выполняю установку видимости в зависимости от типа клиента. Пока оставлю это решение
---
```1c
    ПерейтиПоНавигационнойСсылке("e1cib/command/Справочник.ИмяСправочника.Команда.ИмяКоманды");
```
---
имеется в виду "Глобальная параметризируемая команда". Как ее можно вызвать из элемента справочника прораммно
---
```1c
    ПерейтиПоНавигационнойСсылке("e1cib/command/ОбщаяКоманда.ИМЯ_КОМАНДЫ?cmdprm=СправочникСсылка.Контрагенты:a63bbcaec5e1325f11edb259cba3cf9e");
```
---
Дополню ответ: ИТС: Ссылки на объекты информационной базы
---
Вызываете процедуру, которую вызывает команда, если все описано в модуле команды, то выносите в общий модуль
---
это процедура должна выполняться исключительно на "Толстом клиенте".
При наличии этой процедуре в тонком клиенте возникает критическая ошибка.
Было решено добавить глобальную команду что бы не возникала ошибка, и вызывать ее когда запущен толстый клиент.
Но как ее вызвать не добавляя команду на форму в виде кнопки я не знаю.
---
Вообще не понимаю при чем тут Толстый клиент. Хотите в толстом, вызывайте процедуру в толстом.
---
при наличии в процедуре метода не поддерживаемого тонким клиентом например "Новый СхемаКомпоновкиДанных"
при простом наличии его в модуле формы.
Возникает критическая ошибка. Которая приводит к завершению работы 1С.
Для этого и была создана глобальная команда. которая отрабатывает вызов подобных конструкторов. и ее необходимо запускать через глобальные команды.
---
Используйте

#Если ТолстыйКлиентУправляемоеПриложение Тогда
Новый СхемаКомпоновкиДанных

#КонецЕсли

Тогда у вас не будет ошибок
---
если бы всё было так просто
это метод не помогает проверено самым первым
---
У меня похожий вопрос,
Есть навигационная ссылка: e1cib/data/Документ.ПриходныйКассовыйОрдер?ref=a25400d8619e9aa211ec7e8ed8c8123a

Можно ли программно получить обычную ссылку на ПКО ?
---
можно
UUID a25400d8619e9aa211ec7e8ed8c8123a
перевести в GUID
и получить по ссылку
---
a25400d8619e9aa211ec7e8ed8c8123a

```1c
    Функция UUIDToGUID(UUID) Экспорт

    Возврат Прав(UUID, 8) + "-" + Сред(UUID, 21, 4) + "-" + Сред(UUID, 17, 4) + "-" + Лев(UUID, 4) + "-" + Сред(UUID, 5, 12);

    КонецФункции

    ------

    UUID = "a25400d8619e9aa211ec7e8ed8c8123a";
    ГУИД = Новый УникальныйИдентификатор(UUIDToGUID(UUID))
    Ссылка = Документ.ПриходныйКассовыйОрдер.ПолучитьСсылку(ГУИД )
```
---
Щас проверю :)
---
Чуток в отладчике поправил до рабочего состояния

```1c
    &НаКлиенте
    Процедура ПолучитьНавигацСсылку(Команда)
    ТекСтр = Элементы.Список.ТекущиеДанные;
    Адрес1 = ПолучитьНавигационнуюСсылку(ТекСтр.Ссылка);
    Сообщить( Адрес1);
    Сообщить( UUIDTo(Адрес1));
    КонецПроцедуры

    &НаСервере
    Функция UUIDTo(UUID1) Экспорт
    GUID = Прав(Прав(UUID1,32), 8) + "-" + Сред(Прав(UUID1,32), 21, 4) + "-" + Сред(Прав(UUID1,32), 17, 4) + "-" + Лев(Прав(UUID1,32), 4) + "-" + Сред(Прав(UUID1,32), 5, 12);
    ГУИД = Новый УникальныйИдентификатор(GUID);
    ссПКО_2 = Документы.ПриходныйКассовыйОрдер.ПолучитьСсылку(ГУИД );
    Возврат ссПКО_2;
    КонецФункции
```
---
СПАСИБО!
---
Мне кажется если есть обработка КонсольКомпоновкиДанных на УФах, то в ней кроется решение вашей проблемы. Но моих компетенций не хватает для решения.
---
Сделал 2 кнопки. Одна выполняет глобальную команду. Другая для тонкого клиента. Обозвал одинаково. Выполняю установку видимости в зависимости от типа клиента. Пока оставлю это решение
---
Какой ужас, люди никто не смог просто вызвать обработчик общей команды. Остановись земля я сойду. Есть еще решения? может через JSON?)))
---
Ок, как вызвать обработчик общей команды?
---
ну во первых обсуждение толстого клиента в 2023 году вызывает много вопросов. Никакого толстого клиента быть не должно в современном коде и мало того он менее функционален чем работа с тонким и веб.
Во вторых все решается через вызов сервера. Выше Вам написал человек в недоумении от Вашей постановки задачи. Люди просто не хотят отвечать на ерунду
---
Вы о чем вообще? Ответьте на прямой вопрос.
---
я ответил ниже. Вас путает понятие "команда" в мире 1с. Дело в том что команда в понимании 1с это команда от пользователя платформе, а не команда код. Это прежде всего графический элемент интерфейса. Согласен что не очень удачно. Поэтому вы пытаетесь программно нажать кнопку, что делать конечно не нужно. Вам нужно описать код, который хотите использовать как команду в понимании программиста, в общем модуле. А про команды 1с просто примите данность, это модуль кгопки)
---
Вам ответили, создайте общий модуль, далее процедуру или функцию с параметрами и перенесите туда тело команды, которая вызывается вашей кнопкой. И вызывайте вашу команду откуда угодно. Вообще само тело общей команды принято описывать в общих модулях, а в общих командах просто элемент интерфейса для форм не более того. Посмотрите как делают в БСП. Берите практики оттуда. Если нарушать парадигму платформы то и возникают такие вопросы, которых быть не должно.
---
Ладно я Вам отвечу, но лучше было бы для Вас же, если прошли этот путь сами.
Создаете ДВА общих модуля ( в одном работать у вас ничего не будет)
1. Один общий модуль ставите галки Сервер, Вызов Сервера. В этом модуле размещаете серверные процедуры функции с пометкой "экспорт"
2. Второй общий модуль ставите галки "Клиент" (остальные снимайте), Глобальный галку поставьте если команду (точнее функционал команды) часто будете дергать отовсюду
3. Вашу команду общую убираете оттуда все, кроме вызова общего модуля клиента (где галка клиент и обработка начинается на клиенте)

ИТОГ - у вас остается в общей команде только одна строка вызова общей процедуры. Таким образом настоящая общая команда, доступная для программного запуска, у вас в общем модуле. А общая команда остается всего лишь для кнопки на форме. Вызывайте сколько хотите.

Не благодарите)
---
Спасибо!!!