Установка Текдок оптимизированого

Материал из MstarProject Manual
Перейти к: навигация, поиск

Оптимизированный Текдок создается из базы оригинального Текдок. Картинки и PDF используются из оригинального Текдок и не изменяется расположение этих файлов.

Для формирования базы используются запросы из файлов:

catalog_create.sql
catalog_insert1.sql
catalog_insert2.sql
catalog_insert3.sql

Эти файлы находятся в архиве: Файл:Catalog opti.zip

В принципе можно все объединить в один файл.

Перед запуском скриптов укажите правильно исходную базу оригинального Текдока, путем замены например _1302 на _1303 во всех файлах.

В файле catalog_create.sql создаются таблицы и формируются данные переводов использую язык и страну, поэтому проконтролируйте эти значения.

Язык указывается в переменной lng_id, значение 16 соответствует русскому языку, 4 - English.

Страна для выбора названия моделей, модификаций и так далее указывается в cou_id, значение 187 соответствует России, а 225 - Украине, 250 - Европа.

На данный момент мы создавали только одну базу при этом в ней не были учтены страны. Поэтому некоторые заказчики жаловались на неправильные названия моделей и модификаций. В оптимизированном текдоке база создается только для одной страны, поэтому если сайт будет использовать модели определенной страны, то надо создавать отдельную базу с данными по этой стране, например opti_1303_ua.

Аналогичная ситуация с языком, если сайт будет мультиязычным, то придется создавать отдельные базы по разным языкам и как-то учитывать это в подключении оптимизированного Текдока, например путем изменения константы DB_OCAT в зависимости от языка сайта. Или оставлять подключение к оригинальному Текдоку вместо оптимизированого(?)


Добавочные запросы:

Добавление индексов для кроссов

ALTER TABLE `cat_alt_crosses_tmp` ADD INDEX ( `Search` , `Kind` ) ;
ALTER TABLE `cat_alt_crosses_tmp` ADD INDEX ( `ID_art` ) ;

Для проекта BUR (extraparts.com.ua):<br>
Первый запрос на 1501 делался 5.5 часов и заняла таблица 142Gb
create table `cat_alt_link_grp_art` SELECT a.id_art,g.ID_grp,a.id_sup_src FROM `cat_alt_link_str_art` a
inner join `cat_alt_link_str_grp` g on g.id_tree = a.id_tree;
ALTER TABLE `opti_1501`.`cat_alt_link_grp_art` ADD INDEX  (`id_art`);
ALTER TABLE `opti_1501`.`cat_alt_link_grp_art` ADD INDEX  (`ID_grp`);

Обновление списка моделей

После обновления текдок, нужно обязательно обновить список моделей запросом:

INSERT IGNORE INTO autoklondayk.cat_model (tof_mod_id,brand,name,month_start,year_start,month_end,year_end,visible)
SELECT om.ID_src tof_mod_id,man.Name brand, om.Name name
,SUBSTRING(om.DateStart, 1, 2) month_start,SUBSTRING(om.DateStart, 4, 4) year_start
,SUBSTRING(om.DateEnd, 1, 2) month_end,SUBSTRING(om.DateEnd, 4, 4) year_end
,1 visible
FROM opti_1302_ua.cat_alt_models om
inner join opti_1302_ua.cat_alt_manufacturer man on om.ID_mfa=man.ID_mfa
left join autoklondayk.cat_model m on m.tof_mod_id=om.ID_src
where m.id is null
order by om.ID_src

Где opti_1302_ua - название новой базы текдок, autoklondayk - название базы проекта, на котором обновляем список моделей