[Gelöst]Option Feld im Excel

9. Juni 2009 14:50

Hallo zusammen.

Hab ein kleines Problem. Bei einem Report von mir, exportiere ich Daten nach Excel. Ein Feld davon ist ein Option Feld und es werden mir nur Zahlen in
Excel angezeigt und nicht wie im Navision die eigentlichen Bezeichnungen. Das Feld ist das Postenart Feld. Vielleicht kann mir ja jemand helfen, wie ich das besser in Excel lösen kann.

Gruß Chiwi
Zuletzt geändert von Chiwi am 9. Juni 2009 16:25, insgesamt 3-mal geändert.

Re: Option Feld im Excel

9. Juni 2009 15:23

Wie exportierst du den die Felder?
Im Normalfall langt es FORMAT(Optionsfeld) zu nutzen.
Falls du aber den Aufruf aus dem Client selbst verwendest, kann ich dir nichts dazu sagen.

Re: Option Feld im Excel

9. Juni 2009 15:50

Doch noch nicht ganz. Und zwar habe ich dem Optionfeld über setfilter nach zwei Angaben gefiltert und die werden mir auch in navision angezeigt, jedoch im Excel wird mir die letzte Angabge gezeigt. Wie kriege ich es jetzt hin das beide Angaben in der gleichen Excel Zelle angezeigt werden. Hier mal mein Code.
Code:
IF Variable = TRUE THEN BEGIN
  Artikelposten.SETFILTER(Artikelposten.Postenart, 'Abgang|Umlagerung');
  Artikelposten.SETFILTER(Artikelposten.Lagerortcode,'<>*&<>*');
  Artikelposten.SETFILTER(Artikelposten.Menge,'<0');
IF Artikelposten.FIND('-') THEN REPEAT
  variable := variable + Artikelposten.Menge;
UNTIL Artikelposten.NEXT = 0;
END;

Re: Option Feld im Excel

9. Juni 2009 16:07

Ich verstehe nicht ganz wsa du erreichen willst.
Zumal du in deinem Codeteil ja nicht nach Excel exportiertst.
Zeig doch mal wie der Export bei dir aussieht und was genau du erreichen möchtest.

Re: Option Feld im Excel

9. Juni 2009 16:10

Code:
IF "mit Dateiausgabe" THEN BEGIN
  CREATE(xlApplication);
  xlApplication.Visible := TRUE;
  xlApplication.Workbooks.Add();
   xlWorkSheet := xlApplication.ActiveSheet;
   xlWorkSheet.Name := 'Frame_' + FORMAT(TODAY);
   xlWorkSheet.Select;
   xlWorkSheet.Range('A1:' + 'A' + FORMAT(600)).NumberFormat := '@';
   xlWorkSheet.Range('B1:' + 'B' + FORMAT(600)).NumberFormat := '@';
   xlWorkSheet.Range('C1:' + 'C' + FORMAT(600)).NumberFormat := '@';
   xlWorkSheet.Range('D1:' + 'D' + FORMAT(600)).NumberFormat := '@';
   xlWorkSheet.Range('E1:' + 'E' + FORMAT(600)).NumberFormat := '@';
   xlWorkSheet.Range('F1:' + 'F' + FORMAT(600)).NumberFormat := '@';
   xlWorkSheet.Range('G1:' + 'G' + FORMAT(600)).NumberFormat := '@';

   xlWorkSheet.Range('A1').Value := 'Arikelnummer';
   xlWorkSheet.Range('B1').Value := 'Postenart';
   xlWorkSheet.Range('C1').Value := 'Menge';
   xlWorkSheet.Range('D1').Value := 'Lagerort';
   xlWorkSheet.Range('E1').Value := 'Lagerfach';
   xlWorkSheet.Range('F1').Value := 'Buchungsdatum';
   xlWorkSheet.Range('G1').Value := 'Kumuliert';
   xlWorkbook := xlApplication.ActiveWorkbook;
   xlSheets := xlWorkbook.Worksheets;
   z:=2;
END;

Re: Option Feld im Excel

9. Juni 2009 16:15

Bis jetzt formatirst du ja die Zellen und füllst deinen Kopf.
Das sieht soweit ganz gut aus.
Aber was genau willst du in eine Zelle reinschreiben?

Re: Option Feld im Excel

9. Juni 2009 16:24

Danke Danjo. Habe den Fehler jetzt gefunden. Habe den Format Befehl jetzt in die Body Section geschrieben und es läuft.