verschiedene Kunden
This commit is contained in:
183
BKK Faber Castell/BKKFC_zeich_nr_aendern.jpl
Normal file
183
BKK Faber Castell/BKKFC_zeich_nr_aendern.jpl
Normal file
@@ -0,0 +1,183 @@
|
||||
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////
|
||||
//
|
||||
// Zeichnungs-Nummern ändern
|
||||
//
|
||||
// geschrieben von calb / 2018.06.15
|
||||
//
|
||||
// (c) d.velop AG 2018
|
||||
//
|
||||
//////////////////////////////////
|
||||
|
||||
|
||||
//////////////////////////////////
|
||||
//
|
||||
// Dieses Skript passt die Zeichnungs-Nummern von Verträgen an.
|
||||
//
|
||||
vars vers = "0.1 calb d.AG/PS 2018.06.15 Initialversion"
|
||||
//
|
||||
//////////////////////////////////
|
||||
|
||||
// Konfiguration
|
||||
|
||||
|
||||
// debug = 1 => es werden keine Änderungen an der DB durchgeführt
|
||||
// debug = 0 => es werden Änderungen an der DB durchgeführt
|
||||
vars debug = 0
|
||||
|
||||
//////////////////////////////////
|
||||
|
||||
|
||||
call bkklog( 4, "*********************************************" )
|
||||
call bkklog( 4, "* BKKFC_zeich_nr_aendern.jpl *" )
|
||||
call bkklog( 4, "* calb/d.velop AG 15.06.2018 *" )
|
||||
call bkklog( 4, "*********************************************" )
|
||||
call bkklog( 4, "* " ## vers )
|
||||
call bkklog( 4, "* DEBUG : " ## debug )
|
||||
|
||||
// Los geht's ......
|
||||
|
||||
call bkklog( 4, "*********************************************" )
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
vars l_doku_id[ 1000 ]
|
||||
vars anzahl, i
|
||||
vars vertragsnr, ergebnis
|
||||
|
||||
dbms alias l_doku_id
|
||||
dbms sql select p.doku_id doku_id from phys_datei p, firmen_spezifisch f where f.kue_dokuart = 'EVERT' and p.zeich_nr like 'P%' and f.doku_id = p.doku_id order by p.doku_id
|
||||
anzahl = @dmrowcount
|
||||
dbms alias
|
||||
|
||||
for i = 1 while i <= anzahl step 1
|
||||
{
|
||||
call bkklog( 4, i ## " bearbeite Doku-ID " ## l_doku_id[ i ] )
|
||||
|
||||
ergebnis = api_function( "attribute_get_single", 1, 0, l_doku_id[ i ] )
|
||||
|
||||
vertragsnr = api_single_info
|
||||
|
||||
call bkklog( 4, i ## " setze Zeichnungs-Nummer des Dokuments " ## l_doku_id[ i ] ## " auf den Wert " ## vertragsnr )
|
||||
|
||||
if ( debug == 0 )
|
||||
{
|
||||
call set_doc_property( l_doku_id[ i ], "doc_number", vertragsnr )
|
||||
|
||||
ergebnis = upd_doc_db_data( l_doku_id[ i ] )
|
||||
|
||||
if ( ergebnis == "1" )
|
||||
{
|
||||
call bkklog( 4, i ## " Die Änderung wurde durchgeführt." )
|
||||
}
|
||||
else
|
||||
{
|
||||
call bkklog( 2, i ## " Es ist ein Fehler aufgetreten, dbi_retcode: " ## dbi_retcode )
|
||||
}
|
||||
|
||||
// Kontrolle
|
||||
ergebnis = api_function( "attribute_get_single", "doc_no", 0, l_doku_id[ i ] )
|
||||
|
||||
call bkklog( 4, i ## " Ergebnis des Updates: " ## api_single_info )
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
call bkklog( 4, i ## " debug ist eingeschaltet - es wurden keine Änderungen durchgeführt.")
|
||||
|
||||
// Kontrolle
|
||||
ergebnis = api_function( "attribute_get_single", "doc_no", 0, l_doku_id[ i ] )
|
||||
|
||||
call bkklog( 4, i ## " Ergebnis des Updates: " ## api_single_info )
|
||||
}
|
||||
|
||||
call bkklog( 4, "--------------------------------------" )
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
proc bkklog( loglevel, message )
|
||||
{
|
||||
vars l_logdirect = "BEIDE"
|
||||
vars l_logdatei = "D\:\\d3\\apps\\log.txt"
|
||||
vars l_loglevel = 5
|
||||
|
||||
vars zeitstempel, loglevel_lang, d3loglevel, logmessage
|
||||
|
||||
if ( loglevel == 5 )
|
||||
{
|
||||
loglevel_lang = "DEBUG"
|
||||
// Da die d.3 Server i.d.R. nicht im Debug-Modus laufen, erscheinen DEBUG-Meldungen nicht im Log.
|
||||
d3loglevel = 9
|
||||
}
|
||||
|
||||
if ( loglevel == 4 )
|
||||
{
|
||||
loglevel_lang = "INFO."
|
||||
d3loglevel = 6
|
||||
}
|
||||
|
||||
if ( loglevel == 3 )
|
||||
{
|
||||
loglevel_lang = "WARN."
|
||||
d3loglevel = 6
|
||||
}
|
||||
|
||||
if ( loglevel == 2 )
|
||||
{
|
||||
loglevel_lang = "ERROR"
|
||||
d3loglevel = 0
|
||||
}
|
||||
|
||||
if ( loglevel == 1 )
|
||||
{
|
||||
loglevel_lang = "FATAL"
|
||||
d3loglevel = 0
|
||||
}
|
||||
|
||||
if ( loglevel <= l_loglevel )
|
||||
{
|
||||
|
||||
|
||||
if ( ( l_logdirect == "DATEI" ) || ( l_logdirect == "BEIDE" ) )
|
||||
{
|
||||
// Ausgabe in Datei
|
||||
zeitstempel = sm_sdtime( "n%4y.%0m.%0d %0h\:%0M\:%0s" )
|
||||
logmessage = zeitstempel ## " " ## loglevel_lang ## " " ## message
|
||||
call api_function( "file_add_line", l_logdatei, logmessage, "APPEND" )
|
||||
}
|
||||
|
||||
if ( ( l_logdirect == "D3LOG" ) || ( l_logdirect == "BEIDE" ) )
|
||||
{
|
||||
// Ausgabe im d.3 Log
|
||||
logmessage = loglevel_lang ## " " ## message
|
||||
call api_log( d3loglevel, logmessage )
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
41
BKK Faber Castell/readme.txt
Normal file
41
BKK Faber Castell/readme.txt
Normal file
@@ -0,0 +1,41 @@
|
||||
Es soll eine Zeichnungs-Nr. geändert werden.
|
||||
|
||||
|
||||
2601 (SQL-Server-Fehlermeldung/Returncode) bedeutet Index-Verletzung: Die Zeich-Nr. existiert bereits im System.
|
||||
|
||||
Kernfunktionen siehe Hook-Doku, Kapitel "Massenverarbeitung von Dokument-Metadaten".
|
||||
|
||||
Logauszug:
|
||||
|
||||
2018.06.15 13:00:33 INFO. *********************************************
|
||||
2018.06.15 13:00:33 INFO. * BKKFC_zeich_nr_aendern.jpl *
|
||||
2018.06.15 13:00:33 INFO. * calb/d.velop AG 15.06.2018 *
|
||||
2018.06.15 13:00:33 INFO. *********************************************
|
||||
2018.06.15 13:00:33 INFO. * 0.1 calb d.AG/PS 2018.06.15 Initialversion
|
||||
2018.06.15 13:00:33 INFO. * DEBUG : 0
|
||||
2018.06.15 13:00:33 INFO. *********************************************
|
||||
2018.06.15 13:00:33 INFO. 1 bearbeite Doku-ID P000500991
|
||||
2018.06.15 13:00:33 INFO. 1 setze Zeichnungs-Nummer des Dokuments P000500991 auf den Wert DV-2018-00001
|
||||
2018.06.15 13:00:33 ERROR 1 Es ist ein Fehler aufgetreten, dbi_retcode: 2601
|
||||
2018.06.15 13:00:33 INFO. 1 Ergebnis des Updates: P000500991
|
||||
2018.06.15 13:00:33 INFO. --------------------------------------
|
||||
2018.06.15 13:00:33 INFO. 2 bearbeite Doku-ID P000500992
|
||||
2018.06.15 13:00:33 INFO. 2 setze Zeichnungs-Nummer des Dokuments P000500992 auf den Wert DV-2018-00010
|
||||
2018.06.15 13:00:33 INFO. 2 Die Änderung wurde durchgeführt.
|
||||
2018.06.15 13:00:33 INFO. 2 Ergebnis des Updates: DV-2018-00010
|
||||
2018.06.15 13:00:33 INFO. --------------------------------------
|
||||
2018.06.15 13:00:33 INFO. 3 bearbeite Doku-ID P000500993
|
||||
2018.06.15 13:00:33 INFO. 3 setze Zeichnungs-Nummer des Dokuments P000500993 auf den Wert DV-2018-00002
|
||||
2018.06.15 13:00:33 INFO. 3 Die Änderung wurde durchgeführt.
|
||||
2018.06.15 13:00:33 INFO. 3 Ergebnis des Updates: DV-2018-00002
|
||||
2018.06.15 13:00:33 INFO. --------------------------------------
|
||||
2018.06.15 13:00:33 INFO. 4 bearbeite Doku-ID P000500994
|
||||
2018.06.15 13:00:33 INFO. 4 setze Zeichnungs-Nummer des Dokuments P000500994 auf den Wert DV-2018-00003
|
||||
2018.06.15 13:00:33 INFO. 4 Die Änderung wurde durchgeführt.
|
||||
2018.06.15 13:00:33 INFO. 4 Ergebnis des Updates: DV-2018-00003
|
||||
2018.06.15 13:00:33 INFO. --------------------------------------
|
||||
2018.06.15 13:00:33 INFO. 5 bearbeite Doku-ID P000500995
|
||||
2018.06.15 13:00:33 INFO. 5 setze Zeichnungs-Nummer des Dokuments P000500995 auf den Wert DV-2018-00004
|
||||
2018.06.15 13:00:33 INFO. 5 Die Änderung wurde durchgeführt.
|
||||
2018.06.15 13:00:33 INFO. 5 Ergebnis des Updates: DV-2018-00004
|
||||
2018.06.15 13:00:33 INFO. --------------------------------------
|
||||
227
BuW/korrigiere_DVREC.jpl
Normal file
227
BuW/korrigiere_DVREC.jpl
Normal file
@@ -0,0 +1,227 @@
|
||||
//
|
||||
// korrigiere_DVREC.jpl
|
||||
//
|
||||
// 2012.02.24 alch
|
||||
//
|
||||
// V0.1 initiale Version
|
||||
|
||||
//
|
||||
// Dieses Skript soll Kostenstellen nach Innenaufträge zuordnen.
|
||||
// Normalerweise wird dies von einem Hook während des Imports erledigt; dieser war aber offenbar nicht in "the condition to make". :-(
|
||||
//
|
||||
|
||||
//
|
||||
// Kunde: BuW, Fr. Luther
|
||||
//
|
||||
|
||||
|
||||
call korrigiere_DVREC()
|
||||
|
||||
proc korrigiere_DVREC()
|
||||
{
|
||||
call xlog( 4, "*******************************************************" )
|
||||
call xlog( 4, "* korrigiere_DVREC.jpl " )
|
||||
call xlog( 4, "* von Christian Albers " )
|
||||
call xlog( 4, "* (c) 2012 d.velop process Solutions GmbH " )
|
||||
call xlog( 4, "*******************************************************" )
|
||||
//call xlog( 4, "" )
|
||||
//call xlog( 4, "*******************************************************" )
|
||||
|
||||
vars DVREC[4000]
|
||||
vars ergebnis
|
||||
vars doku_id, P_doc_id
|
||||
vars zaehler = 0
|
||||
vars v_kostenstelle, tmp_innenauftrag, v_retVal, v_changed, v_pos_counter, i, db_pos_innenauftrag
|
||||
|
||||
|
||||
|
||||
|
||||
dbms declare cursor work for \
|
||||
select f.doku_id from firmen_spezifisch f, phys_datei p where f.doku_id = p.doku_id and f.kue_dokuart = 'DVREC' and p.datum_einbring > '10.01.2011' and p.datum_einbring < '02.24.2012' order by doku_id
|
||||
dbms with cursor work alias doku_id
|
||||
dbms WITH CURSOR work EXECUTE
|
||||
|
||||
while ( @dmrowcount > 0 )
|
||||
{
|
||||
zaehler = zaehler + 1
|
||||
|
||||
|
||||
|
||||
DVREC[ zaehler ] = doku_id
|
||||
|
||||
dbms with cursor work continue
|
||||
|
||||
}
|
||||
|
||||
dbms alias
|
||||
|
||||
// Jetzt stehen alle möglicherweise zu bearbeitenden Doku-IDs in DVREC[]
|
||||
//
|
||||
|
||||
for i = 1 while i <= zaehler step 1
|
||||
{
|
||||
P_doc_id = DVREC[ i ]
|
||||
db_pos_innenauftrag = "65"
|
||||
|
||||
call xlog( 4, "bearbeite Zeile :i - Doku-ID : :P_doc_id " )
|
||||
call api_clear_document_context()
|
||||
|
||||
// Merken, ob Attribute geaendert wurden
|
||||
v_changed = 0
|
||||
|
||||
// Aktuelle Attribute ermitteln
|
||||
v_retVal = api_function( "attribute_get_all", P_doc_id, "" )
|
||||
if ( v_retVal == 0 )
|
||||
{
|
||||
if ( @length(db_pos_innenauftrag) == 2)
|
||||
{
|
||||
for v_pos_counter = 1 while ( v_pos_counter <= 100 ) step 1
|
||||
{
|
||||
if ( api_doc_field_:(db_pos_innenauftrag)[v_pos_counter] != "" && api_doc_field_64[v_pos_counter] == "")
|
||||
{
|
||||
tmp_innenauftrag = AddiereFuehrendeNullen( api_doc_field_:(db_pos_innenauftrag)[v_pos_counter] , 12 )
|
||||
//call xlog( 4, " 5 hook_upd_attrib_exit_20_dps P_doc_id: :P_doc_id tmp_innenauftrag :tmp_innenauftrag " )
|
||||
DBMS ALIAS v_kostenstelle
|
||||
DBMS SQL \
|
||||
SELECT kst \
|
||||
FROM dos_ia_kst (NOLOCK) \
|
||||
WHERE ia = :+tmp_innenauftrag
|
||||
//call xlog( 4, " 6 hook_upd_attrib_exit_20_dps P_doc_id: :P_doc_id v_kostenstelle :v_kostenstelle " )
|
||||
if ( @dmrowcount > 0 )
|
||||
{
|
||||
api_doc_field_64[v_pos_counter] = EntferneFuehrendeNullen( v_kostenstelle )
|
||||
call xlog( 4, "P_doc_id: :P_doc_id api_doc_field_64[ :v_pos_counter ] :api_doc_field_64[v_pos_counter] " )
|
||||
v_changed = 1
|
||||
}
|
||||
else
|
||||
{
|
||||
//call api_log_error("Keine Kostenstelle zum Innenauftrag :tmp_innenauftrag gefunden" )
|
||||
call xlog( 2, "P_doc_id: :P_doc_id Keine Kostenstelle zum Innenauftrag :tmp_innenauftrag gefunden" )
|
||||
}
|
||||
DBMS ALIAS
|
||||
}
|
||||
else
|
||||
{
|
||||
//call xlog( 4, "Kostenstelle bereits gefüllt." )
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Nur wenn Attribute geaendert wurden, dann alle speichern
|
||||
if ( v_changed == 1 )
|
||||
{
|
||||
//v_retVal = api_function( "attribute_update_all", P_doc_id, "" )
|
||||
v_retVal = 0
|
||||
if ( v_retVal != 0 )
|
||||
{
|
||||
api_doc_field[70] = FormatiereGeld( api_doc_field[70] )
|
||||
|
||||
|
||||
call xlog( 3, "Noch mal (:P_doc_id) mit Betrag :api_doc_field[70]")
|
||||
//v_retVal = api_function( "attribute_update_all", P_doc_id, "" )
|
||||
v_retVal = 0
|
||||
if ( v_retVal != 0 )
|
||||
{
|
||||
call xlog( 2, "Dokumentattribute zu :P_doc_id konnten nicht gespeichert werden")
|
||||
}
|
||||
else
|
||||
{
|
||||
call xlog( 4, "Attribute zu :P_doc_id wurden gespeichert." )
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
call xlog( 4, "Attribute zu :P_doc_id wurden gespeichert." )
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
call xlog( 4, "keine Änderungen, keine Speicherungen." )
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
call xlog( 2, "Dokumentattribute zu :P_doc_id konnten nicht ermittelt werden")
|
||||
}
|
||||
|
||||
call xlog( 4, "*******************************************************" )
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
call xlog( 4, "korrigiere_DVREC.jpl beendet sich ..." )
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
global vars g_loglevel = 5
|
||||
global vars g_logdatei = "D\:\\d3\\apps\\korrigiere_DVREC\\korrigiere_DVREC.log"
|
||||
|
||||
// Legt fest, wohin geloggt werden soll: DATEI => nur Datei, D3LOG => d.3 Log, BEIDE => sowohl FILE als auch D3LOG
|
||||
global vars g_logdirect = "DATEI"
|
||||
|
||||
// call xlog( 4, "Hello World!" )
|
||||
|
||||
proc xlog( loglevel, message )
|
||||
{
|
||||
|
||||
vars zeitstempel, loglevel_lang, d3loglevel, logmessage
|
||||
|
||||
if ( loglevel == 5 )
|
||||
{
|
||||
loglevel_lang = "DEBUG"
|
||||
// Da die d.3 Server i.d.R. nicht im Debug-Modus laufen, erscheinen DEBUG-Meldungen nicht im Log.
|
||||
d3loglevel = 9
|
||||
}
|
||||
|
||||
if ( loglevel == 4 )
|
||||
{
|
||||
loglevel_lang = "INFO."
|
||||
d3loglevel = 6
|
||||
}
|
||||
|
||||
if ( loglevel == 3 )
|
||||
{
|
||||
loglevel_lang = "WARN."
|
||||
d3loglevel = 6
|
||||
}
|
||||
|
||||
if ( loglevel == 2 )
|
||||
{
|
||||
loglevel_lang = "ERROR"
|
||||
d3loglevel = 0
|
||||
}
|
||||
|
||||
if ( loglevel == 1 )
|
||||
{
|
||||
loglevel_lang = "FATAL"
|
||||
d3loglevel = 0
|
||||
}
|
||||
|
||||
if ( loglevel <= g_loglevel )
|
||||
{
|
||||
|
||||
|
||||
if ( ( g_logdirect == "DATEI" ) || ( g_logdirect == "BEIDE" ) )
|
||||
{
|
||||
// Ausgabe in Datei
|
||||
zeitstempel = sm_sdtime( "n%4y.%0m.%0d %0h\:%0M\:%0s" )
|
||||
logmessage = zeitstempel ## " " ## loglevel_lang ## " " ## message
|
||||
call api_function( "file_add_line", g_logdatei, logmessage, "APPEND" )
|
||||
}
|
||||
|
||||
if ( ( g_logdirect == "D3LOG" ) || ( g_logdirect == "BEIDE" ) )
|
||||
{
|
||||
// Ausgabe im d.3 Log
|
||||
logmessage = loglevel_lang ## " " ## message
|
||||
call api_log( d3loglevel, logmessage )
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
87
Cramer/hook.jpl
Normal file
87
Cramer/hook.jpl
Normal file
@@ -0,0 +1,87 @@
|
||||
if ( P_doctype == "D95") // Eingangslieferschein
|
||||
{
|
||||
vars DDF3[5000] // LiefNr
|
||||
vars DDF16[5000] // Lieferant
|
||||
vars DDF33[5000] // externe BelegNr
|
||||
vars DDF50[5000] // Datum
|
||||
vars DDF60[5000] // Charge
|
||||
vars DDF61[5000] // Artikelnummer
|
||||
vars DDF62[5000] // interne BelegNr
|
||||
vars ergebnis
|
||||
vars i // Zähler
|
||||
vars anzahl // Anzahl der Treffer
|
||||
|
||||
// Führende Nullen im Barcode entfernen
|
||||
ergebnis = api_function( "string_cut_leading_char", dok_dat_feld[ 41 ], "0" )
|
||||
|
||||
if ( ergebnis >= 0 )
|
||||
{
|
||||
// Nullen wurden aus dem Barcode entfernt
|
||||
dok_dat_feld[ 41 ] = api_converted_string
|
||||
|
||||
|
||||
// Ermittlung der Eigenschaftswerte aus der Datenbank
|
||||
DBMS DECLARE TA_Session CONNECTION FOR USER 'informix' PASSWORD 'informix' DATASOURCE 'Firma1'
|
||||
|
||||
DBMS WITH CONNECTION TA_Session ALIAS DDF3, DDF16, DDF50, DDF33, DDF62, DDF60, DDF61
|
||||
DBMS WITH CONNECTION TA_Session SQL \
|
||||
SELECT wei_liefnr, kr1_nam, wei_liefdat, wei_liefsnr, wei_bestnr, wei_charge, wei_artikel \
|
||||
FROM v2_flwein \
|
||||
WHERE wei_lbarcode = :dok_dat_feld[ 41 ]
|
||||
anzahl = @dmrowcount
|
||||
DBMS WITH CONNECTION TA_Session ALIAS
|
||||
|
||||
|
||||
DBMS CLOSE CONNECTION TA_Session
|
||||
|
||||
|
||||
if ( anzahl > 0 )
|
||||
{
|
||||
// Jeder Datensatz muss vollständige Eigenschaftswerte enthalten - die DDF-Zuweisung basiert dann auf dem ersten DB-Treffer
|
||||
|
||||
// LiefNr
|
||||
dok_dat_feld[ 3 ] = DDF3[ 1 ]
|
||||
|
||||
// Lieferant
|
||||
dok_dat_feld[ 16 ] = DDF16[ 1 ]
|
||||
|
||||
// interne BelegNr
|
||||
// fällt weg wg. Umstellung auf Mehrfachindexfeld DDF62
|
||||
//dok_dat_feld[ 29 ] = DDF29[ 1 ]
|
||||
|
||||
// externe BelegNr
|
||||
dok_dat_feld[ 33 ] = DDF33[ 1 ]
|
||||
|
||||
// Datum
|
||||
if ( @length( DDF50[ 1 ] ) > 0 )
|
||||
{
|
||||
dok_dat_feld[ 50 ] = DDF50[ 1 ]( 7, 2 ) ## "." ## DDF50[ 1 ]( 5, 2 ) ## "." ## DDF50[ 1 ]( 1, 4 )
|
||||
}
|
||||
|
||||
// Charge und Artikelnummer
|
||||
// CUR_60ER_FIELD_NR = 500
|
||||
for i = 1 while i <= 500
|
||||
{
|
||||
// Artikelnummer und Charge müssen immer beide gefüllt sein; daher darf die folgende Abfrage ausschließlich auf der Charge basieren
|
||||
if ( DDF60 != "" )
|
||||
{
|
||||
dok_dat_feld_60[ i ] = DDF60[ i ]
|
||||
dok_dat_feld_61[ i ] = DDF61[ i ]
|
||||
dok_dat_feld_62[ i ] = DDF62[ i ]
|
||||
}
|
||||
else
|
||||
{
|
||||
dok_dat_feld_60[ i ] = ""
|
||||
dok_dat_feld_61[ i ] = ""
|
||||
dok_dat_feld_62[ i ] = ""
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
call api_log_error( "Es ist ein Fehler beim Entfernen der führenden Nullen aus dem Barcode aufgetreten. RC:" ## ergebnis )
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user