Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Niki am August 25, 2014, 07:14:56

Titel: DomAnzahl
Beitrag von: Niki am August 25, 2014, 07:14:56
Hallo, ich komme einfach nicht weiter....

Ich hab hier zwei Abfragen, bei denen ich mittlerweile vermute, dass nur zwei Kriterien in einer DomAnzahl benannt werden können.
Zwei Beispiele: (grouping, ist ein Kombinationsfeld, und OB,XS,XO und OO sind Einträge in der Tabelle)
=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = '" & [grouping] & "' AND [MARA-MSTAV]='OB';'XS';'XO';'OO'")

hier auch, grouping ist ein Kombifeld und in MARD-LABST und MAKS-KALAB soll geschaut werden ob in den Feldern ein Lagerbestand ist:
=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = '" & [grouping] & "' AND [MARD-LABST] >=0 AND [MSKA-KALAB] >=0 ")

Ich dank euch jetzt schon für eure Hilfe.
Titel: Re: DomAnzahl
Beitrag von: Jonny am August 25, 2014, 10:32:09
Hallo Niki,
ich verstehe nicht weshalb die Abfrage mit Gruppierung hast wenn du die anzahl von DS mit DomAnzahl machen möchtest.
Entweder nimmst du Gruppen und hast dann bei den entsprechenden Feld die Funktion Anzahl statt Gruppierung oder du hast einen normale Abfrage und machst da dein DomAnzahl. Die Kriterien bei Dom.. können auch mehrere sein die mit und oder oder verbunden werden.

Gruß
Johann
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 10:38:23
In dem Kombifeld (grouping) wird erst ein Mitarbeiter ausgewählt und dann in den Abfragen, wie viel Datensätze der Mitarbeiter hat. Also z.B. bei wie viel Datensätzen ein Lagerbestand ist, oder der Datensatz 'XO, XS, OB, oder OO' enthält...
Titel: Re: DomAnzahl
Beitrag von: database am August 25, 2014, 10:39:23
Hallo,

wenn [VBPA-PERNR_ZM] ein Zahlenfeld in der Tabelle darstellt und das Kombi so aufgebaut ist, dass die gebundene Spalte die ID der Herkunftstabelle ist:

=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = " & Forms!DeinFormular!grouping & " AND [MARD-LABST] >=0 AND [MSKA-KALAB] >=0 ")

Wenn sich die Formel für die DomAnzahl in einem Steuerelement am aktuellen Formular befindet und obige Konfig zutrifft:

=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = " & Me.grouping & " AND [MARD-LABST] >=0 AND [MSKA-KALAB] >=0 ")
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 10:51:19
Ok, das Me und das grouping setzt er mir Automatik in eckige Klammern und gibt mir den Fehler #Name? aus:

=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = '" & [Me].[grouping] & "' AND [MARD-LABST] >=0 AND [MSKA-KALAB] >=0 ")
Titel: Re: DomAnzahl
Beitrag von: MzKlMu am August 25, 2014, 11:00:32
Hallo,
Me kann als Bezug in einer Steuerelementformel nicht verwendet werden. Me. ist VBA.
Titel: Re: DomAnzahl
Beitrag von: DF6GL am August 25, 2014, 11:13:50
Hallo,

zur völligen Ver(w)irrung  ;) :D 8)

=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = '" & [grouping] & "' AND [MARA-MSTAV]='OB';'XS';'XO';'OO'")

Das Tabellenfeld "VBPA-PERNR_ZM" muss hier den Datentyp "TEXT" aufweisen und das Kombifeld ("grouping") muss sich im selben Formular befinden (und wie schon angedeutet, die entspr. Daten in seiner gebundenen Spalte enthalten).

Der Teilausdruck
Zitat[MARA-MSTAV]='OB';'XS';'XO';'OO'   

ist syntaktisch und logisch falsch, er müßte so lauten:
..  [MARA-MSTAV] In ('OB','XS','XO','OO')  ...
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 11:21:17
Herzlichen Dank!
Es funktioniert, aber jetzt hab ich noch das Problem mit
[MARD-LABST] >=0 AND [MSKA-KALAB] >=0 ")
Titel: Re: DomAnzahl
Beitrag von: DF6GL am August 25, 2014, 11:30:33
Hallo,

und welches?

Syntaktisch ist der Ausdruck ok.

Sofern die Tabellenfelder richtig geschrieben sind und von Datentyp ZAHL sind .. 
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 11:41:13
Ich bekomme eine Ausgabe, aber er gibt mir dann alle Datensätze aus, die der jeweilige Mitarbeiter hat und nicht nur die, die mehr Lagerbestand als 0 haben.
Titel: Re: DomAnzahl
Beitrag von: DF6GL am August 25, 2014, 11:48:49
Hallo,

wenn "größer als 0" gefordert ist, dann darf  doch nicht "größer als und gleich wie" angegeben werden....

... AND [MARD-LABST] >0 AND [MSKA-KALAB] >0  ...
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 12:04:54
Wenn ich ....AND [MARD-LABST] >0 AND [MSKA-KALAB] >0..  eingebe, dann bekomme ich immer 0 ausgegeben.
>:(
Titel: Re: DomAnzahl
Beitrag von: DF6GL am August 25, 2014, 12:24:25
Hallo,

tja..., ich kenne die Daten-Hintergründe nicht...Gibt es denn Daten(sätze), auf denen die angegebenen Bedingungen zutreffen?
Titel: Re: DomAnzahl
Beitrag von: database am August 25, 2014, 12:47:35
Hallo,

und was passiert wenn du

....AND [MARD-LABST] >0 OR [MSKA-KALAB] >0...

verwendest? 
Titel: Re: DomAnzahl
Beitrag von: DF6GL am August 25, 2014, 13:08:06
Hallo,

dann aber die Klammern nicht vergessen...

... AND ( [MARD-LABST] >0 OR [MSKA-KALAB] >0 ) ...
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 13:08:52
Ja, es gibt in beiden Spalten 0 Werte und Werte über 0.
Ich hab die Tabelle mal als Excel-Datei angehängt.
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 13:13:03
Juchu, Ihr seit so gut!!!
Die Kammer hat mir gefehlt!

Also mit:
... AND ( [MARD-LABST] >0 OR [MSKA-KALAB] >0 ) ...
funktioniert es.

Ganz Lieben Dank an euch!!!
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 13:17:59
Ich hätte da noch eine Frage.
Wenn ich noch die Datensätze ausgeben will, in denen ein Eintrag ist (Textfeld)?
Da hab ich den Code, der aber auch nicht richtig ist.

=DomAnzahl("*";"T_ZSDR0100";"[VBPA-PERNR_ZM] = '" & [grouping] & "' AND [VBAK-LIFSK] ='*' ")

Da bekomm ich immer nur 0 ausgegeben. :(
Titel: Re: DomAnzahl
Beitrag von: DF6GL am August 25, 2014, 13:22:24
Hallo,


oder evtl.

... AND [VBAK-LIFSK] > ''  ...



oder auch:

AND nz([VBAK-LIFSK],'') <> ''

(Achtung: Zwei Hochkommata, kein Gänsefuß)
Titel: Re: DomAnzahl
Beitrag von: Niki am August 25, 2014, 13:28:06
Super Danke!

Jetzt funktioniert glaube ich alles.

Danke für eure Hilfe!