![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как подменить любой разделитель на точку [D7, XP]
Сергей © (2013-03-22 16:47:00)Всем привет.
Работаю с дата сетом. пытаюсь занести значение.
F:TField
F.AsVariant:=nv;
В региональних настройках стоит разделитель "," а в базе всегда ".", поэтому появляется ошибка приведения типов. Можно ли как то настроить датасет на точку, без изменения региональных настроек?
Podgoretsky (2013-03-23 20:48:00) [1]И именно ее надо использовать, многопоточна.
Jeer (2013-03-23 17:00:00) [2]Понятно..
Дружба с TFormatSettings так и не освоена.
O'ShinW (2013-03-23 00:02:00) [3]как-то присылался нам текстовый файл, который делали, похоже, ногами,
и каждый раз числа были по-разному, то . то ,
У нас тоже, то с одного компа обрабатывают, то с другого (то . то ,)
Сделал аля
for CH in [зпт, точка ]
sVal := StringReplace(sVal, CH, DecimalSeparator, [флаг] );
ну и nVal := StrToFloat( sVal)
и так же с датами, там тоже какая-то заморочка была
Smile (2013-03-22 17:45:00) [4]> Плохиш © (22.03.13 17:39) [6]
Да :)
Smile (2013-03-22 17:44:00) [5]> Плохиш © (22.03.13 17:39) [6]
Да :)
Плохиш (2013-03-22 17:39:00) [6]
> Не забыть вернуть "на место! при выходе из программы
1. Зачем?
2. В приведённом коде, нет никакой гарантии, что при последующем выполнении программы DecimalSeparator всё ещё не изменился на системный.
Плохиш (2013-03-22 17:39:00) [7]
> Не забыть вернуть "на место! при выходе из программы
1. Зачем?
2. В приведённом коде, нет никакой гарантии, что при последующем выполнении программы DecimalSeparator всё ещё не изменился на системный.
Smile (2013-03-22 17:34:00) [8]Ну, например:
procedure TForm1.FormCreate(Sender: TObject);
begin
DecimalSeparator:= '.';
end;
Не забыть вернуть "на место! при выходе из программы
:)
Плохиш (2013-03-22 17:28:00) [9]
> В региональних настройках стоит разделитель "," а в базе
> всегда "."
В базе нет даже такого понятия "разделитель".
Игорь Шевченко (2013-03-22 17:18:00) [10]SysUtils.DecimalSeparator влияет только на твоей приложение
Ega23 (2013-03-22 17:04:00) [11]
> а в базе всегда "."
Ты хранишь числа в строках?
Оригинально.
Inovet (2013-03-22 16:51:00) [12]У тебя в программе что-то не так.