Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: boehnli01 am September 23, 2012, 14:01:09

Titel: Per Button auf ander Form mit gleichem Item
Beitrag von: boehnli01 am September 23, 2012, 14:01:09
Hallo zusammen - ich habe diese Prozedur für eine andere DB in access 2003 eingebaut, aber nun muss ich diese eine neue DB 2010 einbauen.
Ich erinnere mich das ich noch eine Einstellung (Activex ?) ändern muss damit das funktioniert, aber leider erinnere ich mich nicht mehr wie, bzw wo ich die Einstellung in access 2010 machen musse.

Kann mir da jemand helfen?



Const frm = "frm_ZGLLX03_prep_new"
 
  If Not CurrentProject.AllForms(frm).IsLoaded Then
    DoCmd.OpenForm frm
  End If
 
  Forms(frm).Recordset.FindFirst _
    BuildCriteria("ITEM", dbText, Me.ITEM) ' für ein Ganzzahlenfeld dbLong verwenden
     
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: boehnli01 am September 23, 2012, 16:03:28
Habe es gefunden - es war der Verweis auf die Microsoft DAO 3.6 Object Library im VBA-Editor (Extras/Verweise), aber leider funktioniert es immer nocht nicht. Jemand eine Idee ?
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: Beaker s.a. am September 23, 2012, 18:22:26
Hallo Cédric,
Hier
ZitatBuildCriteria("ITEM", dbText, Me.ITEM)
fehlt IMO der Vergleichsoperator
BuildCriteria("ITEM", dbText, "=" & Me.ITEM)
'oder
BuildCriteria("ITEM", dbText, "Like *" & Me.ITEM & "*")

hth
gruss ekkehard
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: DF6GL am September 24, 2012, 10:09:23
Hallo,

warum so umständlich?


Docmd.Openform "frm_ZGLLX03_prep_new",,,"[Item]= " & Me![Item]



reicht..

Wobei der Name "Item" als reserviertes Wort nicht verwendet werden sollte...
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: boehnli01 am September 29, 2012, 14:26:03
Danke DF6GL - ich erhalte die errormsg "Data type mismatch in criteria expression". Habe es ebefalls mit ITEM1 & ITEM probiert, aber erhalte die gleiche errormsg. Was muss ich ändern ? ITEM kommt übrigens ursprünglich von der gleichen Tabelle und kann nicht ein anderer Type sein.

Danke Beaker s.a - haben es mit deiner version probiert, aber hat auch nicht funktioniert. Aber hier ist etwas ganz komisches passiert. Die DB habe ich  noch in Access 2003 gebastelt (inkl dieser Prozedur) und habe nun mit Acces 2007 weiter entwickelt. Ich habe die Abfrage für "frm_ZGLLX03_prep_new"
geändert, bzw habe habe ich in der Abfrage ein zusätzliches Kriterium eingebaut. Mit Aenderung funktioniert es nicht und wenn ich es wieder auf Original zurückstelle funktioniert es wieder. Sehr Komisch.

Im voraus danke für die Hilfe.

Gruss Cédric  
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: DF6GL am September 29, 2012, 15:50:36
Hallo,


der Datentyp ist hier (von mir) als Zahl,Long angenommen (was "Item" assoziiert)  und das sehr wahscheinlich nicht zutrifft.


Vermutlich handelt es sich um "Text", so dass es lauten muss:

Docmd.Openform "frm_ZGLLX03_prep_new",,,"[Item]= '" & Me![Item] &"'"



Nochmal:     Es ist dringend(!!) angeraten, reservierte Wörter für Feldnamen zu vermeiden.



"in der Abfrage ein zusätzliches Kriterium eingebaut....funktioniert ...   nicht "

Wie lautet denn die SQL-der Abfrage?



Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: boehnli01 am September 30, 2012, 16:39:20
Passt genau - Danke.

Wie würde es aussehen wen ich zwei Kriterien haben, z.b. Item und Batch.

Was meinst du mit reservierten Wörter? Wird Item von VBA für etwas andere gebraucht ?
ZitatNochmal:     Es ist dringend(!!) angeraten, reservierte Wörter für Feldnamen zu vermeiden.

Habe auch das Problem der anderen Prozedur gefunden... Ueberlegungsfehler.
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: DF6GL am September 30, 2012, 22:26:55
Hallo,

"Wird Item von VBA für etwas andere gebraucht ?"

in der Tat..

http://office.microsoft.com/de-de/access-help/reservierte-worter-und-symbole-in-access-2007-HA010030643.aspx

Dort steht zwar "Item" nicht explizit drin, "Item" wird aber bei vielen Aufzählungen als Eigenschaft verwendet.



"zwei Kriterien haben, z.b. Item und Batch"


Docmd.Openform "frm_ZGLLX03_prep_new",,,"[Item]= '" & Me![Item] &"' and [Batch] = " & Me![Batch]    '  Datentyp "Batch": Zahl, Long

Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: boehnli01 am November 18, 2012, 21:38:16
Hallo DF6GL

Ich habe deinen Befehl in einem anderen Formular probiert das ebenfalls mit 2 Kriterien geöffnet werden muss (beide Textfelder)
und erhalte eine data mismatch error msg.

DoCmd.OpenForm "F_Multible_Process_Orders", , , "[SO]='" & Me![SO] & "'" And "[SOITEM]='" & Me![SOITEM] & "'"

Kann mir jemand sage was falsch ist.

Danke Cédric
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: DF6GL am November 18, 2012, 22:54:32
Hallo,

da wird dann wohl auch ein "data mismatch" vorliegen...


In Deinem Code müss(t)en die Tabellenfelder "SO" und SOITEM" beide den Datentyp TEXT  aufweisen, wenn der Code funktionieren soll..

Siehe auch mein vorangeganges Posting bzgl. "Batch"
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: Beaker s.a. am November 19, 2012, 20:50:31
Hallo Cédric,
Da sind zwei " zuviel (eins vor dem And und eins danach)
DoCmd.OpenForm "F_Multible_Process_Orders", , , "[SO]='" & Me![SO] & "' And [SOITEM]='" & Me![SOITEM] & "'"

gruss ekkehard
Titel: Re: Per Button auf ander Form mit gleichem Item
Beitrag von: boehnli01 am November 19, 2012, 21:07:23
Genau das wars - vielen dank.