Hallo Forengemeinde,
ich habe für einen Freund ein kleines Accesstool gebastelt um Einkäufe von Gemüse zu erfassen.
Hier habe ich damals ein ja/nein Feld in eine Tabelle gestopft damit er eine Eigenschaft an- bzw. abwählen konnte. Von dieser Eigenschaft hängt eine Berechnung ab. Wenn ja dann rechne wenn nein dann nicht.
Nun möchten wir das Feld nicht mehr in der Tabelle sondern beim Lieferanten (Gemüsehändler) aufhängen.
Ich hätte nun versucht mit einer Beziehung das neue Feld mit der "alten" Tabelle zu verknüpfen.
Leider erhalte ich hier aber keinen richtigen Wert. Es wird immer 0 übergeben ...
Ein Beispiel:
Händler A (Gewerbe - steuerlich pauschaliert) - hier muss die VSt. ausgewiesen werden.
Händler B (Privatverkäufer) - hier muss keine VSt. ausgewiesen werden.
Das Kennzeichen (pauschaliert) wird jetzt in der Datenerfassung mit eingegeben. War bis dato halt so und hat nicht gestört ...
Leider passieren immer wieder Flüchtigkeitsfehler und der Flag wird irrtümlich gesetzt, oder vergessen. Darum die Idee diesen an den Lieferanten zu binden. Ich habe nun eine Beziehung erstellt zwischen dem Feld beim Lieferanten und einem neuen Feld bei den VK-Daten. Ohne irgendwelche Einstellungen.
Meine Idee war dass, wenn ich beim Lieferanten das Flag setze in den VK-Daten eine 1 übernommen wir und sonst halt eine 0. Leider funktioniert das so nicht ...
Kann mich hier jemand anleiten, wie ich das korrigieren kann? Optimal wäre es, wenn ich sogar was dabei lerne ;-)
Vielen Dank im Voraus für Eure Hilfe!
lG!
Hallo,
ohne Kenntnis der DB bzgl. des Tabellenaufbaus (Beziehungsfenster!) kann nur vorgeschlagen werden, das "Kennzeichen" (Ja/nein-Feld) mit Dlookup aus der entspr. Tabelle ("tblLieferanten") auszulesen und für die Berechnung weiter zu verwenden.
Hallo,
Händler A hat eine Steuernummer. Wenn du diese beim Lieferenten hinterlegst, kannst
du auf das Booleanfeld verzichten. Die Berechnung der VSt. erfolgt dann an Hand des
Kriteriums
SteuerNr Is (Not) NULL
gruss ekkehard
Hallo,
Gerne zeige ich mal meine Beziehungen :-)
Beziehungen.PNG
pauschaliertID in der tbl_Daten ist mein Neues Feld, Lief_pauschal in der tbl_Lieferant das feld am Lieferanten und pauschaliert in der tbl_Daten das bisher genutzte Feld. Ich hätte gerne wenn tbl_Lieferant|Lief_pauschal ist JA => tbl_Daten|pauschaliertID ist 1.
Wie das mit der Steuernummer genau funktioniert kann ich nicht sagen ist bei uns mit landwirtschaftlichen Pauschalierungen etwas anders, wie es scheint. Daher das ja/nein Feld.
Wie ist hier denn Eurer Meinung der schlauste Weg?
Danke für Eure Hilfe!
lG, Mirlacher
Zitatst bei uns mit landwirtschaftlichen Pauschalierungen etwas anders
Sorry, damit kenne ich mich nicht aus. Kann im Moment dann nicht weiterhelfen.
Da bräuchte ich mehr Infos.
Hallo,
tbl_Daten bedarf einiger Überarbeitungen...
Berechnete Werte werden nicht in Tabellen gespeichert, sondern nur dann und dort (neu) berechnet, wo sie gebraucht werden.
Händler A (Gewerbe - steuerlich pauschaliert) - hier muss die VSt. ausgewiesen werden.
Händler B (Privatverkäufer) - hier muss keine VSt. ausgewiesen werden.
Was heißt "ausgewiesen" ? in einem Rechnungsdruck oder Bestellausdruck?
Berechne den Preis auf diese Art zu B. in einem berechneten Feld in einer verknüpfenden Abfrage:
Betrag: Wenn([Lief_Pauschal] = 0; [Menge]*[Preis]; [Menge]*[Preis]*[Vst])
Dabei ist mir nicht klar, wie Menge, Tara, Nettogewicht usw. miteinander zusammenhängen
hallo Franz,
entschuldige die späte Antwort. Ich war jetzt leider eine Weile nicht vor dem Rechner.
Es handelt sich wie erwähnt um den Ankauf landwirtschaftlicher Produkte. Hier werden an den Verkäufer Ankaufsrechnungen ausgegeben. Je nachdem ob gewerblicher Verkäufer oder nicht gewerblicher Verkäufer mit, bzw. ohne VSt.
Menge ist die gelieferte Menge.
Tara ist das Verpackungsgewicht (Kübel, Holzsteige, etc.).
Nettogewicht ist das zu zahlende Gewicht.
Es handelt sich beim Nettogewicht um ein berechnetes Feld, ebenso wie beim VSTBetrag. Im Feld VST wird geprüft ob das Feld pauschaliert befüllt ist und wenn ja dann eben die VST berechnet ...
Du meinst ich soll die Berechnung in die Abfrage verschieben und die Felder in der Tabelle entfernen, oder wie darf ich das verstehen?
Sei mir bitte nicht böse für meine laienhafte Frage, aber ich bin von einem Accessprofi leider weit entfernt :)
Danke für deine Hilfe!
lG, Christian
Hallo,
ZitatDu meinst ich soll die Berechnung in die Abfrage verschieben und die Felder in der Tabelle entfernen, oder wie darf ich das verstehen?
genau so...
"Tara" verstehe ich schon 8) , nur nicht "Menge" in Verbindung mit "NettoGewicht" etc.
Hallo Franz,
danke für die Anleitung. Ich habe das nun so gelöst und es funktioniert perfekt.
Die Begrifflichkeiten Menge, Tara, Nettogewicht habe ich so von Papieraufzeichnungen übernommen - war so gewollt ...
Danke für die Hilfe!
lG, Christian
Lieber Franz,
ev. könntest Du mir noch einen Tipp geben. Wir möchten, dass der Mitarbeiter vor Ort zwar neue Lieferanten erfassen kann, jedoch das pauschaliert Kennzeichen nicht setzten kann.
Dies habe ich gelöst indem ich das Formular kopiert habe und das Kennzeichen im Formular entfernt habe.
Den Link zum Formular mit der Erfassungsmöglichkeit habe ich in den Adminbereich verschoben, der passwortgeschützt ist.
Besteht eine Möglichkeit die Lieferanten bei der Anlage so zu steuern, dass beide verschiedene Kreise von den Nummern her bilden? Im Moment habe ich eine LieferantenID vom Typ AutoWert, Inkrement, Indiziert ohne Duplikate.
Danke für deinen Input.
lG, Christian
PS: Ich möchte natürlich niemanden von Vorschlägen abhalten. Die Frage gilt natürlich für alle ;D
Hallo,
Zitat..dass beide..
welche "beiden" meinst Du? Die Formulare?
Wenn jedes Form für sich eine eigene Lieferantennummer generieren soll, dann geht das über den Autowert in der Tabelle nicht. Die Nummer muss über eine Prozedur mit entspr. Logik erzeugt und in ein separates Feld abgelegt werden.
Ich würde aber hier eher mit dem Usernamen als "Erfasser" arbeiten.
Hallo Franz,
Ja, ich meinte die beiden Formulare. Danke für die Info. Ich habe soetwas befürchtet :o
Wie komplex ist solch eine Prozedur und der Einbau dieser?
Der Username scheidet hier leider aus, da es nur einen User gibt. Es gibt lediglich einen durch ein Kennwort geschützten Bereich in der DB welcher das Formular zu Tagesabschluss, Warenanlage, pauschalierte Lieferantenanlage, usw. enthält.
Danke und lG, Christian
Hallo,
ZitatWie komplex ist solch eine Prozedur und der Einbau dieser?
wenn Du so fragst: ziemlich komplex ...
ZitatDer Username scheidet hier leider aus, da es nur einen User gibt. Es gibt lediglich einen durch ein Kennwort geschützten Bereich..
Wirklich?
Welchen tieferen Sinn hat denn da ein Passwort, das der einzige User sowieso dann kennen muss.?
@Mirlacher ZitatDies habe ich gelöst indem ich das Formular kopiert habe und das Kennzeichen im Formular entfernt habe.
Wozu? Anhand der Admineigenschaft des Users kannst du das Feld doch
einfach sperren.
(im Prinzip)
Me.DeinFeld.Enabled = User.IstAdmingruss ekkehard
Hallo Leute,
Sorry für die späte Antwort. jetzt hat mich leider Corona auch erwischt.
Danke für Eure Vorschläge. Ich belasse es einstweilen mal so. Es funktioniert ja alles
und wenn ich wieder mal Zeit habe gibt es noch Verbesserungsmöglichkeiten ;D
Danke für Eure Hilfe und bleibt gesund!
lG, Christian
PS: Wie kann ich den Thread als gelöst markieren? -Danke!
Danke an alle die geholfen haben!!!