Имя: Пароль:
1C
1С v8
Обмен данными: поиск в ПКО по внутреннему ИД
0 программистище
 
17.04.14
10:53
Возник маленький вопросик:

Делаю правила конвертации в конфиге КД
В ПКО убираю галочку поиск по внутреннему ИД
обмен производится типовыми средствами УТ-УТ 11.1 (создал план, загрузил правила)
делаю обмен, а в файле обмена:

<Валюта>401dd130-4b79-11e3-aeb0-00012e2fd663</Валюта>
(валюты не синхронизировались, потому у них разные ИД в источнике и приемнике)
т.е. обмен идет по ИД, для планов обмена правила не работают? Или я где-то не поставил галочку?
1 Godofsin
 
17.04.14
10:54
"В ПКО убираю галочку поиск по внутреннему ИД "
Ну а поля поиска какие?
2 программистище
 
17.04.14
10:55
у валюты только Код
3 программистище
 
17.04.14
10:56
по идее он должен был создать новую валюту с таким ИД? если не нашел
4 программистище
 
17.04.14
10:58
а вместо того он подставляет объект не найден
5 Chikko
 
17.04.14
11:02
(4) Валюты, видимо, выгружаются через другое пвд-пко по ссылкам? Проверь чтобы не было "переносить только ссылку".
6 программистище
 
17.04.14
11:05
(5) галки переносить только ссылку не стоит
не только валюты, все объекты выгружаются так:


<Валюта>401dd130-4b79-11e3-aeb0-00012e2fd663</Валюта><ВидЦены>e7d14bec-f0ac-11e0-a290-001fd0db41ea</ВидЦены><КассаККМ>2dddea7d-320e-11e1-b6c3-001517b9f1e1</КассаККМ><Кассир>1fb6a472-4b79-11e3-aeb0-00012e2fd663</Кассир><Комментарий>123</Комментарий><НалогообложениеНДС>ПродажаОблагаетсяНДС</НалогообложениеНДС><НомерЧекаККМ>1</НомерЧекаККМ><Организация>630af379-cfa6-11e0-b01f-0024be5c827e</Организация><ПолученоНаличными>0</ПолученоНаличными><СкидкиРассчитаны>true</СкидкиРассчитаны><Склад>6484a756-1cb0-11e1-93d5-00261858a6c5</Склад><Статус>Пробит</Статус><СуммаДокумента>0</СуммаДокумента><ФормаОплаты>ПлатежнаяКарта</ФормаОплаты><ЦенаВключаетНДС>true</ЦенаВключаетНДС><КассоваяСмена>0a077e3b-c53e-11e3-bd78-005056c00008</КассоваяСмена><ОтложенДо>0001-01-01T00:00:00</ОтложенДо><_ВариантПродажи/><КартаЛояльности>4cec5d96-51f3-11e3-840b-0025902c4fba</КартаЛояльности><Партнер>4cec5d91-51f3-11e3-840b-0025902c4fba</Партнер>
7 программистище
 
17.04.14
11:07
сразу заметка: база не распределенная
8 Chikko
 
17.04.14
11:10
(6) Это пример из выгрузки? Чего-то не хватает вроде. Для валюты стоит галка "продолжать поиск по полям поиска" (настройки пко)?
9 программистище
 
17.04.14
11:15
(8) нет не стоит эта галка
10 программистище
 
17.04.14
11:15
привожу полный файл выгрузки:

<?xml version="1.0" encoding="UTF-8"?>
<v8msg:Message xmlns:v8msg="http://v8.1c.ru/messages">;
    <v8msg:Header>
        <v8msg:ExchangePlan>ПланОбменаРозничныеМагазины</v8msg:ExchangePlan>
        <v8msg:To>0000</v8msg:To>
        <v8msg:From>М001</v8msg:From>
        <v8msg:MessageNo>24</v8msg:MessageNo>
        <v8msg:ReceivedNo>24</v8msg:ReceivedNo>
    </v8msg:Header>
    <v8msg:Body>
        <DocumentObject.ЧекККМ>
            <Ref>0a077e45-c53e-11e3-bd78-005056c00008</Ref>
            <DeletionMark>false</DeletionMark>
            <Date>2014-04-16T12:50:16</Date>
            <Number>ОФ21-000010</Number>
            <Posted>true</Posted>
            <Архивный>false</Архивный>
            <Валюта>401dd130-4b79-11e3-aeb0-00012e2fd663</Валюта>
            <ВидЦены>e7d14bec-f0ac-11e0-a290-001fd0db41ea</ВидЦены>
            <КассаККМ>2dddea7d-320e-11e1-b6c3-001517b9f1e1</КассаККМ>
            <Кассир>1fb6a472-4b79-11e3-aeb0-00012e2fd663</Кассир>
            <Комментарий>123</Комментарий>
            <НалогообложениеНДС>ПродажаОблагаетсяНДС</НалогообложениеНДС>
            <НомерЧекаККМ>1</НомерЧекаККМ>
            <Организация>630af379-cfa6-11e0-b01f-0024be5c827e</Организация>
            <ПолученоНаличными>0</ПолученоНаличными>
            <СкидкиРассчитаны>true</СкидкиРассчитаны>
            <Склад>6484a756-1cb0-11e1-93d5-00261858a6c5</Склад>
            <Статус>Пробит</Статус>
            <СуммаДокумента>0</СуммаДокумента>
            <ФормаОплаты>ПлатежнаяКарта</ФормаОплаты>
            <ЦенаВключаетНДС>true</ЦенаВключаетНДС>
            <КассоваяСмена>0a077e3b-c53e-11e3-bd78-005056c00008</КассоваяСмена>
            <ОтложенДо>0001-01-01T00:00:00</ОтложенДо>
            <_ВариантПродажи/>
            <КартаЛояльности>4cec5d96-51f3-11e3-840b-0025902c4fba</КартаЛояльности>
            <Партнер>4cec5d91-51f3-11e3-840b-0025902c4fba</Партнер>
            <_ОплаченоСертификатом>0</_ОплаченоСертификатом>
            <_ЗаказНеНайден>false</_ЗаказНеНайден>
            <Контрагент>00000000-0000-0000-0000-000000000000</Контрагент>
            <Товары/>
            <ОплатаПлатежнымиКартами/>
            <СкидкиНаценки/>
            <Серии/>
            <_ОплатаБезТовара>
                <Row>
                    <Сумма>100</Сумма>
                    <Заказ>0a077e44-c53e-11e3-bd78-005056c00008</Заказ>
                </Row>
            </_ОплатаБезТовара>
        </DocumentObject.ЧекККМ>
    </v8msg:Body>
