Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
 Аватар для kikaa
0 / 0 / 0
Регистрация: 24.04.2017
Сообщений: 158

Вычисления в компоненте (RzSpinner)

10.08.2019, 17:22. Показов 2072. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как умножить два числа RzDbedit(деньги) и RzSpinner(количество), а итог вывести в RzLabel, прописал так:
Delphi
1
Form6.RzLabel7.Caption:=IntToStr(StrToInt(Form6.RzDbedit1.Text)*StrToInt(form6.RzSpinner1.Value));
Выдает ошибку: There is no overloaded version of 'StrToInt' that can be called with these arguments.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.08.2019, 17:22
Ответы с готовыми решениями:

Посоветуйте пожалуйста! Как мне в компоненте ComboBox2 Организовать смену шрифтов в компоненте Memo1?
Всем заранее спасибо!!!!!!! void __fastcall TForm1::ComboBox2Change(TObject *Sender) { }

Offset в компоненте
как сделать отступ в компоненте, т.е. что б, допустим, не с 1го выводилось, а с 10го, к примеру? $APPLICATION->IncludeComponent( ...

Информация в компоненте
Привет всем! Дорогие форумчане, у меня к вам есть вопрос. Скажите пожалуйста, есть ли какое то свойство у компонентов, где можно...

15
561 / 230 / 88
Регистрация: 11.07.2015
Сообщений: 817
11.08.2019, 00:00
RzSpinner.Value это число, а не string.
Delphi
1
Form6.RzLabel7.Caption:=IntToStr(StrToInt(Form6.RzDbedit1.Text)*form6.RzSpinner1.Value);
0
 Аватар для kikaa
0 / 0 / 0
Регистрация: 24.04.2017
Сообщений: 158
11.08.2019, 00:06  [ТС]
UR1004SWL, уже исправил, но всё равно ошибка , т.к RzDbedit(деньги), пробовал напрямую обращается так Form6.RzLabel7.Caption:=dm.CountSQL.Fiel dByName('selling_price').AsCurrency * form6.RzSpinner1.Value - не получилось
Миниатюры
Вычисления в компоненте (RzSpinner)  
0
561 / 230 / 88
Регистрация: 11.07.2015
Сообщений: 817
11.08.2019, 00:37
Ну а как Вы хотели. строку '25,00 рублей' умножить на что-то. Сначала преобразуйте '25,00 рублей' в число 25, тогда и умножайте.
0
 Аватар для kikaa
0 / 0 / 0
Регистрация: 24.04.2017
Сообщений: 158
11.08.2019, 09:48  [ТС]
UR1004SWL, подскажите пожалуйста как это сделать
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
11.08.2019, 10:07
Сделать это не очень сложно, но муторно: перенести значение в строковую переменную, отсечь не нужные символы, преобразовать в число.

Чтобы не попадаться на такую проблему в будущем (а, может, и в настоящем) надо знать, что никто из разработчиков баз данных не хранит данные в денежном типе. И не только из-за того что приходится извращаться с этими данными при арифметических расчетах, но так же из-за того, что пользователя раздражают лишние символы в ячейках таблиц, где должны отображаться денежные значения. В этом случае проще указать в заголовке столбца символ валюты, а с данными можно работать как с обычными числами.

P.S. Если бы операции с базой велись через SQL запросы, то такой проблемы не возникло, даже при том что данные денежного типа.
0
 Аватар для kikaa
0 / 0 / 0
Регистрация: 24.04.2017
Сообщений: 158
11.08.2019, 10:25  [ТС]
Скандербег, Спасибо, а возможно добавить символ валюты(.Руб) к полю в DBGrid чтобы после числа был знак валюты - dm.CountSQL.FieldByName('purchase_price' ) ?
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
11.08.2019, 10:43
Зачем усложнять работу с данным из базы?
Не так сложно разместить TLabel справа от компонента, в котором отображается сумма и в нем написать нужные символы.
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,672
Записей в блоге: 21
11.08.2019, 20:52
если мне память не изменяет, то для денежного типа поля грид сам добавит руб.
а еще есть свойство DisplayText у поля
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
11.08.2019, 22:45
Цитата Сообщение от krapotkin Посмотреть сообщение
если мне память не изменяет
Изменяет. И дело в том, что никакого грида нет.
0
 Аватар для kikaa
0 / 0 / 0
Регистрация: 24.04.2017
Сообщений: 158
12.08.2019, 01:32  [ТС]
krapotkin, грид то ставит символ валюты , но проблема в том , что при работе с этими данными нужно перевести денежный формат в числовой (25рублей в просто число 25) , в этом и вопрос..
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
12.08.2019, 07:10
Цитата Сообщение от kikaa Посмотреть сообщение
грид то ставит символ валюты
Заблуждение.
Грид ничего не ставит, он лишь отображает то что присылает СУБД. Т.е. если данные денежного типа, то будут отображаться "рубли" или любая другая валюта, которая указана при создании поля в БД, если числового типа, то никакие доп. символы отображаться не будут (если, конечно, не подставлять их в приложении уже после получения данных на клиенте).

kikaa, и что, до сих пор нет результата, ошибку победить не удалось? И поменять тип тоже не желаем?
Если так, то надо выложить здесь свой проект и файл базы. Тогда можно помочь конкретно.
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,672
Записей в блоге: 21
12.08.2019, 09:14
Скандербег, не соглашусь, СУБД не шлёт "руб" , это подставляется в TCurrencyField
kikaa,
о каких проблемах речь, не пойму
само значение поля 12.34 так и останется 12.34 а не 12.34 руб
0
Эксперт Pascal/Delphi
 Аватар для xxbesoxx
1135 / 616 / 129
Регистрация: 13.02.2009
Сообщений: 3,602
12.08.2019, 17:05
Лучший ответ Сообщение было отмечено kikaa как решение

Решение

Цитата Сообщение от kikaa Посмотреть сообщение
а возможно добавить символ валюты(.Руб) к полю в DBGrid чтобы после числа был знак валюты - dm.CountSQL.FieldByName('purchase_price' ) ?
ADOQuery -> DisplayFormat
Миниатюры
Вычисления в компоненте (RzSpinner)   Вычисления в компоненте (RzSpinner)   Вычисления в компоненте (RzSpinner)  

Вычисления в компоненте (RzSpinner)  
2
561 / 230 / 88
Регистрация: 11.07.2015
Сообщений: 817
12.08.2019, 18:38
Цитата Сообщение от xxbesoxx Посмотреть сообщение
ADOQuery -> DisplayFormat
Аналогично и в ADOTable.
0
35 / 29 / 15
Регистрация: 20.11.2010
Сообщений: 481
14.08.2019, 06:52
Цитата Сообщение от xxbesoxx Посмотреть сообщение
ADOQuery -> DisplayFormat
Только хотел об этом написать, но благо решил читать до конца).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.08.2019, 06:52
Помогаю со студенческими работами здесь

Помощь в компоненте
Доброго времени суток! Помогите пожалуйста поправить небольшой скрипт в компоненте движка. Есть компонент суть которого просто...

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

Прокрутка на компоненте
Всем привет) Интересует такой вопрос.. Я динамически добавляю кнопки на форму таким образом что они идут у меня вниз (столбиком). Когда...

Щелчок по компоненте
Подскажите пожалуйста как сделать! Мне надо, чтобы я нажала на стрелку (Label), а там вывелось сообщение о том, что я не ввела данные в...

Marks в компоненте DBChart
Здравствуйте, мне нужно, что бы в Marks отображались значения поля из БД. Можно ли это как-нибудь сделать? Добавлено через 4 часа 27...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru