Как стать автором
Обновить
13.23

1С-Битрикс *

Продукты компании 1С-Битрикс

Сначала показывать
Порог рейтинга
Уровень сложности

Отладка с помощью XDebug и PhpStorm на примере сайта 1С-Битрикс

Время на прочтение3 мин
Количество просмотров131K
В этой статье я расскажу как удобно осуществлять отладку кода в PhpStorm на примере работы с веб-сайтом, работающем в системе 1C-Битрикс. Работать будем с IDE PhpStorm и отладчиком XDebug. Я предполагаю, что на вашем сервере уже установлен XDebug и у вас уже создан проект в PhpStorm.

В данной статье примеры приводятся с таким набором инструментов:
  • Веб-сервер — MAMP PRO
  • XDebug v2.2.3.
  • IDE PhpStorm 7.1
  • На моем локальном серевере установлен 1С-Битрикс 14 версии с решением интернет-магазина.


Итак, начнем.
Читать дальше →

Highload инфоблоки и работа с ними

Время на прочтение2 мин
Количество просмотров57K
Доброго времени суток.

Сегодня поговорим о Highload инфоблоках. Точнее как с ними работать. Если вы посмотрите в интернете, то везде есть как с них взять информацию, но как наоборот записать-изменить-удалить — этого я не нашел (наверное просто я плохо искал), но мне очень надо было.
Поэтому я обратился к ЛайфАПИ и раскопал кое-что. Начнем по порядку.
Как вы наверное заметили, эти инфоблоки содержат пользовательские поля. Т.е. каждое поле начинается с UF. Но я не буду разжевывать, т.к. кто кодит на битриксе, тот знает это.

Читать дальше →

How-to: Прозрачная NTLM авторизация на корпоративном портале

Время на прочтение2 мин
Количество просмотров45K
Привет Хабрасообществу.
Хотел бы посвятить этот топик корпоративному порталу от Bitrix 14 версии, а точнее тому, как его подружить с доменной структурой.


Введение

Все началось с того что решили мы внедрить в организации корпоративный портал (сотрудники, тел. книга, календарь дней рождений) и систему заявок в IT отдел. Попробовав в качестве системы заявок GLPI и Request Tracker, поняли, что слишком громоздко для нас. Рыская по просторам сети в поисках других таких систем наткнулся на модуль «Тех. Поддержка» в продукте от компании Bitrix, ну и собственно решил попробовать убить двух зайцев организовать и заявки, и корпоративный портал.
Поставив систему захотелось организовать прозрачную авторизацию на портале под доменными учетками и вот тут начались проблемы… На их сайте довольно-таки много документации и статей, но беда в том что храниться это все в одной кучи и непонятно что, к какой версии относится. С первого раза настроить NTLM авторизацию самому не получилось, точнее авторизация проходила, но после портал запрашивал еще локальную учетку/пароль. Задав вопрос на форуме битрикса ответ не получил, зато нашел еще несколько человек с такой же проблемой. Не успокоившись решил копать сам.
В итоге делюсь со всеми how-to настройки КП под BitrixVM и IIS 7.
Читать дальше →

Как сделать модуль 1С-Битрикс

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

Можно много спорить о самом Битриксе, но он продолжает существовать, и разработчикам нужны знания. Я опишу создание модулей на примере шуточного модуля “Почта России”. Он запретит редактирование элементов инфоблоков в субботу, воскресенье и в обед.
Читать дальше →

Интеграция Java и 1С через .Net framework на примере Apache PDFBox

Время на прочтение3 мин
Количество просмотров15K

Интеграция Java и 1С через IKVM.Net на примере Apache PDFBox



В сети Интернет мало информации по интеграции Java и 1С. Тем не менее, есть интересные Java-проекты, работу которых хотелось бы оценить внутри 1С. Apache PDFBox – один из таких популярных проектов. Так сложилось, что файлы pdf являются очень распространенными, а 1С не имеет хороших средств работы с данным форматом. Предложенный здесь способ состоит в том, чтобы через утилиту IKVM.NET перевести JAVA-библиотеку в .Net-сборку, а затем использовать эту сборку внутри 1С средствами интеграции.

