Комментарии 33
Для использования расширения 3СХ необходимо установить режим совместимости конфигурации в значение Не использовать.
Кажется такие фееричные идеи уже обсуждались на партнерском форуме в ветке БСП:
https://partners.v8.1c.ru/forum/t/1747505/m/1747619
Цитирую:
Апресов Игорь (1С, Москва): Мы никогда не меняем режим совместимости просто так — это большой техпроект в котором анализируются изменения, дорабатывается конфигурация, пишется методика по переходу.
Я могу Вам посоветовать подождать выхода УТ на версии платформы 8.3.12, но уж точно предлагать пользователям ломать их информационные базы не следует.
Проверено не единожды.
1С этого не делает совсем по другим причинам в частности потому что всем придется менять в срочном порядке разработанные и действующие расширения.
Режим совместимости был задолго до появления расширений. Кстати, у расширений режим совместимости свой, в добавку к режиму совместимости конфигураций.
В режиме совместимости платформа меняет свое поведение. Смотрите документацию здесь
https://its.1c.ru/db/v8313doc#bookmark:dev:TI000001242: особенность%20режима%20совместимости
Каждую конфигурацию при смене режима требуется дорабатывать, смотрите методику отказа от режима совместимости:
https://its.1c.ru/db/metod8dev#content:5293:hdoc:_top: методика%20по%20переходу%208.2%20без%20режима
Что сделали Вы: у работающей и протестированной в определенном режиме работы интерпретатора конфигурации сменили версию интерпретатора, не доработав при этом конфигурацию. Это значит что конфигурация может вообще в произвольном месте развалиться, потому что авторы кода этой конфигурации ее тестировали в одном режиме работы, а Вы запускаете в другом.
Конкретно с Вашими доработками ничего страшного не случится, ведь Вы их, надеюсь, отладили в новом режиме, а весь остальной типовой код? У вас нет возможности перезапустить все тесты по всем подсистемам и гарантировать, что все работает точно так же. А если бы была возможность, Вы бы ужаснулись количиству проблем.
Например, появился в платформе нативный метод ПобитовоеИ и ПобитовоеИли, который отдельно был реализован в контактной информации БСП. При запуске в режиме совместимости 8.3.10 платформа все новшества отключает, а при снятии — отваливаются все формы на которые выведена контактная информация, потому что идет конфликт имен методов глобального контекста. И это только самый простой пример, коих тысячи.
Necessitudo можно в принципе не отвечать, он сразу перешел на личности.
Видимо он использует три формы и поэтому конечно круче.
Но уважаемый ZEEGIN потратил столько букв и в целом букв правильных, но не заметил главного — разработчики 3СХ просят установить режим совместимости конфигурации в значение Не использовать.
Это значит все возможности платформы используются по максимуму.
В частности им нужно расширение общих модулей по видимому.
Обычным вменяемым людям еще раз посоветую не слушать мнение экспердов и спокойно отключать.
Есть реальные примеры не маленьких организаций где это сделано и все работает штатно.
И на 8.3.12 в том числе уже давно.
Версия УТ 11.4.6, которая сейчас заявлена следующей, в списке проектов в анонсе было обновление БСП до версии 3.0.1, которое работает в режиме 8.3.12 с отключенным режимом совместимости. Чтобы использовать возможности платформы по максимуму надо дождаться выпуска 11.4.6.
Бухгалтерия, кстати, уже публичную бета выложила 3.0.65, в которой обновила БСП до 3.0.1 и перешла на 8.3.12. Наверное на неделе выпустятся.
Режим совместимости конфигурации в значение Не использовать будет в разных версиях конфигурации разный. Поставьте режим Не использовать в конфигураторе версии 8.3.10, а потом откройте эту же конфигурацию в конфигураторе версии 8.3.11. Что Вы увидите? Режим совместимости, который Вы поставили в Не использовать вдруг стал режимом совместимости 8.3.10.
А еще можно сделать выгрузку конфигурации в xml из версии 8.3.10 с включенным режимом Не использовать и посмотреть ноду в файле описания конфигурации, что будет в файле? Режим совместимости 8.3.10.
Это дурацкая неоднозначность платформы, которая многими не правильно понимается. Не использовать, это значи режим той версии, который сейчас запущен.
Вот сейчас платформа выпустила бета-версию 8.3.13, смотрите апдейт:
http://downloads.v8.1c.ru/content//Platform/8_3_13_1472/1cv8upd_8_3_13_1472.htm
Особенно внимательно на фрагмент Изменения, влияющие на поведение системы. Если эти изменения платформы не отработать в типовой конфигурации, то она будет работать не ожидаемо. А отработаны они будут только тогда, когда будет выпущена официальная версия от 1С.
Многие клиенты мечтают о таком.
В данный момент платформа 1С не имеет возможности вызывать форму добавления нового клиента по HTTP-ссылке — вопрос спорный.
Смотрите как в УНФ сделано ;)
Буду следить за обновлениями.
Вы правильно сделали выбрав механизм расширений, но поймите, изменение режима совместимости — это изменение в основной конфигурации, которое не только сисадмину делать нельзя, любой понимающий что делает разработчик откажется его менять.
Профессионально поступить: это сказать, что ваше расширение требует режима совместимости не меньше 8.3.11, УТ с этим режимом ожидания в октябре.
Например так написал автор Gitter'а, который сделал расширение для СППР с расширением данных:
https://github.com/JohnyDeath/GitterExtForSPPR
В нашем расширении используется расширение данных — привносятся регистры сведений, а эта технология появилась только начиная с 8.3.11. wonderland.v8.1c.ru/blog/rasshirenie-dannykh
Насчет ссылок открытия карточки клиента — спасибо большое, вопрос внимательно изучаем.
3CX сделали крайне полезное расширение, я подозреваю проверили его на людях.
Даже если не проверили — знаю организации работающие в таком режиме без проблем.
Но приходит уважаемый ZEEGIN и говорит — Ужас, ужас, кранты тому кто так сделает.
А в чем ужас собственно?
Я вот например застал время, когда не было интернета и тогда люди отвечали за свои слова.
Поэтому предложил бы уважаемому ZEEGINу выложить здесь принтскрин конкретного примера, когда изменение режима совместимости помешало штатной работе конкретной организации.
А так то писать буквы каждый может.
Я как разработчик регулярно сталкиваюсь с комментариями экспердов, что типа ужас вообще устанавливать что-то из интернета.
Но они то хотя бы приводят в пример бабу Нюру, которая скачала с интернета программу и теперь с калькулятора пишет.
Ещё раз обращу внимание, что 3CX передает в 1С только номер телефона и больше ничего. Поэтому невозможно открыть всплывающую карточку внутри 1С (кому ее открывать?) — это делает веб-клиент 3CX.
Другие CRM на запрос от 3CX возвращают не только ФИО клиента, но и URL его карточки. Вы знаете, как это сделать в 1С? Как получить внешнюю URL или другой идентификатор карточки контрагента?
В документации
Форматы навигационных ссылок
<адрес хоста ИБ>#<внутренняя ссылка>
<адрес хоста ИБ> = ПолучитьНавигационнуюСсылкуИнформационнойБазы()
<внутренняя ссылка> = e1cib/data/<путь к метаданным>?ref=<идентификатор ссылки>
<идентификатор ссылки> = СправочникСсылка.<Имя справочника>.УникальныйИдентификатор()
Например,
e1c://filev/C/1c/db/trade/master#e1cib/data/Справочник.Партнеры?ref=aca00015e9b8c48d11dd4412f8fa030d
В ролике про УНФ говорится о стыковке с 50+ провайдерами облачной телефонии.
CRM там вообще не при чем.
Провайдер отдает номер телефона — 1С поднимает карточку клиента если находит по номеру в базе, если нет — предлагает создать.
Потратьте 30 мин и посмотрите как работает. Демо есть в онлайн доступе.
Единственное что они через систему взаимодействия решают.
ctrlv.cz/shots/2018/09/18/ZDfb.png
ctrlv.cz/shots/2018/09/18/0lzm.png
УТ 11.4.5.* рассчитана на работу с 8.3.10
Открываем в 8.3.12
Отключаем режим совместимости
Получаем проблему с невозможностью ввести адрес.
Добавляем расширение с расширением данных
Получаем проблему с невозможностью выполнить обновление на новые версии конфигурации.
Это скорее косяк разработчиков — назвать функцию модуля именем встроенной и их всего три на конфигурацию

