Einzelnen Beitrag anzeigen

alphanumeric

Registriert seit: 9. Nov 2009
79 Beiträge
 
Delphi 2009 Enterprise
 
#11

Re: Rave Reports Mirror per Event Script

  Alt 11. Nov 2009, 16:26
hier mein constructor, der aufgerufen wird sobald die Form geöffnet wird.
Delphi-Quellcode:
begin


    adoConnectionString := adoConnectionString;

    raveSystem := TRvSystem.Create( self );
    raveProject := TRvProject.Create( self );
    ravePDFRender := TRvRenderPDF.Create( self );

    raveDataSetConnection_Auf := TRvDataSetConnection.Create( self );
    raveDataSetConnection_Pos := TRvDataSetConnection.Create( self );
    raveDataSetConnection_Technik := TRvDataSetConnection.Create( self );
    raveDataSetConnection_Design := TRvDataSetConnection.Create( self );
    raveDataSetConnection_Flg := TRvDataSetConnection.Create( self );
    raveDataSetConnection_VerAdr := TRvDataSetConnection.Create( self );
    raveDataSetConnection_RecAdr := TRvDataSetConnection.Create( self );
    raveDataSetConnection_TechPos := TRvDataSetConnection.Create( self );
    raveDataSetConnection_UeberTechPos := TRvDataSetConnection.Create( self );
    raveDataSetConnection_Revision := TRvDataSetConnection.Create( self );

    dataSet_Auf := TADODataSet.Create( self );
    dataSet_Pos := TADODataSet.Create( self );
    dataSet_Technik := TADODataSet.Create( self );
    dataSet_Design := TADODataSet.Create( self );
    dataSet_Flg := TADODataSet.Create( self );
    dataSet_VerAdr := TADODataSet.Create( self );
    dataSet_RecAdr := TADODataSet.Create( self );
    dataSet_RecLaen := TADODataSet.Create( self );
    dataSet_VerLaen := TADODataSet.Create( self );
    dataSet_E := TADODataSet.Create( self );
    dataSet_TechPos := TADODataSet.Create( self );
    dataSet_UeberTechPos := TADODataSet.Create( self );
    dataSet_Revision := TADODataSet.Create( self );

    raveProject.Engine := _raveSystem;
    raveProject.ProjectFile := '.\TestReport.rav';
    raveProject.StoreRAV := true;

     //DataSet-Auf
    raveDataSetConnection_Auf.DataSet := dataSet_Auf;
    raveDataSetConnection_Auf.Name := 'Auf';
    raveDataSetConnection_Auf.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_Auf.OnGetCols := raveDataSetConnection_AufGetCols;
    raveDataSetConnection_Auf.OnGetRow := raveDataSetConnection_AufGetRow;
    //Pos
    raveDataSetConnection_Pos.DataSet := dataSet_Pos;
    raveDataSetConnection_Pos.Name := 'Pos';
    raveDataSetConnection_Pos.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_Pos.OnGetCols := raveDataSetConnection_PosGetCols;
    raveDataSetConnection_Pos.OnGetRow := raveDataSetConnection_PosGetRow;

    //Technik
    raveDataSetConnection_Technik.DataSet := dataSet_Technik;
    raveDataSetConnection_Technik.Name := 'Technik';
    raveDataSetConnection_Technik.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_Technik.OnGetCols := raveDataSetConnection_TechnikGetCols;
    raveDataSetConnection_Technik.OnGetRow := raveDataSetConnection_TechnikGetRow;

    //
    raveDataSetConnection_Design.DataSet := dataSet_Design;
    raveDataSetConnection_Design.Name := 'Design';
    raveDataSetConnection_Design.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_Design.OnGetCols := raveDataSetConnection_DesignGetCols;
    raveDataSetConnection_Design.OnGetRow := raveDataSetConnection_DesignGetRow;

    //AufträgeFlg
    raveDataSetConnection_Flg.DataSet := dataSet_Flg;
    raveDataSetConnection_Flg.Name := 'Flg';
    raveDataSetConnection_Flg.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_Flg.OnGetCols := raveDataSetConnection_FlgGetCols;
    raveDataSetConnection_Flg.OnGetRow := raveDataSetConnection_FlgGetRow;

    raveDataSetConnection_VerAdr.DataSet := dataSet_VerAdr;
    raveDataSetConnection_VerAdr.Name := 'VerAdr';
    raveDataSetConnection_VerAdr.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_VerAdr.OnGetCols := raveDataSetConnection_VerAdrGetCols;
    raveDataSetConnection_VerAdr.OnGetRow := raveDataSetConnection_VerAdrGetRow;

    raveDataSetConnection_RecAdr.DataSet := dataSet_RecAdr;
    raveDataSetConnection_RecAdr.Name := 'RecAdr';
    raveDataSetConnection_RecAdr.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_RecAdr.OnGetCols := raveDataSetConnection_RecAdrGetCols;
    raveDataSetConnection_RecAdr.OnGetRow := raveDataSetConnection_RecAdrGetRow;

    raveDataSetConnection_TechPos.DataSet := dataSet_TechPos;
    raveDataSetConnection_TechPos.Name := 'TechPos';
    raveDataSetConnection_TechPos.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_TechPos.OnGetCols := raveDataSetConnection_TechPosGetCols;
    raveDataSetConnection_TechPos.OnGetRow := raveDataSetConnection_TechPosGetRow;

    raveDataSetConnection_UeberTechPos.DataSet := _dataSet_UeberTechPos;
    raveDataSetConnection_UeberTechPos.Name := 'UeberTechPos';
    raveDataSetConnection_UeberTechPos.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_UeberTechPos.OnGetCols := raveDataSetConnection_UeberTechPosGetCols;
    raveDataSetConnection_UeberTechPos.OnGetRow := raveDataSetConnection_UeberTechPosGetRow;
    
    raveDataSetConnection_Revision.DataSet := _dataSet_Revision;
    raveDataSetConnection_Revision.Name := 'Revision';
    raveDataSetConnection_Revision.RuntimeVisibility := rtDeveloper;
    raveDataSetConnection_Revision.OnGetCols := raveDataSetConnection_RevisionGetCols;
    raveDataSetConnection_Revision.OnGetRow := raveDataSetConnection_RevisionGetRow;