Apache PDFBox– это библиотека Java для работы с PDF-документами. Позволяет выполнять операции: извлечение текста, печать PDF, слияние и разделение документов, преобразование в изображение, заполнение форм, создание PDF, проверка PDF/A, интеграция с Lucene Search Engine. В примере использована версия 1.8.2.

IKVM.Net – это виртуальная машина Java для Mono и .Net framework. IKVM.Net позволяет конвертировать библиотеку Java в сборку .Net и затем обращаться к библиотеке средствами .Net framework. IKVM.Net содержит много вспомогательных сборок, отвечающих за различные классы Java. В примере используется версия 7.2.4630.5.
Читать дальше →

1С-Битрикс — CMS от маркетологов. Плюсы и минусы

Время на прочтение10 мин
Количество просмотров88K
Всем привет. Это мой первый пост на хабре. Поэтому представлюсь для проформы. Веб-разработчик. Опыт 3,5 года. В настоящий момент — состоявшийся битриксоид. Занимаюсь всем — поддержкой крупных проектов, собственной разработкой, консультацией в вопросах маркетинга, обзором возможностей новых версий, нюансами интеграции сайта с 1С на стороне оной, написанием модулей для marketplace, внедрением бизнес-процессов в «Корпоративный портал». И многим другим. В рамках отдельно взятой CMS. К счастью ли, к сожалению ли (в статье об этом и пойдет речь) — без работы остаться невозможно. Рынок наполнен продуктами от 1С-Битрикс более, чем наполовину.

В статье речь пойдет о плюсах и минусах этой монополии. А в том, что тенденции для этой монополии есть — лично у меня никаких сомнений.
Читать дальше →

Методология разработки на 1С-Битрикс – опыт дурака

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

Далее опишу основные проблемы, с которыми пришлось столкнуться в этом, и нескольких похожих, проектах, апробированные мною решения и результаты работ.
Читать дальше →

Как заставить интернет-магазин выдерживать нагрузку 280 000 посетителей в час?

Время на прочтение5 мин
Количество просмотров15K

Привет, Хабр!

К сожалению, на данном этапе развития веб-программирования в нашей стране рефакторинг проекта чаще воспринимается как работа программиста в режиме «все плохо» и проводится только в тот момент, когда сайт уже находится в критическом состоянии. С подобной ситуацией нам пришлось столкнуться в 2012 году, когда к нам на обслуживание пришел один крупный российский интернет-магазин со следующей проблемой: начиная с 10 утра сайт каждые полчаса падал на 5-10 минут и поднимался или с большим трудом, или после жесткого ребута. После ребутов сайт немного работал, а затем падал опять. Особую остроту проблеме придавал тот факт, что приближался Новый год, высокий сезон для всех продающих сайтов, и в данном случае фраза «за 10 минут компания теряет десятки тысяч долларов» была не шуткой.
Как мы спасали проект

ZendFramework + Bitrix

Время на прочтение5 мин
Количество просмотров14K
Пожалуй, это был один из самых муторных челленжей для меня за последнее время.

Итак. Мы занимаемся технически сложными проектами, потенциально рассчитанными на высокие нагрузки (highload). Так получилось, что среди систем управления контентом пока победил Битрикс. Его хотят клиенты. Судя по нашему опыту — highload на Битриксе — очень даже реальная задача, если делать все аккуратно.



Обычно в проектах, где много форм, личных кабинетов или какая-то сложная логика — мы предлагали на выбор клиенту реализацию на Zend Framewok или на Битрикс. Минус ZendFramework был в том, что на нем нужно писать админку. Минус Битрикса — он плохо приспособлен под проекты со сложной бизнес-логикой: там толком нет MVC и местами отвратительный код и API. Маркетинговые байки-балалайки про ядро D7, которым уже 2 года — мы в расчёт не берем:

«Talk is cheap. Show me the code» (Linus)

Итак, возникла идея на сложных проектах использовать ZendFramework с управлением данными из админки Битрикса.
Читать дальше →

Простейший способ реализации переключения цен в 1С-Битрикс

