Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Импорт нескольких изображений в поле Набор изображений

Автор webtrendРаздел Настройка системы и модулей

Ответов: 2
Просмотров: 2249
Последний ответ 12 Апреля 2017, 14:17:53
от webtrend
Требуется у свойства "В наличии" и "Нет в наличии" сделать разные цвета.

Автор koroganРаздел Шаблоны TPL

Ответов: 2
Просмотров: 3576
Последний ответ 09 Января 2012, 16:25:59
от korogan
Как сделать ссылками элементы справочника из типа "Выпадающий список"

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 1
Просмотров: 2888
Последний ответ 08 Ноября 2014, 01:11:45
от admin
Импорт данных чужих новостных лент

Автор AksukРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 10239
Последний ответ 07 Декабря 2011, 02:14:37
от Aksuk
Отдельный импорт только остатков при синхронизации с 1С

Автор atachРаздел Настройка системы и модулей

Ответов: 4
Просмотров: 2588
Последний ответ 15 Апреля 2016, 11:36:04
от atach

0 Пользователей и 1 Гость просматривают эту тему.

 Подскажите, есть где нить пример, как импортируется с помощью custom/commerceML2.xls
поля типа symlink ?

сделал уже пробный вариант, чтобы хотя бы одно значение подтянул... но всё как то печально)
вкратце - из 1С я выгружаю guid товара, по нему, с помошью Usel запроса возвращаю page, и пытаюсь её засунуть в поле типа symlink.

<property id="415" name="recommended_items" type="symlink" allow-runtime-add="1">
  <type name="Ссылка на дерево" data-type="symlink" multiple="multiple"/>
<title>Похожие товары</title>
<xsl:variable name="guid" select="recommended_items/ЗначениеРеквизита[Наименование = 'value']/Значение"/>
<value><xsl:value-of select="document(concat('usel://find_page/',$guid))/page" /> </value>

</property>

значение идентификатора 1С я получаю корректное и точное, результат usel запроса в браузере выглядит вот так:

<udata xmlns:xlink="http://www.w3.org/TR/xlink" module="usel" method="find_page" generation-time="0.372685">
<page id="24367" parentId="24324" link="/katalog/stroitel_nye_smesi/suhie_smesi/shtukaturki/rotband_30_kg_shtukaturka_gipsovaya_knauf_40/" is-active="1" object-id="627741" type-id="840" update-time="1459146486" alt-name="rotband_30_kg_shtukaturka_gipsovaya_knauf_40" xlink:href="upage://24367">
<basetype id="56" module="catalog" method="object">Объекты каталога</basetype>
<name>Ротбанд 30 кг штукатурка гипсовая KNAUF/40</name>
</page>
<total>1</total>
</udata>
<!--
 This page generated in 0.382658 secs by XSLT, HTTP SCHEME MODE
-->

А вот что с ним сделать дальше, знаний не хватает, дерево) Но вышеупомянутым способом он переменную не заполняет, а примеров в сети найти не смог (


Отдаваемый 1С кусок выглядит так:
     <Товар>
<recommended_items>
  <ЗначениеРеквизита>
<Наименование>value</Наименование>
<Значение>1908c00f-1851-48e2-a855-4d939759ab86</Значение>
  </ЗначениеРеквизита>
« Последнее редактирование: 29 Июля 2016, 16:16:23 от admin2@pomdv.com »

*

aghigay

  • *****
  • 611
  • +28/-3
  • Просто пытаюсь помочь. Иногда пинком
    • Просмотр профиля
    • umicms.me
Re: Импорт товару свойства типа symlink
« Ответ #1 : 28 Июля 2016, 17:43:13 »
Не вдаваясь сильно в подробности, ваш код не работает. Минимально
<xsl:value-of select="document(concat('usel://find_page/',$guid))/page" />
нужно заменить на
<xsl:value-of select="document(concat('usel://find_page/',$guid))/udata/page" />
Мой блог http://umicms.me

Re: Импорт товару свойства типа symlink
« Ответ #2 : 29 Июля 2016, 01:37:06 »
Это да, я прошляпил как то. Сегодня буду разбираться дальше, пока понимаю, что просто не хватает знаний , метод тыка очень уж времяемок :/

 Так нигде примеров импорта поля данного типа нету?
 

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re: Импорт товару свойства типа symlink
« Ответ #3 : 29 Июля 2016, 12:38:09 »
В старых версиях umidump не позволял импортировать поля типа "Ссылка на дерево". Писал свой обработчик, который слушал события exchangeOnAddElement и exchangeOnUpdateElement, в нем анализировал код 1С и программно устанавливал значения полей "Ссылка на дерево". Если интересно, в личку могу дать кусок кода (в тему не могу выложить, так как код с действующего проекта).
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

Re: Импорт товару свойства типа symlink
« Ответ #4 : 29 Июля 2016, 15:30:37 »
был бы крайне признателен.
 Потому как разобраться сходу, каков же механизм импорта, не получается... А примеров, или комментариев в коде - кот наплакал :/


  Сейчас вот сижу, изучаю :
http://wiki.umisoft.ru/Пример_импорта_поля_типа_symlink_(ссылка_на_дерево)_в_UmiDump2.0

 По ходу дела осознаю свои ошибки (если этот пример вообще рабочий, в чем я не уверен от слова вообще!))) , потому как тот юми-дамп, что выгружаю я при экспорте товара на сайт из 1С, немножко так отличается) списываю на то - что это вообще пример конкретно к симлинку относящийся...

 добавил id свойства, добавил описание типа..
<type name="Ссылка на дерево" data-type="symlink" multiple="multiple"/>

 Насколько понимаю, необходимо дополнительно создавать секцию relations, и заполнять её айдишниками страницы импортируемой, и страниц ссылающихся.... завтра буду пробовать... надеюсь это всё таки хоть в какой-то мере реальный, рабочий пример ))))

<relations>
        <relation page-id="135" field-name="recommend">
            <page id="5"/>
        </relation>
    </relations>

ЗЫ. Внес изменения в первый пост(чтобы актуально было), завтра продолжу попытки именно из xsl заставить всё это работать, авось кому пригодится, а мне практика и бесценные знания)
« Последнее редактирование: 29 Июля 2016, 16:18:50 от admin2@pomdv.com »

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re: Импорт товару свойства типа symlink
« Ответ #5 : 29 Июля 2016, 17:42:16 »
Теоретически, статья http://wiki.umisoft.ru/Пример_импорта_поля_типа_symlink_(ссылка_на_дерево)_в_UmiDump2.0 должна помочь. На выходных поищу код и отправлю в ЛС.
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

Re: Импорт товару свойства типа symlink
« Ответ #6 : 30 Июля 2016, 03:54:37 »
 В одном из ваших предыдущих постов, вы рекомендовали для отладки umidump, выгружать его в файл, вот таким способом:

file_put_contents(CURRENT_WORKING_DIR . '/1c_import_umidump.xml', $xml);

 И вроде бы всё хорошо, но в сохраняемом файле, я не вижу ничего кроме цены, и 1с-guid объекта... При этом совершенно точно корректно импортируются ряд других полей, как-то участие в скидках, вес, особые свойства.
 Так-же в файлике не вижу формируемой секции под symlink поле. . .
 С тех давних пор , что то поменялось ?

 Если опустить заголовок xml файла, то содержимое выглядит вот так, для каждого товара, и ничего кроме этого:

  <page id="fbeca027-bb7d-11e3-bb50-00155d6e7701" update-only="1" is-active="0">
      <properties>
        <group name="cenovye_svojstva" title="Ценовые свойства">
          <property name="price" title="Цена" type="price" is-public="1" allow-runtime-add="1">
            <type data-type="price"/>
            <title>Цена</title>
            <value currency_code="RUR"><![CDATA[330]]></value>
          </property>
        </group>
        <group name="catalog_stores_props" title="Склады">
          <property name="common_quantity" title="Общее количество на складах" type="float" is-public="1" allow-runtime-add="1">
            <type data-type="float"/>
            <title>Общее количество на складах</title>
            <value><![CDATA[0]]></value>
          </property>
        </group>
      </properties>
    </page>

 ни полей h1/title, ничего вообще :/.... Как блин отладкой то заниматься, если не видишь ничего :(

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re: Импорт товару свойства типа symlink
« Ответ #7 : 30 Июля 2016, 08:33:25 »
Без кода сложно сказать. Возможно, поля импортируются при помощи обработчиков (о чем писал выше). Отправьте запрос в скайп e-ioffe - посмотрю, что можно сделать.
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/