Hier die GetCols/GetRow:

Delphi-Quellcode:

procedure TForm_KundenauftragReport._raveDataSetConnection_AuftraegeVersandAdrGetCols(
  Connection: TRvCustomConnection);
begin
    raveDataSetConnection_VerAdr.DoGetCols;
    raveDataSetConnection_VerAdr.WriteField('ADR',dtString, 20, 'ADR','ADR');

end;


procedure TForm_KundenauftragReport._raveDataSetConnection_AuftraegeVersandAdrGetRow(
  Connection: TRvCustomConnection);
begin
    _raveDataSetConnection_VerAdr.DoGetRow;
    Adr();

Last but Not least, das Dataset befüllen:

Delphi-Quellcode:

        dataSet_Revision.Connection := adoConnection;
        dataSet_Revision.CommandText:= 'select * from Revision where nr=''xyz''';
        dataSet_Revision.Open();

Der ado connection string wird aus einer DLL übergeben. Im Prinzip werden dann Alle DataConnections initalisiert beim start, da ich ja nen Create constructor hab. Die Form wird letztendlich über eine Funktion aufgerufen, dort wo meine datasets befüllt werden, und anschließend kann ich den Rave Dialog per druck auf nen button öffnen und damit halt weitermachen. ich habs jetzt so eingestellt dass er den Dialog nicht zeigt sondern direkt nen Preview ausgibt.

Ist viel Tipperei, aber er hatte mit dem komponenten auf der oberfläche probleme, weswegen ich die sachen später erzeugen muss.

Gruß
  Mit Zitat antworten Zitat