Wie legt man eine dynamische Druckmenge mithilfe eines Datenbankfelds und eines Werts aus einem Datenerfassungsformular fest?
Frage
Jeder Datensatz hat eine Menge, aber ich möchte in einem Datenerfassungsformular zusätzliche Kopien pro Datensatz festlegen. Wie kann ich eine dynamische Druckmenge mithilfe eines Datenbankfelds und eines Werts aus dem Datenerfassungsformular einstellen?
Antwort
Das lässt sich mit etwas Skripting umsetzen, da es dafür keine direkte Möglichkeit gibt.
1. Erstellen Sie ein Off-Label-Objekt, das den Wert aufnehmen soll.
2. Verknüpfen Sie Ihr Textfeld oder ein anderes Formularelement, in das die Kit-Menge eingegeben wird, mit diesem Textfeld.
3. Gehen Sie zu Datei > Drucken und klicken Sie dann auf die Schaltfläche „Eigenschaften“ neben der Menge.
4. Ändern Sie die Optionen auf „Menge aus Datenquelle übernehmen“.
5. Wählen Sie die Option für die Datenquelle und ändern Sie den Typ auf VB Script.
6. Erstellen Sie den Ausdruck.
Field("TestDB.TestTable.Qty") + Int(Format.Objects("Text 9").Value)
Was ich hier gemacht habe: Ich habe ein Feld aus meiner Datenbank (in meinem Fall heißt es Qty) genommen und es zum Objektwert des Off-Label-Objekts (Text 9) addiert. Sie können den Skript-Assistenten nutzen, um diese Funktion mit den Vorlagenobjekten und den Datenbankfeldern zu erstellen. Ihre Funktion wird vermutlich anders aussehen, aber das Grundprinzip bleibt gleich.
Sie sollten das Int( ) im Skript beibehalten, sonst behandelt das Skript den Wert als Text und hängt die Werte einfach aneinander. Aus 12 + 1 würde dann 121 werden. Das ist eindeutig zu viel.
Weitere Informationen
Die Funktion hier addiert einen Wert zur Druckmenge. Der + Operator kann durch nahezu jeden anderen Operator ersetzt werden, um die Druckmenge per Skript anzupassen.