Время на прочтение3 мин
Количество просмотров37K
Довольно часто на интернет-магазинах оптовой торговли можно встретить сразу несколько типов цен — обычно их обозначают как ОПТ1, ОПТ2, ОПТ3 и т.п. В зависимости от того, на какую сумму покупатель набрал добра в корзине и(или) иных условий, для него срабатывает тот или иной тип цен.

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

Итак, поехали…
Читать дальше →

Доступ к SOAP веб-сервисам 1С из JavaScript и Html

Время на прочтение5 мин
Количество просмотров43K
Описанный метод позволяет обратиться к веб-сервисам 1С из html-страницы через JavaScript. В качестве примера выводится список справочников. При нажатии на любой справочник выводятся первые буквы наименований. При нажатии на букву выводятся данные с наименованиями, начинающимися на эту букву.

Способ применим для случаев, когда веб-сервис и html-страница опубликованы на одном сервере. В этом случае не возникает кросс-доменных проблем. Например, если домены будут отличаться, то Chrome выдаст ошибку:

Failed to load resource: Origin localhost:3299 is not allowed by Access-Control-Allow-Origin

Не вдаваясь в подробности публикации веб-сервисов, предположим, что на стороне 1С создан и опубликован веб-сервис catalogs с операцией Execute. На входе — параметр script типа string, на выходе тип string. Операция запускает на стороне произвольный код script из параметра и возвращает JSON-сериализацию от переменной result.

Функция ExecuteCommands(script)
    result = null;
    Execute(script);
    return JSON(result);
КонецФункции


С JSON-сериализацией удобно работать средствами JavaScript и преобразовать строку в объект/массив одной командой eval(resultText). В Интернете можно найти несколько JSON-сериализаторов для 1С.

Удостоверимся, что веб-сервис отвечает, введя его адрес:

Отклик веб-сервиса
Читать дальше →

Некоторые секреты подключения веб-интерфейса 1C 8.2

Время на прочтение3 мин
Количество просмотров34K

Некоторые секреты подключения веб-интерфейса 8.2


Работа с альтернативным интерфейсом на управляемых формах 1С доступна через HTML. Альтернативный интерфейс может понадобиться, если стандартных элементов управления 1С недостаточно, но хочется чего-то большего. В данной статье перечислены некоторые секреты работы с веб-интерфейсом на управляемых формах 8.2.

Показ Html-страницы на управляемой форме 1С


Для показа Html-страницы необходимо на форму вставить Поле Html Документа и в источник данных поместить html-код. Нужно иметь ввиду следующее: тонкий и веб-клиент на Internet Explorer работают по-особенному. В двух этих случаях используется Internet Explorer в режиме совместимости с IE 7.
Первый секрет заключается в том, что тонкий клиент можно перевести в режим совместимости с более старшей версией IE. Для этого нужно использовать meta X-UA-Compatible. Так на Windows 7 после добавления
<meta http-equiv="X-UA-Compatible" content="IE=9" >

Читать дальше →

Звонки внутри организации с Корпоративного портала

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров14K

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


В данной статье я опишу процесс интеграции:

на примере создания системы звонков с точки зрения веб-программиста.

Подробности

Ближайшие события

Обработка изображений 1С средствами .Net framework при выгрузке на веб-сайт

Время на прочтение5 мин
Количество просмотров20K
1С: Предприятие не предоставляет штатных средств работы с изображениями по изменению размеров и наложению водяных знаков. Данный функционал часто востребован, например, в Интернет-магазинах, когда из 1С происходит экспорт товаров с фотографиями. Раньше для этого использовали выгрузку фотографий на диск и вызов утилит через командную строку. Понятно, что гибкостью и скоростью такой вариант не обладает, плюс еще могут возникнуть проблемы с безопасностью и учетом временных файлов на диске.

Читать дальше →

Самопальная ORM для Битрикс

Время на прочтение3 мин
Количество просмотров11K
Не смотря на то, что модуль с поддержкой ORM разработчики битрикса анонсировали ещё в конце прошлого года, и того, что этот модуль заявлен в списке доступных в практически всех редакциях, реально его пока что нет в комплекте, как нет по нему и документации. Оставим за кадром неэтичность включения отсутствующих фич в описание продукта в разделе покупки, вернемся к ORM. Раз его нет — почему бы не реализовать нечто подобное самостоятельно?



