Hey Markus, spitze, vielen Dank für die Antwort, werde es heute Abend mal ausprobieren! Beste Grüße Daniel
R.P. schrieb: > Ich glaube ich habe einen BUG gefunden – oder evt Ja, das ist ein Bug. Ich hatte den damals wohl wissentlich aus folgendem Grund so ein programmiert: Wenn man den Etikettendruck-Dialog einmal öffnet, dann wird dieser von EleLa erzeugt, wenn man den Schließt wird der nicht geschlossen sondern nur versteckt, damit beim nächsten rein gehen die Einstellungen erhalten bleiben und nicht alles wieder auswählen muss. Also mir war es wichtiger dass der Dialog erhalten bleibt, das ist für die meisten User Sinnvoller. Das was in der Liste fehlt tritt nur dann auf wenn man unter Gehäuse/Lager ein neues Lagernr/Fach anlegt. Wenn man im Drucken Dialog die Kiste wechselt und zurück dann sollte jedoch auch diese Liste aktualisiert werden und wiederum stimmen. Dennoch ist es ein Bug und ich versuche neu angelegte Fächer da in die Auswahlliste mit auf zu nehmen, ist ja nur Software die ich selbst geschrieben habe, daher sollte es auch machbar sein ;-)
Hallo Markus, danke für die schnelle Antwort. Leider funktioniert das mit dem Kistenwechsel nicht. Das habe ich auch schon ausprobiert :-) Wäre prima, wenn das dann mal funktionieren würde :-))))) Beste Grüße aus dem Harz
Frage, kann es sein dass die Datenbank nicht in einem Pfad stehen darf, wenn der ganze Pfadname größer als ca. 64 Zeichen lang ist? Da konnte er mir nicht zugreifen, dann hab ich einen Ordner höher probiert, also paar Zeichen weniger, dann ging es.
Ob das an EleLa liegt oder ob das an der Datenbank-DLL liegt kannst Du unter Extras-F10 > Log kontrollieren. Hier werden alle wichtigen Sachen bei Start angezeigt, auch der Parameter: Parameter [DB] Database= mit dem von EleLa extrahierten vollen Dateiname. Wenn da der Name richtig steht dann liegt es an der DLL.
Nachtrag zu meinem Post vom 20.09.2017 18:49: Wie Markus geschrieben hat, es funktioniert doch mit dem vorläufigen Work-Around, wenn man mindestens ein (Dummy-)BE in einer anderen Kiste hat und damit vor dem Labeldruck dann hin- und herschaltet.
Die Bugs habe ich beseitigt: - Etikettendruck: Bei Änderung Gehäuse/Lager LagerNr/Fach wird nun auch die Fach-Auswahl im Etikettendruck Dialog aktualisiert - Etikettendruck: Bei Auswahl Barcode CODE128 wurde die Anzahl Zeichen unter Umständen falsch berechnet, was führenden Nullen verursachte. - INI Parameter TableSaveSort=1, nun werden die Tabellen Sortierungen korrekt eingelesen. Hier der Download V3.0.17928: http://www.mmvisual.de/elela/ - Win 32 / 64 Sollte noch etwas auffallen, so schreiben.
:
Bearbeitet durch User
Sorry, habe jetzt erst mal wieder ier vorbeigeschaut: SUPER SUPER SUPER SUPER SUPER jetzt klappt das mit den Etikettendruckupdate :-) DANKE !!!!!!!!
Hallo, habe ein Problem bei Etikettendruck. Ich habe bei "Kiste F7" ein "Regal 1" angelegt. Unter "Bauteil F2" habe ich dann bei "Gehäuse/Lager" bei "Lager-Nr/Fach" die Bezeichnung "R1/B1" eingefügt. (R1=Regal 1 / B1=Boden 1). Wenn ich jetzt unter "Kiste F7" in den Etikettendruck gehe und "Je Etikett nur ein Bauteil" auswähle, werden trotzdem alle Bauteile mit der "Lager-Nr/Fach" = R1/B1 auf ein Etikett gedruckt. Darf "Lager-Nr/Fach" nur einmal vergeben sein? Grüße TNUG
Ja, die Funktion von EleLa ist richtig so. Er druckt ein Etikett für das Fach und da sind alle Teile drin. Wenn man nur ein Etikett für ein einzelnes Bauteil möchte so kann man das im Feld "Info" eingeben was da gedruckt wird und dann das mit einem P-Touch Drucker als einzelnes Klebeetikett drucken. Alle Info-Felder in EleLa sind zum Drucken vom "Schnellen Etikettendruck" gedacht.
Ok, danke für die Info. Dann ist quasi "Je Etikett nur ein Bauteil" ohne Funktion?
Eigentlich sollte EleLa dann mehrere Etiketten drucken.
Bei mir macht es das nicht. Bauteile haben das gleiche Fach und "je Etikett nur ein Bauteil" beim Druck ist ausgewählt. Dann wird das Etikett im Anhang gedruckt.
Ich brauche ein paar Tage bis ich das kontrollieren kann, bin gerade unterwegs...
Hallo, ich habe versucht EleLa unter Linux auszuführen. Es handelt sich um Raspian auf dem aktellsten Stand und läuft natürlich auf einem Raspberry Pi. Wenn ich EleLa ausführen möchte, wird die Programmausführung sofort abgebrochen und mit folgender Meldung quittiert: -bash: ./EleLa: Kann die Binärdatei nicht ausführen: Fehler im Format der Programmdatei Mache ich etwas falsch? Muss ich noch irgend ein zusätzliches Paket installieren? Grüße
Hi Markus, Sorry, habe diese Frage zuerst irrtümlich im Thread der v2 gestellt. Ich wollte mir heute die Zusammenarbeit von EleLa mit mySQL ansehen, bekomme allerdings nach der Umstellung auf mySQL diese Fehlermeldung:
1 | 15:03:15 --------- |
2 | 15:03:15 28.10.17 Start program V3.0.17421-64 |
3 | 15:03:15 IDE: Lazarus LCL 1.6.4.0, Free Pascal FPC 3.0.2, Zeos 7.1.4-stable |
4 | 15:03:15 Compile: 21.Apr.2017 09:45:22 SVN: 134M |
5 | 15:03:15 Use INI file: D:\EleLa mySQL\EleLa.ini |
6 | 15:03:15 Parameter [DB] Protocol=mysql-5 |
7 | 15:03:15 Parameter [DB] HostName=192.168.1.80 |
8 | 15:03:15 Parameter [DB] Port=3306 |
9 | 15:03:15 Parameter [DB] Database=elela |
10 | 15:03:15 Parameter [DB] User=elelauser |
11 | 15:03:16 Parameter [DB] Password=***** |
12 | 15:03:16 Parameter [Programm] VorlageDir=D:\EleLa mySQL\Daten\Vorlage\ |
13 | 15:03:16 Parameter [Programm] TempDir=D:\EleLa mySQL\Temp\ |
14 | 15:03:16 Parameter [Programm] BildDir=D:\EleLa mySQL\Daten\Bilder |
15 | 15:03:16 Parameter [Programm] VersionCheck=1 |
16 | 15:03:16 Parameter [Bauteil] DefHandbuchDir=D:\EleLa mySQL\Daten\Datasheets |
17 | 15:03:16 Parameter [Projekt] DefHandbuchDir=D:\EleLa mySQL\Daten\Projekt |
18 | 15:03:16 Parameter [Projekt] GeraetDefHandbuchDir=D:\EleLa mySQL\Daten\Projekt\Geraet |
19 | 15:03:16 Parameter [Projekt] DokuDefHandbuchDir=D:\EleLa mySQL\Daten |
20 | 15:03:18 Connect database... |
21 | 15:03:18 DB.Version: SQLite-DLL: 3.8.8.1 / MySQL: 5.5.57-0+deb8u1 |
22 | 15:03:18 Error on Test/Update Database. |
23 | 15:03:18 E: Cannot load language "current" |
24 | 15:03:18 Error: Cannot open database! SQL Error: Table 'elela.param' doesn't exist (Load param AdrKontakt) |
25 | 15:03:18 Connect database... |
26 | 15:03:18 DB.Version: SQLite-DLL: 3.8.8.1 / MySQL: 5.5.57-0+deb8u1 |
27 | 15:03:18 |
28 | 15:03:18 ------------------------------- |
29 | 15:03:18 Error!!! Database is newer as this EleLa program. Cannot open the database! |
30 | 15:03:18 Please update EleLa to a newer version. |
31 | 15:03:18 ------------------------------- |
32 | 15:03:18 |
Danach ist alles ausgegraut, sodass ich das Programm nur noch beenden kann. Der Zugriffstest auf die DB hat zuvor einwandfrei funktioniert. Ganz dubios: Nach der Rückstellung auf SQLite und Versionscheck meint EleLa, die Version 3.0.17107 ist neuer als V3.0.17421 was offensichtlich nicht stimmen kann, da diese vor der von mir eingesetzten compilliert wurde... Was läuft da falsch? Und noch eine Zusatzfrage: Die Nutzung einer remote mySQL DB ist aus meiner Sich nur dann sinnvoll, wenn Verschlüsselung unterstützt wird. Ist das in EleLa prinzipiell möglich? LG. JK
RPi schrieb: > ich habe versucht EleLa unter Linux auszuführen. Es handelt sich um > Raspian auf dem aktellsten Stand und läuft natürlich auf einem Raspberry > Pi. Ich denke die Linux Version ist eher für x86/x64 CPUs compiliert. Raspi = Arm-CPU LG. JK
Zu erst einmal ein Backup der bisherigen SQLite Datenbank machen (z.B. Zippen), damit nichts passieren kann. Existiert schon eine Datenbank "elela" auf dem MySQL Server? Wenn ja, dann die löschen. EleLa wieder auf SQLite umstellen und dann im Dialog: Extras-F10 > Log > Optionen > Datenbank Die Verbindung zu MySQL herstellen - Protokoll, Host, ... usw. einstellen - Datenbank Name "elela" (die noch nicht existiert) - Taste "Erzeuge neue Datenbank" drücken (die damit erzeugt wird) - Taste "Teste Verbindung" -> wird grün - Speichern - Schießen - EleLa neu starten - Alle Tabellen sind leer und EleLa ist mit MySQL verunden Danach die SQLite Datenbank in die noch leere MySQL Datenbank importieren. Extras-F10 > Datenbank > Import/Export > Importiere/Exportiere Datenbank. - bestehende SQLite Datei auswählen - Taste "Import" drücken - Dialog schließen - Nun sind alle Daten da Wegen dem Raspi-Problem: Schreibe bitte welches Board und welche Version Du verwendest (auch OS).
Alles klar. Nach 2 kleinen Problemen (anscheinend war es in SQLite irgendwie möglich 2x die gleiche Kategorie mit unterschiedlichen id's zu erstellen) hat es jetzt funktioniert. Es lag anscheinend wirklich daran, dass die Datenbank schon da war. Ich würde es allerdings richtiger Finden, wenn EleLa eine neue leere DB nur befüllen (Tabellen, Views, Funktionen, Stored procedures usw.) würde da der EleLa-dB-User dann nur Berechtigungen auf die eigene DB brauchen würde. LG. JK
Markus M. schrieb: > Wegen dem Raspi-Problem: > Schreibe bitte welches Board und welche Version Du verwendest (auch OS). Hallo Markus, Es handelt sich um ein Raspberry Pi 3 Modell B mit Raspbian Stretch with Desktop (Image with desktop based on Debian Stretch, Version: September 2017, Release date: 2017-09-07, Kernel version: 4.9)
Hallo RPi, hast Du das richtige Binary beim Download gewählt? Für den RPi musst Du folgende ZIP-Datei von http://mmvisual.de/elela herunterladen: EleLa_V3.0.17903_RaspberryPi.zip Viele Grüße R.
Jaroslaw K. schrieb: > EleLa-dB-User dann nur Berechtigungen auf die eigene DB brauchen würde. Das ist ja kein Problem. Man kann sich bei MySQL mehrere User anlegen, auch mit eingeschränkten Rechten. So kann man z.B. auch für jeden der mit EleLa arbeitet einen eigenen User anlegen und wenn man das Passwort in der INI Datei leer lässt so muss das Passwort bei Start der EXE eingegeben werden. Die Sicherheit der Daten überlässt EleLa somit komplett dem Server. Nur zu Anfang beim ersten Anlegen der DB braucht es natürlich entsprechende Rechte. Auch der automatische Update der DB (was EleLa bei neuen Versionen hin und wieder macht) braucht es entsprechende Rechte für Manipulation der Struktur, was dann der EleLa Admin dann machen sollte, und nicht jeder der EleLa nutzt (z.B. in Firmen).
Ich weiß, dass man die Berechtigungen beliebig einstellen kann. Das ist aber nicht das Problem. Gerade bei Großfirmen ist es relativ leicht DB-Admin Rechte auf die eigene DB zu bekommen. Sysadmin dagegen kaum. In Datenbanksystemen, in denen mehrere Kunden ihre Datenbanken haben, werden Berechtigungen sehr restriktiv gehandhabt. Jemand mit sysadmin-Berechtigungen hat ja Zugriff auf alle Datenbanken innerhalb der Instanz. Ich nutze EleLa nur privat, aber es interessiert mich warum es für die Installation und die Updates nicht ausreicht DB-Administrator zu sein (Abgesehen von "CREATE DATABASE" aber dafür gibt es ja in mysql die syntax "CREATE DATABASE IF NOT EXISTS" womit optional eine vom DB-Administrator angelegte DB verwendet werden könnte). LG. JK
Ich bin jetzt mit der Migration auf MySQL fertig. Es scheint soweit alles gut zu funktionieren. Allerdings gibt EleLa im Log leider keine Informationen zum SSL-Status aus. Die Abfrage
1 | show status like 'Ssl_version'; |
im EleLa liefert "Ssl_version TLSv1" als Antwort, aber der Server meint es gibt 0 SSL Sessions obwohl EleLa darauf von einer Windows Maschine aus zugreift...
1 | | Ssl_client_connects | 0 | |
2 | | Ssl_connect_renegotiates | 0 | |
3 | | Ssl_finished_connects | 0 | |
Da ich beim EleLa-DB-User den SSL-Zwang bei Verbindungen von anderen Maschinen eingestellt habe, gehe ich davon aus dass alles passt. Aber ganz klar ist mir das noch nicht. Kann ich die Dateien EleLa.sq3_UPxx löschen?
SSL hatte ich noch nie eingestellt. Ich arbeite bei MySQL nur im Intranet. Die _UPxx Dateien sind nur Backups, die EleLa vor einem größeren Update automatisch erstellt hatte. Falls doch was schief gehen sollte hätte der User wenigstens noch diese Backups. -> können problemlos gelöscht werden.
:
Bearbeitet durch User
R. schrieb: > Hallo RPi, > > hast Du das richtige Binary beim Download gewählt? Für den RPi musst Du > folgende ZIP-Datei von http://mmvisual.de/elela herunterladen: > > EleLa_V3.0.17903_RaspberryPi.zip > > Viele Grüße > > R. Vielen Dank. Ich hatte ohne darüber nachzudenken die normale Linux-Variante genommen. Es funktioniert!
Hallo Markus, hast du schon Zeit gefunden, nach dem Etikettendruck-Problem vom 19.10. zu schauen? Grüße TNUG
Nein, leider noch nicht. Ich habe es aufgeschrieben, geht also nicht vergessen ;-)
@tnug Der Bug ist nun beseitigt, der Download gibt es hier: Wichtig: Vorher ein Backup machen, da EleLa mit dieser Version zur jedem Datensatz eine eindeutige GUID hinzufügt. Diese GUID wird später einmal verwendet um einen automatischen Abgleich Server<>Lokal machen zu können, damit man offline problemlos arbeiten könnte. Hier der Download V3.0.17B19: http://www.mmvisual.de/elela/ - Win 32 / 64
Hallo Markus, ich hatte gerade deine letzte Version versucht... scheinbar ist da noch ein Fehler im DB-Update:
1 | 10:31:41 --------- |
2 | 10:31:41 24.11.17 Start program V3.0.17B19-64 |
3 | 10:31:41 IDE: Lazarus LCL 1.6.4.0, Free Pascal FPC 3.0.2, Zeos 7.2.1-rc |
4 | 10:31:41 Compile: 19.Nov.2017 12:02:02 SVN: 159 |
5 | ... |
6 | 10:31:41 Connect database... |
7 | 10:31:41 DB.Version: SQLite-DLL: 3.8.8.1 / MySQL: 5.5.57-MariaDB |
8 | 10:31:41 Database Version: V3.0.14427 |
9 | 10:31:41 Do Update 60 from Database. |
10 | 10:31:41 DropTable (storeteile) |
11 | 10:31:41 DropTable (storeuser) |
12 | 10:31:41 Create Table "storeuser" |
13 | 10:31:41 Create Table "storeteile" |
14 | 10:31:44 Error: Database-Update Nr. 60 error! Make the update manually. |
15 | 10:31:44 SQL: CREATE TABLE IF NOT EXISTS storeteile ( |
16 | ID int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, |
17 | IDGUID VARCHAR(38) COLLATE utf8_unicode_ci, |
18 | IDGUIDT DOUBLE, |
19 | ID_SERVER INTEGER NOT NULL, |
20 | StoreUser_ID INTEGER NOT NULL, |
21 | Bauteil_ID INTEGER, |
22 | BauteilLager_ID INTEGER, |
23 | Geloescht INTEGER, |
24 | Status INTEGER, |
25 | SucheBiete INTEGER, |
26 | Bezeichnung VARCHAR(100) COLLATE utf8_unicode_ci, |
27 | BezeichnungGL VARCHAR(100) COLLATE utf8_unicode_ci, |
28 | Gehause VARCHAR(100) COLLATE utf8_unicode_ci, |
29 | Beschreibung TEXT, |
30 | Zustand INTEGER, |
31 | Hersteller VARCHAR(100) COLLATE utf8_unicode_ci, |
32 | Menge DOUBLE, |
33 | Preis DOUBLE, |
34 | Foto BLOB, |
35 | MengeMerken DOUBLE, |
36 | Info VARCHAR(255) COLLATE utf8_unicode_ci, |
37 | OptA INTEGER, |
38 | OptB INTEGER, |
39 | OptC INTEGER, |
40 | Kennz INTEGER, |
41 | Geloescht INTEGER, |
42 | AendDatum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP |
43 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=0; |
@pat Der Bug ist nun beseitigt, der Download gibt es hier: Der Bug ist mir nicht aufgefallen, da bei Dir mehrere Updates automatisch nachgezogen wurden. Mit dieser EXE sollte der Update nun klappen. Die V3.0.17B19 habe ich vom Server gelöscht. Hier der Download V3.0.17B24: http://www.mmvisual.de/elela/ - Win 32 / 64
Hallo Markus, könntest Du die Linux version mal gegen eine neuere libmysqlclient bauen? Die lib mit dem SONAME 18 is richtig alt und bei vielen Linux distributionen nicht mehr dabei (Debian hat libmysqlclient20) Danke!
Ich versuche es. Mein Linux ist noch Suse V12, das man nicht updaten kann. Mit dem Parameter: [DB] LibraryLocation=<Pfad/xxx.so> Solltest Du die neuere libmysqlclient20 einbinden können. Welche SO Version ist .19 und .20? .18 war V5.5
:
Bearbeitet durch User
Markus M. schrieb: > Ich versuche es. Mein Linux ist noch Suse V12, das man nicht > updaten > kann. > > Mit dem Parameter: > [DB] > LibraryLocation=<Pfad/xxx.so> kann funktionieren, ist aber riskant. SO-NAME wird ja erhöht wenn inkompatible API Änderungen vorliegen. > Solltest Du die neuere libmysqlclient20 einbinden können. > > Welche SO Version ist .19 und .20? > .18 war V5.5 20 ist MysQL5.7 Allerdings ist z.B Debian auf mariadb umgeschwenkt, die eine libmariadb.so.18 mitbringt. Vielleicht macht es auch Sinn gegen MariaDB zu bauen, zuminderst für Linux. Nachdem MariaDB ein Fork von MySQL ist sollte es auch code-kompatibel sein.
Das aktuelle EleLa unterstützt auch diese Einstellung in der INI Datei: [DB] Protocol=MariaDB-5 oder [DB] Protocol=MariaDB-10 Hab ich zwar noch nicht direkt getestet, jedoch wenn ich z.B. auf meinem Android Handy ein MariaDB Server V10 laufen habe, dann hat sich EleLa per WLAN damit verbunden und man konnte arbeiten. Der mobile EleLa Datenbankserver ;-) (Dem Handy hab ich dazu eine fixe IP Adresse vergeben) Abgesehen davon sollte es ein Link auf die libmysqlclient.so geben, der automatisch auf libmysqlclient.so.20 zeigt und es sollte somit immer klappen.
:
Bearbeitet durch User
Markus M. schrieb: > Abgesehen davon sollte es ein Link auf die libmysqlclient.so geben, der > automatisch auf libmysqlclient.so.20 zeigt und es sollte somit immer > klappen. Nicht bei Debian... Da es möglich ist sowohl mysql als auch mariadb parallel installiert zu haben sind die libraries unabhängig, ohne symlink. Aber ich denke da ist dann der Einrag in der ini nützlich :)
2 kleine Bugs: - ProjektPos Import CAD CSV schlug fehl wenn schon Positionen vorhanden waren - ProjektPos lies sich nicht anhand vom Status filtern Feature: - Bestellung: Wenn links im Baum ein Auftrag angewählt ist und es wird eine neue Position angelegt, so wird diese Auswahl nun auch als "AuftragNr" übernommen. Hier der Download V3.0.17C09: http://www.mmvisual.de/elela/ - Win 32 / 64
Markus M. schrieb: > Das aktuelle EleLa unterstützt auch diese Einstellung in der INI Datei: > > [DB] > Protocol=MariaDB-5 > > oder > > [DB] > Protocol=MariaDB-10 Hat das auch die Linux Version? Ich krieg: 11:30:10 Error: Cannot open database! Requested database driver was not found (DB-Connect) (Egal ob ich LibraryLocation=/usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 drin habe oder nicht) Markus M. schrieb: > Abgesehen davon sollte es ein Link auf die libmysqlclient.so geben, der > automatisch auf libmysqlclient.so.20 zeigt und es sollte somit immer > klappen. Der Link ist nur im Development-Package vorhanden (welches normalweise nicht installiert ist)
Für Linux muss ich wohl mal das Lazarus neu aufsetzen. Unter Extras-F10 > Log Zeigt EleLa welche Versionen derzeit genutzt werden. Bei mir steht aktuell das drin:
1 | 12:44:53 IDE: Lazarus LCL 1.8.0.6, Free Pascal FPC 3.0.4, Zeos 7.2.1-rc |
Das Lazarus V1.8 habe aktuell nur ich, ich teste die EXE erst mal ein paar Tage bevor ich die euch mit dem neuen Lazarus gebe. Die wollte ich dann auch für das Linux verwenden, wenn ich das neu aufsetze. Aber erstmal soll die EXE unter Windows sauber laufen. Das mit "libmysql.so.20" hab ich in den Quellen dafür auch schon gefixt. Sollte bei Zeos noch 7.1.x stehen kann sein dass da noch nicht MariaDB-x drin ist, dann muss man die "mysql" Einstellung verwenden. Der Ini Parameter "LibraryLocation" ist schon seit ein paar Jahren in EleLa drin, der sollte dann gehen. Wichtig: Die 64 Bit EXE braucht auch die 64 Bit DLL/SO Datei, und kann mit einer 32 Bit DLL/SO nichts anfangen (so auch die 32 Bit EXE umgekehrt)
Gibt es eigentlich auch eine Möglichkeit Bauteile zusammenzuführen? Also ich habe ein Bauteil "C 1µF - Kerko" mit versch. Packages und ein Bauteil "C 1µF - ElKo" und so weiter mit versch. Kapazitäten. Das war aber eine blöde Idee, da es so ziemlich unübersichltich ist. Jetzt möchte ich Kerko und Elko zusammenführen mit all den Packages und Gehäusen die dahinter stehen und zu einem "C 1µF" vereinen. In Elela habe ich nur die Möglichkeit gefunden Buateilkisten zu wechseln aber nicht die Bauteile selber.
Ja gibt es, siehe Bild. Bei allen Tasten wo noch ein Popup Menü für weitere Funktionen aktiviert werden kann, wechselt das Mauszeiger-Symbol auf ein Zeiger mit "Menü".
Hallo Markus, ich habe eine Stückliste in "Projekt" eingegeben und wollte nun "Prüfe Mengen für Produktion" aufrufen. Dabei kommt es zu folgendem Fehler: 15:19:47 En: (mnProjMengeTestClick|TfrmPPosTest.SetProjID|TfrmPPosTest.OpenQ)/( $00000001000450D7) 15:19:47 E: SQL Error: FEHLER: Funktion trunc(double precision, integer) existiert nicht LINE 4: trunc(MAX(l.Menge) / SUM(p.Menge),0) AS PrjMax, ^ HINT: Keine Funktion stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen. Weitere Infos: * V3.0.17928-64 * DB: postgresql-9 Danke!
Hallo Flo, Dieser SQL Befehl überstreckt sich über 60 Codezeilen und birgt jede Menge Optionen, das kann ich so einfach nicht herausfinden :-( (Ich habe gerade auch keinen PostgreSQL Server aktiv.) Kann ich Dir eine Modifizierte EXE senden, die den SQL String so wie er in dieser speziellen Abfrage erstellt wird ausgibt? Schreib mir eine Mail, Thx. Grüße Markus PS: Der Bugt betrifft nur PostgreSQL, bei anderen Datenbanken ist die Syntax eine andere da der SQL Befehl umgeschalten wird.
:
Bearbeitet durch User
Hallo Markus, ich habe das Problem etwas analysiert (über die SQL-Logs von EleLa) und habe folgendes festgestellt: Die originale zum Fehler führende SQL-Abfrage sieht so aus:
1 | SELECT MAX(b.ID) AS BID, p.BauteilLager_ID AS LID, MAX(l.Menge) AS LagerMenge, |
2 | SUM(p.Menge) AS MengePos, MAX(k.MengeOffen) AS MengeProjOffen, |
3 | (MAX(l.Menge) - (SUM(p.Menge * k.MengeOffen))) AS LagerRest, |
4 | trunc(MAX(l.Menge) / SUM(p.Menge),0) AS PrjMax, |
5 | MAX(b.Bezeichnung) AS Bezeichnung, MAX(l.Bezeichnung) AS LBez, MAX(c.Bezeichnung) AS CBez |
6 | , Max(l.Barcode) AS Barcode, Max(l.ArtikelNr) AS ArtikelNr, Max(l.ArtikelNr2) AS ArtikelNr2 |
7 | FROM projektpos p |
8 | LEFT JOIN bauteillager l ON (l.ID = p.BauteilLager_ID) |
9 | LEFT JOIN projekt k ON (k.ID = p.Projekt_ID) |
10 | LEFT JOIN bauteil b ON (b.ID = l.Bauteil_ID) |
11 | LEFT JOIN gehause c ON (c.ID = l.Gehause_ID) |
12 | WHERE p.Projekt_ID = 3164 |
13 | AND p.BauteilLager_ID > 0 |
14 | AND (p.Art <> 1 OR p.Art IS NULL) |
15 | AND (l.Art <> 1 OR l.Art IS NULL) |
16 | AND (p.Status <> 5) |
17 | AND (p.ID=1796 OR p.ID=1798 OR p.ID=1800 OR p.ID=1802 OR p.ID=1804 OR p.ID=1806 OR p.ID=1808 OR p.ID=1810 OR p.ID=1812 OR p.ID=1814 OR p.ID=1816 OR p.ID=1818 OR p.ID=1820 OR p.ID=1822 OR p.ID=1824 OR p.ID=1826 OR p.ID=1828 OR p.ID=1830 OR p.ID=1832 OR p.ID=1834 OR p.ID=1836 OR p.ID=1838 OR p.ID=1840 OR p.ID=1842 OR p.ID=1844 OR p.ID=1846 OR p.ID=1848 OR p.ID=1850 OR p.ID=1852 OR p.ID=1854 OR p.ID=1856 OR p.ID=1858 OR p.ID=1860 OR p.ID=1862 OR p.ID=1864 OR p.ID=1866) |
18 | GROUP BY LID |
19 | ORDER BY Bezeichnung |
Die Postgres benötigt in der Funktion trunc als ersten Parameter einen "numeric", wenn ich die Abfrage entsprechend änder' und als numeric caste, geht es:
1 | SELECT MAX(b.ID) AS BID, p.BauteilLager_ID AS LID, MAX(l.Menge) AS LagerMenge, |
2 | SUM(p.Menge) AS MengePos, MAX(k.MengeOffen) AS MengeProjOffen, |
3 | (MAX(l.Menge) - (SUM(p.Menge * k.MengeOffen))) AS LagerRest, |
4 | trunc(cast(MAX(l.Menge) / SUM(p.Menge) as numeric),0) AS PrjMax, |
5 | MAX(b.Bezeichnung) AS Bezeichnung, MAX(l.Bezeichnung) AS LBez, MAX(c.Bezeichnung) AS CBez |
6 | , Max(l.Barcode) AS Barcode, Max(l.ArtikelNr) AS ArtikelNr, Max(l.ArtikelNr2) AS ArtikelNr2 |
7 | FROM projektpos p |
8 | LEFT JOIN bauteillager l ON (l.ID = p.BauteilLager_ID) |
9 | LEFT JOIN projekt k ON (k.ID = p.Projekt_ID) |
10 | LEFT JOIN bauteil b ON (b.ID = l.Bauteil_ID) |
11 | LEFT JOIN gehause c ON (c.ID = l.Gehause_ID) |
12 | WHERE p.Projekt_ID = 3164 |
13 | AND p.BauteilLager_ID > 0 |
14 | AND (p.Art <> 1 OR p.Art IS NULL) |
15 | AND (l.Art <> 1 OR l.Art IS NULL) |
16 | AND (p.Status <> 5) |
17 | AND (p.ID=1796 OR p.ID=1798 OR p.ID=1800 OR p.ID=1802 OR p.ID=1804 OR p.ID=1806 OR p.ID=1808 OR p.ID=1810 OR p.ID=1812 OR p.ID=1814 OR p.ID=1816 OR p.ID=1818 OR p.ID=1820 OR p.ID=1822 OR p.ID=1824 OR p.ID=1826 OR p.ID=1828 OR p.ID=1830 OR p.ID=1832 OR p.ID=1834 OR p.ID=1836 OR p.ID=1838 OR p.ID=1840 OR p.ID=1842 OR p.ID=1844 OR p.ID=1846 OR p.ID=1848 OR p.ID=1850 OR p.ID=1852 OR p.ID=1854 OR p.ID=1856 OR p.ID=1858 OR p.ID=1860 OR p.ID=1862 OR p.ID=1864 OR p.ID=1866) |
18 | GROUP BY LID |
19 | ORDER BY Bezeichnung |
Zusätzlich habe ich festgestellt, dass ich bei machen Stücklistenpositionen NULL-Werte in der Menge hatte (Tabelle "projektpos", Spalte "menge"). Ob das einen Einfluss hat, kann ich nicht mehr sagen, da ich die Daten schon vorher korrigiert habe...
Oh, bevor ich es vergesse: Du hattest mal die Suchfunktion für die Postgres wg. Groß-/Kleinschreibung angepasst. Die Fenster in der Stücklistenverwaltung zum Suchen von Artikeln müssten auch noch angepasst werden, da hier nach wie vor unterschieden wird. Vielen Dank! Flo
Schau mal ob beide Bugs nun weg sind. (V3.0.18124) http://www.mmvisual.de/elela/ Es müssten nun für PostgreSQL alle LIKE in EleLa auf ILIKE umgebogen sein. Gut dass EleLa so ziemlich alles loggen kann ;-)
:
Bearbeitet durch User
Ich hab die neue EXE ausprobiert, aber leider schlägt das Update 64 fehl, siehe Screenshot anbei. Das Programm bleibt dann hängen, darum konnte ich nur noch einen Screenshot machen... Kannst Du mir das Update direkt schicken? Dann führe ich das manuell aus. Das Logging ist wahrlich echt super :) Flo
Hallo Flo, Ich habe den Fehler beseitigt. Lade die EXE nochmal, dann sollte es gut sein. Die im hintergrund verwendete DB Komponente hat noch ein Bug bei PostgreSQL, ich habe nun die Vorgänger-Version eingebunden :-/ Das bei Dir bereits zum Teil ausgeführte Update erkennt EleLa korrekt und macht an der Stelle weiter wo des fehl geschlagen hat. Dieses Update von Hand zu machen ist fast nicht möglich, da alle Datensätze eine GUID bekommen, um damit zu einem späteren Zeitpunkt einen Online/Offline Abgleich realisierne zu können. Markus.
Hallo Markus, die Version 3.0.18125 läuft jetzt, Update 64 wurde auch ohne Probleme eingespielt. Das "Prüfen Menge Produktion" läuft jetzt auch, was mich hier ein wenig verwirrt: Die Funktion kann ich innerhalb einer Stückliste aufrufen, wenn ich bei "Menge offen" einen gespeicherten Wert > 0 habe. Aber in dem erscheinenden Fenster sind dann alle Projekte aufgeführt. Könntest Du die Funktion auch so anlegen, dass man sie immer ausführen kann und nicht aus einer Stückliste heraus? Ansonsten bin ich begeistert, das vereinfacht den Bestellverlauf deutlich! Ich werde mich weiter damit beschäftigen. Was bedeutet denn die Spalte "Menge Bestellt"? Die Menge die bestellt werden muss? Oder die schon bestellt wurde?
Die Funktion wird nur bei Projekt aufgerufen. Ich musste hier alle Projekte mit rein nehmen, denn sonst werden die falsche benötigte Mengen errechnet wenn man mehrere Projekte gleichzeitig machen möchte. Menge Bestellt ist die Anzahl der bereits bestellten Bauteile. Damit sieht man dass man bei zu geringem Lagerbestand wohl noch warten muss bis es ankommt.
Bei "Menge Bestellt" werden bei mir anscheinend die Summen der getätigten Bestellungen angezeigt, nicht die noch zu erwartenden Eingänge. Ich habe z.B. ein Teil, welches ich einmal in 2017 mit Menge 100 Stk eingekauft habe und über Elela auch in gleicher Menge dann "als geliefert buchen" und "in Lager buchen" getätigt habe. Beide Felder sind auch mit Menge 100 in der Bestellung ausgefüllt und die Bestellposition ist als "eingelagert" gekennzeichnet. Jetzt steht bei mir in der Spalte "Menge Bestellt" bei diesem Artikel die Menge "100" drin. Sollte aber eigentlich 0 sein?
Ja, sollte dann 0 sein. Kannst Du ein SELECT * FROM bestellen WHERE BauteilLager_ID= ??? auf die DB ausführen und schauen wie viele Datensätze zu sehen sind? Das ??? mit der ID Zahl des Datensatzes aus Gehäuse/Lager ersetzen.
Also mit dem getesteten Bauteil kommt eine Ergebniszeile, was auch korrekt einer Bestellung entspricht (die eingelagerte). Ich habe noch ein anderes Bauteil (zweimal bestellt bisher und auch eingelagert) geprüft, hier taucht die Summer beider Mengen in der Spalte "Menge Bestellt" auf. Offensichtlich kann er bei der Produktionsabfrage nicht richtig auf noch offene Bestellungen einschränken? Ich werde mir hierzu nochmal das SQL grad anschauen
EleLa sollte anhand der Spalte "Status" aus der Tabelle "bestellen" wissen was mit eingerechnet/gezeigt werden sollte. Entweder diese Filterung fehlt oder ist fehlerhaft in der SQL Abfrage.
Du machst anscheinend zwei SQL-Abfrage: Eine zum generieren der Liste mit den Projektmengen, dann nochmal jeweils eine pro Zeile um die Bestellmengen zu ermitteln. In dieser zweiten Abfrage schränkst Du u.a. über den Status ein: [...] AND ((b.Status >= 0 AND b.Status <= 3) OR b.Status = 5) Bei mir haben eingelagerte und Verbuchte Positionen den Status '3', dieser wird aber mit der obigen Abfrage mit erfasst (b.Status <= 3). Sollte es hier nicht dann "b.Status < 3" heissen? Ich habe im Moment keine Zuordnung der Stati zu den nummerischen Werten...
Ich muss mir das in Ruhe nochmal anschauen, aktuell hab ich viel zu tun bei der Arbeit...
Hallo markus, die Version V3.0.18125 beinhaltet offenbar noch einen Fehler beim Bestelleingang Lager verbuchen: 15:56:40 E: SQL Error: FEHLER: ungültige Eingabesyntax für Typ double precision: »2018-02-01 15:56:40.555« (btnBestellLagerBuchClick|BauteilBewegen)/( $0000000100046362) Parallel zu der Fehlermeldung wird zwar der Mengenzähler unter 'Lager/Gehäuse' von dem Bauteil erhöht, es gibt aber keine Einträger unter 'Lagerbewegung'. Flo
Hallo Flo, Prüfe Menge für Produktion: Nun werden "Menge Bestell" und "Menge Bestellt offen" in 2 Spalten angezeigt. Dann weiß man was tatsächlich bestellt ist und was man erst noch bestellen möchte. Der Bestell-Status: - offen ==> "Menge Bestellt offen" - bestellt, geliefert, Teillieferung ==> "Menge Bestell" Wobei bei Teillieferung die Teil-Menge "Eingelagert" natürlich von der Gesammt Bestell-Menge abgezogen wird. Lagerbewegung: Bug beseitigt. EleLa V3.0.18201 als Win32/64 http://www.mmvisual.de/elela/
Hallo Markus, habe die neue Version getestet: * Lagerbewegung: einwandfrei! * Prüfe Menge für Produktion: Läuft auch, die Tabelle ist schlüssig und korrekt bei mir! Aber ich bekomme Fehlermeldungen, wenn ich jetzt im Fenster links weitere Projekte versuche mit dem Haken dazuzunehmen: 10:34:17 E: Access violation (mnProjMengeTestClick|TfrmPPosTest.lstProjClick|TfrmPPosTest.OpenQ)/( $0000000100046362) 10:34:17 E: Access violation (TfrmPPosTest.lstProjClick|TfrmPPosTest.OpenQ)/( $0000000100046362) Florian
Hallo Markus, habe die neue Version getestet: * Lagerbewegung: einwandfrei! * Prüfe Menge für Produktion: Läuft auch, die Tabelle ist schlüssig und korrekt bei mir! Aber ich bekomme Fehlermeldungen, wenn ich jetzt im Fenster links weitere Projekte versuche mit dem Haken dazuzunehmen: 10:34:17 E: Access violation (mnProjMengeTestClick|TfrmPPosTest.lstProjClick|TfrmPPosTest.OpenQ)/( $0000000100046362) 10:34:17 E: Access violation (TfrmPPosTest.lstProjClick|TfrmPPosTest.OpenQ)/( $0000000100046362) Flo
Ist behoben: EleLa V3.0.18202 als Win32/64 http://www.mmvisual.de/elela/ Sorry war ein Copy/Paste Fehler wegen der neuen Spalte, den ich nicht bemerkt hatte da meine DB im PostgreSQL Server nur ein Projekt drin hatte :-/
Das erste Setup-Paket für EleLa V3 ist da: http://www.mmvisual.de/elela/ "Setup_EleLa.exe" Das Setup Paket enthält die 32 und 64 Bit Windows EXE. Eine bestehende Installation wird erkannt und führt automatisch ein Update der Dateien aus. Bitte macht vor dem Setup ein Backup. Bei Fehler bitte schreiben, in ein paar Wochen will ich das Setup auf der Homepage veröffentlichen. Grüße Markus
AVAST meldet das die Datei durch "DRep" infiziert ist. Kann Sie nicth laden!
Das Problem müsste bei dir lokal liegen, die Datei lässt keinen der 67 Virenscanner von virustotal Alarm schlagen: https://www.virustotal.com/de/url/c218b9198820c3a236d71cb361902f29daaf285adea6a44b4d35cecc51596861/analysis/1518783551/ Edit: Sehe gerade, hier ist der entscheidende Bericht: https://www.virustotal.com/de/file/ae9d269bdecdd86be4f734b352a5cebe4c68b4291764acbcf500613f99863065/analysis/1518783558/ 1/67 Virenscanner schlägt Alarm, ist dann wohl ein false positive.
:
Bearbeitet durch User
Ich habe das Setup mit 2 Virenscannern getestet, kein Alarm. Auch die Datei im Webspace hat exakt die gleiche Größe wie die Originale, die wurde nicht manipuliert. Ich denke es ist ein falscher Alarm.
Hallo Markus, mir ist noch was aufgefallen: Wechel ich unter Projekt-Geräte in eine Stückliste und trage dort eine Menge in 'Menge offen' ein, bzw. ist dort schon eine Menge drin: Dann kann man den Button rechts daneben mit den drei Punkten nicht betätigen, der ist deaktiviert. Erst wenn man in den Stücklisten-Positionen ein/zwei Zeilen neu anwählt, wird der Button aktiv. Flo
RAR, EXE, Virenscanner, Closed Source Da dreht sich ja einem der Magen um. Woher soll ich wisse dass du meinen Rechner nicht ausspionierst? Und warum sollte man sowas benutzen? Um es für Dich kostenlos zu testen? Was mache ich wenn Du morgen im Lotto gewinnst und keinen Bock mehr hast? Dann sind meine ganzen Daten und damit die Arbeit wertlos. Kein OSX? Kein Linux? Warum nur für Windows? Haben die nicht schon genug Marktanteile? Komm' mal in der Gegenwart an. Als FOSS-Projekt auf github o.ä. könnte so etwas sicher ein nettes zukunftsfähiges Projekt werden, aber so ist es m.E. reine Zeitverschwendung.
@Flo Nein, das ist kein Bug. Erst wenn der Datensatz gespeichert ist wird der Button aktiviert.
Ja, das dachte ich mir schon. Wenn ich aber neu die Maske wechsle (und einen bereits gespeicherten Datensatz somit anzeige) ist er deaktiviert. Das sollte denke ich nicht so sein. Mit dem Wechseln in der Tabelle rufe ich im Hintergrund dann ein 'Speichern' auf, obwohl es eigentlich nichts zu speichern gibt. Aber das aktiviert erst dann den Button.
Kannst Du ein paar Screenshots machen bei denen ich sehe wo Du nacheinander klickst? Ich glaub ich verstehe nicht richtig wie Du das meinst.
Hallo Markus, hier der Ablauf: 0) EleLa starten 1) Reiter Projekt wechseln 2) Reiter "Geräte" wechseln 3) In Liste "Übersicht" unten eine Position mit einer "Menge offen" auswählen 4) Button "..." ist nicht aktiviert -> Kann nicht geklickt werden! Erst wenn ich unten im Reiter "Positionen" einmal in die Tabelle der einzelnen Stücklistenpositionen klicke (z.B. auf den zweiten oder dritten Eintrag), dann wird der Button "..." oben aktiv geschalten. Flo
Verwunderter schrieb: > Kein Linux? Eigentlich sollte man deinen Beitrag ignorieren ... machs du besser o.O Aaaber... es gibt ein binary für Linux. Das beweist, dass du einfach nur Trollen möchtest. Ich denke, dass das auch auf einen Mac laufen sollte, wenn es Windows und Linux gibt. Oder?
Hallo Markus, anbei eine Bug-Meldung zu der aktuellsten Version V3.0.18202. Unter "Bauteil - F2" --> "Gehäuse/Lager" erscheint wenn ich den Button "Auswahl Gehäuse" auswähle folgende Fehlermeldung E: qryC : Field not found : "Text" (spBLCaseClick|TfrmAuswahl.tvTypChange) und die Tabellen bleiben leer. Manuel...
@ Flo: Ich habe mir das angeschaut, der "..." Button ist nur nicht aktiv weil da keine Positionen hinterlegt sind. EleLa ist so klug und weiß dass es da keine Bauteile zu planen gibt. @ Manuel: Bug ist behoben. Thx für die Meldung. Unter http://www.mmvisual.de/elela/ sind folgende Versionen V3.0.18317 verfügbar: - Win32/64/Setup Paket - Linux32/64 - Updatebeschreibung PS: Wenn mir jemand einen Mac spendet, dann übersetze ich EleLa gerne für einen Mac. Ich habe schon mal einen extrem alten Mac bekommen, leider läuft darauf nicht das aktuelle Lazarus -> ich kann die EXE nicht bauen. :-/ (Mac OS ist zu alt)
Unter http://www.mmvisual.de/elela/ sind folgende Versionen V3.0.18318 geupdated: - Win32/64/Setup Paket Im Lazarus Compiler 1.8.0 war ein Bug der dafür sorgte dass bei Drop-Down Feldern die Auswahl nicht beim ersten mal anklicken in die Datenbank übernommen hatte. Mit dem aktuellen Compiler 1.8.2 ist das Problem beseitigt worden, daher nochmals die EXE.
Nun ist auch bei den Linux Versionen ist der neue Compiler verwendet. Bitte testet es, bei Fehlern gebt Bescheid.
Hallo Markus, Nach dem neuen Update wird "Elela.ulp" nicht mehr importiret
Ich habe den Bug wohl gestern schon zufällig mit korrigiert. Die aktuelle EXE V3.0.18319 sollte den CSV Import korrekt durchführen. Vor ein paar Monaten hatte ich die Datensätze mit einer GUID versehen, darin war noch der ein oder andere Bug der nun (hoffentlich komplett) behoben ist. Ein User hatte die Variante "SQLite" über eine VPN Verbindung genutzt, leider ging dabei die Datenbank kaputt, da SQLite die ganze Datei über VPN/Internet handeln muss. Bitte macht solche Dinge nicht, sondern nutzt in dem Fall besser einen SQL Server. In diesem Fall war es so dass ein großer Teil der Bilder nicht mehr lesbar war, daher erkennt dies EleLa nun und blendet anstatt dem Bild ein "kein Foto" Bild ein. Denn ohne dieses Bild kann man das defekte nicht mehr aus der Datenbank löschen und auch keine neue Bilder mehr dem Datensatz hinzufügen (nur manuell umständlich über die Datenbank). Unter http://www.mmvisual.de/elela/ sind folgende Versionen V3.0.18319 neu verfügbar: - Win32/64/Setup Paket - Linux32/64 - Hilfe-Datei: EleLa.chm
Danke, jetzt funktioniert es ohne Probleme Bent
Die Updates sind nun auch in der EleLa Versionsabfrage enthalten, siehe Screenshot. Nun kann das aktuelle EleLa V3.0.18319 sowie die Setup Pakete über die Versionsabfrage geladen werden. Wichtig: Vor einem Update immer eine Datensicherung machen! Ein ZIP vom ganzen EleLa Ordner, zumindest bei SQLite die Datenbankdatei "EleLa.sq3". Wer nicht das Setup installieren möchte kann sich die einzelnen Versionen als ZIP laden und die Dateien einfach ersetzen (EXE, Datenbank-DLL und Hilfe-Datei). Wer Updaten möchte von der 32 Bit EXE auf die 64 Bit EXE muss nur sicherstellen dass auch die DLL in der 64 Bit Ausführung im EleLa Ordner liegt. Die SQLite 64 Bit DLL ist im ZIP enthalten, von den anderen Datenbanken muss diese jeweils vom Datenbankhersteller aus dem Internet geladen werden. Puh ... mal wieder ein Meilenstein geschafft :-)
Hallo Markus, Woran unterscheiden sich Elktroniklager und Warenlager? Freundliche Grüße, Richard
Hallo Markus, Bei Bauteil/Etikettendruck unter Win7 und SQlite ist der Pulldown-Menü "Auswahl Kiste" leer. Woran kann das liegen? 03:09:08 DB.Version: SQLite-DLL: 3.22.0 Alles neu installiert. Richard
Hallo Richard, 1) nur in den Bezeichnungen der Felder, Bauteile > Artikel, Gehäuse > Verpackung 2) Man muss erst unter Gehäuse /Lager Bauteile anlegen und dann denen die Kiste zuordnen sowie eine LagerNr /Fach eingeben
Hallo Markus, Ich befürchte, ich verstehe dich nicht. Siehe Bild. Eine Allgemeinsuche ist nicht möglich? Wie z.B. usb alle felder durchsuchen. Bei Spannungsreglern, Wandlern, R's oder C's wäre das IMHO sehr nützlich. Sortierung nach z.B. Nennwert, Spannungsbereich bzw. Toleranz. Richard
:
Bearbeitet durch User
Danke, jetzt mit LagerNr/Fach klappts.
:
Bearbeitet durch User
Nun auch das Update für den RaspberryPi. http://www.mmvisual.de/elela/ Die Anleitung für eine Neuinstallation - für einen neuen RaspberryPi, auch wenn man zum ersten mal damit Kontakt hat: EleLaRPiInstall.pdf Das ZIP mit allen Daten für die Neuinstallation auf einen RPi: EleLa_V3.0.18401_RaspberryPi_Install.zip Wie man das entpackt und fertig einrichtet ist im PDF beschrieben. Sollte noch was unklar sein oder fehlen, bitte schreiben. Das ZIP für den Update der EXE, die EXE muss nur ersetzt werden: EleLa_V3.0.18401_RaspberryPi.zip Die jeweils aktuelle Hilfe ist die "EleLa.chm" und ist für alle Systeme gleich. Die Installation ist darin unter: Installation > Installation Raspberry Pi beschrieben. Der Raspberry Pi und deren Pakete rundherum sind schon seit einigen Jahren auf dem Markt und es sind erstaunlich viele Softwareprodukte dafür verfügbar. Wer den kauft sollte gleich das Gehäuse und eine schnelle 64GB Speicherkarte sowie das Original Netzteil mit bestellen. Als einfache Internet Arbeitsstation ist der sehr praktisch, günstig und Stromsparend. Das EleLa selbst braucht einige Sekunden bis es startet, auch beim Beenden braucht es länger, aber funktioniert gut ;-)
Hallo Markus, sind die Dateien am Server ok? Ich bekomme beim Download-Versuch einen CRC-Error bei den Zeilen, die im Screenshot noch gelb sind. Die Hilfe-Datei habe ich auch versucht manuell zu holen, aber sie ist leer oder beschädigt... LG. Jarek
Dankeschön für die Mitteilung. Ich hatte zu Letzt die Hilfedatei geupdatet (wegen dem RaspberryPi Tutorial) und danach nicht dran gedacht dass ich die MD5 Checksumme neu berechnen muss. Die muss ich in einer separaten Datei ablegen und auch hochladen. Jetzt ist es korrigiert.
Alles klar, aber hast Du noch eventuell eine Idee warum die neue Hilfedatei bei mir trotz manuellem Download keinen Inhalt hat? LG. Jarek
Ok, vergiss es. Ich habe es noch einmal entpackt und jetzt geht es. Danke! LG. JK
Markus, mir ist heute aufgefallen, dass wenn man ein DB-Backup macht, jede Menge "Create Table" und "Create Index" Einträge im Log landen. Es gibt aber keine Hinweise darauf, dass es sich um die Backup-DB handelt und nicht um die Haupt-DB. Könnte es nicht hilfreich sein, zumindest eine Meldung in der Art "Starte Export in Datei {Dateiname} ..." ins log vor diesen Meldungen zu schreiben? Ich denke im Fall einer späteren Fehlersuche könnte das Hilfreich sein. LG. Jarek
Ja, DB Operationen werden prinzipiell in das Log geschrieben, unabhängig ob es nun die DB ist oder die DB vom Backup. Ich habe den Eintrag noch zu geschrieben, wird beim nächsten Update drin sein.
Nun kommt beim Start der EXE ein Splash-Screen, da die RaspberryPi EXE recht lange benötigt sieht man jetzt sofort dass was passiert. Es war etwas schwierig das so hin zu bekommen dass dieser Splash-Screen vernachlässigbar wenig Rechenleistung benötigt. Der Splash-Screen für Windows/Linux wird automatisch beim nächsten Update mit dabei sein. http://www.mmvisual.de/elela/ - RPi V3.0.18419 Auf meiner Homepage ist nun auch die RPi Version offiziell verfügbar.
Hallo Markus, Im Abschnitt "Projekte Verwalten - Positionen" steht in der Dokumentation: "Entweder es wird jedes einzelne Bauteil einer Schaltung aufgenommen, z.B. R1, R2 usw. oder es wird eine Position für z.B. alle R's mit 10 KOhm und der Anzahl Menge angelegt." Ich ziehe die 2. Methode vor, da es IMHO übersichtlicher ist, habe damit aber ein Problem wenn ich etwas schnell wieder finden will. Das "Schnellsuchen-Feld" ist hier keine Hilfe solange es nicht irgendeine Art von Joker-Zeichen unterstützt wie z.B. * oder für eine Datenbank richtigerweise % (Bei der Bauteilsuche (F5) funktionieren beide). Wenn ich derzeit im Feld "Symbol" "C20,C21,C28,C29,C30,C31,C38,C39,C40,C41" eingetragen habe, dann finde ich zwar den C20 sofort, aber den C21 bereits nicht mehr. Wäre es möglich das "Schnellsuchen-Feld" dahingehend zu erweitern? LG. JK
Ich schreibe das auf. Ich nutze lieber die erste Variante, denn EleLa kann, sofern die X/Y Position des Bauteils bekannt ist, auch das Bauteil im Bild markieren. Das hilft bei Bestückung und Fehlersuche. Dazu muss das Bild ebenfalls mit EleLa skaliert werden. SO kann ich komplett ohne CAD oder Papier bestücken. Oder ich klicke im Bild auf das Bauteil und EleLa springt dann zu der Position.
Die Funktionen für Projekte oder Geräte habe ich vorher noch nicht verwendet und diese Möglichkeiten sind mir bisher noch nicht aufgefallen, aber in diesem Fall macht die 1. Methode wirklich mehr Sinn. Die Suche mit Joker-Zeichen könnte eventuell für andere Spalten trotzdem nützlich sein. Vielen Dank! LG. JK
Bisher hat die Schnell-Suche 2 Funktionen. Wenn man zu Anfang ein * eintippt, dann wird anhand dem die Suche umgeschaltet und nur noch die Bauteile die zutreffen gefunden. Siehe Bild... Bei den Positionen ist das nicht drin, das ist relativ kompliziert da die SQL Abfrage schon recht komplex ist.
Du bist hier aber wo anders unterwegs, Ich meine das Feld im Projekt-Management/Verwaltung der Positionen (siehe Screenshot). Also mit der Markierung der Bauteile komme ich irgendwie überhaupt nicht klar. Ich versuche es so wie im Helpfile beschrieben und ich sehe keine Markierung, oder sie ist ganz wo anders, als sie sein sollte. Hast Du evtl. eine genauere Beschreibung oder einen Link auf ein YouTube Video zu diesem Thema? :-) Eine Frage noch: Wenn ich die Kreuze bewege, ergeben sich teilweise auch negative Werte in den blauen Felder. Einen Minus dort manuell eintippen ist nicht möglich, da das Bild dann skaliert wird. Ist das so geplant? LG. JK
Ok, ich habe das mit den Markierungen doch geschafft. Danke! LG: JK
Noch eine Frage: wie stehen die Chancen, dass Du irgendwann mal EleLa das Importieren der Positionsdateien aus KiCad beibringst? Hier ein kurzer Ausschnitt als Beispiel:
1 | ### Module positions - created on 04/26/18 20:18:34 ### |
2 | ### Printed by Pcbnew version pcbnew 4.0.7 |
3 | ## Unit = mm, Angle = deg. |
4 | ## Side : top |
5 | # Ref Val Package PosX PosY Rot Side |
6 | C8 22µ CP_Tantalum_Case-A_EIA-3216-18 142.8750 -100.9650 0.0000 top |
7 | C9 360p C_0603 165.7350 -99.0600 270.0000 top |
8 | C10 360p C_0603 174.3100 -93.9800 180.0000 top |
9 | C11 4µ7 C_1206 182.2450 -104.7750 90.0000 top |
10 | D1 1N5711 D_MELF 175.8950 -99.0600 0.0000 top |
11 | Q1 MMBT3904 SOT-23 97.7900 -95.8850 0.0000 top |
12 | Q2 MMBT3904 SOT-23 117.4750 -105.4100 0.0000 top |
13 | Q3 MMBT3904 SOT-23 126.3650 -100.9650 90.0000 top |
14 | Q4 MMBT3904 SOT-23 152.4000 -99.6950 0.0000 top |
15 | Q5 MMBT3904 SOT-23 169.5450 -99.0600 0.0000 top |
16 | Q6 MMBT3904 SOT-23 187.9600 -100.3300 0.0000 top |
17 | ## End |
LG. JK
Ich habe jetzt keine Möglichkeit das einzustellen gefunden. Die BOM-Datei wird als CSV mit ; als Trennzeichen exportiert, aber die Positionsdatei leider nicht. KiCad schreibt allerdings vor (und erzwingt es soweit ich weiß) dass die Namen der Library Elemente (also auch Footprints) keine Abstände enthalten dürfen. Somit enthalten alle Werte mit Ausnahme von "Val" keine Abstände. Mit einer Regular-Expression lässt sich so etwas schön in die einzelnen Werte aufteilen da man nur von vorne eine Spalte nimmt und eine fixe Anzahl von Spalten vom Ende der Zeile. Alles dazwischen ist dann der "Val"-Wert. LG. JK
Ich habe jetzt testweise einen Konverter geschrieben, der eine KiCAD Positionsdatei in das, von Dir in der Dokumentation beschriebene, Target-Format konvertiert. Wenn ich die konvertierte Datei in der Projekte-Verwaltung unter Positionen importiere, passiert scheinbar überhaupt nichts. Keine Fehlermeldung, keine Änderung in der Stückliste und kein einziger Eintrag im Log. Wie kann ich feststellen, warum das nicht funktioniert? LG. JK
Ok, ich habe das Problem gefunden: EleLa mag keine Abstände in der Header-Zeile (bei den Spalten-Namen). Aber jetzt habe ich eine andere Frage: Nach dem Import der Zeile
1 | 51;L1;22µH;L_12x12mm_h6mm;119,3800;-93,9800;top;0,0000° |
sehe ich in der entsprechenden Zeile, in der "Wert"-Zelle ein zusätzliches Zeichen, welches in der Eingabedatei nicht vorhanden war (zwischen 2 und µ, siehe Bild). Betroffen sind alle Zeilen, die das "µ" enthalten... Hast Du eine Idee woran das liegen kann? Encoding der CSV-Datei (erwartet hier EleLa etwas bestimmtes)? LG. JK
Auch das weiß ich inzwischen. Mit ANSI-Encoding scheint es gut zu funktionieren. Es schaut so aus, als ob ich hier öffentlich Selbstgespräche führen würde. Sorry dafür. :-) LG. JK
Jaroslaw K. schrieb: > hier öffentlich Selbstgespräche führe Mache ich auch manchmal hier ;-) Da relativ wenige Bugs auffallen ist entsprechend wenig traffic hier. EleLa erkennt nicht nur Target, auch gibt es für Eagle eine Export Funktion die erkannt wird. Nur muss es irgendwie ein CSV Format sein. Ich habe jetzt in EleLa die Spaltenerkennung "Val", "Rot" und "Side" hinzugefügt, dann braucht KiCAD das nur noch als CSV verpacken, bzw. der Konverter nur noch die Tabelle als CSV Wandeln und es funktioniert. In der nächsten Exe ist das dann drin. Du kannst ja bei KiCAD eine Bug-Meldung schrieben mit dem Wunsch dass die Stückliste als CSV speicherbar ist. Andere Dateicodierungen als Ansi sollten auch funktionieren, wenn in den ersten Bytes der Datei die Codierung korrekt aufgeschlüsselt ist.
Wenn ich auf den Button "Gehe zu Kiste" unter "Bauteil - Gehäuse/Lager" klicke, wechselt EleLa zum Tab Kiste, und markiert die richtige Kiste, führt aber oft keinen Refresh durch, sodass ich eine leere Liste oder den Inhalt der vorher markierten Kiste sehe. Ein Bug? Meine Version: V3.0.18319-64 LG. JK
Halli Hallo, ich hab Probleme mit dem schnellen Etikettendruck... Als Drucker habe ich den QL500 und Etiketten hab ich die 62x29mm. In den Druckeigenschaften hab ich eingestellt das die Druckaufträge direkt zum Drucker gesendet werden sollen Wenn ich nun das Etikett drucken will, stelle ich die passende Etikett Größe ein und nach dem Abschicken des Druckauftrags meckert der Etiketten Drucker das die Falschen Etiketten eingelegt sind. Wenn ich dann im Drucker Dialog nachschaue, dann hat er die Etikettengröße von 62x29mm auf 62mm eingestellt. Vielleicht übersehe ich was.. Hat jemand einen Tipp? Vielen Dank LG.
Hallo, ja bei mir sieht es von den Einstellungen her genau so aus.. Wenn ich jetzt die Bandbreite (Im Fenster wie bei dir in Bild 2) auf 62x29mm stelle und dann den Druck starte meldet er, dass die ausgewählte Etikettengröße nicht mit der im Drucker eingelegte übereinstimmt. Wenn ich dann direkt danach wieder in das Fenster gehe wo man die Bandbreite Einstellen kann (Bild2 bei dir) dann wurde die Etiketten Größe auf 62mm (automatisch??) geändert. Wenn ich Etiketten für eine Kiste Drucken möchte hab ich keine Probleme nur beim Schnellen Etikettendruck hackt es... Schönen Restsonntag
Die Etikettenbreite sollte EleLa anhand dem PrinterCanvas Objekt automatisch erkennen, also die 29mm. Die Länge stellt EleLa dann anhand der zu druckenden Zeilen ein. Ich meine unter Linux klappt die Längen-Einstellung nicht, ist schon ein paar Jahre her wo ich das machte.
Hab gerade Upgedated, da es Elela vorgeschlagen hat. Nun ist die Datenbank kaputt! 10:29:16 DB.Version: SQLite-DLL: 3.22.0 / PostgreSQL: PostgreSQL 9.5.13, compiled by Visual C++ build 1800, 64-bit 10:29:17 Database Version: V2.2.13C01 10:29:17 Do Update 54 from Database. 10:29:17 RenameField (bauteillager,Menge,Menge,DOUBLE) ... 10:29:23 Update 64 finish. 10:29:23 New Database Version: V3.0.17A12 10:29:23 Error: Cannot open database! qAdr : Field not found : "IDGUID" (qAdr) 10:29:23 Connect database... 10:29:23 DB.Version: SQLite-DLL: 3.22.0 / PostgreSQL: PostgreSQL 9.5.13, compiled by Visual C++ build 1800, 64-bit 10:29:23 Database Version: V3.0.17A12 10:29:23 Error: Cannot open database! qAdr : Field not found : "IDGUID" (qAdr) 10:29:38 Connect database... 10:29:38 DB.Version: SQLite-DLL: 3.22.0 / PostgreSQL: PostgreSQL 9.5.13, compiled by Visual C++ build 1800, 64-bit 10:29:38 Database Version: V3.0.17A12 10:29:38 Error: Cannot open database! qAdr : Field not found : "IDGUID" (qAdr) Es gibt keine Datenbank "qAdr", aber es gibt eine Tabelle "adr"
Mit folgenden Befehlen hab ich die Datenbank wieder gängig gemacht:
1 | ALTER TABLE adr ADD COLUMN idguid character varying(38); |
2 | ALTER TABLE adr ADD COLUMN idguidt double precision; |
3 | ALTER TABLE gehause ADD COLUMN idguid character varying(38); |
4 | ALTER TABLE gehause ADD COLUMN idguidt double precision; |
5 | ALTER TABLE kiste ADD COLUMN idguid character varying(38); |
6 | ALTER TABLE kiste ADD COLUMN idguidt double precision; |
Und alle anderen Tablellen. Allerdings sind die Spalten leer. Eine Frage, warum braucht man idguidt mit double precision, diese Werte kann man nicht vergleichen ohne Hysterese, da nicht sichergestellt werden kann, wie der Datentyp gespeichert/übertragen wird und dadurch eine Ungenauigkeit entsteht. Und warum wird bei Postgres die idguid nicht mit Datentyp uuid angelegt, da sie vom Datenbankserver viel Effizienter gespeichert und verwaltet wird als ein varchar?
Ich schaue mir an warum es bei PostgreSQL nicht funktioniert. Mag ja sein dass die ein oder andere Datenbank für spezielle Lösungen auch entsprechende spezielle Feldtypen bietet, da EleLa viele Datenbanken unterstützt nehme ich prinzipiell solche die schon lange und in allen DB's gängig sind -> funktioniert garantiert. In der Zukunft einmal soll es eine automatisierte Online/Offline Synchronisation geben, daher kamen die 2 neue Spalten hinzu. Ich habe diese jetzt schon drin damit die schon mal bespielt werden. Aktuell jedoch sind die nur beschrieben jedoch nicht genutzt. "idguidt" hält nur Datum/Zeit und dient als Vergleich um zu kennzeichnen welcher Datensatz die letzte Änderung war (neuer ist).
Ok, hört sich sehr gut an. Wenn es für Synchronisation ist, genügt es mit varchar, da es in jeder Datenbank diesen Typen gibt. Wenn es später auch für Import/Export verwendet werden kann, wäre das auch super. Hab bemerkt, bei einigen Tabellen waren die Spalten bereits angelegt, es fehlten nur einige.
Gottfried schrieb: > Hab bemerkt, bei einigen Tabellen waren die Spalten bereits angelegt, es > fehlten nur einige. Danke für den Hinweis! Ich habe ständig das Problem die Daten mit zu nehmen (bin viel unterwegs) und wieder zurück zu spielen auf den MariaDB SQL Server. Mir würde der Abgleich Helfen. Schlussendlich wollte ich eine dritte Funktion neben Import/Export ein Update Lokal <> Server einbauen sowie eine einfachere Umschaltung zwischen Betriebsart Server<>Lokal. Dauert jedoch noch ein wenig, ist erst mal als Vorbereitung für eine spätere EleLa V4 gedacht. In EleLa V4 wird es dann auch eine zusätzliche Lagerplatzverwaltung geben, wo man einem Bauteil mehrere Lagerplätze zuweisen kann. Die Ideen gehen nicht aus ;-)
:
Bearbeitet durch User
Sehe ich das richtig, dass elela eine Php-Oberfläche bekommen hat?
JaNein, eigentlich gib es diese seit EleLa V2.2, für ELeLa V3 wurde sie nicht angepasst, funktioniert jedoch noch. Ich habe die stille Hoffnung, dass man mal Part-DB mit der EleLa Datenbank verheiraten kann. Die Differenzen sind jedoch aktuell noch zu groß. Damit hätte man eine gute EXE und eine Web-Oberfläche gemeinsam verheiretet ;-)
Guten Morgen Markus, wenn ich Bauteile unter "Gehäuse/Lager" lösche, werden die dazugehörigen Zeilen in der Ansicht "Lieferanten" nicht autom. gelöscht. Diese muss ich dann ebenfalls manuell löschen. Ist das so beabsichtigt? Meine Version: V3.0.18319-64 LG.
Nein, das sollte mit gelöscht werden, ich habe es aufgeschrieben.
Hallo Markus, Vorschlag zur Programmerweiterung: Referenzen unter Bauteilen gegenseitig Also ein zusätzlicher Reiter, in dem man bei den Bauteilen wiederum beliebig weitere andere Bauteile als Referenz mit einer Angabe der Beziehung angeben kann. So könnte man bei Bauteilen Verweise auf "Alternative" oder "Nachfolger" oder "Zubehör" oder Ähnliches setzen. Diese Referenzen tauchen dann auch bei den referenzierten Bauteilen auf (ro), durch Klick kann man sich dann da durch manövrieren. Damit wäre es möglich, bei Bauteilen verschiedener Hersteller (bestes Beispiel ist Würth und Murata bei Drosseln) jeweils die Alternative zu verlinken. Auch könnte man zusammengehörige Teile verknüpfen (Sicherungshalter mit Sicherungskappen z.B.). Vielen Dank! Flo
Hallo Flo, Das kann EleLa schon, ist in der Hilfe unter "Bauteile Verwalten" Abschnitt "Bauteil-Querverweis" beschrieben. Damit kann man sich im Memo alles zusammen schreiben wie man mag. Grüße Markus
Beitrag #5530663 wurde von einem Moderator gelöscht.
Hallo Markus, die Funktion kenne ich schon und habe ich auch ausprobiert. An sich ein sehr universeller und guter Ansatz. Aber leider unpraktisch in der Bedienung, auch sind die Texte in den Bauteilen nicht normiert. Dann steht die Aternative mal oben, mal unten. Auch das Arbeiten mit den IDs macht es eher umständlich. Das Verzweigen über Strg-Taste ist auch nicht direkt intuitiv. Danke trotzdem! Flo
Wenn ich alternative Bauteile suche dann gehe ich immer über "Typ-F8", damit kann ich sehr schnell z.B. alle Supressor-Dioden finden mit dem Gehäuse z.B. SOT23. Das hat den Vorteil, dass man nicht selbst die Liste mit Alternativen pflegen muss, denn diese Liste ist automatisch anhand der Eingaben bereits vorhanden. Eine spezielle "Alternativen"-Liste ist immer extra aufwand was auch gepflegt werden will. Das ist für den augenblick eine schöne Liste, jedoch nach 5 Jahren obsolent, weil es die Teile dann schon nicht mehr gibt oder es bessere/billigere in der Zwischenzeit gibt. Gerade bei Spulen werden die Schaltregler immer besser und benötigen entsprechend effizientere Spulen.
Flo schrieb: > Aber leider unpraktisch in der Bedienung, auch sind die Texte in den > Bauteilen nicht normiert. Dann steht die Aternative mal oben, mal unten. > Auch das Arbeiten mit den IDs macht es eher umständlich. Das Verzweigen > über Strg-Taste ist auch nicht direkt intuitiv. Sehe ich genauso, ein Bauteil als Alternative eintragen ist umständlich und nicht normiert, dass macht es sehr schwer. Markus M. schrieb: > Eine spezielle "Alternativen"-Liste ist immer extra aufwand was auch > gepflegt werden will. Die Möglichkeit sollte schon gegeben sein, wieviel Aufwand man selbst damit betreiben will ist dann jedem selbst überlassen. Der Bestellnummern-Export ist eine sehr gute Funktion, allerdings will Digikey z. B. zuerst die Menge und dann die Artikelnummer. Die Reihenfolge der Export-Daten kann leider nicht sortiert werden.
Außerdem, eine exportierte .CSV Datei öffnet eine leere Tabelle in Open Office. Ansonsten ein super Tool! Vielen Dank!
Ich habe den Wunsch für die extra Tabelle "Verwante Bauteile" aufgeschrieben. Eine exportierte CSV Datei (von Bauteile) konnte ich mit Openoffice öffnen. Bei Datei->Öffnen, dann CSV Datei auswählen, dann kam der Dialog wie die Spalten interpretiert werden sollen. Dann waren die Daten in Openoffice. Kannst Du mir eine Mail schicken mit der CSV die nicht funktioniert, und dazu schreiben was gemacht wurde?
Hallo, EleLa ist wirklich ein sehr gutes und nutliches Programm. Leider komme ich mit der Logik an einer Stelle nicht klar. Z.b. wird ein Bauteil mit Bezeichnung "CAP 4700uF ALU" angelegt. Davon habe ich 2 Typen: "16V,3.450A@100kHz,20mOhm,10000h,105°,20%" und "16V,3.000A@100kHz,21mOhm,10000h,105°,20%". Wenn ich es richtig verstanden habe, soll ich unter Gehäse/Lager-Bezeichnung 4700u/16V eintragen, dann wird das als "Wert" auch bei einem Projekt übernommen. Die Parameter wie "16V,3.450A@100kHz,20mOhm,10000h,105°,20%" gehören ins Memo-Feld. Das Problem ist nur, dass in der Spalte Lieferanten dieses Feld nicht mehr sichtbar ist. So kann ich z.B. nicht nach einem günstigsten Kondensator mit ESR>20mOhm suchen. Ist meine Vorgehensweise überhaupt richtig? Wäre es möglich eine zusätzliche Spalte unter Lieferanten mit einem Memo-Feld zu implementieren? Ich habe noch festgestellt, dass der "Wert" im Projekt beim ersten Einfügen gleich der "Bezeichnung" ist. Wenn ich ein anderes Gehäuse auswähle, dann wird er geändert. Wenn ich dann noch ein mal das Gehäuse ändere, ändert sich der "Wert" nicht mehr und ich muss ihn korrigieren.
Das Bauteil sollte in der Bezeichnung bei Gehäuse/Lager unterscheidbar sein, sofern es wichtig ist, dann kann man da auch mehr als nur "16V" rein schreiben. Das Bauteil ist ja schon mit "CAP 4700µF ALU" angelegt. Ich würde als Bezeichnung für Geh./Lager dies verwenden: "16V/LowESR/10000h". Zuden kann man noch die Spalten "Arteikelnr" und "Artikelnr2" verwenden. Da schreibe ich z.B. die Hersteller Artikelnummer rein. Damit ist es eindeutig. Beim Anlegen einer Zeile in der Projektpos ist der Datensatz im Modus "Insert", da weiß EleLa dass es den "Wert" noch anpassen darf. Danach, nach dem ersten Speichern, macht es EleLa nicht mehr. Es ist also ein gewolltes Verhalten.
Markus M. schrieb: > Beim Anlegen einer Zeile in der Projektpos ist der Datensatz im Modus > "Insert", da weiß EleLa dass es den "Wert" noch anpassen darf. Danach, > nach dem ersten Speichern, macht es EleLa nicht mehr. Es ist also ein > gewolltes Verhalten. Ja, aber dann steht dort die Bezeichnung("CAP 4700µF ALU") und nicht "16V". Nur nach dem Ändern ist es dann z.B. "10V". Wäre es nicht besser, dass dort gleich "16V" stehen würde?
EleLa V3.0.18A26 mit ein paar kleinen Bugfixes. Die Version kann hier geladen werden: http://www.mmvisual.de/elela/ - Win32 / Win64 - CHM Hilfedatei Die Fixes: MsSQL: Der Feldtyp "TEXT" ist depreached. Bei MsSQLExpress 2014 gibt es Probleme wenn die Datenabfrage das Schlüsselwort "UNION" enthält. Daher legt EleLa eine neue Datenbank nun mit dem Feldtyp "VARCHAR(MAX)" an. Wer Probleme damit hat kann die Datenbank exportieren, durch EleLa neu anlegen lassen und anschließend wieder importieren. Zudem wurde der Bereich "Projekte" nicht geöffnet da der Feldname "TOP" als Schlüsselwort erkannt wurde und nicht als Feldname. (Betraf nur MsSQL als Datenbank) Reichelt Warenkorbexport aus Bestellung: Wenn während dem Export die Artikel auf "Bestellt" markiert werden so wird dies auch in der Tabelle nun korrekt gezeigt ohne erst zu aktualisieren. Doku CHM: Beschreibung der Konfiguration "Globale Params" nachgezogen/erstellt. Neu angelegtes Bauteil -> Webabfrage Farnell/Mouser: Nun verschwinden die Datensätze nicht mehr, es muss kein Aktualisieren der Ansicht mehr gemacht werden. (Die Daten waren jedoch in der DB korrekt gespeichert) Bauteil -> Geh/Lager Funktion gehe zu Kiste: Nun wird der Inhalt der Kiste korrekt aktualisiert Bauteil/Lager Löschen: Nun werden die Lieferanten (Bestellnummern/Menge/Preise) mit gelöscht, denn das braucht man nicht mehr wenn das Bauteil gelöscht wird. Nach Start EleLa F3 / F4: Wenn direkt nach dem Start mit F3 oder F4 die Ansicht gewechselt wurde, so wurden die entsprechenden Tabellen nicht geöffnet. Nach Start EleLa Ansicht Bauteil->Bestellungen: Bei Doppelklick auf der Tabelle springt EleLa in die Bestell-Ansicht, jedoch wenn man da noch nie war wurde die Tabelle nicht automatisch geöffnet. Sollte was auffallen so mir schreiben oder mailen.
EleLa V3.0.18A28 Die Version kann hier geladen werden: http://www.mmvisual.de/elela/ - Win32 / Win64 Nun kann unter Bauteile->Lieferant oder unter Bestellung direkt die Octopart Webseite geöffnet werden. Damit finden sich Infos und Lieferanten zum Bauteil leichter.
Hallo, vielen Dank für dieses einzigartige Programm. Ich würde es gerne mit mysql benutzen. Auf meinem System mit Debian Stretch erhalte ich aber die Fehlermeldung "None of the dynamic libraries can be found or is not loadable: libmysqlclient.so.18, libmysqlclient.so.16, libmysqlclient.so.15, libmariadb.so, libmysqlclient.so !" Tatsächlich ist im entsprechenden Verzeichnis /usr/lib/x86_64-linux-gnu/ keine Datei libmariadb.so, sondern libmariadbclient.so.18 vorhanden. Ein symbolischer Link libmariadb.so -> libmariadbclient.so.18 löst das Problem leider auch nicht. Da Debian mit Stretch von mysql auf mariadb gewechselt hat, ist es auch nicht ohne Weiteres möglich eine libmysqlclient zu verwenden. Gibt es eine Lösung dafür?
Ja, in der INI Datei gibt es einen Parameter: [DB] LibraryLocation=<Pfad>/<Dateiname> Hier kann ein Pfad/Dateiname eingetragen werden. EleLa sucht automatisch in irgend welchen registrierten Systemverzeichnisse, falls das nicht klappt hat man noch diese manuelle Möglichkeit. Details dazu sind in der Hilfe unter "INI Datei Parameter" beschrieben. Alternativ kann man die .so Datei in das EleLa Programmverzeichnis kopieren, dann findet EleLa die auch. Damit ist man sogar unabhängig von irgend welchen System-Updates und weiß genau warum es geht.
:
Bearbeitet durch User
Hallo, ich weiss nicht, ob ich es in der Doku oder hier überlesen habe. Aber ich habe folgende Frage: Auf welcher Grundlage wird der Barcode aufgebaut? Ich dachte, ich könnte unter "Gehäuse/Lager" meine eigene Artikelnummer im Barcode unterbringen. Habe aber dann festgestellt, dass ich die Nummer mehrfach vergeben kann. Gehe ich rechts neben dem Feld auf Barcode erzeugen, dann bekomme ich eine 6stellige Nummer. Diese ist aber nicht fortlaufend (Erste Nummer 000213, zweite 000088) Werden diese Nummern nur einmal vergeben bzw. wird überprüft, ob die Nummer in diesem Feld schon existiert? Grüße Jörg
Wie der Barcode formatiert wird ist hier beschrieben: http://mmvisual.de/Hilfe/EleLa/BauteileLG.htm Abschnitt "Barcode" Hier steht auch wo man das Format einstellt. Vermutlich ist das Format "######" aktiv. Daher nimmt EleLa automatisch die ID des Datensatzes vom Gehäuse/Lager Eintrag. Die ID Spalte der Datenbank Tabelle ist immer eine eindeutige fortlaufende Zahl, die einmalig beim Anlegen der von der Datenbank selbst erzeugt wird und EleLa lässt es nicht zu diese Spalte manuell zu ändern. Ansonsten kann EleLa doppelte Barcodes finden, siehe Screenshoot. Das gezeigte Fenster bleibt leer wenn keiner gefunden wurde. (Da ist aktuell noch ein Bug und das Fenster bleibt immer leer, wird ab EleLa V3.0.18B15 behoben sein.) Edit: EleLa V3.0.18B15 Die Version kann hier geladen werden: http://www.mmvisual.de/elela/ - Win32 / Win64
:
Bearbeitet durch User
Markus M. schrieb: > > Ansonsten kann EleLa doppelte Barcodes finden, siehe Screenshoot. Das > gezeigte Fenster bleibt leer wenn keiner gefunden wurde. > (Da ist aktuell noch ein Bug und das Fenster bleibt immer leer, wird ab > EleLa V3.0.18B15 behoben sein.) > > Edit: > EleLa V3.0.18B15 Die Version kann hier geladen werden: > http://www.mmvisual.de/elela/ > > - Win32 / Win64 Gibt es die Linux-Version auch?
Alle EleLa Versionen V3.0.18B15 sind nun erstellt und können hier geladen werden: http://www.mmvisual.de/elela/ - Win32 / Win64 - Linux32 / 64 - RaspberryPi Auch mit der EleLa Versionsabfrage können die neue Versionen geladen werden. Wie immer gilt: Vor dem Update ein Backup der Datenbank erstellen.
Leider kann ich meine MySQL Datenbank nicht benutzen, da wohl zu neu. Habe meinenn MySQL Server neu aufgesetzt. Dieser hat die neueste Version 8. Damit kann ich mich aber nicht connecten weil als Protokoll nur mysql-5 zur Auswahl steht. Wird es da einen Fix geben?
Kannst Du nur "mysql" rein schreiben? Nimmst Du auch die neue DLL von MySQL? Hat die DLL die gleiche Bit-Anzahl wie die EXE (32/64)? Alternativ könntest Du MariaDB 10 nutzen. ("MariaDB-10") Von der Datenbank Anbindung her bin ich Abhängig von der Komponente. Ich nutze hier immer die letzte aktuelle Stable Version.
:
Bearbeitet durch User
Guten Morgen, Ja ich kann nur mysql reinschreiben, aber das gleiche Ergebnis wie vorher Es kommt die Fehlermeldung "Cannot open database! Client-Library libmysql57.dll, libmysql56.dll, libmysql55.dll, libmysql51.dll, libmysql50.dll, libmariadb.dll, libmysql.dll found but could not be loaded. Check compile-target and library compatibility! (DB-Connect)" Ja ich verwende die neue dll. Beide Systeme sind 64 Bit und auch die 64 Bit DLL wird verwendet. MariaDB-10 kann ich nicht auswählen. Selbstverständlich nutze ich die neueste ELELA.exe
Die Fehlermeldung erscheint wenn EleLa (bzw. die Datenbank Komponente) die DLL nicht öffnen kann. Das passiert dann wenn z.B. die EXE 64 Bit ist und die DLL 32 Bit. Oder wenn die DLL (weil neuer) andere Funktionen hat wo die Komponente noch nicht kennt. Die schnelle Möglichkeit wäre EleLa als 32 Bit EXE zu laden und damit versuchen zu starten. Wenn dann immer noch die gleiche Fehlermeldung kommt liegt es nicht an den Bits 32/64. Ist die neue DLL vom neuen MySQL Server im gleichen Verzeichnis der EXE? Heißst die so wie in der Liste wonach EleLa sucht? Falls die DLL anders heist oder an einem anderen Ort ist kann mit dem Parameter dies EleLa gesagt werden: [DB] LibraryLocation=<Pfad>/<Dateiname> Andere Möglichkeit zu überprüfen ob die Datenbank Verbindung geht: Über das Tool HeideiSQL (https://www.heidisql.com/) versuchen die Verbindung auf zu bauen. MariaDB-10 kann man in der INI Datei auch manuell rein schreiben: [DB] Protocol=MariaDB-10
Die neue libmysql.dll ist offensichtlich anders aufgebaut wie die alte libmysql. Wenn ich mich mit HeidiSQL verbinden will, kommt mit der mitgelieferten alten lib Fehler "Authentication plugin 'caching_sha2_password' cannot be loaded". Das kommt, weil die neue lib ein neues authentication plugin benutzt. Kopiere ich aber die neue lib von der MySQL 8 Installation kommt stattdessen der Fehler "Cannot find a usable libmysql". Dabei ist es egal ob ich die 64 oder die 32 Bit Version von HeidiSQL verwende. Nach langem Googeln komme ich leider zu dem Ergebnis, dass die neue lib erst einmal von den jeweiligen Programmen unterstützt werden muss. Da ich aber noch mehr Programme habe, die auf die MySQL Datenbank zugreifen (und die neue lib (noch) nicht unterstützen, habe ich die neueste V8 wieder deinstalliert und die alte 5.7 installiert. Problem mehr oder weniger gelöst.
Dankeschön für die Analyse. Ich bleibe in jedem Fall auch dran und schreibe sobald MySQL 8 von der Datenbank-Komponente mit unterstützt wird. Bis es soweit ist kann man stattdessen MariaDB 10 verwenden, dieses hat bereits die neuen Features von MySQL 8 drin, falls man diese benötigt. EleLa nutzt diese Features nicht, jedoch wäre die Option dass Datensätze bei Änderung automatisch als Historie belassen werden auch ein nettes Feature, was man in der Zukunft sicher verwenden könnte.
Hallo Markus, wollte gerade von der 18318 auf die 18B22 updaten, aber mit der neuen EXE tauchen keine Einträge mehr unter Lieferanten auf bei den Bauteilen? Die bestehende EXE wieder zurück kopiert geht es wieder. Muss ich die DB noch aktualisieren vorher? Danke! Flo
Nein, muss man nicht. Beide EXE sind mit der gleichen DB kompatibel.
OK, dann melde ich das als Fehler: Mit Version 18B22 bleibt bei mir der gesamte Reiter "Lieferanten" unter "Bauteil - F2" leer bzw. nicht ausgefüllt, obwohl Daten dazu in der Datenbank stehen. Mit Version 18318 auf die gleiche DB zugegriffen, alle Einträge sind da. Database Version: V3.0.17A12 PostgreSQL: PostgreSQL 9.1.24lts2 on i686-pc-linux-gnu, compiled by gcc (Debian 4.7.2-5) 4.7.2, 32-bit Alle anderen Masken sehen soweit auf den ersten Blick ok aus. Im Log kann ich keine Fehlereinträge erkennen.
EleLa geht in die nächste Runde, hier der Thread für EleLa ab V3.1: Beitrag "EleLa - Elektronik Lagerverwaltung V3.1"
Hallo Markus, ich habe mal eine Frage: ich habe ein Bauteil unter einem Typ angelegt. Später habe ich dann aber bemerkt, dass der Typ zu allgemein gefaßt war und habe somit entsprechend ein paar Untertypen angelegt. Nun suche ich eine Möglichkeit die schon vorhandenen Bauteile einzeln den neuen Typen zu zu ordnen. Ansicht F2 Bauteil: Wenn ich oben den Typ ändere, gilt diese Änderung natürlich für alle Bauteile mit diesem Typ. Ansicht F8 Typ: Ich habe versucht per Drag'n'Drop den Eintrag rechts mit dem entsprechenden Bauteil auf den neuen Typ zu ziehen, aber das klappt auch nicht. Gibt es dafür eine Möglichkeit? Da ich immer mehr in EleLa verwalte, sind die vor einiger Zeit mal angelegten Typ(strukturen) nicht mehr passend bzw. zu ungenau. Von daher wäre eine solche Funktion toll bzw. ich wüsste gern wie es funktioniert. Ansonsten Super Programm! Grüße, Muetze1
Unter "Bauteil-F2 kann der Typ des Bauteils geändert werden, siehe Bild1. Jedoch alle Bauteile, die im Detail im Abschnitt "Gehäuse/Lager" stehen können nicht einzen anderen Typen zugeordnet werden, dazu müsste man ein neues Bauteil anlegen. Wenn man sehr viele Teile unter Gehäuse/Lager drin hat und man möchte diese unterscheiden können, so kann man ab EleLa V3.1 eine Eigenschaft bei Technische Daten anlegen, z.B. Bild2, und kann danach unter Typ-F8 filtern.
Hallo Markus, vielen Dank für die Antwort. Ich wollte mir gerade das neu anlegen der ganzen Bauteile für einzelne Typänderungen ersparen. Weil die Lagermenge, Datenblatt, angehängte Bilder etc. sind nicht so einfach mal eben ablegbar oder kopierbar in das neue Bauteil. Der Tipp mit dem Filter bzw. den technischen Daten wäre eine Möglichkeit, nur dann ist man auf die Suche beschränkt. Ich habe z.B. einen Typ "Anzeigen" und darunter ein paar abgelegt. Nun habe ich noch die Untertypen LED, LCD und OLED angelegt, so das ich leichter die Technologie unterscheiden kann. Unter der guten Typenansicht ist es dann recht einfach eben mal alle Anzeigen zu sehen oder nur für eine Technologie. Die aber nun unter "Anzeigen" liegenden alten Bauelemente alle zu löschen und neu anzulegen ist sehr aufwändig. Ich hatte gehofft, dass der Typ auch nur eine ID aus der Typentabelle im Bauelemente-Datensatz ist. Danke für die Lösungsvorschläge, ich werde mal schauen wie ich das organisiere. Grüße, Muetze1
Ein Gehäuse/Lager Eintrag kann mit dieser Funktion in ein anderes Bauteil verschoben oder kopiert werden. (Rechtsklick auf die Taste).
:
Bearbeitet durch User
Hallo Markus, eine kurze Frage... ich habe heute Elela (Version 3.0.18B15-64) auf einem meiner Rechner in das Verzeichnis C:\Program Files\Elela installiert. Diese Version deshalb, weil es die letzte Version ist, die mit meinem Synology NAS mit der installierten Maria10 DB funktioniert. Spätere Version scheitern an einem fehlenden Update der Maria DB die aber für mein NAS nicht mehr zur Verfügung gestellt werden. Leider bekomme ich den obigen Fehler obwohl die INI Datei im angegebenen Verzeichnis liegt. Was ist da ggf. zu tun? LG Torsten
Es liegt daran dass Windows von Haus aus keine Schreib-Rechte auf c:\Program Files\... erlaubt. Entweder das EleLa anch C:\EleLa verschieben oder Dem Odner EleLa unter C:\Prohram Files\EleLa die Schreibrechte geben. Normalerweise installiert sich das Setup Paket nach C:\EleLa, damit es keine Probleme damit gibt. Der Grund ist, man kann EleLa sehr einfach wo anders hin kopieren und alle nötigen Dateien sind in dem einen EleLa Ordner drin. Nur Windows funktioniert halt anders, wenn ich mich an die Windows Richtlinien halten würde, dann müsste ich die ganzen Dateien quer über die Festplatte verteilen. Das wiederspricht der "Einfachheit" vom Dateihandling mit EleLa.
Danke, das beantwortet meine Frage... ;-) LG Torsten
Hallo Markus, jetzt funktioniert es. Danke nochmal. Allerdings ist mir noch etwas aufgefallen, allerdings schon länger her. Beim kopieren eines Datensatzes mit der rechten statt der linken Maustaste, wird leider nicht der Datensatz mit Gehäuse/Lager kopiert, sondern wie bei der linken Maustaste nur der Datensatz. Gruß Torsten
Ja, stimmt, im Log steht auch eine Fehlermeldung. Ich schreibe mir das auf.
Den Bug habe ich gefixt, es waren noch andere Kopierfunktionen davon betroffen wo Datensätze kopiert werden, z.B. Kopieren von Projekten mit Positionen. EleLa Versionen V3.1.19516 kann nun hier geladen werden: http://www.mmvisual.de/elela -> EleLa V3.1 - Win32 / Win64 Wie immer gilt: Vor dem Update ein Backup der Datenbank erstellen.
Hallo Markus, ich nutze die Version 18B15-Win64. Gibt es denn die Möglichkeit Bauteileinträge mit Querverweisen so auszustatten, dass bei "Prüfe Menge für Produktion" diese Verweise mit berücksichtigt werden? D.h. falls die gewünschte Position nicht die geforderte Gesamtmenge aufweist, auch auf den eingetragenen Querverweis (sofern vorhanden) geschaut wird und daran die Fehlende Menge ausgerichtet werden kann. Wenn so ein Fall eintitt müsste das auch in den Projektpositonen angepasst werden. Grüße
Hallo, nein aktuell gibt es so eine Feature leider noch nicht. Ich habe es jedoch in Planung das ein zu bauen, ich habe selbst das Problem dass ständig irgend welche simple Widerstände/Kondensatoren fast täglich wechseln. Und jedes mal muss man wegen diesen Cent-Artikeln viel Zeit investieren :-/ Ist irgendwie auf die Dauer nervig.
Ja das nervt ein wenig. Es ware super wenn solche Funktion zukünftig verfügbar wäre. Des Weiteren wären solche Optionen wie: - Status des Bauteiles beim Zulieferer/ Hersteller: Aktiv, nicht Aktiv, Obsolet, Ersetzt durch XY ... - Status ob MSL und welche Klasse: Wann geöffnet bzw. wieder verschlossen, abgelaufen, war zu feucht ... usw. - Anzeige des Fotos der gewählten Position im Reiter Kiste, Suche, Typ wie bei Bestellungen es gemacht wird hilfreich. Grüße...
Das wurde zwar vor einigen Jahren schon mal geschrieben, aber das Problem existiert nach wie vor. Wenn man Gehäuse-Import der Dateien von NXP und Murata aus dem Internet durchführen will, kommt der Fehler "Datenbankupdate Nr. 37 fehlgeschlagen! Führen Sie den Update manuell aus." Schade, es gibt Vorlagen im Internet, die man nicht nutzen kann. Ist dafür ein Update in Sicht?
HIer kann man für EleLa V3 die NXP Gehäuse laden: http://mmvisual.de/elela/ Die Murrata Version kann ich noch erstellen.
Ui, da gibts ja ne neue Programmversion. Über Google findet man immer die alte Webseite. Vielleicht sollte man da mal einen Hinweis auf die neue Version einpflegen.
Ich schreibe das immer im Forum wenn es etwas neues gibt. Der aktuelle Thread ist der hier: Beitrag "EleLa - Elektronik Lagerverwaltung V3.1"
Ja, aber nichts desto trotz. Ich habe von dem Programm z.B. gar nicht hier erfahren, sondern von der CD "Software für den Funkamateur" aus dem VTH-Verlag. Dort im Programm wird natürlich auch immer auf die alte Seite verlinkt. Wer nicht gerade hier das Forum findet, der sucht auf der alten Webseite. Soll ja nur gut gemeint sein. Ist ein tolles Programm.
Ja, stimmt. Wenn von wo anders her man auf das Programm kommt, dann sieht man nicht so einfach was es neues git. Ich füge den Link noch auf der Homepage hinzu um direkt auf diese Seite zu kommen. Guter Hinweis. In der EXE unter "Extras-F10 -> Info" gibt es ein Link auf "Internet Diskussion/Forum" der zeigt auf dieses Forum. Da kommt man am schnellsten in den aktuellen Thread der jeweiligen EXE. ;-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.