22 декабря 2014 в 17:09

Описание одной интеграции 1С и Битрикс, и почему я не рекомендую своим клиентам использовать такую интеграцию

Сроду такого не было, и опять то же самое.

В.С. Черномырдин.

Я уже говорил об обмене данными между программными продуктами семейства 1С и Битрикс-сайтами в статье Интеграция программного обеспечения. Описание процесса от бизнес консультанта. Но тогда я рассказал исключительно об общих принципах работы. В другой статье я написал о проблемах 1С и Битрикса.

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

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

Обучение Задать вопрос

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

Здравствуйте! Нужно срочно доделать синхронизацию сайта и 1С, точнее – выполнить выгрузку товаров, цен и фото из 1С 8.3 (последняя версия) на сайт. Помощь нужна срочно, если вы свободны, напишите мне, как с вами связаться, чтобы рассказать о проблеме подробнее. Заранее благодарен


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

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

Итак, исходные данные следующие:
  1. Имеется 1С Управления торговли. По словам клиента – последняя версия
  2. Перестала работать интеграция. Сразу после обновлений.
  3. Клиент утверждал, что обновился полностью.
  4. Битрикс последней версии
  5. Что делать?! Все пропало


Шаг первый. Версия конфигурации


Первое, что я делаю всегда, это проверяю информацию, которую мне предоставляет клиент. А в случае с 1С – обязательно самостоятельно проверяю текущую версию.

В данном случае релиз действующей конфигурации оказался 11.1.9.5. Это означало, что конфигурация не обновилась, версия не является последней.

Естественно, что я сообщил об этой ошибке клиенту, после чего самостоятельно установил обновления. Конфигурация обновилась. Интеграция так и не заработала.

При работе с 1С всегда перепроверяйте версию платформы и конфигурации! Это очень важно!
Напомню, что в Управлении Торговлей 11 заявлен стандартный модуль обмена данными между УТ.11 и Битрикс. Это стандартный встроенный модуль, который должен работать без каких-то дополнительных настроек. Но в моем случае после обновлений он так и не заработал. При запуске обмена просто не происходило ничего.

Шаг второй. Проверка платформы


Тогда я проверил релиз платформы. В принципе, его стоит проверять сразу. Лично я советую обязательно всегда самостоятельно проверять релизы и платформы, и конфигурации. Это настолько важно, что я не боюсь написать об этом повторно.

Проверяйте актуальность всех релизов самостоятельно!

В моем случае с платформой было все в порядке, релиз оказался последним, номер 8.3.5.1248, который вышел 31.10.14. (кстати пока я писал эту статью вышло еще одно обновление платформы ).

Итак, версии платформы и конфигурации в порядке, но обмен не работает.

Казалось бы, дальше нужно просто проверить модуль на стороне Битрикс. Но, как показала практика, для того, чтобы узнать, какой именно модуль поддерживает обмен со стороны Битрикс, необходимо пройти целый квест. Но не будем забегать вперед. Как и обещал, я рассказываю подробно и по порядку, что и как я делал, и какие решения нашел.

Шаг третий. Проверяем целостность базы данных


Так, первым делом я отправился на сайт Битрикс. Я перешел на следующую страницу:

http://1c.1c-bitrix.ru/ecommerce/download.php

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

Как и многие коллеги в подобной ситуации, я обратился за помощью к Интернету. На одном из форумов (mista.ru) я нашел информацию о том, что если не идет какой-то из видов обмена, обязательно нужно исключить из перечня возможных проблем нарушение целостности структуры базы данных. Для того чтобы выполнить это действие, в 1С существует встроенный инструмент: тестирование и исправление базы данных.

Итак, программа 1С провела большую и достаточно длительную работу, так как в данном случае база данных была на файловой основе, было исправлено много ошибок. Общее время работы тестирования и исправления – 40 минут.
Ждать, конечно, пришлось долго. Но все когда-то оканчивается. И вот, после тестирования, мы с надеждой на лучшее запускаем обмен. Снова нет никаких результатов.

Шаг четвертый. Специальный модуль: поможет ли альтернативное решение?


После того, как не помогла и проверка базы данных, я вспомнил о том, что также прочитал на одном из форумов, что кто-то из Битрикс-специалистов устанавливал специальный модуль обмена и всем его рекомендовал. Ну, что ж. Я также отправился в интернет, искать этот модуль и выяснять, зачем он нужен.

Нашел я только один вариант релиза этого модуля, предназначенный для версии 4.0.5.1. Я подумал, решил все же попробовать и скачал этот модуль интеграции. При скачивании я заметил, что версия этого файла у меня на сайте далеко не первая.

Мой файл после скачивания назывался так:

4.0.5.1_ UT_11.1.2(3).zip

Таким образом, оказывается, я как минимум четвертый человек, который пытался решить эту проблему и скачивал этот модуль.

Далее я все же установил этот модуль. В архиве к нему идет небольшая брошюра, что оказалось очень кстати. Но самая версия файла мне не давала покоя. И я решил спросить у клиента, какой я по счету? В ответ услышал, что я уже 5 или 6 специалист, который пытается решить эту проблему.

У меня уже появился спортивный интерес. Обратите внимание: уже прошло более часа, как я начал решать, казалось бы, простую задачу, но проблема до сих пор не только не была решена, но и пути ее решения все еще не были определены.

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

Первое, что я увидел, это явные отличия модуля от стандартного варианта обмена от 1С, который должен работать. Очень неудобно было работать с непривычным интерфейсом.
Кроме того, все эти действия не принесли никакой пользы.

Проверяйте версию модуля обмена данных 1С и Битрикс. Их может быть несколько одновременно: несколько версий, а также несколько разных конфигураций.

После попыток установить дополнительный модуль, я обратил внимание на такую надпись вверху экрана:



После прочтения этой надписи, я думал, что это и есть последняя, самая новая конфигурация. Но это было моей ошибкой. Только позже я разобрался, что есть более свежая версия и где ее скачать.

Кроме того, очень внимательно нужно следить за выбором модуля. Лично я поначалу запутался в этих модулях для России:



В общем, что я получил в итоге всех действий и проверок:
  • Есть обмен стандартный, который выходит в 1С. Он не работает.
  • Есть модуль обмена данных «Для России». Он также не заработал.
  • Внизу есть еще один модуль обмена. Но и он не работает.


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

Что меня еще сбило с толку. Если вы нажмете кнопку «Требования 1С», то увидите такую таблицу:

1c.1c-bitrix.ru/ecommerce/require_1C.php


Здесь также приходится угадывать, что и как скачивать.

Новый модуль обмена: особенности установки


Итак, я все же скачал новый модуль обмена и внедрил его в Управление Торговли. Естественно, при этом я снял конфигурацию с поддержки. Как ни странно, но факт:

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

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

Не забывайте делать Backup!

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

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

Появляется следующая ошибка:
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка СУБД:
Ошибка SQL: Несовместимые типы в выражении
по причине:
Ошибка SQL: Несовместимые типы в выражении


Что это значит? О чем говорит данная информация? Мне было не понятно.

Для начала я решил просмотреть отладчик. На поиск этой ошибки я потратил около получаса и не нашел вообще ничего. Честно говоря, тогда у меня закрались сомнения, что я вообще справлюсь с поставленной задачей.
Я пошел искать больше информации по теме.

И нашел форум, на котором наткнулся на такую ветку:

http://dev.1c-bitrix.ru/community/forums/forum26/topic19114/?PAGEN_1=65

Информацию об ошибке я благополучно нашел на 65 странице темы.



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



Конечно, я перешел по ссылке от модераторов, и там уже узнал, что проблема заключается в платформе.

Разработчик об этом писал следующее:

