Можно ли интегрировать облачную Бухгалтерию предприятия (1С:Фреш) с облачным Битрикс24?
#СекретыБитрикс24
Штатно в Бухгалтерии нет модуля "Обмен с сайтом", значит настроить обмен счетами штатными средствами между 1С и Б24 нельзя.
Функционал конфигураций на технологии 1С:Фреш можно кастомизировать только при помощи внешних обработок и/или расширений.
1С-трекер (выгрузка контрагентов из 1С в Б24) требует внедрения в конфигурацию, поэтому его нельзя установить.
Единственная штатная интеграция, выпущенная 1С-Битриксом, доступная сейчас в виде расширения, это Экспорт печатных форм и отчетов (https://1c.1c-bitrix.ru/intranet/download.php?id=6790661), теоретически (на практике я пока пытался этого сделать), это расширение можно установить в облако Фреш (я имею в виду https://1cfresh.com/, а не частное облако 1С:Фреш).
Как добавить расширение в облаке 1С:Фреше описано здесь: https://1cfresh.com/articles/so_addprocess
Есть возможность запустить приложение 1С:Фреш внутри Битрикс24. Это не совсем полноценная интеграция, приложения так и остаются независимыми просто 1С запускается внутри интерфейса Б24, тем не менее, кому-то может подойти: https://www.bitrix24.ru/apps/?app=bitrix.1cfresh
Ну и, наконец, есть вариант - написать для интеграции свое расширение для 1С (или внешнюю обработку), используя REST API Битрикс24.
#СекретыБитрикс24
Штатно в Бухгалтерии нет модуля "Обмен с сайтом", значит настроить обмен счетами штатными средствами между 1С и Б24 нельзя.
Функционал конфигураций на технологии 1С:Фреш можно кастомизировать только при помощи внешних обработок и/или расширений.
1С-трекер (выгрузка контрагентов из 1С в Б24) требует внедрения в конфигурацию, поэтому его нельзя установить.
Единственная штатная интеграция, выпущенная 1С-Битриксом, доступная сейчас в виде расширения, это Экспорт печатных форм и отчетов (https://1c.1c-bitrix.ru/intranet/download.php?id=6790661), теоретически (на практике я пока пытался этого сделать), это расширение можно установить в облако Фреш (я имею в виду https://1cfresh.com/, а не частное облако 1С:Фреш).
Как добавить расширение в облаке 1С:Фреше описано здесь: https://1cfresh.com/articles/so_addprocess
Есть возможность запустить приложение 1С:Фреш внутри Битрикс24. Это не совсем полноценная интеграция, приложения так и остаются независимыми просто 1С запускается внутри интерфейса Б24, тем не менее, кому-то может подойти: https://www.bitrix24.ru/apps/?app=bitrix.1cfresh
Ну и, наконец, есть вариант - написать для интеграции свое расширение для 1С (или внешнюю обработку), используя REST API Битрикс24.
#СекретыБитрикс24
Исходный вопрос: все привет. кто-то может подсказать пример получения всех, а не 50 элементов? я знаю, что есть метод batch, никак не пойму как правильно его использовать.
Исходный вопрос: все привет. кто-то может подсказать пример получения всех, а не 50 элементов? я знаю, что есть метод batch, никак не пойму как правильно его использовать.
Forwarded from Александр Кунташов
Если вообще, то выборка элементов порционная, по 50 элементов. В ответе вместе с первыми 50 элементами будет еще свойтво next . Для получения очередной порции данных нужно повторить исходный запрос добавив еще параметр start, значением у которого указать значение, полученное в next.
Если на js, то в битриксовой JS-библиотеке для работы с REST API у полученного result есть методы more() и next() которые реализуют описанный выше алгоритм "автоматически". Пример есть здесь: https://dev.1c-bitrix.ru/rest_help/crm/company/crm_company_list.php
Пакетным (батч) - запросом теоретически можно (на практике не делал), но его нужно формировать динамически (количество запросов в пакете будет КоличествоЭлементов в списке всего / 50). Значение next из предыдущего запроса нужно будет передавать как start = $result[qN-1][next], где qN-1 - идентификатор предыдущего запроса.
Если на js, то в битриксовой JS-библиотеке для работы с REST API у полученного result есть методы more() и next() которые реализуют описанный выше алгоритм "автоматически". Пример есть здесь: https://dev.1c-bitrix.ru/rest_help/crm/company/crm_company_list.php
Пакетным (батч) - запросом теоретически можно (на практике не делал), но его нужно формировать динамически (количество запросов в пакете будет КоличествоЭлементов в списке всего / 50). Значение next из предыдущего запроса нужно будет передавать как start = $result[qN-1][next], где qN-1 - идентификатор предыдущего запроса.
Можно ли интегрировать 1С:CRM компании Рарус и Битрикс24?
#СекретыБитрикс24
Вопрос: Кто встречал - https://solutions.1c.ru/catalog/crm-corp-20 для нее есть 1с-трекер, модуль обмена (заказы, котрагенты, товары)?
Если речь про чистую 1C:CRM 2.0, то, например, там нет такой сущности, как "Заказ" или "Счет", нет и модуля "Обмен с сайтом", значит штатная для Б24 интеграция с 1С (заказы, контрагенты, товары) работать не будет.
1С-трекер технически интегрировать можно, но потребуется его адаптация: в 1C:CRM есть необходимая структура справочников, но она немного отличается по составу реквизитов от УТ11 и других типовых конфигураций.
Но на самом деле довольно часто 1C:CRM не самостоятельно используют, а встраивают в УТ11, поэтому если в вашем случае это так, то тогда настройка интеграции сводится к интеграции с УТ11 (сможете и обмен заказами использовать, и 1С-трекер).
#СекретыБитрикс24
Вопрос: Кто встречал - https://solutions.1c.ru/catalog/crm-corp-20 для нее есть 1с-трекер, модуль обмена (заказы, котрагенты, товары)?
Если речь про чистую 1C:CRM 2.0, то, например, там нет такой сущности, как "Заказ" или "Счет", нет и модуля "Обмен с сайтом", значит штатная для Б24 интеграция с 1С (заказы, контрагенты, товары) работать не будет.
1С-трекер технически интегрировать можно, но потребуется его адаптация: в 1C:CRM есть необходимая структура справочников, но она немного отличается по составу реквизитов от УТ11 и других типовых конфигураций.
Но на самом деле довольно часто 1C:CRM не самостоятельно используют, а встраивают в УТ11, поэтому если в вашем случае это так, то тогда настройка интеграции сводится к интеграции с УТ11 (сможете и обмен заказами использовать, и 1С-трекер).
https://security.googleblog.com/2017/09/chromes-plan-to-distrust-symantec.html (нашлась и более ранняя публикация об этом на русском https://habrahabr.ru/post/334392/).
Хром начиная с релиза № 66 перестанет доверять SSL-сертификатам, выданным Symantec'ом до 1 июня 2016 года, а это сертификаты, выданные Thawte, VeriSign, Equifax, GeoTrust, RapidSSL, т.к. оказывается это все бренды Symantec.
Я наткнулся на это увидив сегодня в консоли хрома предупреждение:
The SSL certificate used to load resources from https://example.com will be distrusted in M70. Once distrusted, users will be prevented from loading these resources. See https://g.co/chrome/symantecpkicerts for more information.
66 релиз Хрома планируется к выходу в середине марта в бета-версии, а в конце апреля - в виде финального релиза. И с момента выхода хром перестанет считать сертификаты доверенными и сайты, использующие эти сертификаты будут открываться с предупреждением.
Как я понимаю, это все продолжение вот этой вот (https://habrahabr.ru/post/267583/ ) истории с самовольным выпуском Symantec'ом сертификата для google.com (официально - в рамках тестирования инфраструктуры).
Удивляет меня то, как это сертификаты GeoTrust могли продавать после инцидента, ведь они довольно весомых денег стоят.
Хром начиная с релиза № 66 перестанет доверять SSL-сертификатам, выданным Symantec'ом до 1 июня 2016 года, а это сертификаты, выданные Thawte, VeriSign, Equifax, GeoTrust, RapidSSL, т.к. оказывается это все бренды Symantec.
Я наткнулся на это увидив сегодня в консоли хрома предупреждение:
The SSL certificate used to load resources from https://example.com will be distrusted in M70. Once distrusted, users will be prevented from loading these resources. See https://g.co/chrome/symantecpkicerts for more information.
66 релиз Хрома планируется к выходу в середине марта в бета-версии, а в конце апреля - в виде финального релиза. И с момента выхода хром перестанет считать сертификаты доверенными и сайты, использующие эти сертификаты будут открываться с предупреждением.
Как я понимаю, это все продолжение вот этой вот (https://habrahabr.ru/post/267583/ ) истории с самовольным выпуском Symantec'ом сертификата для google.com (официально - в рамках тестирования инфраструктуры).
Удивляет меня то, как это сертификаты GeoTrust могли продавать после инцидента, ведь они довольно весомых денег стоят.
Google Online Security Blog
Chrome’s Plan to Distrust Symantec Certificates
Posted by Devon O’Brien, Ryan Sleevi, Andrew Whalley, Chrome Security This post is a broader announcement of plans already finalized on t...
#webdev
Очередной чеклист по верстке и фронтенду.
https://habrahabr.ru/company/netologyru/blog/347740/
Очередной чеклист по верстке и фронтенду.
https://habrahabr.ru/company/netologyru/blog/347740/
Хабр
Чеклист фронтенд-разработчика
Глеб Летушов, редактор-фрилансер, адаптировал для блога Нетологии чеклист с Github от David Dias. Этот чеклист уже переводили, но так как на Хабре его нет, мы ре...
#СекретыБитрикс24
При разработке интеграции Б24 с 1С:Бухгалтерией наткнулся на ошибку получения реквизитов в пакетном запросе.
Делаю пакетный запрос с целью получить реквизиты компании, связанные со счетом:
Получаю ошибку при выполнении второго запроса req:
Если задать
Это методы реквизитов не поддерживают макросы в составе пакетного запроса или у меня глаз замылился и я макрос не правильно написал?
Та же ошибка возникает, если вместо макроса
Если первый запрос удалить, а во втором указать конкретное значение, то ошибки не будет.
Также ошибки не будет, если выполнить в пакете несколько запросов `crm.requisite.get. Т.е. ошибка возникает только если одновременно выполняются два указанных вида запроса.
Отладка кода в коробке показала что есть ошибка в методе
Написал в поддержку Б24 в чате, а пока обход один: разделить один пакет на два: в одном получить ID связанных со счетом реквизитов, а в другом уже получать сами реквизиты.
При разработке интеграции Б24 с 1С:Бухгалтерией наткнулся на ошибку получения реквизитов в пакетном запросе.
Делаю пакетный запрос с целью получить реквизиты компании, связанные со счетом:
BX24.callBatch({
lnk: ['crm.requisite.link.get', { entityTypeId: 5, entityId:63 }],
req: ['crm.requisite.get', { id : '$result[lnk][REQUISITE_ID]'}]
},
function(result) {
console.log(result.req.data());
}
);
Получаю ошибку при выполнении второго запроса req:
{"req":{"error":"","error_description":"Resource \u0027GET\u0027 is not supported in current context."}}
Если задать
id
в запросе req
статично, то результат возвращается корректно.Это методы реквизитов не поддерживают макросы в составе пакетного запроса или у меня глаз замылился и я макрос не правильно написал?
Та же ошибка возникает, если вместо макроса
$result[lnk][REQUISITE_ID]
передать конкретный ID (но первый запрос оставить).Если первый запрос удалить, а во втором указать конкретное значение, то ошибки не будет.
Также ошибки не будет, если выполнить в пакете несколько запросов `crm.requisite.get. Т.е. ошибка возникает только если одновременно выполняются два указанных вида запроса.
Отладка кода в коробке показала что есть ошибка в методе
CCrmRestService::onRestServiceMethod
(https://bxapi.ru/src/?module_id=crm&name=CCrmRestService::onRestServiceMethod): для методов crm.requisite.*
и crm.requisite.link.*
используются разные прокси-объекты, но кэшируются они все по одному и тому же ключу "requisite", в итоге в пакетном запросе кто первый из них в пакете вызывается, то прокси того объекта сохраняется в кэш и далее только он и работает для обоих методов, что и приводит к указанной ошибке.Написал в поддержку Б24 в чате, а пока обход один: разделить один пакет на два: в одном получить ID связанных со счетом реквизитов, а в другом уже получать сами реквизиты.
bxapi.ru
CCrmRestService::onRestServiceMethod: метод Битрикс
Поиск по исходникам системы Битрикс. Весь код как на ладони, удобно структуированный. Учитесь по исходникам.
#СекретыБитрикс24
Битрикс24 сегодня снова прилег и с учетом того, что российский сегмент облака Б24 последнее время часто стало колбасить, то становится очень актуальным лайвхак (только для новых порталов!):
Для тех кому не критично* соблюдение ФЗ-242 нужно регистрироваться на https://www.bitrix24.com/
После регистрации внизу страницы переключаете язык на русский и наслаждаетесь бесперебойной работой, не зависящей от коммутаторов российских провайдеров.
* Ну, например тестовые порталы для проверки своих решений или портал для личных целей (как система управления задачами).
Битрикс24 сегодня снова прилег и с учетом того, что российский сегмент облака Б24 последнее время часто стало колбасить, то становится очень актуальным лайвхак (только для новых порталов!):
Для тех кому не критично* соблюдение ФЗ-242 нужно регистрироваться на https://www.bitrix24.com/
После регистрации внизу страницы переключаете язык на русский и наслаждаетесь бесперебойной работой, не зависящей от коммутаторов российских провайдеров.
* Ну, например тестовые порталы для проверки своих решений или портал для личных целей (как система управления задачами).
Bitrix24
Bitrix24 - Free online workspace for your business: CRM, tasks, online meetings, and more.
An all-in-one free platform to manage your team and run your sales, Bitrix24 is designed to be seamlessly integrated into all your business processes and help you manage them with the highest precision and efficiency.
1сники такие 1сники. Для справки, Serf (англ.)=Раб/крепостной/ишак (Имелось в виду, конечно, surf :)
#webdev #restapi
https://standards.rest/
Ссылки на различные стандарты и спецификации, которыми рекомендуется руководствоваться при создании REST API
https://standards.rest/
Ссылки на различные стандарты и спецификации, которыми рекомендуется руководствоваться при создании REST API
#1Script #webdev
https://infostart.ru/public/783435/
Андрей Овсянкин осваивает новую нишу для OneScript'а - веб-приложения. Безусловно целевая аудитория есть, и поэтому мне не понятен троллинг коллег.
Кстати, на вопрос "Зачем?", который в разных формах периодически задают есть универсальный ответ (если другие не нравятся) - "Just For Fun", который еще Линус Торвальдс использовал в качестве названия своей книги (рекомендую). И очень круто, когда этот фан перерастает в классный открытый, восстребованный продукт с одним из лучших 1Сных коммьюнити.
https://infostart.ru/public/783435/
Андрей Овсянкин осваивает новую нишу для OneScript'а - веб-приложения. Безусловно целевая аудитория есть, и поэтому мне не понятен троллинг коллег.
Кстати, на вопрос "Зачем?", который в разных формах периодически задают есть универсальный ответ (если другие не нравятся) - "Just For Fun", который еще Линус Торвальдс использовал в качестве названия своей книги (рекомендую). И очень круто, когда этот фан перерастает в классный открытый, восстребованный продукт с одним из лучших 1Сных коммьюнити.
infostart.ru
Веб-разработка на 1Script. Глава 1
Разрабатывать веб-приложения должно быть просто. И для этого 1С-ник не должен страдать, изучая десятки и сотни побочных технологий. В конце прошлого года я анонсировал разработку движка веб-приложений на языке 1С. Я планирую выпустить серию статей, оформленных…
#codesmells: Как не надо именовать функции и переменные.
https://www.corpsoft24.ru/about/news/razyasnenie-intsidenta/
Корпсофт написал официальное письмо, почему их ДЦ лежали с пятницы (а как известно, с ним лежал весь RU-сегмент облачного #Битрикс24, а это Россия, Беларусь и Казахстан). Если кратко: во всем виноваты (русские?) хакеры. Якобы была атака на канал связи между ДЦ, а коммутаторов у них на самом деле больше, чем один, как ругался Сергей Рыжиков у себя в ФБ. Заявление в отдел "К" на хакеров написали.
Если честно, в данной ситуации не удивляет ни сам факт падения, ни причина (независимо от ее правдивости), а то, что официально написали только вчера а, в сегодняшнем пресс-релизе добавили оговорку в духе "вот теперь нас вынудили написать":
Корпсофт написал официальное письмо, почему их ДЦ лежали с пятницы (а как известно, с ним лежал весь RU-сегмент облачного #Битрикс24, а это Россия, Беларусь и Казахстан). Если кратко: во всем виноваты (русские?) хакеры. Якобы была атака на канал связи между ДЦ, а коммутаторов у них на самом деле больше, чем один, как ругался Сергей Рыжиков у себя в ФБ. Заявление в отдел "К" на хакеров написали.
Если честно, в данной ситуации не удивляет ни сам факт падения, ни причина (независимо от ее правдивости), а то, что официально написали только вчера а, в сегодняшнем пресс-релизе добавили оговорку в духе "вот теперь нас вынудили написать":
Читая негативные, эмоциональные, искренние, хотя и не всегда обоснованные комментарии в интернете, мы понимаем, что просто обязаны дать официальное объяснение по поводу произошедшего.
www.corpsoft24.ru
Статья от компании CorpSoft24 – Разъяснение инцидента
На данной странице размещена статья от компании CorpSoft24 – Разъяснение инцидента
Давно не имел дела с #1С:УНФ (года три уже), "но вот опять" и не могу нарадоваться, какой удобной и продуманной по крайней мере с точки зрения UI ее сделали. Вспомнились тут хейтеры управляемых форм, которым гибкости ОФ не хватает, а следом вспомнилась и любимая картинка про обычные формы :)
Прекрасный симулятор управления проектами от Бюро Горбунова
https://bureau.ru/books/fff/demo/17 из интерактивной книги Товеровского
#УправлениеПроектами
https://bureau.ru/books/fff/demo/17 из интерактивной книги Товеровского
#УправлениеПроектами
#СекретыБитрикс24
Новая подстава от 1С-трекера: контрагентов-индивидуальных предпринимателей он выгружает некорректно - они попадают в Контакты, а должны - в Компании. (Воспроизводится во всех версиях 1С-трекера, включая текущую
Ок, про этот случай, хоть и с натяжкой, но можно было бы сказать, что он частный и не всегда восстребованый, если бы не одно: если у этого ИП есть сотрудники и мы указываем их в УТ в качестве контактных лиц, то 1С-трекер при выгрузке упадет с ошибкой вида:
При этом не выгрузится ни текущий пакет, ни последующие. Из текста ошибки рядовой пользователь ничего понять не сможет (вообще, с обработкой ошибок в 1С-трекере беда: если с точки зрения Б24 данные невалидны, например, пользователь ввел некорректный email, то не будет загружен весь пакет и сообщение об ошибке не блещет понятностью; логично делать валидацию на стороне 1С, но нет, почему-то не сделали).
Причина ошибки вот в чем. В УТ11 в справочнике Контрагенты есть два одинаковых по смыслу реквизита:
В 1С-трекере отбор контрагентов, которых надо выгрузить в качестве Контактов осуществляется как раз по реквизиту ЮридическоеФизическоеЛицо, в результате сам контрагент выгружается в Контакты, а не в Компании. В то же время его контактные лица выгружаются в Б24 в Контакты с указанием ссылки на компанию-владельца (тот самый
Для решения проблемы нужно в СКД
на
Новая подстава от 1С-трекера: контрагентов-индивидуальных предпринимателей он выгружает некорректно - они попадают в Контакты, а должны - в Компании. (Воспроизводится во всех версиях 1С-трекера, включая текущую
2.2
.)Ок, про этот случай, хоть и с натяжкой, но можно было бы сказать, что он частный и не всегда восстребованый, если бы не одно: если у этого ИП есть сотрудники и мы указываем их в УТ в качестве контактных лиц, то 1С-трекер при выгрузке упадет с ошибкой вида:
Ошибки: Batch row 0:Company not found. Field COMPANY_ORIGIN_ID - \u0027ad9987ac-00ea-11e8-96f6-70e28412689c\u0027 is invalid
При этом не выгрузится ни текущий пакет, ни последующие. Из текста ошибки рядовой пользователь ничего понять не сможет (вообще, с обработкой ошибок в 1С-трекере беда: если с точки зрения Б24 данные невалидны, например, пользователь ввел некорректный email, то не будет загружен весь пакет и сообщение об ошибке не блещет понятностью; логично делать валидацию на стороне 1С, но нет, почему-то не сделали).
Причина ошибки вот в чем. В УТ11 в справочнике Контрагенты есть два одинаковых по смыслу реквизита:
ЮрФизЛицо
(тип ПеречислениеСсылка.ЮрФизЛицо) и ЮридическоеФизическоеЛицо
(ПеречислениеСсылка.ЮридическоеФизическоеЛицо). Такая ситуация, честно говоря, выглядит нелепо, но она объяснимая: второй реквизит - служебный, в конфигурации присутствует для совместимости с Библиотекой типов и никак явно в УТ не используется (заполняется автоматически по данным реквзита ЮрФизЛицо). У ЮрФизЛица
диапазон значений больше, и когда ЮрФизЛицо = ИндивидуальныйПредприниматель
, то реквизит ЮридическоеФизическоеЛицо
становится равным ФизическоеЛицо
(т.к. там всего два допустимых значений - ФизическоеЛицо и ЮридическоеЛицо).В 1С-трекере отбор контрагентов, которых надо выгрузить в качестве Контактов осуществляется как раз по реквизиту ЮридическоеФизическоеЛицо, в результате сам контрагент выгружается в Контакты, а не в Компании. В то же время его контактные лица выгружаются в Б24 в Контакты с указанием ссылки на компанию-владельца (тот самый
COMPANY_ORIGIN_ID
в сообщении с ошибкой), а компании с такой ссылкой в Б24 не существует.Для решения проблемы нужно в СКД
СхемаВыгрузкиКомпаний
в запросе изменить условие запроса с Контрагенты.ЮридическоеФизическоеЛицо = ЗНАЧЕНИЕ(Перечисление.ЮридическоеФизическоеЛицо.ЮридическоеЛицо)
на
Контрагенты.ЮрФизЛицо <> ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.ФизЛицо)
Самая первая порция коммитов в #xUnitFor1C выглядит символично в виде единицы :) Кажется, это вообще, самое первое появление кода #1С на GitHub.