Forum: Projekte & Code Bestelllistengenerator


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Paul S. (mrpaul)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
ich möchte die Möglichkeit hier nutzen, um (Hobby)Elektronikern mein 
kleines Hilfsprogramm zur Erstellung von Bestelllisten vorzustellen.

Das Programm ist hier zu finden: 
https://github.com/0815nutzer/OrderListTool

Eine (bisher nur deutsche) Dokumentation findet sich im zugehörigen 
Wiki: https://github.com/0815nutzer/OrderListTool/wiki

Für wen ist es gedacht?
Sicherlich gibt es hinreichend (proprietäre) Angebote. Mein Programm 
richtet sich an Hobby-Elektroniker, die hin und wieder einmal eine 
Platine erstellen und dabei oftmals die gleichen Bauteile 
wiederverwenden (Widerstände, Ko's, IC's usw.). Ich selbst bin vor ca. 
einem halben Jahr von EAGLE auf KiCAD gewechselt. Deshalb sind in meinem 
Repo die passenden benötigten BOM-Skripte für KiCAD (und EAGLE) 
enthalten.

Was benötige ich zur Ausführung?
Das Programm ist für Python3 geschrieben. Ich selbst habe es unter 
Windows 10 und Linux Mint in der Pythonversion 3.8 erprobt.

Warum habe ich mir selbst dieses kleine Programm geschrieben?
Ich wollte eine Möglichkeit schaffen, nicht jedes Mal die Bestellnummern 
meiner Bauteile händisch zusammenzutragen. Stattdessen wollte ich ein 
Werkzeug haben, welches mir zu meinen Bauteilen aus dem Schaltplan die 
entsprechende Bestellnummer aus einer von mir zusammengetragenen 
"Datenbank" heraussucht.
Darüber hinaus sollten die Bestellnummern gleich so in eine Textdatei 
geschrieben werden, dass ich diese Textdatei direkt in den Warenkorb des 
jeweiligen Lieferanten (z.B. Reichelt, Farnell, usw.) hochladen kann.

Es gibt bereits Lösungen, indem man die Bestellnummer bspw. als 
Bauteilattribut definiert und dann mit Hilfe von Skripten eine Liste 
dieser Attribute exportiert. Allerdings habe ich mich gegen diese 
Variante entschieden:
- ich müsste diese Attribute für jedes CAD-System, welches ich nutze, in 
den Bibliotheken eintragen
- ich würde die Standardbibliotheken anpassen, sodass ich u.U. Probleme 
bei Bibliotheksupdates bekomme

Deshalb habe ich mir mein kleines Programm erstellt. Dieses sucht anhand 
des Bauteilnamens (z.B. R1), dem Bauteilwert (z.B. 1k8) und dem Gehäuse 
(z.B. 0603) alle passenden Teile aus der "Datenbank". Die Datenbank sind 
letztendlich (mehrere) Textdateien, in denen die Bestellnummern der 
jeweiligen Lieferanten gesammelt sind.
Wer es genauer wissen möchte sei eingeladen, einen Blick in die Doku zu 
werfen.

Sollte sich jemand ermutigt fühlen, dass Programm auszuprobieren, so 
würde ich mich über Rückmeldungen freuen.

: Bearbeitet durch User
von Klaus (Gast)


Lesenswert?

Und wo finde ich die Setup Datei um es
auf Windows zu installieren ?

von Paul S. (mrpaul)


Lesenswert?

Das ist ein Python3-Programm.
Um es zu nutzen, muss Python3 installiert sein.
Nachdem man Python3 installiert hat, muss man die `main.py` ausführen.

https://www.python.org/downloads/

von Klaus (Gast)


Lesenswert?

Also uninteressant für Leute die es nicht
installieren wollen. Werde ich auch nicht
installieren, nur um das Programm zu testen.

von Schwanzlurch (Gast)


Lesenswert?

Dazu zwingt dich auch niemand. Etwas Respekt vor dem TO könnte aber 
trotzdem nicht schaden. Ich bedanke mich dafür er uns seine Arbeit zur 
Verfügung gestellt hast.

