IIKO (Айко). Обмениваемся накладными с 1С
Интеграция - Внешние источники данных
Описание текущей ситуации
В стандартной поставке дистрибутива Айко присутствует внешняя обработка, которая позволяет загружать данные в типовую Бухгалтерию. Данные могут передаваться через выгруженные файлы, либо через непосредственное подключение к серверу Айко с использование внешней компоненты, разработанной по технологии COM (со всеми вытекающими преимуществами и ограничениями).
Вроде неплохо. Внешнюю обработку можно немного доработать для работы в фоне по расписанию, а проблемы с установкой внешней компоненты случаются в основном в облачных сервисах и особо не проявляются, если одинэс живет внутри организации. Конечно же на этом этапе существует ряд "НО". К примеру нам недоступно использование решений 1С Fresh, потому что внешняя обработки из поставки не проходит аудит облачного решения. На данный момент есть решение под 1С Fresh, работающее с небольшими ограничениями.
А что, если мы захотим передать данные обратно, из 1С в Айко? Данная потребность может показаться надуманной: кому нужно выгружать данные из системы для регламентированной отчетности в систему для управленческого учета сферы HoReCa? Как показала практика, постановка такого вопроса не редкость. Данная ситуация может произойти хотя бы потому, что база 1С с большей долей вероятности могла появиться раньше решения от Айко. Зачем вновь создавать стопицот номенклатурных позиций, когда они уже все есть в 1С?
Поиск источников вдохновения
Давайте попробуем для начала проанализировать, как можно обмениваться данными с Айко. Наблюдать будем глазами дилетанта одинэсника, который ничего не знает о сервере приложений Tomcat, но умеет пользоваться браузером и даже может запустить Fiddler.
Наблюдение 1
За отдельную плату существует возможность приобретения функционала API IIKO. Но это простой и неинтересный программистам путь, поэтому остановимся на пути без дополнительной оплаты. Даже в этом случае компания Айко предоставляет довольно обширную информацию по API, с которой можно ознакомиться на странице http://help.iiko.ru/articles/#!api-documentations/api . Здесь нас интересует как общая схема объектов Айко, так и XML схемы объектов.
Наблюдение 2
Запускаем Fiddler. Запускаем IIKO Office. Устанавливаем фильтр на процесс Айко. Изучаем язык общения приложения с сервером. Многие неочевидные и непонятные моменты можно подсмотреть именно так.
Наблюдение 3
У каждой установки Айко, будь то RMS или CHAIN, существует веб-часть по пути /resto. Зайти можно под учетной записью, которая используется для обычного входа в office. Внутри много интересных дополнений вроде всякого рода отчетов и импорта данных из CSV-файлов (например номенклатуры или технологических карт). Нас же в рамках обсуждаемой темы больше всего интересует /resto/service/maintance/sql.jsp . Данный скрипт позволяет формировать к серверу Айко что-то вроде SQL-запросов (пусть знатоки поправят).
Схема взаимодействия
Принимая во внимание описанные наблюдения и возможности современной платформы 1С, можно заключить, что нет никаких препятствий для формирования запросов к Айко прямо из 1С.
Примерная схема передачи документа Поступление из типовой Бухгалтерии в IIKO (Айко) может выглядеть следующим образом:
- Организуем подписку на события при изменении документа Поступления;
- В регистрации события фиксируем измененный документ в планы обмена;
- На основе XDTO документа Айко формируем XML-представление из документа Поступление;
- Отправляем HTTP-запрос на сервер;
- Обрабатываем ответ.
Конечно, такой алгоритм весьма упрощен и существует ряд нюансов по синхронизации справочных сведений обеих систем. Наша команда успешно реализовала двунаправленный обмен между учетными системами в фоновом режиме. Накопленный опыт позволил создать ядро универсального обмена данными. Унификация схемы позволяет легко масштабировать решение под широкий круг задач и в короткий срок реализовывать проект под конкретного заказчика.
Вместо заключения
Спасибо, если дочитали до конца. Надеюсь, изложенная информация поможет в решении вопросов автоматизации.
Если что-то не будет получаться, обращайтесь, буду рад помочь.
UPDATE
[25.06.2018][Добавлено] "Создаем номенклатурную позицию в IIKO (Айко) по данным из 1С". Описание процесса передачи данных из 1С в Айко с прикладной точки зрения. В конце статьи можно скачать внешнюю обработку, демонстрирующую описанную технологию.
[12.09.2018][Добавлено] "Из 1С в IIKO: Передаем перемещения УТ в приходные накладные". Рассмотрение прикладных вопросов, возникающие при реализации обмена.
[27.11.2018][Добавлено] "izi.cloud: Передаем поступления БП в приходные накладные IIKO без регистрации и смс". В статье рассмотрен вариант реализации создания приходных накладных IIKO из типовой Бухгалтерии предприятия 3.0 с использованием функционала сервиса izi.cloud. (обработка инсайд)
[31.01.2019][Добавлено] "Передаем накладные из 1С в IIKO (Айко)". Пошаговое руководство по выгрузке документов с использованием сервиса izi.cloud.
[21.06.2019][Добавлено] "Лайка - расширение 1С с хранением справочников IIKO вместо SQL-запросов". Реализация концепта получения справочных сведений из BackOffice IIKO без использования запросов SQL.
[01.08.2019][Добавлено] "Взросление Лайки - просматриваем накладные IIKO в 1С без выгрузок". Продолжение развития проекта Лайка - реализация просмотра накладных IIKO прямо внутри 1С.
[15.10.2020][Добавлено] "Учим Лайку новым трюкам: заказы с предоплатами, выгрузка накладных из 1С". Загрузка информации по заказам, предоплатам и создание накладных в один клик.
Вступайте в нашу телеграмм-группу Инфостарт
IIKO айко обмен данными horeca бухгалтерия приходная накладная
Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
См. также
Внешние источники данных Разработчик Аналитик Пользователь 1С:Предприятие 8 1C:Бухгалтерия Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)
Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.
35000 руб.
15.11.2022 33839 53 49
Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Разработчик 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)
Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 10 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.
85400 руб.
05.10.2022 14577 17 8
Розничная торговля Внешние источники данных Разработчик Бухгалтер 1С:Предприятие 8 1С:Розница 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Бухгалтерский учет Управленческий учет Платные (руб)
Загрузка данных продаж и инкассаций из сервисов Kit Vending/Kit Shop в 1С. Реализовано в виде Расширения. Мониторинг состояний торговых автоматов.
12200 руб.
10.06.2019 34662 49 25
Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Разработчик 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)
Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.
122000 руб.
19.08.2020 30650 28 3
Внешние источники данных Зарплата Бюджетный учет Разработчик Бухгалтер 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)
Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.
85400 руб.
24.04.2017 57673 99 165
Производство готовой продукции (работ, услуг) Внешние источники данных 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Лесное и деревообрабатывающее хозяйство Россия Управленческий учет Платные (руб)
Обработка предназначена для загрузки файлов, выгруженных из системы Базис-мебельщик, в справочник 1С "Спецификации" для последующих процессов учета и диспетчирования полуфабрикатов и изделий.
10370 руб.
24.06.2021 26855 66 55
Внешние источники данных Розничная торговля Разработчик Бухгалтер 1С:Предприятие 8 1С:Бухгалтерия 2.0 1С:Бухгалтерия 3.0 Здравоохранение, медицина, стоматология Розничная и сетевая торговля (FMCG) Россия Бухгалтерский учет Налоговый учет Платные (руб)
Внешняя обработка обмена данными между системами ЮНИКО и 1С:Бухгалтерия 3.0.
6100 руб.
01.11.2011 55501 129 81
Файловый обмен (TXT, XML, DBF), FTP Внешние источники данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Здравоохранение, медицина, стоматология Фармацевтика, аптеки Россия Платные (руб)
Внешняя обработка «Загрузка документов из eФарма» создана для программы 1С:Бухгалтерия предприятия, редакция 3.0 (версии Базовая, Проф и Корп). Обработка позволяет загружать документы в базу 1С из файлов выгрузки, имеющих формат .DBF, которые создаются в программе eФарма или eФарма2, а также из любых других программ, формирующих файлы-выгрузки с таким же расширением.
9760 руб.
15.03.2024 2882 5 0
Хотя, как было упомянуто в статье, здесь нет каких-то особых секретов, всю информацию можно почерпнуть из открытых источников.
Что касается описанного вами случая, то все мы допускаем ошибки, а мысль сделать резервную копию приходит после случившегося. Такие моменты делают нас опытней и учат своевременно делать бэкапы.
P.S. Копия у меня была, благополучно ее вернул на место: к тому времени уже прошел стадию "забыл сделать бэкап")
Вы пишите: На данный момент есть решение под 1С Fresh, работающее с небольшими ограничениями.
Можно ли подсказать, что это за решение? Ранее выгружали из iiko в 1С 8.2. Сейчас обновились и перешли на 1СФреш, и все приходится вбивать ручками, за весь прошлый квартал. Обработка через которую работали не подходит, у кого находимся на обслуживании в iiko сказали, что обработку запросили у iiko, но время идет, а обработки нет.
Мы предоставляем своим клиентам видоизмененную версию типовой выгрузки для 1С:Fresh. Насколько мне известно она относится к официальной поставке. Обработка сначала отправляется на аудит обслуживающей компании, а впоследствии доступна через интерфейс внешних обработок и отчётов.
Прошу прощения, на данный момент в отпуске. Более детальную информацию можно получить на сайте сервиса Изи Клауд или компании Лемма
Связалась с компанией Лемма, мы собственно готовы приобрести обработку. Но ответа так и не получила, два раза перезвонили, уточнили, не нужно ли нам обслуживание. Обслуживание не нужно, только обработка для 1с фреш. Но в итоге, обработку мы пока так и ждем. Может, по выходу из отпуска, можно как-то ускорить этот процесс?) будем очень благодарны.
обслуживающая шарашка OpenService вообще не отвечает на электронные обращения, зато приходят ответы что обращение зарегистрировано под номером таким то, в общем, как и думал, надо было сразу 1с общепитом автоматизировать, а не странной поделкой...
Я провел не мало времени с этим кодом, обращайтесь, возможно смогу помочь решить вашу проблему.
вот последняя проблема с обработкой - непонятно почему начала выводиться ошибка COM объекта IIKO interface,
зашел в папку в обработкой \iiko1CInterface, там выбрал iiko1CInterfaceManager - в нем нажал кнопку Установить,
теперь выводится ошибка
---------
Неизвестная ошибка{ВнешняяОбработка.Загрузка.Форма.Форма.Форма(8157)}: Ошибка при вызове метода контекста (LoadInvoiceData):
Произошла исключительная ситуация (iiko1CInterface):
Can not get license connection for Module 300 rejected: Unlicensed
---------
зашел в папку в обработкой \iiko1CInterface, там выбрал iiko1CInterfaceManager - в нем нажал кнопку Установить,
теперь выводится ошибка
Добрый день!
Вам удалось решить эту проблему? В чем была причина ошибки?
Кроме того, такого рода ошибки возникают при нескольких подключения и ошибке освобождения лицензии.
В свое время методом тыка искали взаимосвязь. На деле - выручает либо "подождать" (мьютекс сбрасывался), либо строго следить за доступом с одного рабочего места.
Для более детального понимания ситуации необходимо иметь в доступе исходники внешней компоненты или ее разреверсить. Вероятно в реализации допущена ошибка (неточность).
Из решений (особенно для многопользовательского случая) - использовать альтернативные варианты прямого взаимодействия с сервером IIKO, например Лайку.
Если найду в закромах, выложу обработку, в которой взаимодействие с компонентой заменено на прямые HTTP-вызовы.
Что касается официального метода, то документация доступна всем желающим. Вот, к примеру, работа с накладной
По факту - если ситуация не изменилась, то для вас нужно писать решение под ваши требования. Чем конкретней вы их сформулируете, тем дешевле может оказаться такое решение.
на этапе.
Процедура СоздатьОбновитьОбъектВАйко(ТекстXML, ТипМетода)
Парамы = ПолучитьИзВременногоХранилища(Объект.АдресПараметров);
ПроксиСервер = Новый ИнтернетПрокси;
// авторизация
ПроксиСервер.Пользователь = "1c";
ПроксиСервер.Пароль = "112233";
// прокси сервер прописывается для каждого протокола отдельно
ПроксиСервер.Установить("http", "93.190.21.200", 8092);
HTTPСоединение = Новый HTTPСоединение(Парамы.Сервер, Парамы.Порт, Парамы.Логин, Парамы.Пароль, ПроксиСервер);
ФайлДляЗапроса = Парамы.ПутьКЛогДиректории+Транслит(ТипМетода)+"-request.xml";
Запись = Новый ЗаписьТекста(ФайлДляЗапроса, КодировкаТекста.UTF8);
Запись.Записать(ТекстXML);
Запись.Закрыть();
ФайлОтправки = Новый Файл(ФайлДляЗапроса);
РазмерФайлаОтправки = XMLСтрока(ФайлОтправки.Размер());
Если ТипМетода = "СоздатьНоменклатуру" Тогда
РесурсЗапроса = "/resto/services/products?methodName=createProduct";
Иначе
ЗаписатьВЛог("Неизвестный тип метода");
Возврат;
КонецЕсли;
Попытка
HTTPЗапрос = Новый HTTPЗапрос(РесурсЗапроса);
HTTPЗапрос.УстановитьИмяФайлаТела(ФайлДляЗапроса);
HTTPЗапрос.Заголовки = ПолучитьHTTPЗаголовки(РазмерФайлаОтправки);
HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
ЗаписатьВЛог(ТипМетода + ": Данные отправлены в Айко.");
Если HTTPОтвет.КодСостояния = 200 Тогда = Возвращает 403
ОбработатьОтветОтАйко(HTTPОтвет);
КонецЕсли;
Исключение
ЗаписатьВЛог(ИнформацияОбОшибке().Описание);
КонецПопытки; Показатьчто делаю не так?
Еще можно обратить внимание на протокол HTTP или HTTPS.
Еще можно обратить внимание на протокол HTTP или HTTPS.
Подключение проходит ранее, права есть, если зайти и попробовать создать - дает - права сис. админа.
http протокол..
А можно ли в IIKO загружать заказы.
У нас сложность - заказ приходит в 1С. А потом в IIKO его руками дублируют.
2) как можно обновить документ приходная накладная, если я кидаю в первый раз то выгружает и проводит а если необходимо перезамена то ничего не происходит.
и повторно перескинуть накладную не дает api iiko, При подаче команды на отправку документа iiko Отвечает что ок все хорошо. Но по факту документ не заменяется.
P. S. Это описание цикла отправки Лайки, в API может быть иначе.
Вы можете заказать платную консультацию или разработку у автора. Будет создан приватный заказ на «Бирже заказов» для автора.
№ 839723
Создание 01.06.18 08:49
Обновление 01.08.19 16:37
Просмотры 51712
Загрузки 0
Рейтинг
13
Комментарии 55
Код открыт Да
Рубрики Внешние источники данных
Кому Разработчик
Тип файла Нет файла
Платформа 1С:Предприятие 8
Конфигурация 1С:Бухгалтерия 3.0
Операционная система Не имеет значения
Страна Не имеет значения
Отрасль Рестораны, кафе и фаст-фуд
Налоги Не имеет значения
Вид учета
Бухгалтерский учет
,
Управленческий учет
Доступ к файлу Бесплатно (free)