Функция "Сумма прописью"

Пишите ваши предложения здесь.
Ответить
HakimzyanovA
Сообщения: 170
Зарегистрирован: 27 фев 2017, 13:22
Имя: Алексей Хакимзянов
Откуда: Россия

Функция "Сумма прописью"

Сообщение HakimzyanovA »

Возможно ли сделать встроенную функцию, реализующую сабж?
Вот https://habrahabr.ru/post/53210/ пример реализации на php.
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Функция "Сумма прописью"

Сообщение support »

Да, возможно. Добавил в план. Я полагаю что это нужно при экспорте?
HakimzyanovA
Сообщения: 170
Зарегистрирован: 27 фев 2017, 13:22
Имя: Алексей Хакимзянов
Откуда: Россия

Re: Функция "Сумма прописью"

Сообщение HakimzyanovA »

Да, при экспорте.
HakimzyanovA
Сообщения: 170
Зарегистрирован: 27 фев 2017, 13:22
Имя: Алексей Хакимзянов
Откуда: Россия

Re: Функция "Сумма прописью"

Сообщение HakimzyanovA »

решил задачу с помощью хранимой функции для преобразования суммы в сумму прописью отсюда https://note.wdm.net.ua/mysql-summa-pro ... om-yazyke/

и дополнительного поля типа "формула", в которое вставляем вызов функции например так:

fin2str ([206])
isbesedin
Сообщения: 82
Зарегистрирован: 03 мар 2016, 22:42
Имя: Иван
Откуда: Москва
Организация: foxtravel
Контактная информация:

Re: Функция "Сумма прописью"

Сообщение isbesedin »

HakimzyanovA писал(а): 02 фев 2018, 13:12 решил задачу с помощью хранимой функции для преобразования суммы в сумму прописью отсюда https://note.wdm.net.ua/mysql-summa-pro ... om-yazyke/

и дополнительного поля типа "формула", в которое вставляем вызов функции например так:

fin2str ([206])
Алексей, не могли чуть подробнее объяснить для неопытных. Куда мне эту функцию сохранить, чтобы потом в поле типа формула мог ее вызвать?
HakimzyanovA
Сообщения: 170
Зарегистрирован: 27 фев 2017, 13:22
Имя: Алексей Хакимзянов
Откуда: Россия

Re: Функция "Сумма прописью"

Сообщение HakimzyanovA »

Необходимо создать хранимую функцию mysql в БД "руководителя". Можно средствами самого mysql, а можно сторонними средствами, например dbForgeStudio for MySQL:
func.jpg
isbesedin
Сообщения: 82
Зарегистрирован: 03 мар 2016, 22:42
Имя: Иван
Откуда: Москва
Организация: foxtravel
Контактная информация:

Re: Функция "Сумма прописью"

Сообщение isbesedin »

C большим трудом сделал хранимую функцию. Добавил поле типа формула.
При отображении выдает ошибку: Database Error: 1267 - Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_unicode_ci,COERCIBLE) for operation 'concat'

База действительно в кодировке latin1_swedish_ci :?

Что можно в такой ситуации сделать?

Простите, если что, за глупые вопросы, но я в этом совсем не силен...
HakimzyanovA
Сообщения: 170
Зарегистрирован: 27 фев 2017, 13:22
Имя: Алексей Хакимзянов
Откуда: Россия

Re: Функция "Сумма прописью"

Сообщение HakimzyanovA »

Если я правильно понял, то проблема состоит в том, что по умолчанию на сервере MySQL используется представление latin1_swedish_ci, а в БД руководитель - utf8_general_ci. Когда Вы создаете хранимую процедуру, она создается на сервере в БД mysql в таблице proc, а в этой таблице как раз представление latin1_swedish_ci. Из-за этого возникают проблемы при операциях со строками. Попробуйте выставить на сервере настройки для работы с utf8 по-умолчанию, как написано например здесь http://gahcep.github.io/blog/2013/01/05/mysql-utf8/, и после этого удалите и создайте вновь хранимую процедуру.
HakimzyanovA
Сообщения: 170
Зарегистрирован: 27 фев 2017, 13:22
Имя: Алексей Хакимзянов
Откуда: Россия

Re: Функция "Сумма прописью"

Сообщение HakimzyanovA »

Учтите, это повлияет на все другие БД на сервере (если они у Вас есть). Возможно, кто-то подскажет другой способ :)
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Функция "Сумма прописью"

Сообщение support »

Коллеги, реализовал эту возможность для 2.1
viewtopic.php?f=3&t=1233&p=5812#p5812
Ответить