Browse Source

Myjobs Grundstruktur

master
Daniel Quathamer 2 years ago
parent
commit
f3f50968cd
  1. 372
      scripts/groovy/copy_kettlejob.groovy
  2. 7
      superx/WEB-INF/conf/edustore/db/module/myjobs/MODULINFO
  3. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/VERSION
  4. 10
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/excludes.txt
  5. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/felderinfo_relation.xml
  6. 14
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/get_felderinfo_relation.x
  7. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_doc/myjobs_rename_demofiles.bat
  8. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_doc/myjobs_rename_demofiles.sh
  9. 64
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_drop_pg.xml
  10. 14
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_install_pg.xml
  11. 111
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_integrate_pg.sql
  12. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_masken_einspielen.xml
  13. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_masken_entladen.xml
  14. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_masken_loeschen.xml
  15. 13
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_upgrade1_pg.xml
  16. 22
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_upgrade2_pg.xml
  17. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_aggr_pg.xml
  18. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_load_pg.xml
  19. 40
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_system_pg.xml
  20. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_test_pg.xml
  21. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_trans_pg.xml
  22. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_unload_eduetl_pg.xml
  23. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_unload_hisinone_pg.xml
  24. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/includes.txt
  25. 12
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_alter_table_schema.x
  26. 4
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_drop_views.sql
  27. 24
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_grant.x
  28. 24
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_revoke.x
  29. 203
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs.html
  30. 33
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs.xml
  31. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs_cubes.xml
  32. 113
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs_load.html
  33. 84
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_fields_fuellen.sql
  34. 41
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_fields_loeschen.sql
  35. 51
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_tables_fuellen.sql
  36. 18
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_tables_loeschen.sql
  37. 95
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/unload_params_fuellen.sql
  38. 19
      superx/WEB-INF/conf/edustore/db/module/myjobs/conf/unload_params_loeschen.sql
  39. 551
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/collect_logs.ktr
  40. 554
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/get_mails_to_send.ktr
  41. 587
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor.kjb
  42. 493
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor.ktr
  43. 568
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_logausgabe.kjb
  44. 416
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail1.kjb
  45. 431
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail2.kjb
  46. 431
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail3.kjb
  47. 416
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail4.kjb
  48. 545
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/set_variables.ktr
  49. 545
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/set_variables2.ktr
  50. 545
      superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/set_variables3.ktr
  51. 10
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_aggr_custom.sql
  52. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_aggr_pg.sql
  53. 15
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_backup.x
  54. 73
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_drop_pg.sql
  55. 6
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_indexes_drop.sql
  56. 6
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_indexes_pg.sql
  57. 10
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_install_custom.sql
  58. 139
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_install_pg.sql
  59. 10
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_load_custom.sql
  60. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_load_pg.sql
  61. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_masken_einspielen_pg.x
  62. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_masken_entladen_pg.x
  63. 5
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_masken_loeschen_pg.x
  64. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_purge_pg.sql
  65. 11
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_restore.x
  66. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_shrink.x
  67. 18
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_system_pg.sql
  68. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_test_integrity.sql
  69. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_test_pg.sql
  70. 10
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_trans_custom.sql
  71. 1
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_trans_pg.sql
  72. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_unshrink.x
  73. 97
      superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_copy.x
  74. 0
      superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_sftp.txt
  75. 128
      superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_unload.html
  76. 104
      superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_unload.x
  77. 16
      superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_unload.xml
  78. 17
      superx/WEB-INF/conf/edustore/db/module/myjobs/schluesseltabellen/dim_bp_altsicht_apnr_fuellen.sql
  79. 154
      superx/WEB-INF/conf/edustore/db/module/myjobs/schluesseltabellen/dimension_bp_fuellen.sql
  80. 125
      superx/WEB-INF/conf/edustore/db/module/myjobs/schluesseltabellen/dimension_fuellen.sql
  81. 125
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade.x
  82. 18
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_fields_pg.sql
  83. 2
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_functions_pg.sql
  84. 19
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_indexes_pg.sql
  85. 29
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_pg.sql
  86. 16
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_tables_pg.sql
  87. 22
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_themenbaum.sql
  88. 3
      superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_views_pg.sql
  89. 6
      superx/WEB-INF/myjobs_dbforms-config_pg.xml

372
scripts/groovy/copy_kettlejob.groovy

@ -0,0 +1,372 @@ @@ -0,0 +1,372 @@
#!/usr/bin/env groovy
import groovy.xml.XmlUtil
import java.nio.charset.StandardCharsets
import groovy.xml.QName
class CopyKettleJob {
def stripParams = false , stripConnections = false , addParams = false , addConnections = false , jobFile, toDir, transFiles = [], dryRun = false
def CopyKettleJob(args) {
def cli = new CliBuilder(usage: 'copy_kettlejob.groovy [options] <job.kjb> [<to_dir>]')
cli.with {
h(longOpt: 'help', 'get usage info')
p(longOpt: 'strip-parameters', 'Strip all parameters from transformations')
P(longOpt: 'add-parameters', 'Add parameters to transformation')
c(longOpt: 'strip-connections', 'Strip all connections from transformations')
C(longOpt: 'add-connections', 'Add connections to transformation. If no <to_dir> given, modify files in place.')
d(longOpt: 'dry-run' , 'Just print out what would happen, don\'t actually do anything')
configFile(args:1, argName: 'myconfigfile', 'Use this config file for kettle parameters and database connection')
cli._(longOpt:'jobfile', args:1, argName:'jobfile', 'Job to copy')
cli._(longOpt:'to', args:1, argName:'to dir', 'Directory to copy job to')
}
def options = cli.parse(args)
if (!args || options.h) {
cli.usage()
return
}
def extraArgs = options.arguments();
stripParams = options.p
stripConnections = options.c
addParams = options.P
addConnections = options.C
dryRun = options.d
if (stripParams && addParams) {
println "Cannot use parameters 'p' and 'P' at the same time"
}
if (stripConnections && addConnections) {
println "Cannot use parameters 'c' and 'C' at the same time"
}
jobFile = new File(extraArgs[0])
if (extraArgs[1] != null) {
toDir = new File(extraArgs[1])
} else {
toDir = jobFile.getAbsoluteFile().getParentFile()
}
def configFilePath = options.configFile ?: getConfigFilePath()
def configFile = new File(configFilePath)
println "Copying ${jobFile} to ${toDir} strip params: ${stripParams}, strip connections : ${stripConnections}"
if (! jobFile.canRead()) {
println "Cannot open ${jobFile}"
return
}
if (toDir != null && !toDir.isDirectory()) {
println "Cannot open ${toDir} or no directory"
return
}
def parser = new XmlParser()
def job = parser.parse(jobFile)
def entries = job.entries.entry
def transforms = []
entries.each {
if (it.type.text() == 'TRANS') {
transforms.add(it)
}
}
def transFiles = []
transforms.each {
def file = (new File(it.filename.text())).name
def path = (new File(jobFile.absolutePath)).parentFile
def realFile = new File(path.getAbsolutePath() + File.separator + file)
def transFile = ["transformation" : parser.parse(realFile), "fileName" : file, "entry": it]
transFiles += transFile
transFiles.addAll(getSubtransformations(transFile, parser))
}
// remove duplicate transformations
transFiles = transFiles.unique { a,b -> a.fileName <=> b.fileName }
// strip params and connections if wanted
transFiles.each {
def transformation = it.transformation
if (stripConnections || addConnections) {
def connections = transformation.connection
connections.each { connection ->
connection.parent().remove(connection)
}
}
if (addConnections) {
def connections = transformation.connection
def connectionsList = getConnectionConfig(configFile)
connectionsList.each { con ->
transformation.append(con)
}
}
if (stripParams) {
def params = transformation.info.parameters.parameter
params.each { param ->
param.parent().remove(param)
}
// println XmlUtil.serialize(transformation.info.parameters[0])
} else if ( addParams ) {
def paramsNode = transformation.info.parameters.getAt(0)
//params.addAll(getParamsConfig())
def paramList = getParamsConfig(configFile)
paramList.each {
paramsNode.append(it)
}
}
// add empty chars for <pad_char /> xml-tags
def allNodes = transformation.breadthFirst()
allNodes.each{ node ->
fixWhitespacePaddings(node)
}
}
// insert transformation file name with job relative path (${Internal.Job.Filename.Directory})
// and write destination transformation files
transFiles.each {
println it.entry.filename.text()
def fileName = it.fileName
def filePath = '\${Internal.Job.Filename.Directory}' + "/" + fileName
it.entry.filename.replaceNode {
filename(filePath)
}
def transOut = new File(toDir.absolutePath + File.separator + fileName)
if (!dryRun) writeXmlToFile(it.transformation, transOut)
}
if (stripConnections || addConnections) {
def connections = job.connection
connections.each { connection ->
connection.parent().remove(connection)
}
}
if (addConnections) {
def connections = job.connection
def connectionsList = getConnectionConfig(configFile)
connectionsList.each { con ->
job.append(con)
}
}
def jobOut = new File(toDir.absolutePath + File.separator + jobFile.name)
if (!dryRun) writeXmlToFile(job, jobOut)
}
def fixWhitespacePaddings(node) {
if (node.name() == "field" && node.children() != []) {
def pad_char = node.pad_char
def pad_len = node.pad_len
// this one's kinda dirty, 'cause it only considers the first childnodes, but...this seems to be the only case
if (pad_len != [] && pad_char != [] && pad_len[0].value() != [] && pad_char[0].value() == []) {
pad_char[0].setValue(" ")
}
}
}
def writeXmlToFile(node, file) {
def out = new FileOutputStream(file)
def writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
def pw = new PrintWriter(writer)
pw.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")
def nodePrinter = new XmlNodePrinter(pw)
nodePrinter.setPreserveWhitespace(true)
nodePrinter.print(node)
}
// function to get the path to a config file
// first version just tries to read environment variable COPY_KETTLEJOB_CONFIG_FILE_PATH
// later versions might also accept a CLI parameter or look at default locations (OS dependent)
def getConfigFilePath() {
def env = System.getenv()
def cfp = env['COPY_KETTLEJOB_CONFIG_FILE_PATH']
if (cfp == null) { cfp = "" }
println "Config file: " + cfp
return cfp
}
def getConnectionConfig(configFile = null) {
def parser = new XmlParser()
def connectionNode
if (configFile == null || ! configFile.canRead()) {
def connectionXml = '''
<connection>
<name>eduetl</name>
<server>localhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>dev_java8_eduetl</database>
<port>5432</port>
<username>postgres</username>
<password>Encrypted 2be98afc86aa7f2e4bb16bd64d980aac9</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute><code>FORCE_IDENTIFIERS_TO_LOWERCASE</code><attribute>N</attribute></attribute>
<attribute><code>FORCE_IDENTIFIERS_TO_UPPERCASE</code><attribute>N</attribute></attribute>
<attribute><code>IS_CLUSTERED</code><attribute>N</attribute></attribute>
<attribute><code>PORT_NUMBER</code><attribute>5432</attribute></attribute>
<attribute><code>PRESERVE_RESERVED_WORD_CASE</code><attribute>N</attribute></attribute>
<attribute><code>QUOTE_ALL_FIELDS</code><attribute>N</attribute></attribute>
<attribute><code>SUPPORTS_BOOLEAN_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>SUPPORTS_TIMESTAMP_DATA_TYPE</code><attribute>Y</attribute></attribute>
<attribute><code>USE_POOLING</code><attribute>N</attribute></attribute>
</attributes>
</connection>
'''
connectionNode = parser.parseText(connectionXml)
} else {
def config = parser.parse(configFile)
connectionNode = config.connection
}
return connectionNode
}
def getParamsConfig(configFile = null) {
def parser = new XmlParser()
def paramsNodeList
if (configFile == null || ! configFile.canRead()) {
println "Warning: No configFile. Did you forget to set the environment variable COPY_KETTLE_JOB_CONFIG_FILE_PATH?"
def paramsXml = '''
<parameters>
<parameter>
<name>bundesland</name>
<default_value>3</default_value>
<description/>
</parameter>
<parameter>
<name>fsem_pred</name>
<default_value>1&#x3d;1</default_value>
<description/>
</parameter>
<parameter>
<name>hs_nr</name>
<default_value>9991</default_value>
<description/>
</parameter>
<parameter>
<name>hssem_pred</name>
<default_value>1&#x3d;1</default_value>
<description/>
</parameter>
<parameter>
<name>landesspezifika</name>
<default_value>NW</default_value>
<description/>
</parameter>
<parameter>
<name>lieferungart</name>
<default_value/>
<description/>
</parameter>
<parameter>
<name>mtk_pred0</name>
<default_value>matrikel_nr&#x3d;11228729</default_value>
<description/>
</parameter>
<parameter>
<name>mtk_pred</name>
<default_value>1&#x3d;1</default_value>
<description/>
</parameter>
<parameter>
<name>mtk_pred1</name>
<default_value>matrikel_nr&#x3d;897190</default_value>
<description/>
</parameter>
<parameter>
<name>mtk_pred2</name>
<default_value>matrikel_nr&#x3d;11230911</default_value>
<description/>
</parameter>
<parameter>
<name>mtk_pred4</name>
<default_value>matrikel_nr&#x3d;11230825</default_value>
<description/>
</parameter>
<parameter>
<name>mtk_pred5</name>
<default_value>matrikel_nr&#x3d;11200110</default_value>
<description/>
</parameter>
<parameter>
<name>semester</name>
<default_value>20181</default_value>
<description/>
</parameter>
<parameter>
<name>semester2</name>
<default_value>20161</default_value>
<description/>
</parameter>
<parameter>
<name>semester_zuvor</name>
<default_value>20172</default_value>
<description/>
</parameter>
<parameter>
<name>semester_zuvor2</name>
<default_value>20152</default_value>
<description/>
</parameter>
<parameter>
<name>stg_pred</name>
<default_value>1&#x3d;1</default_value>
<description/>
</parameter>
<parameter>
<name>lab_vorsemester</name>
<default_value>2</default_value>
<description/>
</parameter>
<parameter>
<name>trimester</name>
<default_value>false</default_value>
<description/>
</parameter>
<parameter>
<name>stichtagsart_stud_vorsem</name>
<default_value>6</default_value>
<description/>
</parameter>
<parameter>
<name>stichtagsart_stud_berichtssem</name>
<default_value>1</default_value>
<description/>
</parameter>
<parameter>
<name>stichtagsart_pruef_vorsem</name>
<default_value>2</default_value>
<description/>
</parameter>
<parameter>
<name>stichtagsart_pruef_berichtssem</name>
<default_value>4</default_value>
<description/>
</parameter>
<parameter>
<name>vorsem_exmas_start</name>
<default_value>20172</default_value>
<description/>
</parameter>
<parameter>
<name>exma_max_rueck_beur_ein_pred</name>
<default_value>sem_rueck_beur_ein=20172</default_value>
<description/>
</parameter>
</parameters>
'''
def params = parser.parseText(paramsXml)
paramsNodeList = params.parameter
} else {
def content = parser.parse(configFile)
paramsNodeList = content.get("parameters").parameter
}
return paramsNodeList
}
def getSubtransformations(transFile, parser) {
def subtransformations = []
def steps = transFile.transformation.step
steps.findAll { it.type.text() == 'Mapping' }.each {
def file = (new File(it.filename.text())).name
def path = (new File(jobFile.absolutePath)).parentFile
def realFile = new File(path.getAbsolutePath() + File.separator + file)
def subtransFile = ["transformation" : parser.parse(realFile), "fileName" : file, "entry": it]
subtransformations += subtransFile
}
return subtransformations
}
}
copy = new CopyKettleJob(args)

