Визуальная настройка Master-detail отчетов,с Ado.net источниками?
В дизайнере,почему то не обнаружил компонента TfrxDBDataset,почему?
Вижу только 3 компонента ADO...
Могу ли я с помощью дизайнера,установить связь между Master дата бендом и Detail дата бендом?
То есть,сделаю шаблон для своих datatable через TfrxDBDataSet ,определю связи,а из кода,заполню шаблоны данными.
Чтото,из примеров видно,что я в силу специфики,должен написать 1 класс-1отчет для своих Master Detail отчетов,не вижу в этом,ничего правильного.
вот этот блок1:основной код
вот этот блок2:основной код
в примере,используеться такой код,для управления отчетов Master Detail.
как видно из листинга Блок3 ,то логика под master detail прошита и в него.
помогите мне с пониманием,или же я все правильно понял?
мой опыт следующий,я умею передавать TfrxDataTable(унаследованный от DatATable) отчету и получать отчет с этим данными.
вопрос лишь в том,почему у меня появилось понимание о том,что создать master detail ,с данными из ADO.NET неимоверно трудоемко,как и поддержка этого механизма?
спасибо
Вижу только 3 компонента ADO...
Могу ли я с помощью дизайнера,установить связь между Master дата бендом и Detail дата бендом?
То есть,сделаю шаблон для своих datatable через TfrxDBDataSet ,определю связи,а из кода,заполню шаблоны данными.
Чтото,из примеров видно,что я в силу специфики,должен написать 1 класс-1отчет для своих Master Detail отчетов,не вижу в этом,ничего правильного.
вот этот блок1:основной код
// These events used for Master/Detail implementation
datatable.FrxEventOnFirst += new FrxOnFirst(datatable_FrxEventHandler);
datatable.FrxEventOnNext += new FrxOnNext(datatable_FrxEventHandler);
datatable.FrxEventOnPrior += new FrxOnPrior(datatable_FrxEventHandler);
вот этот блок2:основной код
private void datatable_FrxEventHandler()
{
object id;
datatable.OnGetValueHandler("id", out id);
dataview.RowFilter = string.Format("id = {0}", id );
}
и самый не перевариемый блок3: из класса FrxDataTable
public void OnGetValueHandler(object VarName, out object Val)
{
if(m_ChildTable == null)
{
Val = Rows[nItem][VarName.ToString()];
}
else
{
Val = m_ChildTable.Rows[nItem][VarName.ToString()];
}
// FastReport does not know about System.Decimal object type
// so convert it to Integer
if ( Val is Decimal )
{
Val = Decimal.ToInt32( (Decimal) Val );
}
}
в примере,используеться такой код,для управления отчетов Master Detail.
как видно из листинга Блок3 ,то логика под master detail прошита и в него.
помогите мне с пониманием,или же я все правильно понял?
мой опыт следующий,я умею передавать TfrxDataTable(унаследованный от DatATable) отчету и получать отчет с этим данными.
вопрос лишь в том,почему у меня появилось понимание о том,что создать master detail ,с данными из ADO.NET неимоверно трудоемко,как и поддержка этого механизма?
спасибо
Комментарии