Datenquelle von einem Projekt in ein anderes überführen

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von jan99.

    Datenquelle von einem Projekt in ein anderes überführen

    MoiN!

    zunächst hoffe, dass ich in diesem Strang richtig bin....

    Es geht darum das ich eine eigenständige Anwendung habe in der ein Grid ist mit Datenanbindung. Leider kann ich mich mich bei einem Teil der Dinge nicht mehr ganz erinnern, wie ich dieses dort reinbekommen habe.

    Nun soll das in eine andere Anwendung eingebaut werden. Die Controls und den Source habe ich rüberkopiert.

    Ich habe in der ursprünglichen Anwendung folgende Komponenten:



    Die #2 habe ich eingebunden. Aber bei der #1 scheitere ich. Ich weiß nicht mehr wie ich diese da eingestellt habe.

    Kann man die Definition irgendwie kopieren? Kann mich nicht erinnern irgendwie Tabellen oder ähnliches erstellt zu haben.

    Gruß Jan
    naja, du musst im anderen Projekt "P2" erst ein Dataset anlegen - vorzugsweise mit demselben Namen.
    Dann kannste die Tabelle mit C&P von einem ins andere kopieren.

    Wenn das geklappt hat, in P2 die BindingSource löschen - die wird nämlich nicht funzen.
    Weil zuerst muss das Dataset kopiert sein,
    danach kann man Bindingsources kopieren.
    Und danach kann man Controls kopieren.

    Nur in dieser Reihenfolge nehmen die Dinge ihre DataSource-Einstellungen mit.
    Moin!

    irgendwie komme ich noch nicht weiter!

    Ich habe das Binding und wollte da jetzt eine Quelle anlegen.



    Aber jetzt weiß ich nicht, was ich als nächstes nehemen soll.

    Eine eigenständige DB ist es nicht und über das Objekt



    ... danach sieht es mir auch nicht aus.

    Wenn ich das DataSet direkt einfüge in die Form, dann sieht es auch anders aus als im Ursprungsprojekt.





    Hier wird mir ja nur der nicht typisierte Dataset angeboten.

    ????

    Gruß Jan
    Moin!

    ich bin einmal wieder auf dieser Baustelle aktiv....

    Beim Befüllen der Tabelle bekomme ich folgende Fehlermeldung:



    Der Code an dieser Stelle lautet (Fehlerzeile 71 markiert):

    VB.NET-Quellcode

    1. Private Sub frm_GrundstDoku_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    2. With _Log
    3. .IsConsoleApp() ' ist eine Konsolenanwendung
    4. .LogFileFolder2UserTemp()
    5. .SpecialLogFileName = "EBL_GstkHistorie.log"
    6. .WriteOutputLog()
    7. .WriteReportHeader("EBL_GstkHistorie", Is2Append:=False)
    8. .Write_TimeStamp()
    9. .Crlf(2)
    10. End With
    11. 'zunächst werden alle AnzeigeControls ausgeblendet - hier auch die Funktion ControlPreview ggf. ergänzen
    12. pv_doc.Visible = False
    13. pv_pdf.Visible = False
    14. pv_txt.Visible = False
    15. pv_picture.Visible = False
    16. Dim arguments As String() = System.Environment.GetCommandLineArgs()
    17. Try
    18. ScanFiles(_Grundst_RootFolder)
    19. lbl_GrundStFolder.Text = "Grundstücksverzeichnis: " & _Grundst_RootFolder
    20. DateibezeichnungBindingSource.Sort = "FileName DESC" '<------ hier ist die Fehlermeldung
    21. DateibezeichnungBindingSource.Filter = "Namenskonvention = true"
    22. Catch ex As Exception
    23. MsgBox("unerwarteter Fehler in EBL_Ex2GrundDok > frm_GrundstDoku > frm_GrundstDoku_Load" & vbCrLf &
    24. ex.ToString, MsgBoxStyle.Critical, k_Title_ShowGrdstDoc)
    25. End Try
    26. ' Dialog in den Vordergrund bringen - wichtig für die Verbindung mit MapEdit
    27. Dim hWnd = FindWindow(Nothing, "EBL GSE Dokumenten-Historie")
    28. ' SetForegroundWindow(CType(hWnd, IntPtr))
    29. End Sub


    Die Funktion für das Befüllen ist ScanFiles
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Sub ScanFiles(ByVal Folder2Doku As String)
    2. _Log.Write("==== ScanFiles ====")
    3. _Log.Write("Folder2Doku:= " & Folder2Doku)
    4. With DocProperties
    5. 'Sperren der Controls für die Bearbeitung
    6. EnableStatusControls(False)
    7. ' Löschen des Grids
    8. .Clear()
    9. ' Create a list of parts.
    10. Dim ListOfFiles As New Dictionary(Of Date, String)
    11. Dim folders As New List(Of DirectoryInfo)
    12. Dim files As New List(Of FileInfo)
    13. Dim rootDirs = {New DirectoryInfo(Folder2Doku)} 'rootDirs enthält hier nur 1 Directory
    14. CollectFilesAndFolders(rootDirs, folders, files, "*.*")
    15. Dim culture As CultureInfo = New CultureInfo("de-DE")
    16. Dim CountNamensKonvention As Integer = 0
    17. Dim CountNameUnsortiert As Integer = 0
    18. Dim FileNameErr As String = "./."
    19. For i As Integer = 0 To files.Count - 1
    20. Dim row_doc As ArrayList = New ArrayList
    21. FileNameErr = "./."
    22. Try
    23. If files(i).Name.Length > 11 Then
    24. Dim StatusNamensKonvention As Boolean = False
    25. FileNameErr = files(i).Name
    26. Dim DatePart As String = files(i).Name.Substring(0, 10)
    27. Try
    28. Dim dt As DateTime = Date.ParseExact(DatePart, "yyyy-MM-dd", culture)
    29. StatusNamensKonvention = True
    30. CountNamensKonvention += 1
    31. Catch
    32. StatusNamensKonvention = False
    33. CountNameUnsortiert += 1
    34. End Try
    35. 'Befüllen der Tabelle
    36. Dim SubFolder As String = System.IO.Path.GetDirectoryName(files(i).FullName).Substring(_Grundst_RootFolder.Length)
    37. If SubFolder.Length > 0 Then
    38. If SubFolder.Substring(0, 1) = "\" Then
    39. SubFolder = "..." & SubFolder
    40. End If
    41. End If
    42. Dim FileData As New FileInfo(files(i).FullName)
    43. Dim Date_Create As Date = FileData.CreationTime
    44. Dim Date_LastEdit As Date = FileData.LastWriteTime
    45. .Dateibezeichnung.AddDateibezeichnungRow(files(i).Name, SubFolder, StatusNamensKonvention, Date_Create, Date_LastEdit)
    46. End If
    47. 'If row_doc.Count > 0 Then Control.Rows.Add(row_doc.ToArray)
    48. Catch ex As Exception
    49. '....
    50. End Try
    51. Next i
    52. '...
    53. End With
    54. End Sub



    Ich habe dann noch zwei Vergleich durchgeführt.





    ... finde aber keine Unterschiede und deshalb steht ich weiterhin auf dem Schlauch.

    Hat einer eine gute Idee?

    Jan