Seite 1 von 2

[GELÖST] EBP Open Line Autonomous Payroll Package 13.21 Build 3 vom 02.08.2023

Veröffentlicht: 11. Februar 2022 - 8:54 Uhr
von olaplanche
Guten Morgen,

Build 2 ist hier verfügbar: viewtopic.php?p=9739#p9739

EBP Open Line Autonomous Payroll Paket Build 1:

Quellen: https://support.ebp.com/hc/fr/articles/ ... teaching-

Zunächst ist es wichtig zu wissen, dass die Installationsdatei „EBPOL_2022_Autonome_Paie_13_12_0_13235.exe“ für eine vollständige Einzelbenutzerinstallation (SQL-Instanz) nicht ausreicht. In diesem Fall versucht das Installationsprogramm, das SQL-Installationspaket sowie den WebClient v1_1_3_137 (Update-Utility + TeamViewer-Unterstützung) von den EBP-Servern herunterzuladen. Der von mir bereitgestellte Code entspricht daher meinen Anforderungen; Sie können ihn gerne anpassen.

In meinem Fall ist es daher notwendig, die folgenden Dateien im Paket zu haben:
  • ebp_microsoft_sql_2017_x64_v3.7zip # Installationsarchiv der EBP SQL-Instanz, die bei einer manuellen Einzelbenutzerinstallation erstellt wurde. Benennen Sie es exakt wie hier gezeigt um (leider konnte ich den Download-Link nicht sichern; Sie müssen dies selbst tun) ;) )
  • EBPOL_2022_Autonome_Paie_13_12_0_13235.exe # Die Hauptdatei, die Sie mit Ihrem EBP-Konto herunterladen können
Sind all diese Voraussetzungen erfüllt, ist es Zeit für den Code:

Steuerdatei:

Code: Alle auswählen

package           : wapt-ebp-paye-2022
version           : 11.0.0.0-1
architecture      : all
section           : base
priority          : optional
name              : EBP Paye 2022
categories        : 
maintainer        : olaplanche
description       : ebp_2022_paye (EBP)
depends           : 
conflicts         : 
maturity          : PROD
locale            : fr
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : EBP.Payroll.Application
description_fr    : Envie d'optimiser la production de votre paie ? Profitez d'un logiciel de paie et administration du personnel clé en main, paramétré à votre activité. Fiabilisez son traitement grâce à l'automatisation des tâches et aux mises à jours incluses. Vous réduisez ainsi vos coûts administratifs et consacrez plus de temps aux tâches à plus forte valeur ajouter.
description_pl    : 
description_de    : 
description_es    : 
description_pt    : 
description_it    : 
description_nl    : 
description_ru    : 
audit_schedule    : 
editor            : EBP
keywords          : 
licence           : 
homepage          : https://www.ebp.com/logiciel-paie/solution-autonome
package_uuid      : 4dd1026c-2bde-4edc-9d1b-42080ff0cebb
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 
setup.py-Datei (Nein, Sie träumen nicht, ich verwende hier tatsächlich psexec, um die Binärdatei mit dem Systemkonto auszuführen.) :O Ohne sie funktioniert gar nichts :Lol: ) :
Ich habe Folgendes erfolglos getestet: install_exe/msi_if_needed(), run(), run_as_admin(), run_powershell(-verb runAs)

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

# Defining variables
bin_name_string = 'EBPOL_2022_Autonome_Paie_13_12_0_13235.exe' # Le numéro de version dans le nom du binaire ne correspond pas au control.version !!!
# WEBCHECKED=FALSE car sinon la version 1.1.3 de l'utilitaire de mise à jour sera installé
silentargs_EBP_SQL = '/s NETWORK=FALSE PERSONALIZED=TRUE WEBCHECKED=FALSE' # Paramètre pour une installation silencieuse Monoposte EBP + SQL
silentargs_EBP = '/s NETWORK=TRUE PERSONALIZED=TRUE WEBCHECKED=FALSE' # Paramètre pour une installation silencieuse Réseau EBP (pas besoin de psexec dans ce cas là, la fonction install_exe_if_needed serait même suffisante)

def install():
    # Installing the package
    if installed_softwares ('EBP Paie Autonome Open Line 2022 13.12'): # Attention le binaire désinstalle la version courante si identique...
        print('Software %s already installed' % control.package)
        pass
    else:
        print('Installing %s' % control.package)
        run(r'psexec.exe -i -s %s\EBPOL_2022_Autonome_Paie_13_12_0_13235.exe %s' % (basedir,silentargs_EBP_SQL),timeout=1200) 
        #remove_desktop_shortcut('EBP Paie Autonome Open Line 2022 13.12 .lnk') # Suppression du raccourçi sur le bureau
        print('Installing Utilitaire de mise à jour des logiciels EBP 1.1.4')
        install_exe_if_needed("EBP_WebClient_1_1_4_156_Setup.exe",silentflags="/s",min_version="1.1.4") # MAJ de l'utilitaire de mise à jour des logiciels EBP 1.1.4 et Teamviewer QS pour le support EBP

