1. Если подключать источник данных через Rep.RegisterData(List, ... ), где public class List: BindingList<System.Xml.XmlElement>, ITypedList, не отображаются поля типа Image (Bitmap) - хотя при Биндинге этого источника к любым объектом, отображающим DataSet, все нормально.
2. При подключении событий через инспектор свойств, собития слетают. В коде есть текс события, а в инспекторе нет, и соответственно потом эти события не обрабатываюся.
3. В редакторе кода Ctrl+C, Ctrl+V то работает, то нет закономерность не определии.
4. если загружать шаблон отчета динамически, не восстанавливаются, приходитс делать так
1) можете прислать тестовое приложение? Я пробовал добавлять поле типа Image в бизнес-объект из демки, все работает.
2) поправил.
3) можете привести последовательность действий?
4) что именно "не восстанавливаются"?
Будет ли реализованы дефолтные значения для полей с датами??
аля гридВьюв.
При совпадении дефолтной даты с датой из источника - показывать пустое поле..
Хотелось бы делать это не используя скрипт, согласитесь проставить значение в свойстве объекта много удобнее чем писать кусок скрипта. Эта функциональность достаточно часто бывает нужна, поэтому я вижу смысл вшить этот функционал в генератор.
Хорошая идея. У объекта "Текст" было свойство HideZeros, которое позволяло прятать нули. Теперь вместо него появилось строковое св-во HideValue. Оно позволяет прятать любое значение (для того, чтобы спрятать нули, установите его в 0). Для того, чтобы спрятать дату, надо указать нечто типа: 1.1.1900 0:00:00
Имейте в виду, что этот механизм зависит от региональных установок. Фактически внутри сравниваются строки:
if (expression_value.ToString() == HideValue) ...
При изменении структуры XML файла с данными, чтобы увидить эти изменения приходится удалять сорс и добавлять новый, при этом все ссылки в бендах теряются, если выбрать Edit в меню дата сорса и заново загрузить xml и xsd файл, изменения не видятся
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.
************** Текст исключения **************
System.IndexOutOfRangeException: Индекс находился вне границ массива.
в FastReport.Dock.DockPanelPersist.LoadFromXml(DockPanel dockPanel, Stream stream, DeserializeDockContent deserializeContent, Boolean closeStream)
в FastReport.Dock.DockPanel.LoadFromXml(Stream stream, DeserializeDockContent deserializeContent)
в FastReport.Preview.PreviewControl.fssUZ3ryY()
в FastReport.Preview.PreviewControl.doT2vZeoF()
в FastReport.Preview.PreviewControl..ctor()
в djeessxLgL9fwdc4UKn.GQY2hOxyfgaTkwVwWgA.wE2JpLnmq()
в djeessxLgL9fwdc4UKn.GQY2hOxyfgaTkwVwWgA..ctor()
в FastReport.Report.ShowPrepared(Boolean modal, Form mdiParent)
в FastReport.Report.Show()
в Demo.Form1.btnPreview_Click(Object sender, EventArgs e)
в System.Windows.Forms.Control.OnClick(EventArgs e)
в System.Windows.Forms.Button.OnClick(EventArgs e)
в System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
в System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
в System.Windows.Forms.Control.WndProc(Message& m)
в System.Windows.Forms.ButtonBase.WndProc(Message& m)
в System.Windows.Forms.Button.WndProc(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Загруженные сборки **************
mscorlib
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
Demo
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///P:/projects/Stroyform/FastReport/demo.exe
System.Windows.Forms
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
System
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
System.Drawing
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
FastReport
Версия сборки: 0.1.83.0
Версия Win32: 0.1.83.0
CodeBase: file:///P:/projects/Stroyform/FastReport/FastReport.DLL
System.Data
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
System.Xml
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
FastReport.Dock
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///P:/projects/Stroyform/FastReport/FastReport.Dock.DLL
System.Design
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Design/2.0.0.0__b03f5f7f11d50a3a/System.Design.dll
FastReport.Editor
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///P:/projects/Stroyform/FastReport/FastReport.Editor.DLL
System.Windows.Forms.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
System.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.resources/2.0.0.0_ru_b77a5c561934e089/System.resources.dll
tqkd_msb
Версия сборки: 0.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
mscorlib.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
wcj9juil
Версия сборки: 0.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.
При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
При изменении структуры XML файла с данными, чтобы увидить эти изменения приходится удалять сорс и добавлять новый, при этом все ссылки в бендах теряются, если выбрать Edit в меню дата сорса и заново загрузить xml и xsd файл, изменения не видятся
Удалите этот файл, FR при запуске создаст новый, правильный.
Можете вспомнить, что делали с окном превью? В конфиг какое-то странное состояние сохранилось.
Удалите этот файл, FR при запуске создаст новый, правильный.
Можете вспомнить, что делали с окном превью? В конфиг какое-то странное состояние сохранилось.
К сожалению не могу, меня позвали когда уже не работало...
1. Таблица, по идее вторая колонка должна оставаться на 1 листе, т.к. входит в границы 1 листа.
2. Page Footer не появляется на последней страице, когда эти страницы создаются для размещения неумещающихся на одной странице объектов. в данном примере уже на второй странице нет футера.
3. Линия расположенная в Page Footer должна быть двойной, хотя в этом текстовом поле двойная черта отображается нормельно.
4. Хотелось бы иметь локализацию PageN PageNofM для русского языка, как вариант убрать из переменных текстовки и оставить только числа, чтобы аналог можно было делать таким образом (Страница №PageN) , (Страница PageN из TotalPages)
5.Печатал предыдущий пункт, не понял как вводить текст заключенный в квадратные скобки
Код отчета:
<?xml version="1.0" encoding="utf-8"?>
<Report ScriptText="using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
using System.Data;
using FastReport;
using FastReport.Data;
using FastReport.Dialog;
using FastReport.Barcode;
using FastReport.Table;
using FastReport.Utils;
namespace FastReport
{
public class ReportScript
{
private void Table1_ManualBuild(object sender, EventArgs e)
{
Table1.PrintRows();
Table1.PrintColumns();
}
}
}
" DoublePass="true" ReportInfo.Created="09/03/2008 22:02:37" ReportInfo.Modified="09/03/2008 22:47:57" ReportInfo.CreatorVersion="0.1.90.0">
<Dictionary>
<TableDataSource Name="Products" ReferenceName="NorthWind.Products">
<Column Name="ProductID" DataType="System.Int32"/>
<Column Name="ProductName" DataType="System.String"/>
<Column Name="SupplierID" DataType="System.Int32"/>
<Column Name="CategoryID" DataType="System.Int32"/>
<Column Name="QuantityPerUnit" DataType="System.String"/>
<Column Name="UnitPrice" DataType="System.Decimal"/>
<Column Name="UnitsInStock" DataType="System.Int16"/>
<Column Name="UnitsOnOrder" DataType="System.Int16"/>
<Column Name="ReorderLevel" DataType="System.Int16"/>
<Column Name="Discontinued" DataType="System.Boolean" BindableControl="CheckBox"/>
<Column Name="EAN13" DataType="System.String"/>
</TableDataSource>
</Dictionary>
<ReportPage Name="Page1">
<ReportTitleBand Name="ReportTitle1" Width="718.2" Height="94.5">
<TableObject Name="Table1" Left="453.6" Top="37.8" Width="387.44" Height="18.9" Border.Lines="All" ManualBuildEvent="Table1_ManualBuild">
<TableColumn Name="Column1" Width="133.87"/>
<TableColumn Name="Column2" Width="133.87"/>
<TableColumn Name="Column3" Width="119.7"/>
<TableRow Name="Row1">
<TableCell Name="Cell1" Fill.Color="Red" Text="Column1"/>
<TableCell Name="Cell2" Fill.Color="Blue" Text="Column2"/>
<TableCell Name="Cell3" Fill.Color="Lime" Text="Column3"/>
</TableRow>
</TableObject>
<TextObject Name="Text2" Left="18.9" Top="18.9" Width="415.8" Height="47.25" Border.Lines="All" Border.Style="Double" Fill.Color="Lime" CanGrow="true" Text="1. Таблица, по идее вторая колонка должна оставаться на 1 листе, т.к. входит в границы 1 листа.
2. Page Footer не появляется на последней страице, когда эти страницы создаются для размещения неумещающихся на одной странице объектов. в данном примере уже на второй странице нет футера.
3. Линия расположенная в Page Footer должна быть двойной, хотя в этом текстовом поле двойная черта отображается нормельно.
4. Хотелось бы иметь локализацию PageN PageNofM для русского языка, как вариант убрать из переменных текстовки и оставить только числа, чтобы аналог можно было делать таким образом (Страница №PageN) , (Страница PageN из TotalPages)
5.Печатал предыдущий пункт, не понял как вводить текст заключенный в квадратные скобки" VertAlign="Center" Font="Arial, 14pt"/>
</ReportTitleBand>
<PageFooterBand Name="PageFooter1" Top="98.5" Width="718.2" Height="18.9">
<LineObject Name="Line1" Width="718.2" Border.Style="Double" Border.Width="3"/>
<TextObject Name="Text1" Left="623.7" Width="94.5" Height="18.9" Text="[PageNofM]" VertAlign="Center"/>
</PageFooterBand>
</ReportPage>
</Report>
Почему не печатается таблица??
Переменная в Page Footer показывает что всего страниц 2 хотя видно что она всего одна....
Код отчета:
<?xml version="1.0" encoding="utf-8"?>
<Report ScriptText="using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
using System.Data;
using FastReport;
using FastReport.Data;
using FastReport.Dialog;
using FastReport.Barcode;
using FastReport.Table;
using FastReport.Utils;
namespace FastReport
{
public class ReportScript
{
private void Table2_ManualBuild(object sender, EventArgs e)
{
// get the data source by its name
DataSourceBase rowData = Report.GetDataSource("Products");
// init the data source
rowData.Init();
// print the first table row - it is a header
Table2.PrintRow(0);
// each PrintRow call must be followed by either PrintColumn or PrintColumns call
// to print cells on the row
Table2.PrintColumns();
// now enumerate the data source and print the table body
while (rowData.HasMoreRows)
{
// print the table body
Table2.PrintRow(1);
Table2.PrintColumns();
// go next data source row
rowData.Next();
}
// print the last table row - it is a footer
Table2.PrintRow(2);
Table2.PrintColumns();
}
}
}
" DoublePass="true" ReportInfo.Created="09/03/2008 22:02:37" ReportInfo.Modified="09/03/2008 22:46:13" ReportInfo.CreatorVersion="0.1.90.0">
<Dictionary>
<TableDataSource Name="Products" ReferenceName="NorthWind.Products">
<Column Name="ProductID" DataType="System.Int32"/>
<Column Name="ProductName" DataType="System.String"/>
<Column Name="SupplierID" DataType="System.Int32"/>
<Column Name="CategoryID" DataType="System.Int32"/>
<Column Name="QuantityPerUnit" DataType="System.String"/>
<Column Name="UnitPrice" DataType="System.Decimal"/>
<Column Name="UnitsInStock" DataType="System.Int16"/>
<Column Name="UnitsOnOrder" DataType="System.Int16"/>
<Column Name="ReorderLevel" DataType="System.Int16"/>
<Column Name="Discontinued" DataType="System.Boolean" BindableControl="CheckBox"/>
<Column Name="EAN13" DataType="System.String"/>
</TableDataSource>
</Dictionary>
<ReportPage Name="Page2">
<ReportTitleBand Name="ReportTitle2" Width="718.2" Height="56.7">
<TableObject Name="Table2" Left="9.45" Width="472.5" Height="56.7" ManualBuildEvent="Table2_ManualBuild">
<TableColumn Name="Column4" Width="245.7"/>
<TableColumn Name="Column5" Width="113.4"/>
<TableColumn Name="Column6" Width="113.4"/>
<TableRow Name="Row2">
<TableCell Name="Cell4" Border.Lines="All" Border.Color="LightGray" Fill="Glass" Fill.Color="LightGray" Fill.Blend="0.47" Fill.Hatch="false" Text="Product name" Padding="5, 0, 0, 0" VertAlign="Center" Font="Tahoma, 8pt, style=Bold"/>
<TableCell Name="Cell5" Border.Lines="All" Border.Color="LightGray" Fill="Glass" Fill.Color="LightGray" Fill.Blend="0.47" Fill.Hatch="false" Text="Unit price" Padding="0, 0, 5, 0" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt, style=Bold"/>
<TableCell Name="Cell6" Border.Lines="All" Border.Color="LightGray" Fill="Glass" Fill.Color="LightGray" Fill.Blend="0.47" Fill.Hatch="false" Text="Units in stock" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 8pt, style=Bold"/>
</TableRow>
<TableRow Name="Row2">
<TableCell Name="Cell6" Border.Lines="All" Border.Color="LightGray" Text="[Products.ProductName]" Padding="5, 0, 0, 0" VertAlign="Center" Font="Tahoma, 8pt"/>
<TableCell Name="Cell7" Border.Lines="All" Border.Color="LightGray" Text="[Products.UnitPrice]" Padding="0, 0, 5, 0" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt" Format="Currency" Format.UseLocale="true"/>
<TableCell Name="Cell8" Border.Lines="All" Border.Color="LightGray" Text="[Products.UnitsInStock]" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 8pt"/>
</TableRow>
<TableRow Name="Row3">
<TableCell Name="Cell11" Border.Lines="All" Border.Color="LightGray" Fill.Color="LightGray" VertAlign="Center" Font="Tahoma, 8pt"/>
<TableCell Name="Cell12" Border.Lines="All" Border.Color="LightGray" Fill.Color="LightGray" Text="Total:" Padding="0, 0, 5, 0" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt"/>
<TableCell Name="Cell13" Border.Lines="All" Border.Color="LightGray" Fill.Color="LightGray" Text="[Sum(Cell8)]" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 8pt"/>
</TableRow>
</TableObject>
<TextObject Name="Text1" Left="500.85" Width="207.9" Height="56.7" CanGrow="true" Text="Почему не печатается таблица??
Переменная в Page Footer показывает что всего страниц 2 хотя видно что она всего одна...."/>
</ReportTitleBand>
<PageFooterBand Name="PageFooter2" Top="60.7" Width="718.2" Height="18.9">
<LineObject Name="Line2" Width="718.2" Border.Style="Double" Border.Width="3"/>
<TextObject Name="Text3" Left="623.7" Width="94.5" Height="18.9" Text="[PageNofM]" VertAlign="Center"/>
</PageFooterBand>
</ReportPage>
</Report>
Если поставить Эту страницу первой то таблица печатается, если остаить так как есть то не печатается...
И как сделать чтоб эта текстовка была полностью видна и не налезала на таблицу??
Код отчета:
<?xml version="1.0" encoding="utf-8"?>
<Report ScriptText="using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
using System.Data;
using FastReport;
using FastReport.Data;
using FastReport.Dialog;
using FastReport.Barcode;
using FastReport.Table;
using FastReport.Utils;
namespace FastReport
{
public class ReportScript
{
private void Table1_ManualBuild(object sender, EventArgs e)
{
// get the data source by its name
DataSourceBase rowData = Report.GetDataSource("Products");
// init the data source
rowData.Init();
// print the first table row - it is a header
Table1.PrintRow(0);
// each PrintRow call must be followed by either PrintColumn or PrintColumns call
// to print cells on the row
Table1.PrintColumns();
// now enumerate the data source and print the table body
while (rowData.HasMoreRows)
{
// print the table body
Table1.PrintRow(1);
Table1.PrintColumns();
// go next data source row
rowData.Next();
}
// print the last table row - it is a footer
Table1.PrintRow(2);
Table1.PrintColumns();
}
}
}
" TextQuality="Regular" ReportInfo.Description="Demonstrates how to print multiple Table rows with a script. To do this:
- select the Table object;
- go "Properties" window and click the "Events" button to view list of available events;
- doubleclick the "ManualBuild" event;
- you will see the empty event handler. You need to print rows using TableObject.PrintRow method; in each row, you must also print all columns (using PrintColumns method). See the script code for more details.
When you run a report, the Table will repeat a row and fill it with data." ReportInfo.Created="01/17/2008 20:40:24" ReportInfo.Modified="09/03/2008 22:43:42" ReportInfo.CreatorVersion="0.1.90.0">
<Dictionary>
<TableDataSource Name="Products" ReferenceName="NorthWind.Products">
<Column Name="ProductID" DataType="System.Int32"/>
<Column Name="ProductName" DataType="System.String"/>
<Column Name="SupplierID" DataType="System.Int32"/>
<Column Name="CategoryID" DataType="System.Int32"/>
<Column Name="QuantityPerUnit" DataType="System.String"/>
<Column Name="UnitPrice" DataType="System.Decimal"/>
<Column Name="UnitsInStock" DataType="System.Int16"/>
<Column Name="UnitsOnOrder" DataType="System.Int16"/>
<Column Name="ReorderLevel" DataType="System.Int16"/>
<Column Name="Discontinued" DataType="System.Boolean" BindableControl="CheckBox"/>
<Column Name="EAN13" DataType="System.String"/>
</TableDataSource>
</Dictionary>
<ReportPage Name="Page2">
<ReportTitleBand Name="ReportTitle2" Width="718.2" Height="37.8"/>
<PageHeaderBand Name="PageHeader1" Top="41.8" Width="718.2" Height="18.9">
<TextObject Name="Text5" Width="160.65" Height="18.9" Text="ProductName"/>
<TextObject Name="Text6" Left="160.65" Width="94.5" Height="18.9" Text="EAN13"/>
</PageHeaderBand>
<DataBand Name="Data1" Top="64.7" Width="718.2" Height="18.9" DataSource="Products">
<TextObject Name="Text4" Width="160.65" Height="18.9" Text="[Products.ProductName]"/>
<TextObject Name="Text3" Left="160.65" Width="94.5" Height="18.9" Text="[Products.EAN13]"/>
</DataBand>
<PageFooterBand Name="PageFooter2" Top="87.6" Width="718.2" Height="18.9"/>
</ReportPage>
<ReportPage Name="Page1">
<ReportTitleBand Name="ReportTitle1" Width="718.2" Height="103.95">
<TextObject Name="Text2" Width="718.2" Height="28.35" CanGrow="true" Text="Если поставить Эту страницу первой то таблица печатается, если остаить так как есть то не печатается...
И как сделать чтоб эта текстовка была полностью видна и не налезала на таблицу??" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 14pt, style=Bold"/>
<TableObject Name="Table1" Left="9.45" Top="28.35" Width="472.5" Height="56.7" ManualBuildEvent="Table1_ManualBuild">
<TableColumn Name="Column1" Width="245.7"/>
<TableColumn Name="Column2" Width="113.4"/>
<TableColumn Name="Column3" Width="113.4"/>
<TableRow Name="Row1">
<TableCell Name="Cell1" Border.Lines="All" Border.Color="LightGray" Fill="Glass" Fill.Color="LightGray" Fill.Blend="0.47" Fill.Hatch="false" Text="Product name" Padding="5, 0, 0, 0" VertAlign="Center" Font="Tahoma, 8pt, style=Bold"/>
<TableCell Name="Cell2" Border.Lines="All" Border.Color="LightGray" Fill="Glass" Fill.Color="LightGray" Fill.Blend="0.47" Fill.Hatch="false" Text="Unit price" Padding="0, 0, 5, 0" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt, style=Bold"/>
<TableCell Name="Cell3" Border.Lines="All" Border.Color="LightGray" Fill="Glass" Fill.Color="LightGray" Fill.Blend="0.47" Fill.Hatch="false" Text="Units in stock" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 8pt, style=Bold"/>
</TableRow>
<TableRow Name="Row2">
<TableCell Name="Cell6" Border.Lines="All" Border.Color="LightGray" Text="[Products.ProductName]" Padding="5, 0, 0, 0" VertAlign="Center" Font="Tahoma, 8pt"/>
<TableCell Name="Cell7" Border.Lines="All" Border.Color="LightGray" Text="[Products.UnitPrice]" Padding="0, 0, 5, 0" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt" Format="Currency" Format.UseLocale="true"/>
<TableCell Name="Cell8" Border.Lines="All" Border.Color="LightGray" Text="[Products.UnitsInStock]" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 8pt"/>
</TableRow>
<TableRow Name="Row3">
<TableCell Name="Cell11" Border.Lines="All" Border.Color="LightGray" Fill.Color="LightGray" VertAlign="Center" Font="Tahoma, 8pt"/>
<TableCell Name="Cell12" Border.Lines="All" Border.Color="LightGray" Fill.Color="LightGray" Text="Total:" Padding="0, 0, 5, 0" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt"/>
<TableCell Name="Cell13" Border.Lines="All" Border.Color="LightGray" Fill.Color="LightGray" Text="[Sum(Cell8)]" HorzAlign="Center" VertAlign="Center" Font="Tahoma, 8pt"/>
</TableRow>
</TableObject>
</ReportTitleBand>
<PageFooterBand Name="PageFooter1" Top="107.95" Width="718.2" Height="18.9">
<TextObject Name="Text1" Left="623.7" Width="94.5" Height="18.9" Text="[PageN]" HorzAlign="Right" VertAlign="Center" Font="Tahoma, 8pt"/>
</PageFooterBand>
</ReportPage>
</Report>
1. Таблица, по идее вторая колонка должна оставаться на 1 листе, т.к. входит в границы 1 листа.
Не входит, это только так кажется Если просуммировать ширину первых двух колонок и позицию таблицы на листе, получится, что вторая колонка на лист не помещается. 3.54см+3.54см+12см > 19см (размер печатной области)
написал:
2. Page Footer не появляется на последней страице, когда эти страницы создаются для размещения неумещающихся на одной странице объектов. в данном примере уже на второй странице нет футера.
Это поправил.
написал:
3. Линия расположенная в Page Footer должна быть двойной, хотя в этом текстовом поле двойная черта отображается нормельно.
Этот стиль используется только для рамок объектов типа "Текст". Линии и фигуры со стилем "двойная" не рисуются.
написал:
4. Хотелось бы иметь локализацию PageN PageNofM для русского языка, как вариант убрать из переменных текстовки и оставить только числа, чтобы аналог можно было делать таким образом (Страница №PageN) , (Страница PageN из TotalPages)
Это будет позже, пока локализации для русского языка нет.
написал:
5.Печатал предыдущий пункт, не понял как вводить текст заключенный в квадратные скобки
Надо либо отключить обработку выражений в тексте (св-во AllowExpressions у объекта "Текст"), либо указать другую пару символов, обозначающих выражения, в свойстве Brackets.
написал:
Почему не печатается таблица??
Поправил.
написал:
Если поставить Эту страницу первой то таблица печатается, если остаить так как есть то не печатается...
Поправил.
написал:
И как сделать чтоб эта текстовка была полностью видна и не налезала на таблицу??
Добавьте к ReportTitle дочерний бэнд (ChildBand) и разместите таблицу в нем.
Отлично..
На счет таблиц - в таком случае хотелось бы в свойствах Cell иметь возможность менять размеры ячейки, иначе точно отпозиционировать только при помощи дизайнера не получается..
Размеры столбцов/строк можно менять достаточно просто. Выделите строку/столбец (для этого курсор мыши поместите над столбцом или слева строки, он при этом меняет свою форму; либо выберите нужную строку/столбец в окне Report Tree) и поменяйте св-во Width (для столбца) или Height (для строки) в окне Properties.
Если в дезайнере выбрать текстовое поле (TextObject) и несколько раз сменить тип используемого шрифта, приложение выдает Unhandled excaption с сообщением вида: Font 'a' cannot be found, вместо символа "а" выдает и другие буквы.... баг проявляется во всех версиях
Комментарии
Обнаружили несколько ошибок:
1. Если подключать источник данных через Rep.RegisterData(List, ... ), где public class List: BindingList<System.Xml.XmlElement>, ITypedList, не отображаются поля типа Image (Bitmap) - хотя при Биндинге этого источника к любым объектом, отображающим DataSet, все нормально.
2. При подключении событий через инспектор свойств, собития слетают. В коде есть текс события, а в инспекторе нет, и соответственно потом эти события не обрабатываюся.
3. В редакторе кода Ctrl+C, Ctrl+V то работает, то нет закономерность не определии.
4. если загружать шаблон отчета динамически, не восстанавливаются, приходитс делать так
Самое неприятное, конечно п.1
1) можете прислать тестовое приложение? Я пробовал добавлять поле типа Image в бизнес-объект из демки, все работает.
2) поправил.
3) можете привести последовательность действий?
4) что именно "не восстанавливаются"?
При экспорте в PDF RichText как и в VCL будет выводиться картинкой?
А как же отчет "General|Mail merge"? Там RichText и все отображается.
RichText во всех экспортах будет в виде картинки.
аля гридВьюв.
При совпадении дефолтной даты с датой из источника - показывать пустое поле..
Это можно сделать с помощью скрипта. Вот пример из демки: на событие BeforePrint объекта Text4 повешен обработчик,
который "гасит" дату 19.02.1952:
отмеченная часть вставляется в скрипт автоматом, если перетянуть поле из окна DataDictionary в
скрипт.
"Будет ли реализованы дефолтные значения для полей с датами??
аля гридВьюв. "
Имейте в виду, что этот механизм зависит от региональных установок. Фактически внутри сравниваются строки:
if (expression_value.ToString() == HideValue) ...
Обнаружил баг: при вызове previewControl1.Clear(); не исчезает счетчик страниц в статус баре контрола.
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.
************** Текст исключения **************
System.IndexOutOfRangeException: Индекс находился вне границ массива.
в FastReport.Dock.DockPanelPersist.LoadFromXml(DockPanel dockPanel, Stream stream, DeserializeDockContent deserializeContent, Boolean closeStream)
в FastReport.Dock.DockPanel.LoadFromXml(Stream stream, DeserializeDockContent deserializeContent)
в FastReport.Preview.PreviewControl.fssUZ3ryY()
в FastReport.Preview.PreviewControl.doT2vZeoF()
в FastReport.Preview.PreviewControl..ctor()
в djeessxLgL9fwdc4UKn.GQY2hOxyfgaTkwVwWgA.wE2JpLnmq()
в djeessxLgL9fwdc4UKn.GQY2hOxyfgaTkwVwWgA..ctor()
в FastReport.Report.ShowPrepared(Boolean modal, Form mdiParent)
в FastReport.Report.Show()
в Demo.Form1.btnPreview_Click(Object sender, EventArgs e)
в System.Windows.Forms.Control.OnClick(EventArgs e)
в System.Windows.Forms.Button.OnClick(EventArgs e)
в System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
в System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
в System.Windows.Forms.Control.WndProc(Message& m)
в System.Windows.Forms.ButtonBase.WndProc(Message& m)
в System.Windows.Forms.Button.WndProc(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Загруженные сборки **************
mscorlib
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
Demo
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///P:/projects/Stroyform/FastReport/demo.exe
System.Windows.Forms
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
System
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
System.Drawing
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
FastReport
Версия сборки: 0.1.83.0
Версия Win32: 0.1.83.0
CodeBase: file:///P:/projects/Stroyform/FastReport/FastReport.DLL
System.Data
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
System.Xml
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
FastReport.Dock
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///P:/projects/Stroyform/FastReport/FastReport.Dock.DLL
System.Design
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Design/2.0.0.0__b03f5f7f11d50a3a/System.Design.dll
FastReport.Editor
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///P:/projects/Stroyform/FastReport/FastReport.Editor.DLL
System.Windows.Forms.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
System.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.resources/2.0.0.0_ru_b77a5c561934e089/System.resources.dll
tqkd_msb
Версия сборки: 0.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
mscorlib.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
wcj9juil
Версия сборки: 0.0.0.0
Версия Win32: 2.0.50727.1434 (REDBITS.050727-1400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.
Например:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
C:\Documents and Settings\Имя_юзера\Local Settings\Application Data\FastReport\
Исправил, свежая версия соберется через час.
Отправил. OS - Windows Vista
Можете вспомнить, что делали с окном превью? В конфиг какое-то странное состояние сохранилось.
2. Page Footer не появляется на последней страице, когда эти страницы создаются для размещения неумещающихся на одной странице объектов. в данном примере уже на второй странице нет футера.
3. Линия расположенная в Page Footer должна быть двойной, хотя в этом текстовом поле двойная черта отображается нормельно.
4. Хотелось бы иметь локализацию PageN PageNofM для русского языка, как вариант убрать из переменных текстовки и оставить только числа, чтобы аналог можно было делать таким образом (Страница №PageN) , (Страница PageN из TotalPages)
5.Печатал предыдущий пункт, не понял как вводить текст заключенный в квадратные скобки
Код отчета:
Почему не печатается таблица??
Переменная в Page Footer показывает что всего страниц 2 хотя видно что она всего одна....
Код отчета:
Если поставить Эту страницу первой то таблица печатается, если остаить так как есть то не печатается...
И как сделать чтоб эта текстовка была полностью видна и не налезала на таблицу??
Код отчета:
Отчеты также продублировал вам на почту...
Неделю меня не было на рабочем месте, завтра постараюсь все поправить.
Не входит, это только так кажется
Это поправил.
Этот стиль используется только для рамок объектов типа "Текст". Линии и фигуры со стилем "двойная" не рисуются.
Это будет позже, пока локализации для русского языка нет.
Надо либо отключить обработку выражений в тексте (св-во AllowExpressions у объекта "Текст"), либо указать другую пару символов, обозначающих выражения, в свойстве Brackets.
Поправил.
Поправил.
Добавьте к ReportTitle дочерний бэнд (ChildBand) и разместите таблицу в нем.
PS: Исправления будут доступны завтра.
На счет таблиц - в таком случае хотелось бы в свойствах Cell иметь возможность менять размеры ячейки, иначе точно отпозиционировать только при помощи дизайнера не получается..