Designer - Details

Alles über Formulare, deren Erstellung und deren eventueller Austausch

Moderator: SYNERPY

Antworten
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Designer - Details

Beitrag von Egon »

Hallo,
ich habe folgende Probleme:
0.) Ich habe das ganze schon einmal gepostet und keine Antwort erhalten. Deshalb formuliere ich das Ganze nochmal neu.
1.) Ich habe im Designer eine neue Query q_rep4 definiert und mit einer Abfarge gefüllt. Jetzt komme ich 'händisch', z.B. mit q_rep."Name" an die Felder ran. Die Query wird aber nicht in der Liste der DB-Felder im Designer angezeigt ? Gibt es da einen Trick ?
2.) Ich möchte in einer Stückliste alle Lieferanten zu einem Artikel drucken. Laut SQL-Anweisung (IB-Expert) stimmt meine Anfrage. Ich bekomme auf mittels des Designers für jede Stücklistenposition den richtigen ersten Lieferanten angezeigt. Aber halt nur einen !
Habe schon viele Kombinationen mit Bändern & Unterformularen probiert, aber es wird nicht besser. Hat jemand schon ähnliches hinbekommen.

Ich erwarte ja keine vollständige Antwort. Konstruktive Tipps helfen oft auch schon weiter.

Danke
Egon
Geri12
Beiträge: 589
Registriert: Mi Apr 16, 2008 7:51 am

Beitrag von Geri12 »

Hallo Egon,
hast Du in Deiner neuen q_rep4 auch die Eigenschaften .mastersource und .masterlinks (als Bezug zur q_rep1) gefüllt ?
Hast Du auf dem Band "Hauptdaten" die q_rep1 und auf einem Band "Detaildaten" die q_rep4 untergebracht ?
Auf welche View verweist q_rep1 bzw. q_rep4 ?

Gruß
Geri12
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Beitrag von Egon »

Moin Geri,
es geht um eine Erweiterung der Stückliste.
In meiner q_req4 habe ich auf die q_rep3 verwiesen.
In q_rep3 befinden sich der Artikel der Stücklistenposition.

Hier die Einstellungen meiner q_rep4:
Masterlink: BSAL.BSA_ID_LINKKEY=VC.BSA_ID_ARTNR
MasterSource: d_req3

Und mein SQL Statement:
SELECT A.*, B.ID,B.BADR_ID_ADRNR,C.NAME
FROM bsal A
LEFT OUTER JOIN blief B on (A.blief_id_liefnr=B.id)
LEFT OUTER JOIN badr C on (B.badr_id_adrnr = C.id)

Im Moment gebe ich dann folgende Felder in einem Detailband aus:
[q_rep4."NAME"], [q_rep4."LIEFARTNR"], [q_rep4."EKDATUM"], EUR [q_rep4."LISTPREIS"]

Es wird auch ein, der 1. Datensatz richtig ausgegeben. Es sollten aber alle Lieferanten für den Artikel aus der q_req3 ausgegeben werden.
Gebe ich mein SQL-Statement unter IBExpert ein, dann werden alle ausgegeben.

Merkwürdigerweise erscheint aich die q_rep4 micht in den Designer DB-Feldern.
Irgendwie ist da der Wurm drin !

Egon
Geri12
Beiträge: 589
Registriert: Mi Apr 16, 2008 7:51 am

Beitrag von Geri12 »

Hallo Egon,
ich kann Dir keine direkte Problemlösung bieten, arbeite mich nämlich gerade erst in die Erstellung eigener Ausdrucke ein. ( Fertige Drucke abändern ist was ganz anderes :wink: )

Wenn Du im Designer im Kontextmenü statt "Design Report" nun "Objektinspektor" auswählst und in diesem die Objekte durchscrollst, hast Du dann q_rep4, d_rep4, fr_rep4 mit allen Einträgen drinnen ?
Nachher im Designer, Menü "Datei", Menüpunkt "Variablenliste" -> wie sieht es dort mit Deiner q_rep4 bzgl. Datenquellen/Feldaliase/Variablen aus ? Der IBExpert verweist direkt auf die Tabellen und Views, der wird auf jeden Fall Daten anzeigen (wenn Daten vorhanden und die Abfrage korrekt ist). Der gilt hier leider nicht als Referenz :roll:

Ich gehe davon aus, dass Deine Hauptdaten aus q_rep1 im Hauptdatenband liegen und die Daten aus q_rep2 in einem Detaildatenband. In welchem Band (relativ zu den beiden vorgenannten) liegen die Daten aus q_rep3 ? Du willst weitere Unterdetaildaten aus der q_rep4 darstellen. Hast Du das mal in einem Unterformular versucht ? Dort aber daran denken, die entsprechende q_rep# erst zu initialisieren, z.B. mit "X := ['q_rep#.ID'];"

Gruß
Geri12
festus01
Beiträge: 515
Registriert: Di Okt 19, 2004 5:45 am
Wohnort: Diepholz

Re: Designer - Details

Beitrag von festus01 »

Hallo Egon,
nun mal ganz von vorn:
Egon hat geschrieben:Hallo,
1.) Ich habe im Designer eine neue Query q_rep4 definiert und mit einer Abfarge gefüllt. Jetzt komme ich 'händisch', z.B. mit q_rep."Name" an die Felder ran. Die Query wird aber nicht in der Liste der DB-Felder im Designer angezeigt ? Gibt es da einen Trick ?
haben Sie im Reportdesigner über "Datei, Variablenliste den entsprechenden Query
im Reiter Feldaliase und die Datenquelle im Reiter Datenquellen richtig zugewiesen :?:

Wenn ja, so sollte der Query wenigstens angezeigt werden.

