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 хотя видно что она всего одна....
Код отчета:
Если поставить Эту страницу первой то таблица печатается, если остаить так как есть то не печатается...
И как сделать чтоб эта текстовка была полностью видна и не налезала на таблицу??
Код отчета:
Отчеты также продублировал вам на почту...
Неделю меня не было на рабочем месте, завтра постараюсь все поправить.
Не входит, это только так кажется Если просуммировать ширину первых двух колонок и позицию таблицы на листе, получится, что вторая колонка на лист не помещается. 3.54см+3.54см+12см > 19см (размер печатной области)
Это поправил.
Этот стиль используется только для рамок объектов типа "Текст". Линии и фигуры со стилем "двойная" не рисуются.
Это будет позже, пока локализации для русского языка нет.
Надо либо отключить обработку выражений в тексте (св-во AllowExpressions у объекта "Текст"), либо указать другую пару символов, обозначающих выражения, в свойстве Brackets.
Поправил.
Поправил.
Добавьте к ReportTitle дочерний бэнд (ChildBand) и разместите таблицу в нем.
PS: Исправления будут доступны завтра.
На счет таблиц - в таком случае хотелось бы в свойствах Cell иметь возможность менять размеры ячейки, иначе точно отпозиционировать только при помощи дизайнера не получается..