Наш модуль обмена сейчас несовместим с платформой 8.3.5.1248. В этой платформе, похоже, изменили что-то нехорошее. Для того, чтобы модуль заработал — нужно заменить строчки кода:
|КОГДА ВариантыКомплектацииНоменклатурыТовары.Характеристика ЕСТЬ NULL
|ТОГДА """"

На
|КОГДА ВариантыКомплектацииНоменклатурыТовары.Характеристика ЕСТЬ NULL
|ТОГДА НЕОПРЕДЕЛЕНО
В следующей версии модуля будут внесены соответствующие изменения.


Что это значит?

Администратор сайта 1С Битрикс практически признал, что ошибка находится в платформе 1С.

После того, как я нашел эту информацию, ошибка была исправлена и обмен, в общем, заработал. Но конкретно все — нет.

При выгрузке мы обнаружили, что фото и номенклатура передаются, а цены – нет. К счастью, что делать с этой проблемой, я уже знал. На стороне Битрикс, хоть он, казалось бы, и не работает при обмене, надо провести одно изменение, а именно – в справочнике с ценами поставить галочку «Доступен внешним пользователям».

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

Что получилось в итоге?


Задача была решена успешно. Мы с клиентом все настроили, обмен данными начал работать так, как и должен. Мы отработали со стороны 1С, специалист по Битрикс настроил работу с данными со своей стороны. В результате потребовалось 3 часа напряженной работы.

На что было потрачено это время?


Каждое действие требует определенных временных затрат. Обновления занимают от 10 до 15 минут, индексация и исправление базы данных – 40 минут, каждая попытка обмена – от 15 до 18 минут (если запускать полный обмен).
В результате мы потратили очень много времени для того, чтобы заново настроить то, что прекрасно работало перед обновлением конфигурации и платформы 1С.

Выводы


На собственном опыте, а также на основе внимательного чтения той самой ветки форума с проблемами интеграции и их решениями, я сделал такие выводы:
  1. Битрикс – никак или плохо взаимодействует с компанией 1С. Надпись 1С Битрикс ничего не значит, кроме того, что у этих программных продуктов общие владельцы.
  2. Настройка, казалось бы, типового обмена требует недюжинных усилий, при этом всегда есть риск напороться на ошибки с непредсказуемой стороны. Т.е. при обновлении нужно очень четко понимать, какая используется конфигурация, платформа, какая версия модуля применяется, а также надо проверять, нет ли ошибок для этого модуля.

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

И еще немного интересного из моего личного опыта



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

Что получается в итоге:

Нам нужно выгружать доработанные нашими силами справочники и данные в типовом виде.
Таким образом, имеем явное противоречие. Конечно, проблему мы обязательно решим и в этот раз, и в другой. Здесь важно понимать, что подобные накладки и противоречия – постоянные спутники каждого, кто занимается интеграцией 1С и Битрикс.

Если вы решились применять типовой обмен



Первое, что вам нужно понимать, что обмен, который вам предлагают, универсален, а потому сам модуль очень сложен. Кроме того, даже на этой странице v8.1c.ru/edi/edi_stnd/90/92.htm вы увидите, что имеется несколько версий этого обмена, причем, они регулярно меняются. А для полноценной настройки работы подобного обмена и, тем более, для доработки его под ваши потребности, вам придется очень четко понимать, как он работает.

Для примера:

Формат выгружаемых данных из УТ 11.1.9.56



Формат выгружаемых данных из УТ 11.1.9.56 с помощью модуля от Битрикс:



То есть имеем несогласованность форматов выгрузки от 1С и Битрикса для одной и той же версии платформы и конфигурации.

Взаимодействие продуктов 1С и 1С-Битрикс реализуется на базе процедур двунаправленного обмена данными. Обмен данными выполняется с использованием основанного на XML открытого Стандарта обмена коммерческой информацией – CommerceML 2.0.

Если вы почитаете, что представляет собой CommerceML 2.0, вы так же, как и я, поразитесь тому, насколько этот стандарт сложен по сравнению с другими. Даже просто описание, т.е. сам файл схемы описаний в формате txt занимает 107 килобайт!

И любая ваша ошибка, скорей всего, окончится тем, что обмен вообще перестанет работать.

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

Как делать интеграцию?


Я уже давал этот совет и дам еще раз: обмен нужно писать самому. Кроме интеграционных механизмов, у вас может возникнуть и другая проблема: сам модуль опирается на определенным образом заполненные данные. И эти правила также могут меняться и регулярно меняются.

Итак, в процессе «борьбы с обновлениями» вы справились с платформой, с модулем, а потом натыкаетесь еще и на ошибку, которая идет от неверного формата данных. Оказывается, заполнять их также надо определенным, причем, неявным образом. Вспомните, как я в своем примере указывал необходимость поставить «галочку» на стороне 1С Битрикс, о которой я, к счастью, знал. А иначе бы время работы над настройкой обмена еще больше затянулось бы. И нигде в документации об этой самой «галочке» не сказано ни слова!

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


Если вы хотите все-таки использовать типовой модуль, последовательность ваших действий должна быть такой:
  1. Проверили версию платформу
  2. Проверили версию конфигурации
  3. Проверили версию модуля.
  4. Проверили все базы данных, убедились, что данные подхватываются.
  5. Проверили соответствие версий 1С Битрикс и программного продукта 1С.
  6. Проверили целостность баз данных, если они файловые.

Скорей всего, в процессе выполнения этих действий обнаружится ошибка. Кроме того, очень важно помнить:
Ни в коем случае не дорабатывайте типовой обмен.

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

Как видите, интеграция программных продуктов 1С и сайтов Битрикс – занятие достаточно сложное, требующее внимательности, чаще всего, опыта, и даже он не всегда помогает. К сожалению, помощь по новым багам, которые достаточно стабильно приходят взамен старым, реально найти только на форумах. Именно по этой причине я предпочитаю писать обмен самостоятельно. Но если необходимость возникает, то и решение найдется (я надеюсь).

С уважением Рамиль Кинзябулатов.
Задать автору статьи вопрос
Автор: @JustRamil
Trinion
рейтинг 48,62
Компания прекратила активность на сайте

Комментарии (86)

  • –5
    1. Не понимаение алгоритмов обмена.
    2. Не понимание механизма планов обмена.
    3. Не понимание способов регистрации объектов к обмену.

    Барахтаетесь в луже из трех справочников (Номенклатура, Присоединенные файлы (Номенклатура), ЗаказыКлиента) и не можете их синхронизировать, вы когда-нибудь нетиповой РИБ видели с автоматическим обменом на 50+ филиалах?

    Не стоит вайнить на «глючность» платформы и злой и плохой 1С из-за своей некомпетентности.

    Сходите на курсы что-ле.
    • 0
      1. Не понимаение алгоритмов обмена.
      2. Не понимание механизма планов обмена.
      3. Не понимание способов регистрации объектов к обмену.

      Вы вообще о чем? У меня ни слова нет в тексте, о том про что вы пишите.

      • +2
        Вот и я о том же, вы не знаете этого, потому и не включили в статью. А знали бы — статью не писали бы.
        • +3
          Что конкретно по вашему мнению не включил в статью? Если у вас есть что добавить по сути статьи, то я прошу вас написать.
          • +2
            Статья состоит из набора действий по настройке типового обмена, и часть из них можно было вообще не совершать, т.к. к обмену они вообще никакого отношения не имеют.

            Это все проблемы настройки и промышленной эксплуатации, которые при бережной поддержке проблемами вовсе не являются. Например фактически нет ни одного основания проводить контроль целостности. Это действие выполнено просто абы повезет и заработает, аля шаманство. Достаточно найти ответ на вопрос что делает этот контроль, и вы сразу сами все поймете.

            Конкретно не хватает:
            Общего описания для понимания:
            1. Описания алгоритма обмена: что используется со стороны 1С что со стороны Битрикс.
            2. Какие способы обмена используются, тот же типовой обмен как минимум имеет вариант обращения непосредственно к сайту или использую промежуточные файлы.
            3. Каким образом дозаполняются недостающие реквизиты при соответствии элементов справочников.
            Описания действий при неработающем обмене:
            4. Какие этапы обмена происходят и каким образом выполнять отладку каждого из этапов.
            5. В частности: Какие объекты и после каких действий будут включены в сессию обмена, как со стороны 1С так и со стороны Битрикс. Какими способами получить этот состав на этапе отладки.
            • 0
              1. Описания алгоритма обмена: что используется со стороны 1С что со стороны Битрикс.

              Написано же. Причем несколько раз.
              2. Какие способы обмена используются, тот же типовой обмен как минимум имеет вариант обращения непосредственно к сайту или использую промежуточные файлы.

              В данном случае речь шла именно о выгрузке. Выгрузка не работала вообще.
              3. Каким образом дозаполняются недостающие реквизиты при соответствии элементов справочников.
              Описания действий при неработающем обмене:

              Какая разница какое сопоставление?
              4. Какие этапы обмена происходят и каким образом выполнять отладку каждого из этапов.

              Этап был самы первый. Выгрузка. И она не работала.
              5. В частности: Какие объекты и после каких действий будут включены в сессию обмена, как со стороны 1С так и со стороны Битрикс. Какими способами получить этот состав на этапе отладки.

              При чем тут это?

              Мне кажется вы не прочли статью.
              • +4
                Выгрузка не работает. Ок. Из каких этапов состоит выгрузка?

                Можно назвать как минимум 4:
                1. Получение объектов к обмену
                2. Получение правил конвертации.
                3. Составление макета компановки и выполнение процессора. Генерация файла.
                4. Передача файла в приемник

                Каким образом можно отладить каждый из этих этапов или хотя бы понять на каком из этапов произошел провал?
                В зависимости от ответа на этот вопрос можно либо просто вызвать обработку РегистрацияОбъектовКОбмену которая входит в БСП и убедиться что объекты действительно должны переноситься. Либо проверить не заменены ли правила в узле обмена входящего в план обмена с сайтом. Либо убедиться в том, что ошибка именно в модуле компановки, т.е. в релизе УТ, что менее всего вероятно, либо проверить доступ к приемнику, может быть все работает, но просто не передается?

                Согласитесь, об этом не было ни слова =)
                • +2
                  1. Получение объектов к обмену
                  2. Получение правил конвертации
                  3. Составление макета компановки
                  4. Передача файла в приемник

                  А вы не забыли что все это меня как пользователя не интересует. Ведь обмен должен работать не настраивая все то что вы перечислили.
                  Основная претензия что обмен 1с и Битрикса — это дорого, долго, и ненадежно.
                  • –2
                    Если вы пользователь — то не вам настраивать 1С и не вам писать статью как это все плохо настраивается. Оставьте это дело специалистам.

                    Любая интеграция — это долгий и кропотливый труд, который требует полного понимания как предметной области, так и архитектуры двух интегрируемых систем. Даже если вам надо просто это все между собой настроить.
                    • +2
                      Как вы это —
                      Любая интеграция — это долгий и кропотливый труд, который требует полного понимания как предметной области, так и архитектуры двух интегрируемых систем. Даже если вам надо просто это все между собой настроить.

                      Соотносите с этим
                      Для того, чтобы обеспечить интеграцию не нужно обладать специальными знаниями в программировании или веб-технологиях. Настройки просты и понятны для пользователя, обладающего общими навыками работы с компьютером и базовыми знаниями продуктов «1С» и «1С-Битрикс».

                      Про интеграцию рекомендую почитать мою статью
                      • –2
                        т.е. данная статья это вайн на рекламную компанию 1С? Ну простите, все любят приукрасить свои детища.

                        В самом деле специальных знаний и правда не надо. Конкретно для типового обмена УТ-Битрикс со стороны 1С надо знать лишь:
                        1. Как посмотреть версию правил обмена, загрузить и выгрузить новые правила.
                        2. Как посмотреть объекты к обмену, зарегистрировать, отменить регистрацию объектов.
                        3. Как проверить доступность папки обмена или модуля обмена на сайте.
                        • +4
                          Подскажите, а действительно выгрузка в Битрикс использует правила обмена? Нет ли здесь ошибки?
                          На сколько я знаю, правила обмена используются при обмене между конфигурациями 1С с обоих сторон. А для Битрикса же просто формируется свой xml-файл прямо из обработки обмена.
                          Если я ошибаюсь, подскажите, пожалуйста, где можно найти информацию об использовании правил обмена при выгрузке данных в Битрикс.
                          • +1
                            Дело в том, что сам процесс формирования файла xml происходит по некоторым правилам.
                            Эти правила могут быть простыми (ну к примеру выгружается дерево номенклатуры) а могут быть сложными с постобработкой выгрузки.
                            Просто сама обработка выгрузки универсальная, ей без разницы куда вы будете затем загружать этот файл, на сайт в стороннюю программу. А с помощью правил вы указываете структуру получающегося дерева.
                            • 0
                              Удалено
                            • 0
                              Поведение, описываемое Вами, очень похоже на поведение обработки УниверсальныйОбменДаннымиXML (V8Exchan82.epf). Выгрузка же данных в Битрикс делается обработкой ОбменССайтом и эта обработка не использует никакие внешние правила обмена.
                              Где я ошибаюсь, подскажите, пожалуйста.
                              • +1
                                Вы совсем не ошибаетесь =)
                                Типовой обмен с сайтом от УТ 11.1 не использует правил обмена, которые описываются в конвертации и служат для обмена между базами 1С.
                                Файл XML генерируется прямо в обработке. Точнее даже не в обработке, а в общем модуле ОбменССайтом. По сути в этом модуле и задаются правила формирования файла омбена.
                                Типовой обмен используется не только для синхронизации с битриком, но и для синхронизации с любым другим сайтом, поддерживающим CML2.
                                Версию обмена можно посмотреть в вышеописанном модуле.
                                Обновить обмен можно накатив изменения с другим модулем обмена на конфу (выполнить сравнение объединение с дополнительной поставкой).
                              • +2
                                Да действительно я ошибся, сам файл формируется в общем модуле.
      • +2
        Все правильно пишет, знаний у вас маловато, писать статью и не понимать как это работает, а если переделанный обмен будет, в гугле уже не поможет, все таки нужно уметь больше чем нажимать кнопки.
        • 0
          Переделы с сериям характеристиками, да еще перемещения внутри холдинга это вообще сказка. Но из коробки то должно работать. ))))
          • 0
            А кто тогда меня кормить будет? Я ежедневно такие статьи писать могу, бывает даже по 2, не работает оно из коробки почти более чем никогда, может и работает, но какие то шаловливые ручонки все всегда испортят.
      • 0
        Вот именно, у вас нет ни строчки про решение проблемы.
        Вы даже не локализовали проблему как таковую. Если Вы говорите что Вы программист 1с и к Вам обращаются обычные пользователи чтобы Вы решали их проблему за денюшку, то из это я могу сделать вывод что Вы должны быть более продвинутым человеком чем обычный пользователь 1С.

        Как бы я попробовал решить данную проблему.
        1. Проверить а появляется ли вообще файл выгрузки и оттуда ли его забирает битрикс.
        2. Спросить, а есть ли бэкап данных до обновления.
        3. При наличии бэкапа сравнить 2 xml файла выгрузки старый и новый.

        Далее уже по обстоятельствам.
        Если бэкапов нет (даже стареньких) а файл существует, то посмотреть структуру выгрузки и что хочет видеть загрузчик.
        При наличии бэкапов все становится проще.
        Проверим старую конфигурацию и старую платформу.
        В вашем случае я бы обратил внимание что выгрузка отсутствует или файлик пустой, следовательно проблема именно там. Качаем предыдущий релиз с правилами, сравниваем запросы (там изменений то 10-20 строк не всю же конфу лопатить) профит. Ну или на предыдущей версии платформы все бы работало.

        И кстати ну вот реально ЗАЧЕМ ОБНОВЛЯТЬ ПОСТОЯННО УТ??
        Ну никто не может этого объяснить. Ну что за сказки что там полно багов, без обновлений никак но эти обновы тока добавляют проблем. Сотни организаций работают на УТ 10.3 и платформе 8.1 и не знают про обновления вообще. Методика управленческого учета не меняется. Штуки как приходили так и уходят. В налоговую ничего носить из УТ не надо. Никаких причин обновляться постоянно вообще нет!
        • 0
          а еще — старый выгруженный на сайт файл с xml-ками можно взять в папке upload. Ну, конечно, если он уже не затерся после предыдущих не успешных попыток выгрузить из 1с данные
        • 0
          ваш комментарий полезный в плане передачи опыта. при этом не обязательно осуждать кого-то (первый абзац лишний по жизни)
    • +1
      Это вам курсы нужны. Русского языка.
    • +15
      Система, которая из коробки не хочет работать, не имеет нормальных RTFM'ов и ещё и требует курсов MUST DIE.
      • 0
        RTFM есть в количестве 6 книг которые идут при покупке 1с УТ (бухгалтерии, упп, унф и прочих)
        Из коробки работает.
        Курсы нужны чтобы грамотно вести учет и сдавать налоговую отчетность.
        Вы когда Word открыли сразу знали про колонтитулы или оформление параграфов?
        Дело только в том, что клиент на настроенной системе начал ставить свои опыты. А давайте обновим (спрашивается зачем??)
        Ну для примера в офисе половина Word будет версии 2000, половина 2011. И потом окажется что без заплаток совместного обмена файлами не получится. А что система из коробки (правда из разных как и в данном случае).
        1С в силу своей монополии используется огромным пластом людей, знания которых о компьютерах весьма слабые. Про офисный пакет также имеется огромное количество шуток и баек. Также и привычка всех бухгалтеров и офисных работников сваливать свою вину на программу/компьютер/админов. Редко когда бухгалтер скажет я не разобралась и поэтому накосячила. Хотя в 99% случаев именно так и есть, невнимательность, не знание предметной области, халатность. Поэтому валить все на программный продукт — нелепо и глупо.
        • +4
          Вы конечно правы, однако… Однако главное и основное — монополия. Монополия — это занятная игра, а на рынке в любом продукте монополия в итоге превращается в продукт, который низкокачественнен и дорог. Именно поэтому изобрели ФАСы и проч. антимонопольные штуки. Абсолютно по Дарвину естественный неотбор.

          Только это и является одной из причин нелюбви к 1С. И это и будет причиной её смерти.

          Историю вспомните — до 19 века (или в средние века?) процветали т.н. ремесленники, которые делали всё нестандартно и секретно. А потом когда пришли товарищи с фабриками, заводами и стандартизацией (аналог «из коробки») — ремесленники были наклонены.

          Что отличает хорошую компанию от великой? Великая компания знает, что не надо делать и что надо прекратить делать немедленно. Именно великая компания придёт и сделает систему, которая не будет требовать чтения 6 толстых книг и посещения курсов.
          • –2
            С одной стороны я с Вами согласен, но (как всегда есть НО)
            Аналогия с офисным пакетом. Опенофис как не старается ни получается догнать по функционалу микросовтофский продукт. Я согласен что я не использую и пятой части функционала. Но если бы была совместимость, я бы использовал открытый продукт. Но мне зачастую присылают файлы сделанные в старших версиях экселя. И нормально открыть их не получается.
            В ситуации с 1С все намного печальнее.
            Для совсем маленьких ИП и ООО можно вести учет на коленке и сдавать отчетность заполненную от руки.

            Но как только вы начинаете торговать в розницу (к примеру) надо тут же учитывать себестоимость, остатки по складам, взаиморасчеты с контрагентами и прочее. Конечно есть открытые продукты, в облаках, на вэбе и прочие. Но они не популярны (так себе аргумент), по ним подсказать мало кто может (ну есть же ТП), вэбовские зависимы от интернета (а на периферии с этим бывают напряги), десктопные по функционалу (ну те которые мне встречались) не далеко ушли от экселя с формулами, но вот по цене десктопные сравнимы с базовыми продуктами 1С (1с розница 3300).

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

            И весь этот небольшой учет должен еще правильно отчитываться! А вот тут мы и подходим к слову обновления. Зачастую они необходимы только для полноценной сдачи отчетности. Раз в квартал обычно что-то меняется, вводятся новые законы. Под эти изменения меняются вид электронных документов и поля в печатных формах.
            И вот тут то и идет стандартизация как вы и говорили. Есть стандарт (1с это как раз не ремесленник а фабрика, просто на фабрике много разной продукции производится) и этому стандарту должны подчинятся все сапы, 1с, аксапты и прочие жители этого рынка. Стандарт сдачи отчетности и стандарт печати первичных документов.
          • 0
            Какое то проявление дилетантизма в IT сфере: утверждать, что систему учёта (не говоря уже о ERP и т.д.) можно легко освоить по краткой инструкции распечатанной на 2-х страничках А4. Да, «великие» компании MS со своей Axapta и SAP с R/3 — странные люди, курсы минимум на месяц по изучению организуют, да ещё и без экзаменов вас ни кто не пустит рулить этим хозяйством :) MS уже как «фабрика и завод» приходил за «кустарной» 1С, с тем и ушёл. Все работают на 1С а не с «заводской» Microsoft Dynamics AX.

            1С не монополист, хотя за ней и самая большая доля рынка. Ну и как говорится, вы бы пробовали что-то другое, а затем пробовали это сравнить с основным продуктом 1С? Рынок прекрасно всё показывает, что ему больше нравится по всем показателям. Не нравится 1С: Парус, Галактика, BEST, ИНФИН, Excel,… Так что о причинах смерти — 2я глупость :)
            • +1
              Я — тупой? Сам ты тупой! (с)


              Если бы я спросил людей, чего они хотят, они бы попросили более быструю лошадь. (с)


              Вы так и не уловили, что я имел в виду — моя вина, объяснил сложно.
              • 0
                Ну так нужно проще мысль излагать, она и понятнее многим будет :).

                1С, как и любой софт, присуще море недостатков, но, в сравнении с остальным, существующим на РФ рынке местным (да и такого же уровня зарубежным) это замечательное решение. Довольно гибкое и масштабируемое. Про горе-специалистов — отдельная тема. Дураков полно везде. Про автора я промолчу (тут полное незнание темы).

                Да братьев Нуралиевых (если уж говорить о гибкости) можно смело считать одними из основателей легальной продажи массового коробочного софта в РФ.
                • +1
                  А что молчать то, настоящий бизнес консультант, такие всегда критику воспринимают плохо, видать бизнес не идет.
                  • +1
                    Ну вот такие «опытные» «бизнес консультанты» и создают плохую репутацию, в целом хорошим продуктам :)
                    • +1
                      этот персонаж на forum.mista.ru уже всем мозг «проплакал», да и репутацию имеет человека с которым лучше не работать, теперь на хабре плачет.
                      • 0
                        До этого и Drupal сообщество тоже послушало интересные мысли :) Кстати, на мисте я предполагаю какие комментарии были…
    • –2
      «сходить на курсы» — это не решение. Все, что вы знаете — это большей частью из личного опыта, а не из курсов.
      всех книг не перечитать — всех курсов не пройти. мы все в чем-то некомпетенты. и речь как раз о том, что в этой ситуации некомпетентными оказались в первую очередь ребята из группы разработки типового обмена между 1С и Битрикс — ребята, отвечающие за обмен — ребята, которые работают как в фирме 1С, так и в фирме Битрикс.

      … Клиент попал на ошибку, 1С и Битрикс не дают гарантий работоспособности после обновлений.
      Тут два пути:
      1) начать судебный прецедент, Клиент подает иск на фирму 1С и на фирму Битрикс
      2) Клиент ищет спеца-консультанта, который начинает танцевать с бубном

      Если у вас много опыта в решении такого рода задач, то честь вам и хвала!
      Только вот вас на всех Клиентов не хватит, и разбираться приходится тем, кто отваживается на это, хоть и без опыта прохождения курсов…
      • –1
        лучше бы не писал я свой пост… :(
  • +3
    Следующим миллиардером в России станет тот, кто сделает нормальную и надёжную бухгалтерию, которая из коробки будет работать везде и интегрироваться со всем.

    1С — это IE. Кто же будет Firefox'ом и Chrome'ом?
    • 0
      Для того, чтобы такая бухгалтерия работала, нужна орда програмистов, клепающая отчеты под часто меняющиеся законы (не уверен как с этим сейчас в России, но в Украине баз такой орды, никак) ну или государство должно значительно упростить налогообложение.
      Кто сейчас мешает наклепать учет под www.odoo.com/? Там и сайт есть и CRM и денег платить не обязательно.
  • +7
    Больше всего понравилась строка "…
    я успешно нашёл на 65 страницы темы". Интересный квест у Вас получился))
    • –1
      Не бросать же на половине пути задачу…
  • +6
    Обмен это самый тяжелый случай из набора тяжелых случаев под названием Битрикс.
    • +1
      Для того, чтобы обеспечить интеграцию не нужно обладать специальными знаниями в программировании или веб-технологиях. Настройки просты и понятны для пользователя, обладающего общими навыками работы с компьютером и базовыми знаниями продуктов «1С» и «1С-Битрикс».

      С сайта Битрикса. Вранье какое то на сайте у них.
    • +3
      Да все там просто. Не надо тут.
      По крайней мере со стороны Битрикс.
      Соблюдай формат и будет тебе счастье.
      • –3
        Где я написал про проблемы на стороне сайта? Речь в статье именно о проблемах выгрузки данных на сайт из 1С. О проблеме которой в принципе не должно быть исходя из названия 1С Битрикс и информации с сайта Битрикса.
        • +2
          После того как клиент сам все обновил, не сделал бэкапов и не проверив запустил обмены… Проблемы были скорое на стороне «клиента» )
  • +2

    Наш модуль обмена сейчас несовместим с платформой 8.3.5.1248. В этой платформе, похоже, изменили что-то нехорошее. Для того, чтобы модуль заработал — нужно заменить строчки кода:
    |КОГДА ВариантыКомплектацииНоменклатурыТовары.Характеристика ЕСТЬ NULL
    |ТОГДА """"

    На
    |КОГДА ВариантыКомплектацииНоменклатурыТовары.Характеристика ЕСТЬ NULL
    |ТОГДА НЕОПРЕДЕЛЕНО
    В следующей версии модуля будут внесены соответствующие изменения.


    Может я сноб, но я не могу представить себе что-то делать или использовать систему в которой можно встретить такой «код».
  • 0
    Есть система из 4 — 6 — 9 компонент, каждая из которых разрабатывают независимо друг от друга и каждая имеет множество версий.
    В данном случае это 4 компоненты: Платформа, УТ, Сайт, Обмен УТ-Сайт.
    Обновить все до последнего релиза не убедившись в совместимости, а после этого говорить, что все совсем не работает. Странно, не правда-ли?

    Это тоже самое, что писать используя .NET 4.0 и компилировать под MS WP 5.0 и удивляться, почему же это не запускается на WP 6.0, на котором есть только .NET 3.5.

    xDD
  • –1
    Ваше утверждение «Надпись 1С Битрикс ничего не значит, кроме того, что у этих программных продуктов общие владельцы.» не соответствует действительности. Часть названия «1С-...» была добавлена к Битриксу только из-за маркетинговых соображений несколько лет назад (хотелось получить доступ к сети распространения 1С и тем самым, увеличить присутствие Битрикса на рынке).

    Рекомендовать писать собственную выгрузку в 1С-Битрикс — авантюризм. Можно и ракету для полета на Марс самому пытаться делать, но это будет так же долго, дорого и не факт, что полетит. Не забываем о дальнейшей поддержке и доработке.

    1С давно превратилась в неповоротливого монопольного монстра, который плевать хотел на все стороннее и к тому же еще делает попытки самостоятельно закрепиться в web-e. Отсюда и низкая мотивация кому то и что то нормально отдавать на сторону.
  • +7
    По сути вся статья свелась к типовому фиксу бага, применяемому в 90% случаев:
    1. Открыть логи
    2. Ctrl+C
    3. Открыть гугл
    4. Ctrl+V
    5.…
    6. PROFIT!!!
    приправленному поливанием из ушата бажной системы. Ну так если бы она не была такой бажной, у автора и работы бы не было.
  • –4
    Описание одной интеграции 1С и Битрикс, и почему я не рекомендую своим клиентам использовать такую интеграцию

    А я вообще не рекомендую 1С никому… Шлак…
    • 0
      Возможно все на ней сидят (ну или почти все, привет SAP, Axapta) и кормят орду программистов. 1C пусть и с багами, решает проблемы бизнеса, и раз ей пользуются, значит есть толк, и цена соответствует качеству. Есть аналоги, кому они по карману и масштабу предприятия, те и ее и используют. Но как говорится «Серебряной пули нет».
  • +1
    Поделюсь чуть своим впечатлением от всего этого… по обмену — на самом деле, разброд и шатание. Куча модулей, неизвестно откуда, для чего и почему. Внутри написаны корявенько, если сравнивать с типовыми конфигурациями.
    Но в общем — всё работает, если есть адекватные специалисты на стороне 1С и на стороне сайта. Посмотреть отладчиком, посмотреть файлы, подумать чуть — и всё решается.

    Особо повеселил пункт «Ни в коем случае не дорабатывайте типовой обмен.». А что, молиться на него? :)
    Если там есть вещи, которые не подходят, или ошибки — ждать с моря погоды?

    P.S. Через пару лет, возможно, будет лучше. 1С наконец нормальные модули вводят, которые можно будет ставить на конфигурации не ломая обновления.
    • 0
      Ну обработчики драйверов подключаемого оборудования для ут 11.1 уже перевели на внешние подключаемые обработки (как это и было раньше в ут 10.3). И это здорово, в отличии от рпедыдущих релизов.
      Если обработчик обмена с сайтом сделают таким же подключаемым, то будет просто зашибись.
    • +1
      интересно, вы в штате или консультант приходящий-уходящий?
      я к тому, что у них разные картины мира. если в штате, то вы сопровождаете одну базу, и поменять типовой обмен для вас будет нормальным решением, а затем эти изменения постоянно поддерживать. консультант строит работу иначе — использовать типовые настройки по максимум, и фирма 1С и Битрикс этому способствуют, называя свои продукты «готовыми решениями», сертифицируя спецов как «консультантов» или «разработчиков».
      я полагаю, что призыв не изменять типовой обмен как раз и относится к консультантам, которые не планируют поддерживать обмен м/у 1С и Битрикс этого клиента.
      вот еще наблюдение из жизни: приходя к клиенту, начинаешь всякий раз работать со спецом Битрикс той фирмы, с которой работает клиент. и получается, что приходится иметь дело с новым человеком — сможет помочь или нет — неизвестно.
      • 0
        Спасибо за ценный комментарий. Да вы правы. Моя цель сделать так чтобы работало и меня не дергали, потому что я почти всегда работаю на сдельной основе. Соответственно, если что то пойдет не так, мне придется тратить время и деньги ( заплатить спецу которого я найму, ведь я не программист ), которые мне не компенсируют. А человеку в штате, все равно, ведь ему платят за время по большому счету.
      • 0
        Я консультант, но специфика клиентов такая, что конфигурации довольно сильно приходится дорабатывать. Поэтому доработка ещё и обмена погоды не сыграет, всё равно обновлять конфигурацию потом я же буду.
  • 0
    Ого, прям скрины моих сообщений…

    По порядку:

    1. Ошибка в запросе. Последняя версия модуля для УТ 11 вышла до того. как вышла платформа 8.3.5.1248, которая несовместима с нашим модулем обмена. Падает обмен, и правда, на корявом месте, но платформа должна была работать. В следующей версии модуля запрос будет поправлен.
    Решение этой проблемы было оперативно выложено на наш сайт

    2. По поводу версий схем обмена. Наша схема на значительно более расширена, чем та, которую использует 1С. Помимо этого доработан обмен по http. Можно сказать, что наш модуль кардинально отличается от типового.

    3. Я тоже не вижу причины постоянно обновлять платформу и релиз конфигурации. По хорошему он должен обновляться тогда, когда нужно.

    Вообщем по статье, ничего существенного и интересного. Лучше посмотреть наши вебинары по 1С. Там много чего интересного можно подчерпнуть.

    Теперь по комментам.

    Подскажите, а действительно выгрузка в Битрикс использует правила обмена? Нет ли здесь ошибки?
    Не использует.

    Обмен это самый тяжелый случай из набора тяжелых случаев под названием Битрикс.
    Нет. не самый. Но все думают, что там все просто. Там тоже знания определенные нужны, и опыт настройки обмена.

    Может я сноб, но я не могу представить себе что-то делать или использовать систему в которой можно встретить такой «код».
    Единственно, что в нем было плохо — это то, что возвращается строка, а неопределено. Из за этого платформу 1С и клинит.

    Поделюсь чуть своим впечатлением от всего этого… по обмену — на самом деле, разброд и шатание. Куча модулей, неизвестно откуда, для чего и почему. Внутри написаны корявенько, если сравнивать с типовыми конфигурациями.
    Лишних модулей нет. Написано максимально просто, по сравнению с типовым модулем.

    • +2
      Куча модулей
      Я имел ввиду что их несколько разных, и сходу непонятно какой брать. Мне сначала дали один, потом второй со словами «этот более стабильный».
      И истории изменений я не нашел, только большой текст какой классный новый модуль (без указания версии).
      Внутри написаны корявенько, если сравнивать с типовыми конфигурациями
      Имеется ввиду не типовой модуль выгрузки, а сама конфигурация.
      По вашему же модулю — большой плюс за XDTO, использование xsd, — я когда типовой модуль смотрел то очень удивился, что они «врукопашную» формируют файл.
      Говоря о корявости — вот сходу перечень замечаний:

      • моё любимое — открытие лог-файла через «ЗапуститьПриложение(ИмяФайла);» на сервере, в результате чего ничего не открывается, и клиент 1С виснет, т.к. ожидает завершения запущенного на сервере приложения;
      • странная настройка прав, не дающая простым пользователям записывать объекты, входящие в обмен;
      • нет настройки расписания онлайн-обмена;
      • регл. задание обычного обмена не удаляется при отключении расписания;

      Это всё по модулю версии 4.0.3.1 для УТ 3.0.8.1 для Украины. Может быть вина тех, кто адаптировал его для украинской УТ (там тот ещё трэш сделали «адаптаторы» — перетянута куча функций из российской УТ, несколько обращений к несуществующим реквизитам и т.п.)

      P.S. сейчас вот стал вопрос, как привязать разные картинки к разным характеристикам товара — вроде бы элементарная функция, а ни в типовой 1С, ни в модуле обмена такого нет… доработать на стороне 1С не вопрос, а вот с обменом что делать? не хотят товарищи на стороне сайта его менять от типового :(
      • 0
        Я имел ввиду что их несколько разных, и сходу непонятно какой брать. Мне сначала дали один, потом второй со словами «этот более стабильный».
        И истории изменений я не нашел, только большой текст какой классный новый модуль (без указания версии).

        Когда только вышел модуль, то само собой было куча багов + очень много хотелок клиентов. Я их оперативно правил, поэтому так часто новые версии модулей и выходили. Теперь значительно реже, т.к. потока небольших хотелок нет, а багов очень мало.

        По вашему же модулю — большой плюс за XDTO, использование xsd, — я когда типовой модуль смотрел то очень удивился, что они «врукопашную» формируют файл.
        1С тоже потихоньку переходят на XDTО. Технология очень интересная. В нашем случае удобная для выгрузки данных, и немного неудобная для загрузки.

        моё любимое — открытие лог-файла через «ЗапуститьПриложение(ИмяФайла);» на сервере, в результате чего ничего не открывается, и клиент 1С виснет, т.к. ожидает завершения запущенного на сервере приложения;
        тут надо удаленно смотреть, есть ли права у пользователя, под открыт сеанс, на открытие файла, который лежит на сервере.

        странная настройка прав, не дающая простым пользователям записывать объекты, входящие в обмен;
        Наши объекты требуют включение роли, которая идет вместе модулем обмена.

        нет настройки расписания онлайн-обмена;
        Есть. Можно задать время начала и время завершения. В следующем большом обновлении будет доработан и для файловой базы, чтобы выполнялось в фоновом задании.

        Украинский модуль незначительно отличается от нашего. Но не существенно.

        P.S. сейчас вот стал вопрос, как привязать разные картинки к разным характеристикам товара — вроде бы элементарная функция, а ни в типовой 1С, ни в модуле обмена такого нет… доработать на стороне 1С не вопрос, а вот с обменом что делать? не хотят товарищи на стороне сайта его менять от типового :(
        Если УТ 11(3.0 для укр), то можно через свойства. Они даже нашим модулем из 1С выгружаются. И в БУС подгружаются(возможно еще тестируется) в hl справочник.
        • +1
          тут надо удаленно смотреть, есть ли права у пользователя, под открыт сеанс, на открытие файла, который лежит на сервере.
          Нет, вы меня не поняли. 1С работает в клиент-серверном режиме. По команде открытия лог-файла, выполняется код «ЗапуститьПриложение» на сервере. А т.к. сервер находится где-то далеко в серверной, и рабочего стола у пользователя там нет, то он ничего увидеть не может.
          В данном случае правильное решение — передать файл через временное хранилище на клиента, сохранить в temp и потом уже показать пользователю.
          Наши объекты требуют включение роли, которая идет вместе модулем обмена.

          Для всех пользователей? Это нехорошо. Тут достаточно в модуле регистрации изменений сделать «УстановитьПривилегированныйРежим(Истина)», и никаких ролей не надо. Роль нужна только для тех, кто собственно ответственный за обмен.
          Есть. Можно задать время начала и время завершения.
          Может быть в последней версии модуля и есть. Но в той, о которой писал я — нет. Версия скачана с сайта около месяца назад.
          Если УТ 11(3.0 для укр), то можно через свойства.
          А если надо несколько картинок? Свойство-то может иметь лишь одно значение, а никак не массив.

          Ну а про кривость адаптации я уже писал… там в комментариях ещё Санлайн написано, это они я так понял её делали.

          P.S. Что ещё непонятно… почему нельзя этот модуль сразу поставлять в составе типовых?
          • 0
            В данном случае правильное решение — передать файл через временное хранилище на клиента, сохранить в temp и потом уже показать пользователю.
            Возможно в следующей версии будет реализовано.

            Для всех пользователей? Это нехорошо. Тут достаточно в модуле регистрации изменений сделать «УстановитьПривилегированныйРежим(Истина)», и никаких ролей не надо. Роль нужна только для тех, кто собственно ответственный за обмен.
            Будет такое в следующей версии.

            Может быть в последней версии модуля и есть. Но в той, о которой писал я — нет. Версия скачана с сайта около месяца назад.
            Почти с самого начала это было. В клиент серверном режиме реал тайм выполняется в фоновом задании. Само это задание задается на форме списка узлов настроек.

            А если надо несколько картинок? Свойство-то может иметь лишь одно значение, а никак не массив.
            Ну тут да. Такого нет, а типовой функционал мы не трогаем.

            Ну а про кривость адаптации я уже писал… там в комментариях ещё Санлайн написано, это они я так понял её делали.
            Да, они адаптируют, на основе нашей.

            • +1
              Само это задание задается на форме списка узлов настроек.
              Хм… хорошо же вы его запрятали :)
              Я по логике искал его рядом с флажком «Используется в режиме реального времени»…

              По остальному ясно, спасибо за ответы.
              А по адаптации… её нужно сделать качественно. Шаг влево/вправо, и такая какая есть — она работать перестанет.
  • +1
    Забавно, конечно, читать описание приключений котенка, который бродит по квартире в поисках своей миски. Но соглашаться с его выводами, что этот дом ему не подходит, потому, что от стула в кухне до миски в кухне через лоджию слишком долго добираться, наверное, не стоит.

    К примеру, имел приключение в крутом фирменном автосервисе, в котором мойщик наглухо заблокировал мое авто, не предупрежденный об установке дополнительного иммобилайзера. После двух часов висения на телефоне с установщиками оной системы из другого крутого фирменного сервиса и решения вызывать (в сервис!) эвакуатор пришел «петрович» с вольтметром и двумя проводочками и, очень логично объяснив мне каждый свой шаг, за 15 минут сделал «все как было». На каждый день «петрович» не нужен (и битрикс из коробки обычно работает и обновления накатываются), но если что не так — вызывайте «петровича» в спецухе, а не мальчиков-говорунов в галстуках.

    А Битрикс, конечно, накосячил. И, проверив обмен, нужно тут же было откатить обновление платформы — до выхода согласованной с релизом обработки обмена от Битрикса.
  • 0
    Снятие конфигурации с поддержки для настройки обмена через костыли, мда хороший результат работы! Клиент еще много раз спасибо за это скажет. Примерно каждый раз с обновлением форм или сдаче НДС по новым правилам.

    Правильный ответ, на вопрос который ставит статья в одной картинке:
    • –4
      Снятие конфигурации с поддержки для настройки обмена через костыли, мда хороший результат работы! Клиент еще много раз спасибо за это скажет. Примерно каждый раз с обновлением форм или сдаче НДС по новым правилам.


      Вы не внимательно читали статью. Вот вам цитата из моей статьи.

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

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


      • +2
        Ваши шпильки имеют короткий термин свежести. Если бы вы были программистом 1С, то были бы в курсе новинок платформы, которые введут в строй после нового года. А точнее знали бы про «расширения», которые позволяют дорабатывать конфигурации не снимая их с поддержки — v8.1c.ru/o7/201410ext/index.htm Без обид, просто констатация.

        По сути проблемы все сказано многократно выше. И даже некоторым стоило бы придержать свои мнения при себе… При решении подобной проблемы следует отделить факты от гипотез. Для начала заказчика следовало допросить про обстоятельства возникновения проблемы. Так бы вы изначально знали бы, что проблема исключительно на стороне 1С и лезть в Битрикс нет нужды. Далее следовало узнать предыдущую версию платформы и конфигурации — вы сами же поняли, что платформу обновили, а конфу нет. На этом стоило остановится и запустить предыдущую версию сервера. Тут бы вы сразу получили успех и вознаграждение. Главное не паниковать и не плодить сущности, в которых легко запутаться.

        А тому сервисному-инженеру, который «обновлял» 1С без предварительного стендового тестирования и не читая релизнотов, следует руки оторвать.
        • –1
          Ваши шпильки имеют короткий термин свежести. Если бы вы были программистом 1С, то были бы в курсе новинок платформы, которые введут в строй после нового года. А точнее знали бы про «расширения», которые позволяют дорабатывать конфигурации не снимая их с поддержки — v8.1c.ru/o7/201410ext/index.htm Без обид, просто констатация.


          А какое отношение ваш комментарий имеет к статье?
        • +1
          Не прошло и 10 лет, как догадались «расширения» ввести и тем самым еще больше все усложнить.

          Интересно, когда догадаются монструозные «Управление чем-то» разбить на компоненты.
          • +1
            1.1) Напомню, что возможность добавлять свои печатные формы и обработчики табличных частей документов для типовых конфигураций была почти с самого начала. Плюс была не очень очевидная и не удобная система свойств и категорий, которые можно было заполнять в документах и справочниках, и значения которых можно было использовать в отчетах. Кстати, я всегда начинающим программистам советовал не пороть гарячку и если новые реквизиты нужны исключительно для отборов и группировок в отчетах, то конфигурации оставлять на поддержке и просто выдавать пользователям инструкцию по использованию свойств. Это к вопросу про 10 лет.

            1.2) На счет «усложнит» — посмотрим, но у меня есть оптимизм. Механизм расширений изначально не планируется и не рекомендуется разработчикам тиражируемых решений. Следовательно это будет точечный инструмент для индивидуального стреляния в ногу на конкретных внедрениях. Главное, что бы хорошую идею не запороли кривой реализацией.

            2) Если мне не изменяет память, то первой конфигурацией на платформе 8.0 была «Управление производственным предприятием 1.0» (наследница идей семерочного ПУБ), а уже дальше её порезали на отдельные «Бухгалтерию», «Управление торговлей» и «Зарплата и управление персоналом», которые начали развивать хоть и параллельно, но продолжая вливать правки из материнской конфигурации. Куда уже дальше разбивать? Торговлю отдельно на планирование, складской учет и CRM? Но тут уже давно Рарус и другие разработчики уверенно пасутся и стригут рынок своими тиражными отраслевыми решениями.
            • +1
              Обработки табличных частей не так давно появились и до сих пор это чрезмерно сложный и неудобный механизм. С отчетами и обработками даже хуже стало, они в какую-то жопу добавляются, без бутылки не разберешься, как их потом найти и запустить.

              А компоненты это не отдельные конфигураиции, на 80% одинаковые, а реальное разделение по подсистемам. То есть, дерево подсистем — наверху базовые подсистемы и первичные документы (без модулей проведения). И к ним стыкуются всякие склады, ценообразования, проводки, кадры и прочие. И они добавляют новые объекты и расширяют функционал уже имеющихся. Получается наследование и полиморфизм. Например — ПриЗаписи() накладной переопределяется в компоненте «Склад», при этом может вызываться и вышестоящий обработчик. Не нужны тебе кадры — отсоединил подсистему и она не засоряет конфигуратор своими сотнями объектов. И нет риска, что подправив проведение документа для бухучета, повредится запись в какой-нибудь регистр торговли.
              • 0
                И всё это тормозит потом жутко :)

                На самом деле компоненты не могут изменять/добавлять реквизиты и объекты метаданных, так что такого не получится. Зато удобно будет формы переопределять.
                Ну или расширят механизм в будущем для поддержки добавления метаданных может быть.
                • 0
                  Ну или расширят механизм в будущем для поддержки добавления метаданных может быть.

                  Это будет приводить к изменению структуры базы данных, что противоречит текущим заявленным целям использования. А вообще посмотрим, может цели поменяют :)
              • +1
                Не знаю какими вы периодами времени оперируете, что для вас появление внешних обработок «не так давно». Я этими механизмами еще с конца 2000-х пользовался. Чо бы не быть голословным, вот инструкция по подключению печатной формы за 2009 год. Но мой опыт использования справочника «Внешние обработки, печатные формы, обработки по заполнению табличных частей» у типовых заключался только в подключении дополнительных печатных форм. Обработки табличных частей обычно нужны в настолько переписанных УТшках, что профита от использования этого справочника никакого, а только геморой с сопровождением доработок — проще сразу в конфу бросать. Отчеты я добавлял в консоль отчетов, а потом в её наследницу на базе компоновки данных — обычно пользователи были довольны. Что бы не рыскать по менюшкам, можно кнопку с консолью отчетов кинуть на меню инструментов (напомню, что менюшки так же легко модифицируются как и в других офисных продуктах).

                По поводу компонент нужно смотреть на конечную реализацию. Из того, что описано следует, что управление дополнениями происходит не на уровне конфигуратора (там только их создание, по аналогии с внешними обработками), а в режиме обычного использования. Т.е. полиформизм внешнего вида возможен, а вот новые свойства у объектов метаданных (туда же новые константы, новые регистры и все прочее, что требует реструктуризацию базы данных) — уже нет.
      • 0
        Так речь о том, что предложенный вариант решения плох по всем статьям, а это очень не хорошо, когда хабр «плохому учит».
    • 0
      Скриншот о старого модуля обмена. У нового такого нет.
      Наш модуль идет отдельно и он ВООБЩЕ не затрагивает типовые объекты. Т.е. установив наш модуль 4 версии, да, вам потребуется немного доработать поддержку, чтобы можно было вносить изменения, вы спокойно можете обновлять релизы конфигураций. Если они сильно отличаются, то, возможно, потребуется обновления модуля обмена. Если мне приходят сообщения, что модуль не подходит к новой версии конфигурации — оперативно выпускается новая версия модуля, которая поддерживает.
  • +1
    При любых попытках доработки типового обмена вы сталкиваетесь с огромным числом проблем в будущем, с необходимостью изучать каждое обновление модуля обмена, и каждый раз вносить ваши доработки в новую версию заново.


    Автор опять за старое :-)

    Если не умеешь обновлять — не берись.
  • +1
    Согласен, проще обмен на стороне битрикса сделать самостоятельно — меньше проблем в будущем. У битрикса API остается совместимым со старыми версиями, так что самописную выгрузку обновлениями не сломаешь. А со стороны 1С в любом случае все приходит в формате CommerceML, который тоже вряд ли сильно меняется. А если и меняется, то проще свой код поправить, чем ковыряться со стандартной выгрузкой. Да даже чужой код проще, что уж там)
  • 0
    Нормально битрикс всю жизнь обновлялся, проблем никогда не было. Вернее, были, но не больше, чем решает типичный линуксоид, когда делает что-нибудь не очень приличное с исходниками или репой, например.

    Должен сказать, что в институте, где я сисадминю, серьёзные вопросы с Битриксом возникали только к нашей системе бэкапа 1С (я о ней писал уже). На официальном сайте этой утилиты в инструкции по 1С про Битрикс ни слова. В итоге всё-таки разобрались, Битрикс копируется другими плагинами, но это оказалось ещё и неактуально, потому что данные SQL версии 1С при обновлении не страдают.
  • 0
    обмен нужно писать самому.

    Категорически не согласен!
    Оба продукта (и 1С и Битркс) большие, сложные и универсальные. Это не значит, что они удовлетворят на 100% потребность каждого, это значит, что они в большей степени удовлетворят потребность большинства. А еще это значит, что для эффективного использования их нужно хорошо изучить и понимать механизмы работы.
    Написание обмена с сайтом каждый раз под каждый новый проект увеличит стоимость проекта в 2-3 раза. Т.к. этот модуль будет очень большим и сложным. Если бы Вам удалось написать хорошо работающий универсальный модуль, Вы бы, наверняка, уже заработали состояние на его продаже. В случае со стандартным обменом, на Вашем же примере, его удалось настроить за 2-3 часа. Это намного дешевле и логичнее, чем писать обмен с нуля.
    • +2
      Для самостоятельного написания нужно всего лишь изучить формат CommerceML, что не так уж и сложно, а так же хорошо владеть API битрикса. В 1С разбираться совершенно не обязательно. Я лично уже 3 сайта сделал на собственном скрипте для выгрузки, причем один из них был вынужден применить на сайте, где работала коробочная выгрузка, так как в один прекрасный момент она перестала работать (1С просто зависал на 10-15 минут, дальше ничего не происходило). По опыту могу сказать так: да, на первом сайте я потратил около 2-х дней (с учетом возникших багов и доработок) в общей сложности на создание выгрузки с разными колонками цен, розницей/оптом, наличием товара и SKU. Для второго сайта мне понадобилось около часа на его адаптацию. В третьем, в котором как раз требовалось выпилить стандартную выгрузку, я провозился около часа-двух, и то в основном время было потрачено на разбор существующей структуры сайта.

      Из минусов решения — отсутствие настройки из админки. Но кто будет настраивать выгрузку? Скорее всего программист, который сможет заглянуть в код и поправить настройки. Я старался все подробно комментировать и выносил настраиваемые моменты в переменные в начале файла.
      Из плюсов — полная кастомизируемость под структуру сайта. В отличие от стандартной, в которой все наоборот — структура сайта должна быть подогнана под выгрузку. Так же мой вариант работает значительно быстрее.
      Единственное, что действительно требует доработки — это разделение выгрузки на несколько подходов, так как она может не отработать на хостингах из-за ограничений по времени выполнения.
      • +1
        И все работает, что есть в стандартной?
        И в зависимости от вида оплаты соответствующие документы в 1С создаются (ПКО и т.д.)?
        И несколько видов цены?
        И план обмена, позволяющий в обмен только изменения включать, а не полную выгрузку каждый раз делать?
        И сопоставление складов?
        И актуализация остатков?
        И автоматическое резервирование товаров?
        Если да, готов рассмотреть вопрос покупки Вашего модуля для собственных нужд.
        • +1
          Работает то, что было необходимо для клиента. То есть то, что я перечислил выше.
          Оплата задается на уровне заказов. Выгрузка заказов осталась стандартная коробочная. Она не завязана на структуре данных сайта, поэтому не имело смысла ее делать.
          Да, как я и сказал, колонок цен несколько.
          Нет, этим вопросом я не занимался, но подозреваю, что это достаточно легко исправить. Просто не было необходимости.
          Нет, складов нет. Но, если подумать, что такое склад, то тут должно быть все очень просто — есть идентификаторы складов, по каждому из которых к товару привязывается его остатки. Легко доработать (30 минут чистого времени, если все действительно так просто).
          Актуализация остатков тоже есть, я это упоминал. Если вы об изменении остатков в момент заказа на сайте, то этим скрипт выгрузки уже не занимается.
          Честно говоря, не знаю, как в CML выглядит резерв. Но не думаю, что случай более сложный, чем склады.

          Готов доработать и оформить как битриксовый модуль. Вопрос вашего желания, возможностей и готовности подождать.
  • 0
    И все работает, что есть в стандартной?
    И в зависимости от вида оплаты соответствующие документы в 1С создаются (ПКО и т.д.)?
    И несколько видов цены?
    И план обмена, позволяющий в обмен только изменения включать, а не полную выгрузку каждый раз делать?
    И сопоставление складов?
    И актуализация остатков?
    И автоматическое резервирование товаров?
    Если да, готов рассмотреть вопрос покупки Вашего модуля для собственных нужд.
  • 0
    Просто оставлю это здесь — Создание, настройка и синхронизация интернет-магазина с 1С за 7 минут и Видео-уроки синхронизации интернет-магазина, может кому будет полезно как альтернативное решение на основе PHPShop.
  • 0
    Взаимосвязь программных продуктов, по нашему опыту, процесс весьма непростой: всегда возникает множество неожиданных нюансов. Тем более прискорбно наблюдать, что такие существенные проблемы наблюдаются даже при интеграции родственных продуктов, если чуть отступить от стандартных способов и связей.

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка