Visualizzazione dei risultati da 1 a 10 su 34

Hybrid View

  1. #1

    [vb.net] Interfacciamento con Report Manager

    Salve a tutti,
    ho installato Report Manager, e il programma per creare il "template" del report (report.rep) sembra abbastanza facile. Ora però rimane il problema di interfacciarlo con il mio programma.

    Ho già incluso nel mio programma l'ocx esterno e nella barra degli strumenti ho aggiunto "ReportManX Control". Arrivati a questo punto però mi sono bloccato.

    Purtroppo nelle documentazioni del sito non riesco a capirci molto, quacluno di voi ha qualche esempio da potermi mostrare giusto per capirne meglio il funzionamento? o magari non ho cercato bene io e c'è una mini guida che spiega tutto ottimamente?

    Vi ringrazio in anticipo,
    Neptune.
    "Estremamente originale e fantasioso" By darkiko;
    "allora sfiga crepuscolare mi sa che e' meglio di atmosfera serale" By NyXo;
    "per favore, già è difficile con lui" By fcaldera;
    "se lo apri te e invece di "amore" ci metti "lavoro", l'effetto è lo stesso" By fred84

  2. #2
    Meglio tardi che mai :-)

    caricare la libreria Microsoft ActiveX Data Objects 2.6 Library non la 2.8

    Public Shared Function ConvertToRecordset(inTable As DataTable) As ADODB.Recordset
    Dim result As New ADODB.Recordset()
    result.CursorLocation = ADODB.CursorLocationEnum.adUseClient


    Dim resultFields As ADODB.Fields = result.Fields
    Dim inColumns As System.Data.DataColumnCollection = inTable.Columns


    For Each inColumn As DataColumn In inColumns
    resultFields.Append(inColumn.ColumnName, TranslateType(inColumn.DataType), inColumn.MaxLength, IIf(inColumn.AllowDBNull, ADODB.FieldAttributeEnum.adFldIsNullable, ADODB.FieldAttributeEnum.adFldUnspecified), Nothing)
    Next


    result.Open(System.Reflection.Missing.Value, System.Reflection.Missing.Value, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic, 0)


    For Each dr As DataRow In inTable.Rows
    result.AddNew(System.Reflection.Missing.Value, System.Reflection.Missing.Value)


    For columnIndex As Integer = 0 To inColumns.Count - 1
    resultFields(columnIndex).Value = dr(columnIndex)
    Next
    Next


    Return result
    End Function


    Private Shared Function TranslateType(columnType As Type) As ADODB.DataTypeEnum
    Select Case columnType.UnderlyingSystemType.ToString()
    Case "System.Boolean"
    Return ADODB.DataTypeEnum.adBoolean


    Case "System.Byte"
    Return ADODB.DataTypeEnum.adUnsignedTinyInt


    Case "System.Char"
    Return ADODB.DataTypeEnum.adChar


    Case "System.DateTime"
    Return ADODB.DataTypeEnum.adDate


    Case "System.Decimal"
    Return ADODB.DataTypeEnum.adCurrency


    Case "System.Double"
    Return ADODB.DataTypeEnum.adDouble


    Case "System.Int16"
    Return ADODB.DataTypeEnum.adSmallInt


    Case "System.Int32"
    Return ADODB.DataTypeEnum.adInteger


    Case "System.Int64"
    Return ADODB.DataTypeEnum.adBigInt


    Case "System.SByte"
    Return ADODB.DataTypeEnum.adTinyInt


    Case "System.Single"
    Return ADODB.DataTypeEnum.adSingle


    Case "System.UInt16"
    Return ADODB.DataTypeEnum.adUnsignedSmallInt


    Case "System.UInt32"
    Return ADODB.DataTypeEnum.adUnsignedInt


    Case "System.UInt64"
    Return ADODB.DataTypeEnum.adUnsignedBigInt


    Case "System.String"
    Return ADODB.DataTypeEnum.adVarChar


    Case Else
    Return ADODB.DataTypeEnum.adVarChar
    End Select
    End Function


    Private Sub ToolStripButton1_Click_1(sender As System.Object, e As System.EventArgs) Handles ToolStripButton1.Click


    Dim blah
    blah = CreateObject("ReportMan.ReportManX")
    blah.FileName = App_Path() & "\Fattura.rep"
    blah.SetDatabaseConnectionString("DB", "PROVIDER=MSDataShape;Data PROVIDER=none;;;Jet OLEDBatabase Password=")
    blah.SetRecordSet("RPGG", ConvertToRecordset(Me.BTFSQLDataSet.T_Fatture))
    blah.SetRecordSet("RS2", ConvertToRecordset(Me.BTFSQLDataSet.T_FattDett))
    blah.Preview = True
    blah.ShowProgress = True
    blah.ShowPrintDialog = True
    blah.Title = "Fattura"
    Application.DoEvents()
    blah.Execute()
    Application.DoEvents()
    blah = Nothing
    End Sub

  3. #3
    codice:
    Microsoft ActiveX Data Objects 2.6 Library
    
        Public Shared Function ConvertToRecordset(inTable As DataTable) As ADODB.Recordset
            Dim result As New ADODB.Recordset()
            result.CursorLocation = ADODB.CursorLocationEnum.adUseClient
    
    
            Dim resultFields As ADODB.Fields = result.Fields
            Dim inColumns As System.Data.DataColumnCollection = inTable.Columns
    
    
            For Each inColumn As DataColumn In inColumns
                resultFields.Append(inColumn.ColumnName, TranslateType(inColumn.DataType), inColumn.MaxLength, IIf(inColumn.AllowDBNull, ADODB.FieldAttributeEnum.adFldIsNullable, ADODB.FieldAttributeEnum.adFldUnspecified), Nothing)
            Next
    
    
            result.Open(System.Reflection.Missing.Value, System.Reflection.Missing.Value, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic, 0)
    
    
            For Each dr As DataRow In inTable.Rows
                result.AddNew(System.Reflection.Missing.Value, System.Reflection.Missing.Value)
    
    
                For columnIndex As Integer = 0 To inColumns.Count - 1
                    resultFields(columnIndex).Value = dr(columnIndex)
                Next
            Next
    
    
            Return result
        End Function
    
    
        Private Shared Function TranslateType(columnType As Type) As ADODB.DataTypeEnum
            Select Case columnType.UnderlyingSystemType.ToString()
                Case "System.Boolean"
                    Return ADODB.DataTypeEnum.adBoolean
    
    
                Case "System.Byte"
                    Return ADODB.DataTypeEnum.adUnsignedTinyInt
    
    
                Case "System.Char"
                    Return ADODB.DataTypeEnum.adChar
    
    
                Case "System.DateTime"
                    Return ADODB.DataTypeEnum.adDate
    
    
                Case "System.Decimal"
                    Return ADODB.DataTypeEnum.adCurrency
    
    
                Case "System.Double"
                    Return ADODB.DataTypeEnum.adDouble
    
    
                Case "System.Int16"
                    Return ADODB.DataTypeEnum.adSmallInt
    
    
                Case "System.Int32"
                    Return ADODB.DataTypeEnum.adInteger
    
    
                Case "System.Int64"
                    Return ADODB.DataTypeEnum.adBigInt
    
    
                Case "System.SByte"
                    Return ADODB.DataTypeEnum.adTinyInt
    
    
                Case "System.Single"
                    Return ADODB.DataTypeEnum.adSingle
    
    
                Case "System.UInt16"
                    Return ADODB.DataTypeEnum.adUnsignedSmallInt
    
    
                Case "System.UInt32"
                    Return ADODB.DataTypeEnum.adUnsignedInt
    
    
                Case "System.UInt64"
                    Return ADODB.DataTypeEnum.adUnsignedBigInt
    
    
                Case "System.String"
                    Return ADODB.DataTypeEnum.adVarChar
    
    
                Case Else
                    Return ADODB.DataTypeEnum.adVarChar
            End Select
        End Function
    
    
        Private Sub ToolStripButton1_Click_1(sender As System.Object, e As System.EventArgs) Handles ToolStripButton1.Click
    
            Dim blah
            blah = CreateObject("ReportMan.ReportManX")
            blah.FileName = App_Path() & "\Fattura.rep"
            blah.SetDatabaseConnectionString("DB", "PROVIDER=MSDataShape;Data PROVIDER=none;;;Jet OLEDB:Database Password=")
            blah.SetRecordSet("RPGG", ConvertToRecordset(Me.BTFSQLDataSet.T_Fatture))
            blah.SetRecordSet("RS2", ConvertToRecordset(Me.BTFSQLDataSet.T_FattDett))
            blah.Preview = True
            blah.ShowProgress = True
            blah.ShowPrintDialog = True
            blah.Title = "Fattura"
            Application.DoEvents()
            blah.Execute()
            Application.DoEvents()
            blah = Nothing
        End Sub

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Scusa max66max ma non capisco il senso di questa tua richiesta in un thread del 2007 ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.