Спасибо, так вроде бы все работает.

А если использовать версию 1.45 с функцией ReplaceStr и в событии OnShow формы проверять значения полей:

if not ValidFloat(frmAddCalculate.edPrice.Text) then
  frmAddCalculate.edPrice.Text := ReplaceStr(frmAddCalculate.edPrice.Text, '.', ',') ;

Правильно ли это?

Есть поля "Вещественное число".
В форме ввода есть скрипт расчета суммы/процентов и прочее.
При добавлении в форму десятичного числа через запятую все отлично работает и сохраняется.
В гриде данные отображаются с запятой.
Но при открытии формы для  редактирования данных поля уже с точкой и т.к. стоит проверка на ValidFloat, то скрипт не работает, пока не заменишь точки на запятые.
При сохранении этих полей с точками, в гриде они отображаются с запятой.

Спасибо, теперь понятно.

Здравствуйте!

Заметил, что при открытии  формы редактирования записи срабатывает событие OnChange в полях, причем первый раз открывает с одним срабатыванием, а второй раз с двумя.

И вообще, непонятно почему просто при открытии формы в режиме редактирования вообще срабатывает это событие?

Прикрепил файл.

Большое спасибо!
То что надо!

Как всегда оперативно!
Отличный проект! Успеха!

DriveSoft wrote:

Пожалуйста, попробуйте еще раз прикрепить ваш проект (архив .zip) к сообщению, удалив из него exe и dll файл.

Прикрепил.

Помогите решить задачу.
Есть основная таблица и 2 связанные.
На форме редактирования основной таблицы есть 2 вкладки со связанными таблицами.
Задача: по нажатию на кнопке на 2-й вкладке скопировать все записи из 1-ой вкладки во второю.

Набросал пример.