183 lines
4.9 KiB
Plaintext
183 lines
4.9 KiB
Plaintext
|
|
|
|
|
|
|
|
//////////////////////////////////
|
|
//
|
|
// 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 )
|
|
}
|
|
}
|
|
|
|
} |