def uninstall():
    # Initializing variables
    silentargs_SQL = '/ACTION="Uninstall" /SUPPRESSPRIVACYSTATEMENTNOTICE="False" /ENU="False" /QUIET="False" /QUIETSIMPLE="True" /FEATURES=SQLENGINE,REPLICATION /HELP="False" /INDICATEPROGRESS="False" /X86="False" /INSTANCENAME="EBP"' # Paramètres pour la désinstallation silencieuse de l'instance SQL EBP
    psexec_path = '//monserveur/SysinternalsSuite$/PsExec.exe' # Chemin où se trouve le binaire psexec.exe à copier sur le poste (le groupe AD Ordinateurs du domaine doit avoir accès en lecture si partage réseau)

    # Uninstalling the package
    print('Uninstalling %s' % control.package)
    run(r'"%s\{89F51B55-CA39-4541-96A8-992BB651ECFE}\setup.exe" /s REMOVE=TRUE MODIFY=FALSE' % programdata) # EBP Paie Autonome Open Line 2022 13.12
    print('Uninstalling Utilitaire de mise à jour des logiciels EBP 1.1.4')
    run('"%s\{1EC042F4-00FE-4251-9F1D-E7DD25B8E895}\setup.exe" /s REMOVE=TRUE MODIFY=FALSE' % programdata) # Utilitaire de mise à jour des logiciels EBP 1.1.4
    print('Uninstalling Instance SQL EBP')
    filecopyto(psexec_path,'c:/windows/temp')
    run(r'c:\windows\temp\psexec.exe -i -s "%s\Microsoft SQL Server\140\Setup Bootstrap\SQL2017\setup.exe" %s' % (programfiles64,silentargs_SQL),timeout=1200) # Instance SQL EBP
    remove_file('c:/windows/temp/psexec.exe')
    print('Uninstalling Microsoft ODBC Driver 13 for SQL Server')
    run('"msiexec.exe" /X{2A35FB4B-FF5D-4C40-BABB-84397E57A8B0} /qn') # Microsoft ODBC Driver 13 for SQL Server
    print('Uninstalling Service de langage T-SQL Microsoft SQL Server 2017')
    run('"msiexec.exe" /X{7051E3D8-7B59-4E38-A94F-BBA621D98267} /qn') # Service de langage T-SQL Microsoft SQL Server 2017
    print('Uninstalling Microsoft SQL Server 2012 Native Client')
    run('"msiexec.exe" /X{BD124715-29D5-4A2E-82EE-0F4392D9CFE3} /qn') # Microsoft SQL Server 2012 Native Client
Zukunft :
Vielleicht eine zweite Version mit einem separaten Paket zur Installation der SQL-Instanz.
Pakete für die EBP PGI Education Suite \o/

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 - 10:20 Uhr
von jpele
Hallo Olivier,

ich bin mir nicht sicher, ob du Microsoft SQL Server 2017 mithilfe des WAPT-Pakets installieren konntest.

Ich habe bereits an einem EBP-Paket gearbeitet und ein funktionsfähiges tis-microsoft-sql-server-2014-express-ebp-Paket erstellt.
Falls du Hilfe benötigst, kannst du dich gerne an den Support wenden, damit wir am ebp_microsoft_sql_2017_x64_v3.7zip-Paket arbeiten können.

Viele Grüße,
Jimmy

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 - 10:49 Uhr
von olaplanche
Ja, in dem von mir vorgeschlagenen Code funktioniert die gleichzeitige Installation von EBP und der SQL-Instanz genauso wie bei einer manuellen Installation. ;)

Die Analyse der Funktionsweise des Installationsprogramms lässt mich hoffen, dass ich die Installation der SQL-Instanz und des EBP-Clients in zwei separate Pakete aufteilen kann!

Ich halte Sie auf dem Laufenden.

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 - 11:34 Uhr
von florentR2
Das wären großartige Neuigkeiten, denn wir haben dasselbe Problem mit EBP!
Können Sie bestätigen, dass das Paket im klassischen Bereitstellungsmodus einwandfrei funktioniert und nicht nur mit Pyscripter/wapt-get install?

Dank Wapt ist es für uns jetzt viel einfacher. Wir haben ein Paket erstellt, das die Installationsdateien lokal kopiert, und in der Konsole ein psexec-Tool hinzugefügt, das die Installation startet. Ein Rechtsklick auf einen beliebigen PC, der das Paket benötigt, installiert es. Es ist zwar nicht perfekt, aber deutlich besser als vorher, als wir es manuell auf jedem einzelnen PC installieren mussten.

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 - 11:45 Uhr
von olaplanche
Ja, ich kann bestätigen, dass alles funktioniert. Es wurde auf einer Test-VM getestet, die mit dem Produktiv-PC identisch ist.

