Zum Inhalt springen
  • 0

Freies Feld "BEK_FF.FELD1" im Auftrag "BEK" als Betreffzeile in Dokumenten (AN, RE, usw.) ausgeben


svenkraemer

Frage

Sehr geehrte Damen und Herren,

wir nutzen Vario seit kurzem in der Free Version. Bis dato haben wir mit LEXWARE gearbeitet. Auf unseren Rechnungen, Angeboten und anderen Auftragsdokumente haben wir unterhalb der Rechnungsnummer immer eine Art "Betreff" oder "Zusammenfassung" der Inhalte des Dokumenten/einen Namen für den Verkaufsauftrag wiedergegeben. Das "Betreff-Feld" wird über die Maske 2.1 Belege verwalten von dem Sachbearbeiter eingegeben.

Eine entsprechende Umsetzung haben wir über den Reportdesigner bereits hinbekommen, es hapert aktuell nur an der SQL-Abfrage. Es wird nicht die korrekte Betreffzeile zum entsprechend ausgewählten Beleg ausgegegeben.

Vorgehensweise:

  • Unter 2.1 Belegverwaltung wurde ein Freies Feld mit der Bezeichnung "Produkte/Leistung" als Datentyp Zeichenfeld angelegt. Dieses ist in der Datenbank-Tabelle "BEK_FF" unter "FELD1" vorhanden. 
  • Im Report-Designer ist eine Abfrage "BEK_FF_BETREFF" erstellt mir folgender Abfrage:
    select bek_ff.feld1                               
    from bek_ff          
    join bek on bek.belegschluessel = bek_ff.belegschluessel
    where bek.belegschluessel = :belegschluessel
  • Über "Daten anzeigen" wird die Tabelle BEK_FF ausgegeben mit der Spalte "FELD1", jedoch erscheint kein Inhalt und die SQL-Abfrage gibt eine Fehlermeldung zurück:
    "Folgende Fehler wurden beim Laden der Daten festgestellt: Keine Zuordnung für Parameter BEK_FF_BETREFF.belegschluessel gefunden"

Die Frage an dieser Stelle ist demnach: Wie lässt sich bei der SQL-Abfrage der Wert aus BEK_FF.FELD1 zu einem jeden Auftrag/Belege auslesen? Eine Zuweisung über die "ID" aus "BEK" und "BEK_FF" scheint mit nicht möglich, da die IDs in beiden Tabellen nicht gleich den zugehörigen Datensätzen entsprechen. Meine Vermutung geht dahin, dass die "where" Anweisung der entscheidende Fehler in der Abfrage ist.

Nachfolgend ein Screenshot von der Eingabe-Zeile am Beleg (2.1):

image.png.1b0f0134e14ff3a022ba236226e374c7.png

Hier ein Screenshot von einem Dokument-Kopf (PDF-Dokument, Angebot), welches die Angebotssnummer mit "Betreff"-Zeile trägt:

image.png.360e85275868c86d7dda58cd53e4b113.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

Empfohlene Beiträge

  • 0

Hallo @svenkraemer

 

Für die Abfrage (Query) auf die BEK_FF muss diese noch "Wissen" welches Feld von welchen Beleg es den holen/abfragen soll.

Dazu ist diese Zeile nötig:

where BEK_FF.BELEGSCHLUESSEL =:BELEGSCHLUESSEL

Komplett sieht das so aus:

select BEK_FF.Feld1                         
  from BEK_FF
  where BEK_FF.BELEGSCHLUESSEL =:BELEGSCHLUESSE

 

Wichtig ist das der MASTER gesetzt ist und die Zuordnung gemacht ist:

image.png

 

Hier ist zu achten das der Name der Abfrage (Query) und der UserName identisch sind, man kann die auch unterschiedlich nennen, dann muss man jedoch genau wissen was man macht, besser ist es die beiden Namen gleich zu halten.  

Der Master ist auf Kopg:Fuss gesetzt in dieser Abfrage befindet sich ein Belegschluessel, man könnte auch auf die Abfrage BELEGNR gehen darin ist ebenfalls der Belegschluessel. 

 

Um jetzt noch einen Satz / Wort abhängig von der Belegart auszugeben geht man am besten in das MEMO Feld und fragt darin ab:

[IIF(<Kopf_Fuss."BELEGART"> = '0100',BEK_FF.FELD1,'')]
[IIF(<Kopf_Fuss."BELEGART"> = '0200',BEK_FF.FELD2,'')]
[IIF(<Kopf_Fuss."BELEGART"> = '0400',BEK_FF.FELD4,'')]
....
 

Das Memo Feld noch auf Dehnen stellen:

 

image.png

 

Und eine Leerzeilen Unterdrückung einfügen:

 

image.png

 

 Memo75.Text := vLeerzeilenUnterdruecken(Memo75.Text);

 

(Natürlich mit der richtigen/Ihrer Nummer des Memofeld.) 

 

Gruß 

Andreas Zweimüller 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Diese Frage beantworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...