непоправимо наносим справедливость своими руками

Контроль товарных остатков в системах 1С

Время на прочтение3 мин
Количество просмотров106K
Этой статьей автор хотел бы поднять вопрос о слабых местах типовых систем 1С «УПП, УТ, Комплексная», методах их устранения и определить интерес аудитории к проблеме в целом.
В первой из них затрагивается вопрос о «контроле товарных остатков».
Подробности

Опыт передачи файлов большого объема по защищенному протоколу из 1С на сайт

Время на прочтение5 мин
Количество просмотров21K
передача файлов большого объема по защищенному протоколу из 1С на сайт
Во время создания очередной B2B-системы на этапе интеграции 1С: Предприятие 8.2 с web — интерфейсом возникла необходимость безопасной передачи файлов больших размеров из 1С в web.
Для решения этой задачи был выбран протокол SFTP, как надежный и не имеющий ограничений по размеру передаваемого файла.
Во встроенном языке 1С: Предприятие 8.2 отсутствуют функции для передачи данных через SFTP, поэтому пришлось искать прикладные средства.
Читать дальше →

Интегрцаия шаблона на 1С-Битрикс

Время на прочтение4 мин
Количество просмотров62K
В очередной раз, пытаясь найти себе программиста, который работал с CMS 1C-Bitrix с своем городе натыкаюсь на проблему…

Программисты есть, работавшие с разными бесплатными фреймворками по типу Joomla, WordPress и т.д., но когда дело доходит до Битрикса, все как один говорят: — «Ой, она платная, зачем мне это когда есть куча других бесплатных». И не хотят браться за изучение чего то нового.

Так начинал и я, за исключение одного, мне сразу показали, как что и почему. Но материала в сети и на хабре я так и нашел. По этому начну с простого, как обычному программисту владеющим знаниями PHP и хотя бы базовыми HTML, CSS, JS начать работать c Битрикс.
Читать дальше →

Битрикс + Bitcoin. Пишем решение для Маркетплейс. Часть 1

Время на прочтение3 мин
Количество просмотров6.7K
Интро: Разработка стандартных решений для Битрикс в большинстве случаев представляет собой решение тривиальнейших задач. С каждым новым проектом приходится делать одно и то же снова, и снова, и снова… Но есть способ облегчить себе жизнь — написать библиотеку своих компонентов и даже заработать на них, если они предлагают востребованный функционал.

Условия


Дано: Битрикс редакции «Малый бизнес» — одна штука.
Задача: Научить его принимать платежи Bitcoin и…
И вот тут я задумался — а как? Модулей для интеграции платёжных систем для Битрикс я писал и переписывал немало. Но что делать с Биткоинами? С какой стороны подступиться? Я не знал.
Пришлось много гуглить

Битрикс. Интеграция. Реализация каталога с двумя структурами групп номенклатуры

Время на прочтение6 мин
Количество просмотров19K

Дисклеймер


Данная статья не является агитацией за какую-либо CMS, какой бы хорошей или плохой она не была…

Пролог


Одной из самых и первых и распространённых проблем, которая всплывает при начале работ по интеграции 1С и интернет магазина — это проблема структуры каталога. Как правило, структура номенклатуры, имеющаяся в базе 1С заказчика, мягко говоря, не готова к экспорту на сайт, а заказчик крайне против её изменения, т.к. бизнес-процесс отработан, все привыкли к такой структуре, которая есть и никто не имеет ни малейшего желания изменять своим привычкам.
Что мы обычно делаем в такой ситуации? Я думаю, что то же самое, что и другие, создаём альтернативную структуру, к ней привязываются все товары и уже новая структура выгружается на сайт, а старая остаётся нетронутой в базе 1С. В итоге все довольны. Для реализации этого в связке с Битриксом достаточно немного модернизировать выгрузку, идущую в комплекте...*

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

Итак, когда проблема структуры обусловлена лишь просто нежеланием поменять основную структуру — мы легко можем решить проблему подменой групп. Но, а что если всё-таки такая иерархия в базе не просто прихоть, а требование бизнес-процесса?..
Читать дальше →