После обновления BAS до последней версии 1.6.13.2 (очень важен функционал неуникальных штрихкодов), не устанавливается модуль 1С:Синхронизация Битрикс24 2.3.3.5. Писали в техподдержку, ответ ждите обновления... На тестовой базе BAS версии 1.6.12.1 модуль 2.3.3.5 устанавливается корректно. Предлогает обновиться до версии 2.4.0.2 (УНФ?), но при попытке обновления пишет о несоответствии основного языка.
Когда планируете обновить модуль 1С:Синхронизация Битрикс24? Хотелось бы знать хоть примерные сроки.
Благодарю.
Сегодня выложили более свежий. Попробуйте его
Большое Вам Благодарю.
Подскажите пожалуйста, у нас небольшая розничная сеть. Соответственно в 1С несколько складов. Можно ли синхронизировать склады и остатки товара в 1С с Битрикс24? В настройках модуля можно указать только один склад...
И еще момент. В описании модуля БэкОфиса указывалась поддержка роботов, что достаточно интересно и важно для нас. В вебинаре Вы упоминали что модули Синхронизация и Бэкофис дополняют друг друга. При попытке установить Бекофис (BeckOfficeBitrix24_UA_BASSB_3.0.0.3) на BAS, возникает конфликт с модулем Синхронизация.
Текст ошибки: "Работа с таблицей невозможна. Структура таблицы несовместима с текущими расширениями конфигурации. {СинхронизацияСБитрикс24 ОбщийМодуль.Б24_Синхр_ОбщегоНазначенияСервер.Модуль(688)}: ВыполненныйЗапрос = Запрос.Выполнить(); {СинхронизацияСБитрикс24 ОбщийМодуль.Б24_Синхр_ОбщегоНазначенияКлиент.Модуль(42)}: мОшибкиСинхронизации = Б24_Синхр_ОбщегоНазначенияСервер.ПолучитьМассивОшибокСообщений(); {СинхронизацияСБитрикс24 МодульУправляемогоПриложения(16)}: Б24_Синхр_ОбщегоНазначенияКлиент.Б24_Синхр_ПроверитьНаличиеОшибокИОповестить();
по причине: Ошибка выполнения запроса по причине: Работа с таблицей невозможна. Структура таблицы несовместима с текущими расширениями конфигурации."
Можно ли обойти как-нибудь этот конфликт и спользовать оба модуля одновременно?
У меня стоит задача используя процедуры и функции модуля 2.4.0.3 , обращаться и своих разработок к битриксу. мне удалось научится изучая под отладчиком код модуля обмена обращаться к битриксу.
задача простая , мне не нужен весь большой цикл обмена , мне нужно просто читать некоторые данные из битрикса
правильно ли я делаю ? какую паузу нужно делать между обращениями если это делать в цикле.
Код
&НаКлиенте
Процедура cmd_Запрос(Команда)
НастройкаСинхронизации = Объект.СправочникНастройки; // берем штатные настройки
ОбщиеНастройки = Б24_Синхр_СинхронизацияКлиентСервер.СформироватьБазовуюСтруктуруНастроек(НастройкаСинхронизации); // инициируем настройки
Если ОбщиеНастройки = Неопределено Тогда
Возврат;
КонецЕсли;
sID = Объект.ID; // выбираем заказ
sLEAD_ID = yz_Б24_ПолучитьДанныеУказаногоПоля( ОбщиеНастройки ,"crm.deal.get?id=" , sID , "LEAD_ID" ); // зачитать лид из сделки
STATUS_SEMANTIC_ID = yz_Б24_ПолучитьДанныеУказаногоПоля( ОбщиеНастройки ,"crm.lead.get?id=" , sLEAD_ID , "STATUS_SEMANTIC_ID" ); // зачитать по лиду поле STATUS_SEMANTIC_ID
если STATUS_SEMANTIC_ID = "S" тогда // если ЛИД успешно обработан , провести оплату
// тут провести документ по оплате
конецесли
КонецПроцедуры
&НаСервере
функция yz_Б24_ПолучитьДанныеУказаногоПоля ( пОбщиеНастройки, Команда , НомерID ,Поле )
Результат = Неопределено;
ПрефиксВнешнихКодовБитрикс24 = Б24_Синхр_СинхронизацияСервер.ПолучитьПрефиксВнешнихКодовБитрикс24();
СтруктураДанных = Новый Структура;
СтруктураДанных.Вставить("ИнформацияОСделках" , Новый Массив);
Метод = Команда + НомерID;
мЗапросы = Новый Массив;
мЗапросы.Добавить(Метод);
ТелоHTTPЗапроса = "";
ТелоHTTPЗапроса = ТелоHTTPЗапроса + "&" + "cmd[S]=" + Б24_Синхр_RestApiВызовСервера.ЗакодироватьСтрокуСервер(Метод);
СтруктураОтвета = Б24_Синхр_RestApiВызовСервера.ОтправкаДанныхНаПорталЧерезBatch(пОбщиеНастройки, ТелоHTTPЗапроса);
Если СтруктураОтвета = Неопределено Тогда
Возврат Результат;
КонецЕсли;
result = СтруктураОтвета.Получить("result");
Если result <> Неопределено Тогда
result2 = result.Получить("result");
Если result2 <> Неопределено Тогда
ДанныеЛидов = result2.Получить("S");
Если ДанныеЛидов <> Неопределено Тогда
Результат = ДанныеЛидов.Получить(Поле) ;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Возврат Результат;
конецфункции
&НаСервере
Процедура ПриОткрытииНаСервере()
Объект.ID ="1695"; // прибиваем гвоздями это для проверки
Объект.СправочникНастройки = Справочники.Б24_Синхр_НастройкиСинхронизацииСБитрикс24.НайтиПоКоду("000000001"); // прибиваем гвоздями наш случай код = 1
НастройкаСинхронизации = Объект.СправочникНастройки;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПриОткрытииНаСервере();
КонецПроцедуры
Игорь Малеев написал: Подскажите пожалуйста, у нас небольшая розничная сеть. Соответственно в 1С несколько складов. Можно ли синхронизировать склады и остатки товара в 1С с Битрикс24? В настройках модуля можно указать только один склад...
Нельзя.
Цитата
И еще момент. В описании модуля БэкОфиса указывалась поддержка роботов, что достаточно интересно и важно для нас. В вебинаре Вы упоминали что модули Синхронизация и Бэкофис дополняют друг друга. При попытке установить Бекофис (BeckOfficeBitrix24_UA_BASSB_3.0.0.3) на BAS, возникает конфликт с модулем Синхронизация.
Тут нужно смотреть, возможно и правда что то конфликтует. Напишите в техподдержку. Если там не будет что то очень серьезного - поправят.
Юрий Зайцев написал: правильно ли я делаю ?какую паузу нужно делать между обращениями если это делать в цикле.
у реста есть ограничение: не более 2 запросов в секунду. Старайтесь больше использовать батч запросы, а не просто запросы. Батч запрос позволяет в 1 запросе отправить до 50 запросов, что снимает некоторые ограничения и уменьшает нагрузку
Юрий Зайцев написал: правильно ли я делаю ?какую паузу нужно делать между обращениями если это делать в цикле.
у реста есть ограничение: не более 2 запросов в секунду. Старайтесь больше использовать батч запросы, а не просто запросы. Батч запрос позволяет в 1 запросе отправить до 50 запросов, что снимает некоторые ограничения и уменьшает нагрузку
Спасибо большое! на практике наткнулся на сообщения Авторизация не выполнена Служебное выполнение rest api\\Формирование настроек для обмена\\Базовые настройки Не удалось получить временный ключ соединения. Выгрузка пакета невозможна. Служебное выполнение rest api\\Формирование настроек для обмена\\Базовые настройки
видимо проблема в этом.
Я в цикле хожу за данными в битрикс перебирая документы, при простом циклическом переборе переход к следующему документу возможен после получения данных с Б24 , записи этих данных в документ и затем следующий документ по циклу и видимо как раз Rest у не нравится такая скорость Ннасчет Батч подумаю , но так что бы собрать один Батч , затем запросить у битрикса данные и только потом пробежать по списку документов будет чуть сложнее в реализации.
Юрий Зайцев написал: правильно ли я делаю ?какую паузу нужно делать между обращениями если это делать в цикле.
у реста есть ограничение: не более 2 запросов в секунду. Старайтесь больше использовать батч запросы, а не просто запросы. Батч запрос позволяет в 1 запросе отправить до 50 запросов, что снимает некоторые ограничения и уменьшает нагрузку
Спасибо еще раз за идею на переход к размеру 1 - 50
Тело запроса HTTP запроса: FirstParam=first&auth=6xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&auth_connector=OneC&cmd[]=crm.deal.get?id=1691&cmd[]=crm.deal.get?id=1711&cmd[]=crm.deal.get?id=1699&LastParam=last
как сработать набирая данные в Batch в принципе вроде не супер сложно
1) 1-й раз бугу по своим документа - собираю ID 2) формирую и отправляю запрос , скажем на некую группу документов допустим как в примере 3 штуки 3) получаю сразу по группе документов в ответ данные 4) пробегаю второй раз и пишу данные 5) я правильно понял что можно запросить 50 документов , т.е. 50 ID отправить , в одной посылке ? длинна ответа не отсекается ? чем то ограничена ?
Юрий Зайцев написал: Я в цикле хожу за данными в битрикс перебирая документы,при простом циклическом переборе переход к следующему документу возможен после получения данных с Б24 , записи этих данных в документ и затем следующий документ по циклу и видимо как раз Rest у не нравится такая скорость Ннасчет Батч подумаю , но так что бы собрать один Батч , затем запросить у битрикса данные и только потом пробежать по списку документов будет чуть сложнее в реализации.
1. Через постраничные запросы(с параметром Next) перебираете все документы, и сохраняете все id. Далее через батч выгребаете сразу по 50 документов по id
Юрий Зайцев написал: 5) я правильно понял что можно запросить 50 документов , т.е. 50 ID отправить , в одной посылке ? длинна ответа не отсекается ? чем то ограничена ?
Вроде как не ограничена. Теоретически может ограничивать по размеру запроса, но в документах не там много данных(не картинки)
Александр Денисюк, что у вас там творится на уровне разработки??? Поменялась логика подстановки в Сделке Товаров. Если раньше при выборе Товара подставлялась цена "розничная" которая выгружалась из 1С, то теперь подставляется "розничная цена" - что это за поле хрен его знает. Естественно "розничная цена" не заполнена в Битриксе! Куда копать не понятно - мануалы по обновлению в этой части отсутствуют.
Как мне заполнять поле "розничная цена" в Битриксе на основе данных 1С по Товарам???
Почему опять такая не согласованность в действиях Ваших коллег!?!?!