Skip to main content

Liebe Community,
uns sind vermehrt Fehler in der Belegüberladung mithilfe von Custom Code aufgefallen.

 

Worum geht es?

Speziell geht es um einen Codeblock in der Funktion renderItems in class.briefpapier_custom.php, bei denen Code in dieser Form (oder ähnlich) vorhanden war:

$docArr = $this->app->DB->SelectRow( sprintf( 'SELECT projekt,adresse,steuersatz_normal,steuersatz_ermaessigt FROM `%s` WHERE id = %d', $doctype, $doctypeId )

Der Codeblock ist problematisch, da für Lieferscheine und Retouren die Spalten steuersatz_normal und steuersatz_ermaessigt in der Datenbank nicht existieren.

 

Bin ich davon betroffen?

Sollte eure Instanz betroffen gewesen sein, so werdet ihr auch mit einer In-Product-Nachricht in eurer Xentral Instanz informiert. Bitte prüft in diesem Fall den euch vorliegenden Code-Stand der class.briefpapier_custom.php und arbeitet die Fehlerbehebung entsprechend nach, um zu vermeiden, dass ihr fehlerhaften Custom Code für den Upload in eure Xentral-Instanz bereitstellt.

 

Was muss ich tun?

Dieser Code wurde bereits Ende 2023 im Standard von uns korrigiert, jedoch existierten noch diverse Customizings, bei denen dieser fehlerhafte Code enthalten war. Wir haben diesen Fehler nun proaktiv für alle Xentral-Instanzen behoben, in denen dieser Code noch vorhanden war.
Der fehlerhafte Code wurde durch den folgenden Code ersetzt:

$docArr = in_array($doctype, a'lieferschein', 'retoure']) ? null : $this->app->DB->SelectRow(sprintf( 'SELECT projekt,adresse,steuersatz_normal,steuersatz_ermaessigt FROM `%s` WHERE id = %d', $doctype, $doctypeId ) );

 

Beste Grüße

Dear Community,
We have noticed an increasing number of errors in document overload using custom code.

 

What is it about?

Specifically, it concerns a code block in the renderItems function within class.briefpapier_custom.php, where code in this form (or similar) was present:

$docArr = $this->app->DB->SelectRow( sprintf( 'SELECT projekt,adresse,steuersatz_normal,steuersatz_ermaessigt FROM `%s` WHERE id = %d', $doctype, $doctypeId )

The code block is problematic because, for delivery notes and returns, the columns steuersatz_normal and steuersatz_ermaessigt do not exist in the database.

 

Are you affected?

If your instance was affected, you will also be informed via an in-product message in your Xentral instance. In this case, please check the current code status of class.briefpapier_custom.php and follow the error correction process accordingly, to avoid uploading faulty custom code into your Xentral instance.

 

What do you have to do?

This code was already corrected by us in the standard version at the end of 2023, but there were still various customizations that contained this faulty code. We have now proactively fixed this error for all Xentral instances where this code was still present.
The faulty code has been replaced with the following code:

$docArr = in_array($doctype, y'lieferschein', 'retoure']) ? null : $this->app->DB->SelectRow(sprintf( 'SELECT projekt,adresse,steuersatz_normal,steuersatz_ermaessigt FROM `%s` WHERE id = %d', $doctype, $doctypeId ) );

 

Best,


Hierzu könnte man einen Leitsatz von Elon Musk abwandeln:

Best Custom Code is no Custom Code 


Antworten