Spreadsheet Format Zelle

In diesem Forum Fragen und Diskussionen in Deutsch
Forum rules
Foren-Regeln und hilfreiche Informationen

WICHTIG: Bitte zuerst lesen, bevor Sie posten
wafi
Posts: 79
Joined: Sat Oct 15, 2016 8:45 am

Spreadsheet Format Zelle

Postby wafi » Thu Oct 17, 2019 3:19 pm

ich hab ein kleines Problem. Ich nutze ein Spreadsheet um im Techdrawbereich eine Materialliste zu erstellen. Klappt eigentlich alles gut, die Einzelteile werden aus einer Datenbank eingelesen, nebst den Zeichnungen ... soweit so fein. Das einzige Problem, in der Datenbank haben die Bauteile Nummern oder eine Kombination Buchstabe/Zahlen. Letzteres macht kein Problem, ersteres schreibt in das Spreadsheet die Materialnummer mit wissenschaftlicher Notation, was gelinde gesagt irgendwie unsinnig ist, statt 10110050 heißt das Teil dann 1.01101e+007 ... das Teil VT2001085 bleibt dagegen. Ich habe natürlich versucht aus der Zahl einen String zu machen, scheint aber aus welchen Gründen nicht zu klappen.

Die Darstellung des Quelltextes ist etwas schwierig, ich probiere es mal

Code: Select all

### Definition der Spalten
    A="A{}"
    B="B{}"
    C="C{}"
    D="D{}"
    E="E{}"
    F="F{}"
    G="G{}"
    .....
    
    ### Definition der Ausgaben in den Spalten
     AT = str(datensatz[11])
    BT = str(weight)
    CT = str(Qyt2_data[i])
    DT = str(destination_data[i])
    ET = str(w.Datbox.value())
    FT = str(totalweight)
    GT = Gj
  .....

 ### hier der Eintag in die Spalten
      App.ActiveDocument.Packinglist.set(A.format(k),AT)
    App.ActiveDocument.Packinglist.set(B.format(k),BT)
    App.ActiveDocument.Packinglist.set(C.format(k),CT)
    App.ActiveDocument.Packinglist.set(D.format(k),DT)
    App.ActiveDocument.Packinglist.set(E.format(k),ET)
    App.ActiveDocument.Packinglist.set(F.format(k),FT)
    App.ActiveDocument.Packinglist.set(G.format(k),GT)
    App.ActiveDocument.recompute()
Das Problem existiert nur in der Spalte A, Spalten B und F, beides Gewichte der Teile, zickt nicht rum.

Habe diverse .format Geschichten probiert, aber ich komme da nicht wirklich weiter.

Gruß
Peter
chrisb
Posts: 19749
Joined: Tue Mar 17, 2015 9:14 am

Re: Spreadsheet Format Zelle

Postby chrisb » Thu Oct 17, 2019 4:38 pm

Im GUI würde man ein einfaches Anführungszeichen voranstellen, also

Code: Select all

'10110050
Vielleicht geht das auch in Python.
chrisb
Posts: 19749
Joined: Tue Mar 17, 2015 9:14 am

Re: Spreadsheet Format Zelle

Postby chrisb » Thu Oct 17, 2019 4:49 pm

Wenn es ganz blöd läuft kann auch so was dabei rauskommen: https://forum.freecadweb.org/viewtopic.php?f=3&t=40182.
wafi
Posts: 79
Joined: Sat Oct 15, 2016 8:45 am

Re: Spreadsheet Format Zelle

Postby wafi » Thu Oct 17, 2019 5:08 pm

hm Chris
versteh ich nicht ganz, ich hole aus einer Datenbank den datensatz[11], wo soll ich da ein ` einfügen? Das blöde ist halt, dass dieser datensatz[11] halt mal ein klarer string, ansonsten als Integer angesehen wird. Dass str(datensatz[11]) was ja eigentlich den Integer auf jedenfall in einen string umwandeln soll, scheint mich nicht zu mögen, zumindest nicht das zu tun, was ich erwarte.
chrisb
Posts: 19749
Joined: Tue Mar 17, 2015 9:14 am

Re: Spreadsheet Format Zelle

Postby chrisb » Thu Oct 17, 2019 6:19 pm

Ich dachte an so etwas:

Code: Select all

AT = "'" + str(datensatz[11])
 
wafi
Posts: 79
Joined: Sat Oct 15, 2016 8:45 am

Re: Spreadsheet Format Zelle

Postby wafi » Thu Oct 17, 2019 6:27 pm

chris

PERFEKT!

da wäre ich nie drauf gekommen, es klappt jetzt. Danke

Gruß
Peter
chrisb
Posts: 19749
Joined: Tue Mar 17, 2015 9:14 am

Re: Spreadsheet Format Zelle

Postby chrisb » Thu Oct 17, 2019 7:54 pm

Gerne doch, war von mir ja auch eher geraten.