Der von mir bereitgestellte Code installiert automatisch den EBP-Client, die SQL-Instanz und Webclient 1.1.4.
Bei der Deinstallation werden alle Komponenten entfernt: der EBP-Client, Webclient 1.1.4, die SQL-Instanz und alle zugehörigen Abhängigkeiten!

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 – 13:17 Uhr
von florentR2
Okay, danke, ich werde das im nächsten Schuljahr mit der neuen Version ausprobieren!

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 – 14:57 Uhr
von jpele
Nach meinen Recherchen benötigt die Installation eine Internetverbindung. Ich kann die ZIP-Datei nicht finden, die ich auch manuell herunterladen musste.
Daher ist es sehr wahrscheinlich, dass die ZIP-Datei bei jeder Installation heruntergeladen wird.

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 – 16:00 Uhr
von olaplanche
Paket wapt-microsoft-sql-server-2017-express-ebp: viewtopic.php?t=2929

Build 2 des Pakets EBP-Paket Open Line Standalone Payroll in Bearbeitung ;)

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package

Veröffentlicht: 11. Februar 2022 – 16:21 Uhr
von olaplanche
:!: Build 2 ist jetzt viel einfacher: :!:

Steuerdatei:

Code: Alle auswählen

package           : wapt-ebp-paye-2022
version           : 11.0.0.0-74
architecture      : all
section           : base
priority          : optional
name              : EBP Paye 2022
categories        : 
maintainer        : olaplanche
description       : ebp_2022_paye (EBP)
depends           : wapt-microsoft-sql-server-2017-express-ebp
conflicts         : 
maturity          : PROD
locale            : fr
target_os         : windows
min_wapt_version  : 
sources           : https://support.ebp.com/hc/fr/articles/360000159638-Param%C3%A9trage-du-fichier-InstallEBP-dans-EBP-%C3%89ducation-pack-enseignement-
installed_size    : 
impacted_process  : EBP.Payroll.Application
description_fr    : Envie d'optimiser la production de votre paie ? Profitez d'un logiciel de paie et administration du personnel clé en main, paramétré à votre activité. Fiabilisez son traitement grâce à l'automatisation des tâches et aux mises à jours incluses. Vous réduisez ainsi vos coûts administratifs et consacrez plus de temps aux tâches à plus forte valeur ajouter.
description_pl    : 
description_de    : 
description_es    : 
description_pt    : 
description_it    : 
description_nl    : 
description_ru    : 
audit_schedule    : 
editor            : EBP
keywords          : 
licence           : 
homepage          : https://www.ebp.com/logiciel-paie/solution-autonome
package_uuid      : 0fb002ff-3e13-4f41-82b8-4d1a5c2ecb8a
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 
setup.py-Datei:

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

# Defining variables
bin_name_string = 'EBPOL_2022_Autonome_Paie_13_12_0_13235.exe' # Le numéro de version dans le nom du binaire ne correspond pas au control.version !!!
# WEBCHECKED=FALSE car sinon la version 1.1.3 de l'utilitaire de mise à jour sera installé
silentargs_EBP_SQL = '/s NETWORK=FALSE PERSONALIZED=TRUE WEBCHECKED=FALSE' # Paramètre pour une installation silencieuse Monoposte EBP + SQL
silentargs_EBP = '/s NETWORK=TRUE PERSONALIZED=TRUE WEBCHECKED=FALSE' # Paramètre pour une installation silencieuse Réseau EBP (pas besoin de psexec dans ce cas là, la fonction install_exe_if_needed serait même suffisante)

def install():
    # Installing the package
    if installed_softwares ('EBP Paie Autonome Open Line 2022 13.12'): # Attention le binaire désinstalle la version courante si identique...
        print('Software %s already installed' % control.package)
        pass
    else:
        print('Installing %s' % control.package)
        install_exe_if_needed(bin_name_string,silentargs_EBP)
        #remove_desktop_shortcut('EBP Paie Autonome Open Line 2022 13.12 .lnk') # Suppression du raccourçi sur le bureau
        print('Installing Utilitaire de mise à jour des logiciels EBP 1.1.4')
        install_exe_if_needed("EBP_WebClient_1_1_4_156_Setup.exe",silentflags="/s",min_version="1.1.4") # MAJ de l'utilitaire de mise à jour des logiciels EBP 1.1.4 et Teamviewer QS pour le support EBP

