# WinCCflex mehrere Rezepturen Exportieren auf USB



## Matze001 (12 Dezember 2012)

Hallo an alle,

fangen wir mal mit einer leichten Frage zum Einstieg an.

Exportieren auf USB, bei MP und Co mit STORAGE CARD USB wunderbar, unter einem nicht CE OS natürlich nicht möglich. Bisher mache ich das immer mit E:/Rezeptur/blabla.csv und hoffe, dass der Stick auch immer brav den Buchstaben E bekommt. (Klappt solang kein Dongel, oder ähnliches im Einsatz ist auch wunderbar!)

Gibts da irgendwas sinnvolles, damit ich immer den Stick erwische den ich will (Klar könnte ich mir jetzt ein Script basteln, welches meinen PC nach nem USB-Stick durchsucht usw, aber das will ich nicht).

So das war der leichte Part... jetzt wirds etwas kniffeliger!

Vorweg: ich nutze bei der Rezepturverwaltung KEINEN der Buttons, sondern eigene Buttons welche nur Funktionen wir SpeichereDatensatz, ImportiereDatensatz, etc. ausführen!

Auch hier leicht zum Einstieg.

Ich habe eine Rezeptur die heißt A. A ist meine einzige Rezeptur, und ich möchte sie auf einen USB-Stick exportieren. Ich führe als die Funktion ExportiereDatensatz aus, gebe als Rezepturname A an, und als Datensatz 0 für alle. Aufforderung auf AN. Funktioniert und alles ist gut. 

Jetzt kam ich auf die Idee, eine zweite Rezeptur B anzulegen. B greift auf die gleichen Variablen zu, denn B ist nur als "Oberkategorie gedacht, damit nicht alle Datensätze von zwei verschiedenen Produktgruppen durcheinander in der Auswahlliste stehen". Nun will ich alle Rezepturen exportieren. Gebe ich als Rezepturnummer die 0 an, erstellt er mir bei der Pfadangabe E:/Rezeptur/Rezeptur.csv folgende zwei Dateien: E:/Rezeptur/RezepturA.csv E:/Rezeptur/RezepturB.csv. Wäre ja nicht mal schlimm. Nun will ich aber wieder Importieren, und muss hier einen Dateinamen angeben. Wenn ich nur Rezeptur angebe findet er sicher keine Datei (hab ich aber nicht getestet, gehe ich aber mal ganz stark davon aus!) Wenn ich nun nur eine der beiden angebe, hab ich das Problem, dass die andere nicht mit importiert wird. Nun bin ich ja nicht dumm, und schreibe halt zwei importiereDatensatz Funktionen an meinen Button, und oh wunder, nur die erste wird gemacht, die andere verworfen. War aber irgendwie abzusehen.

Ich möchte aber nicht für jede Rezeptur einen Import/Export-Button bereitstellen, dann wird das Bild irgendwann voll (denke es wird nicht bei zwei bleiben).

So genug dumm angestellt für heut... ich würd mich freuen wenn jemand eine gute Idee hat!

Grüße

Marcel


----------



## Perfektionist (12 Dezember 2012)

Die Problematik kenne ich. Für meinen Teil hab ich aus dem Bug ein Feature gemacht: die Exportdatei lässt sich bei mir erst wieder einlesen, nachdem sie umbenannt wurde. Grund: ich will verhindern, dass unbedacht eine alte Sicherung der Rezepte einfach so aus Dummheit reimportiert wird.

An anderer Stelle hatte ich es dann tatsächlich so gelöst, dass für den Import einer jeden Rezeptur ein eigener Button zur Verfügung stand.


----------



## Matze001 (13 Dezember 2012)

Das ist doch ein Scheiss. Wenn ich alles auf einen USB-Stick exportieren will, und erstmal 300 Buttons drücken muss, ist das doch schon wieder viel zu viel!

Das mit dem Umbenennen ist nix für den Kunden, es soll so einfach wie möglich sein! 

Ich spiele schon mit dem Gedanken per Script zu exportieren, und nen Zeitstempel anzuhängen, und dann beim Importieren alle Ordner nach CSV-Dateien zu durchsuchen, und dem Kunden eine Liste von Sicherungen vorzuschlagen.

Aber das Gelbe vom Ei ist das auch wieder nicht. (Wobei dies wieder einen ganzen Batzen Komfort mit sich bringt)

Grüße

Marcel


----------



## Matze001 (13 Dezember 2012)

So ich hab eine alternative Idee, doch Siemens hat mir gleich den Wind aus den Segeln genommen!

Da ich eine PC-Runtime habe, habe ich beim Ablageort der Rezepturdateien (Datei - CSV ASCII) stehen. Was auch grau hinterlegt ist (warum auch immer, ich kann nix ändern). Nun dachte ich "geil, wenn ich eine CSV-Datei auf dem Panel habe, mache ich mir halt ein script, welches mir die Dateien kopiert. Aaaaaber... Zu früh gefreut, die Dateien liegen nicht im CSV-Format vor sondern als DAT, RDF und VDF. Kann ich das irgendwie ändern, das sie als CSV gespeichert werden?

Grüße

Marcel


----------



## rostiger Nagel (13 Dezember 2012)

verstehe ich nicht, du kannst doch auch bei einer PC Runtime, Rezepturen in CSV-Format exportieren und auch wieder importieren.
Das geht für einzelne Datensätze der Rezeptur oder der ganzen Rezepturen mit allen erstellten Rezepturen. Habe ich schon gemacht.

