[Gelöst] - (CC) Document Header

5. April 2011 10:18

Hi,

im Rahmen eines Updates bin ich dabei unsere Reports von 3.70 auf 2009 anzupassen.

Hier wird mit einem DocumentHeader Array gearbeitet. Was verbirgt sich dahinter? Woher weiß ich welche Daten sich in welchen Header befinden, kann man diese irgendwo festlegen?

Dann ist z.B. die TextBox DocumentHeader[1] genau über DocumentHeaderCaption[1], wie kann es das bei der Ausgabe hier Wert und Caption nicht übereinander geschrieben werden?
Bild

Danke!
Zuletzt geändert von elTorito am 5. April 2011 12:31, insgesamt 1-mal geändert.

Re: (CC) Document Header

5. April 2011 10:23

elTorito hat geschrieben:Woher weiß ich welche Daten sich in welchen Header befinden, kann man diese irgendwo festlegen?

Ich weiß nicht, ob ich deine Frage richtig verstehe? Möchtest du wissen, wie das Array befüllt wird?
Dann suche im Quelltext nach "DocumentHeader".

Dann ist z.B. die TextBox DocumentHeader[1] genau über DocumentHeaderCaption[1], wie kann es das bei der Ausgabe hier Wert und Caption nicht übereinander geschrieben werden?

Es wird wahrscheinlich immer nur eine von beiden Textboxen befüllt.

Re: (CC) Document Header

5. April 2011 12:30

Natalie hat geschrieben:
elTorito hat geschrieben:Woher weiß ich welche Daten sich in welchen Header befinden, kann man diese irgendwo festlegen?

Ich weiß nicht, ob ich deine Frage richtig verstehe? Möchtest du wissen, wie das Array befüllt wird?
Dann suche im Quelltext nach "DocumentHeader".


Im Report habe ich den Aufruf :

ReportFunctions.SalesDocumentHeader(DocumentHeader,DocumentHeaderCaption,"Document Type","No.");

gefunden, die Codeunit ReportFunctions ist im 504xxxx Bereich, also Individuallösung , mist .. ;-) Geht zwar auch nicht ganz hervor wie sich der Array zusammensetzt, aber die FUnktion macht das definitv.

Dann ist z.B. die TextBox DocumentHeader[1] genau über DocumentHeaderCaption[1], wie kann es das bei der Ausgabe hier Wert und Caption nicht übereinander geschrieben werden?

Es wird wahrscheinlich immer nur eine von beiden Textboxen befüllt.[/quote]

Es werden definitiv beide Boxen gefüllt...

Habe in der Funktion oben folgendes Kommentar gefunden:

//Einlesen der Caption und ermitteln der Captionlänge
//Dies ist nötig um die Ausgabe der Daten bündig zu gestalten

Ohne mir jetzt die Programmierung genauer anzuschauen vermute ich mal das hier "Platzhalter" zum Einsatz kommen, und deswegen die Textboxen sich nicht "überschreiben".

Code:

IF (SalesPersonPhoneNo <> 0) THEN BEGIN
  strlaenge := 0;
  strlaenge := STRLEN(UserSetup.FIELDCAPTION("Phone No."));
  IF strlaengemax < strlaenge THEN
    strlaengemax := strlaenge;
END;

IF (SalesPersonPhoneNo <> 0) THEN BEGIN
  FOR zaehler := 0 TO strlaengemax+1 DO
    SalesDocumentHeaderArray[SalesPersonPhoneNo] += ' ';
  SalesDocumentHeaderArray[SalesPersonPhoneNo] += SalesDocumentHeaderArray[SalesPersonPhoneNo] + UserSetup."Phone No.";
  SalesDocumentHeaderCaptioArray[SalesPersonPhoneNo] := UserSetup.FIELDCAPTION("Phone No.") + ': ';


Diese hart kodierte ':' verstehe ich auch nicht, wenn der FeldName schon ein : hat, dann wird hier noch eins drangehängt... *seufz* ,...

Ich seh schon, das ist ein Fall für Support, danke dir für deine Antwort Natalie.

Re: (CC) Document Header

5. April 2011 12:55

elTorito hat geschrieben:Diese hart kodierte ':' verstehe ich auch nicht, wenn der FeldName schon ein : hat, dann wird hier noch eins drangehängt... *seufz* ,...

Feldnamen in NAV-Tabellen haben nie einen Doppelpunkt - zumindest wenn man sich an den Styleguide hält ;-)

Re: [Gelöst] - (CC) Document Header

3. Mai 2011 14:27

...und das machen wir doch immer... Gruß der Hersteller :-)