7
superx/WEB-INF/conf/edustore/db/module/myjobs/MODULINFO

@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
#!/bin/bash
export MODUL_VERSION=0.1b
export MODULNAME=myjobs
export SACHGEBIETID=1400
export SACHGEBIET=Wuppertaler Ladejobs
export SYSTEMINFOID=1400

1
superx/WEB-INF/conf/edustore/db/module/myjobs/VERSION

@ -0,0 +1 @@ @@ -0,0 +1 @@
0.1b

10
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/excludes.txt

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
rohdaten/MYJOBS_ENV
rohdaten/*.properties
preparation.sql
finalize.sql
rohdaten/*.err
*.log
*.err
rohdaten/unl/*
conf/customize.sql
conf/*.log

2
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/felderinfo_relation.xml

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
<?xml version='1.0' encoding='UTF-8'?><rs></rs>

14
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/get_felderinfo_relation.x

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
#!/bin/bash
# XML-generiertes Shell-Script
# von get_felderinfo_relation.xsl
SX_CLIENT=jdbc
export SX_CLIENT
DOQUERY "select M.tid,F.tid as felderinfo_id,F.name as felderinfo_name,F.relation
from maskeninfo M, felderinfo F, masken_felder_bez B
where M.tid=B.maskeninfo_id
and F.tid=B.felderinfo_id
and M.tid in (select S.maskeninfo_id from maske_system_bez S where S.systeminfo_id=1400)
order by 2,3" false ^ felderinfo_relation.xml.sam xml

1
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_doc/myjobs_rename_demofiles.bat

@ -0,0 +1 @@ @@ -0,0 +1 @@
rem Diese Datei benenn die UNL Dateien mit Demofunktion um

2
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_doc/myjobs_rename_demofiles.sh

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
# Diese Datei benenn die UNL Dateien mit Demofunktion um

64
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_drop_pg.xml

@ -0,0 +1,64 @@ @@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true">
<dbi:dbaction dbi:action="sqlexec">eduetl:delete from db_version where his_system='myjobs';
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:
--Das Sachgebiet wird entfernt.
delete from sachgebiete where tid=1400;
-- den admins die Rechte nehmen
delete from group_sachgeb_bez where sachgebiete_id=1400 ;
delete from user_sachgeb_bez where sachgebiete_id=1400 ;
--Das system wird entfernt.
delete from systeminfo where tid=1400;
--Das Thema und die Masken aus dem Themenbaum entfernen
--zunaechst werden die Eintraege in den themenbaum_bak eingefuegt, default ist parent=themenbaum_root
delete from themenbaum_bak;
create temp table tmp_themenbaum
(
tid serial ,
name varchar(255) ,
maskeninfo_id integer ,
parent integer ,
gueltig_seit date ,
gueltig_bis date ,
erlaeuterung char(240) ,
parentname char(50)
);
--root für das Modul einfügen und in den Themenbaum einhängen
insert into tmp_themenbaum
( tid,name )
select max(tid)+1,'Wuppertaler Ladejobs' from themenbaum;
--Nun die Einträge einfügen, die tids werden durch das serial-Feld erzeugt
delete from themenbaum where name in (select distinct name from tmp_themenbaum);
--Nun die einzelnen Masken
drop table tmp_themenbaum;
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:
create temp table tmp_cifx_delete(key integer, apnr char(10));
insert into tmp_cifx_delete
select distinct key,apnr from trans_cifx where systeminfo_id=1400;
delete from cifx where '' || key || '_' || apnr in (select '' || D.key || '_' || D.apnr from tmp_cifx_delete D);
delete from trans_cifx where '' || key || '_' || apnr in (select '' || D.key || '_' || D.apnr from tmp_cifx_delete D);
drop table tmp_cifx_delete;
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/sx_tables_loeschen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/sx_fields_loeschen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/unload_params_loeschen.sql"/>
</dbi:dbaction>
</dbi:dbactions>

14
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_install_pg.xml

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true">
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/sx_tables_fuellen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/sx_fields_fuellen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/unload_params_fuellen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$MYJOBS_PFAD/myjobs_install_custom.sql"/>
</dbi:dbaction>
</dbi:dbactions>

111
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_integrate_pg.sql

@ -0,0 +1,111 @@ @@ -0,0 +1,111 @@
-- XML-generiertes SQL-Script fuer jdbc
-- und dbsystem POSTGRES
-- von module_edustore_integrate.xsl
--Integrieren:
-- Fülle db_version
delete from db_version where his_system='myjobs';
insert into db_version (his_system,version) values('myjobs','0.1b');
-- Fülle db_tabellen
-- Fülle sachgebiete, systeminfo und themenbaum
--Das Sachgebiet wird erzeugt, ggf. vorherige Sachgebiete sichern.
delete from sachgebiete where tid=1400;
insert into sachgebiete(tid,name) values (1400,'Wuppertaler Ladejobs');
-- den admins die Rechte geben
delete from group_sachgeb_bez where sachgebiete_id=1400;
insert into group_sachgeb_bez
select G.tid,1400 from groupinfo G where G.name='Administratoren' or G.name='superx' ;
-- wird auch noch mal als template aufgerufen in sx_tables_fuellen.sql vergl. http://ics/ilias3/goto.php?target=wiki_40_SingleSignOn-Rechteuebernahme&client_id=memtext --Das system wird erzeugt, ggf. vorherige systeme sichern.
delete from systeminfo where tid=1400;
insert into systeminfo(tid,name,datum) values (1400,'Wuppertaler Ladejobs',date('1.1.1900'));
-- Das Thema und die Masken in den Themenbaum einfügen
--Das Thema und die Masken in den Themenbaum einfügen
--zunaechst werden die Eintraege in den themenbaum_bak eingefuegt, default ist parent=themenbaum_root
-- auf Serial setzen, damit fortlaufende Nummern vergeben werden
create temp table tmp_themenbaum
(
tid serial,
name varchar(255) not null ,
maskeninfo_id integer,
parent integer,
parentname char(50),
gueltig_seit date,
gueltig_bis date,
erlaeuterung char(240)
);
create temp table tmp_themenbaum2
(
tid integer,
name varchar(255) not null ,
maskeninfo_id integer,
parent integer,
parentname char(50),
gueltig_seit date,
gueltig_bis date,
erlaeuterung char(240)
);
select setval('tmp_themenbaum_tid_seq',(select max(tid)+1 from themenbaum));
-- root für das Modul einfügen und in den Themenbaum einhängen:
insert into tmp_themenbaum
( tid,name, gueltig_seit,gueltig_bis )
select max(tid)+1,'Wuppertaler Ladejobs',date_val('01.01.1900'),date_val('01.01.3000') from themenbaum;
update tmp_themenbaum set parent=(select max(tid) from themenbaum where name='Abfragen');
--root für das Modul einfügen und in den Themenbaum einhängen
--update themenbaum_bak set parent=(select tid from themenbaum where parent is null)
--where parent is null;
--update themenbaum_bak set tid=(select max(tid) from themenbaum
--Nun die Einträge einfügen, die tids werden durch das serial-Feld erzeugt:
--insert into tmp_themenbaum(name, maskeninfo_id,parentname, gueltig_seit,gueltig_bis)
--select name, maskeninfo_id,parent, gueltig_seit,gueltig_bis from themenbaum_bak;
--update tmp_themenbaum set parentname=(select name from themenbaum_bak T where T.tid=tmp_themenbaum.parent);
--Nun die einzelnen Masken
-- Nun die einzelnen Masken:
--gibt es die Maske schon?
delete from tmp_themenbaum where maskeninfo_id in (select T.maskeninfo_id from themenbaum T);
-- Die einzelnen Masken sind eingefügt.
insert into tmp_themenbaum2 select * from tmp_themenbaum;
update tmp_themenbaum set parent=(select max(tid) from tmp_themenbaum2 T where tmp_themenbaum.parentname=T.name)
where parent is null;
--Wenn das Thema im echten Themenbaum schon drin war, wird da als parent genommen
update tmp_themenbaum set parent=(select max(tid) from themenbaum T where tmp_themenbaum.parentname=T.name)
where parent is null;
--Defaultmaessig werden alle parents auf themenbaum_root gesetzt
update tmp_themenbaum set parent=(select max(tid) from themenbaum where parent is null)
where parent is null;
insert into themenbaum(tid,name, maskeninfo_id,parent, gueltig_seit,gueltig_bis,erlaeuterung,sort)
select tid,name, maskeninfo_id,parent, gueltig_seit,gueltig_bis,erlaeuterung,0 from tmp_themenbaum;
drop table tmp_themenbaum2;
drop table tmp_themenbaum;
select setval('themenbaum_tid_seq',(select max(tid)+1 from themenbaum));

1
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_masken_einspielen.xml

@ -0,0 +1 @@ @@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true"/>

1
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_masken_entladen.xml

@ -0,0 +1 @@ @@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true"/>

1
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_masken_loeschen.xml

@ -0,0 +1 @@ @@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true"/>

13
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_upgrade1_pg.xml

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true">
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/upgrade/myjobs_upgrade_tables_pg.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/upgrade/myjobs_upgrade_fields_pg.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/upgrade/myjobs_upgrade_views_pg.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlquery">eduetl:select setval('themenbaum_tid_seq',(select max(tid)+1 from themenbaum));
</dbi:dbaction>
</dbi:dbactions>

22
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_install/edustore_myjobs_upgrade2_pg.xml

@ -0,0 +1,22 @@ @@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0" dbi:want-result="true" dbi:autocommit="true">
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/upgrade/myjobs_upgrade_indexes_pg.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:UPDATE db_version SET version = '0.1b'
WHERE his_system = 'myjobs';
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlquery">eduetl:select setval('themenbaum_tid_seq',(select max(tid)+1 from themenbaum));
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/sx_tables_fuellen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/sx_fields_fuellen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file structure="SQL" withNativeClient="n" encoding="UTF-8" database="eduetl" filename="$MYJOBS_PFAD/conf/unload_params_fuellen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$MYJOBS_PFAD/myjobs_install_custom.sql"/>
</dbi:dbaction>
</dbi:dbactions>

5
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_aggr_pg.xml

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=aggr,database=eduetl und dbsystem=POSTGRES--><dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$MYJOBS_PFAD/myjobs_aggr_custom.sql"/>
</dbi:dbaction>
</dbi:dbactions>

5
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_load_pg.xml

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=load,database=eduetl und dbsystem=POSTGRES--><dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$MYJOBS_PFAD/myjobs_load_custom.sql"/>
</dbi:dbaction>
</dbi:dbactions>

40
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_system_pg.xml

@ -0,0 +1,40 @@ @@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=system,database=eduetl und dbsystem=POSTGRES--><dbi:dbaction dbi:action="sqlexec">eduetl:create table tmp_datum (datum date);
</dbi:dbaction>
<dbi:dbaction dbi:action="importFile">
<dbi:data database="eduetl" table="tmp_datum">
<dbi:file encoding="UTF-8" separator="^" trailingSeparator="n" withNativeClient="n" firstLinedescription="n" structure="CSV" filename="$SUPERX_DIR/db/module/myjobs/rohdaten/superx.datum"/>
</dbi:data>
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:
update systeminfo set datum=(select distinct datum from tmp_datum)
where 2006 &lt; (select distinct year(datum) from tmp_datum)
and name='Wuppertaler Ladejobs';
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:
update systeminfo set datum=today()
where 2007 &gt; (select distinct year(datum) from tmp_datum)
and name='Wuppertaler Ladejobs';
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:drop table tmp_datum;
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:
delete from protokoll where zeitpunkt &lt;
(select today()-apnr from konstanten where beschreibung='Löschung Protokoll (Tage)');
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:
-- vacuum analyze can only run outside of transaction
-- so we have to close the current one
commit;
vacuum analyze;
-- and again open a transaction
begin;
</dbi:dbaction>
</dbi:dbactions>

2
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_test_pg.xml

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=test,database=eduetl und dbsystem=POSTGRES--></dbi:dbactions>

5
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_trans_pg.xml

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=trans,database=eduetl und dbsystem=POSTGRES--><dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$MYJOBS_PFAD/myjobs_trans_custom.sql"/>
</dbi:dbaction>
</dbi:dbactions>

2
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_unload_eduetl_pg.xml

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=unload,database=eduetl und dbsystem=POSTGRES--></dbi:dbactions>

2
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/his1/edustore_update/edustore_myjobs_unload_hisinone_pg.xml

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?><dbi:dbactions dbi:want-result="true" dbi:autocommit="true" xmlns:dsd="http://www.his.de/Abt1/Interfaces/dsd_V1.0" xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<!--Automatisch generiert von Edustore für mode=unload,database=eduetl und dbsystem=POSTGRES--></dbi:dbactions>

2
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/includes.txt

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
WEB-INF/conf/edustore/db/bin/SQL_ENV_myjobs.sam

12
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_alter_table_schema.x

@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
#!/bin/bash
# XML-generiertes SQL-Script #
SCHEMA=$1
if [ "$SCHEMA" == "" ]
then
echo "Bitte übergeben Sie an erster Stelle den Parameter SCHEMA (z.B. public)"
exit 1
fi
#Tables:

4
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_drop_views.sql

@ -0,0 +1,4 @@ @@ -0,0 +1,4 @@
#!/bin/bash
# XML-generiertes SQL-Script #
#Views:

24
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_grant.x

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
#!/bin/bash
# XML-generiertes SQL-Script #
RIGHT=$1
GRANTEE=$2
if [ "$RIGHT" == "" ]
then
echo "Bitte übergeben Sie an erster Stelle den Parameter RIGHT (select, all etc.)"
exit 1
fi
if [ "$GRANTEE" == "" ]
then
echo "Bitte übergeben Sie an zweiter Stelle den Parameter GRANTEE (Userkennung)"
exit 1
fi
#Tables:
#Views:
if [ "$DATABASE" == "POSTGRES" ]
then
DOQUERY "grant USAGE ON SCHEMA superx to $GRANTEE;"
fi

24
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/module_revoke.x

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
#!/bin/bash
# XML-generiertes SQL-Script #
RIGHT=$1
GRANTEE=$2
if [ "$RIGHT" == "" ]
then
echo "Bitte übergeben Sie an erster Stelle den Parameter RIGHT (select, all etc.)"
exit 1
fi
if [ "$GRANTEE" == "" ]
then
echo "Bitte übergeben Sie an zweiter Stelle den Parameter GRANTEE (Userkennung)"
exit 1
fi
#Tables:
#Views:
if [ "$DATABASE" == "POSTGRES" ]
then
DOQUERY "revoke USAGE ON SCHEMA superx from $GRANTEE;"
fi

203
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs.html

@ -0,0 +1,203 @@ @@ -0,0 +1,203 @@
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>Modul-Beschreibung</TITLE>
</HEAD>
<style type="text/css">
div.versteckt
{
font-size:smaller
}
td
{
vertical-align:top
}
td.themenspalte
{
border-right:thin solid black;
text-align:right
}
td.tabellenzeile
{
text-align:left
}
body
{
margin:0px;
padding:10px;
border: 4em solid #ccccff;
background-color:#f8f8f8
}
a {
color:black;
text-decoration: none;
}
a:link{
color:blue;
text-decoration: none;
}
a:visited{
color:#000066;
}
a:active{
color:red;
text-decoration:underline;
}
table.modul
{
background-color:#ffffcc;
border:thin solid black
}
table.tabellenbeschreibung
{
background-color:#ccffcc;
border:thin solid black;
empty-cells:show
}
td.tabellenzeile
{
border:thin solid black;
padding:1px
margin:1px;
font-size:10pt
}
h1.level_1
{
font-size:16px;
font-weight:bolder:
}
h2.level_2
{
font-size:14px;
font-weight:bolder:
}
h3.level_3
{
font-size:12px;
font-weight:bolder:
}
h4.level_4
{
font-size:12px;
font-style:italic:
}
</style>
<BODY>
<h1 class="level_1">Modulbeschreibung myjobs</h1>
<table class="modul">
<tr>
<td class="themenspalte">SuperX-Version</td><td></td>
</tr>
<tr>
<td class="themenspalte">Modulversion</td><td>0.1b</td>
</tr>
<tr>
<td class="themenspalte">Sachgebiet</td><td>Wuppertaler Ladejobs id 1400</td>
</tr>
<tr>
<td class="themenspalte">Systeminfo</td><td>Wuppertaler Ladejobs id 1400</td>
</tr>
<tr>
<td class="themenspalte">Thema</td><td>Wuppertaler Ladejobs</td>
</tr>
<tr>
<td class="themenspalte">Themenbaum-Ast</td><td>Abfragen</td>
</tr>
</table>
<p style="font-weight:bolder;">&Uuml;bersicht</p>
<table border="1">
<tr>
<th>Tabellen und Komponenten (alphabetisch)</th><th>Tabellen (nach Thema)</th><th>Tabellen (nach Typ)</th>
</tr>
<tr>
<td>
<ol>
<li>
<a href="#tabellen">Tabellen</a>
<ul></ul>
</li>
<li>
<a href="#blueprints">Joolap-Blueprints</a>
</li>
<li>
<a href="#views">Views</a>
<ul></ul>
</li>
<li>
<a href="#functions">Funktionen / Prozeduren</a>
</li>
<li>
<a href="#masken">Masken</a>
</li>
<li>Schnittstellenbeschreibung
<ul>
<li>
<a href="#install">Installation</a>
</li>
<li>
<a href="#upgrade">Upgrade</a>
</li>
<li>
<a href="#etl">ETL-Prozess</a>
</li>
</ul>
</li>
</ol>
</td><td>
<ol>
<li>Wuppertaler Ladejobs<ul></ul>
</li>
</ol>
</td><td>
<ol>
<li>Ladetabellen<ul></ul>
</li>
<li>Datentabellen<ul></ul>
</li>
<li>Schl&uuml;sseltabellen<ul></ul>
</li>
<li>Hilfstabellen<ul></ul>
</li>
</ol>
</td>
</tr>
</table>
<h2 class="level_2">Datenbankschema</h2>
<h3 class="level_3">
<a name="tabellen">Tabellen</a>
</h3>
<h3 class="level_3">
<a name="blueprints">Joolap-Blueprints</a>
</h3>
<h3 class="level_3">
<a name="views">Views</a>
</h3>
<h3 class="level_3">
<a name="functions">Funktionen / Prozeduren</a>
</h3>
<h2 class="level_2">
<a name="masken">Masken</a>
</h2>
<ul></ul>
<h1 class="level_1">Schnittstellenbeschreibung</h1>
<h2 class="level_2">
<a name="install">Installation</a>
</h2>
<p>Folgende Tabellen werden bei der Installation geladen:</p>
<ul></ul>
<h2 class="level_2">
<a name="upgrade">Upgrade</a>
</h2>
<p>Folgende Tabellen werden bei dem Upgrade geladen:</p>
<ul></ul>
<h2 class="level_2">
<a name="etl">ETL-Routine</a>
</h2>
<p>Folgende Tabellen werden in der ETL-Routine geladen:</p>
<ul></ul>
<hr>
<p align="right">(c) Projektgruppe SuperX</p>
</BODY>
</HTML>

33
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs.xml

@ -0,0 +1,33 @@ @@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--<!DOCTYPE module SYSTEM "../../../conf/superx-module.dtd"> -->
<module name="myjobs" version="0.1b" sachgebiet_id="1400"
sachgebiet="Wuppertaler Ladejobs" systeminfo_id="1400"
system="Wuppertaler Ladejobs" thema="Wuppertaler Ladejobs" thema_parent="Abfragen">
<database name="superx" system="superx">
</database>
<etl>
<etl-step id="jobmonitor" name="Jobmonitor" type="manual" active="true"
>
<description>
Jobmonitor
</description>
<action error="stop">
<kettle-job-embedded name="Jobmonitor"
file="$MYJOBS_PFAD/etl/jobmonitor/jobmonitor.kjb" active="true">
<description>Jobmonitor</description>
</kettle-job-embedded>
</action>
</etl-step>
</etl>
<install>
</install>
<upgrade>
</upgrade>
<uninstall-step name="Deinstalliere Schlüssel">
</uninstall-step>
</module>

5
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs_cubes.xml

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?><module xmlns:dbi="http://www.his.de/Abt1/Interfaces/dbi_V1.0">
<database>
<!--Automatisch generiert von Edustore für database=eduetl und dbsystem=POSTGRES
Sie können diese Tabellen als Vorlage für Ladetabellen in EDUDATA benutzen--></database>
</module>

113
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/myjobs_load.html

@ -0,0 +1,113 @@ @@ -0,0 +1,113 @@
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>Schnittstellen-Beschreibung</TITLE>
<LINK REL="stylesheet" type="text/css" href="../superx.css">
</HEAD>
<style type="text/css">
div.versteckt
{
font-size:smaller
}
td
{
vertical-align:top
}
td.themenspalte
{
border-right:thin solid black;
text-align:right
}
td.tabellenzeile
{
text-align:left
}
body
{
margin:0px;
padding:10px;
border: 4em solid #ccccff;
background-color:#f8f8f8
}
a {
color:black;
text-decoration: none;
}
a:link{
color:blue;
text-decoration: none;
}
a:visited{
color:#000066;
}
a:active{
color:red;
text-decoration:underline;
}
table.modul
{
background-color:#ffffcc;
border:thin solid black
}
table.tabellenbeschreibung
{
background-color:#ccffcc;
border:thin solid black;
empty-cells:show
}
td.tabellenzeile
{
border:thin solid black;
padding:1px
margin:1px;
font-size:10pt
}
h1.level_1
{
font-size:16px;
font-weight:bolder:
}
h2.level_2
{
font-size:14px;
font-weight:bolder:
}
h3.level_3
{
font-size:12px;
font-weight:bolder:
}
h4.level_4
{
font-size:12px;
font-style:italic:
}
</style>
<BODY>
<h2>Schnittstellen myjobs</h2>
<table border="1">
<tr>
<td class="themenspalte">SuperX-Version</td><td></td>
</tr>
<tr>
<td class="themenspalte">Modulversion</td><td>0.1b</td>
</tr>
<tr>
<td class="themenspalte">Sachgebiet</td><td>Wuppertaler Ladejobs id 1400</td>
</tr>
<tr>
<td class="themenspalte">Systeminfo</td><td>Wuppertaler Ladejobs id 1400</td>
</tr>
<tr>
<td class="themenspalte">Thema</td><td>Wuppertaler Ladejobs</td>
</tr>
<tr>
<td class="themenspalte">Themenbaum-Ast</td><td>Abfragen</td>
</tr>
</table>
<h3>&Uuml;bersicht der aus dem Vorsystem geladenen Tabellen:</h3>
<ol></ol>
</BODY>
</HTML>

84
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_fields_fuellen.sql

@ -0,0 +1,84 @@ @@ -0,0 +1,84 @@
--SQL Script automatisch generiert von SuperX sx_fields_fuellen.xsl
--freemarker template
<sqlvars>
<sqlvar name="sx_fields_exists">
select sp_table_exists('sx_fields') from xdummy;
</sqlvar>
</sqlvars>
<#if sx_fields_exists=1>
CREATE temp TABLE tmp_fields(
table_name VARCHAR(255) not null,
name VARCHAR(255) not null,
caption VARCHAR(255) ,
description VARCHAR(255) ,
field_type VARCHAR(255) not null,
field_size VARCHAR(255) ,
field_not_null smallint,
currentlyused SMALLINT ,
is_primarykey SMALLINT default 0 ,
foreignkey_tab VARCHAR(255) ,
foreignkey_col VARCHAR(255) ,
foreignkey_int VARCHAR(255) ,
foreignkey_cap VARCHAR(255) ,
foreignkey_cond VARCHAR(255) ,
foreignkey_func VARCHAR(255) ,
check_integrity SMALLINT,
is_sum SMALLINT default 1,
foreignkey_uniquename VARCHAR(255)
);
delete from sx_fields where trim(table_name) in (select trim(T.table_name) from tmp_fields T);
insert into sx_fields (table_name,name,caption,description,field_type,
field_size,
field_not_null,
currentlyUsed,
foreignkey_tab,
foreignkey_col,
foreignkey_cap,
foreignkey_int,
foreignkey_cond,
foreignkey_func,
check_integrity,
is_sum
<#if TableFieldExists?exists && TableFieldExists('sx_fields','foreignkey_uniquename')>
,foreignkey_uniquename
</#if>
)
select table_name,name,caption,description,field_type,
field_size,
field_not_null,
currentlyUsed,
foreignkey_tab,
foreignkey_col,
foreignkey_cap,
foreignkey_int,
foreignkey_cond,
foreignkey_func,
check_integrity,
is_sum
<#if TableFieldExists?exists && TableFieldExists('sx_fields','foreignkey_uniquename')>
,foreignkey_uniquename
</#if>
from tmp_fields;
drop table tmp_fields;
</#if>

41
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_fields_loeschen.sql

@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
--SQL Script automatisch generiert von SuperX sx_fields_loeschen.xsl
--freemarker template
<sqlvars>
<sqlvar name="sx_fields_exists">
select sp_table_exists('sx_fields') from xdummy;
</sqlvar>
</sqlvars>
<#if sx_fields_exists=1>
CREATE temp TABLE tmp_fields(
table_name CHAR(255) not null,
name CHAR(255) not null,
caption CHAR(255) ,
description CHAR(255) ,
field_type CHAR(255),
currentlyused CHAR(1) ,
is_primarykey CHAR(1) default '0' ,
foreignkey_tab CHAR(255) ,
foreignkey_col CHAR(255) ,
foreignkey_int CHAR(255) ,
foreignkey_cap CHAR(255) ,
foreignkey_cond CHAR(255) ,
foreignkey_func CHAR(255) ,
check_integrity CHAR(1),
is_sum CHAR(1) default '1'
);
delete from sx_fields where table_name ||'_' || name in (select T.table_name ||'_' || T.name from tmp_fields T);
drop table tmp_fields;
</#if>

51
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_tables_fuellen.sql

@ -0,0 +1,51 @@ @@ -0,0 +1,51 @@
--SQL Script automatisch generiert von SuperX sx_tables_fuellen.xsl
--freemarker template
<sqlvars>
<sqlvar name="sx_tables_exists">
select sp_table_exists('sx_tables') from xdummy;
</sqlvar>
</sqlvars>
<#if sx_tables_exists=1>
CREATE temp table tmp_tables(
name CHAR(255) ,
caption CHAR(255) ,
description CHAR(255) ,
table_type CHAR(255) ,
systeminfo_id INTEGER ,
systeminfo_orig INTEGER ,
thema CHAR(255) ,
sachgebiete_id CHAR(255)
);
update sx_tables set systeminfo_orig=(select T.systeminfo_orig from tmp_tables T
where T.name=sx_tables.name)
where name in (select name from tmp_tables);
update sx_tables set caption=(select T.caption from tmp_tables T
where T.name=sx_tables.name)
where name in (select name from tmp_tables);
update sx_tables set description=(select T.description from tmp_tables T
where T.name=sx_tables.name)
where name in (select name from tmp_tables);
update sx_tables set table_type=(select T.table_type from tmp_tables T
where T.name=sx_tables.name)
where name in (select name from tmp_tables);
delete from tmp_tables where name in (select T.name from sx_tables T);
insert into sx_tables (name,caption,description,table_type,systeminfo_id,systeminfo_orig,thema,sachgebiete_id)
select name,caption,description,table_type,systeminfo_id,systeminfo_orig,thema,sachgebiete_id
from tmp_tables;
drop table tmp_tables;
</#if>

18
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/sx_tables_loeschen.sql

@ -0,0 +1,18 @@ @@ -0,0 +1,18 @@
--SQL Script automatisch generiert von SuperX sx_tables_loeschen.xsl
--freemarker template
<sqlvars>
<sqlvar name="sx_tables_exists">
select sp_table_exists('sx_tables') from xdummy;
</sqlvar>
</sqlvars>
<#if sx_tables_exists=1>
delete from sx_tables where systeminfo_id=1400;
</#if>

95
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/unload_params_fuellen.sql

@ -0,0 +1,95 @@ @@ -0,0 +1,95 @@
--SQL Script automatisch generiert von SuperX unload_params_fuellen.xsl
--Unload Parameter und deren Defaults setzen
--freemarker template
<sqlvars>
<sqlvar name="unload_params_exists">
select sp_table_exists('unload_params') from xdummy;
</sqlvar>
</sqlvars>
<#if unload_params_exists=1>
create temp table tmp_unload_params(
tid SERIAL not null,
param_id VARCHAR(255) not null,
param_val VARCHAR(255) ,
default_val VARCHAR(255) ,
description VARCHAR(255) ,
systeminfo_id INTEGER
);
insert into tmp_unload_params(param_id,
param_val,
default_val,
description,
systeminfo_id)
values ('DATABASE',
'POSTGRES',
'POSTGRES',
'Quell-DBMS',
6100);
insert into tmp_unload_params(param_id,
param_val,
default_val,
description,
systeminfo_id)
values ('start_myjobs_sem',
'20191',
'20191',
'Startsemester Lehrveranstaltungen. Ab welchem Semester sollen Lehrveranstaltungen entladen werden? z.B. 20191 für SS 2019',
6100);
insert into tmp_unload_params(param_id,
param_val,
default_val,
description,
systeminfo_id)
values ('SOURCESYSTEM',
'hisinone',
'hisinone',
'Quellsystem (z.B. sospos, sva oder hisinone)',
6100);
--description wird immer geändert:
update unload_params set description=(select T.description
from tmp_unload_params T
where T.param_id=unload_params.param_id
and T.systeminfo_id=unload_params.systeminfo_id)
where systeminfo_id=6100
and param_id in (select param_id from tmp_unload_params);
--default_val wird immer geändert:
update unload_params set default_val=(select T.default_val
from tmp_unload_params T
where T.param_id=unload_params.param_id
and T.systeminfo_id=unload_params.systeminfo_id)
where systeminfo_id=6100
and param_id in (select param_id from tmp_unload_params);
delete from tmp_unload_params where systeminfo_id || param_id in
(select systeminfo_id || param_id from unload_params);
insert into unload_params(param_id,
param_val,
default_val,
description,
systeminfo_id)
select param_id,
param_val,
default_val,
description,
systeminfo_id
from tmp_unload_params
where param_id is not null;
drop table tmp_unload_params;
</#if>

19
superx/WEB-INF/conf/edustore/db/module/myjobs/conf/unload_params_loeschen.sql

@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
--SQL Script automatisch generiert von SuperX unload_params_loeschen.xsl
--freemarker template
<sqlvars>
<sqlvar name="unload_params_exists">
select sp_table_exists('unload_params') from xdummy;
</sqlvar>
</sqlvars>
<#if unload_params_exists=1>
--Unload Parameter löschen
delete from unload_params where systeminfo_id=6100;
</#if>

551
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/collect_logs.ktr

@ -0,0 +1,551 @@ @@ -0,0 +1,551 @@
<?xml version="1.0" encoding="UTF-8"?><transformation>
<info>
<name>collect_logs</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<directory>/</directory>
<parameters/>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies/>
<partitionschemas/>
<slaveservers/>
<clusterschemas/>
<created_user>-</created_user>
<created_date>2022/12/03 22:26:45.817</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/03 22:26:45.817</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA=</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads/>
<order>
<hop>
<from>get_pg_env</from>
<to>write pg Log File </to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>get_pg_env</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>SELECT trim(name) as name, trim(setting) as setting FROM pg_settings
where category='Preset Options'
order by 1;</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>N</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>144</xloc>
<yloc>128</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>write pg Log File </name>
<type>TextFileOutput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<separator>: </separator>
<enclosure/>
<enclosure_forced>N</enclosure_forced>
<enclosure_fix_disabled>N</enclosure_fix_disabled>
<header>Y</header>
<footer>N</footer>
<format>UNIX</format>
<compression>None</compression>
<encoding>UTF-8</encoding>
<endedLine/>
<fileNameInField>N</fileNameInField>
<fileNameField/>
<create_parent_folder>Y</create_parent_folder>
<file>
<name>${Internal.Transformation.Filename.Directory}/ladejob</name>
<is_command>N</is_command>
<servlet_output>N</servlet_output>
<do_not_open_new_file_init>N</do_not_open_new_file_init>
<extention>log</extention>
<append>Y</append>
<split>N</split>
<haspartno>N</haspartno>
<add_date>N</add_date>
<add_time>N</add_time>
<SpecifyFormat>N</SpecifyFormat>
<date_time_format/>
<add_to_result_filenames>Y</add_to_result_filenames>
<pad>Y</pad>
<fast_dump>N</fast_dump>
<splitevery>0</splitevery>
</file>
<fields>
<field>
<name>name</name>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<nullif/>
<trim_type>none</trim_type>
<length>255</length>
<precision>-1</precision>
</field>
<field>
<name>setting</name>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<nullif/>
<trim_type>none</trim_type>
<length>255</length>
<precision>-1</precision>
</field>
</fields>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>144</xloc>
<yloc>272</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling/>
<slave-step-copy-partition-distribution/>
<slave_transformation>N</slave_transformation>
</transformation>

554
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/get_mails_to_send.ktr

@ -0,0 +1,554 @@ @@ -0,0 +1,554 @@
<?xml version="1.0" encoding="UTF-8"?><transformation>
<info>
<name>get_mails_to_send</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<directory>/</directory>
<parameters/>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies/>
<partitionschemas/>
<slaveservers/>
<clusterschemas/>
<created_user>-</created_user>
<created_date>2022/09/01 15:34:39.802</created_date>
<modified_user>-</modified_user>
<modified_date>2022/09/01 15:34:39.802</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA=</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads/>
<order>
<hop>
<from>select_maildata</from>
<to>Mail senden</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Mail senden</name>
<type>Mail</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<server>server_name</server>
<port>server_port</port>
<destination>mailadressen</destination>
<destinationCc/>
<destinationBCc/>
<replyToAddresses/>
<replyto>sender_address</replyto>
<replytoname>sender_name</replytoname>
<subject>mail_betr</subject>
<include_date>N</include_date>
<include_subfolders>N</include_subfolders>
<zipFilenameDynamic>N</zipFilenameDynamic>
<isFilenameDynamic>Y</isFilenameDynamic>
<attachContentFromField>N</attachContentFromField>
<attachContentField>tid</attachContentField>
<attachContentFileNameField/>
<dynamicFieldname>mail_path</dynamicFieldname>
<dynamicWildcard/>
<dynamicZipFilename/>
<sourcefilefoldername>/home/superx/git/superx/superx/WEB-INF/conf/edustore/db/module/kennx/etl/mailversand/test.htm</sourcefilefoldername>
<sourcewildcard/>
<contact_person/>
<contact_phone/>
<comment>mail_body</comment>
<include_files>N</include_files>
<zip_files>N</zip_files>
<zip_name/>
<zip_limit_size>0</zip_limit_size>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>auth_user</auth_user>
<auth_password>Encrypted 2be98afc86aa7f2e4cb18bb64d6adbfcd</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<embeddedimages/>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>544</xloc>
<yloc>128</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>select_maildata</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>SELECT
'${MYMAIL}' as mailadressen ,
'${sender_name}' as sender_name,
'${sender_address}' as sender_address,
'${server_name}' as server_name,
val('${server_port}') as server_port,
'${auth_user}' as auth_user,
'${auth_pw}' as auth_pw,
'' as bcc,
'' as dest_test,
'Postgres Logs' as mail_betr,
'${Internal.Job.Filename.Directory}/ladejob.log' as mail_path,
'' as wildcard,
'Sehr geehrte Damen und Herren,
anbei erhalten Sie die Postgres-Logs.
Powered by SuperX
' as mail_body
;</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>Y</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>176</xloc>
<yloc>128</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling/>
<slave-step-copy-partition-distribution/>
<slave_transformation>N</slave_transformation>
</transformation>

587
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor.kjb

@ -0,0 +1,587 @@ @@ -0,0 +1,587 @@
<?xml version="1.0" encoding="UTF-8"?><job>
<name>jobmonitor</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2022/12/02 20:41:00.752</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/02 20:41:00.752</modified_date>
<parameters/>
<slaveservers/>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>112</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>864</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>set_variables</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/set_variables.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>N</set_logfile>
<logfile/>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>N</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>postgres settings per email senden</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/get_mails_to_send.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>Y</set_logfile>
<logfile>${Internal.Job.Filename.Directory}/ladejob</logfile>
<logext>log</logext>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>Y</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>512</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>Success-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>${server_name}</server>
<port>${server_port}</port>
<destination>${MYMAIL}</destination>
<destinationCc/>
<destinationBCc/>
<replyto>schulung@superx-projekt.de</replyto>
<replytoname>Schulung</replytoname>
<subject>Erfolg</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job</comment>
<include_files>Y</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>${auth_user}</auth_user>
<auth_password>${MAILPW}</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>704</xloc>
<yloc>160</yloc>
</entry>
<entry>
<name>Write To Log</name>
<description/>
<type>WRITE_TO_LOG</type>
<logmessage>Mailuser: ${auth_user}</logmessage>
<loglevel>Basic</loglevel>
<logsubject>Mailversand Konfiguration</logsubject>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>192</yloc>
</entry>
<entry>
<name>collect postgres settings</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/collect_logs.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>Y</set_logfile>
<logfile>${Internal.Job.Filename.Directory}/ladejob</logfile>
<logext>log</logext>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>Y</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>400</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Error-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>${server_name}</server>
<port>${server_port}</port>
<destination>${MYMAIL}</destination>
<destinationCc/>
<destinationBCc/>
<replyto>schulung@superx-projekt.de</replyto>
<replytoname>Schulung</replytoname>
<subject>Kein Erfolg</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job
${user.home}</comment>
<include_files>Y</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>${auth_user}</auth_user>
<auth_password>${MAILPW}</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>640</xloc>
<yloc>288</yloc>
</entry>
</entries>
<hops>
<hop>
<from>START</from>
<to>set_variables</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>set_variables</from>
<to>Write To Log</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>Write To Log</from>
<to>collect postgres settings</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>collect postgres settings</from>
<to>postgres settings per email senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>postgres settings per email senden</from>
<to>Success-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>Success-Logmail senden</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>postgres settings per email senden</from>
<to>Error-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads/>
</job>

493
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor.ktr

@ -0,0 +1,493 @@ @@ -0,0 +1,493 @@
<?xml version="1.0" encoding="UTF-8"?>
<transformation>
<info>
<name>jobmonitor</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<directory>&#x2f;</directory>
<parameters>
</parameters>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies>
</dependencies>
<partitionschemas>
</partitionschemas>
<slaveservers>
</slaveservers>
<clusterschemas>
</clusterschemas>
<created_user>-</created_user>
<created_date>2022&#x2f;12&#x2f;02 20&#x3a;44&#x3a;33.884</created_date>
<modified_user>-</modified_user>
<modified_date>2022&#x2f;12&#x2f;02 20&#x3a;44&#x3a;33.884</modified_date>
<key_for_session_key/>
<is_key_private>N</is_key_private>
</info>
<notepads>
</notepads>
<connection>
<name>hisinone</name>
<server>localhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>hisinone_qamuster</database>
<port>5433</port>
<username/>
<password>Encrypted </password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute><code>PORT_NUMBER</code><attribute>5433</attribute></attribute>
</attributes>
</connection>
<order>
</order>
<step>
<name>anzahl_accounts</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>hisinone</connection>
<sql>SELECT count&#x28;&#x2a;&#x29;&#x3a;&#x3a;integer as anzahl_accounts FROM hisinone.account</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>N</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>112</xloc>
<yloc>64</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling>
</step_error_handling>
<slave-step-copy-partition-distribution>
</slave-step-copy-partition-distribution>
<slave_transformation>N</slave_transformation>
</transformation>

568
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_logausgabe.kjb

@ -0,0 +1,568 @@ @@ -0,0 +1,568 @@
<?xml version="1.0" encoding="UTF-8"?><job>
<name>jobmonitor_logausgabe</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2022/12/02 20:41:00.752</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/02 20:41:00.752</modified_date>
<parameters/>
<slaveservers/>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>32</xloc>
<yloc>112</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>864</xloc>
<yloc>128</yloc>
</entry>
<entry>
<name>set_variables</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/set_variables.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>Y</set_logfile>
<logfile>${Internal.Job.Filename.Directory}/ladejob.log</logfile>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>Y</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>352</xloc>
<yloc>112</yloc>
</entry>
<entry>
<name>Success-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>${server_name}</server>
<port>${server_port}</port>
<destination>${MYMAIL}</destination>
<destinationCc/>
<destinationBCc/>
<replyto>schulung@superx-projekt.de</replyto>
<replytoname>Schulung</replytoname>
<subject>Erfolg</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job</comment>
<include_files>Y</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>${auth_user}</auth_user>
<auth_password>${MAILPW}</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>704</xloc>
<yloc>128</yloc>
</entry>
<entry>
<name>Write To Log</name>
<description/>
<type>WRITE_TO_LOG</type>
<logmessage>Mailuser: ${auth_user}</logmessage>
<loglevel>Basic</loglevel>
<logsubject>Mailversand Konfiguration</logsubject>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>352</xloc>
<yloc>272</yloc>
</entry>
<entry>
<name>collect postgres settings</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/collect_logs.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>Y</set_logfile>
<logfile>${Internal.Job.Filename.Directory}/ladejob</logfile>
<logext>log</logext>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>Y</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>528</xloc>
<yloc>128</yloc>
</entry>
<entry>
<name>Error-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>${server_name}</server>
<port>${server_port}</port>
<destination>${MYMAIL}</destination>
<destinationCc/>
<destinationBCc/>
<replyto>schulung@superx-projekt.de</replyto>
<replytoname>Schulung</replytoname>
<subject>Kein Erfolg</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job
${user.home}</comment>
<include_files>Y</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>${auth_user}</auth_user>
<auth_password>${MAILPW}</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>528</xloc>
<yloc>272</yloc>
</entry>
<entry>
<name>Logdatei leeren</name>
<description/>
<type>WRITE_TO_FILE</type>
<filename>${Internal.Job.Filename.Directory}/ladejob.log</filename>
<createParentFolder>N</createParentFolder>
<appendFile>N</appendFile>
<content>Logausgabe
</content>
<encoding>UTF-8</encoding>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>208</xloc>
<yloc>112</yloc>
</entry>
</entries>
<hops>
<hop>
<from>set_variables</from>
<to>Write To Log</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>Success-Logmail senden</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>collect postgres settings</from>
<to>Success-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>collect postgres settings</from>
<to>Error-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>N</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>START</from>
<to>Logdatei leeren</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>Logdatei leeren</from>
<to>set_variables</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>Write To Log</from>
<to>collect postgres settings</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads/>
</job>

416
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail1.kjb

@ -0,0 +1,416 @@ @@ -0,0 +1,416 @@
<?xml version="1.0" encoding="UTF-8"?><job>
<name>jobmonitor_mail1</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2022/12/02 20:41:00.752</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/02 20:41:00.752</modified_date>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value/>
<description/>
</parameter>
</parameters>
<slaveservers/>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>112</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>704</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>Success-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>smtp.variomedia.de</server>
<port>587</port>
<destination>danielq@memtext.de</destination>
<destinationCc/>
<destinationBCc/>
<replyto>schulung@superx-projekt.de</replyto>
<replytoname>Schulung</replytoname>
<subject>Erfolg</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job</comment>
<include_files>N</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>schulung@superx-projekt.de</auth_user>
<auth_password>Encrypted 2be98afc86aa7f2e4aa17a871d095fe8e</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>480</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>DUMMY</name>
<description/>
<type>SPECIAL</type>
<start>N</start>
<dummy>Y</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>256</xloc>
<yloc>80</yloc>
</entry>
</entries>
<hops>
<hop>
<from>Success-Logmail senden</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>START</from>
<to>DUMMY</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>DUMMY</from>
<to>Success-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
</hops>
<notepads/>
</job>

431
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail2.kjb

@ -0,0 +1,431 @@ @@ -0,0 +1,431 @@
<?xml version="1.0" encoding="UTF-8"?><job>
<name>jobmonitor_mail2</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2022/12/02 20:41:00.752</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/02 20:41:00.752</modified_date>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value/>
<description/>
</parameter>
</parameters>
<slaveservers/>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>112</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>704</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>set_variables2</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/set_variables2.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>N</set_logfile>
<logfile/>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>N</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>${server_name}</server>
<port>${server_port}</port>
<destination>danielq@memtext.de</destination>
<destinationCc/>
<destinationBCc/>
<replyto>${sender_address}</replyto>
<replytoname>${sender_name}</replytoname>
<subject>Erfolg 2</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job</comment>
<include_files>Y</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>${auth_user}</auth_user>
<auth_password>${MAILPW}</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>480</xloc>
<yloc>80</yloc>
</entry>
</entries>
<hops>
<hop>
<from>START</from>
<to>set_variables2</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>set_variables2</from>
<to>Success-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>Success-Logmail senden</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads/>
</job>

431
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail3.kjb

@ -0,0 +1,431 @@ @@ -0,0 +1,431 @@
<?xml version="1.0" encoding="UTF-8"?><job>
<name>jobmonitor_mail3</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2022/12/02 20:41:00.752</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/02 20:41:00.752</modified_date>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value/>
<description/>
</parameter>
</parameters>
<slaveservers/>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>112</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>704</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>set_variables3</name>
<description/>
<type>TRANS</type>
<specification_method>filename</specification_method>
<trans_object_id/>
<filename>${Internal.Job.Filename.Directory}/set_variables3.ktr</filename>
<transname/>
<arg_from_previous>N</arg_from_previous>
<params_from_previous>N</params_from_previous>
<exec_per_row>N</exec_per_row>
<clear_rows>N</clear_rows>
<clear_files>N</clear_files>
<set_logfile>N</set_logfile>
<logfile/>
<logext/>
<add_date>N</add_date>
<add_time>N</add_time>
<loglevel>Basic</loglevel>
<cluster>N</cluster>
<slave_server_name/>
<set_append_logfile>N</set_append_logfile>
<wait_until_finished>Y</wait_until_finished>
<follow_abort_remote>N</follow_abort_remote>
<create_parent_folder>N</create_parent_folder>
<logging_remote_work>N</logging_remote_work>
<parameters>
<pass_all_parameters>Y</pass_all_parameters>
</parameters>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>272</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>${server_name}</server>
<port>${server_port}</port>
<destination>danielq@memtext.de</destination>
<destinationCc/>
<destinationBCc/>
<replyto>${sender_address}</replyto>
<replytoname>${sender_name}</replytoname>
<subject>Erfolg 3</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job</comment>
<include_files>Y</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>${auth_user}</auth_user>
<auth_password>${auth_pw}</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>480</xloc>
<yloc>80</yloc>
</entry>
</entries>
<hops>
<hop>
<from>START</from>
<to>set_variables3</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>set_variables3</from>
<to>Success-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>Success-Logmail senden</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
</hops>
<notepads/>
</job>

416
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/jobmonitor_mail4.kjb

@ -0,0 +1,416 @@ @@ -0,0 +1,416 @@
<?xml version="1.0" encoding="UTF-8"?><job>
<name>jobmonitor_mail</name>
<description/>
<extended_description/>
<job_version/>
<job_status>0</job_status>
<directory>/</directory>
<created_user>-</created_user>
<created_date>2022/12/02 20:41:00.752</created_date>
<modified_user>-</modified_user>
<modified_date>2022/12/02 20:41:00.752</modified_date>
<parameters>
<parameter>
<name>PATH_TO_UPLOADFILE</name>
<default_value/>
<description/>
</parameter>
</parameters>
<slaveservers/>
<job-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_JOB</id>
<enabled>Y</enabled>
<name>ID_JOB</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>JOBNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>START_JOB_ENTRY</id>
<enabled>N</enabled>
<name>START_JOB_ENTRY</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</job-log-table>
<jobentry-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>JOBNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>JOBENTRYNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>RESULT</id>
<enabled>Y</enabled>
<name>RESULT</name>
</field>
<field>
<id>NR_RESULT_ROWS</id>
<enabled>Y</enabled>
<name>NR_RESULT_ROWS</name>
</field>
<field>
<id>NR_RESULT_FILES</id>
<enabled>Y</enabled>
<name>NR_RESULT_FILES</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>COPY_NR</id>
<enabled>N</enabled>
<name>COPY_NR</name>
</field>
</jobentry-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<pass_batchid>N</pass_batchid>
<shared_objects_file/>
<entries>
<entry>
<name>START</name>
<description/>
<type>SPECIAL</type>
<start>Y</start>
<dummy>N</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>112</xloc>
<yloc>80</yloc>
</entry>
<entry>
<name>Success</name>
<description/>
<type>SUCCESS</type>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>704</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>Success-Logmail senden</name>
<description/>
<type>MAIL</type>
<server>smtp.variomedia.de</server>
<port>587</port>
<destination>danielq@memtext.de</destination>
<destinationCc/>
<destinationBCc/>
<replyto>schulung@superx-projekt.de</replyto>
<replytoname>Schulung</replytoname>
<subject>Erfolg</subject>
<include_date>Y</include_date>
<contact_person/>
<contact_phone/>
<comment>Hier die Protokolle vom Job</comment>
<include_files>N</include_files>
<zip_files>N</zip_files>
<zip_name/>
<use_auth>Y</use_auth>
<use_secure_auth>N</use_secure_auth>
<auth_user>schulung@superx-projekt.de</auth_user>
<auth_password>Encrypted 2be98afc86aa7f2e4aa17a871d095fe8e</auth_password>
<only_comment>N</only_comment>
<use_HTML>N</use_HTML>
<use_Priority>N</use_Priority>
<encoding>UTF-8</encoding>
<priority>normal</priority>
<importance>normal</importance>
<sensitivity>normal</sensitivity>
<secureconnectiontype>SSL</secureconnectiontype>
<replyToAddresses/>
<filetypes>
<filetype>LOG</filetype>
</filetypes>
<embeddedimages/>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>480</xloc>
<yloc>96</yloc>
</entry>
<entry>
<name>DUMMY</name>
<description/>
<type>SPECIAL</type>
<start>N</start>
<dummy>Y</dummy>
<repeat>N</repeat>
<schedulerType>0</schedulerType>
<intervalSeconds>0</intervalSeconds>
<intervalMinutes>60</intervalMinutes>
<hour>12</hour>
<minutes>0</minutes>
<weekDay>1</weekDay>
<DayOfMonth>1</DayOfMonth>
<parallel>N</parallel>
<draw>Y</draw>
<nr>0</nr>
<xloc>256</xloc>
<yloc>80</yloc>
</entry>
</entries>
<hops>
<hop>
<from>Success-Logmail senden</from>
<to>Success</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>N</unconditional>
</hop>
<hop>
<from>START</from>
<to>DUMMY</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
<hop>
<from>DUMMY</from>
<to>Success-Logmail senden</to>
<from_nr>0</from_nr>
<to_nr>0</to_nr>
<enabled>Y</enabled>
<evaluation>Y</evaluation>
<unconditional>Y</unconditional>
</hop>
</hops>
<notepads/>
</job>

545
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/set_variables.ktr

@ -0,0 +1,545 @@ @@ -0,0 +1,545 @@
<?xml version="1.0" encoding="UTF-8"?><transformation>
<info>
<name>set_variables</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>/</directory>
<parameters/>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>N</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies/>
<partitionschemas/>
<slaveservers/>
<clusterschemas/>
<created_user>-</created_user>
<created_date>2015/11/11 09:49:00.397</created_date>
<modified_user>-</modified_user>
<modified_date>2015/11/11 09:49:00.397</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA=</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads/>
<order>
<hop>
<from>mailparams</from>
<to>Set mailparams</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Set mailparams</name>
<type>SetVariable</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<field_name>sender_name</field_name>
<variable_name>sender_name</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>auth_pw</field_name>
<variable_name>auth_pw</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>auth_user</field_name>
<variable_name>auth_user</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>encr</field_name>
<variable_name>encr</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>sender_address</field_name>
<variable_name>sender_address</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>server_name</field_name>
<variable_name>server_name</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>server_port</field_name>
<variable_name>server_port</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
</fields>
<use_formatting>Y</use_formatting>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>384</xloc>
<yloc>176</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>mailparams</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>select 'Kettle-Schulung' as sender_name,
'none' as encr,
'schulung@superx-projekt.de' as sender_address,
'${MAILUSER}' as auth_user,
'${MAILPW}' as auth_pw,
'smtp.variomedia.de' as server_name,
'587' as server_port
from xdummy;</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>Y</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>176</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling/>
<slave-step-copy-partition-distribution/>
<slave_transformation>N</slave_transformation>
</transformation>

545
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/set_variables2.ktr

@ -0,0 +1,545 @@ @@ -0,0 +1,545 @@
<?xml version="1.0" encoding="UTF-8"?><transformation>
<info>
<name>set_variables2</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>/</directory>
<parameters/>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>N</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies/>
<partitionschemas/>
<slaveservers/>
<clusterschemas/>
<created_user>-</created_user>
<created_date>2015/11/11 09:49:00.397</created_date>
<modified_user>-</modified_user>
<modified_date>2015/11/11 09:49:00.397</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA=</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads/>
<order>
<hop>
<from>mailparams</from>
<to>Set mailparams</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Set mailparams</name>
<type>SetVariable</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<field_name>sender_name</field_name>
<variable_name>sender_name</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>auth_pw</field_name>
<variable_name>auth_pw</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>auth_user</field_name>
<variable_name>auth_user</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>encr</field_name>
<variable_name>encr</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>sender_address</field_name>
<variable_name>sender_address</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>server_name</field_name>
<variable_name>server_name</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>server_port</field_name>
<variable_name>server_port</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
</fields>
<use_formatting>Y</use_formatting>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>384</xloc>
<yloc>176</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>mailparams</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>select 'Kettle-Schulung' as sender_name,
'none' as encr,
'schulung@superx-projekt.de' as sender_address,
'schulung@superx-projekt.de' as auth_user,
'anfang14' as auth_pw,
'smtp.variomedia.de' as server_name,
'587' as server_port
;</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>N</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>176</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling/>
<slave-step-copy-partition-distribution/>
<slave_transformation>N</slave_transformation>
</transformation>

545
superx/WEB-INF/conf/edustore/db/module/myjobs/etl/jobmonitor/set_variables3.ktr

@ -0,0 +1,545 @@ @@ -0,0 +1,545 @@
<?xml version="1.0" encoding="UTF-8"?><transformation>
<info>
<name>set_variables3</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>/</directory>
<parameters/>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>N</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies/>
<partitionschemas/>
<slaveservers/>
<clusterschemas/>
<created_user>-</created_user>
<created_date>2015/11/11 09:49:00.397</created_date>
<modified_user>-</modified_user>
<modified_date>2015/11/11 09:49:00.397</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA=</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads/>
<order>
<hop>
<from>mailparams</from>
<to>Set mailparams</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<name>Set mailparams</name>
<type>SetVariable</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<field_name>sender_name</field_name>
<variable_name>sender_name</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>auth_pw</field_name>
<variable_name>auth_pw</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>auth_user</field_name>
<variable_name>auth_user</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>encr</field_name>
<variable_name>encr</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>sender_address</field_name>
<variable_name>sender_address</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>server_name</field_name>
<variable_name>server_name</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
<field>
<field_name>server_port</field_name>
<variable_name>server_port</variable_name>
<variable_type>JVM</variable_type>
<default_value>-1</default_value>
</field>
</fields>
<use_formatting>Y</use_formatting>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>384</xloc>
<yloc>176</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>mailparams</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>eduetl</connection>
<sql>select 'Kettle-Schulung' as sender_name,
'none' as encr,
'schulung@superx-projekt.de' as sender_address,
'${MAILUSER}' as auth_user,
'${MAILPW}' as auth_pw,
'smtp.variomedia.de' as server_name,
'587' as server_port
;</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>Y</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<cluster_schema/>
<remotesteps>
<input/>
<output/>
</remotesteps>
<GUI>
<xloc>192</xloc>
<yloc>176</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling/>
<slave-step-copy-partition-distribution/>
<slave_transformation>N</slave_transformation>
</transformation>

10
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_aggr_custom.sql

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
-- XML-generiertes SQL-Script von module_custom.xsl
--freemarker template
<#if myjobs_aggr_CUSTOM?exists && myjobs_aggr_CUSTOM !="">
select 'Executing customer-specific repository Script myjobs_aggr_CUSTOM' from xdummy;
<#assign inlineTemplate=myjobs_aggr_CUSTOM?interpret />
<@inlineTemplate/>
</#if>

1
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_aggr_pg.sql

@ -0,0 +1 @@ @@ -0,0 +1 @@
-- XML-generiertes SQL-Script fuer psql--von module_etl.xsl

15
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_backup.x

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
# XML-generiertes Script
#Wenn in Unterscript ein Fehler auch dieses Script beenden
function exitAfterError
{
exit 1
}
trap exitAfterError ERR
export SX_CLIENT=jdbc
if [ ! -d tmp$MANDANTENID ]
then
echo "tmp$MANDANTENID existiert nicht. Verzeichnis wird neu erzeugt."
mkdir tmp$MANDANTENID
fi

73
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_drop_pg.sql

@ -0,0 +1,73 @@ @@ -0,0 +1,73 @@
-- XML-generiertes SQL-Script fuer psql-- von module_drop.xsl
\! echo "Dropping views"
\! echo `date`
\! echo "Dropping functions"
\! echo `date`
\! echo "Dropping tables"
\! echo `date`
\! echo "Uninstall-Actions"
\! echo `date`
--Aktionen:
delete from db_version where his_system='myjobs';
--Das Sachgebiet wird entfernt.
delete from sachgebiete where tid=1400;
-- den admins die Rechte nehmen
delete from group_sachgeb_bez where sachgebiete_id=1400 ;
delete from user_sachgeb_bez where sachgebiete_id=1400 ;
--Das system wird entfernt.
delete from systeminfo where tid=1400;
--Das Thema und die Masken aus dem Themenbaum entfernen
--zunaechst werden die Eintraege in den themenbaum_bak eingefuegt, default ist parent=themenbaum_root
delete from themenbaum_bak;
create temp table tmp_themenbaum
(
tid serial ,
name varchar(255) ,
maskeninfo_id integer ,
parent integer ,
gueltig_seit date ,
gueltig_bis date ,
erlaeuterung char(240) ,
parentname char(50)
);
--root für das Modul einfügen und in den Themenbaum einhängen
insert into tmp_themenbaum
( tid,name )
select max(tid)+1,'Wuppertaler Ladejobs' from themenbaum;
--Nun die Einträge einfügen, die tids werden durch das serial-Feld erzeugt
delete from themenbaum where name in (select distinct name from tmp_themenbaum);
--Nun die einzelnen Masken
drop table tmp_themenbaum;
\! DOSQL $MYJOBS_PFAD/conf/sx_tables_loeschen.sql
\! DOSQL $MYJOBS_PFAD/conf/sx_fields_loeschen.sql
\! DOSQL $MYJOBS_PFAD/conf/unload_params_loeschen.sql
create temp table tmp_cifx_delete(key integer, apnr char(10));
insert into tmp_cifx_delete
select distinct key,apnr from trans_cifx where systeminfo_id=1400;
delete from cifx where '' || key || '_' || apnr in (select '' || D.key || '_' || D.apnr from tmp_cifx_delete D);
delete from trans_cifx where '' || key || '_' || apnr in (select '' || D.key || '_' || D.apnr from tmp_cifx_delete D);
drop table tmp_cifx_delete;

6
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_indexes_drop.sql

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
-- XML-generiertes SQL-Script --
\! echo "Dropping indexes for tables"
\! echo `date`

6
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_indexes_pg.sql

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
-- XML-generiertes SQL-Script fuer psql--
\! echo "Creating indexes for tables"
\! echo `date`

10
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_install_custom.sql

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
-- XML-generiertes SQL-Script von module_custom.xsl
--freemarker template
<#if myjobs_install_CUSTOM?exists && myjobs_install_CUSTOM !="">
select 'Executing customer-specific repository Script myjobs_install_CUSTOM' from xdummy;
<#assign inlineTemplate=myjobs_install_CUSTOM?interpret />
<@inlineTemplate/>
</#if>

139
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_install_pg.sql

@ -0,0 +1,139 @@ @@ -0,0 +1,139 @@
-- XML-generiertes SQL-Script für psql--
\! echo "Creating tables"
\! echo `date`
--Integrieren:
\! echo "Fülle db_version"
\! echo `date`
delete from db_version where his_system='myjobs';
insert into db_version (his_system,version) values('myjobs','0.1b');
\! echo "Fülle db_tabellen"
\! echo `date`
\! echo "Fülle sachgebiete, systeminfo und themenbaum"
\! echo `date`
--Das Sachgebiet wird erzeugt, ggf. vorherige Sachgebiete sichern.
delete from sachgebiete where tid=1400;
insert into sachgebiete(tid,name) values (1400,'Wuppertaler Ladejobs');
-- den admins die Rechte geben
delete from group_sachgeb_bez where sachgebiete_id=1400;
insert into group_sachgeb_bez
select G.tid,1400 from groupinfo G where G.name='Administratoren' or G.name='superx' ;
-- wird auch noch mal als template aufgerufen in sx_tables_fuellen.sql vergl. http://ics/ilias3/goto.php?target=wiki_40_SingleSignOn-Rechteuebernahme&client_id=memtext --Das system wird erzeugt, ggf. vorherige systeme sichern.
delete from systeminfo where tid=1400;
insert into systeminfo(tid,name,datum) values (1400,'Wuppertaler Ladejobs',date('1.1.1900'));
\! echo "Das Thema und die Masken in den Themenbaum einfügen"
\! echo `date`
--Das Thema und die Masken in den Themenbaum einfügen
--zunaechst werden die Eintraege in den themenbaum_bak eingefuegt, default ist parent=themenbaum_root
-- auf Serial setzen, damit fortlaufende Nummern vergeben werden
create temp table tmp_themenbaum
(
tid serial,
name varchar(255) not null ,
maskeninfo_id integer,
parent integer,
parentname char(50),
gueltig_seit date,
gueltig_bis date,
erlaeuterung char(240)
);
create temp table tmp_themenbaum2
(
tid integer,
name varchar(255) not null ,
maskeninfo_id integer,
parent integer,
parentname char(50),
gueltig_seit date,
gueltig_bis date,
erlaeuterung char(240)
);
select setval('tmp_themenbaum_tid_seq',(select max(tid)+1 from themenbaum));
\! echo "root für das Modul einfügen und in den Themenbaum einhängen:"
\! echo `date`
insert into tmp_themenbaum
( tid,name, gueltig_seit,gueltig_bis )
select max(tid)+1,'Wuppertaler Ladejobs',date_val('01.01.1900'),date_val('01.01.3000') from themenbaum;
update tmp_themenbaum set parent=(select max(tid) from themenbaum where name='Abfragen');
--root für das Modul einfügen und in den Themenbaum einhängen
--update themenbaum_bak set parent=(select tid from themenbaum where parent is null)
--where parent is null;
--update themenbaum_bak set tid=(select max(tid) from themenbaum
--Nun die Einträge einfügen, die tids werden durch das serial-Feld erzeugt:
--insert into tmp_themenbaum(name, maskeninfo_id,parentname, gueltig_seit,gueltig_bis)
--select name, maskeninfo_id,parent, gueltig_seit,gueltig_bis from themenbaum_bak;
--update tmp_themenbaum set parentname=(select name from themenbaum_bak T where T.tid=tmp_themenbaum.parent);
--Nun die einzelnen Masken
\! echo "Nun die einzelnen Masken:"
\! echo `date`
--gibt es die Maske schon?
delete from tmp_themenbaum where maskeninfo_id in (select T.maskeninfo_id from themenbaum T);
\! echo "Die einzelnen Masken sind eingefügt."
\! echo `date`
insert into tmp_themenbaum2 select * from tmp_themenbaum;
update tmp_themenbaum set parent=(select max(tid) from tmp_themenbaum2 T where tmp_themenbaum.parentname=T.name)
where parent is null;
--Wenn das Thema im echten Themenbaum schon drin war, wird da als parent genommen
update tmp_themenbaum set parent=(select max(tid) from themenbaum T where tmp_themenbaum.parentname=T.name)
where parent is null;
--Defaultmaessig werden alle parents auf themenbaum_root gesetzt
update tmp_themenbaum set parent=(select max(tid) from themenbaum where parent is null)
where parent is null;
insert into themenbaum(tid,name, maskeninfo_id,parent, gueltig_seit,gueltig_bis,erlaeuterung,sort)
select tid,name, maskeninfo_id,parent, gueltig_seit,gueltig_bis,erlaeuterung,0 from tmp_themenbaum;
drop table tmp_themenbaum2;
drop table tmp_themenbaum;
select setval('themenbaum_tid_seq',(select max(tid)+1 from themenbaum));
\! echo "Fülle sx_tables, sx_fields und unload_params"
\! echo `date`
\! DOSQL $MYJOBS_PFAD/conf/sx_tables_fuellen.sql
\! DOSQL $MYJOBS_PFAD/conf/sx_fields_fuellen.sql
\! DOSQL $MYJOBS_PFAD/conf/unload_params_fuellen.sql
\! DOSQL $MYJOBS_PFAD/myjobs_install_custom.sql

10
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_load_custom.sql

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
-- XML-generiertes SQL-Script von module_custom.xsl
--freemarker template
<#if myjobs_load_CUSTOM?exists && myjobs_load_CUSTOM !="">
select 'Executing customer-specific repository Script myjobs_load_CUSTOM' from xdummy;
<#assign inlineTemplate=myjobs_load_CUSTOM?interpret />
<@inlineTemplate/>
</#if>

1
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_load_pg.sql

@ -0,0 +1 @@ @@ -0,0 +1 @@
-- XML-generiertes SQL-Script fuer psql--von module_etl.xsl

5
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_masken_einspielen_pg.x

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
#!/bin/bash
# XML-generiertes bash-Script fuer sx_insert_mask
# sx_client psql
# dbsystem POSTGRES

5
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_masken_entladen_pg.x

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
#!/bin/bash
# XML-generiertes bash-Script fuer sx_select_mask
# sx_client psql
# dbsystem POSTGRES

5
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_masken_loeschen_pg.x

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
#!/bin/bash
# XML-generiertes bash-Script fuer sx_delete_mask
# sx_client any
# dbsystem

1
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_purge_pg.sql

@ -0,0 +1 @@ @@ -0,0 +1 @@
-- XML-generiertes SQL-Script fuer psql-- Die Tabellen vom Typ "Bewegunsdaten" (also Daten- und Hilfstabellen) werden gelöscht.

11
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_restore.x

@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
# XML-generiertes Script
#Wenn in Unterscript ein Fehler auch dieses Script beenden
function exitAfterError
{
exit 1
}
trap exitAfterError ERR
echo 'Uploading tables'
echo 'Finished restoring'

2
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_shrink.x

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
#!/bin/bash
#XML-generiertes SQL-Script fuer SuperX zum Schrumpfen/Wiederherstellen der Rohdaten für Testzwecke

18
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_system_pg.sql

@ -0,0 +1,18 @@ @@ -0,0 +1,18 @@
-- XML-generiertes SQL-Script fuer psql--von module_etl.xsl
--ETL-Schritte erfolgreich beendet.
create table tmp_datum (datum date);
\! if [ -f $MYJOBS_LOAD_PFAD/superx.datum ]; then sx_auto_upload_table.x tmp_datum $MYJOBS_LOAD_PFAD/superx.datum; fi
update systeminfo set datum=(select distinct datum from tmp_datum)
where 2006 < (select distinct year(datum) from tmp_datum)
and name='Wuppertaler Ladejobs';
update systeminfo set datum=today()
where 2007 > (select distinct year(datum) from tmp_datum)
and name='Wuppertaler Ladejobs';
drop table tmp_datum;
delete from protokoll where zeitpunkt <
(select today()-apnr from konstanten where beschreibung='Löschung Protokoll (Tage)');

2
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_test_integrity.sql

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
--SQL Script automatisch generiert von SuperX module_test_integrity.xsl

2
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_test_pg.sql

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
-- XML-generiertes SQL-Script fuer psql--von module_etl.xsl
-- test blueprints

10
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_trans_custom.sql

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
-- XML-generiertes SQL-Script von module_custom.xsl
--freemarker template
<#if myjobs_trans_CUSTOM?exists && myjobs_trans_CUSTOM !="">
select 'Executing customer-specific repository Script myjobs_trans_CUSTOM' from xdummy;
<#assign inlineTemplate=myjobs_trans_CUSTOM?interpret />
<@inlineTemplate/>
</#if>

1
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_trans_pg.sql

@ -0,0 +1 @@ @@ -0,0 +1 @@
-- XML-generiertes SQL-Script fuer psql--von module_etl.xsl

2
superx/WEB-INF/conf/edustore/db/module/myjobs/myjobs_unshrink.x

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
#!/bin/bash
#XML-generiertes SQL-Script fuer SuperX zum Schrumpfen/Wiederherstellen der Rohdaten für Testzwecke

97
superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_copy.x

@ -0,0 +1,97 @@ @@ -0,0 +1,97 @@
#!/bin/bash
#Copy Script for SuperX.
. ./MYJOBS_ENV
if [ "$SRC_PFAD" = "" ]
then
SRC_PFAD=.
fi
ERR=myjobs_copy.err
#
#Unload-Job
#
echo "--------------------------------------------------------------" >$ERR
echo "Kopiere Dateien via $COPY_METHOD von $SRC_PFAD:" >>$ERR
if [ $COPY_METHOD = "scp" ]
then
scp $SCP_OPTS $SRC_PFAD/myjobs_unload.err $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/myjobs_unload.err >>$ERR 2>&1
if [ -f $SRC_PFAD/unl/superx_unload_version.unl ]
then
scp $SCP_OPTS $SRC_PFAD/unl/superx_unload_version.unl $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR >>$ERR 2>&1
fi
fi #Ende scp
if [ $COPY_METHOD = "rsync" ]
then
scp $SCP_OPTS $SRC_PFAD/myjobs_unload.err $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/myjobs_unload.err >>$ERR 2>&1
rsync -rauvz -e ssh --delete $SRC_PFAD/unl $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR >>$ERR 2>&1
fi
#Wenn Dateien existieren, auch Datum kopieren (z.B. im SOS-Modul)
if [ $COPY_METHOD = "rsync" -o $COPY_METHOD = "scp" ]
then
if [ -f $SRC_PFAD/superx.datum ]
then
scp $SCP_OPTS $SRC_PFAD/superx.datum $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR >>$ERR 2>&1
fi
if [ -f $SRC_PFAD/superx.datum.alt ]
then
scp $SCP_OPTS $SRC_PFAD/superx.datum.alt $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR >>$ERR 2>&1
fi
fi
#sftp:
if [ $COPY_METHOD = "sftp" ]
then
cd $SRC_PFAD
echo "using sftp to $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR" >>$ERR 2>&1
#zuerst Metadateien:
echo "put myjobs_unload.err" >myjobs_sftp_logs.txt 2>>$ERR
if [ -f $SRC_PFAD/superx.datum ]
then
echo "put superx.datum" >>myjobs_sftp_logs.txt 2>>$ERR
fi
if [ -f $SRC_PFAD/superx.datum.alt ]
then
echo "put superx.datum.alt" >>myjobs_sftp_logs.txt 2>>$ERR
fi
#sftp-Kopieren start:
#cat myjobs_sftp_logs.txt >>$ERR 2>&1
sftp $SFTP_OPTS -b myjobs_sftp_logs.txt $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR >>$ERR 2>&1
if [ -f $SRC_PFAD/unl/superx_unload_version.unl ]
then
echo "put unl/superx_unload_version.unl" >myjobs_sftp_version.txt 2>>$ERR
#sftp-Kopieren start:
#cat myjobs_sftp_version.txt >>$ERR 2>&1
sftp $SFTP_OPTS -b myjobs_sftp_version.txt $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/unl >>$ERR 2>&1
fi
#UNL-Dateien selber:
#cat myjobs_sftp.txt >>$ERR 2>&1
sftp $SFTP_OPTS -b myjobs_sftp.txt $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/unl >>$ERR 2>&1
fi
#Fehlerbehandlung
fgrep -s "not found" $ERR >/dev/null
FLAG1=$?
fgrep -i -s "nicht gefunden" $ERR >/dev/null
FLAG2=$?
fgrep -i -s "error" $ERR >/dev/null
FLAG3=$? >/dev/null
if [ $FLAG1 -eq 0 -o $FLAG2 -eq 0 -o $FLAG3 -eq 0 ]
then
echo "Fehler beim Kopieren. "
echo "---------------------------------------"
echo "Prüfen Sie Fehlerprotokoll: $ERR"
echo "---------------------------------------"
fi

0
superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_sftp.txt

128
superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_unload.html

@ -0,0 +1,128 @@ @@ -0,0 +1,128 @@
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>Beschreibung Entladescript</TITLE>
<LINK REL="stylesheet" type="text/css" href="../superx.css">
</HEAD>
<style type="text/css">
div.versteckt
{
font-size:smaller
}
td
{
vertical-align:top
}
td.themenspalte
{
border-right:thin solid black;
text-align:right
}
td.tabellenzeile
{
text-align:left
}
body
{
margin:0px;
padding:10px;
border: 4em solid #ccccff;
background-color:#f8f8f8
}
a {
color:black;
text-decoration: none;
}
a:link{
color:blue;
text-decoration: none;
}
a:visited{
color:#000066;
}
a:active{
color:red;
text-decoration:underline;
}
table.modul
{
background-color:#ffffcc;
border:thin solid black
}
table.tabellenbeschreibung
{
background-color:#ccffcc;
border:thin solid black;
empty-cells:show
}
td.tabellenzeile
{
border:thin solid black;
padding:1px
margin:1px;
font-size:10pt
}
h1.level_1
{
font-size:16px;
font-weight:bolder:
}
h2.level_2
{
font-size:14px;
font-weight:bolder:
}
h3.level_3
{
font-size:12px;
font-weight:bolder:
}
h4.level_4
{
font-size:12px;
font-style:italic:
}
</style>
<BODY>
<h3>Beschreibung Entladescript Beispiel-Modul</h3>
<center>
<table border="1">
<tr>
<td class="themenspalte">SuperX-Version</td><td>4.0</td>
</tr>
<tr>
<td class="themenspalte">SuperX-Modul</td><td>myjobs Version 0.1</td>
</tr>
<tr>
<td class="themenspalte"></td><td></td>
</tr>
</table>
</center>
<center>
<h3>Parameter f&uuml;r das Entladen</h3>
<table border="1">
<tr>
<th>Parametername</th><th>Default Wert</th><th>Beschreibung</th><th>Kommentar</th>
</tr>
<tr>
<td>SOURCESYSTEM</td><td>hisinone</td><td>hisinone (HIS1 Datenbank)</td><td> </td>
</tr>
<tr>
<td>start_myjobs_sem</td><td>20191</td><td>Startsemester Lehrveranstaltungen</td><td>Ab welchem Semester sollen Lehrveranstaltungen entladen werden? z.B. 20191 f&uuml;r SS 2019</td>
</tr>
</table>
</center>
<br>
<br>
<center>
<h3>Entladeschritte</h3>
</center>
<table border="1">
<tr>
<th>Kurzitel</th><th>Beschreibung</th><th>Tabelle/Script</th><th>Datei</th>
</tr>
</table>
</BODY>
</HTML>

104
superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_unload.x

@ -0,0 +1,104 @@ @@ -0,0 +1,104 @@
#!/bin/bash
#Extraction Script for SuperX.
#Bitte nicht ändern, diese Datei ist automatisch generiert.
SRC_PFAD=$MYJOBS_LOAD_PFAD
. ./MYJOBS_ENV
if [ "$SRC_PFAD" = "" ]
then
SRC_PFAD=.
fi
if [ "$outFormat" = "" ]
then
outFormat=txt
fi
DATUM=`cat $SRC_PFAD/superx.datum`
ERR=myjobs_unload.err
cp $SRC_PFAD/superx.datum $SRC_PFAD/superx.datum.alt
##Löschen der alten Dateien
rm $SRC_PFAD/unl/*unl >/dev/null 2>&1
date +'%d.%m.%Y' > $SRC_PFAD/superx.datum ##neues Entladedatum
HEUTE=`date +'%d.%m.%Y'`
echo "Letztes Update-Datum: " $DATUM >$ERR
echo "DATABASE: $DATABASE" >>$ERR
echo "VERSION: $VERSION" >>$ERR
echo "SX_CLIENT: $SX_CLIENT" >>$ERR
echo "0.1^"$HEUTE"^" >$SRC_PFAD/unl/superx_unload_version.unl
cd $SRC_PFAD >>$ERR 2>&1
CP=".:$JDBC_CLASSPATH:$XML_CLASSPATH"
case "`uname`" in
CYGWIN*)
CP=".;$JDBC_CLASSPATH;$XML_CLASSPATH"
;;
esac
cat /dev/null >unload_params.txt
if [ "$start_myjobs_sem" = "" ]
then
start_myjobs_sem="20191"
export start_myjobs_sem
fi
echo "Parameter start_myjobs_sem: $start_myjobs_sem" >>$ERR
echo "\$start_myjobs_sem=$start_myjobs_sem" >>unload_params.txt
if [ "$SOURCESYSTEM" = "" ]
then
SOURCESYSTEM="hisinone"
export SOURCESYSTEM
fi
echo "Parameter SOURCESYSTEM: $SOURCESYSTEM" >>$ERR
echo "\$SOURCESYSTEM=$SOURCESYSTEM" >>unload_params.txt
#jdbc zum Entladen
if [ "$SX_CLIENT" = "jdbc" ]
then
java $JAVA_OPTS -cp $CP de.superx.bin.SxExtractor -logger:$LOGGER_PROPERTIES -dbproperties:$DB_PROPERTIES -xml:myjobs_unload.xml -outFormat:$outFormat -delim:$DBDELIMITER -header:$header -database:$DATABASE -version:$VERSION -unload_params:unload_params.txt >>$ERR 2>&1
exit 0
fi
#Nachbearbeitung der unl-Dateien:
#Zumächst maskierte "\ " entfernen, Postgres kommt damit nicht klar
chmod go+r $ERR
chmod go+r $SRC_PFAD/superx.datum
chmod go+r $SRC_PFAD/superx.datum.alt
chmod go+w $SRC_PFAD/superx.datum
chmod go+w $SRC_PFAD/superx.datum.alt
chmod go+r $SRC_PFAD/unl/*
##Herstellen altes Entladedatum bei Fehler
fgrep -s "not found" $ERR >/dev/null
FLAG1=$?
fgrep -i -s "nicht gefunden" $ERR >/dev/null
FLAG2=$?
fgrep -i -s "error" $ERR >/dev/null
FLAG3=$? >/dev/null
fgrep -i -s "exception" $ERR >/dev/null
FLAG4=$? >/dev/null
if [ $FLAG1 -eq 0 -o $FLAG2 -eq 0 -o $FLAG3 -eq 0 -o $FLAG4 -eq 0 ]
then
echo "Fehler beim Entladen. Das Datum wird zurückgesetzt."
echo "---------------------------------------"
echo "Prüfen Sie Fehlerprotokoll: $ERR"
echo "---------------------------------------"
cp $SRC_PFAD/superx.datum.alt $SRC_PFAD/superx.datum
fi

16
superx/WEB-INF/conf/edustore/db/module/myjobs/rohdaten/myjobs_unload.xml

@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<superx-unload version="4.0">
<module id="myjobs" version="0.1" systeminfo_id="1400">Beispiel-Modul</module>
<parameters>
<param name="start_myjobs_sem" defaultValue="20191" description="Startsemester Lehrveranstaltungen"><comment>Ab welchem Semester sollen Lehrveranstaltungen entladen werden? z.B. 20191 für SS 2019</comment></param>
</parameters>
<sourcesystems>
<sourcesystem name="hisinone" description="HIS1 Datenbank" default="true"/>
</sourcesystems>
</superx-unload>

17
superx/WEB-INF/conf/edustore/db/module/myjobs/schluesseltabellen/dim_bp_altsicht_apnr_fuellen.sql

@ -0,0 +1,17 @@ @@ -0,0 +1,17 @@
-- XML-generiertes SQL-Script fuer -- von dim_bp_apnr_altsicht_fuellen.xsl
--freemarker template
<sqlvars>
<sqlvar name="dim_bp_altsicht_apnr_exists">
select sp_table_exists('dim_bp_altsicht_apnr') from xdummy;
</sqlvar>
</sqlvars>
<#if dim_bp_altsicht_apnr_exists=1>
</#if>

154
superx/WEB-INF/conf/edustore/db/module/myjobs/schluesseltabellen/dimension_bp_fuellen.sql

@ -0,0 +1,154 @@ @@ -0,0 +1,154 @@
-- XML-generiertes SQL-Script fuer -- von dimension_bp_fuellen.xsl
--freemarker template
<sqlvars>
<sqlvar name="dimension_bp_exists">
select sp_table_exists('dimension_bp') from xdummy;
</sqlvar>
</sqlvars>
<#if dimension_bp_exists=1>
create temp table tmp_dimension_bp(
tid SERIAL not null,
d_akt_von DATE ,
d_akt_bis DATE ,
apnr VARCHAR(255) ,
kurz VARCHAR(255) ,
druck VARCHAR(255) ,
lang_1 VARCHAR(255) ,
lang_2 VARCHAR(255) ,
lang_3 VARCHAR(255) ,
keyfield VARCHAR(255) ,
keyfieldtype VARCHAR(255) ,
datatype VARCHAR(255) ,
captionfield VARCHAR(255) ,
sortfield VARCHAR(255) ,
source VARCHAR(255) ,
sourcefilter VARCHAR(255) ,
system_key VARCHAR(255)
);
--updates auf vorh. Schlüssel
<#if SQLdialect='Postgres'>
--Postgres Dialekt:
update dimension_bp set apnr=D.apnr,
d_akt_von=D.d_akt_von,
d_akt_bis=D.d_akt_bis ,
kurz=D.kurz ,
druck=D.druck ,
lang_1=D.lang_1 ,
lang_2=D.lang_2 ,
lang_3=D.lang_3 ,
keyfieldtype=D.keyfieldtype,
datatype=D.datatype,
keyfield=D.keyfield,
captionfield=D.captionfield,
source=D.source,
sourcefilter=D.sourcefilter
<#if TableFieldExists?exists && TableFieldExists('dimension_bp','sortfield')>
,sortfield=D.sortfield
</#if>
from tmp_dimension_bp D
where D.system_key=dimension_bp.system_key;
<#else>
--Informix Dialekt:
update dimension_bp set ( apnr,
d_akt_von,
d_akt_bis,
kurz,
druck,
lang_1,
lang_2,
lang_3,
keyfield,
keyfieldtype,
datatype,
captionfield,
<#if TableFieldExists?exists && TableFieldExists('dimension_bp','sortfield')>
sortfield,
</#if>
source,
sourcefilter)
= ((select
apnr,
d_akt_von,
d_akt_bis,
kurz,
druck,
lang_1,
lang_2,
lang_3,
keyfield,
keyfieldtype,
datatype,
captionfield,
<#if TableFieldExists?exists && TableFieldExists('dimension_bp','sortfield')>
sortfield,
</#if>
source,
sourcefilter
from tmp_dimension_bp D
where D.system_key=dimension_bp.system_key))
where system_key in (select D.system_key from tmp_dimension_bp D);
</#if>
--neue werden eingefügt:
delete from tmp_dimension_bp where system_key in
(select system_key from dimension_bp);
insert into dimension_bp(d_akt_von,
d_akt_bis,
apnr,
kurz,
druck,
lang_1,
lang_2,
lang_3,
keyfield ,
keyfieldtype,
datatype,
captionfield ,
<#if TableFieldExists?exists && TableFieldExists('dimension_bp','sortfield')>
sortfield,
</#if>
source ,
sourcefilter,
system_key
)
select d_akt_von,
d_akt_bis,
apnr,
kurz,
druck,
lang_1,
lang_2,
lang_3,
keyfield ,
keyfieldtype,
datatype,
captionfield ,
<#if TableFieldExists?exists && TableFieldExists('dimension_bp','sortfield')>
sortfield,
</#if>
source ,
sourcefilter,
system_key
from tmp_dimension_bp
;
drop table tmp_dimension_bp;
</#if>

125
superx/WEB-INF/conf/edustore/db/module/myjobs/schluesseltabellen/dimension_fuellen.sql

@ -0,0 +1,125 @@ @@ -0,0 +1,125 @@
-- XML-generiertes SQL-Script fuer -- von dimension_fuellen.xsl
--freemarker template
--(c) 2008 Daniel Quathamer
<sqlvars>
<sqlvar name="dimension_exists">
select sp_table_exists('dimension') from xdummy;
</sqlvar>
</sqlvars>
<#if dimension_exists=1>
create temp table tmp_dimension(
tid integer,
dimension_bp_id INTEGER not null,
fact_table VARCHAR(255) ,
d_akt_von DATE ,
d_akt_bis DATE ,
name VARCHAR(255) ,
druck VARCHAR(255) ,
lang_1 VARCHAR(255) ,
lang_2 VARCHAR(255) ,
lang_3 VARCHAR(255) ,
sourcefilter VARCHAR(255),
system_key VARCHAR(255)
);
--Vorhandene Schlüssel werden ersetzt, nicht vorhandene Schlüssel bleiben:
--vorhandene Schlüssel ermitteln:
update tmp_dimension set tid=(select tid from
dimension D where D.fact_table=tmp_dimension.fact_table
and D.system_key=tmp_dimension.system_key);
--vorhandene Schlüssel updaten:
<#if SQLdialect='Postgres'>
--Postgres Dialekt:
update dimension set dimension_bp_id=D.dimension_bp_id,
d_akt_von=D.d_akt_von,
d_akt_bis=D.d_akt_bis ,
name=D.name ,
druck=D.druck ,
lang_1=D.lang_1 ,
lang_2=D.lang_2 ,
lang_3=D.lang_3 ,
sourcefilter=D.sourcefilter
from tmp_dimension D
where D.tid is not null
and D.tid=dimension.tid;
<#else>
--Informix Dialekt:
update dimension set (dimension_bp_id,
d_akt_von,
d_akt_bis,
name,
druck,
lang_1,
lang_2,
lang_3,
sourcefilter)
= ((select
dimension_bp_id,
d_akt_von,
d_akt_bis,
name,
druck,
lang_1,
lang_2,
lang_3,
sourcefilter
from tmp_dimension D
where D.tid=dimension.tid))
where tid in (select D.tid from tmp_dimension D);
</#if>
--neue Schlüssel:
insert into dimension(
dimension_bp_id,
fact_table,
d_akt_von,
d_akt_bis,
name,
druck,
lang_1,
lang_2,
lang_3,
sourcefilter,
system_key)
select dimension_bp_id,
fact_table,
d_akt_von,
d_akt_bis,
name,
druck,
lang_1,
lang_2,
lang_3,
sourcefilter,
system_key
from tmp_dimension
where tid is null;
--gelöschte Dimensionen:
delete from dimension
where fact_table in (select fact_table from tmp_dimension)
and 0 = (select count(*) from tmp_dimension D
where D.system_key=dimension.system_key);
drop table tmp_dimension;
</#if>

125
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade.x

@ -0,0 +1,125 @@ @@ -0,0 +1,125 @@
#!/bin/bash
#Upgrade
NEWVERSION=`cat ../VERSION`
# XML-generiertes Shell-Script fuer Modul myjobs
echo "Die aktuell installierte Version des Moduls ist"
if [ "$DATABASE" == "INFORMIX" ]
then
DOQUERY "select version from db_version where his_system='myjobs';" 2>/dev/null
else
DOQUERY "select version from db_version where his_system='myjobs';"
fi
echo "Die zu installierende Version ist $NEWVERSION"
if [ "$1" != "J" ]
then
echo "Fortfahren? (J/N) ? "
read WEITER
else
WEITER=$1
fi
if [ "$WEITER" != "J" ]
then
if [ "$WEITER" != "j" ]
then echo "Upgrade-Script abgebrochen"
exit 0
fi
fi
UPDATELOG=$MYJOBS_PFAD/upgrade/upgrade"$MANDANTID".log
echo "Datenbank $DBNAME wird geupdated. Logdatei: $UPDATELOG"
echo "Datenbank $DBNAME wird geupdated." >$UPDATELOG
if [ -f "$MYJOBS_PFAD/upgrade/myjobs_pre_upgrade_$DATABASE_ABBR.sql" ]
then
DOSQL $MYJOBS_PFAD/upgrade/myjobs_pre_upgrade_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
fi
echo "Tabellen prüfen" >>$UPDATELOG
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_tables_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_fields_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_views_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
if [ "$DATABASE" == "INFORMIX" ]
then
echo "speziell für IDS" >>$UPDATELOG
fi
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_functions_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_indexes_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_themenbaum.sql >>$UPDATELOG 2>&1
$MYJOBS_PFAD/myjobs_masken_einspielen_"$DATABASE_ABBR".x >>$UPDATELOG 2>&1
DOSQL $MYJOBS_PFAD/upgrade/myjobs_upgrade_"$DATABASE_ABBR".sql >>$UPDATELOG 2>&1
if [ -f "$MYJOBS_PFAD/conf/customize$MANDANTID.sql" ]
then
CMD="DOSQL $MYJOBS_PFAD/conf/customize$MANDANTID.sql"
runAndCheck.x $MYJOBS_PFAD "$CMD" CONT_ON_ERROR NO_ERRORMAIL NO_LOGMAIL "myjobs Customize$MANDANTID"
fi
if [ "$WEBAPP" == "" ]
then
#in SuperX 3.5 ist webapp immer hier:
WEBAPP=$SUPERX_DIR/webserver/tomcat/webapps/superx
fi
DBFORMS_CONFIG=$WEBAPP/WEB-INF/myjobs_dbforms-config_"$DATABASE_ABBR".xml
if [ -f "$DBFORMS_CONFIG" ]
then
CMD="dbforms-config_upgrade.x $DBFORMS_CONFIG"
runAndCheck.x $SUPERX_DIR/db/bin "$CMD" CONT_ON_ERROR NO_ERRORMAIL NO_LOGMAIL "myjobs dbforms-config Upgrade$MANDANTID"
fi
EDUSTORE_XML=$WEBAPP/WEB-INF/classes/edustore/edustore_myjobs.xml
if [ "$EDUSTORE_XML_GENERATE" = "true" -a -f "$EDUSTORE_XML" -a -f "$SUPERX_DIR/db/bin/edustore_xml_upgrade.x" ]
then
CMD="edustore_xml_upgrade.x $EDUSTORE_XML"
runAndCheck.x $SUPERX_DIR/db/bin "$CMD" CONT_ON_ERROR NO_ERRORMAIL NO_LOGMAIL "sos edustore_xml Upgrade$MANDANTID"
echo "$EDUSTORE_XML wurde aktualisiert."
else
echo "$EDUSTORE_XML wurde nicht aktualisiert."
fi
fgrep -i -s "fehler" $UPDATELOG
FLAG1=$?
fgrep -i -s "error" $UPDATELOG
FLAG2=$?
fgrep -i -s "could not connect to server" $UPDATELOG
FLAG3=$?
if [ $FLAG1 -eq 0 -o $FLAG2 -eq 0 -o $FLAG3 -eq 0 ]
then
echo "Fehler beim Upgrade der Datenbank"
echo "---------------------------------------"
echo "Bitte prüfen Sie das Fehlerprotokoll in $UPDATELOG"
echo "---------------------------------------"
else
echo "----------------------------------------"
echo "Datenbank $DBNAME erfolgreich geupdated "
echo "(Keine Fehler aufgefallen in $UPDATELOG)."
echo "Bitte starten Sie nun Tomcat neu."
echo "----------------------------------------"
fi

18
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_fields_pg.sql

@ -0,0 +1,18 @@ @@ -0,0 +1,18 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl
--Freemarker Template
<sqlvars>
<sqlvar name="fields" type="list">
select trim(C.relname) || '.' || trim(A.attname),trim(C.relname) || '.' || trim(A.attname)
FROM pg_attribute A, pg_class C
where C.oid = A.attrelid
and A.attnum >0
and C.relname::varchar(255) in (
) order by 1;</sqlvar>
</sqlvars>
\! echo "Checking fields"
\! echo `date`

2
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_functions_pg.sql

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl

19
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_indexes_pg.sql

@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl
--Freemarker Template
<sqlvars>
<sqlvar name="indexes">
select
C.relname,C.relname from pg_class C, pg_index I
where I.indexrelid=C.oid
and I.indrelid in (
select D.oid from pg_class D
where D.relname::varchar(200) in (
));</sqlvar>
</sqlvars>
\! echo "Checking indexes"
\! echo `date`

29
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_pg.sql

@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl
select setval('themenbaum_tid_seq',(select max(tid)+1 from themenbaum));
\! echo "Fülle db_version"
\! echo `date`
delete from db_version where his_system='myjobs';
insert into db_version (his_system,version) values('myjobs','0.1b');
\! echo "Fülle sx_tables, sx_fields und unload_params"
\! echo `date`
\! DOSQL $MYJOBS_PFAD/conf/sx_tables_fuellen.sql
\! DOSQL $MYJOBS_PFAD/conf/sx_fields_fuellen.sql
\! DOSQL $MYJOBS_PFAD/conf/unload_params_fuellen.sql
\! echo "Fülle db_forms"
\! echo `date`
\! DOSQL $MYJOBS_PFAD/myjobs_install_custom.sql

16
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_tables_pg.sql

@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl
--Freemarker Template
<sqlvars>
<sqlvar name="tables" type="list">
select relname,relname as tabelle from pg_class where relname::varchar(200) in (
);</sqlvar>
</sqlvars>
<#assign deleted_tables = []>
\! echo "Checking tables"
\! echo `date`

22
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_themenbaum.sql

@ -0,0 +1,22 @@ @@ -0,0 +1,22 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl
-- Themenbaum fuellen
--freemarker template
CREATE temp TABLE tmp_themenbaum (
tid integer NOT NULL,
name varchar(255) NOT NULL,
maskeninfo_id integer,
parent integer,
gueltig_seit date,
gueltig_bis date,
erlaeuterung character(240)
);
--zuerst die Themen
--nun die Masken
drop table tmp_themenbaum;
<#if SQLdialect='Postgres'>
--Postgres Dialekt:
select sp_update_sequence('themenbaum');
</#if>

3
superx/WEB-INF/conf/edustore/db/module/myjobs/upgrade/myjobs_upgrade_views_pg.sql

@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
--SQL Script automatisch generiert von SuperX module_upgrade.xsl
-- Keine Views gefunden

6
superx/WEB-INF/myjobs_dbforms-config_pg.xml

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?><dbforms-config>
<date-format>dd.MM.yyyy</date-format>
<!--Hier beginnt Moduldefinition-->
<!--Hier endet Moduldefinition-->
<dbconnection conClass="org.apache.commons.dbcp.PoolingDriver" name="jdbc:apache:commons:dbcp:default" isJndi="false"/>
</dbforms-config>
Loading…
Cancel
Save