Klaus schrieb:
> Also uninteressant für Leute die es nicht
> installieren wollen. Werde ich auch nicht
> installieren, nur um das Programm zu testen.

von Jonas B. (jibi)


Lesenswert?

>Das ist ein Python3-Programm.
>Um es zu nutzen, muss Python3 installiert sein.
>Nachdem man Python3 installiert hat, muss man die `main.py` ausführen.

Wenn du Zeit hast, paketiere die Software, das nimmt die Hürden.

von Klaus (Gast)


Lesenswert?

Dann postet man es in ein Forum was für Python
ist, und nicht in ein Mikrocontrollerforum.
Oder man stellt die Datei zur verfügung damit man
es auf Windows laufen lassen kann.

von Schwanzlurch (Gast)


Lesenswert?

Ich glaube du warst auch nicht als Zielgruppe gemeint. Wahrscheinlich 
bist du damit einfach überfordert und wärst sowieso nicht in der Lage 
das Teil zu nutzen.

Klaus schrieb:
> Dann postet man es in ein Forum was für Python
> ist, und nicht in ein Mikrocontrollerforum.
> Oder man stellt die Datei zur verfügung damit man
> es auf Windows laufen lassen kann.

von P. S. (namnyef)


Lesenswert?

Klaus schrieb:
> Also uninteressant für Leute die es nicht
> installieren wollen. Werde ich auch nicht
> installieren, nur um das Programm zu testen.

Thx 4 Info

von Paul S. (mrpaul)


Lesenswert?

Klaus schrieb:
> Dann postet man es in ein Forum was für Python
> ist, und nicht in ein Mikrocontrollerforum.

Wozu benötigt ein Python-Programmierer ein Programm zur Erstellung von 
Bestelllisten für elektrische Bauteile?
Zweck des Werkzeugs ist es, aus dem Schaltplan eine beim Lieferanten 
hochladbare Liste mit Bestellnummern zu erzeugen. Aus diesem Grund denke 
ich, hier die richtigen Interessenten zu finden.

> Oder man stellt die Datei zur verfügung damit man
> es auf Windows laufen lassen kann.

Ich selbst nutze Linux, da ist Python meist schon in der Distribution 
vorhanden. Darüber hinaus hat Python den Vorteil, dass man sich nicht 
mit verschiedenen Betriebssystemen auseinander setzen muss.
Sollte sich irgendwann eine ausreichende Nutzerzahl finden, kann man 
sicherlich überlegen, aus den Python-Dateien eine für Windows 
ausführbare exe-Datei zu erstellen. Solange das Programm aber noch in 
den Kinderschuhen steckt, ist mir der Aufwand dafür zu groß, nach jeder 
Anpassung eine exe zu generieren, zumal ich als Nicht-Windows-Anwender 
nichts davon habe. Aber ich werde es mir für die Zukunft merken.
Zu Erprobung meines Python-Programms unter Windows habe ich meinen 
Arbeitsrechner "missbraucht"...

Jonas B. schrieb:
>>Das ist ein Python3-Programm.
>>Um es zu nutzen, muss Python3 installiert sein.
>>Nachdem man Python3 installiert hat, muss man die `main.py` ausführen.
>
> Wenn du Zeit hast, paketiere die Software, das nimmt die Hürden.

Kannst du mir genauer sagen was du meinst? Letztendlich sind doch alle 
notwendigen Python-Dateien in einem Ordner enthalten. Die anderen Ordner 
des Repos sind ja nur Zusatz, damit man das Programm erproben kann.
Ich bin bezüglich Python noch nicht so fit, dieses hier vorgestellte 
Tool ist meine erstes in Python erstellte Anwendung.

von Klaus (Gast)


Lesenswert?

