User Tools

Site Tools


efc_erp

efc ERP

General information

Das System besteht aus zwei Teilen:

  • Server
    • läuft auf Tomcat
    • u.a. mit Spring gebaut
  • Client
    • Java
    • Mobile
      • Web-Anwendung, die in einem Chromium Frame auf einem mobilen Client läuft (Android?)

Demo

Ein efc ERP Demo kann unter F:\Build\efcclient_starter\ gestartet werden.

Es gibt verschiedene Varianten, ich hab ausprobiert z.B.:

  • F:\Build\efcclient_starter\effective_company_highmem.exe

Documentation

efc ERP HandbuchKompakt - mein Konspekt von dem Handbuch

Einstellungen

Die Einstellungen des Servers sind an folgenden Stellen gespeichert.

  • Datei efc.properties
    • lokal: “C:\Build\efc_workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\”
    • Einstellungen:
      • DB Verbindung
  • DB table efc_sysparam
    • SELECT * from efc_sysparam
      • paramkey='DBVERSION'
        • DB Version
      • paramkey like 'mail%'
        • E-Mail Einstellungen

Stücklisten

  • SvBoBomDocImpl - service implementation

Sachmerkmalsleisten

Sachmerkmalleisten erlauben eine bestimmte Datenstruktur um eine beliebige Anzahl der “(kunden-)spezifischen” Felder zu erweitern.

Im Client sind die Felder und deren Werte in dieser “bestimmten” Datenstruktur im Tab “SML” zu finden. Die Voraussetzung dafür ist natürlich zuerst das Vorhandensein von den Sachmerkmalsleisten. Beispiel (bei der srv07 DB): Materialstamm → Mat.Nr. “1005.16214.70” oder “1001.20305.70”. Dann in das Tab “SML” wechseln. Dort sind dann SML “TD_BB1” (Technische Daten BB) zu sehen, die verschiedene Attribute enthält. Wie z.B. “Breite” oder “Einbauort”.

Sachmerkmalleisten anlegen: * In der efc Client-Anwendung im Start-Menü Ordner “Referenztabellen” wählen. Dort dann Ordner “Sachmerkmalsleiste”. Unter “SML-Attribute” kann man die Attribute anlegen und ändern. Unter “Sachmerkmalsleisten (SML)” kann man diese Attribute zu den einzelnen Sachmerkmalsleisten hinzufügen.

Sachmerkmalstabellen in der DB:

  • EFC_SCB_SCBKEY
    • Keys der Sachmerkmalsleisten definieren
  • EFC_SCB_SCBKEYDET
    • Attribute der Sachmerkmalsleisten definieren
  • EFC_SCBBAS
    • Hier werden die Werte von den Attributen gespeichert
  • ⇒ To be continued
    • s. auch andere …SCB… Tabellen

Version der beim Server verwendeten Bibliothek anpassen

Die benutzten Versionen werden in “build.gradle” Datei vom Server-Projekt verwendet.

Z.B.:

api	'org.apache.derby:derby:'                                + Deps.JDBC_DERBY_VER

Die Version ist hier durch Konstante “Deps.JDBC_DERBY_VER” festgelegt. Diese Konstante ist im github Projekt “EffectiveCompany/efc_gradle_common_plugin”. Konkret hier in der Datei “https://github.com/EffectiveCompany/efc_gradle_common_plugin/blob/main/src/main/java/org/effectivecompany/gradle/Deps.java”

Dieses Projekt (“efc_gradle_common_plugin”) will man normalerweise nicht anfassen, d.h. die Version muss man am besten bei sich im “build.gradle” anpassen.

Beispiel für den MariaDB JDBC Treiber:

	api ('org.mariadb.jdbc:mariadb-java-client') {
		version {
			strictly '2.7.9'
		}
	}

Dieses “strictly” ist notwendig damit es definitiv die andere Einstellung überschreibt.

Nach der Änderung muss man Gradle neu synchronisieren und um zu prüfen, ob die Änderung wirklich funktioniert hat - im Eclipse im Package Explorer unter “Project and External Dependencies” von dem entsprechenden Projekt die Version von dem JAR-Paket (hier z.B. “mariadb-java-client-2.7.9.jar”).

Start-Menü

Start-Menü Kürzel

  • SYSCACHES
    • Caches
      • dort kann man Caches leeren (einzeln oder komplett) → s. Fenster-Menü “Funktion”

efc Client

  • Installation
    • das komplette Verzeichnis “F:\Build\efcclient” ins “$EFC_CLIENT_DIR” kopieren
    • dann die Einstellungen in der Datei “$EFC_CLIENT_DIR\config\client.properties”“

Datenbank Updates

DB Updates werden _manuell_ durch die Ausführung von entsprechenden Update-Skripten gemacht. Die Skripte sind im Projekt efc_db_update.

Die eigentlichen Skripte liegen im Verzeichnis MySQL oder MSSQL.

Wenn ich das richtig verstehe, werden alle Skripte ausgeführt, die seit der existierenden Version neu sind. Welche Version in der DB liegt kann man mit dem SQL Skript abfragen:

SELECT * FROM EFC_SYSPARAM where PARAMKEY = 'DBVERSION'

Misc

Fenster-Info (in window menu under “Hilfe / Fenster-Info”) helps to find references to:

  • Business Objects (usually they are defined in efcbl)
  • GUI-Services
  • Layouts (xml files)
  • field references (Ident aktives Feld)
  • …
  • Data loading mechanism
    • usually the Service loads Repository
    • the Repository loads data from the DB
  • Layout files
    • The layout files (XML) will be copied to the efc_java_client project, but the files (which should be edited) are under efc_runner project.
      • ⇒ do not edit layout XML files which are in efc_java_client project.
  • How to add translation keys
    • add groovy code with method call tr(MY_KEY) (also is possible to add the keys to custom.pot)
      • run the Gradle task build_client_i18Generate (under efc_tools/efc)
      • then the generator automatically generates
        • efc_runner/po/generated.pot
        • efc_runner/po/messages.pot
        • efc_runner/po/<language>/messages.po
          • e.g. efc_runner/po/de/messages.po
        • efc_runner/src/resources/i18n/messages_<lng>_<LNG>.properties
          • e.g. /efc_runner/src/resources/i18n/messages_de_DE.properties
      • the new untranslated fields are marked in messages.po with #, fuzzy
      • translate them and remove #, fuzzy
        • (in de only, because other languages are not yet really translated)
      • run the Gradle task build_client_i18Generate again
        • the generator regenerates all *.po and *.properties files
  • Systemdateien abgleichen
    • Im Fenstermenü unter 'Tools / Abgleich Systemdateien'
      • Dort wird dann versucht die aktuellste Konfiguration der Systemdateien abzugleichen
        • Abgeglichen wird:
          • Menü
          • …
        • Wenn Fehler kommen → meistens kann man sie ignorieren
  • Caches
    • Caches can be deleted in the Java Client under 'System / Caches'
  • Geschäftbereiche
    • Geschäftsbereiche befinden sich unter “Referenztabellen / Basis”
  • Sysparam
    • The parameters of current efc installation are saved in the table efc_sysparam:
      • SELECT * from efc_sysparam WHERE paramkey=…
    • Parameters (paramkeys)
      • DBVERSION - database version used by current installation
efc_erp.txt · Last modified: by kalaschnikow