Was du später damit scriptes, ist eine andere sache.


----------



## Matze001 (13 Dezember 2012)

Schön wäre es.

Was geht ist:

Alle Datensätze EINER Rezeptur exportieren.
Alle Datensätze EINER Rezeptur importieren.

Schön wäre es, wenn ich beide Rezepturen in eine CSV-Datei exportieren könnte, dazu gebe ich bei der Funktion ExportiereDatensätze folgendes an:

Rezeptur 0 (Alle)
Datensatz 0 (Alle)
Überschreiben fragen (ja)
Pfad: E:/Rezeptur/Rezeptur.csv

Wenn ich das mache, erstellt es mir bei einem MP zwei CSV-Dateien, RezepturA.csv und RezepturB.csv (A und B sind die Namen der Rezepturen). 
Die kann ich dann NICHT wieder gemeinsam importieren, da ich ja EINEN Dateipfad angeben muss.

Bei der PC Runtime erstellt mir die Funktion nur EINE CSV Datei, und das mit den Datensätzen der Rezeptur mit der Nummer 1 (Verstehe ich noch nicht warum).
Edit: Einmal neu generieren bewirkt wunder!

Also steht noch das Importieren im Raum!


Hoffe jetzt ist einiges klarer...

Grüße

Marcel


----------



## rostiger Nagel (13 Dezember 2012)

Neh Marcel, ich bin ja ein wenig älter als du und komme jetzt nicht ganz mit.

Was ziemlich sicher geht, das ich es schon verwendet habe, sind einzelne 
Rezepturen zu exportieren und einzeln wieder zu importieren. 

Ich habe eine ähnlichen aufbau gehabt wie du, das ich einen Maschinen PC
hatte und eine Meßstation in einer Werkstatt, mit MP277.
An der Meßstation hatte ich Werkzeuge vermessen, dann einzeln oder alle
gemessene Werkzeuge über eine Rezeptur als CSV exportiert und diese 
dann wieder am PC eingelesen.


----------



## Matze001 (13 Dezember 2012)

Okay alter Mann, für dich nochmal zum Mitschreiben 

IPC: Ich kann mehrere Rezepturen auf einmal exportierten, dann wird an den angegebenen Dateinamen noch der Name der Rezeptur angehangen. Soweit ok!
Ich kann aber nicht alle auf einmal IMPORTIEREN, da ich ja einen Dateipfad angeben muss, und bei Exportieren ja X Dateien angelegt wurden (je nachdem wie viele Rezepturen ich habe).
Somit kann ich zwar alle auf einmal exportieren, muss aber alle einzeln importieren (sehr doof!).

Daher suche ich eine Möglichkeit alle Rezepturen auf einmal zu Importieren! 

Das mit dem MP war nur ein Test ob es an der PC-Runtime liegt, hatte das Gerät grad "rumliegen".

Ist es jetzt etwas verständlicher?

Grüße

Marcel


----------



## rostiger Nagel (13 Dezember 2012)

was meinst du den mit allen Rezepturen auf einmal.

Eine Rezeptur ist ja das Rezept in gänze, was dann wieder einige von den User erstellte Datensätze enthält.

Habe ich das jetzt richtig verstanden, das du mehrere Rezpturen exportieren möchtest?


----------



## Perfektionist (13 Dezember 2012)

richtig, Helmut, und wie ich in #2 andeutete, bin auch ich schonmal über Marcels Problem gestolpert, dass man zwar alles auf einmal (mehrere Rezepturen mit jeweils all ihren Datensätzen) in einem Schwung exportieren, aber nicht auf einmal wieder reimportieren kann.


----------



## rostiger Nagel (13 Dezember 2012)

Ok mehre Rezepte in einen Schwung habe ich nicht gemacht, aber
mehre Datensätze eines Rezeptes geht. 

Könnte er es den nicht so machen das er in einen Script, jedes Rezept einzeln 
exportiert?


----------



## Matze001 (13 Dezember 2012)

Ja genau  Jetzt haben wir es...

War eine schwere Geburt, aber nun gut! 

Exportieren ist ja kein Ding, das Importieren ist halt nen Mist!

Klar kann ich mir ein Script bauen, aber es hätte sein können, dass es irgendwie eleganter geht. Die Hoffnung stirbt ja bekanntlich zuletzt!

Grüße

Marcel


----------



## faust (13 Dezember 2012)

Hallo,

<<Klar kann ich mir ein Script bauen, aber es hätte sein können, dass es  irgendwie eleganter geht. Die Hoffnung stirbt ja bekanntlich zuletzt!>>


Sorry, wenn das jetzt etwas großkotzig rüberkommt, aber...

Was gibt es eleganteres, als solche Aufgaben mit Script(en) zu lösen? Die Bordfunktionen von WinCC flex/TIA Advanced etc. sind meiner Meinung nach weder besonders flexibel, noch einfach zu pflegen und schon gar nicht elegant. Ich habe den größten Teil meiner HMI-Programmlogik in Scripten 'gelagert', dies können dann schon mal 50 oder mehr Scripte sein. Vorteil: Ich kann hier so etwas wie eine Versionsverwaltung anwenden, da Siemens beim Generieren die Scripte für den MS-Debugger als Textdatei 'exportiert'.


Gruß, Fred.


----------

