Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Лицензия FastReport за багрепорты и багофиксы

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Открыть новую тему     Написать ответ в эту тему

My_Way



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Объявлена раздача лицензий за найденные баги и багофиксы по продукту от разработчиков
 
Постите здесь свои багрепорты и багофиксы по ФастРепорту,и получайте лицензии на ФастРепорт.
 
Расценки на версии FastReport 4:
 
FR Basic - 1 багрепорт
FR Standard - 3 багрепорта или  1 багофикс
FR Professional - 6 багрепортов или  2 багофикса
FR Enterprise - 9 багрепортов или 3 багофикса
FR Studio Single - 9 багрепортов или 3 багофикса
FR Server - 9 багрепортов или 3 багофикса
 
 
Полезная информация:

 
Найденные баги и багофиксы, использованные для получения лицензии младшего уровня учитываются при получении лицензии следующего уровня. Например,набрав один багрепорт, получаешь FR Basic, а набрав еще 2  - получаешь лицензию на FR Standard, и т.д.  
 
Один багофикс= 3 багрепорта.
Например,если вы нашли баг, и его пофиксили, то у вас в сумме 1 багрепорт+1 багофикс = 4 багрепорта.
 
За лицензиями при накоплении необходимого количества бонусов обращаться в ПМ к My_Way (В письме указывать Имя и емайл, на какой выслать регистрационную инфу)
 
Информация для новичков
Для вновь прибывших, внимательно читать вот ЭТО, чтобы не повторять уже исправленные баги

А еще и это ЭТУ ИНФУ  
 
P.S. Некоторые баги согласно My_Way являются фичами (Правда не знаю в документации это описано, так как баг считается фичей если он задокументирован, иначе это баг).
 
Результаты по подсчетам My Way:

Ник участника Багрепорты Багофиксы Итого: Лицензия Остатки      
gpi Четырнадцать Десять Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
GloThin Двадцать четыре Пять Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
DroN_S Одинадцать Семь Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
SerVal777 Двадцать семь Три Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
Nicka_Grey Двадцать четыре Четыре Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
LadyOfWood Двадцать девять Три Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
QuickeneR Шестнадцать Четыре Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
Garrett Двадцать семь Ноль Двадцать семь FR Ent+FR Studio+FR Server Больше не на что    
RUSer Двадцать восемь Ноль Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
mLex Двадцать пять Один Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
mrrex Тридцать один Ноль Двадцать семь+ FR Ent+FR Studio+FR Server Больше не на что    
Jedinichka Двадцать пять Ноль Двадцать пять FR Ent+FR Studio Семь    
aralekin Девятнадцать Два Двадцать пять FR Ent+FR Studio Семь    
vadson6666 Двадцать пять Ноль Двадцать пять FR Ent+FR Studio Семь    
DmLam Двадцать Ноль Двадцать FR Ent+FR Studio Два    
jonikDk Десять Три Девятнадцать FR Ent+FR Studio Один    
Alex_Yagolnik Девятнадцать Ноль Девятнадцать FR Ent+FR Studio Один    
karioth Восемьнадцать Ноль Восемьнадцать FR Ent+FR Studio Ноль    
denger2k Пятнадцать Один Восемьнадцать FR Ent+FR Studio Ноль    
martyanov Одинадцать Два Семьнадцать FR Ent Восемь    
EmeJIbka Десять Два Шестнадцать FR Ent Семь    
motrik Шестнадцать Ноль Шестнадцать FR Ent Семь    
exteris Шестнадцать Ноль Шестнадцать FR Ent Семь    
JustAMaaan Шестнадцать Ноль Шестнадцать FR Ent Семь    
Delphis11 Шестнадцать Ноль Шестнадцать FR Ent Семь    
mity Пятнадцать Ноль Пятнадцать FR Ent Шесть    
benchik Пятнадцать Ноль Пятнадцать FR Ent Шесть    
Darken Пятнадцать Ноль Пятнадцать FR Ent Шесть    
tomegadeth Пятнадцать Ноль Пятнадцать FR Ent Шесть    
MageSlayerDen Пятнадцать Ноль Пятнадцать FR Ent Шесть    
stalker780 Восемь Один Одинадцать FR Ent Три    
Vic26 Восемь Один Одинадцать FR Ent Два    
Wise Десять Ноль Десять FR Ent Один    
ultima Девять Ноль Девять FR Ent Ноль    
jzk Восемь Ноль Восемь FR Pro Восемь    
wbsg Восемь Ноль Восемь FR Pro Восемь    
royt Восемь Ноль Восемь FR Pro Восемь    
vshersh Восемь Ноль Восемь FR Pro Восемь    
vidic777 Восемь Ноль Восемь FR Pro Восемь    
Erazer Восемь Ноль Восемь FR Pro Восемь            


 
 
Примечание от My Way:
1. Передавать только остатки другим участникам нельзя...
2. Если хотите поделиться своими изысканиями с кем-нибудь из участников, до опубликования в ветке можно передать свои результаты через ПМ...
3. Остатки после лицензии на FR Studio Single, можно использовать, для получения лицензии на FR Server (цена такая же. как на FR Enterprise и FR Studio Single = 9 багрепортов )
4. Багофиксы к багофиксам (багофиксаторы, по термину GloThin), пока засчитываются, как отдельные, но возможно, в будущем будут делиться между решившими указанную проблему...  
 
Также мы премируем за написание статей на тему FastReport, как FastReport 3, так и FastReport Studio, стати начиная от технических, и заканчивая очень прикладными, например, первые
шаги в матричных отчетах, или анализатор логов в FastReport Studio, все
авторские права сохраняются, плюс мы содействуем в размещении этих статей
в изданиях. Есть что публиковать - пишите в ПМ

Всего записей: 80 | Зарегистр. 16-09-2004 | Отправлено: 14:16 23-08-2005 | Исправлено: My_Way, 16:15 30-03-2007
GloThin



Тобольский шашлычник
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
royt

Цитата:
"если вы нашли баг, и его пофиксили..."

Имеется в виду, что баг пофиксен методом правки исходников ФР.

Цитата:
кто должен пофиксить баг? Тот, кто о нем заявил?

Кто угодно: за данное действие сделавший это получает больше баллов чем за просто багрепорт.

Цитата:
Или просто указать место в исходниках?

Место то по-любому надо указывать, включая измененные строки с комментариеь //fix или типа того.

Цитата:
а где вообще взять исходники, если лицензии нету

получить ПРо-версию ФР по расценкам в шапке или поискать в сети(тоже может удастся).

Цитата:
Или достаточно описать причины, при которых баг возникает

Это и называется багрепорт.
 
З.Ы. добавлена ссылка на пост в шапку.

----------
Все принципиальное-просто,а все простое-принципиально!
На каждого мудреца достаточно простоты!
Не изменишь существующее,не изменив себя!!

Всего записей: 709 | Зарегистр. 28-04-2004 | Отправлено: 14:33 06-02-2007 | Исправлено: GloThin, 14:48 06-02-2007
Delphis11

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если в отчете (FastReport 4.1) на страницу "Данные" положить компонент TfrxADOTable или TfrxADOQuery или TfrxBDETable или TfrxBDEQuery, одним словом, любого наследника от TfrxCustomDataset то наблюдаются следующие неприятные вещи
 
1. У компонентов в инспекторе присутствует свойство "Master" но при этом отсутствует "MasterFields" (одно без другого не имеет смысла)
2. Если настроить свойство "Master" (установить ссылку на другой набор данных), затем сохранить отчет, закрыть его и открыть снова, или же просто сделать предварительный просмотр, то свойство "Master" обнуляется (сбрасывается в "(не определен)")
 
Соответственно лечение этих двух багов таково:
 
 
unit frxCustomDB;
 
interface
 
// .......................................................................................
 
type
  TfrxCustomDataset = class(TfrxDBDataSet)
  private
    FDBConnected: Boolean;
    FDataSource: TDataSource;
    FMaster: TfrxDBDataSet;
    FMasterFields: String;
    //Change
    FMasterName: string;
    function GetMasterName: string;
    procedure SetMasterName(const Value: string);
    //EndChange
    procedure SetActive(Value: Boolean);
    procedure SetFilter(const Value: String);
    procedure SetFiltered(Value: Boolean);
    function GetActive: Boolean;
    function GetFields: TFields;
    function GetFilter: String;
    function GetFiltered: Boolean;
    procedure InternalSetMaster(const Value: TfrxDBDataSet);
    procedure InternalSetMasterFields(const Value: String);
  protected
    procedure Notification(AComponent: TComponent; Operation: TOperation); override;
    procedure SetParent(AParent: TfrxComponent); override;
    procedure SetUserName(const Value: String); override;
    procedure SetMaster(const Value: TDataSource); virtual;
    procedure SetMasterFields(const Value: String); virtual;
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    procedure OnPaste; override;
    property DBConnected: Boolean read FDBConnected write FDBConnected;
    property Fields: TFields read GetFields;
    //Change
    //property MasterFields: String read FMasterFields write InternalSetMasterFields;
    //EndChange
    property Active: Boolean read GetActive write SetActive default False;
  published
    property Filter: String read GetFilter write SetFilter;
    property Filtered: Boolean read GetFiltered write SetFiltered default False;
    property Master: TfrxDBDataSet read FMaster write InternalSetMaster;
    //Change
    property MasterName: string read GetMasterName write SetMasterName;
    property MasterFields: String read FMasterFields write InternalSetMasterFields;
    //EndChange
  end;
 
// .......................................................................................
 
implementation
 
 
// .......................................................................................
 
procedure TfrxCustomDataset.InternalSetMaster(const Value: TfrxDBDataSet);
begin
  FMaster := Value;
  if FMaster <> nil then
  //Change
  //  FDataSource.DataSet := FMaster.GetDataSet
  //else
  //  FDataSource.DataSet := nil;
  begin
    FDataSource.DataSet := FMaster.GetDataSet;
    FMasterName := FMaster.UserName;
  end
  else
  begin
    FDataSource.DataSet := nil;
    FMasterName := '';
  end;
  //EndChange
end;
 
//Change
function TfrxCustomDataset.GetMasterName: string;
begin
  if not Assigned(Master) then
    Result := FMasterName
  else
    Result := FMaster.UserName;
end;
 
procedure TfrxCustomDataset.SetMasterName(const Value: string);
begin
  FMasterName := Value;
  FMaster := frxFindDataSet(FMaster, FMasterName, Report) as TfrxDBDataSet;
end;
//EndChange
 
// .......................................................................................
 
initialization
  frxObjects.RegisterObject1(TfrxDBLookupComboBox, nil, '', '', 0, 41);
  //Change
  frxHideProperties(TfrxCustomDataset, 'MasterName');
  //EndChange
end.
 
 
Добавлено:
Еще, багами наверное не назовешь, но сделано, на мой взгляд не очень хорошо.
 
1. В документации нигде не сказано что название типов событий для собственных компонентов отчета должно обязательно начинаться на "Tfrx" и заканчиваться на "Event", собственно руководствуясь только этим инспектор отличает события от свойств. К тому же это  не удобно для разработки собственных компонентов, так как нельзя дать типу свой префикс.
 
2. В модуле frxDesgnEditors описания классов всех редакторов свойств сделаны в секции implementation, соответственно, при написании собственных компонентов уже нельзя воспользоваться создаными редакторами, приходится тупо делать copy-past. Скажем если надо сделать у компонента свое свойство типа TfrxDataSet то зарегистрировать для его редактирования TfrxDataSetProperty никак не получится, придется повторять код класса TfrxDataSetProperty. ИМХО описания классов редаткоров свойств все же лучше было бы видеть в секции interface

Всего записей: 1 | Зарегистр. 08-02-2007 | Отправлено: 15:28 08-02-2007
My_Way



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2 ALL  
Акция продолжается,
очки посчитаны, смотрите шапку
 
Всем добавлено по семь призовых очков! В качестве компенсации за временную неактивность акции
 
За заработанным милости просим в ПМ:
с примерно таким сабжем "Прошу выдать честно заработанные мной продукты..." и перечисляем их в письме....
- если Вы еще не получали продукт и у Вас нет аккаунта на сайте FastReport, то
  просьба в ПМ указать email и имя(можно ник) на которое регистрировать продукт;
 
- если у Вас уже есть аккаунт , то сообщите ваш логин или емаил.
 
Также все имеющие FR 3, могут бесплатно проапгрейдится до FR 4 той же версии:
 
для осуществления этого тоже нужно обязательно указать в ПМ, что то типа "Хочу проапгрейдить мой FR3 до FR4".
 
Ждем продолжения Вашей деятельности на ниве багоискательсьва и багофиксаторства.  

Всего записей: 80 | Зарегистр. 16-09-2004 | Отправлено: 19:30 22-03-2007 | Исправлено: My_Way, 20:51 22-03-2007
Nicka_Grey

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
My_Way
С возвращением!!!
И спасибо.

Всего записей: 1282 | Зарегистр. 04-01-2003 | Отправлено: 19:42 22-03-2007
feandy



Пиво тоже компонента
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
My_Way
Ну вот и слава высшим кругам.
А то пропал совсем. Я уж грешным делом начал думать о черт знат чем  

Всего записей: 5200 | Зарегистр. 15-02-2002 | Отправлено: 21:23 22-03-2007
GloThin



Тобольский шашлычник
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
My_Way
Да точна, с возвращением в родные пенаты, вернее в родной топик!
Тебя тут так все ждали, как с печи пирога!
Спасибо за подарки!
Можна продолжать творчество, не боясь что тебя не постигнет кара в виде лицензии на продукты от компании Фастрепорт!

----------
Все принципиальное-просто,а все простое-принципиально!
На каждого мудреца достаточно простоты!
Не изменишь существующее,не изменив себя!!

Всего записей: 709 | Зарегистр. 28-04-2004 | Отправлено: 21:43 22-03-2007
vidic777



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
My_Way
Рады Вас видеть вновь.  
Хочу сказать что данная акция компании очень конструктивна, прогрессивна,  оригинальна в своем роде. Она позволяет как улучшить качество продукции так и позволяет легализоваться "неофициальным" пользователям. Такая акция идет только во благо всем !  
 
Должен признаться, что написав сюда об ошибках, не расчитывал на то что мои старания буду замечены. Однако труды и не толко мои были замечены и вознаграждены.  
 
Подводя итог хочу выразить благодарность компании Fast Reort Inc.  
 
Спасибо огромное и удачи.

Всего записей: 1313 | Зарегистр. 16-02-2005 | Отправлено: 02:13 23-03-2007
vadson6666



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вай, вай, хорошо, теперь можно будет потрогать и ФР 4, а троечку то совсем забросили....

Всего записей: 267 | Зарегистр. 08-07-2004 | Отправлено: 04:22 23-03-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ммм... достаточно нелогично работают вертикальные бэнды
если положить на форму H и V бэнд, скажем с фиксированным количеством рядочков, то поведение при этом у отчета будет такое:
 
1. если нет компонента, целиком лежащего в V бэнде и цепляющего пересечение, то существование V бэнда игнорируется, и указанное число раз выводится H-бэнд со всеми своими компонентами. Содержимое V бэнда при этом один разок выводится там же, где нарисовано в дизайнере.
 
2. если такие компоненты есть, то они размножаются в виде таблички, все же прочие (т.е. лежащие в H-бэнде, но превосходящие размером пересечение, или лежащие в v-бэнде и пересечение не цепляющие), выводятся один раз
 
ИМХО во втором случае стоит выводить компоненты H-бэнда каждый раз, как он отрисовывается
 
Добавлено:
Итак, объекты горизонтального бэнда все-таки выводились, но при выполнении unstretcha их размеры сбрасывались в 0, и таким образом в расплющенном состоянии они лежали себе на отчете, невидимые никому.
 
Происходило это потому, что при вызове stretcha их габариты не запоминались, т.к. блокировался вызов BeforePrint

Код:
 
