Добрый день.
Цитата:
когда редактируешь цену, символ рубля исчезает,
Задайте свойство Column.DisplayFormat = '#.## "р."'
Column.DisplayFormat работает только в режиме отображения ячейки.
В режиме редактирования он не используется.
Цитата:
При редактировании название единицы измерения исчезает и появляется после окончания редактирования.
Наименование единицы измерения берется из таблицы по материалам.
В вашем примере поле ЕИ уже присутствует в той-же таблице.
Используйте событие Column.GetCellParams чтобы задать кастомный текст ячейки в режиме отображения ячейки.
Код:
procedure TForm1.DBGridEh1Columns5GetCellParams(Sender: TObject;
EditMode: Boolean; Params: TColCellParamsEh);
begin
if not EditMode then
begin
Params.Text := MemTableEh1.FieldByName('Kolvo').AsString + ' ' +
MemTableEh1.FieldByName('EdIzm').AsString;
end;
end;
Результат получится примерно следующий: