Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Kombinationsfeld Auswahl > 65.535 Zeichen

Begonnen von RKSRInfo, September 24, 2012, 09:39:04

⏪ vorheriges - nächstes ⏩

RKSRInfo

Eine Tabelle hat mehr wie die 65000 Zeichen. Daher werden nicht alle Artikel angezeigt. Nun habe ich versucht durch eine Vorauswahl des ersten Zeichens die Auswahl einzuschränken, es klappt aber nicht.

Im Formular Kombinatsonsfeld bei Taste auf Feld "STeile-Nr":

    With Me![STeile-Nr]
        If Len(.Text) = 1 Then
            .RowSource = "SELECT Id, [Teile-Nr]" _
                        & " FROM Artikel" _
                       & " WHERE Left([STeile-Nr.],1) = '" & .Text & "'"
            .Dropdown
        End If
    End With


DF6GL

Hallo,

vermutlich meinst Du:  Eine Tabelle enthält mehr als xxx Datensätze...

Benutz besser das Kombifeld-Ereignis "Bei Änderung"  (Change )


Alternativ käme eine "abhängige Kombifelder"-Konstruktion in Betracht.

http://www.donkarl.com/?FAQ4.36




Weiterhin dringend angeraten:  Sonder- und Leerzeichen in Objektnamen vermeiden!
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

RKSRInfo

Ja ich meine natürlich eine Tabelle mit mehr als 65.000 Zeichen.

"Change" hat nichts gebracht.

"Abhänige Kombifelder" entfallen im Augenblick als Lösung.

Beaker s.a.

Hallo,
Also ich würde auch das Change-Ereignis verwenden, und
es dann so formulieren (ungetestet)
With Me![STeile-Nr]
        If Len(.Text) > 0 Then
            .RowSource = "SELECT Id, [Teile-Nr]" _
                        & " FROM Artikel" _
                        & " WHERE [Teile-Nr] LIKE '" & .Text & "*'"
            .Dropdown
        End If
    End With

So wird das Standardverhalten von Kombis nochmal nach-
gestellt; - es wird also nach jedem weiteren Zeichen die Aus-
wahl eingeschränkt.
hth
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

RKSRInfo

 ??? Hat so lieder nicht geklappt. Es wird in der Auswahl nichts angezeigt.
:) Weiss jemand eine Lösung?

bahasu

Hi ?,

Frage 1: Meinst Du Zeichen oder Datensätze (Deine Aussage zu Tabelle mit mehr als 65000 Zeichen)?
Frage 2: Funktioniert Deine Abfrage mit weniger Zeichen bzw. Datensätzen?
Frage 3: Kannst Du die Datenbank in komprimierter und gezippter Form als access2003-Datei hier zur Verfügung stellen?

Harald
Servus

oma

Hallo RKSR...,

ich habe bei einem ähnlichen Problem eine andere Lösung gestaltet. Ein Arzt muss eine Indikation aus einem Riesen ICD-Schlüssel (das sind die verschlüsselten Indikationen) auswählen.
Diese sind so gestaltet, dass mit einer Buchstaben-Zahl Kombination die verschiedenen Indikatioinen verschlüsselt werden (A43.0 Pulmonale Nokardiose;  S36.18 Verletzung: Gallengang)

Zur Auswahl habe ich ein Kombinationsfeld: Gruppe u. ein Listenfeld:  Indikationen gestaltet. Im ungebundenen Kombiffeld konnte mit:

SELECT Gruppe, Gruppenname FROM SchlüsselGruppen;

zunächst eine Indikationsgruppe ausgewählt werden. Die Tabelle Schlüsselgruppe enthält A--> Indikationsgruppe1, B--> Indikationsgruppe3 usw...


Mit dem Ereignis: "Nach Aktualisierung" des Kombifeldes:

Private Sub Gruppe_AfterUpdate()
   Me!Indikationen.RowSource = "SELECT * FROM SchlüsselIndikation WHERE ICD Like " & "'" & (Me!Gruppe) & "*'" & " ORDER BY SchlüsselIndikation.ICD"
End Sub


wird das Listefeld gefüllt uund zwar mit allen Indikationen der ausgewählten Gruppe aus der Tabelle Schlüsselindikationen.

Nun konnte im 2. Schritt im Listenfeld aus einer viel kleineren Anzahl von Indikationen im Listenfeld ausgewählt werden.

Musst mal prüfen, ob dieses Prinzip auch für Dich anwendbar ist.

Gruß Oma
nichts ist fertig!

RKSRInfo

Leider ist die Datei zu groß zum hochladen hier - 7MB. An diesem Beispiel kann man gut erkennen, dass die Auswahl bei 65535 Zeichen endet.
Andere Möglichkeit für die Datei?

So schaut es nun aus:

With Me![Einzelteil-Nr]

   If Len(.Text) > 0 Then
      .RowSource = "SELECT Id, [Teile-Nr]" _
              & " FROM Artikel_Test" _
              & " WHERE [Teile-Nr.] LIKE '" & .Text & "*'"
      .Dropdown
   End If

End With

DF6GL

Hallo,

ZitatFrage 1: Meinst Du Zeichen oder Datensätze (Deine Aussage zu Tabelle mit mehr als 65000 Zeichen)?


Was ist nun Sache?

Fall 1: Willst Du (viele) Zeichen (Buchstaben, Ziffern, etc) in EINER Spalte (Feld) des Kombifeldes anzeigen
oder
Fall2 : Willst Du (viele)  Datensätze (Tabellenzeilen) in der Kombifeldliste haben?


Wenn Du Fall 1 hast, dann kann ein Kombifeld grundsätzlich nicht mehr Zeichen in einer Spalte (Feld) anzeigen.

Wenn Du Fall 2 , dann könnte die Änderung der Einstellung unter "Optionen/Bearbeiten/Keine Listen..."  helfen.



Insgesamt (im Fall 2) ist es sinnvoll, die Anzahl Datensätze (wie gezeigt) drastisch einzuschränken.  
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

ebs17

Standarddatenherkunft vor Sucheingabe:
SELECT Id, [Teile-Nr] FROM Artikel_Test WHERE 1 = 0
Damit ist die Datenherkunft leer aber schlank und damit "darstellbar".

Erst nach einer bestimmten Anzahl von eingegebenen Zeichen und damit nach einer wirkungsvollen Datenmengenbegrenzung würde man die Datenherkunft scharf schalten - auch in 65.000 Zeilen würde ich eher nicht blättern wollen ...

With Me![Einzelteil-Nr]

   If Len(.Text) > 3 Then
      .RowSource = "SELECT Id, [Teile-Nr]" _
              & " FROM Artikel_Test" _
              & " WHERE [Teile-Nr.] LIKE '" & .Text & "*'"
      .Dropdown
   End If

End With


Aber gerade bei vielen Einzelteilen dürfte es in der Nummerierung eine Systematik geben, so dass man schnell zu einer getrennten Speicherung von atomaren Informationen aus dieser Nummerierung und damit zu abhängigen Kombifeldern kommen kann.


MfGA
ebs
Mit freundlichem Glück Auf!

Eberhard

RKSRInfo

 ;D Zu den Fragen von Franz:


Fall 1: Willst Du (viele) Zeichen (Buchstaben, Ziffern, etc) in EINER Spalte (Feld) des Kombifeldes anzeigen  --> 40 Zeichen

Fall2 : Willst Du (viele)  Datensätze (Tabellenzeilen) in der Kombifeldliste haben? --> Anzahl ist größer 65535 Datensätze aus der Tabelle Artikel_Test

Insgesamt (im Fall 2) ist es sinnvoll, die Anzahl Datensätze (wie gezeigt) drastisch einzuschränken.   --> Ja das möchte ich mit der Vorauswahl erreichen!

Vorschlag ebs17 integriert

Private Sub Einzelteil_Nr_Change()
With Me![Einzelteil-Nr]
   If Len(.Text) > 1 Then
      .RowSource = "SELECT Id, [Teile-Nr]" _
              & " FROM Artikel_Test" _
              & " WHERE [Teile-Nr.] LIKE '" & .Text & "*'"
      .Dropdown
   End If
End With
End Sub

Private Sub Einzelteil_Nr_AfterUpdate()
Me![Einzelteil-Nr].RowSource = "SELECT Id,[Teile-Nr] FROM Artikel_Test WHERE 1 = 0"
End Sub


:-[ Es werden keine Daten im Kombifeld "Einzelteil-Nr" angezeigt, siehe Anlage.





[Anhang gelöscht durch Administrator]

DF6GL

Hallo,


Private Sub Einzelteil_Nr_Change()
With Me![Einzelteil-Nr]
   If Len(.Text) > 1 Then     ' hier steht 3 bei ebs17, eben, um die DS dieffenzierter/drastischer einzuschränken...
      .RowSource = "SELECT Id, [Teile-Nr]"
              & " FROM Artikel_Test" _
              & " WHERE [Teile-Nr.] LIKE '" & .Text & "*'"
      .Dropdown
   End If
End With
End Sub

Private Sub Einzelteil_Nr_AfterUpdate()
Me![Einzelteil-Nr].RowSource = "SELECT Id,[Teile-Nr] FROM Artikel_Test WHERE 1 = 0"
End Sub



Was soll das? Natürlich werden dann keine DS (mehr) angezeigt , weil diese Where-Condition WHERE 1 = 0    genau dafür sorgt....
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

RKSRInfo

 :o Wie könnte es aussehen, dass was angezeigt wird. Gebe jetzt ja Zeichen vor, kommt trotzdem nichts ....  :'(

DF6GL

HAllo,

lad doch mal Deine DB hier hoch, gezippt und datenreduziert....

Sonst kommen wir nie zum Ende..
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

RKSRInfo

 :) Alles reduziert, es bleiben aber immer noch 4,5 MB. Hier kann ich das so nicht hochladen! Idee???  ???