def uninstall():
    # Uninstalling the package
    print('Uninstalling %s' % control.package)
    run(r'"%s\{89F51B55-CA39-4541-96A8-992BB651ECFE}\setup.exe" /s REMOVE=TRUE MODIFY=FALSE' % programdata) # EBP Paie Autonome Open Line 2022 13.12
    print('Uninstalling Utilitaire de mise à jour des logiciels EBP 1.1.4')
    run('"%s\{1EC042F4-00FE-4251-9F1D-E7DD25B8E895}\setup.exe" /s REMOVE=TRUE MODIFY=FALSE' % programdata) # Utilitaire de mise à jour des logiciels EBP 1.1.4

Betreff: [GELÖST] EBP Open Line Autonomous Payroll Package 13.21 Build 3

Veröffentlicht: 8. Februar 2023 - 8:56 Uhr
von olaplanche
:!: Build 3 vom 08.02.2023 :!:

Komplette Code-Überarbeitung:
  • Maximale Nutzung von Variablen
  • Verwendung der nativen Funktionen von Wapt
  • Versionsnummernverwaltung hinzugefügt (da EBP dies nicht bietet...)
  • Das Update für die Software, die in Build 2 nicht korrekt funktionierte, wurde hinzugefügt
Steuerdatei:

Code: Alle auswählen

package           : wapt-ebp-paye-2022
version           : 13.21-74
architecture      : all
section           : base
priority          : optional
name              : EBP Paie Autonome Open Line 2022
categories        : 
maintainer        : olaplanche
description       : 
depends           : wapt-microsoft-sql-server-2017-express-ebp
conflicts         : 
maturity          : PROD
locale            : fr
target_os         : windows
min_wapt_version  : 
sources           : https://support.ebp.com/hc/fr/articles/360000159638-Param%C3%A9trage-du-fichier-InstallEBP-dans-EBP-%C3%89ducation-pack-enseignement-
installed_size    : 
impacted_process  : EBP.Payroll.Application
description_fr    : Envie d'optimiser la production de votre paie ? Profitez d'un logiciel de paie et administration du personnel clé en main, paramétré à votre activité. Fiabilisez son traitement grâce à l'automatisation des tâches et aux mises à jours incluses. Vous réduisez ainsi vos coûts administratifs et consacrez plus de temps aux tâches à plus forte valeur ajouter.
description_pl    : 
description_de    : 
description_es    : 
description_pt    : 
description_it    : 
description_nl    : 
description_ru    : 
audit_schedule    : 
editor            : EBP
keywords          : 
licence           : 
homepage          : https://www.ebp.com/logiciel-paie/solution-autonome
setup.py-Datei:

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""

# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
bin_contains = 'EBPOL_2022_Autonome_Paie_' # The ProductVersion from binary is not corresponding to the control.version and is not usable, we will spoof it later !
silentflags = '/s NETWORK=TRUE PERSONALIZED=TRUE WEBCHECKED=FALSE' # WEBCHECKED=FALSE otherwise the 1.1.3 version of the update utility will be installed. We don't need it to manage update with WAPT
silent_uninstallflags = " /s REMOVE=TRUE MODIFY=FALSE"
app_uninstallkey = "EBP Paie Autonome Open Line 2022 %s " # The uninstallkey is changing everytime with new version of the software, we have to guess it from package_version !
app_displayname_contains = "EBP Paie Autonome Open Line 2022"

def install():
    # Initializing variables
    package_version = control.get_software_version()
    bin_name = glob.glob("*%s*.exe" % bin_contains)[0]

    # Skip if already installed
    if need_install(app_uninstallkey % package_version,min_version=package_version):

        # Uninstalling others versions
        for uninstall in installed_softwares(app_displayname_contains):
            if uninstall['uninstall_string']: # test if the uninstallkey had an uninstall_string because there are two uninstallkey for the same software...
                print("Removing: %s" % (uninstall["name"]))
                killalltasks(control.get_impacted_process_list())
                run(uninstall_cmd(uninstall["key"]))
                wait_uninstallkey_absent(uninstall["key"])

        # Installing the package
        print('Installing %s' % bin_name)
        install_exe_if_needed(bin_name,silentflags=silentflags,key=app_uninstallkey % package_version,timeout=900)
        #remove_desktop_shortcut(app_displayname_contains + " %s " % package_version) # Remove a shortcut from the desktop of all users if needed

    else:

        # Making sure uninstallkey is known
        uninstallkey.append(app_uninstallkey % package_version)

    # Add a silent uninstall command to the registry
    for uninstallstring in installed_softwares(app_displayname_contains):
        silent_uninstall_cmd = uninstallstring['uninstall_string'].split(" ",1)[0] + silent_uninstallflags
        register_uninstall(uninstallkey=app_uninstallkey % package_version,quiet_uninstall_string=silent_uninstall_cmd,display_version=package_version) # we are spoofing the version's number right here