</v8msg:Message>
11 программистище
 
17.04.14
11:19
поставил галку выгрузил, файл идентичен
12 Chikko
 
17.04.14
11:25
Скинь правила. на почту, например.
13 программистище
 
17.04.14
11:32
отправил
14 программистище
 
17.04.14
12:04
складывается впечатление, что в обмен попадают только те объекты, которые зарегестрированны как измененные
остальные выгружаются по ссылкам
15 Йохохо
 
17.04.14
12:12
16 Vladuha
 
17.04.14
12:13
(10) а выгружаешь-то изменения чем? своей обработкой?
17 программистище
 
17.04.14
12:13
(16) выгружаю типовым механизмом планов обмена УТ 11.1
18 программистище
 
17.04.14
12:14
(15) спасибо, сейчас гляну
19 Vladuha
 
17.04.14
12:15
(17) этим что ли ПланыОбмена.СоздатьЗаписьСообщения()? :)
20 программистище
 
17.04.14
12:24
(19) общей командой "ВыполнитьОбменДанными"
что в ней я не смотрел
21 программистище
 
17.04.14
12:25
(15) получается, что мое предположение верно
если в базе считается что объект присутствует в обеих базах то выгрузка идет по ссылке
а как же заставить искать не по внутреннему ИД а по полям посика
22 Vladuha
 
17.04.14
12:26
(20) а правила обмена ты куда загружаешь?
23 Vladuha
 
17.04.14
12:27
я к тому, что у тебя файл сообщения обмена не имеет ничего общего по структуре к тому, что должно быть при обмене по правилам конвертации
24 Chikko
 
17.04.14
12:30
(21) С правилами ок, но не похожи на типовые, поиск при обмене по уид, тут только поля поиска. Насколько я помню - при настройке обмена между базами выполняется что-то вроде "первого запуска", который синхронизирует справочники (в том числе), таким образом синхронизируются и уид. Было такое?
25 программистище
 
17.04.14
12:33
(24) настройки и обмен делал вручную
остатки и доки выгружал особым образом
номенклатура и партнеры, склады, организации синхронизировались
26 программистище
 
17.04.14
12:34
(23) общей командой "ОткрытьПравилаКонвертацииОбъектов" и загрузить
27 программистище
 
17.04.14
12:36
(23) может быть и правда правила не используются при выгрузке
28 программистище
 
17.04.14
12:37
загруженные правила регистрации проверял отладчиком, точно работают
конвертацию не проверял
29 Vladuha
 
17.04.14
12:38
(26) еще раз, какой обработкой ты пользуешься для выгрузки? откуда ты вызываешь общие команды? ты тип параметра команды задал? Прежде чем создавать в УТ11 новый план обмена документацию по БСП читал?
30 Vladuha
 
17.04.14
12:41
запусти обработку УниверсальныйОбменДаннымиXML
31 программистище
 
17.04.14
12:41
(29) типовая обработка УТ 11.1
"ВыполнениеОбменаДанными"
к плану обмена подключал только общую команду "ВыполнитьОбмен"
32 Vladuha
 
17.04.14
12:44
(31) правила обмена ты куда загружал? из тебя тисками надо все вытаскивать?
33 программистище
 
17.04.14
12:48
(32) см (26), типовой обработкой встроенной в ут 11.1
правила грузятся в регистр "ПравилаДляОбменаДанными"
34 программистище
 
17.04.14
12:49
проверил
понаставив ошибок в правила
ни одна ошибка не возникла
т.е. получается при выгрузке он правила не использует
буду дальше смотреть как подключаются правила
35 Vladuha
 
17.04.14
12:56
Ты в плане обмена не создавал макет "ПравилаОбмена", поэтому у тебя выполняется обмен с использованием платформенной сериализации. Я тебе уже написал, что у тебя формат сообщения обмена не тот, который при обмене по правилам конвертации
36 программистище
 
17.04.14
13:00
(35) создан и там лежат нужные мне правила
37 Vladuha
 
17.04.14
13:07
Поищи в общем модуле ОбменДаннымиСервер "ОбменПоПравиламКонвертацииОбъектов", есть два места с присвоением, поставь там точки останова и посмотри что им присваивается, в твоем случае вроде как Ложь
38 программистище
 
17.04.14
13:16
все я похоже нашел свою ошибку:
при обновлении конфы с 11.1.1 на 11.1.2 я макеты переименовал, чтобы обработка обновления не проверяла правила загруженные в них, а обратно переименовать забыл
извиняюсь, спасибо всем за помощь

еще раз сильно извиняюсь

все заработало
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший