Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Добавление данных из объекта в форму "Заказ в 1 клик"

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

Ответов: 4
Просмотров: 4001
Последний ответ 11 Ноября 2014, 11:14:45
от Axiomateria
!!!Тема будет зарыта смотрите оригинал!!!Разработка новых типов данных

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

Ответов: 1
Просмотров: 2407
Последний ответ 29 Сентября 2012, 00:55:07
от admin
Ссылка на дерево - вывод данных из другого объекта каталога в виде превью

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

Ответов: 16
Просмотров: 11295
Последний ответ 07 Июля 2013, 15:14:17
от Axiomateria
Вывод данных страниц разного типа данны в порядке создания

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

Ответов: 5
Просмотров: 2091
Последний ответ 09 Декабря 2016, 12:55:59
от Sumrakrnd
Рекурсивное удаление поля в типе данных объект каталога

Автор goodprofyРаздел Custom макросы

Ответов: 3
Просмотров: 2990
Последний ответ 12 Марта 2014, 17:14:59
от goodprofy

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

*

KTI

  • **
  • 72
  • +1/-0
    • Просмотр профиля
Импорт данных в UMI
« : 17 Октября 2012, 12:55:02 »
В вики есть статья про добавление нескольких изображений товаров, там такой шаблон (добавляется в кастом commerceML2.xsl):
	<xsl:template match="Товар/Картинка">
<xsl:if test="string-length(.)">
<property name="photo{position()}" title="Картинка{position()}" type="img_file" visible="visible" allow-runtime-add="1">
<type data-type="img_file"/>
<title>Картинка</title>
<value>./images/cms/data/<xsl:value-of select="."/></value>
</property>
</xsl:if>
</xsl:template>

он создает новые поля (если их не было): photo2, photo3 и т.д.:
.....
<property id="450" name="photo2" type="img_file">
<property id="450" name="photo3" type="img_file">
.....

Почему когда я вставляю свой шаблон:
	<xsl:template match="Товар/Видео">
<xsl:if test="string-length(.)">
<property name="video" type="string" visible="visible" allow-runtime-add="1">
<title>Видео</title>
<value><xsl:value-of select="."/></value>
</property>
</xsl:if>
</xsl:template>
у меня новое поле (video) не создается (само)?
В xml файле это поле есть, шаблон точно срабатывает
« Последнее редактирование: 17 Октября 2012, 12:56:53 от KTI »

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Импорт данных в UMI
« Ответ #1 : 17 Октября 2012, 14:09:06 »
Цитировать
В xml файле это поле есть
, а можно глянуть в этот xml файл?

Цитировать
шаблон точно срабатывает
то есть мы точно знаем что блок
<xsl:template match="Товар/Видео">
<xsl:if test="string-length(.)">
<property name="video" type="string" visible="visible" allow-runtime-add="1">
<title>Видео</title>
<value><xsl:value-of select="."/></value>
</property>
</xsl:if>
</xsl:template>
выполняется?

*

KTI

  • **
  • 72
  • +1/-0
    • Просмотр профиля
Re:Импорт данных в UMI
« Ответ #2 : 18 Октября 2012, 10:21:54 »
XML: (урезанный)
<Товары>
<Товар>
  <Ид>15545916-b8a9-4054-b943-d76dc2c6e14b</Ид>
  <Наименование>Холодильник</Наименование>
  <БазоваяЕдиница Код="796" НаименованиеПолное="Штука" МеждународноеСокращение="PCE">шт</БазоваяЕдиница>
  <Картинка>import_files/15/15545916-b8a9-4054-b943-d76dc2c6e14b_2.jpg</Картинка>
  <Видео>http://www.youtube.com/watch?v=IvLUcOAAAAAAAYAA</Видео>
</Товар>

шаблон <xsl:template match="Товар/Видео"> точно выполняется


*

KTI

  • **
  • 72
  • +1/-0
    • Просмотр профиля
Re:Импорт данных в UMI
« Ответ #3 : 18 Октября 2012, 10:25:21 »
реквизит allow-runtime-add="1" в шаблоне есть
для картинок создаются поля, а для поля видео (тип строка), не хочет

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Импорт данных в UMI
« Ответ #4 : 18 Октября 2012, 16:50:57 »
меня больше интересовал кусочек с созданием типа данных, когда создается тип данных он создает не только страницы товаров с соответствующими свойствами, но и типы данных к которому относиться данная страница, вот там создается поле для video? то есть меня интересует проблема на шаге преобразования 1с xml в umidump xml или на этапе превращения umidump xml в объекты, страницы и прочие сущности в самой системе

*

KTI

  • **
  • 72
  • +1/-0
    • Просмотр профиля
Re:Импорт данных в UMI
« Ответ #5 : 19 Октября 2012, 06:05:29 »
может этот кусок:
<xsl:template match="Группы/Группа" mode="types">
<type id="{Ид}" title='1C: {Наименование}' parent-id="root-catalog-object-type">
<xsl:if test="name(../../.) = 'Группа'">
<xsl:attribute name="parent-id"><xsl:value-of select="../../Ид" /></xsl:attribute>
</xsl:if>
<base module="catalog" method="object">Объект каталога</base>

<fieldgroups>
<!-- product fields -->
<group name="product" title="1C: Общие свойства" visible="visible">
<field name="photo" title="Картинка" visible="visible">
<type name="Изображение" data-type="img_file"/>
</field>
<field name="video" title="Видео" visible="visible">
<type name="Видео" data-type="string"/>
</field>
<field name="bar_code" title="Штрих-код" visible="visible">
<type name="Строка" data-type="string"/>
</field>
<field name="weight" title="Вес" visible="visible">
<type name="Число с точкой" data-type="float"/>
</field>
</group>
</fieldgroups>
</type>

<xsl:apply-templates select="Группы" mode="types" />

</xsl:template>

В нем для photo создается отдельное поле
<field name="photo" title="Картинка" visible="visible">
<type name="Изображение" data-type="img_file"/>
</field>
но, если картинок несколько, то автоматически создаются поля photo1, photo2
 и т.д. Причем только в тех разделах каталога, где они есть у товара. Хотя предварительно они не определяются.
Я по аналогии сделал для поля видео:
<field name="video" title="Видео" visible="visible">
<type name="Видео" data-type="string"/>
</field>
Шаблон заработал и поле появилось, но.. для всего каталога! т.е. для всех товаров, а мне бы хотелось только для той категории в которой у товаров есть  поле видео, т.е. как у photo2, 3
Надеюсь понятно написал   :-[

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
Re:Импорт данных в UMI
« Ответ #6 : 19 Ноября 2012, 15:17:05 »
Подскажите, а как импортировать данные из 1С в UMI? Мне дали файл import.xml с дынными из 1С... и я не знаю что с ним делать и как и куда загружать.. или где почитать можно?