Если следовать методике разработки она должна была называться ВыполнитьПобитовоеИ() и тогда бы со встроенной не пересеклась.
В типовых конфигурациях таких ляпов достаточно.
Включали НЕ использовать — вот так

Лол, как можно так тупить.
В версии 8.3.10 не было ПобитовоеИ, в версии 8.3.12 есть ПобитовоеИ.
В версии 8.3.10 не конфликтует. В версии 8.3.12 конфликтует.
Не надо менять режим совместимости чтобы не допускать возможных конфликтов.
У разработчиков типовой все в порядке. Они заявили что работает в 8.3.10. В 8.3.10 она и работает. В 8.3.12 работу никто не обещал.
Нужно придерживаться стандартов разработки тогда имена функций и не пересекутся со встроенными.
В типовых — таких примеров куча — то переменную назовут Объект, то ЭтотОбъект
А подпирать свои косяки режимом совместимости это великий костыль.
its.1c.ru/db/v8std#content:2149184296:hdoc
6.4. В имени функции рекомендуется использовать глаголы в неопределенной форме в тех случаях, когда для понимания назначения функции важно, каким образом было получено возвращаемое значение. Например:
Функция ВыбратьДанныеПоПравилу(Правило, ПользовательскиеНастройки)
Функция ПреобразоватьДанныеПоПравилу(НаборыДанных, ПараметрыПреобразования
Чтобы как то развлечь себя — сходите на сайт битрикс и посмотрите интеграцию с УТ 10. Там прямо сказано — поднять режим совместимости конфигурации. И ничего, никто не умер.
А Битрикс — это по сути часть 1С.
Наверное разработчикам конфигурации надо быть экстарасенсами, чтобы угадать как в новой версии платформы будет назван какой-нибудь новый метод.
Конфигурацию рассчитанную на работу с 8.3.10 писали в 2016 году. 8.3.12 появилась в 2017 году. Как разработчики могли в 2016 узнать имя метода, которое появилось в 2017?
Дайте ссылку на документацию битрикс, я им напишу об ошибке у них.
Я вам даже больше расскажу — если я буду сначала работать в 8_3_10 без режима совместимости, а потом перейду на 8_3_12, при этом поставив режим совместимости с 8_3_10, то даже в таком случае я словлю немало всякого интересного. И знаете кто будет за это отвечать? Думаете фирма 1С?:)
Вы достаточно написали в первом посте.
Те кто профессионально занимаются сопровождением тем ваши комментарии не нужны, они перестали читать дальше еще с момента как увидели этот пункт в статье.
Кто дружит с головой, но не знал по какой то причине о том что нельзя просто так взять и изменить режим совместимости 1С, прочтя ваш первый комментарий, должны были понять.
Все остальные пусть делают по инструкции, в конце концов специалистам франчей будет доп. доход от устранения последствий подобных инструкций.
Всего лишь надо было написать, что вот всё готово, и интеграция доступна с версии 11.4.6. И рассказать что, собственно сделано.
Пассажи про снятие режима совместимости вы очень зря рассказываете, и на ровном месте дискредитируете себя как разработчика, и через это и свою разработку и компанию в которой работаете.
Для сведения: Группа стандартов разработки 1С в телеграмме @v8std
Участились случаи, когда поставщики своих расширений в инструкции по установке предлагают снять типовую конфу с поддержки и отключить режим совместимости с платформой.
1С проводит многоэтапное ручное и автоматическое тестирование своих конфигураций и рекомендации даются для тех версий платформы, в которых была выполнена разработка и тестирование.
Снимая типовую конфигурацию с поддержки и отключая режим совместимости с платформой, вы встаёте на скользкую дорожку неопределённости, полную внезапных неожиданностей.
Делать такое для экспериментов в лаборатории — ОК. Для продуктовой базы — слабоумие и отвага.
А на линии консультации вам ответят типовой формулировкой про несоответствие условий эксплуатации заявленным требованиям.
Не ведитесь.
Интеграция 3CX с 1С: Управление торговлей — метод установки расширения конфигурации