Seite 2 von 1 ???

Alles über Formulare, deren Erstellung und deren eventueller Austausch

Moderator: SYNERPY

Antworten
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Seite 2 von 1 ???

Beitrag von Dirk Tiefenbach »

Hallo zusammen,

bei einigen Formularen funktioniert die Gesamtseitenzahl ([TOTALPAGES]) nicht, obwohl im Formular 2 Durchläufe eingestellt sind. :(

Langt es nicht die 2 Durchläufe einzustellen? Muss man noch irgendwo die Seiten des 1. Durchlaufs mitzählen? Falls ja, wo eigentlich? :?:

Auch sicher kein großes Problem wenn man weiß wie und wo.

Danke für die Hilfe.

Gruß
AvERP 4.2.5.106 / GDB AVERP2009-A.07
NPLADMIN
Beiträge: 163
Registriert: Di Okt 07, 2008 7:54 am
Wohnort: Oxbüll / Wees

Beitrag von NPLADMIN »

Bei welchen Ausdrucken ist das z.B. der Fall?
Gruß
KTS

AvERP-Exe: 4.2.1.6
Datenbank: AvERP2009-A.01
_________________________
Suchen heißt finden und je mehr man sucht um so mehr findet man. ;-)
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Beitrag von Dirk Tiefenbach »

hallo,

bei den div. Stücklisten:

FRDBSAS_HERSTELLER
FRDBSAS_AUFGELOEST
FRDBSAS_AUFGELOEST_ENG

Aber ich denke das ist eine Grundsätzliche Sache wie FastReport das mit den Seitenzahlen macht.

Danke

Dirk
AvERP 4.2.5.106 / GDB AVERP2009-A.07
NPLADMIN
Beiträge: 163
Registriert: Di Okt 07, 2008 7:54 am
Wohnort: Oxbüll / Wees

Beitrag von NPLADMIN »

Habe das mal bei uns geprüft und wenn eine 2. Seite vorhanden,
dann wird auch "Seite 2" angezeigt. Feldinhalt: "Seite: [PAGE#]"
Gruß
KTS

AvERP-Exe: 4.2.1.6
Datenbank: AvERP2009-A.01
_________________________
Suchen heißt finden und je mehr man sucht um so mehr findet man. ;-)
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Beitrag von Dirk Tiefenbach »

Hallo,

ja die aktuelle Seitenzahl stimmt schon, aber die Gesamtseitenzahl stimmt nicht (1 von 1, 2 von 1, 3 ovn 1, etc.).

[PAGE#] funktioniert, aber [TOTALPAGES] funktioniert nicht. Wenn ich bei dem Report den 2. Durchlauf weglasse dann kommt nur Seite 1 von . Bei mehreren Durchläufen kommt dan als Gesamtseitenzahl auf jeder Seite eine 1, auch wenn es mehrere Seiten sind.

Gruß

Dirk
AvERP 4.2.5.106 / GDB AVERP2009-A.07
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Beitrag von Dirk Tiefenbach »

Hallo zusammen,

scheint dann doch ein Problem zu sein die Gesamtseitenzahl auf die Formulare zu bekommen Die Variable [TOTALPAGES] funktioniert scheinbar nicht mit weiterer Unterstützung (Prozeduren, etc.) im jeweiligen Formular. :roll:

Es wäre schön wenn jemand das Grundsätzliche Verfahren für die Gesamtseitenzahl erklären könnte. Es ist zwar nur ein kosmetisches Problem aber es sieht schon wie gewollt und nicht gekonnt aus wenn auf den Belegen "Seite 5 von 1" steht. :cry:

Danke

Dirk
AvERP 4.2.5.106 / GDB AVERP2009-A.07
NPLADMIN
Beiträge: 163
Registriert: Di Okt 07, 2008 7:54 am
Wohnort: Oxbüll / Wees

Beitrag von NPLADMIN »

Hallo Herr Tiefenbach,

entschuldigen Sie bitte!
Hatte Ihr Problem aus den Augen verloren.

Ich habe grade eben mal was für FRDBSAS_HERSTELLER getestet und scheint zu funktionieren:

- Designer öffnen
- Datei -> Variablenliste
- 2 neue Variablen anlegen (Seite und SeitenGruppe) Haken in Ausdruck - Wert 0
- In Hauptkopf

Code: Alles auswählen

begin
// Seitensteuerung
   Seite := 1;
   
   if (SeitenGruppe < 1) then 
   SeitenGruppe := 1;

    sText := Str(Seite)+' / '+ Str(SeitenGruppe);
    Memo54.clear(); <- Memo anpassen auf Ihr Memo
    Memo54.memo := sText; <- Memo anpassen auf Ihr Memo
   end;  
end
In Seitenfuß

Code: Alles auswählen

begin
   SeitenGruppe := [SeitenGruppe] + 1;
end
Gruß
KTS

AvERP-Exe: 4.2.1.6
Datenbank: AvERP2009-A.01
_________________________
Suchen heißt finden und je mehr man sucht um so mehr findet man. ;-)
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Beitrag von Dirk Tiefenbach »

Hallo,

danke für die Hilfe.

Welches Memo54 soll ich denn anpassen? Ich brauche die Gesamtseitenzahl doch in [TOTALPAGES]. Oder was ist Memo54 bei Ihnen?

Danke

Dirk
AvERP 4.2.5.106 / GDB AVERP2009-A.07
NPLADMIN
Beiträge: 163
Registriert: Di Okt 07, 2008 7:54 am
Wohnort: Oxbüll / Wees

Beitrag von NPLADMIN »

Einfach ein neues Rechteckobjekt anlegen oder das bestehende "Memo3" nehmen.
Die Seitenzahlangaben werden durch

Code: Alles auswählen

Memo3.memo := sText;
dann dort hineingeschrieben.

Ich umgehe damit einfach die FastReport-Variablen.
Sollte eigentlich funktionieren.
Gruß
KTS

AvERP-Exe: 4.2.1.6
Datenbank: AvERP2009-A.01
_________________________
Suchen heißt finden und je mehr man sucht um so mehr findet man. ;-)
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Beitrag von Dirk Tiefenbach »

Hallo,

es wird dadurch nicht besser; Seite bleibt auf allen Seiten auf 1, d.h. ich habe jetzt Seite 1 von 1, 1 von 2, 1 von 3, ...

Aber eigentlich sollte doch [TOTALPAGES] funktionieren, [PAGE#] funktioniert ja auch.

[TOTALPAGES] ist als Begriff bekannt und verursacht auch keine Fehlermeldung, nur er zählt nicht mit.

Das ist sehr merkwürdig.

Code: Alles auswählen

// Seitensteuerung
   Seite := 1;
   SeitenGruppe := [q_rep1."ID"];
   
   if (ArrSG[SeitenGruppe] > [TOTALPAGES]) then
     ArrSG[SeitenGruppe] := [TOTALPAGES];

   if FinalPass then 
   begin
     if ArrSG[SeitenGruppe] > 1 then        
       sText := Str([Seite]) + ' / ' + Str(ArrSG[SeitenGruppe])
     else 
       sText := '1 / 1';
     
      meSeite.clear;
      meSeite.memo := sText;
   end;

   meLBSeite.memo := LB_Seite.memo;
   meLBSeitenkopf.memo := LB_Seite.memo;
   bdCBKopf.visible := True;
In einem Anderen Formular habe ich diese Zeilen in den Hauptdaten gefunden. Irgendwo hatte ich das mit dem Array auch schon mal gelesen, aber das habe ich bisher nicht hinbekommen. In dieses Array zählt er beim ersten Durchlauf wohl die Seiten rein, oder vielleicht habe ich das auch gar nicht verstanden. :roll: Im Seitenkopf ist auch noch etwas von diesem Array zu finden.

Code: Alles auswählen

 // Seitenkopfverwaltung
  Seite := [Seite] + 1;

//  if (seite > [TOTALPAGES]) then
//    seite := [TOTALPAGES];

  if FinalPass then
  begin
    if ArrSG[SeitenGruppe] > 1 then 
      sText := Str([Seite])+ ' / ' + Str(ArrSG[SeitenGruppe])
    else 
      sText := '1 / 1';

    meSeitenKopf.clear;
    meSeitenKopf.memo := sText;
  end;
Wo dieses Array definiert (deklariert) wird ist mir nicht klar.

Ich bin auf jeden Fall verwirrt. :shock:

Mal sehen, vielleicht hat ja noch jemand eine Idee.
AvERP 4.2.5.106 / GDB AVERP2009-A.07
SYN20
Beiträge: 95
Registriert: Do Aug 23, 2007 1:54 pm

Beitrag von SYN20 »

Sehr geehrter Herr Tiefenbach,

in diesem Fall scheint Fastreport ein Problem damit zu haben, dass die Hauptdaten nicht q_rep1 sondern q_rep2 zugeordnet sind. Nach Ersetzung des Hauptdatenbands duch ein Detaildatenband und Anlage eines neuen Hauptdatenbands auf q_rep1 kann [TOTALPAGES] verwendet werden. Zu beachten ist, dass diese Variable nur genutzt werden sollte, wenn der Druck nicht aus der Datenübersicht ausgeführt wird.

Sollten mehere Datensätze auf einmal gedruckt werden muß die von NPLADMIN erwähnte Logik oder Fastreport4, dass komfortablere Möglichkeiten bietet, verwendet werden.

Seitenkopf:

Code: Alles auswählen

  Seite := [Seite] + 1;

  if FinalPass then
  begin
    if ArrSG[SeitenGruppe] > 1 then 
      sText := Str([Seite])+ ' / ' + Str(ArrSG[SeitenGruppe])
    else 
      sText := '1 / 1';

    meSeitenKopf.clear;
    meSeitenKopf.memo := sText;
  end;  
Hauptdaten:

Code: Alles auswählen

   Seite := 1;
   SeitenGruppe := [q_rep1."ID"];

   if FinalPass then 
   begin
     if ArrSG[SeitenGruppe] > 1 then        
       sText := Str([Seite]) + ' / ' + Str(ArrSG[SeitenGruppe])
     else 
       sText := '1 / 1';
     
      meSeite.clear;
      meSeite.memo := sText;
   end;
letztes zur Gruppe anzudrucke Band (bdLastChild)

Code: Alles auswählen

  if not FinalPass then
    ArrSG[SeitenGruppe] := Seite;
  bdCBKopf.visible := False;
  Seite := 0; 
Im Druck Strukturstückliste aufgelöst wurden beide Möglichkeiten umgesetzt. Dieser wurde auf Grundlage der aktuellsten Version des Drucks erstellt und sollte deshalb nicht direkt in Ihre Livedatenbank übernommen werden, sondern nur als Vorlage dienen.

Wir werden die Seitensteuerung zum nächsten Release in den Standard übernehmen.

Gruß,
Syn20
Dirk Tiefenbach
Beiträge: 77
Registriert: Do Okt 18, 2007 9:00 am
Wohnort: Senden

Beitrag von Dirk Tiefenbach »

Hallo,

ich habe es erst gar nicht begriffen aber dann habe ich es wohl verstanden. Der erste Satz ist die eine Lösung, der Rest die zweite Lösung die auch von NPLADMIN beschrieben wurde.

Die Sache mit dem Detailband hat dann auf Anhieb geklappt. Es ist mir zwar technisch schleierhaft wieso die Variable [TOTALPAGES] irgendetwas mit dem Hauptdatenband zu tun hat aber vielleicht werde ich das auch noch begreiffen :idea:

Erstmal allen vielen Dank die mir hier auf die Sprünge geholfen haben.

Schönes Wochenende.

Euer Dirk
AvERP 4.2.5.106 / GDB AVERP2009-A.07
Antworten