Работа Fastreport .net

отредактировано 15:44 Раздел: FastReport .NET
Есть приложение с базой данных, вы водиться в GridControl
Как мне сделать чтоб при нажатии на кнопку в моем приложении в отчете вводились данные с текущей строки?

Если я делаю привязку Memo1,2,3,4,5,6 к базе ты выводится всегда первая запись из базы.

Пробую так:
Создаю экземпляр текущей строки и присваиваю из него всем Memo данные из этого экземпляра:
TextObject MemoKomy0 = MailReport.FindObject("MemoKomy0") as TextObject;
TextObject MemoKomy1 = MailReport.FindObject("MemoKomy1") as TextObject;
TextObject MemoKomy2 = MailReport.FindObject("MemoKomy2") as TextObject;
TextObject MemoKomy3 = MailReport.FindObject("MemoKomy3") as TextObject;
TextObject MemoKomy4 = MailReport.FindObject("MemoKomy4") as TextObject;

MemoKomy1.Text = 
MemoKomy2.Text = 
MemoKomy3.Text = 
MemoKomy4.Text =

Подскажите правильный вариант как делать? Если можно то маленький пример был бы к стате

Комментарии

  • отредактировано June 2011
    Прохожу по всем записям в таблице:
    var rowCurrent = (База_данныхDataSet.Таблица1Row)((DataRowView)таблица1BindingSource.Current).Row;
    
    TableDataSource ds = report1.GetDataSource("Таблица1") as TableDataSource;
                
    
    
                // открываем и заполняем
                ds.Init();
                // перебираем строки
                while (ds.HasMoreRows)
                {
                    // обращаемся к полю. Имя поля вставлено из окна "Данные"
                    if ((report1.GetColumnValue("Таблица1.Организация").ToString()) == rowCurrent.Организация)
                    {
    // Как тут указать что в отчет нужно вбить данные именно из этой строки(в которой нашли совпадение)?  
    // иначе создает отчет либо с первой записью из таблицы, либо со всеми записями многостроничный отчет (((
                        report1.Show();
                        return;
                    }
                    ds.Next();
                }
    


    Собственно хотелось узнать:
    // Как тут указать что в отчет нужно вбить данные именно из этой строки(в которой нашли совпадение)?
    // иначе создает отчет либо с первой записью из таблицы, либо со всеми записями многостроничный отчет (((
  • отредактировано 15:44
    Почему бы в отчет не передавать ID этой записи? Его можно использовать в запросе к базе, и тогда будет возвращаться единственная строка которая и нужна
  • отредактировано 15:44
    Andrew_A написал: »
    Почему бы в отчет не передавать ID этой записи? Его можно использовать в запросе к базе, и тогда будет возвращаться единственная строка которая и нужна
    Не могли бы привести пример как это сделать?
  • отредактировано November 2011
    Передача в отчет текста SQL

    Отчет может содержать источники данных, добавленные в "Мастере подключения к данным". Часто возникает необходимость передать в такой источник текст SQL, сформированный в приложении. Для этого используйте следующий код:

    using FastReport.Data;
     
    
    report1.Load(...); 
    
    // делаем это после загрузки отчета, перед его построением
    
    // находим таблицу по ее имени (алиасу)
    
    TableDataSource table = report1.GetDataSource("MyTable") as TableDataSource;
    
    table.SelectCommand = "новый текст SQL";
    
    report1.Show();
    

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.