• Es sind wieder ein paar schöne Fotobeiträge eingetrudelt. Schau sie dir doch einmal hier an und stimme für deinen Favoriten.

Software MS Access - Datensätze chronologisch sortiert zusammenfügen?

rowan
Benutzer39498  Planet-Liebe ist Startseite
  • #1
Hallo Computernerds,

ich würde gerne zwei Access (2007) Backends zusammenfügen. Es handelt sich dabei um Kodiersätze in Visual Basic, die auf ein gemeinsames Backend zurückgreifen. Ich habe Front- und Backend mit einem weiteren Backend (Medienbackend in dem Fall) per Tabellenverknüpfungsmanager zusammengefügt.

Nun würde ich gerne zwei Datensätze, einer der den 1.4.-31.5. beinhaltet und einer der den 1.6.-30.6. beinhaltet, in ein Backend zusammenfassen. Geht das überhaupt? Es muss alles chronologisch stimmen, aber da es konsekutive Zeiten sind, müsste DAS ja eigentlich nicht das Problem sein.

Kann ich einfach Datensätze kopieren und in einem anderen Backend einfügen?

Sorry, falls das 'ne total arbiträre Frage ist, ich benutze bei Access normalerweise nur die Oberfläche und tippe Daten ein, mit den tieferen Funktionsmechanismen habe ich mich noch nicht wirklich auseinandergesetzt... :ashamed:

Danke im Voraus,

TheDetroiter
 
Mark11
Benutzer106548  Team-Alumni
  • #2
'N Abend,

meinst Du wirklich, Deine Frage wäre "arbiträr"? Tsetsetse...

Was meinst Du mit "Datensatz"? Ein Datensatz ist eine "Zeile" in einer Datenbank-Tabelle, in einer Adress-Tabelle z.B. 1 Name mit Strasse, PLZ, Ort etc. Daher kann ein Datensatz nicht nach Datum sortiert sein. Meinst Du vielleicht 2 Tabellen, die Du, nach Datum sortiert, in eine überführen möchtest?
Dazu dient in SQL der UNION-Befehl. Den kannst Du in Access auch als Abfrage benutzen, sprich: Du mußt nicht codieren, sondern kannst den Abfrage-Designer verwenden.

Was das Ganze aber jetzt mit VB zu tun hat, verstehe ich nicht. Wieso ist VB-Code im Back-End?

Mark11
 
rowan
Benutzer39498  Planet-Liebe ist Startseite
  • Themenstarter
  • #3
'N Abend,

meinst Du wirklich, Deine Frage wäre "arbiträr"? Tsetsetse...

Was meinst Du mit "Datensatz"? Ein Datensatz ist eine "Zeile" in einer Datenbank-Tabelle, in einer Adress-Tabelle z.B. 1 Name mit Strasse, PLZ, Ort etc. Daher kann ein Datensatz nicht nach Datum sortiert sein. Meinst Du vielleicht 2 Tabellen, die Du, nach Datum sortiert, in eine überführen möchtest?
Dazu dient in SQL der UNION-Befehl. Den kannst Du in Access auch als Abfrage benutzen, sprich: Du mußt nicht codieren, sondern kannst den Abfrage-Designer verwenden.

Was das Ganze aber jetzt mit VB zu tun hat, verstehe ich nicht. Wieso ist VB-Code im Back-End?

Mark11

Du, ich weiß ja nicht, was man mit Access eigentlich können sollte :grin:

Also, die Dateien enthalten jeweils ca. 500 Datensätze. Es geht um Medienkodierung, also da sind immer Medium, Titel, Journalist usw. - einige Felder zum anklicken, ein paar Drop-Down Menüs und ein paar Freifelder. Einer für Mai und einer für Juni. Die würde ich gerne in ein Backend packen. Geht das? :grin:

Das mit VB habe ich nur erwähnt - keine Ahnung obs da auch noch andere Access-Oberflächen gibt. Wo der VB Code ist, keine Ahnung. Ich schätze mal, im Frontend? :zwinker:
 
Mark11
Benutzer106548  Team-Alumni
  • #4
Hi,

ok, dann versuch ich's mal:
wenn ich es richtig verstehe, hast Du per Verknüpfung beide Tabellen in dem 2. Back-End.
Dort kannst Du jetzt eine neue Abfrage erstellen. Mach das mit dem Entwurfsdesigner.
Als ersten Schritt wählst Du beide Tabellen aus. Dann wählst Du die Art der Abfrage, die heißt "Anfügeabfrage". Nach der Auswahl der Art wirst Du noch gefragt, wie die neue Tabelle heißen soll. Vergib erstmal irgendeinen Namen ("tempABCD" oder so).
Markiere alle Felder der Tabellen, die erscheinen dann in dem unteren Grid.
Wenn Du willst, kannst Du beim Datum noch die Sortierung markieren.
Wenn beide Tabellen identische Felder haben, dann mußt Du nur noch auf "Ausführen" klicken (das rote Ausrufezeichen).
Jetzt müßtest Du alle Datensätze in der "tempABCD"-Tabelle haben. Diese mußt Du dann nur noch in das ursprüngliche Back-End kopieren (dort die vorhandenen Tabelle in "TabName_Alt" oder so umbenennen oder direkt löschen, wenn Alles ok ist) und auf den ursprünglichen Namen umbennenen (sonst funktionieren Formulare/Berichte im Front-End nicht).

Ich hoffe, Dir bißchen weiterhelfen zu können, ansonsten melde Dich nochmal.

Mark11

PS: Genauer kann ich Dir die Bezeichnungen bzw. den Workflow nicht nennen, da es von Version zu Version in Access teils deutliche Unterschiede gibt.
 
Subway
Benutzer54399  Planet-Liebe Berühmtheit
  • #5
Also ich weiß auch nicht so wirklich was du vor hast, dafür müsste man mal wissen wie die Datenbank aussieht und was du wo rein haben möchtest.

Zumindest über die Sortierung beim Datum brauchst du dir gar keine Sorgen machen, bei der Ausgabe kannst du nach einem Feld sortieren und wenn es ein Feld "Datum" gibt, dann kannst du auch danach sortieren. Es ist aber nicht wichtig, ob du etwas als erstes oder zweites in die Datenbank einträgst.

Wenn du eigentlich nur zwei Tabellen hast (die gleich aussehen!), dann müsste das theoretisch sogar mit copy&paste gehen!?
 
rowan
Benutzer39498  Planet-Liebe ist Startseite
  • Themenstarter
  • #6
Danke Jungs.
Das mit dem Datum ist schonmal gut zu wissen. Dazu auch die Frage: ich muss die Artikelnummer immer manuell vergeben. Die geraten dann ja aber durcheinander wenn ich nochmal nach Datum sortiere. Kann ich iiiiirgendwie hinkriegen, dass die dann automatisch wieder fortlaufend 'umgestellt' wird? Puh, sonst wirds nämlich echt ätzend.

Das mit den zwei Backends hat sich jetzt eh erstmal erledigt, da ich auf dem 2. Laptop nichtmal Front- und Backend verknüpfen konnte.

Hier mal ein Screenshot von der Art Dateneingabe, mit der ich arbeite:

http://farm7.static.flickr.com/6023/5923257595_e70d57f3b5_b.jpg

Hab' mal eben in die 'Datenblattansicht' geguckt, da sehe ich dann auch 'ne Art Tabelle für jeden Artikel.
Ich würde halt gerne alles in der richtigen Reihenfolge aben (inkl. fortlaufender Artikelnummern), weil sonst die Leute, die mit meinem Backend weiterarbeiten müssen, mich verfluchen :ashamed:
 
Subway
Benutzer54399  Planet-Liebe Berühmtheit
  • #7
Danke Jungs.
Das mit dem Datum ist schonmal gut zu wissen. Dazu auch die Frage: ich muss die Artikelnummer immer manuell vergeben. Die geraten dann ja aber durcheinander wenn ich nochmal nach Datum sortiere. Kann ich iiiiirgendwie hinkriegen, dass die dann automatisch wieder fortlaufend 'umgestellt' wird? Puh, sonst wirds nämlich echt ätzend.

[...]

Hab' mal eben in die 'Datenblattansicht' geguckt, da sehe ich dann auch 'ne Art Tabelle für jeden Artikel.
Ich würde halt gerne alles in der richtigen Reihenfolge aben (inkl. fortlaufender Artikelnummern), weil sonst die Leute, die mit meinem Backend weiterarbeiten müssen, mich verfluchen :ashamed:
Ich verstehe den Zusammenhang zwischen Datum und Artikelnummer nicht. Warum ist es denn wichtig, dass das Datum (welches denn?) irgendwie zur Artikelnummer passt?

Verfluchen würde ich dich übrigens mehr, wenn du auf einmal die Artikelnummern änderst. :zwinker: Kommt natürlich darauf an, wie man damit arbeitet.
Grundsätzlich kannst du natürlich jedes Feld nachträglich ändern.

Allerdings fürchte ich langsam, dass deine SQL-Kenntnisse dafür vielleicht nicht ausreichen. Je nach Größe und Struktur der Datenbank (die Eingabemaske hat mir jetzt nicht wirklich viel verraten) wäre vielleicht auch noch das ein oder andere Script nötig, damit man das schnell in eine Datenbank bekommt. Wobei ich eigentlich immer noch nicht weiß, was du eigentlich vor hast. :grin:
 
Mark11
Benutzer106548  Team-Alumni
  • #8
'N Abend,

ist doch 'was Schönes, wenn man seinen Beruf auch abends noch ausübt... :smile: (keine Bange, für Dich isses kostenlos :zwinker:)

Wenn ich mir die Maske so anschaue, hängen da doch mindestens 3 Tabellen hinter:
- Stammdaten des Beitrages (steht i.M. auf Datensatz 3851 von 3852)
- Thema (Datensatz 1 von1)
- Detailthema (Datensatz 1 von1)

Eine fortlaufende Artikelnummer kannst Du einstellen, wie man sieht, ist die Artikelnummer für diese eine Tabelle ja Primär-Schlüssel. Da kommt eh schonmal eine Meldung, wenn Du versuchst, eine Artikelnummer mehrfach zu vergeben (Access-Standard). Der Datentyp des Feldes "Artikelnummer" muß "AutoWert" sein. Öffne dazu die Tabelle im Entwurfsmodus. Bei "Datentyp" kannst Du dann eben "Autowert" in der Combobox auswählen. Da ich aber nicht soo viel mit Access arbeite, kann ich Dir nicht sagen, ob Du mecker von Access bekommst, wenn Du das nachträglich machst. Jedenfalls geht das nur für Zahl-Werte, aber das scheint ja zu passen in Deinem Fall.
Das Ergebnis wäre: bei jedem Datensatz, den Du neu eingibst, wird die Artikelnummer automatisch vergeben, nämlich immer um den Wert 1 höher als der bisher höchste. Du brauchst dann gar nicht mehr eine Artikelnummer eingeben, das macht die Maske dann automatisch (falls keine Programmierung dahinter steht und das Formular an die Tabelle gebunden ist).

Jetzt vergiß mal bitte die Begrifflichkeiten dieser Front-/Back-End-Geschichte und sag uns einfach, was für Dateien wo liegen und was da jeweils d'rin ist und was wohin soll.

Mark11
 
Manche Beiträge sind ausgeblendet. Bitte logge Dich ein, um alle Beiträge in diesem Thema anzuzeigen.
Oben
Heartbeat
Neue Beiträge
Anmelden
Registrieren