Перейти к содержанию
Официальный форум поддержки Simpla

Транслитерация при импорте прайса из CSV файла


Рекомендуемые сообщения

Добрый день уважаемые гуру Simpla.. Ребят нужна помощь..
Ситуация следующая. 1с 7.7 вытянули из неё прайс лист с товарами, заполнили все поля чпу без знаков препинания и общей лабуды которое есть в прайсе, то есть за место знаков препинания поставлен знак - ,но не имеется возможность убрать всё лишние из названия каталогов и при импорте симпла автоматом заполняет чпу каталога, в названии каталогов имеются знаки препинания с которыми чпу не дружит (например zhestkie-diski-(hdd)) ..
Вопрос в том как сделать настроить Транслитерацию импорта так что бы при встрече знаков (.,:;#)(&*) оно их преобразовывала в -.
В поиске по бродил не чего внятного не нашел...Заранее Благодарю

Ссылка на сообщение
Поделиться на другие сайты

В 1С 7.7 нужно программно прописывать всё при формировании прайса. А лучше отдельной обработкой (под симплу написанной) делать. Но заморочек там много. Нужно в справочнике ТМЦ доп. поля делать и т.д. Какая конфигурация 1С? Очень часто в 1с 7.7 проще поправить что-то в самой базе (создать доп. поле с наименованием, понятным симпле), чем пытаться связать имеющееся с симплой через транслитерацию.

Ссылка на сообщение
Поделиться на другие сайты

Вопрос не в том....1с Выгружает всё чётко,дописали для 1с модуль что бы он преобразовывал всё....Вопрос в том что для товара при импорте из 1 с есть графы для заполнения например (товар, адрес товара, описание товара и так далее) и заливает в симплу он всё верно..А для категории товаров дополнительных полей нет, и заставить 1 с заполнять чпу для категории не получится научить в 1с...В самих категориях встречаются вот такие варианты zhestkie-diski-(hdd)), такой адрес для чпу не приемлем..Вопрос в том как импорт научить преобразовывать вот это zhestkie-diski-(hdd)) в вот это zhestkie-diski--hdd-- , По умолчанию в симпле есть модуль транслитерации

private function translit($text)	{		$ru = explode('-', "А-а-Б-б-В-в-Ґ-ґ-Г-г-Д-д-Е-е-Ё-ё-Є-є-Ж-ж-З-з-И-и-І-і-Ї-ї-Й-й-К-к-Л-л-М-м-Н-н-О-о-П-п-Р-р-С-с-Т-т-У-у-Ф-ф-Х-х-Ц-ц-Ч-ч-Ш-ш-Щ-щ-Ъ-ъ-Ы-ы-Ь-ь-Э-э-Ю-ю-Я-я"); 		$en = explode('-', "A-a-B-b-V-v-G-g-G-g-D-d-E-e-E-e-E-e-ZH-zh-Z-z-I-i-I-i-I-i-J-j-K-k-L-l-M-m-N-n-O-o-P-p-R-r-S-s-T-t-U-u-F-f-H-h-TS-ts-CH-ch-SH-sh-SCH-sch---Y-y---E-e-YU-yu-YA-ya");	 	$res = str_replace($ru, $en, $text);		$res = preg_replace("/[\s]+/ui", '-', $res);	 	$res = strtolower($res);	    return $res;  	}

Что нужно дописать для знаков препинания что бы он их трнаслитировал в тире ? Так я подробнее описал свою проблему?
Ссылка на сообщение
Поделиться на другие сайты

Если я правильно раздупляю то дописать нужно тут

$ru = explode('-', "А-а-Б-б-В-в-Ґ-ґ-Г-г-Д-д-Е-е-Ё-ё-Є-є-Ж-ж-З-з-И-и-І-і-Ї-ї-Й-й-К-к-Л-л-М-м-Н-н-О-о-П-п-Р-р-С-с-Т-т-У-у-Ф-ф-Х-х-Ц-ц-Ч-ч-Ш-ш-Щ-щ-Ъ-ъ-Ы-ы-Ь-ь-Э-э-Ю-ю-Я-я"); 		$en = explode('-', "A-a-B-b-V-v-G-g-G-g-D-d-E-e-E-e-E-e-ZH-zh-Z-z-I-i-I-i-I-i-J-j-K-k-L-l-M-m-N-n-O-o-P-p-R-r-S-s-T-t-U-u-F-f-H-h-TS-ts-CH-ch-SH-sh-SCH-sch---Y-y---E-e-YU-yu-YA-ya");
В конце знаки которые мне мешают и транслит их в тире....Я в том направлении думаю?
Ссылка на сообщение
Поделиться на другие сайты

первая строка где русские буквы через - нужно написать все знаки "...я-(-)-*..." и так далее
во второй строке заменитель - то на что поменять например "_" дефис нельзя.

Но лучше сделать что-то вроде :

$ru = explode('_', "А_а_Б_б_В_в_Ґ_ґ_Г_г_Д_д_Е_е_Ё_ё_Є_є_Ж_ж_З_з_И_и_І_і_Ї_ї_Й_й_К_к_Л_л_М_м_Н_н_О_о_П_п_Р_р_С_с_Т_т_У_у_Ф_ф_Х_х_Ц_ц_Ч_ч_Ш_ш_Щ_щ_Ъ_ъ_Ы_ы_Ь_ь_Э_э_Ю_ю_Я_я_(_)_*_?_&"); 		$en = explode('_', "A_a_B_b_V_v_G_g_G_g_D_d_E_e_E_e_E_e_ZH_zh_Z_z_I_i_I_i_I_i_J_j_K_k_L_l_M_m_N_n_O_o_P_p_R_r_S_s_T_t_U_u_F_f_H_h_TS_ts_CH_ch_SH_sh_SCH_sch___Y_y___E_e_YU_yu_YA_ya_-_-_-_-_");
И тогда у вас будет заменять на дефисы как вы хотите. Все остальные символы по аналогии дописываются
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...