Wird der Query angezeigt aber es fehlen die Felder, so ist die Abfrage bzw. die verlinkung fehlerhaft.

Also das erst mal prüfen und nochmal posten, dann werden wir auch das andere lösen :wink:
MfG

KDP

----------------------------------------------------------
Durch den Computer spart der Mensch so viel Zeit,
dass er diese am Computer verbringen kann.
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Beitrag von Egon »

Hallo Geri, Hallo Festus
also das mit Variablenliste klappt.
Die DB-Felder sind nun in der Liste und ich kann diese auch auswählen.

Meine Stücklistenpositionen (Artikel-ID,... liegen im Hauptdatenband und werden von der q_rep3 dargestellt, z.B. q_rep3."BSA_ARTBEZ".

Jetzt habe ich einen Detailkopf mit der Überschrift Lieferant,Bestllnummer,.. angelegt und ein Detaildatenband mit den Daten q_rep4."Name".

Wie beschrieben wird nur der 1. Lieferant für jede Stücklistenposition angezeigt, q_rep3."BSA_MASKENKEY".

Jetzt geht es hier nicht mehr weiter.

Egon
miboe
Beiträge: 1295
Registriert: Fr Jul 28, 2006 9:13 am

Beitrag von miboe »

Welche Datasource ist denn für das Detaildatenband eingetragen?
Nur wer das Unmögliche versucht, wird das Machbare erreichen!
--
Datenbank: 2012-A02
Programm: 4.2.5.65
OS: Win 7 Pro / Ubuntu 10.04.3
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Beitrag von Egon »

Hallo miboe,

langsam tummeln sich hier alle Spezialisten !
Danke !

Hier war wirklich die falsche Datasource eingetragen !
Nachdem ich hier die q_rep4 eingetragen habe, funktionierts !!

Jetzt wird der Report nach der ersten Seite abgebrochen, aber das müssen irgendwelche Randeffekte sein.

Hat jemand noch einen Geistesblitz ?
Die Seite endet jetzt direkt nach dem letzten Detaildatensatz.

Gruß
Egon
admin
Site Admin
Beiträge: 2673
Registriert: Di Feb 10, 2004 5:48 am
Wohnort: Bayreuth

Beitrag von admin »

Welche Band-Art kommt denn nach den Detaildatensätzen?

Wenn es ein Unterformular ist, wo wurde dieses als ChildBand zugewiesen?
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Beitrag von Egon »

Hallo Admin,

Aufbau von oben :
Ursprüngliches Formular: BSAS

Report Titel
Seitenkopf
Hauptkopf
Haupdaten
Detailkopf - dies ist neu
Detaildaten - dies ist neu
Hauptfuß
Seitenfuß

Problem:
Die erste Seite meine Liste wird richtig gedruckt.
Die erste Seite endet mit dem Detaildaten.
Auf der zweiten Seite wird nur noch der Reporttitel und der Seitenfuß gedruckt. Der Rest bleibt weiß.

Egon
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Beitrag von Egon »

Hallo,
noch ein kleiner Nachtrag:

Das Problem mit den fehlenden Seiten passiert nur, wenn ich im Detailband die Datasource auf q_rep4 setzte.
(Was nach den oberen Postings zwingend notwendig ist !)

Noch jemand eine Idee ?

Egon
admin
Site Admin
Beiträge: 2673
Registriert: Di Feb 10, 2004 5:48 am
Wohnort: Bayreuth

Beitrag von admin »

Senden Sie die RES-Datei doch mal an unsere info-Adresse mit Verweis auf das Forum. Danke.
admin
Site Admin
Beiträge: 2673
Registriert: Di Feb 10, 2004 5:48 am
Wohnort: Bayreuth

Beitrag von admin »

Danke für das Zusenden der Datei.
Ich verstehe aber nicht, wo das Problem ist. Der Ausdruck gibt alle Stücklistenpositionen aus, dazu jeweils die hinterlegten Lieferanten. Drucke ich bei einer Beispielstückliste bis Ebene 1, so werden 1,5 Seiten gedruckt, also richtig. Bei mehr Ebenen wird der Ausdruck auch länger.

Wo ist denn das Problem?
Egon
Beiträge: 58
Registriert: Di Feb 19, 2008 5:58 pm

Beitrag von Egon »

Hallo Admin,
danke für die Durchsicht.

Ich habe das Problem weiter eingrenzen können.

Es liegt nicht, wie ich erst dachte an dem Seitenumbruch !
(bei meinem Test, war es aber zufällig so !)
Sondern Positionen, bei denen kein Preis & Lieferant hinterlegt ist, werden nicht geduckt (Man sieht das gut an den Positionsnummern)
Schön wäre es, wenn die Position gedruckt würde, die Lieferantenlisten aber leer bliebe.
Konkret heiß das bei mit, wenn q_rep4 keinen Datensatz liefert, der q_rep3 nicht gedruckt wird.
Wie kann ich das beeinflussen ?

Danke.
admin
Site Admin
Beiträge: 2673
Registriert: Di Feb 10, 2004 5:48 am
Wohnort: Bayreuth

Beitrag von admin »

Dann macht das schon mehr Sinn:
Bei Detail- und Hauptbändern gibt es die Eigenschaft "Print if Subset empty". Ist diese - wie bei Ihnen - auf "false", werden übergeordnete Daten nur gedruckt, wenn es Unterdaten gibt. Ist dies nicht der Fall, wird auch nichts gedruckt. Einfach die Eigenschaft auf "true" ändern.
Zuletzt geändert von admin am Do Jul 03, 2008 11:59 am, insgesamt 1-mal geändert.
Antworten