procedure TfrxEngine.Stretch(Band: TfrxBand);
...
begin
  FCurBand := Band;
  HaveSub := False;
  NeedShift := False;
  PrepareShiftTree(Band);
 
  { it is not necessary for vertical bands }
  if Band <> FVMasterBand then  {!!!!!!!!!!!!!!!!!!!!!!!!!!!}
  begin
    { firing band OnBeforePrint event }
    Report.CurObject := Band.Name;
    Band.BeforePrint;
    Report.DoBeforePrint(Band);
  end;
 
  { firing OnBeforePrint events, stretching objects }
  for i := 0 to Band.Objects.Count - 1 do
  begin
    c := Band.Objects[i];
    if (c is TfrxSubReport) and TfrxSubReport(c).PrintOnParent then
      HaveSub := True;
 
    { skip getdata for vertical bands' objects }
    if Band <> FVMasterBand then   {!!!!!!!!!!!!!!!!!!!!!!!!!!!}
    begin
      Report.CurObject := c.Name;
      c.BeforePrint;
      if Band.Visible then
      begin
        Report.DoBeforePrint(c);
        if c.Visible then
        begin
          c.GetData;
          Report.DoNotifyEvent(c, c.OnAfterData);
        end;
      end;
    end;
 

Как видно из авторских комментариев таким образом должны были проскипаться вертикальные бэнды. Действительно, для вертикальных beforePrint вызывается отдельно. Однако приведенный критерий превосходно отсеивал также и горизонтальные бэнды. После его комментирования объекты горизонтальных бэндов отрисовываются корректно.

Код:
 
procedure TfrxEngine.Stretch(Band: TfrxBand);
...
begin
  FCurBand := Band;
  HaveSub := False;
  NeedShift := False;
  PrepareShiftTree(Band);
 
  { it is not necessary for vertical bands }
//  if Band <> FVMasterBand then  
//  begin
    { firing band OnBeforePrint event }
    Report.CurObject := Band.Name;
    Band.BeforePrint;
    Report.DoBeforePrint(Band);
//  end;
 
  { firing OnBeforePrint events, stretching objects }
  for i := 0 to Band.Objects.Count - 1 do
  begin
    c := Band.Objects[i];
    if (c is TfrxSubReport) and TfrxSubReport(c).PrintOnParent then
      HaveSub := True;
 
    { skip getdata for vertical bands' objects }
//    if Band <> FVMasterBand then  
//    begin
      Report.CurObject := c.Name;
      c.BeforePrint;
      if Band.Visible then
      begin
        Report.DoBeforePrint(c);
        if c.Visible then
        begin
          c.GetData;
          Report.DoNotifyEvent(c, c.OnAfterData);
        end;
      end;
//    end;
 

 
Комментарии наводят на грустные мысли о том, что этот фикс может иметь побочные последствия, для примера двукратное вызывание OnBeforePrint-а. Я не пробовал, так как мне пока что достаточно и этого.
 
 
Добавлено:
дамс, грустные мысли оправдались
с настоящим отчетом, гоняющим по данным, это таки не сработало (вылетело ошибкой). Тем не менее решается вынесением beforePrint-а вперед условия

Код:
 
procedure TfrxEngine.Stretch(Band: TfrxBand);
...
begin
  FCurBand := Band;
  HaveSub := False;
  NeedShift := False;
  PrepareShiftTree(Band);
 
  { it is not necessary for vertical bands }
  Band.BeforePrint;
  if Band <> FVMasterBand then
  begin
    { firing band OnBeforePrint event }
    Report.CurObject := Band.Name;
    Report.DoBeforePrint(Band);
  end;
 
  { firing OnBeforePrint events, stretching objects }
  for i := 0 to Band.Objects.Count - 1 do
  begin
    c := Band.Objects[i];
    if (c is TfrxSubReport) and TfrxSubReport(c).PrintOnParent then
      HaveSub := True;
 
    { skip getdata for vertical bands' objects }
    c.BeforePrint;
    if Band <> FVMasterBand then
    begin
      Report.CurObject := c.Name;
      if Band.Visible then
      begin
        Report.DoBeforePrint(c);
        if c.Visible then
        begin
          c.GetData;
          Report.DoNotifyEvent(c, c.OnAfterData);
        end;
      end;
    end;
...
 

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 12:01 30-03-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
известный глюк с неправильной расцветовкой в code-editore fast-reporta (при вставке в середину текста фрагмента из более чем одной строки) лечится исправлением в модуле frxSynMemo метода   TfrxSyntaxMemo.SetSelText
 

Код:
 
procedure TfrxSyntaxMemo.SetSelText(const Value: String);
...
begin
  ...  
//  ClearSyntax(p3.Y);
  ClearSyntax(p1.Y);
end;
 

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 19:04 31-03-2007
ArmD45



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Delphi 7 upd1
FastReport 4.1.61_d7b  
И такая же демо.
 
Ошибка с присвоением текста из кода программы какому-нибудь мемо  
 
uses
  frxClass;
 
proc.....
Var Memo1: TfrxMemoView;
begin    dmReport.frxReport1.LoadFromFile(ExtractFilePath(Application.ExeName)+'report\AviaTicket.fr3');
Memo1      := dmReport.frxReport1.FindObject('Memo22') as TfrxMemoView;
Memo1.Text := 'NS';
dmReport.frxReport1.ShowReport();
end;
 
Отчет выводится но не присваивает в Memo1.Text нужное значение.
 
 
 
Добавлено:
Админы удалите плз мой пост выше и этот.
Ошибка в руках и мозгах.  

Всего записей: 17 | Зарегистр. 28-09-2006 | Отправлено: 17:06 01-04-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
хм, я чесговоря в растерянности
после последнего исправления при открытии дизайнера репорта из приложения цвета ведут себя как положено
но встроенный в делфу дизайнер (такой же точно) все равно выводит их неправильно, хотя frxComponents я перепэкейджил
 
может frxScripts тоже надо?

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 13:18 02-04-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кроме исправлленного случая, форматы плывут еще при использования ctrl-I, ctrl-U (indent, unindent) и при переключении на обработчик события по двойному щелчку в обжект-инспекторе (последнее трудноповторимо, надо сначала перещелкнуться на процедуру с неверным именем, затем с верным; че-то такое, однозначного контрольного примера не вышло)

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 12:51 03-04-2007
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fr4_2_d10e.exe от 03.04.2007
Может и раньше было, не обращал внимания.
Если в объект "Текст" вписать однострочный текст, а потом форматировать его кнопками "выровнять по верхнему краю", "центрировать текст по вертикали", "выровнять по нижнему краю", то можно заметить, что выравнивание несколько смещено вниз.
Т.е. при выравнивании по верху, сверху всегда есть зазор, при центрировании - центр смещен вниз, а по нижнему краю, так вообще знак подчеркивания не выводится, а буквы типа "g" выводятся без нижней части.

Всего записей: 2740 | Зарегистр. 16-10-2003 | Отправлено: 03:12 04-04-2007 | Исправлено: Garrett, 03:17 04-04-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
у вертикальных бэндов в списке свойств отсутствует имя!!!
 
Добавлено:
Кладем на страницу мастербэнд (*)
на него не около края (!) кладем сабрепорт
в сабрепорте делаем один мастербэнд (**), не подвязанный к бд с роукаунтом 1
и вертикальный бэнд
на их пересечении кладем какой-нибудь мем или шейп (***)
плюс на Хбэнде в сабрепорте кладем около края (!!) какой-либо шейп (****), больший чем пересечение с Вбэндом
 
 
в результате (****) будет выведен около края(!!) мастербэнда(*), то есть там, где он должен был бы вывестись относительно (**). С шейпами (***) все в порядке
 
Этот эффект наблюдается независимо от значения PrintOnParent у сабрепорта. Если этот флажок стоит в false (default-овое значение), то все бэнды сабрепорта сдвинуты вверх. Такое впечатление, будто (**) центрируется по вертикали относительно верхней границы (*)

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 11:30 13-04-2007
ArmD45



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не знаю баг это или нет, но после установки fast report 4.2  Delphi 7 upd 1.1
 
Object Inspector в delphi стал упорно появлятся в левом нижнем углу.
Т.е. не сохраняет свои размеры и положение окна.
 
Здорово бесит.

Всего записей: 17 | Зарегистр. 28-09-2006 | Отправлено: 17:14 16-04-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Даже если выложенному на masterband-е сабрепорту сделать BringToBack,  он все-равно отрисуется последним и замажет собой прочие лежащие там компоненты.

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 17:41 21-04-2007
Jedinichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Это наверняка либо кем-то уже описано, либо считается фичей, но у шейпов нельзя убрать рамку. Не typ, не "width := 0" не действуют.

Всего записей: 15 | Зарегистр. 21-11-2006 | Отправлено: 14:24 22-04-2007
waik



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Не знаю насколько это бага, но вполне воспроизводимая:
В среде (D2006) установлено fr256 и Fr4. В проекте на форме кинул TFRxReport и назвал его frReport. Закрыл и удалил fr256, руками. Запускаем проект - ругается на fr10.bpl и предлагает больше не грузить - соглашаюсь. Открываю форму - frReport от 4 FR изчезает. При компиляции предлогается и ссылки на него удалить. Восстановить можно (я открываю форму как текст из закладки History (которую среда ведёт) и тупо его копирую взад). Если назвать как то отлично от frReport то ничего такого не происходит... Смахивает на багу (за старую привычку в мелких проектах называть компоненты просто удаляя T не ругать - вроде всегда было можно, а тут убрал ещё и "x").
 
з.ы. Лицензия не нужна , просто сообщение.  

Всего записей: 610 | Зарегистр. 15-01-2003 | Отправлено: 18:02 23-04-2007
Pentium133



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну так это глюкан делфи. Причем тут FR...

Всего записей: 126 | Зарегистр. 21-09-2004 | Отправлено: 13:34 26-04-2007
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Лицензия FastReport за багрепорты и багофиксы


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru