Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

In Access Zähler mit Modul als Schleife einbinden

Frage Microsoft Microsoft Office

Mitglied: viking

viking (Level 1) - Jetzt verbinden

07.12.2010 um 11:34 Uhr, 6201 Aufrufe, 3 Kommentare

Hallo, ne kleine Frage an die Experten.
Bin bei Modulen, insbesondere Schleifen noch der absolute Laie, wäre daher schön, wenn ich es nachvollziehn könnte

Ich habe eine Access DB mit dem Namen Test.mdb Version 2003
In dieser habe ich eine Tabelle mit dem Namen Bestellpositionen, welche viele Felder hat.
Eines der Felder hat den Namen „Bestellnummer“, ist ein Textfeld und kommt öfters vor.
Dazu hat die Tabelle im Beispiel 3 weitere Felder mit den Feldnamen
Feld1 = Typ Double
Feld2 = Typ Datum
Feld3 = Typ Integer
Nun möchte ich mittels eines Moduls per Makro eine Tabelle „Bestellungen“ erzeugen lassen, welche die gleichen 4 Felder hat und zusätzlich ein Feld "Zaehler".
Das Feld Zähler soll sich pro Datensatz in Abhängigkeit zur Bestellnummer um 1 erhöhen.
Der "Zaehler" soll immer bei 1 beginnen.
Jedes Mal wenn ich das Modul starte soll die Tabelle „Bestellungen“ neu erzeugt werden.
Frage1:
Wie kann ich das am besten lösen?

Frage2:
Welche Datentypen bieten sich an um Fehler zu vermeiden?

Frage3:
Würde das auch klappen wenn die Tabelle „Bestellpositionen“ eine per ODBC verknüpfte Tabelle ist.
Was wäre dann da zu beachten?

Gruß viking
Mitglied: NetWolf
07.12.2010 um 22:35 Uhr
Moin Moin,

Eines der Felder hat den Namen „Bestellnummer“, ist ein Textfeld und kommt öfters vor.
Eine Tabelle sollte nur ein Feld mit der Bezeichnung "Bestellnummer" haben. Access würde doppelte Feldnamen auch nicht zulassen, daher dürfte das Feld auch nur einmal in der Tabelle vorkommen.
Der Feldtyp "Text" ist ungeeignet für eine "Bestell"- Nummer, der Typ "Zahl" wäre besser

Dazu hat die Tabelle im Beispiel 3 weitere Felder mit den Feldnamen
Feld1 = Typ Double
Feld2 = Typ Datum
Feld3 = Typ Integer
welchen Sinn machen Feldbezeichnungen (-Namen) Feld1, Feld2, Feld3 etc. pp. ?
Was ist denn dann Beispiel 1 und 2?
Die Feldtypen Double und Integer gibt es in Access-Tabellen nicht. Also welche Tabelle hast du eingebunden?

Nun möchte ich mittels eines Moduls per Makro eine Tabelle „Bestellungen“ erzeugen lassen,
warum?

Modul und Makro sind zwei Begriffe in Access, die nicht zusammen passen.
In einem Modul werden i.d.R. VBA Funktionen und Prozeduren programmiert. Makros sind wenig effektiv. Makros solle man schnell vergessen. Konzentriere dich auf VBA

welche die gleichen 4 Felder hat und zusätzlich ein Feld "Zaehler".
kein Problem, erstelle einfach eine Tabelle mit den Feldern

Das Feld Zähler soll sich pro Datensatz in Abhängigkeit zur Bestellnummer um 1 erhöhen.
ja, so was nennt man als Feldtyp "Autozähler"

Der "Zaehler" soll immer bei 1 beginnen.
ok, dafür kannst du dann eine entsprechende Abfrage erstellen

Jedes Mal wenn ich das Modul starte soll die Tabelle „Bestellungen“ neu erzeugt werden.
warum? ich würde die Tabelle leeren und den Zähler auf 1 zurücksetzen, dafür sind zwei Abfragen nötig, mehr nicht!

Frage1:
Wie kann ich das am besten lösen?
mit Abfragen und ein wenig VBA für den Aufruf

Frage2:
Welche Datentypen bieten sich an um Fehler zu vermeiden?
alle von Access unterstützten Datentypen. Man sollte den gesunden Menschenverstand walten lassen und einer PLZ z.B. keinen Datentyp "Datum" zuordnen.
Z.B. macht es auch keinen Sinn, einer Nummer einen Datentyp "Text" zuzuordnen.

Frage3:
Würde das auch klappen wenn die Tabelle „Bestellpositionen“ eine per ODBC verknüpfte Tabelle ist.
warum nicht? Diese Tabelle ist nur die datengebende Tabelle, also wird in diese nicht geschrieben, datentechnisch also ok.

Was wäre dann da zu beachten?
kommt drauf an....., aber wenn man noch nicht mal weiß um welchen Datenbanktyp es sich handelt

Grüße aus Rostock
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: viking
08.12.2010 um 00:00 Uhr
Hallo Netwolf,
ich glaube ich hab’s wahrscheinlich unklar formuliert.
Meine Datentabellen kommen alle von einer Oracle Datenbank, wobei ich als Treiber nicht den Standard Microsoft Treiber verwenden kann sondern auf die Oracle ODBC Treiber gehen muss.
Unter Win7 64 bit ist das der Oracle_11_2 11.02.00.01 oder aber eine ältere Version 9.02.00.00. bei Win XP
Die Datenbank stellt ein ERP System dar, welches in der Regel alphanummerisches Nummernverfahren auch für Bestellnummern hat.
Meine Bestelltabelle in der Oracel Datenbank hat über 256 Felder, oder besser gesagt Spalten.
Ich Beispiel wollte ich die Thematik jedoch auf 4 Felder bzw. Spalten begrenzen, damit auch ich verstehe wie ein Recordset aufzubauen ist, was mir die Anforderung mit dem Zaehler lösen sollte.
Mit geht es nicht darum Bestellungen oder Bestellpositionen zu erstellen, sondern vielmehr um die Auswertung mit dem Ziel in Abhängigkeit eines Wertes, im Beispiel Bestellnummer einen bei 1 beginnenden Zähler für alle Zeilen in welchen die gleiche Bestellummer steht einzubinden.
Unter den Begriffen „Double, Datum, Integer“ verstehe ich die Feldgröße des Felddatentyp Zahl.
Die zu erzeugende Tabelle „Bestellungen“ war von der Formulierung her dumm gewählt, da irreführend, hätte sie wohl besser Bestellpositionsanalyse nennen sollen.
Gruß viking
Bitte warten ..
Mitglied: NetWolf
08.12.2010 um 21:59 Uhr
Moin Moin,

da muss ich ja mal Biber zitieren:
".. dann soll dieser fachliche Bedarf bitteschön an die Oracle-Fuzzies gemailt werden und die legen die richtigen Indices an, basteln eventuell in der Mittagspause eine 10-Zeilen-Stored-Procedure und fackeln das Ganze auf dem Server ab."

Wie sieht es bei dir in der Firma aus?

Grüße aus Rostock
Wolfgang
(Netwolf)
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(1)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
ASUS RT-N18U mit VPN Client hinter Fritzbox - Portforwarding (15)

Frage von marshall75000 zum Thema Router & Routing ...

Microsoft Office
Saubere HTML aus Word-Dokument (15)

Frage von peterpa zum Thema Microsoft Office ...

Hosting & Housing
gelöst Webserver bei WIX, aber DNS Server wo anders (9)

Frage von laster zum Thema Hosting & Housing ...