Реализация протокола удаленного вызова процедур в формате JSON (JSON-RPC)

Публикация № 1132087

Разработка - Обмен данными 1С

RPC JSON-RPC Обмен

28
Удалённый вызов процедур (от англ. Remote Procedure Call, RPC) - технология, позволяющая программам вызывать функции и процедуры на удалённых компьютерах (более точная формулировка: "вызывать функции или процедуры в другом адресном пространстве", т.е. это не обязательно другой компьютер). В данной публикации описана реализация этой технологии в 1С. В качестве протокола для передачи сообщений используется JSON (JSON-RPC), что позволяет удалённым системам (например, веб-приложениям) вызывать функции 1С (только те функции, которые определит разработчик).

 

Общие сведения.

 

Существует множество способов реализации обмена данными сторонних программ с 1С с использованием HTTP-сервисов. Данная реализация позволяет определить один HTTP-сервис и просто добавлять нужные процедуры в общий модуль без переработки (изменения существующих или добавления новых) HTTP-сервисов. В качестве формата протокола используется JSON.

Ниже приведено краткое описание JSON-RPC 2.0.

Запрос должен содержать три обязательных свойства:

  • method - Строка с именем вызываемого метода.
  • params - Массив данных, которые должны передаваться методу, как параметры.
  • id - Значение любого типа, которое используется для установки соответствия между запросом и ответом.

Так же должна быть передана версия протокола (в нашем случае "2.0") в параметре jsonrpc. В спецификации протокола этот параметр не указан, как обязательный, но в реализации данной публикации его указание обязательно.

Пример запроса для вызова процедуры ПолучитьСчетаКлиента(ИНН, НачалоПериода, КонецПериода) (данная процедура использована в качестве примера, конкретные процедуры определяет разработчик):

{"jsonrpc": "2.0", "method": "ПолучитьСчетаКлиента", "params": ["7705260674", "2019-09-01", "2019-09-30"], "id": 1}

Сервер (в нашем случае - решение на 1С) отсылает ответ, содержащий следующие свойства:

  • result - Результат выполнения метода. Если во время выполнения метода произошла ошибка, то это свойство должно быть установлено в null.
  • error - Код ошибки, если произошла ошибка во время выполнения метода, иначе null.
  • id - То же значение идентификатора, что и в запросе, к которому относится данный ответ (используется для сопоставления самого запроса и его результата, например, если асинхронно отправляется сразу несколько запросов).

Пример ответа:

{"jsonrpc": "2.0", "result": [{"uid": "422f9d5c-1032-11e5-92f1-0050568b35ac", "num": "ТД00-000001", "date": "2019-09-11T16:06:15", "sum": 127125}], "id": 1}

Более подробно с протоколом JSON-RPC можно ознакомиться на википедии.

В данной публикации удалённый вызов процедур 1С реализован в виде расширения. В этом расширении присутствует HTTP-сервис rpc_JSONRPC2. После публикации http-сервиса на веб-сервере сторонние системы (в качестве которой может выступать и другая база 1С) смогут выполнять запросы по адресу http://<адрес_базы>/hs/jsonrpc2.

Вызываемые удалённые процедуры должны располагаться в общем модуле расширения rpc_УдаленныеПроцедурыПереопределяемый.

Особенности реализации 1С.

Для упрощения создания собственных удалённых процедур были реализованы следующие особенности:

  • Передаваемые в запросе JSON строковые значения параметров true и false преобразуются в тип 1С Булево.
  • Передаваемые в запросе JSON строковые значения параметров типа 2019-01-10Т10:23:54 (дата в формате XML) преобразуются в тип 1С Дата.
  • Передаваемые в запросе JSON строковые значения параметров типа GUID преобразуются в тип 1С УникальныйИдентификатор.
  • Удалённая процедура (в 1С функция) должна возвращать только значения, которые могут быть сериализованы в JSON. Исключение составляет тип ТаблицаЗначений. В типовом механизме сериализации JSON этот тип не может использоваться, но в данном решении для упрощения возврата ответа (чтобы разработчик не писал лишний код) таблица значений преобразуется в массив структур.

Для передачи ошибок используется вызов исключения.

Например, вот так можно реализовать обработку ошибок в приведённой выше в качестве примера процедуре ПолучитьСчетаКлиента:

Функция ПолучитьСчетаКлиента(ИНН, НачалоПериода, КонецПериода) Экспорт
	
	Контрагент = НайтиКонтрагентаПоИНН(ИНН);
	Если Контрагент.Пустая() Тогда
		ТекстСообщения = СтрШаблон(НСтр("ru='Не найден клиент с ИНН: %1'"), ИНН);
		ВызватьИсключение ТекстСообщения;
	КонецЕсли; 
	
    ...
	
КонецФункции 

В таком случае, если в запросе будет передан ИНН контрагента, отсутствующего в информационной базе, то клиентом будет получен ответ следующего вида:

{"jsonrpc": "2.0", "error": {"code": -32800, "message": "Не найден клиент с ИНН: 0777123413"}, "id": 1}

Примечание. В данной реализации используются следующие коды ошибок:

  • -32600, "Invalid JSON-RPC" - возвращается, если передан неверный формат сообщения (не удалось прочитать JSON) или отсутствуют обязательные параметры;
  • -32700, "Parse error" - возвращается, если переданы неверные параметры (например, отсутствует параметр method или параметр params не является массивом и т.п.);
  • -32601, "Procedure not found" - вызываемая функция отсутствует в общем модуле rpc_УдаленныеПроцедурыПереопределяемый;
  • -32800, <текст ошибки> - ошибка, возникшая во время выполнения метода (см. пример ответа с ошибкой выше).

 

Перейдём от теории к практике.

 

В качестве примера будем использовать конфигурацию Управление торговлей, редакция 11 (конкретный релиз для примера не имеет значения).

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

В данном случае порядок действий будет следующим:

1. Добавляем в конфигурацию расширение из этой публикации и публикуем HTTP-сервис rpc_JSONRPC2.

2. Открываем общий модуль расширения rpc_УдаленныеПроцедурыПереопределяемый и реализуем процедуру ПолучитьСчетаКлиента:

Функция ПолучитьСчетаКлиента(ИНН, НачалоПериода, КонецПериода) Экспорт
	
	Контрагент = НайтиКонтрагентаПоИНН(ИНН); // Реализация данной функции не представляет проблем, оставим её "за скобками".
	Если Контрагент.Пустая() Тогда
		ТекстСообщения = СтрШаблон(НСтр("ru='Не найден клиент с ИНН: %1'"), ИНН);
		ВызватьИсключение ТекстСообщения;
	КонецЕсли; 
	
	ТаблицаСчетов = Новый ТаблицаЗначений;
	ТаблицаСчетов.Колонки.Добавить("uid", Новый ОписаниеТипов("УникальныйИдентификатор"));
	ТаблицаСчетов.Колонки.Добавить("num", Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(11)));
	ТаблицаСчетов.Колонки.Добавить("date", Новый ОписаниеТипов("Дата",,, Новый КвалификаторыДаты(ЧастиДаты.ДатаВремя)));
	ТаблицаСчетов.Колонки.Добавить("sum", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2)));
	
	Запрос = Новый Запрос(
	"ВЫБРАТЬ
	|	СчетНаОплатуКлиенту.Ссылка КАК Ссылка,
	|	СчетНаОплатуКлиенту.Номер КАК num,
	|	СчетНаОплатуКлиенту.Дата КАК date,
	|	СчетНаОплатуКлиенту.СуммаДокумента КАК sum
	|ИЗ
	|	Документ.СчетНаОплатуКлиенту КАК СчетНаОплатуКлиенту
	|ГДЕ
	|	СчетНаОплатуКлиенту.Контрагент = &Контрагент
	|	И СчетНаОплатуКлиенту.Дата МЕЖДУ &НачалоПериода И &КонецПериода");
	Запрос.УстановитьПараметр("Контрагент", Контрагент);
	Запрос.УстановитьПараметр("НачалоПериода", НачалоДня(НачалоПериода));
	Запрос.УстановитьПараметр("КонецПериода", КонецДня(КонецПериода));
	
	Выборка = Запрос.Выполнить().Выбрать();
	Пока Выборка.Следующий() Цикл
		СтрокаТаблицы = ТаблицаСчетов.Добавить();
		ЗаполнитьЗначенияСвойств(СтрокаТаблицы, Выборка);
		СтрокаТаблицы.uid = Выборка.Ссылка.УникальныйИдентификатор();
	КонецЦикла; 
	
	Возврат ТаблицаСчетов;
	
КонецФункции 

 

3. Важный момент. Чтобы была возможность выполнять удаленный вызов данной функции нужно добавить её имя в процедуру УдаленныеПроцедуры общего модуля rpc_УдаленныеПроцедуры. Ниже приведён пример такой процедуры:

Функция УдаленныеПроцедуры() Экспорт
	
	УдаленныеПроцедуры = Новый Массив;
	
	///////////////////////////////////////////////////////////////////////////////////////////////////////
	// Необходимо добавить следующие строки:
	//
	УдаленныеПроцедуры.Добавить("ПолучитьСчетаКлиента");
	УдаленныеПроцедуры.Добавить("АннулироватьСчетКлиента");
	///////////////////////////////////////////////////////////////////////////////////////////////////////
	
	Возврат УдаленныеПроцедуры;
	
КонецФункции 

Это сделано для безопасности с целью исключения выполнения произвольного кода, непредусмотренного разработчиком. Дело в том, что для вызова процедур используется метод 1С Выполнить:

Выполнить("Результат = rpc_УдаленныеПроцедурыПереопределяемый." + ИмяМетода + "(" + ... + ")";

Злоумышленник может в параметре JSON params передать строку, например для описанной выше функции

{"jsonrpc": "2.0", "method": "ПолучитьСчетаКлиента(\"7705260674\", '20190901', '20190930'); ВредныйМодуль.УдалитьВсе()", ...}

В результате чего будет выполнен код:

Выполнить("Результат = rpc_УдаленныеПроцедурыПереопределяемый.ПолучитьСчетаКлиента(""7705260674"", '20190901', '20190930'); ВредныйМодуль.УдалитьВсе() ...

Т.е. после выполнения предусмотренного разработчиком метода "ПолучитьСчетаКлиента" начнёт выполняться произвольный код, который выполняться не должен!

Благодаря добавлению имён процедур в методе УдаленныеПроцедуры общего модуля rpc_УдаленныеПроцедуры такая возможность исключается. Для системы в таком случае имя метода будет не "ПолучитьСчетаКлиента", а ПолучитьСчетаКлиента("7705260674", '20190901, '20190930); ВредныйМодуль.УдалитьВсе(). Такая строка не определена в методе УдаленныеПроцедуры общего модуля rpc_УдаленныеПроцедуры, поэтому ни какой код выполняться не будет, а будет выдано сообщение об ошибке.

 

Теперь веб-программисту достаточно будет выполнить POST запрос по адресу http://<адрес_базы>/hs/jsonrpc2 в формате вида

{"jsonrpc": "2.0", "method": "ПолучитьСчетаКлиента", "params": ["7705260674", "2019-09-01", "2019-09-30"], "id": 1}

чтобы получить необходимые данные.

Всё работает, всё хорошо, но возникает новое требование - дать возможность клиенту из личного кабинета аннулировать счёт на оплату. И вот разработчик личного кабинета просит разработчика 1С реализовать такую возможность.

Для этого достаточно вновь открыть общий модуль расширения rpc_УдаленныеПроцедурыПереопределяемый и реализовать новую процедуру АннулироватьСчетКлиента(ИдентификаторСчета).

Процедура АннулироватьСчетКлиента(ИдентификаторСчета) Экспорт
	
	СчетКлиента = Документы.СчетНаОплатуКлиенту.ПолучитьСсылку(ИдентификаторСчета);
	
	МассивСчетов = Новый Массив;
	МассивСчетов.Добавить(СчетКлиента);
	
	Попытка
		Документы.СчетНаОплатуКлиенту.УстановитьПризнакАннулирован(МассивСчетов);
	Исключение
		ЗаписьЖурналаРегистрации("JSON-RPC.АнулироватьСчетКлиента",
			УровеньЖурналаРегистрации.Ошибка,,,
			КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
	КонецПопытки;
	
КонецПроцедуры 

Теперь, когда клиент в личном кабинете в меню, например, выберет команду "Аннулировать счёт", веб-разработчик просто выполнит POST запрос к базе 1С вида

{"jsonrpc": "2.0", "method": "АнулироватьСчетКлиента", "params": ["422f9d5c-1032-11e5-92f1-0050568b35ac"]}

Хочу обратить внимание, что данная процедура не предполагает возвращение результата, поэтому передавать параметр id не нужно (в терминах JSON-RPC это называется уведомлением). Примечание. Использовано для примера, в реальности, конечно, нужно возвращать ошибку, если по какой-то причине не удалось аннулировать счёт, например, если отсутствует счёт с таким уникальным идентификатором.

Расширение предназначено для любой конфигурации на платформе не ниже 8.3.6. Протестировано на платформе версии 8.3.15.1656.

28

Скачать файлы

Наименование Файл Версия Размер
Реализация протокола удаленного вызова процедур в формате JSON (JSON-RPC)
.zip 13,34Kb
14.10.19
2
.zip 1.0.2.1 13,34Kb 2 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. zeegin 45 14.10.19 21:08 Сейчас в теме
https://its.1c.ru/db/v8std#content:770:hdoc

https://ru.m.wikipedia.org/wiki/%D0%92%D0%BD%D0%B5%D0%B4%D1%80%D0%B5%D0%BD%D0%B8%D0­%B5_SQL-%D0%BA%D0%BE%D0%B4%D0%B0

Функции Вычислить/Выполнить надо вызывать в безопасном режиме.
Все передаваемые параметры надо экранировать.

Не безопасно.
Glebis; oleg-m; ltfriend; pallid; WizaXxX; vikad; JohnyDeath; Il; +8 Ответить
4. ltfriend 416 15.10.19 19:05 Сейчас в теме
(1) А если функция должна выполнять действия, которые не могут быть выполнены в безопасном режиме (например, в нем используется обращение к файлам)?
В данном случае метод "Выполнить" не производит выполнение произвольных фрагментов кода (например, как обработчики событий в конвертации данных).
"Выполнить" используется для вызова конкретных процедур общего модуля "rpc_УдаленныеПроцедурыПереопределяемый":
Выполнить("Результат = rpc_УдаленныеПроцедурыПереопределяемый." + ИмяМетода + "(" + ... + ")");

Поэтому его можно выполнять в небезопасном режиме. Ведь тот код, который будет выполняться определяет сам разработчик.
Однако, благодаря вашему комментарию я более углубленно задумался о безопасности. И действительно, моя реализация позволяет злоумышленнику выполнить произвольный код. Ведь можно в поле method передать не просто имя метода, а метод с корректными параметрами, потом поставить точку с запятой и написать произвольный код и он будет выполнен!
Например, если передать в поле method вместо ПолучитьСчетаКлиента строку ПолучитьСчетаКлиента(\"7705260674\", '20190901', '20190930'); ВредныйМодуль.УдалитьВсе(), то выполняемая строка примет следующий вид:
Выполнить("Результат = rpc_УдаленныеПроцедурыПереопределяемый.ПолучитьСчетаКлиента(""7705260674"", '20190901', '20190930'); ВредныйМодуль.УдалитьВсе() ...

И после выполнения предусмотренного разработчиком метода "ПолучитьСчетаКлиента" начнёт выполняться произвольный код.
Поэтому в разработку были внесены изменения. Теперь есть дополнительная функция УдаленныеПроцедуры общего модуля rpc_УдаленныеПроцедуры. В ней разработчик должен указать имена функций, которые доступны для вызова.
Т.о. если разработчик определит следующие имена доступных функций:
Функция УдаленныеПроцедуры() Экспорт
	
	УдаленныеПроцедуры = Новый Массив;
	
	////////////////////////////////////////////////////////////­///////////////////////////////////////////
	// Необходимо добавить следующие строки:
	//
	УдаленныеПроцедуры.Добавить("ПолучитьСчетаКлиента");
	УдаленныеПроцедуры.Добавить("АннулироватьСчетКлиента");
	////////////////////////////////////////////////////////////­///////////////////////////////////////////
	
	Возврат УдаленныеПроцедуры;
	
КонецФункции 
Показать

то при передачи в params строки ПолучитьСчетаКлиента(\"7705260674\", '20190901', '20190930'); ВредныйМодуль.УдалитьВсе() ни какого кода выполнено не будет, а будет выдана ошибка, потому что метод ПолучитьСчетаКлиента(\"7705260674\", '20190901', '20190930'); ВредныйМодуль.УдалитьВсе() не определен в функции УдаленныеПроцедуры, а определён метод ПолучитьСчетаКлиента (см. код выше).

А вот с передачей параметров ни каких проблем с безопасностью я не обнаружил. Как вы себе представляете инъекции в запросы 1С через параметры?
Предположим, в процедуре происходит поиска контрагента по ИНН, переданного в качестве параметра:

Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1
| Контрагенты.Ссылка КАК Ссылка
|ИЗ
| Справочник.Контрагенты КАК Контрагенты
|ГДЕ
| Контрагенты.ИНН = &ИНН");
Запрос.УстановитьПараметр("ИНН", ИНН);

Какое значение нужно передать в параметре "ИНН", чтобы получить несанкционированные данные, не говоря о том, чтобы злоумышленник мог изменить их передав "чудо строку" через параметр "ИНН" в качестве инъекции?
5. zeegin 45 15.10.19 19:17 Сейчас в теме
(4) В данном случае, конечно, имелось ввиду инъекция не в запросы, а в квери. Т.е. вообще в любое поле, в квери, в заголовки запросов, в коммандную строку. Главное не допустить исполнения произвольного кода.

Безопасно - это не выполнять произвольного кода. В случаях RPC как и впринципе в REST лучше делать контроллер, который будет определять кому передать управление, т.е. то, что определил разработчик.

Я бы сделал просто в переопределяемом модуле процедуру:
ПриОбработкеЗапроса(ИмяМетода, Параметры)

она была бы в роли контроллера и в ней разработчик сможет описать куда роутить исполнение

Если ИмяМетода = "ПолучитьСчетаКлиента" Тогда

МодульРеализацииОбработки.ПолучитьСчетаКлиента(Параметры);

КонецЕсли;
6. ltfriend 416 15.10.19 19:23 Сейчас в теме
(5) соглашусь, что так безопасней, но требует больше кода. Идея была в том, чтобы разработчик просто добавлял новую функцию в модуль rpc_УдаленныеПроцедурыПереопределяемый и она тут же становилась доступна для вызова без дополнительного кода
...
ИначеЕсли ИмяМетода = "..." Тогда
   ....
КонецЕсли


Поэтому я пошёл на компромисс. Сделал отдельную функцию, где разработчик определяет доступные функции. С одной стороны кода стала не намного больше. По сути, добавить одну строку
УдаленныеПроцедуры.Добавить("<имя_процедуры>")

но с другой стороны, по моему мнению, решает проблему с безопасностью.
7. zeegin 45 15.10.19 19:45 Сейчас в теме
(6) Ну тогда правильно сделать в rpc_УдаленныеПроцедурыПереопределяемый процедуру

Процедура ПриОпределенииДопустимыхУдаленныхПроцедур(Процедуры) Экспорт

    Процедуры.Добавить("ПолучитьСчетаКлиента");

КонецПроцедуры


https://its.1c.ru/db/v8std#content:553
3.2. Переопределяемые общие модули должны содержать только экспортные процедуры.

Ну и всегда надо помнить, что несмотря на то, что HTTP сервисы это серверный контекст, то, что приходит оттуда - идеологически - это клиентский вызов.
https://its.1c.ru/db/v8std#content:678

2. Проникновение небезопасного кода на сервер и его выполнение.

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

Это значит, что на все вызываемые процедуры надо накладывать ограничение

3. Серверные процедуры и функции должны возвращать в форму только окончательный результат расчета.

При этом если пользователь, используемый для удаленного вызова не имеет собственного профиля доступа, или еще хуже, используется привилегированный режим, то требование:

https://its.1c.ru/db/v8std#content:485
3.2. В случаях, когда к экспортной процедуре или функции выполняется обращение в сеансе с недостаточным уровнем прав доступа, должно вызываться исключение стандартного вида.

Будет необходимо дополнительно обработать, чтобы ограничить удаленного пользователя, т.к. стандартной проверки ролей уже не хватит.
8. JohnyDeath 295 16.10.19 05:55 Сейчас в теме
(4)
А вот с передачей параметров ни каких проблем с безопасностью я не обнаружил.

А если вот так:
{"jsonrpc": "2.0", "method": "ПолучитьСчетаКлиента", "params": ["ВредныйМодуль.УдалитьВсе()", "2019-09-01", "2019-09-30"], "id": 1}
9. ltfriend 416 16.10.19 10:05 Сейчас в теме
(8) То значением переданного параметра в функцию будет строка "ВредныйМодуль.УдалитьВсе()".
Строка кода, который выполняется имеет следующий вид
Выполнить(Результат = rpc_УдаленныеПроцедурыПереопределяемый.<Имя_Метода>(Параметры[0], Параметры[1], ..., Параметры[N]));
3. ltfriend 416 15.10.19 17:58 Сейчас в теме
(2) вот из-за заголовка я и не нашёл ту публикацию. Перед своей реализации JSON-RPC я же помнил, что была подобная статья и я там даже оставлял свой комментарий, но перед созданием своей публикации найти её не смог.
10. duhh 189 17.10.19 14:44 Сейчас в теме
Ничего страшного, если в этой ветке задам вопрос про безопасный вызов процедуры. знатокам безопасности.

Вот такой вызов будет безопасным?

Процедура ВыполнитьПроцедуру(ВходящиеДанные)
	
	ДанныеВыполнения = ВходящиеДанные.Данные; 
	
	// Безопасность - проверка имени метода на корректность. Взял из БСП
	Попытка
		Тест = Новый Структура(ДанныеВыполнения.Method, ДанныеВыполнения.Method);
		Если Тест = Неопределено Тогда 
			ВызватьИсключение НСтр("ru = 'Синтетический тест'");
		КонецЕсли;
	Исключение
		ВходящиеДанные.Ошибка = Истина;
		ВходящиеДанные.ТекстОтвета = НСтр("ru='Некорректное значение параметра ИмяМетода.'");
		Возврат;
	КонецПопытки;

	// Безопасность - проверка параметров на корректность. 
	Попытка
		Если Не ТипЗнч(ДанныеВыполнения.Params) = Тип("Структура") Тогда 
			ВызватьИсключение НСтр("ru = 'Тест параметров'");
		КонецЕсли;
	Исключение
		ВходящиеДанные.Ошибка = Истина;
		ВходящиеДанные.ТекстОтвета = НСтр("ru='Некорректное значение параметра Params.'");
		Возврат;
	КонецПопытки;

	СтрокаВыполнения = ДанныеВыполнения.Method + "(" + "{Параметры}" + ")"; 
	
	Если ДанныеВыполнения.Свойство("Params") Тогда
		СтрокаВыполнения = СтрЗаменить(СтрокаВыполнения, "{Параметры}", "ДанныеВыполнения.Params");
	Иначе
		СтрокаВыполнения = СтрЗаменить(СтрокаВыполнения, "{Параметры}", "");
	КонецЕсли; 
	
	Попытка
		Результат = Вычислить(СтрокаВыполнения);
Показать
11. alexqc 146 17.10.19 22:34 Сейчас в теме
В принципе, для безопасности вызова можно проверить что имя метода точно представляет собой идентификатор (последовательность только букв и цифр).
Более того, достаточно проверить отсутствие в имени символа "(" - без скобок никакой команды не напишешь.

А вообще, лично я бы вместо общего модуля делал это в виде макета-словаря: в простейшем виде это будет 1-я колонка -- имя метода в rpc, 2-я -- полный путь вызова (т.е как ОбщийМодуль.ФункцияМодуля либо например РегистрыНакопления.НужныйРегистр.ФункцияМодуляМенеджера).
Оставьте свое сообщение

См. также

Обмен без правил. От простого к сложному 130

Статья Программист Архив с данными v8 1cv8.cf Абонемент ($m) Перенос данных из 1C8 в 1C8

Пишем обмен с нуля, разбираемя с разными способами сериализации, учимся редактировать XML документы, создаем XDTO и Web service, осваиваем Script variant - English.

1 стартмани

16.01.2019    13091    8    fr13    26       

Выполнение запроса в другой базе 1С без com-соединения. HTTP-сервис 66

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Перенос данных из 1C8 в 1C8

Выполнение любого запроса с параметрами из одной базы 1С в другую. Используя HTTP-сервис. Посредством POST-запроса и JSON.

1 стартмани

30.11.2018    9255    16    John_d    19       

Пример получения данных из другой базы 1С через Web-сервис 99

Инструменты и обработки Программист Архив с данными v8 Россия Windows Абонемент ($m) Перенос данных из 1C8 в 1C8

В данной статье описан пример получения данных справочника из другой базы 1С через Web-сервис.

1 стартмани

11.11.2018    13452    13    flyDrag    28       

Опыт проведения сложных переносов данных на 1С 168

Статья Программист Архив с данными v8 КД Абонемент ($m) Перенос данных из 1C8 в 1C8

В статье я расскажу про опыт сложных переносов на платформе 1С:Предприятие. Она будет адресована в первую очередь разработчикам 1С, которые уже имеют опыт использования методики «Конвертация данных» (как второй, так и третьей редакции) – я думаю, это большинство из нас. • Я расскажу про различные методики организации переносов данных. • Мы рассмотрим рекомендуемые способы оптимизации правил конвертации, которые позволят вам быстрее выполнять свои переносы. • Также мы разберем, какие могут возникнуть сложности в ходе переноса данных. • Я покажу сравнительный анализ по ряду параметров инструментов «Конвертация данных» второй редакции и третьей, которая вышла уже более года назад.

30.07.2018    23331    48    primat    12       

Вы больше не будете разбирать Excel как раньше 114

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Загрузка и выгрузка в Excel

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

1 стартмани

07.05.2018    19651    62    m-rv    33       

Правила конвертации документов ЗУП 2.5 - ЗУП 3.1 44

Инструменты и обработки Системный администратор Программист Бухгалтер Документ XML v8 v8::СПР ЗУП2.5 ЗУП3.x Россия БУ Зарплата Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Правила конвертации документов ЗУП 2.5 - ЗУП 3.1. Позволяют вести параллельную работу в базах ЗУП редакций 2,5 и 3.1.

10 стартмани

06.03.2018    25496    123    kostya_whiskas    23       

Организация обмена с базой филиала (розничного магазина) в торговой сети через XML (универсальный обмен) 71

Статья Программист Архив с данными v8 КД УТ11 Розничная и сетевая торговля (FMCG) Розничная торговля Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

В статье по шагам рассматривается создание обмена между центральной базой и базами филиалов на базе конфигурации УТ 11. Для решения поставленной задачи было решено не использовать РИБ, т.к. требуется односторонний обмен ограниченным набором данных, к тому же по определенным условиям. Обмен реализован на основе типовой синхронизации на основе универсального обмена в формате EnterpriseData. Данная публикация может быть полезна внедренцам, которые работают с торговыми сетями, в том числе по модели франчайзинга.

1 стартмани

26.02.2018    26060    14    Kutuzov    18       

Создание в 1С 7.7 XML в формате EnterpriseData (универсальный формат обмена), версия 1.5. Инструкции и примеры переноса данных из устаревшей конфигурации 1С 7.7 в любую современную 1С 8.3, поддерживающую EnterpriseData, через Конвертацию данных 3 31

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 v8 1cv7.md Россия Абонемент ($m) Перенос данных из 1С7.7 в 1C8.X Обмен через XML

Воспользоваться современным средством переноса данных "Конвертация данных 3.0.5.3" можно только выгрузив из системы - источника данных XML в формате обмена данными EnterpriseData. В этой публикации можно скачать приемы выгрузки из 1С 7.7 универсального формата обмена для Конвертации данных 3. Выполняем перенос данных из «1С:Предприятие 7.7» в «1С:Предприятие 8.3». Используем Конвертацию данных КД 3.0 из 1c 7.7 --> 1С 8.3. На первой стадии еще не опубликовано иного способа подложить файл для Конвертации данных 3 кроме как сформировать его вручную, постараемся решить данную проблему.

1 стартмани

26.02.2018    27000    45    ksnik    3       

Проверка данных после неполного ("нового") переноса из ЗУП 2.5 в ЗУП 3.1 19

Отчеты и формы Бухгалтер Архив с данными v8 v8::СПР ЗУП3.x Россия БУ Зарплата Абонемент ($m) Бухгалтерский учет Перенос данных из 1C8 в 1C8

Описаны данные, которые необходимо проверить после неполного ("нового") переноса из ЗУП 2.5 в ЗУП 3.1. Описано, на что необходимо обратить внимание, где найти перенесенные данные, что НЕ переносится, где найти настройки.

1 стартмани

17.01.2018    16960    139    btydj    3       

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника. ЗУП 3.1 35

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Зарплата Абонемент ($m) Обработка документов Загрузка и выгрузка в Excel

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника по данным экономического отдела. ЗУП 3.1.

3 стартмани

20.12.2017    25884    29    mvv1975    5       

Приемы эффективной загрузки данных из Excel в 1С 192

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Загрузка и выгрузка в Excel

Показаны приемы эффективной работы с Excel для загрузки данных в 1С.

1 стартмани

13.12.2017    28963    69    alexey.kutya    75       

Синхронизация данных по правилам КД2.0 114

Инструменты и обработки Системный администратор Программист Бизнес-аналитик Бухгалтер Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Перенос данных из 1C8 в 1C8

Новый инструмент для сравнения и загрузки данных, сочетающий в себе: гибкость запросов (используются для сопоставления объектов); наглядный вывод отличий; удобный отбор загружаемых данных; возможность пообъектной синхронизации двух баз по правилам КД2 с помощью вызова обработки "Универсальный обмен XML" в базе-источнике через COM-соединение.

1 стартмани

27.08.2017    16960    107    vikad    30       

Правила обмена ЗУП 3.1 - БП 2.0 и ЗУП 3.1 - УПП 1.3 (отражение, ведомости и справочники) 98

Инструменты и обработки Программист Документ XML v8 v8::БУ v8::СПР БП2.0 БП3.0 ЗУП3.x Россия БУ Зарплата Управление персоналом (HRM) Абонемент ($m) Перенос данных из 1C8 в 1C8 Обмен через XML

Правила обмена для выгрузки документов "Отражение зарплаты в бухучете", "Ведомость в банк", "Ведомость в кассу", справочников "Сотрудники" и "Физические лица"

1 стартмани

01.08.2017    61359    1489    forseil    192       

Перенос справочников и документов из УТ 10.3 в БП 3.0 7

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v8 УТ10 БП3.0 Россия БУ НУ УУ Абонемент ($m) Перенос данных из 1C8 в 1C8

Синхронизация справочников и документов из Управление торговлей 10.3 в Бухгалтерию предприятия 3.0. Обработка не затрагивает штатный механизм. Подключение и перенос документов происходит посредством OLE. Без ввода начальных остатков.

10 стартмани

25.07.2017    15044    9    2casp    5       

Соответствия объектов обмена 8

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 КА1 Россия Абонемент ($m) Распределенная БД (УРИБ, УРБД) Перенос данных из 1C8 в 1C8

Обработка позволяет проверять, исправлять ошибки, добавлять и удалять соответствия объектов в обменах данными между конфигурациями на основе «Комплексной автоматизации 1.1» или похожими конфигурациям. Подходит для обменов с использованием регистра сведений «СоответствиеОбъектовДляОбмена».

2 стартмани

26.08.2016    15388    4    xxxelaaa    0       

 Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP) 13

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 ERP2 Абонемент ($m) Загрузка и выгрузка в Excel Внешние источники данных Интеграция

Союз-PLM представляет собой полнофункциональный программный комплекс для решения  широкого спектра задач управления инженерной технической информацией наукоемких изделий и сложных инженерных объектов в области машиностроения, приборостроения, архитектуры, строительства. На практике, это управление конструкторской документацией, интегрированное с САПР, бизнес-процессы, файловый архив. Все это работает в SQL и шевелится с помощью скриптов на C#. Скрипты свободно  отлаживаются в MS Visual Studio. Подробнее смотрите на их сайте: http://www.programsoyuz.ru/products/system-soyuz-plm.html  Редактирование, конструирование и использование бизнес-процессов на порядок лучше систем на базе 1С из тех, что я изучил.

1 стартмани

25.07.2016    33343    6    milkers    2       

Выгрузка/загрузка данных в формате JSON v 1.0.5 56

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Распределенная БД (УРИБ, УРБД) Перенос данных из 1C8 в 1C8

Обработка предназначена для обмена данными между схожими конфигурациями в формате JSON. Этот формат обладает рядом существенных преимуществ по сравнению с xml и прочими популярными форматами. В отличие от существующих аналогов, обработка не использует никаких дополнительных библиотек. (де)Сериализация всех объектов происходит средствами встроенного языка и методов ЗаписатьJSON() и ПрочитатьJSON(). Работает на платформе версии не ниже 8.3.6.

3 стартмани

27.01.2016    36526    303    kser87    39       

Прайс-лист с картинками в EXCEL из 1С: УТ10, УПП, КА (с формой заказа) 26

Отчеты и формы Руководитель проекта Внешняя обработка (ert,epf) v8 КА1 УТ10 УПП1 Windows Оптовая торговля Абонемент ($m) Ценообразование, прайсы Загрузка и выгрузка в Excel

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

9 стартмани

26.11.2015    27615    61    spy-83    19       

[COM] Перенос данных через COMConnector 82

Инструменты и обработки Системный администратор Программист Бухгалтер Внешняя обработка (ert,epf) v8 1cv8.cf Россия Windows Абонемент ($m) Перенос данных из 1C8 в 1C8

Обработка обмена между двумя информационными базами схожей (не обязательно совпадающей) структуры. Изначально была заточена под бухгалтерию предприятия, сейчас используется для для обменов через COM любых конфигураций с режимом запуска "Управляемое приложение". Ближайший аналог - выгрузка-загрузка XML, но здесь нет промежуточных файлов выгрузки/загрузки, и обмен не прекращается в случае, когда состав реквизитов источника и приёмника различен!!! 27.09.2019 Версия 5.2.3.2 Исправлены исправленыц замеченные ошибки (версия от мая 19 года)

2 стартмани

23.11.2015    41343    604    Alex_E    169       

Интерфейс сопоставления объектов для обмена (для типового регистра СоответствиеОбъектовДляОбмена) 22

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 КА1 БП2.0 ЗУП2.5 УТ10 УПП1 Windows Абонемент ($m) Инструментарий разработчика Универсальные обработки Перенос данных из 1C8 в 1C8

Вы внедряете обмен данными между двумя типовыми или основанными на типовых БД и вам необходим инструмент, чтобы сопоставить между собой справочники этих конфигураций? Вы хотите навести порядок в обмене данными, потому что вам надоело вылавливать дублирующиеся объекты? Вам очень хочется перепоручить сопоставление объектов обменивающихся баз пользователям, но нет подходящего и понятного пользователям интерфейса? Тогда вам нужна именно эта обработка!

4 стартмани

11.11.2015    30298    221    catsam    8       

Загрузка УПД в Бухгалтерию 3.0 11

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 v8::БУ БП3.0 Россия БУ Windows Оптовая торговля Абонемент ($m) Обработка документов Загрузка и выгрузка в Excel

Загрузка УПД из Excel в Бухгалтерию предприятия 3.0, с добавлением номенклатуры, ГТД, стран происхождения.

3 стартмани

20.10.2015    11710    7    teyana    12       

Выгрузка и загрузка данных из файла Excel с поиском по любым полям (есть поиск по ссылке, всего три итерации поиска. Управляемые формы или "Такси") 43

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Загрузка и выгрузка в Excel Обработка документов

Обработка позволяет загружать данные с поиском по ссылке как для загружаемого объекта, так и его свойств. Загружает справочники, документы, планы видов характеристик. Будет полезна как замена использования конвертации данных для задач переноса, а также как классическая загрузка из табличного документа (Excel). Поиск объекта при загрузке выполняется до трех раз с разными полями поиска (поля поиска настраиваются). Также реализована выгрузка в Excel по ссылкам. У обработки удобный интерфейс, в котором разберется даже начинающий пользователь. Загрузка накладных из файлов xls реализована с интеллектуальным поиском колонок с данными. В интеллектуальном поиске поддерживаются все основные типовые печатные формы.

5 стартмани

16.10.2015    48742    528    primat    29       

Полезные приемы при работе с Excel из 1С (Версия 3.1) 495

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Практика программирования Разработка внешних компонент Загрузка и выгрузка в Excel

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

1 стартмани

22.09.2015    138390    447    Zerocl    60       

Прыг-Скок...или из MS EXCEL в 1С (8.2) (открытый код) 183

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Обработка документов Обработка справочников Загрузка и выгрузка в Excel

Универсальная загрузка данных из Microsoft Office Excel. Автоматическая загрузка из любых по форме документов с очень удобным редактором. Почти готовый шаблон для любой конфигурации. Не требует регистрации-бесплатно.

1 стартмани

16.09.2015    51370    374    Tatitutu    49       

Управление изменениями в планах обмена (Управляемое приложение) v 1.0 6

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Распределенная БД (УРИБ, УРБД) Внешние источники данных Перенос данных из 1C8 в 1C8

Простая в использовании и наглядная обработка для регистрации изменений или отмены регистрации в планах обмена используя гибкие возможности отбора СКД.

2 стартмани

15.08.2015    25136    46    kser87    3       

Обмен прайс-листами и анализ ценовой политики конкурентов, партнёров и поставщиков в программе 1С:Предприятие 2

Инструменты и обработки Бизнес-аналитик Руководитель проекта Внешняя обработка (ert,epf) v8 УТ10 УПП1 УУ Windows Ценообразование, анализ цен Абонемент ($m) Ценообразование, прайсы Обработка документов Загрузка и выгрузка в Excel

Универсальная программа для загрузки Прайс-листов в базу 1С:Предприятия 8. Основные достоинства: простота использования и широкие функциональные возможности поиска товаров для записи цен. Область применения: обмен прайс-листами и анализ ценовой политики конкурентов, партнёров и поставщиков в программе 1С:Предприятие.

10 стартмани

16.07.2015    24781    4    Destroy    2       

И снова "Как сжать картинки для экспорта в EXCEL?" или Умная картинка 8.2 14

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Практика программирования Загрузка и выгрузка в Excel

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

1 стартмани

17.06.2015    23052    54    Tatitutu    10       

Перенос справочников и документов из 1С 7.7 "Торговля и склад 9.2" в 1С 8.2 "Бухгалтерия предприятия 2.0". 2

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 БП2.0 1С7:ТиС Россия Windows Абонемент ($m) Перенос данных из 1С7.7 в 1C8.X Обмен через XML

Немного доработанные типовые правила обмена для конфигураций из ТиС 9.2. в БП 2.0 - «ПОД_Перенос_Справочников_ТиС_БП20.xml» и «ОбработкаВыгрузкиСправочников.ert». Добавлены правила выгрузки справочников: Организации, контрагенты и номенклатура. Доработал типовые ПОД для переноса только контрагентов и номенклатуры без документов в новую базу бухгалтерии 2.0, протестировал на типовых конфигурациях ТиС 9.2 рел.984 и БП 2.0.64.23.

1 стартмани

05.06.2015    44081    121    Kuzya_brаtsk    3       

Перенос объектов 1С 254

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Перенос данных из 1C8 в 1C8

Простой и наглядный перенос объектов между любыми базами 1С 8 с предварительным анализом на возможные различия в данных (через файл, через интернет, через буфер обмена). Интерактивная настройка правил обмена на стороне источника и получателя. В обработке есть удобный обзор по подсистемам, поиск и обработка данных по заданному фильтру. Сравнение объектов, поиск ссылок. Конструктор кода по созданию объектов, написание скриптов и отладка мини-функций в УФ. Отключение/включение регламентных заданий. Регистрация/снятие с регистрации объектов в планах обмена. И многое другое. Инструменты администратора в одной обработке.

1 стартмани

16.03.2015    79207    1992    moolex    190       

Работа с Excel. Объединение, Стыковка, Свертка 4

Инструменты и обработки no Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Универсальные обработки Загрузка и выгрузка в Excel

Обработка позволяет работать как с одним, так и с несколькими файлами Excel: Объединять файлы со сходной структурой в одну таблицу, Стыковать файлы с разной структурой по ключевому полю, Группировать результат по выбранным полям и суммировать числовые поля.

1 стартмани

19.02.2015    19119    35    Ekovichev    7       

Перенос данных из Бухгалтерии 2.0 в Бухгалтерию 3.0 15

Инструменты и обработки Системный администратор Программист Документ XML v8 БП2.0 БП3.0 Россия БУ Windows Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Перенос данных и остатков с Бухгалтерии 2.0 в Бухгалтерию 3.0 с помощью универсального обмена данными XML.

1 стартмани

30.12.2014    39344    308    sergeyzhuravlev    8       

Нестандартная загрузка из Excel 102

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Загрузка и выгрузка в Excel

Взгляд на привычную задачу под неожиданным углом - пусть пользователь прямо в Excel решает, что ему надо, и грузит в 1С только нужное. Установите любой отбор, выделите фрагмент, и вот он уже в 1С. Для обычных и УФ 8.3

1 стартмани

12.11.2014    24892    272    Yashazz    45       

Выгрузка данных из УТ 10.3 в БП 3.0 (своими руками) 34

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 УТ10 БП3.0 Россия Windows Абонемент ($m) Перенос данных из 1C8 в 1C8

Старая добрая, позабытая многими выгрузка из УТ 10.3 в БП 1.6. Ее еще можно оживить, и она послужит на благо всем желающим, всем уставшим от автоматических обменов.

3 стартмани

30.10.2014    34064    309    TESL    40       

Универсальная выгрузка/загрузка данных для отличающихся конфигураций (JSON, Такси+ОФ) 411

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Перенос данных из 1C8 в 1C8 Универсальные обработки Распределенная БД (УРИБ, УРБД)

Простой перенос через JSON данных между двумя базами 1С (документов, справочников, ПВХ, ПВР, счетов). Аналогична произвольной выгрузке в типовой "Выгрузка/загрузка XML", но может использоваться для отличающихся конфигураций. Подходит для любых пар баз с любым интерфейсом (управляемый + обычный). Без настроек. Не требует идентичности конфигураций и платформ. При переносе типы данных сопоставляются по наименованиям метаданных, объекты и ссылки по UID.

1 стартмани

22.10.2014    191325    4190    ekaruk    175       

Перенос изображений номенклатуры УТ10 <-> УТ11 9

Инструменты и обработки Руководитель проекта Внешняя обработка (ert,epf) v8 УТ10 УТ11 Windows Абонемент ($m) Перенос данных из 1C8 в 1C8

Обработка позволяет переносить изображения номенклатуры между УТ10 и УТ11. В обоих направлениях! Перенос изображений происходит через каталог. Синхронизация происходит по коду номенклатуры. Обработка корректно работает в том числе и с изображениями при хранении их вне базы в УТ11.

10 стартмани

30.06.2014    29296    72    GATTUSO    17       

Универсальная загрузка табличных данных из файла Microsoft Excel 33

Инструменты и обработки no Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Загрузка и выгрузка в Excel

Мастер загрузки произвольных табличных данных из книг Microsoft Excel в объекты информационной базы 1С: Предприятие (управляемое приложение).

1 стартмани

30.04.2014    24645    420    McSeem    20       

Внешняя обработка TRANSFER7782U Версия 2.07 Перенос данных из 1C Предприятие 7.7 в 1С Предприятие 8.2 (8.3) (Обычное и управляемое приложение) 42

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Перенос данных из 1С7.7 в 1C8.X

Внешняя обработка предназначена для COM-переноса данных из информационной базы 1С Предприятие 7.7 в 1С Предприятие 8.2 (8.3) (Обычное и управляемое приложение).

1 стартмани

25.04.2014    61092    724    rauf    73       

[x1c.ru] Загрузка Табеля учета рабочего времени из Excel-отчета системы "Таймформер" для ЗУП Редакция 2.5 0

Инструменты и обработки Системный администратор Бухгалтер Внешняя обработка (ert,epf) v8 ЗУП2.5 Россия БУ УУ Windows Учет рабочего времени Абонемент ($m) Загрузка и выгрузка в Excel

Обработка для загрузки данных об отработанном времени из Excel-файла системы "Таймформер". Загружает Excel-файлы, содержащие подробный месячный отчет.

1 стартмани

16.04.2014    18913    14    GusevNA    1       

Загрузка данных из табличного документа (управляемые формы) 138

Инструменты и обработки no Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Россия Windows Абонемент ($m) Загрузка и выгрузка в Excel

Обработка загрузки данных из табличного документа на основе стандартной от 1С, переделанная для тонкого клиента. Для 8.2 и 8.3

1 стартмани

28.03.2014    86657    2895    proal    76       

Обработка выгрузки/загрузки табеля учета рабочего времени 11

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 ЗУП2.5 БУ УУ Windows Зарплата Учет рабочего времени Абонемент ($m) Загрузка и выгрузка в Excel

Обработка предназначена для выгрузки и загрузки табеля учета рабочего времени. Обработка выгружает шаблоны табеля учета рабочего времени в файлы Excel по подразделениям (для каждого подразделения один файл). И загружает введённые данные из этих же файлов.

1 стартмани

04.02.2014    15975    73    arr    5       

Универсальная обработка сравнения документов распределенных информационных баз (вер 2.5.6) (Обычный интерфейс) 1С 8.2, 8.3 29

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Распределенная БД (УРИБ, УРБД) Универсальные обработки

Сравнение документов между двумя распределенными базами или между базами с одинаковой конфигурацией на Обычном интерфейсе. Управляемый в разработке

2 стартмани

03.02.2014    40589    384    kot_stouk    19       

XML обмен данными между идентичными конфигурациями 8

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Обработка предназначена для выгрузки/загрузки данных между идентичными конфигурациями 8.2. Переносятся все виды метаданных.

1 стартмани

27.01.2014    27840    368    Alex103a    27       

Выгрузка товаров и цен из Excel в документ установки цен 5

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 Розница БП3.0 УТ11 Россия Windows Ценообразование, анализ цен Абонемент ($m) Обработка документов Загрузка и выгрузка в Excel

Данная обработка предназначена для выгрузки из прайс-листа Excel товаров и цен в документ установки цен. Поддерживает следующие конфигурации: Бухгалтерия 3.0, Управление торговлей 11.1, Розница 2.0

1 стартмани

20.01.2014    16167    121    rsvp201    9