Класс umiImportRelations — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
Строка 3: Строка 3:
 
Например, из 1С к нам приходит <товар> с <ид> равным "42907251-d287-11de-9943-000fea605ee9", UMI.CMS создает <page> с идентификатором id = "3242", и записывает в таблицу cms3_import_relations следующую запись:
 
Например, из 1С к нам приходит <товар> с <ид> равным "42907251-d287-11de-9943-000fea605ee9", UMI.CMS создает <page> с идентификатором id = "3242", и записывает в таблицу cms3_import_relations следующую запись:
  
source_id old_id                               new_id
+
<source lang="html4strict">
 
+
<table>
123       42907251-d287-11de-9943-000fea605ee9 3242
+
<tr>
 +
<td>source_id</td><td>old_id</td><td>new_id</td>
 +
</tr>
 +
<tr>
 +
<td>123</td><td>42907251-d287-11de-9943-000fea605ee9</td><td>3242</td>
 +
</tr>
 +
</table>
 +
</source>
  
 
Когда в следующий раз из 1С опять придет <товар> с <ид> равным "42907251-d287-11de-9943-000fea605ee9", то заново его создавать UMI.CMS не будет, система просто обновит страницу с id = "3242".
 
Когда в следующий раз из 1С опять придет <товар> с <ид> равным "42907251-d287-11de-9943-000fea605ee9", то заново его создавать UMI.CMS не будет, система просто обновит страницу с id = "3242".

Версия 14:02, 7 апреля 2014

Описание класса: Класс служит для работы со связями между импортируемыми сущностями и системными объектами.

Например, из 1С к нам приходит <товар> с <ид> равным "42907251-d287-11de-9943-000fea605ee9", UMI.CMS создает <page> с идентификатором id = "3242", и записывает в таблицу cms3_import_relations следующую запись:

<table>
<tr>
<td>source_id</td><td>old_id</td><td>new_id</td>
</tr>
<tr>
<td>123</td><td>42907251-d287-11de-9943-000fea605ee9</td><td>3242</td>
</tr>
</table>

Когда в следующий раз из 1С опять придет <товар> с <ид> равным "42907251-d287-11de-9943-000fea605ee9", то заново его создавать UMI.CMS не будет, система просто обновит страницу с id = "3242".

Класс является синглтоном, экземпляр класса можно получить через статический метод getInstance(). Исходный код класса находится в файле /classes/system/utils/importRelations/umiImportRelations.php.

Описание методов класса umiImportRelations:

  • getInstance() - Получить экземпляр коллекции

    Параметры:

    Результат: экземпляр класса redirects


  • getSourceId() - Получить идентификатор ресурса (Каждому сценарию импорт в таблице cms3_import_sources соответствует свой ресурс)

    Параметры:
    String $source_name: Имя ресурса, например, commerceML2 или имя csv файла, или идентификатор ресурса, указанный в сценарии импорта.

    Результат: массив идентификаторов