Во вложении поправленная форма, если у Вас есть исходники, замените и перекомпилите.
Если нет, то вручную измените размеры Fields: TListView в fcConvertFields.dfm, так, что-бы они не перекрывали кнопки.
С кнопками разобрался - почему-то при компиляции ругался, что не может найти описание класса TPanel.
Наверное потому, что подключение модуля ExtCtrls засунуто в
{$IFDEF FPC}
, LResources, Buttons, ExtCtrls
которое не отрабатывается.
Попытка вынести ExtCtrls из под IFDEF вызывает ругань при компиляции FastCube через recompile (типа разные версии).
ВОПРОС:
Конвертер теперь открывается, но НЕ РАБОТАЕТ. Т.е. я меняю в конвертере наименование поля с DOC_DATE на Дата, нажимаю OK, куб загружает данные из БД и в списке полей показывает опять DOC_DATE. То же самое с другими полями и независимо от того, стоит галочка "Конвертировать" или нет. Также пытался сохранять в файл и загружать из файла - безрезультатно. Такое ощущение, что на конвертер она просто не реагирует.
В сохраненном из конвертера файле нигде не видно, что я поменял названия полей (прикладываю ПЕРЕИМЕНОВАННЫМ В TXT).
2. Да, нашел ошибку с заголовком поля:
Надо в модуле fcConvertFields.pas вставить строку:
...
if EditConvFieldEditor.ShowModal = mrOk then
begin
ListItem.SubItems[2] := EditConvFieldEditor.ed_FieldCaption.Text;
// новая строка:
FieldConverters[Integer(ListItem.Data)].FieldCaption := EditConvFieldEditor.ed_FieldCaption.Text;
if EditConvFieldEditor.chbx_Convert.Checked then
...
Кроме того, заголовок поля меняется только в случае, если происходит реальное конвертирование поля, т.е. если целевой тип или размер изменён.
Кроме того, заголовок поля меняется только в случае, если происходит реальное конвертирование поля, т.е. если целевой тип или размер изменён.
Это нелогично, поскольку алиасы как раз и нужны для придания названия полей БД (сокращенным и английским) человеко-понятных значений (русских)
Может убрать это ограничение?
Окно конвертера выглядит см.скриншот - надписи на кнопки не влезают, OK наполовину за границей экрана.
По-прежнему не сохраняется изменение названия поля БД - в базе они на английском, а в кубе должны быть на русском.
Совет про TField.DisplayLabel не понял. Имелось в виду в коде программы поля переименовывать? Это не вариант. Для этого конвертер есть
Комментарии
Проверил, всё должно отображаться.
Сообщите пожалуйста версию FastCube, Delphi и операционную систему.
И скриншот пожалуйста.
С уважением, Олег
Версия FastCube последняя - скачана с сервера неделю назад. Где посмотреть точный номер версии?
Delphi 7
Windows XP
Скриншот приложен.
С уважением, Кирилл.
Во вложении поправленная форма, если у Вас есть исходники, замените и перекомпилите.
Если нет, то вручную измените размеры Fields: TListView в fcConvertFields.dfm, так, что-бы они не перекрывали кнопки.
Наверное потому, что подключение модуля ExtCtrls засунуто в
{$IFDEF FPC}
, LResources, Buttons, ExtCtrls
которое не отрабатывается.
Попытка вынести ExtCtrls из под IFDEF вызывает ругань при компиляции FastCube через recompile (типа разные версии).
ВОПРОС:
Конвертер теперь открывается, но НЕ РАБОТАЕТ. Т.е. я меняю в конвертере наименование поля с DOC_DATE на Дата, нажимаю OK, куб загружает данные из БД и в списке полей показывает опять DOC_DATE. То же самое с другими полями и независимо от того, стоит галочка "Конвертировать" или нет. Также пытался сохранять в файл и загружать из файла - безрезультатно. Такое ощущение, что на конвертер она просто не реагирует.
В сохраненном из конвертера файле нигде не видно, что я поменял названия полей (прикладываю ПЕРЕИМЕНОВАННЫМ В TXT).
1. Uses должно выглядеть так:
uses
SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, fcTypes, fcCube, StdCtrls, db, ExtCtrls
{$IFDEF DELPHI_6UP}
, Variants
{$ENDIF}
{$IFDEF FPC}
, LResources, Buttons
{$ENDIF}
;
2. Да, нашел ошибку с заголовком поля:
Надо в модуле fcConvertFields.pas вставить строку:
...
if EditConvFieldEditor.ShowModal = mrOk then
begin
ListItem.SubItems[2] := EditConvFieldEditor.ed_FieldCaption.Text;
// новая строка:
FieldConverters[Integer(ListItem.Data)].FieldCaption := EditConvFieldEditor.ed_FieldCaption.Text;
if EditConvFieldEditor.chbx_Convert.Checked then
...
Кроме того, заголовок поля меняется только в случае, если происходит реальное конвертирование поля, т.е. если целевой тип или размер изменён.
С уважением, Олег.
Это нелогично, поскольку алиасы как раз и нужны для придания названия полей БД (сокращенным и английским) человеко-понятных значений (русских)
Может убрать это ограничение?
Я посмотрю, что можно сделать.
А что Вам мешает использовать TField.DisplayLabel?
Это самый простой способ.
Oleg.
Установил версию 1.7.
Окно конвертера выглядит см.скриншот - надписи на кнопки не влезают, OK наполовину за границей экрана.
По-прежнему не сохраняется изменение названия поля БД - в базе они на английском, а в кубе должны быть на русском.
Совет про TField.DisplayLabel не понял. Имелось в виду в коде программы поля переименовывать? Это не вариант. Для этого конвертер есть
С уважением, Кирилл.