Naja die meissten User sind halt auf Windows Rechner unterwegs.
Und ich glaube kaum das die dann Python installieren
um das Programm zu testen. Du willst doch auch das es
viele ausprobieren dein Programm. Und da kommt man halt an Windows nicht
vorbei. Vielleicht ist es gar nicht so kopliziert es für
Windows lauffähig zu machen. Bist ja nicht der erste der damit
arbeitet. Vielleicht ist es einfacher als du denkst, es auf
Windows zu bekommen. So ist natürlich die Gemeinschaft recht klein
die von deinem Programm Vorteile hat.

von Jonas B. (jibi)


Lesenswert?

>Kannst du mir genauer sagen was du meinst?

Na du baust einen Installer für die gängigsten Betriebssysteme außen 
rum. Sowie du quasi jedes andere Programm auch auf deinen Rechner 
installiert hast, bietest du halt deine Software auch an. Darüber lassen 
sich dann auch bequem Updates installieren, etc. Du musst davon 
ausgehen, dass nicht jeder Python kennt aber gerne dein Programm 
benutzen möchte, für diese Menschen legst du einfach mit einer 
paketierten Software die Hürde möglichst niedrig, weil Software 
installieren kennen die meisten trotzdem.

VG Jonas

von nup (Gast)


Lesenswert?

Klaus schrieb:
> Und wo finde ich die Setup Datei um es
> auf Windows zu installieren ?

Dann würden sich Leute beschweren, die Angst haben eine .EXE zu öffnen. 
Das hätte ich ehrlich gesagt auch und ich würde auch jedem davon abraten 
es zu tun.

Es ist also schon ein Vorteil so wie es jetzt ist. :-)

von Jonas B. (jibi)


Lesenswert?

>Dann würden sich Leute beschweren, die Angst haben eine .EXE zu öffnen.

Exe herunterladen und ausführen ist in Python ein Zweizeiler und wer 
prüft schon das komplette Script. Also einen Tod muss man sterben...

von GeGe (Gast)


Lesenswert?

Klaus schrieb:
> Dann postet man es in ein Forum was für Python
> ist, und nicht in ein Mikrocontrollerforum.

Microphyton wird selbst auch zum Programmieren von Mikrocontroller 
genutzt.

von henning (Gast)


Lesenswert?

Paul S. schrieb:
> Hallo zusammen,
> ich möchte die Möglichkeit hier nutzen, um (Hobby)Elektronikern mein
> kleines Hilfsprogramm zur Erstellung von Bestelllisten vorzustellen.

Sehr coole Idee, Danke für den Beitrag und das Online-Stellen bei Git.!

von lächler (Gast)


Lesenswert?

Grundgütiger! Wer nicht in der Lage oder Willens ist Python zu 
installieren, hat so ein tolles Programm schlicht nicht verdient.

:-)

von simon (Gast)


Lesenswert?

Wie kann man bitte so ein Drama machen weil man python runterladen muss? 
Ich lade mit tausendmal lieber ein pythonscipt runter wo ich reinschauen 
kann, dass es keinen Schadcode enthält als eine unbekannte exe.

von Lutz S. (lutzs)


Lesenswert?

Selbst nutze ich auch meist Windows, aber einen Python-Script bekommt 
man nun mal auf jedem der verbreiteten Systeme (Windows/Linux/Mac) ohne 
viel Aufwand zum laufen. Das muss man dann nicht noch mundgerecht 
klickbar für Windows-Anwender machen, so viel Initiative kann schon 
selbst sein.

Leider wird durch Klaus' Einwand nun wieder über Nebensächlichkeiten 
statt des eigentlichen Programms diskutiert.

Danke an den Ersteller.

Beitrag #6664087 wurde von einem Moderator gelöscht.
von Paul S. (mrpaul)


Lesenswert?

Hallo allerseits,
gibt es zuf. schon jemanden, der dieses kleine Programm mal ausprobiert 
hat?

Wenn ja, wie schwer war es, alles zum Laufen zu bekommen? Ist die Doku 
bzw. die Funktionsweise verständlich und nachvollziehbar?

Wenn nein, wo lagen die Probleme?

Vielen Dank für Rückmeldungen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.