VsMoroz / tt-system-data

Automatically exported from code.google.com/p/tt-system-data
0 stars 0 forks source link

Создать новую функцию для БД GetNameOfClient_em #110

Closed VsMoroz closed 7 years ago

VsMoroz commented 8 years ago

Прошу создать GetNameOfClient_em на основе кода функции GetNameOfClient Основное ее предназначение формировать строку о услуге для email сообщений. В нее мы добавим третий параметр, язык, сейчас он будет или Bs - тоесть основной или En - английский. В функции мы будем формировать строку без приставок ОК, СК в начале строки.

Будем вместо сокращенной информации о услуге (ПД, ТЛФ, Интертер) которые берутся из tab_katal_sk_type.name будем брать полное название из tab_katal_sk_type.name_bs или если третим параметров вызова стоит английский язык то значения будем брать из tab_katal_sk_type.name_en

В функции для обьектов "Данные старого формата", мы будем просто формировать пустую строку

В функции мы будем скорость пересчитывать в кбит/с мбит/с Гбит/с и показывать подпись скорости не сокращенно как сейчас а кбит/с мбит/с Гбит/с

В функции в Bs языке мы будем брать названия городов не с русского tab_town.town а с украинского tab_town.town_uа в En языке будем выполнять транлитерацию с украинского tab_town.town_uа

VsMoroz commented 8 years ago

На первом этапе будем использовать GetNameOfClient_em для писем с профилем BASE_EN

VsMoroz commented 8 years ago

Признак языка я решил не добавлять, пусть функция сама определяет язык по профилю клиента и транслитерирует информацию. Функция в коммите выше (там какая то проблема с русскими буквами, ну решим) функция уже в БД.

GetNameOfClient_em(tab_on,inv_num_kli)

Прошу переделать серверную часть: 1.Во всех профилях email оповещения формировать строку о услуге с помощью этой GetNameOfClient_em функции. 2.Прошу убрать все вот те обрезания первых символов (мы обрезали ОК, СК в начале строки) я их убрал в самой функции

  1. В профиле BASE_EN прошу отключить транслитерацию силами серверного приложения, транслитерация выполняется в функция
panches commented 8 years ago

переделал, v1.9.25

VsMoroz commented 8 years ago

Есть в делфях какие то наработки по транлитерации с рус на eng и с укр на eng ? Мне существующая функция транслитерации не очень нравится, там есть проблема с тем что текущая настройка mysql не чувствительна к регистру и получается не очень красивая транслитерация (подробности устно сообщу)

panches commented 8 years ago

С русским выбор широкий, а с украинским нужно будет пошаманить.

panches commented 8 years ago

Реализовал транслитерацию укр - анг. Использовал в работе таблицу из http://zakon4.rada.gov.ua/laws/show/55-2010-%D0%BF. Файл выложил в папку miscellanea.

VsMoroz commented 8 years ago

Мда, гугл транслитерирует по своей системе BGN/PCGN 1965 если мы будем транслитерировать по системе КМУ результат не совпадет с гугловым, но полностью совпадет с официальной. Дилема !

VsMoroz commented 8 years ago

Работает хорошо, прошу для профиля BASE_EN проводить транслитерацию силами серверной части приложения для всей строчки которую выдает GetNameOfClient_em

102

panches commented 8 years ago

Транслитерация происходит в функции, надо менять функцию.

VsMoroz commented 8 years ago

Ничего, я отключу транслитерацию в функции

VsMoroz commented 8 years ago

А еще моя функция выдает пользователям источник сервиса - я должен модернизировать ее что бы не выдавал :)

VsMoroz commented 8 years ago

Саня, я подправил функцию отключил транслитерацию, жду что для профиля BASE_EN ты выполнишь транслитерацию всего что возвращает функция на уровне серверного приложения.

panches commented 8 years ago

выполнил, v1.9.25

VsMoroz commented 8 years ago

Нормально работает ! Пришли мне еще раз приложение которое переводило силами яндекса с рус на английский, переделай его что бы оно переводило с рус на украинский. Есть еще одна идейка

panches commented 8 years ago

Файл выложил (почему так долго? с кодировкой боролся)

VsMoroz commented 8 years ago

Приемлемо переводит, для адресов подойдет.

Давай сделаем так, добавим в office_kli поле street_ua в которое будем переводить текст из street автоматически с русского на украинский если поле street_ua пустое.

ALTER TABLE office_kli ADD street_ua VARCHAR( 200 ) NOT NULL DEFAULT '' COMMENT 'улица укр' AFTER street

Я правильно понимаю что из текущей версии сервера мы это сделать не сможем версия делфи старая?

panches commented 8 years ago

Думаю, что ты прав, Delphi 7 unicod не понимает. Может с английским и прокатит, а вот с укр/рус кодировками будет шлакбаум. Я думаю, что сервер нужно поднять на новой версии делфи.

VsMoroz commented 8 years ago

Сделаем утилиту для разового перевод адреса, а потом когда запустим вторую версию сервера, перенесем в нее модуль перевода.

  1. Добавь поле office_kli.street_ua
  2. Программа при запуске выполняет запрос: SELECT id_kli , street FROM office_kli WHERE street_ua LIKE '' LIMIT 1
  3. Если запрос вернул не null а ответ, взять значение из поля street перевести с рус на укр и результат записать в street_ua этой же строки

Повторять до тех пор пока запрос не вернет null

panches commented 8 years ago

Выложил в miscellanea файл translOfficeStreet. Интерфейс интелектуально понятный, поэкперементируй с количеством записей (при большом количестве какбы подвисает, но он работает).

VsMoroz commented 8 years ago

Модернизируй clientDB что бы при нажатии кнопки ОК в форме редактирования Офиса клиента затиралось значение в street_ua (SET street_ua = '')

И в спутниковом интерфейсе при редактировании такое же действие при редактировании что бы происходило с street_ua

VsMoroz commented 8 years ago

Глянь что выдает вот этот запрос:

SELECT * FROM office_kli WHERE street_ua LIKE '%Translation code=%'

Подправь что бы приложение пропускало строки у которых пустое поле street, например модернизировав запрос до такого

SELECT id_kli , street FROM office_kli WHERE street_ua LIKE '' AND street NOT LIKE '' LIMIT 1

panches commented 8 years ago

Запрос подправил, файл выложил в miscellanea

panches commented 8 years ago

Добавил обнуление street_ua при редактировании ОК. v5.46.41.

VsMoroz commented 8 years ago

Спасибо. Продолжи работать над версией сервера 2.x.x, а то новые ОК добавляются каждый день и перевод нужно поставить на поток. Сегодня ночью добавилось 14 ОК

panches commented 8 years ago

Версию 2.0.0 выложил.  Сделал ревизию, подправил согласно v1.9.25

VsMoroz commented 7 years ago

перенесено во внутреннюю систему