Announcement

Collapse
No announcement yet.

(invalid) anstatt Daten :(

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • (invalid) anstatt Daten :(

    Hallo,

    ich habe einen Report mittels direkter Database Connection erstellt und erfolgreich getestet. Jetzt habe ich diese durch DirectDataViews ersetzt und im aufrufenden Formular fein säuberlich zwei RvDataSetConnection etc. erstellt. Das ADO SQL DataSet (MS Access DB) weise ich ihnen zur Laufzeit zu. In den jeweiligen Datasets ist auch wirklich etwas drinne, was ich mir vorher per Grid anzeigen lasse. Leider sehe ich in meiner Report Preview aber nur (invalid) bei allen Datenfeldern.
    Habe schon mehrere Male alle Felder / Bänder auf korrekte DataViews überprüft etc. aber nichts hilft.
    Auch den Refresh habe ich schon probiert, leider ohne Erfolg. Hat jemand eine Idee?

    Hier noch der Aufruf von Rave:

    Code:
     case iReportID of
        cReportProvider.REP_SINGLE_ITEM_JOURNAL:
          begin
            sSQL1 := 'SELECT * FROM tmp_rep_ArtikeljournalKopf';
            sSQL2 := 'SELECT * FROM tmp_rep_ArtikeljournalZeile';
            sProjectName := 'REP_Artikeljournal.rav';
            sReportName := 'Report1';
          end;
      end;
      if sSQL1 <> '' then
        DataSource1.DataSet := cDBProvider.GetSQLDataset(sSQL1, FALSE);
      if sSQL2<> '' then
        DataSource2.DataSet := cDBProvider.GetSQLDataset(sSQL2, FALSE);
    
      RichEdit1.Text := sSQL1;
      RichEdit2.Text := sSQL2;
      Label1.Caption := sProjectName;
      Label2.Caption := sReportName;
      RvDataSetConnection1.DataSet := DataSource1.DataSet;
      RvDataSetConnection2.DataSet := DataSource2.DataSet;
      RvProject1.SetProjectFile(sProjectName);
      RvProject1.Open;
      RvProject1.ExecuteReport(sReportName);
    Zuletzt editiert von Gast_1; 24.10.2007, 22:33.

  • #2
    Habe das Rätsel gelöst. Nach dem Öffnen des Projekts muss ich per Code nochmal die DataViews aktualisieren. Siehe auch dieser Link hier: http://www.nevrona.com/Default.aspx?tabid=97


    Code:
    [...]
      RvDataSetConnection1.DataSet := DataSource1.DataSet;
      RvDataSetConnection2.DataSet := DataSource2.DataSet;
      RvProject1.SetProjectFile(sProjectName);
      RvProject1.Open;
      Dataview := RvProject1.projMan.FindRaveComponent('DataView1',nil) as TRaveBaseDataView;
      CreateFields(DataView, nil, nil, true);
      Dataview := RvProject1.projMan.FindRaveComponent('DataView2',nil) as TRaveBaseDataView;
      CreateFields(DataView, nil, nil, true);
    [...]

    Comment

    Working...
    X