Как объеденить одинаковые ячейки в мастердата?
Здравствуйте, господа.
Возникли проблемы, с объединением ячеек как в Excel (знаю что тут уже есть такая тема, и много других подобных, но ответа в них я не нашел)
Проблема можно сказать классическая:
http://www.fast-report.com/ru/forum/index.php?showtopic=3532
Вот это:
if <Line> mod 2 = 1 then begin
memo.frame.typ:=ftbottom+ftright;
end else begin
memo.frame.typ:=fttop+ftright;
end;
end;
Но не понимаю, что это значит, объясните как это работает пожалуйста
и еще тут же:
Вопрос: А как узнать что запись дублируется?????
Ответ: Проверить совпадение Memo.Text на предыдущем и текущем шагах.
А как проверить совпадение я так и не нашел...
Возникли проблемы, с объединением ячеек как в Excel (знаю что тут уже есть такая тема, и много других подобных, но ответа в них я не нашел)
Проблема можно сказать классическая:
http://www.fast-report.com/ru/forum/index.php?showtopic=3532
Вот это:
if <Line> mod 2 = 1 then begin
memo.frame.typ:=ftbottom+ftright;
end else begin
memo.frame.typ:=fttop+ftright;
end;
end;
Но не понимаю, что это значит, объясните как это работает пожалуйста
и еще тут же:
Вопрос: А как узнать что запись дублируется?????
Ответ: Проверить совпадение Memo.Text на предыдущем и текущем шагах.
А как проверить совпадение я так и не нашел...
Комментарии
http://fast-report.com/ru/forum/index.php?...29&hl=ftTop (Тема: Объединить строки столбца в ячейку)
Вот мой код:
procedure Memo12OnBeforePrint(Sender: TfrxComponent);
begin
if (buf = <qry_OrgSk."TS">) then
begin
TfrxMemoView(Sender).Text:= '';
TfrxMemoView(Sender).Frame.Typ:= ftLeft + ftRight;
end
else
begin
TfrxMemoView(Sender).Frame.Typ:= ftLeft + ftRight + ftTop;
TfrxMemoView(Sender).Text:= <qry_OrgSk."TS">;
end;
// вот это для меня было очень полезно узнать - передвижение на следующий набор данных
qry_OrgSk.Next;
// вот это для меня было очень полезно узнать - конец или нет?
if (qry_OrgSk.Eof) then
begin
TfrxMemoView(Sender).Frame.Typ:= TfrxMemoView(Sender).Frame.Typ + ftBottom;
end
else
// вот это для меня было очень полезно узнать - возвращение на предыдущий набор данных
qry_OrgSk.Prior;
buf:= <qry_OrgSk."TS">;
end;
//А сравнивал с предыдущем значением с помощью buf
//Здесь buf: string - объявлена как глобальная переменная и инициализированна изначально в ''