Имя: Пароль:
1C
 
Обмен по формату EnterpriseData без БСП
0 HomoAlbus
 
17.05.18
13:41
Привет, ребята.

Есть задача, запилить односторонний обмен по EnterpriseData из самописной в БП3. Клиент категорически отказывается внедрять в свою самописную конфигурацию подсистему БСП по обмену данными и просит реализовать все парой общих модулей + обработка. Не более того.

Кто-нибудь решал подобную задачу? Насколько трудоемко вычленить обмен  из подсистемы БСП?
1 scanduta
 
17.05.18
13:42
Нахрен не нужна здесь EnterpriseData
2 scanduta
 
17.05.18
13:43
Юзай обычные КД правила
3 Cool_Profi
 
17.05.18
13:43
А чем он обосновал именно EnterpriseData?
4 HomoAlbus
 
17.05.18
13:46
ED - обосновал я, поскольку правила не слишком сложны и хочется избежать поддержки при обновлении самой БП. Плюс обмен должен работать фоном, БП как раз предлагает вариант с фоновым запуском обмена из другой программы по ED.

Все уже реализовано и замечательно работает. Но начал сдавать задачу, увидели кучу общих модулей БСП и теперь сопротивляются.
5 mTema32
 
17.05.18
13:53
(4) Если все работает, но им не нравится "много общих модулей", то технически, наверное, можно переписать. Но ценник выстави им 10-кратный.
6 Victor0306
 
17.05.18
14:08
На php фрагмент

$str='<?xml version="1.0" encoding="windows-1251"?>

<Message xmlns:msg="http://www.1c.ru/SSL/Exchange/Message"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">;
    <msg:Header>

        <msg:Format>http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.0</msg:Format>;
        <msg:CreationDate>2017-01-01T'.$date_so_t.'</msg:CreationDate>
        <msg:Confirmation>

            <msg:ExchangePlan>СинхронизацияДанныхЧерезУниверсальныйФормат</msg:ExchangePlan>
            <msg:To>ЦБ</msg:To>
            <msg:From>КП</msg:From>
            <msg:MessageNo>'.$cnt.'</msg:MessageNo>
            <msg:ReceivedNo>0</msg:ReceivedNo>

        </msg:Confirmation>
        <msg:AvailableVersion>1.1</msg:AvailableVersion>

        <msg:AvailableVersion>1.0.beta</msg:AvailableVersion>

        <msg:AvailableVersion>1.0</msg:AvailableVersion>
    </msg:Header>

<Body xmlns="http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.0">;';


$str=$str. '
<Справочник.Номенклатура>

    <КлючевыеСвойства>

        <НаименованиеПолное>'.$Result['productname'].'</НаименованиеПолное>

        <КодВПрограмме>'.$id.'</КодВПрограмме>
    </КлючевыеСвойства>

    <Наименование>'.$Result['productname'].'</Наименование>

    <ТипНоменклатуры>Товар</ТипНоменклатуры>

    <ЕдиницаИзмерения>

        <Код>шт  </Код>

    </ЕдиницаИзмерения>

    <СтавкаНДС>БезНДС</СтавкаНДС>

    <ДанныеАлкогольнойПродукции>

        <АлкогольнаяПродукция>false</АлкогольнаяПродукция>
        <ВидАлкогольнойПродукции xsi:nil="true"/>

        <ИмпортнаяАлкогольнаяПродукция>false</ИмпортнаяАлкогольнаяПродукция>
        <ОбъемДАЛ xsi:nil="true"/>

        <ПроизводительИмпортер xsi:nil="true"/>

    </ДанныеАлкогольнойПродукции>

</Справочник.Номенклатура>
';




fwrite($fp, $str);
7 hhhh
 
17.05.18
14:11
(4) сложи все общие модули в один модуль, назови его _Homoalbus
8 HomoAlbus
 
17.05.18
15:34
(6) Ну тут прям хардкодинг, так-то понятно, что можно было и КД3 не пользоваться, руками запилить все. Хочется ж как-то с минимумом телодвижений
9 HomoAlbus
 
17.05.18
15:35
(7) Ага, а регистры и справочники в одно хранилище значений в виде структуры, да?
10 MaxS
 
17.05.18
15:38
Делал такое внешней обработкой. Желательно наличие любого обмена, чтобы прицепиться к узлу обмена.
11 hhhh
 
17.05.18
15:38
(9) причем тут справочник? Ты же сам пишешь: их не устраивает количество общих модулей.
12 HomoAlbus
 
17.05.18
15:42
(10) А можешь чуть подробнее?
13 HomoAlbus
 
17.05.18
15:43
(11) Ну видимо был не совсем точен в формулировке, под "кучей общих модулей" я подразумевал кучу объектов, которые были добавлены при внедрении БСП обмена.
14 MaxS
 
17.05.18
15:51
(12) Ищите в интернете, в каталоге мИСты. Сейчас сайт недоступен.
Есть решения для УПП, УТ 10.3, УТ 10.2, УТ 11.1, КА 1.1 и другие.
В обработке переделанная БСП, форматы ED и правила, созданные в КД3.
15 MaxS
 
17.05.18
15:52
16 Cyberhawk
 
17.05.18
15:56
Подтверждлаю: внешней обработкой обмен в формате ЕД можно сделать, отвязавшись от механики БСП (тоже делал такое)
17 HomoAlbus
 
17.05.18
15:57
(16) Не поделитесь?
18 MaxS
 
17.05.18
16:19
(16) Да, можно отвязаться от БСП и КД3 и вручную формировать xml файл. Для 1С 7.7 сгодится, для 8-ки - лишнее усложнение и отказ от автоматизации разработки правил.
19 Cyberhawk
 
17.05.18
16:22
(18) Зачем вручную и зачем "отвязаться от КД3"? Я не про это говорил
20 Cyberhawk
 
17.05.18
16:22
(17) У меня этого не сохранилось
21 MaxS
 
17.05.18
16:35
(19) правила КД3 предназначены для обработки процедурами БСП или совместимыми с БСП. Ладно, не важно. ;)

(0) >Насколько трудоемко вычленить обмен  из подсистемы БСП?
Пробуете внедрить БСП согласно инструкции с ИТС, отлаживаете, заставляете работать обмен. Потом умножаете затраченное время на 10, чтобы тоже самое провернуть в одном модуле. Примерная оценка.
22 drumandbass
 
17.05.18
17:34
самое простое это json и xdto + rest на мой взгляд.
в зависимости от задачи, можно и просто OData