Browse Source

Anpassung KERN Patch 5.0 #307740

userinfo_gueltigkeit
Daniel Quathamer 10 months ago
parent
commit
eec4642ee7
  1. 9
      src/de/superx/bin/ExecuteMask.java
  2. 9
      src/de/superx/bin/SxTransformer.java
  3. 10
      src/de/superx/etl/EtlUtils.java
  4. 1
      src/de/superx/servlet/SuperXmlTabelle.java
  5. 33
      src/de/superx/servlet/SxPool.java
  6. 1
      src/de/superx/servlet/SxPools.java
  7. 55
      src/de/superx/servlet/XmlTransformer.java
  8. 13
      src/de/superx/util/PathAndFileUtils.java
  9. 11
      superx/WEB-INF/conf/edustore/db/bin/module_scripts_create.x
  10. 2
      superx/WEB-INF/conf/edustore/db/conf/module_scripts_create_ant.xml
  11. 8
      superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_integrate_ids.sql
  12. 6
      superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_integrate_pg.sql
  13. 6
      superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_upgrade2_ids.xml
  14. 6
      superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_upgrade2_pg.xml
  15. 6
      superx/WEB-INF/conf/edustore/db/install/conf/kern.xml
  16. 2
      superx/WEB-INF/conf/edustore/db/install/conf/kern_cubes.xml
  17. 8
      superx/WEB-INF/conf/edustore/db/install/conf/kern_mask_test_ant.xml
  18. 8
      superx/WEB-INF/conf/edustore/db/install/kern_install_ids.sql
  19. 6
      superx/WEB-INF/conf/edustore/db/install/kern_install_pg.sql
  20. 2
      superx/WEB-INF/conf/edustore/db/install/kern_load_ids.sql
  21. 45
      superx/WEB-INF/conf/edustore/db/install/masken/remove_obsolete_masks.sql
  22. 38
      superx/WEB-INF/conf/edustore/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql
  23. 100
      superx/WEB-INF/conf/edustore/db/install/upgrade/cif_fuellen_key_2.sql
  24. 16
      superx/WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_ids.sql
  25. 12
      superx/WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_pg.sql
  26. 30
      superx/WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_themenbaum.sql
  27. 56
      superx/WEB-INF/kern_dbforms-config_ids.xml
  28. BIN
      superx/WEB-INF/lib/superx5.0.jar
  29. 49
      superx/WEB-INF/patch/patch_archive/patch_2023-11-22_bash_var.sh
  30. 137
      superx/WEB-INF/patch/patch_archive/patch_2023-11-22_readme.htm
  31. 73
      superx/WEB-INF/patch/xml/patch_2023-11-22.xml
  32. 94
      superx/edit/kern/webapp_manager.jsp
  33. 4
      superx/style/superx.css
  34. 2
      superx/xml/pageComponents_html.xsl
  35. 2
      superx/xml/tabelle2jasperreport_generic.xsl

9
src/de/superx/bin/ExecuteMask.java

@ -5,6 +5,7 @@ import java.io.FileInputStream;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.net.URISyntaxException;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
@ -129,11 +130,13 @@ public class ExecuteMask {
} }
String userName = GetOpts.getValue("-user"); String userName = GetOpts.getValue("-user");
String loggingProperties = GetOpts.getValue("-logger"); String loggingProperties = GetOpts.getValue("-logger");
myWEBINFFilePath= de.superx.util.PathAndFileUtils.getWebinfDirectory();
if (GetOpts.isPresent("-fopxconf")) { if (GetOpts.isPresent("-fopxconf")) {
fopxconfFile = new File(GetOpts.getOpt("-fopxconf").replaceAll("-fopxconf:", "")); fopxconfFile = new File(GetOpts.getOpt("-fopxconf").replaceAll("-fopxconf:", ""));
} else { } else {
fopxconfFile = null; fopxconfFile = new File(myWEBINFFilePath+ File.separator + "conf"+ File.separator +"fop.xconf");
} }
try { try {
@ -153,7 +156,7 @@ public class ExecuteMask {
} }
tutil.start(); tutil.start();
try { try {
//SuperXManager.initKettleEnv(); SuperXManager.initKettleEnv();
SxPools.init(); SxPools.init();
SxPools.get(mandantenID).init(); SxPools.get(mandantenID).init();
SxPools.get(mandantenID).initLogging(true); SxPools.get(mandantenID).initLogging(true);
@ -421,7 +424,7 @@ public class ExecuteMask {
private static void transformFile(Maske maske, String xmlfile, String stylesheet, String contenttype, private static void transformFile(Maske maske, String xmlfile, String stylesheet, String contenttype,
String filename, MockHttpServletResponse mockResponse_par, String method) { String filename, MockHttpServletResponse mockResponse_par, String method) {
TransletUtils.initFactory("net.sf.saxon.TransformerFactoryImpl", null); TransletUtils.initFactory("net.sf.saxon.TransformerFactoryImpl", null);
String stylesheetPath = getMyWEBINFFilePath() + File.separator + ".." + File.separator + "xml" + File.separator String stylesheetPath = myWEBINFFilePath + File.separator + ".." + File.separator + "xml" + File.separator
+ stylesheet; + stylesheet;
if (method.equals("xls")) { if (method.equals("xls")) {
try { try {

9
src/de/superx/bin/SxTransformer.java

@ -27,6 +27,7 @@ import javax.xml.transform.URIResolver;
import javax.xml.transform.sax.SAXResult; import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource; import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.Transformer;
import org.apache.fop.apps.FOUserAgent; import org.apache.fop.apps.FOUserAgent;
import org.apache.fop.apps.Fop; import org.apache.fop.apps.Fop;
@ -37,6 +38,7 @@ import org.apache.fop.apps.MimeConstants;
import org.jfor.jfor.converter.Converter; import org.jfor.jfor.converter.Converter;
import org.xml.sax.InputSource; import org.xml.sax.InputSource;
import de.superx.common.TransletCache;
import de.superx.util.SqlStringUtils; import de.superx.util.SqlStringUtils;
// ACHTUNG - PDF ERZEUGUNG WIEDER AKTIV DQ 27.12.2005!!! // ACHTUNG - PDF ERZEUGUNG WIEDER AKTIV DQ 27.12.2005!!!
@ -106,7 +108,7 @@ public class SxTransformer {
public void setFopxconfFile(File fopxconfFile) { public void setFopxconfFile(File fopxconfFile) {
this.fopxconfFile = fopxconfFile; this.fopxconfFile = fopxconfFile;
} }
public String mandantenID;
Logger myLogger; Logger myLogger;
String loglevel; String loglevel;
@ -332,9 +334,10 @@ public class SxTransformer {
public void transformFile(String methode) throws TransformerException, Exception public void transformFile(String methode) throws TransformerException, Exception
{ {
javax.xml.transform.TransformerFactory tFactory = javax.xml.transform.TransformerFactory.newInstance("net.sf.saxon.TransformerFactoryImpl", null); /*javax.xml.transform.TransformerFactory tFactory = javax.xml.transform.TransformerFactory.newInstance("net.sf.saxon.TransformerFactoryImpl", null);
javax.xml.transform.Transformer transformer = tFactory.newTransformer(new javax.xml.transform.stream.StreamSource(this.stylesheet)); javax.xml.transform.Transformer transformer = tFactory.newTransformer(new javax.xml.transform.stream.StreamSource(this.stylesheet));*/
Transformer transformer = TransletCache.getTransformer(this.mandantenID, this.stylesheet);
//StringReader s1 = new StringReader(quellstring); //StringReader s1 = new StringReader(quellstring);
transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING, SqlStringUtils.getEncoding()); transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING, SqlStringUtils.getEncoding());
if (methode.equals("pdf") || methode.equals("rtf")) if (methode.equals("pdf") || methode.equals("rtf"))

10
src/de/superx/etl/EtlUtils.java

@ -52,17 +52,9 @@ public static String MODUL_ROHDATEN_SUBPFAD=PATHSEP+"rohdaten"+PATHSEP;
public static void main(String args[]) { public static void main(String args[]) {
try {
String webinfdir=de.superx.util.PathAndFileUtils.getWebinfDirectory(); String webinfdir=de.superx.util.PathAndFileUtils.getWebinfDirectory();
System.out.println(webinfdir); System.out.println("WEB-INF:"+webinfdir);
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }
public static Properties convertStringToProperty(String inp) throws IOException public static Properties convertStringToProperty(String inp) throws IOException

1
src/de/superx/servlet/SuperXmlTabelle.java

@ -1010,6 +1010,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
filename_extension="."+contenttype.substring(contenttype.lastIndexOf("/")+1); filename_extension="."+contenttype.substring(contenttype.lastIndexOf("/")+1);
// open browser download dialogue // open browser download dialogue
response.setContentType("application/x-xml; charset=" + SqlStringUtils.getEncoding());
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getName()) + filename_extension); response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getName()) + filename_extension);
response.setHeader("Cache-Control", "expires=0"); response.setHeader("Cache-Control", "expires=0");
} }

33
src/de/superx/servlet/SxPool.java

@ -174,7 +174,7 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
lastpart = lastpart.replaceAll("\\?ApplicationName.*", ""); lastpart = lastpart.replaceAll("\\?ApplicationName.*", "");
String type = getDatabaseAbbr().equals("PG") ? "POSTGRESQL" : "INFORMIX"; String type = getDatabaseAbbr().equals("PG") ? "POSTGRESQL" : "INFORMIX";
// DatabaseMeta.getDatabaseInterfacesMap() ; // DatabaseMeta.getDatabaseInterfacesMap() ;
/*kettleDatabaseMeta = new DatabaseMeta("eduetl", type, "Native", host, lastpart, port, kettleDatabaseMeta = new DatabaseMeta("eduetl", type, "Native", host, lastpart, port,
props.getProperty("connectionName"), props.getProperty("password")); props.getProperty("connectionName"), props.getProperty("password"));
if (lastpart.indexOf(":INFORMIXSERVER") > -1) { if (lastpart.indexOf(":INFORMIXSERVER") > -1) {
String ixServer = lastpart.substring(lastpart.indexOf(":INFORMIXSERVER") + 16); String ixServer = lastpart.substring(lastpart.indexOf(":INFORMIXSERVER") + 16);
@ -182,7 +182,7 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
kettleDatabaseMeta.setDBName(dbname); kettleDatabaseMeta.setDBName(dbname);
kettleDatabaseMeta.setServername(ixServer); kettleDatabaseMeta.setServername(ixServer);
}*/ }
ConnectionFactory connectionFactory = new DriverManagerConnectionFactory( ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(
this.props.getProperty("connectionURL"), this.props); this.props.getProperty("connectionURL"), this.props);
PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory, this, PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory, this,
@ -345,10 +345,9 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
String myWEBINFFilePath=SuperXManager.getWEB_INFPfad(); String myWEBINFFilePath=SuperXManager.getWEB_INFPfad();
//bei Kommandozerilenaufrufen ist WEB-INF nicht aus dem Servlet Manager ermittelbar: //bei Kommandozerilenaufrufen ist WEB-INF nicht aus dem Servlet Manager ermittelbar:
if(myWEBINFFilePath==null || myWEBINFFilePath.equals(".")) if(myWEBINFFilePath==null || myWEBINFFilePath.equals("."))
try {
myWEBINFFilePath= de.superx.util.PathAndFileUtils.getWebinfDirectory(); myWEBINFFilePath= de.superx.util.PathAndFileUtils.getWebinfDirectory();
} catch (URISyntaxException e1) {
// Default ist user.dir: // Default ist user.dir:
if(myWEBINFFilePath.equals(".")) {
myWEBINFFilePath=System.getProperty("user.dir"); myWEBINFFilePath=System.getProperty("user.dir");
} // } //
rs = st.executeQuery("select tid from sx_repository where id='WEBINFDIR'"); rs = st.executeQuery("select tid from sx_repository where id='WEBINFDIR'");
@ -437,14 +436,14 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
base = "."; base = ".";
String targetDir = ""; String targetDir = "";
if (SuperXManager.isHis1) { //if (SuperXManager.isHis1) {
targetDir = SuperXManager.getWEB_INFPfad() + File.separator + "logs"; targetDir = de.superx.util.PathAndFileUtils.getWebinfDirectory() + File.separator + "logs";
File f = new File(targetDir); File f = new File(targetDir);
if (!f.exists()) if (!f.exists())
f.mkdir(); f.mkdir();
} else { //} else {
targetDir = base + File.separator + "logs"; // targetDir = base + File.separator + "logs";
} //}
if (System.getProperty("SX_LOG_TO_TMP") != null && System.getProperty("SX_LOG_TO_TMP").equalsIgnoreCase("true")) if (System.getProperty("SX_LOG_TO_TMP") != null && System.getProperty("SX_LOG_TO_TMP").equalsIgnoreCase("true"))
targetDir = System.getProperty("java.io.tmpdir"); targetDir = System.getProperty("java.io.tmpdir");
return targetDir; return targetDir;
@ -456,11 +455,8 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
* @throws Exception * @throws Exception
*/ */
private void readPropertiesAndUrl() throws Exception { private void readPropertiesAndUrl() throws Exception {
String propname = "db_" + getName() + ".properties";
if (getName().equals("default"))
propname = "db.properties";
props = PropsReader.prepareProps(new File(SuperXManager.getWEB_INFPfad() + File.separator + propname)); props = PropsReader.prepareProps(new File(getDbPropertyFilePath()));
if (props.getProperty("restrictedConnectionName") != null if (props.getProperty("restrictedConnectionName") != null
&& !props.getProperty("restrictedConnectionName").trim().equals("") && !props.getProperty("restrictedConnectionName").trim().equals("")
&& props.getProperty("restrictedConnectionPassword") != null && props.getProperty("restrictedConnectionPassword") != null
@ -474,6 +470,17 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
} }
} }
private String getDbPropertyFilePath() {
String propname = "db_" + getName() + ".properties";
if (getName().equals("default"))
propname = "db.properties";
String myWEBINFFilePath=SuperXManager.getWEB_INFPfad();
//bei Kommandozeilenaufrufen ist WEB-INF nicht aus dem Servlet Manager ermittelbar:
if(myWEBINFFilePath==null || myWEBINFFilePath.equals("."))
myWEBINFFilePath= de.superx.util.PathAndFileUtils.getWebinfDirectory();
return myWEBINFFilePath + File.separator + propname;
}
public String getSqlDialect() { public String getSqlDialect() {
String result = "Informix"; String result = "Informix";
if (props.getProperty("driverName").indexOf("postgres") > -1) if (props.getProperty("driverName").indexOf("postgres") > -1)

1
src/de/superx/servlet/SxPools.java

@ -4,6 +4,7 @@ import java.io.BufferedReader;
import java.io.File; import java.io.File;
import java.io.FileReader; import java.io.FileReader;
import java.io.IOException; import java.io.IOException;
import java.net.URISyntaxException;
import java.sql.Connection; import java.sql.Connection;
import java.sql.DriverManager; import java.sql.DriverManager;
import java.sql.SQLException; import java.sql.SQLException;

55
src/de/superx/servlet/XmlTransformer.java

@ -195,7 +195,7 @@ public class XmlTransformer {
desiredContenttype = "text/html; charset=" + SqlStringUtils.getEncoding(); desiredContenttype = "text/html; charset=" + SqlStringUtils.getEncoding();
desiredContenttype = desiredContenttype.toLowerCase(); desiredContenttype = desiredContenttype.toLowerCase();
if (desiredContenttype.startsWith("text/xml")) { if (desiredContenttype.startsWith("text/xml") || desiredContenttype.startsWith("application/jrxml")) {
response.setContentType("text/xml; charset=" + SqlStringUtils.getEncoding()); response.setContentType("text/xml; charset=" + SqlStringUtils.getEncoding());
methode = "xml"; methode = "xml";
} else { } else {
@ -316,7 +316,7 @@ public class XmlTransformer {
// DQ wird sich in Zukunft ändern, iText wird benutzt.. // DQ wird sich in Zukunft ändern, iText wird benutzt..
Logger.getLogger("superx_" + getMandantenID()).log(Level.INFO, "Erzeuge Contenttype: " + desiredContenttype); Logger.getLogger("superx_" + getMandantenID()).log(Level.INFO, "Erzeuge Contenttype: " + desiredContenttype);
if (desiredContenttype.equals("text/xml")) { if (desiredContenttype.equals("text/xml") || desiredContenttype.startsWith("application/jrxml")) {
createXml(transformer, returnTextStringReader); createXml(transformer, returnTextStringReader);
@ -342,7 +342,7 @@ public class XmlTransformer {
createNative(returnTextStringReader); createNative(returnTextStringReader);
} else } else
// Normal xml Transformation, not fop or rtf // Normal xml Transformation, not fop or rtf
createNormalOutput(transformer, returnTextStringReader); createNormalOutput(transformer, returnTextStringReader,desiredContenttype);
} }
} }
} }
@ -469,7 +469,7 @@ public class XmlTransformer {
this.browser = browser; this.browser = browser;
} }
private void createNormalOutput(javax.xml.transform.Transformer transformer, StringReader returnTextStringReader) throws IOException, TransformerException { private void createNormalOutput(javax.xml.transform.Transformer transformer, StringReader returnTextStringReader, String desiredContenttype) throws IOException, TransformerException {
Logger.getLogger("superx_" + getMandantenID()).log(Level.INFO, "Normal xml Transformation, not fop or rtf"); Logger.getLogger("superx_" + getMandantenID()).log(Level.INFO, "Normal xml Transformation, not fop or rtf");
@ -486,7 +486,14 @@ public class XmlTransformer {
result = CryptUtils.simpleEncryptString2(result); result = CryptUtils.simpleEncryptString2(result);
} }
tutil.start(); tutil.start();
if(desiredContenttype.equals("text/plain"))
{
sendBackTXT(result);
}
else
{
sendBackHTML( result); sendBackHTML( result);
}
Logger.getLogger("superx_" + getMandantenID()).log(Level.FINER, " schicken der Ergebnisseite an Client " + tutil.getSinceStart()); Logger.getLogger("superx_" + getMandantenID()).log(Level.FINER, " schicken der Ergebnisseite an Client " + tutil.getSinceStart());
} }
@ -537,7 +544,47 @@ public class XmlTransformer {
out.close(); out.close();
} }
/**
* aus abstrakter Klasse servletHelper übernommen
*
*
* @param txt
* @throws IOException
*/
protected void sendBackTXT(String txt) throws IOException {
OutputStream out = null;
TimeUtils t = new TimeUtils();
t.start();
// Check the Accepting-Encoding header from the HTTP request.
// If the header includes gzip, choose GZIP.
// If the header includes compress, choose ZIP.
// Otherwise choose no compression.
String encoding = request.getHeader("Accept-Encoding");
if (!SuperXManager.isResponseCompressionWanted)
encoding = "none";
byte[] myBytes = txt.getBytes(SqlStringUtils.getEncoding());
if (encoding != null && encoding.indexOf("gzip") != -1) {
response.setHeader("Content-Encoding", "gzip");
out = new GZIPOutputStream(response.getOutputStream());
} else if (encoding != null && encoding.indexOf("compress") != -1) {
response.setHeader("Content-Encoding", "compress");
out = new ZipOutputStream(response.getOutputStream());
} else {
response.setContentLength(myBytes.length);
out = response.getOutputStream();
}
response.setContentType("text/plain; charset=" + SqlStringUtils.getEncoding());
out.write(myBytes);
// t.print("sending");
out.close();
}
/** /**
* @param transformer * @param transformer
* @param returnTextStringReader * @param returnTextStringReader

13
src/de/superx/util/PathAndFileUtils.java

@ -262,15 +262,22 @@ public abstract class PathAndFileUtils {
* @return Path to the directory WEB-INF * @return Path to the directory WEB-INF
* @throws URISyntaxException * @throws URISyntaxException
*/ */
public static String getWebinfDirectory() throws URISyntaxException public static String getWebinfDirectory()
{ {
String myDir=System.getProperty("user.dir");
try {
if (runningFromJar()) if (runningFromJar())
{ {
return getWebinfDirectoryFromJar(); myDir= getWebinfDirectoryFromJar();
} else } else
{ {
return getWebinfDirectoryFromClass(); myDir= getWebinfDirectoryFromClass();
}
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
return myDir;
} }
/** /**
* determine Path where superx-build lies (WEB-INF/classes) * determine Path where superx-build lies (WEB-INF/classes)

11
superx/WEB-INF/conf/edustore/db/bin/module_scripts_create.x

@ -22,7 +22,7 @@ MODULE=$1
MODULE_PATH="$2" MODULE_PATH="$2"
DATABASE="$3" DATABASE="$3"
DATABASE_SIC="$DATABASE" DATABASE_SIC="$DATABASE"
BUILD_MONDRIAN="$5" BUILD_MONDRIAN_TMP="$5"
MONDRIAN_VERSION="$4" MONDRIAN_VERSION="$4"
CURRPATH=`pwd` CURRPATH=`pwd`
MODULE_UPPER=`echo $MODULE | tr "[:lower:]" "[:upper:]"` MODULE_UPPER=`echo $MODULE | tr "[:lower:]" "[:upper:]"`
@ -41,6 +41,15 @@ MONDRIAN_VERSION=3
fi fi
if [ "$BUILD_MONDRIAN" == "0" ]
then
echo "Kein Mondrian-build"
else
BUILD_MONDRIAN=$BUILD_MONDRIAN_TMP
fi
echo "Erzeuge Modul-Scripte" echo "Erzeuge Modul-Scripte"
echo "Modul: $MODULE" echo "Modul: $MODULE"

2
superx/WEB-INF/conf/edustore/db/conf/module_scripts_create_ant.xml

@ -1875,7 +1875,7 @@ ${mw_unload}
<!-- ### Mondrian OLAP schema creation ### --> <!-- ### Mondrian OLAP schema creation ### -->
<target name="module_mondrian_schema_all" <target name="module_mondrian_schema_all"
description="Erzeugt alle Mondrian Schemata und mergt sie in edustore.xml" description="Erzeugt alle Mondrian Schemata und mergt sie in edustore.xml"
depends="module_mondrian_schema_res,module_mondrian_schema_sos,module_mondrian_schema_cob,module_mondrian_schema_fin,module_mondrian_schema_zul,module_mondrian_schema_sva,module_mondrian_schema_kenn,module_mondrian_schema_star,module_mondrian_merge_schema" /> depends="module_mondrian_schema_res,module_mondrian_schema_sos,module_mondrian_schema_cob,module_mondrian_schema_fin,module_mondrian_schema_zul,module_mondrian_schema_sva,module_mondrian_schema_kenn,module_mondrian_merge_schema" />
<target name="module_mondrian_schema_res" description="Erzeugt das Mondrian Schema für res"> <target name="module_mondrian_schema_res" description="Erzeugt das Mondrian Schema für res">
<antcall target="module_mondrian_schema"> <antcall target="module_mondrian_schema">
<param name="MODULE" value="res" /> <param name="MODULE" value="res" />

8
superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_integrate_ids.sql

@ -661,12 +661,6 @@ insert into tmp_themenbaum
gueltig_bis) gueltig_bis)
values('Stammdatenverwaltung','71620','Administration','01.01.1900','01.01.3000'); values('Stammdatenverwaltung','71620','Administration','01.01.1900','01.01.3000');
insert into tmp_themenbaum
( name ,maskeninfo_id, parentname,
gueltig_seit ,
gueltig_bis)
values('OrgUnitTests','71640','Entwicklung','01.01.1900','01.01.3000');
insert into tmp_themenbaum insert into tmp_themenbaum
( name ,maskeninfo_id, parentname, ( name ,maskeninfo_id, parentname,
gueltig_seit , gueltig_seit ,
@ -752,7 +746,7 @@ values ('user_institution','user_institution','/edit/kern/user_institution_edit.
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('themenbaum_edit','themenbaum','/edit/kern/themenbaum_edit.jsp','Themenbaum'::varchar(200),'In diesem Formular können Sie den Themenbaum bearbeiten. Bitte beachten Sie: bei Änderungen muss der Themenbaum neu geladen werden (SuperXManager)'::varchar(255)); values ('themenbaum_edit','themenbaum','/edit/kern/themenbaum_edit.jsp','Themenbaum'::varchar(200),'In diesem Formular können Sie den Themenbaum bearbeiten. Bitte beachten Sie: bei Änderungen muss der Themenbaum neu geladen werden (SuperXManager)'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('sichten','sichten','/edit/kern/sichten_edit.jsp','Sichten'::varchar(200),'In diesem Formular können Sie Sichten auf das Organigramm verwalten.'::varchar(255)); values ('sichten','sichten','/edit/kern/sichten_edit.jsp','Sichten'::varchar(200),'In diesem Formular können Sie Sichten verwalten.'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('sachgeb_maske_bez','sachgeb_maske_bez','/edit/kern/sachgeb_maske_bez_edit.jsp','Masken und Sachgebiete'::varchar(200),'In diesem Formular können Sie Masken zu Sachgebieten zuordnen.'::varchar(255)); values ('sachgeb_maske_bez','sachgeb_maske_bez','/edit/kern/sachgeb_maske_bez_edit.jsp','Masken und Sachgebiete'::varchar(200),'In diesem Formular können Sie Masken zu Sachgebieten zuordnen.'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)

6
superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_integrate_pg.sql

@ -663,12 +663,6 @@ insert into tmp_themenbaum
gueltig_bis) gueltig_bis)
values('Stammdatenverwaltung','71620','Administration',date_val('01.01.1900'),date_val('01.01.3000')); values('Stammdatenverwaltung','71620','Administration',date_val('01.01.1900'),date_val('01.01.3000'));
insert into tmp_themenbaum
( name ,maskeninfo_id, parentname,
gueltig_seit ,
gueltig_bis)
values('OrgUnitTests','71640','Entwicklung',date_val('01.01.1900'),date_val('01.01.3000'));
insert into tmp_themenbaum insert into tmp_themenbaum
( name ,maskeninfo_id, parentname, ( name ,maskeninfo_id, parentname,
gueltig_seit , gueltig_seit ,

6
superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_upgrade2_ids.xml

@ -179,6 +179,9 @@
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql"/> <dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql"/>
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="executeFile"> <dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql"/> <dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql"/>
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="executeFile"> <dbi:dbaction dbi:action="executeFile">
@ -198,6 +201,9 @@
<dbi:dbaction dbi:action="executeFile"> <dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql"/> <dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql"/>
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:delete from dim_datum; <dbi:dbaction dbi:action="sqlexec">eduetl:delete from dim_datum;
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="importFile"> <dbi:dbaction dbi:action="importFile">

6
superx/WEB-INF/conf/edustore/db/install/conf/his1/edustore_install/edustore_kern_upgrade2_pg.xml

@ -187,6 +187,9 @@
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql"/> <dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql"/>
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="executeFile"> <dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql"/> <dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql"/>
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="executeFile"> <dbi:dbaction dbi:action="executeFile">
@ -208,6 +211,9 @@
<dbi:dbaction dbi:action="executeFile"> <dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql"/> <dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql"/>
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="executeFile">
<dbi:file database="eduetl" encoding="UTF-8" withNativeClient="n" structure="SQL" filename="$SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql"/>
</dbi:dbaction>
<dbi:dbaction dbi:action="sqlexec">eduetl:truncate table dim_datum cascade; <dbi:dbaction dbi:action="sqlexec">eduetl:truncate table dim_datum cascade;
</dbi:dbaction> </dbi:dbaction>
<dbi:dbaction dbi:action="importFile"> <dbi:dbaction dbi:action="importFile">

6
superx/WEB-INF/conf/edustore/db/install/conf/kern.xml

@ -9654,7 +9654,7 @@ where dimension_bp_id=(select D.tid from dimension_bp D where D.apnr='bluep_absc
<lastChange>30.09.2020</lastChange> <lastChange>30.09.2020</lastChange>
</src> </src>
</maske> </maske>
<maske tid="71640" name="OrgUnitTests" thema="Entwicklung"> <maske tid="71640" name="OrgUnitTests" thema="">
<src> <src>
<path>$SUPERX_DIR/db/install/masken</path> <path>$SUPERX_DIR/db/install/masken</path>
<dbsystem>POSTGRES</dbsystem> <dbsystem>POSTGRES</dbsystem>
@ -10298,6 +10298,9 @@ gueltig_bis DATE
<nativeaction sql="" <nativeaction sql=""
scriptfile="$SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql" scriptfile="$SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql"
database="" /> database="" />
<nativeaction sql=""
scriptfile="$SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql"
database="" />
<nativeaction sql="" <nativeaction sql=""
scriptfile="$SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql" scriptfile="$SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql"
database="" /> database="" />
@ -10314,6 +10317,7 @@ gueltig_bis DATE
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/schluesseltabellen/adapt_target_platform.sql" database="" /> <nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/schluesseltabellen/adapt_target_platform.sql" database="" />
<nativeaction sql="update sx_repository set content ='xml/index.jsp' where content= '/superx/xml/index.jsp';" database="POSTGRES" /> <nativeaction sql="update sx_repository set content ='xml/index.jsp' where content= '/superx/xml/index.jsp';" database="POSTGRES" />
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql" database="" /> <nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql" database="" />
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql" database=""></nativeaction>
</action> </action>
<action> <action>

2
superx/WEB-INF/conf/edustore/db/install/conf/kern_cubes.xml

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

8
superx/WEB-INF/conf/edustore/db/install/conf/kern_mask_test_ant.xml

@ -350,14 +350,6 @@
<arg value="-logger:conf/edustore/db/conf/logging.properties"/> <arg value="-logger:conf/edustore/db/conf/logging.properties"/>
<classpath refid="classpath"/> <classpath refid="classpath"/>
</java> </java>
<!--Test Maske - tid: 71640 - Maskenname: OrgUnitTests-->
<java classname="de.superx.bin.ExecuteMask" fork="true" failonerror="true" classpathref="classpath" dir="${WEBAPP_DIR}/WEB-INF">
<arg value="-tid:71640"/>
<arg value="-out:71640.htm"/>
<arg value="-user:admin"/>
<arg value="-logger:conf/edustore/db/conf/logging.properties"/>
<classpath refid="classpath"/>
</java>
<!--Test Maske - tid: 71660 - Maskenname: Prüfprotokoll Administration--> <!--Test Maske - tid: 71660 - Maskenname: Prüfprotokoll Administration-->
<java classname="de.superx.bin.ExecuteMask" fork="true" failonerror="true" classpathref="classpath" dir="${WEBAPP_DIR}/WEB-INF"> <java classname="de.superx.bin.ExecuteMask" fork="true" failonerror="true" classpathref="classpath" dir="${WEBAPP_DIR}/WEB-INF">
<arg value="-tid:71660"/> <arg value="-tid:71660"/>

8
superx/WEB-INF/conf/edustore/db/install/kern_install_ids.sql

@ -4814,12 +4814,6 @@ insert into tmp_themenbaum
gueltig_bis) gueltig_bis)
values('Stammdatenverwaltung','71620','Administration','01.01.1900','01.01.3000'); values('Stammdatenverwaltung','71620','Administration','01.01.1900','01.01.3000');
insert into tmp_themenbaum
( name ,maskeninfo_id, parentname,
gueltig_seit ,
gueltig_bis)
values('OrgUnitTests','71640','Entwicklung','01.01.1900','01.01.3000');
insert into tmp_themenbaum insert into tmp_themenbaum
( name ,maskeninfo_id, parentname, ( name ,maskeninfo_id, parentname,
gueltig_seit , gueltig_seit ,
@ -4907,7 +4901,7 @@ values ('user_institution','user_institution','/edit/kern/user_institution_edit.
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('themenbaum_edit','themenbaum','/edit/kern/themenbaum_edit.jsp','Themenbaum'::varchar(200),'In diesem Formular können Sie den Themenbaum bearbeiten. Bitte beachten Sie: bei Änderungen muss der Themenbaum neu geladen werden (SuperXManager)'::varchar(255)); values ('themenbaum_edit','themenbaum','/edit/kern/themenbaum_edit.jsp','Themenbaum'::varchar(200),'In diesem Formular können Sie den Themenbaum bearbeiten. Bitte beachten Sie: bei Änderungen muss der Themenbaum neu geladen werden (SuperXManager)'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('sichten','sichten','/edit/kern/sichten_edit.jsp','Sichten'::varchar(200),'In diesem Formular können Sie Sichten auf das Organigramm verwalten.'::varchar(255)); values ('sichten','sichten','/edit/kern/sichten_edit.jsp','Sichten'::varchar(200),'In diesem Formular können Sie Sichten verwalten.'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('sachgeb_maske_bez','sachgeb_maske_bez','/edit/kern/sachgeb_maske_bez_edit.jsp','Masken und Sachgebiete'::varchar(200),'In diesem Formular können Sie Masken zu Sachgebieten zuordnen.'::varchar(255)); values ('sachgeb_maske_bez','sachgeb_maske_bez','/edit/kern/sachgeb_maske_bez_edit.jsp','Masken und Sachgebiete'::varchar(200),'In diesem Formular können Sie Masken zu Sachgebieten zuordnen.'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)

6
superx/WEB-INF/conf/edustore/db/install/kern_install_pg.sql

@ -5743,12 +5743,6 @@ insert into tmp_themenbaum
gueltig_bis) gueltig_bis)
values('Stammdatenverwaltung','71620','Administration',date_val('01.01.1900'),date_val('01.01.3000')); values('Stammdatenverwaltung','71620','Administration',date_val('01.01.1900'),date_val('01.01.3000'));
insert into tmp_themenbaum
( name ,maskeninfo_id, parentname,
gueltig_seit ,
gueltig_bis)
values('OrgUnitTests','71640','Entwicklung',date_val('01.01.1900'),date_val('01.01.3000'));
insert into tmp_themenbaum insert into tmp_themenbaum
( name ,maskeninfo_id, parentname, ( name ,maskeninfo_id, parentname,
gueltig_seit , gueltig_seit ,

2
superx/WEB-INF/conf/edustore/db/install/kern_load_ids.sql

@ -1,5 +1,5 @@
-- XML-generiertes SQL-Script fuer dbaccess--von module_etl.xsl -- XML-generiertes SQL-Script fuer dbaccess--von module_etl.xsl
--ETL-Schritt load: --ETL-Schritt load: Upload KERN-Modul
! echo "Scriptfile $SUPERX_DIR/db/install/schluesseltabellen/organigrammquelle_pruefen.sql ausführen" ! echo "Scriptfile $SUPERX_DIR/db/install/schluesseltabellen/organigrammquelle_pruefen.sql ausführen"

45
superx/WEB-INF/conf/edustore/db/install/masken/remove_obsolete_masks.sql

@ -1,21 +1,26 @@
--Sicherheitskritische obsolete Masken löschen --Sicherheitskritische oder obsolete Masken löschen
delete from maskeninfo where tid=70540;
delete from felderinfo where tid in (select felderinfo_id from masken_felder_bez where maskeninfo_id=70540);
delete from sachgeb_maske_bez where maskeninfo_id=70540;
delete from masken_felder_bez where maskeninfo_id=70540;
delete from maske_system_bez where maskeninfo_id=70540;
delete from themenbaum where maskeninfo_id=70540;
delete from maskeninfo where tid=70560; DELETE FROM felderinfo
delete from felderinfo where tid in (select felderinfo_id from masken_felder_bez where maskeninfo_id=70560); WHERE tid in(
delete from sachgeb_maske_bez where maskeninfo_id=70560; SELECT felderinfo_id FROM masken_felder_bez
delete from masken_felder_bez where maskeninfo_id=70560; WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700)
delete from maske_system_bez where maskeninfo_id=70560; );
delete from themenbaum where maskeninfo_id=70560; DELETE FROM maskeninfo
WHERE tid in(70520, 70540, 70550, 70560, 70700);
delete from maskeninfo where tid=70700; DELETE FROM masken_felder_bez
delete from felderinfo where tid in (select felderinfo_id from masken_felder_bez where maskeninfo_id=70700); WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700);
delete from sachgeb_maske_bez where maskeninfo_id=70700; DELETE FROM sachgeb_maske_bez
delete from masken_felder_bez where maskeninfo_id=70700; WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700);
delete from maske_system_bez where maskeninfo_id=70700; DELETE FROM maske_system_bez
delete from themenbaum where maskeninfo_id=70700; WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700);
DELETE FROM sx_mask_style
WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700);
DELETE FROM group_masken_bez
WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700);
DELETE FROM macro_masken_bez
WHERE maskeninfo_id1 in(70520, 70540, 70550, 70560, 70700)
OR maskeninfo_id2 in(70520, 70540, 70550, 70560, 70700);
DELETE FROM user_masken_bez
WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700);
DELETE FROM themenbaum
WHERE maskeninfo_id in(70520, 70540, 70550, 70560, 70700, 71640, 71580);

38
superx/WEB-INF/conf/edustore/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql

@ -0,0 +1,38 @@
--freemarker template
--Selektion aus KB:
--
-- SELECT D.systeminfo_id, P.target_server || '/' || P.document_root|| '/' || P.target_path || '/' || 'f_' || chapter_filename || '.htm' as url
-- FROM kb_chapter K, kb_document D, kb_output_project P, kb_output_project_part A
-- where D.id=K.document_id
-- and P.id=A.output_project_id
-- and A.src_document_id=D.id
-- and K.defaulttext='Konstanten'
-- ;
<#assign doku_links = [
{"systeminfo_id":"310", "link":"http://www.superx-projekt.de/doku/costage_modul/admin/f_Konstanten.htm"},
{"systeminfo_id":"121", "link":"http://www.superx-projekt.de/doku/gang_modul/admin/f_Konstanten.htm"},
{"systeminfo_id":"3", "link":"http://www.superx-projekt.de/doku/fin_modul/admin_install/f_Konstanten.htm"},
{"systeminfo_id":"7", "link":"http://www.superx-projekt.de/doku/sos_modul/admin/conf/f_Konstanten.htm"},
{"systeminfo_id":"10", "link":"http://www.superx-projekt.de/doku/cob_modul/admin/f_Konstanten.htm"},
{"systeminfo_id":"6", "link":"http://www.superx-projekt.de/doku/sva_modul/admin/f_Konstanten.htm"},
{"systeminfo_id":"140", "link":"http://www.superx-projekt.de/doku/ivs_modul/admin/f_Konstanten.htm"},
{"systeminfo_id":"7", "link":"http://www.superx-projekt.de/doku/sos_modul/admin/best/f_Konstanten.htm"},
{"systeminfo_id":"130", "link":"http://www.superx-projekt.de/doku/zul_modul/admin/f_Konstanten.htm"},
{"systeminfo_id":"200", "link":"http://www.superx-projekt.de/doku/man_modul/install/f_Konstanten.htm"},
{"systeminfo_id":"109", "link":"http://www.superx-projekt.de/doku/kenn_modul/install/f_Konstanten.htm"},
{"systeminfo_id":"300", "link":"http://www.superx-projekt.de/doku/lm_modul/conf/f_Konstanten.htm"},
{"systeminfo_id":"9", "link":"http://www.superx-projekt.de/doku/kern_modul/config/f_Konstanten.htm"},
{"systeminfo_id":"120", "link":"http://www.superx-projekt.de/doku/erfolg_modul/admin/f_Konstanten.htm"}
] />
<#if K_PLATTFORM?exists && K_PLATTFORM == 2>
<#foreach link in doku_links>
update konstanten set doku_link='${link.link}'
where systeminfo_id=${link.systeminfo_id};
</#foreach>
</#if>

100
superx/WEB-INF/conf/edustore/db/install/upgrade/cif_fuellen_key_2.sql

@ -0,0 +1,100 @@
-- Die cif wird um ICE-Schlüssel erweitert
--freemarker template
--(c) 2010 Daniel Quathamer
--Liste der cif-Schlüssel des Moduls:
--Wird in cif mit key=1 eingefügt
<#assign cif_keys_list = [
] />
--Liste der cifx-Schlüssel des Moduls:
--Wird in cif mit key=2 eingefügt
<#assign cifx_keys_list = [
{"name":"Befristungsgrund", "key":"635"},
{"name":"Quellsystem", "key":"1"}
{"name":"Art des Studienbeginns", "key":"690"},
{"name":"Art des Studienende", "key":"691"},
{"name":"Flächenart", "key":"800"},
{"name":"Prüfungsamtnummer", "key":"9008"} ,
{"name":"Zuordnungsarten zwischen Units", "key":"9015"}
] />
create temp table tmp_cif2
(
tid serial,
key smallint not null ,
hs integer not null,
apnr integer not null ,
kurz char(10),
druck varchar(30),
lang_1 char(50),
astat INTEGER ,
parent INTEGER ,
sortc1 CHAR(10) ,
bund_apnr CHAR(10) ,
sprache CHAR(3)
);
create temp table tmp_hilf(tid integer);
--zuerst Metadaten cif:
<#list cif_keys_list as cif_key>
select 'cif-Schlüssel ${cif_key.name} key= ${cif_key.key} einfügen '::varchar(255) from xdummy;
insert into tmp_cif2(key,hs,apnr,kurz,druck,lang_1
)
select 1,0,${cif_key.key},substring('${cif_key.name}' from 1 for 10),'${cif_key.name}','${cif_key.name}'
from xdummy
;
</#list>
--dann Metadaten cifx:
<#list cifx_keys_list as cifx_key>
select 'cifx-Schlüssel ${cifx_key.name} key= ${cifx_key.key} einfügen '::varchar(255) from xdummy;
insert into tmp_cif2(key,hs,apnr,kurz,druck,lang_1
)
select 2,0,${cifx_key.key},substring('${cifx_key.name}' from 1 for 10),'${cifx_key.name}','${cifx_key.name}'
from xdummy
;
</#list>
--Vorhandene Schlüssel werden ersetzt, nicht vorhandene Schlüssel bleiben:
delete from cif where '' || key ||'_' || apnr in
(select '' || key || '_' || apnr from tmp_cif2 )
;
insert into tmp_hilf select max(tid) from cif;
update tmp_hilf set tid=1 where tid is null;
insert into cif(tid,key,hs,apnr,kurz,druck,lang_1
-- ,
-- parent,
-- astat,
-- bund_apnr,
-- sortc1,
-- sprache
)
select C.tid+H.tid,key,hs,apnr,kurz,druck,lang_1
-- ,
-- parent,
-- astat,
-- bund_apnr,
-- sortc1,
-- sprache
from tmp_cif2 C, tmp_hilf H
where apnr is not null;
drop table tmp_cif2;
drop table tmp_hilf;
update cif set kurz=substring(druck from 1 for 10)
where kurz is null and druck is not null;

16
superx/WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_ids.sql

@ -307,6 +307,13 @@ drop table tmp_cifx_load;
! DOSQL $SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql ! DOSQL $SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql
! echo "Scriptfile $SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql ausführen"
! echo `date`
! DOSQL $SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql
! echo "Scriptfile $SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql ausführen" ! echo "Scriptfile $SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql ausführen"
! echo `date` ! echo `date`
@ -355,6 +362,13 @@ drop table tmp_cif_load;
! DOSQL $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql ! DOSQL $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql
! echo "Scriptfile $SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql ausführen"
! echo `date`
! DOSQL $SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql
! echo "Lade Tabelle dim_datum" ! echo "Lade Tabelle dim_datum"
! echo `date` ! echo `date`
@ -423,7 +437,7 @@ values ('user_institution','user_institution','/edit/kern/user_institution_edit.
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('themenbaum_edit','themenbaum','/edit/kern/themenbaum_edit.jsp','Themenbaum'::varchar(200),'In diesem Formular können Sie den Themenbaum bearbeiten. Bitte beachten Sie: bei Änderungen muss der Themenbaum neu geladen werden (SuperXManager)'::varchar(255)); values ('themenbaum_edit','themenbaum','/edit/kern/themenbaum_edit.jsp','Themenbaum'::varchar(200),'In diesem Formular können Sie den Themenbaum bearbeiten. Bitte beachten Sie: bei Änderungen muss der Themenbaum neu geladen werden (SuperXManager)'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('sichten','sichten','/edit/kern/sichten_edit.jsp','Sichten'::varchar(200),'In diesem Formular können Sie Sichten auf das Organigramm verwalten.'::varchar(255)); values ('sichten','sichten','/edit/kern/sichten_edit.jsp','Sichten'::varchar(200),'In diesem Formular können Sie Sichten verwalten.'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)
values ('sachgeb_maske_bez','sachgeb_maske_bez','/edit/kern/sachgeb_maske_bez_edit.jsp','Masken und Sachgebiete'::varchar(200),'In diesem Formular können Sie Masken zu Sachgebieten zuordnen.'::varchar(255)); values ('sachgeb_maske_bez','sachgeb_maske_bez','/edit/kern/sachgeb_maske_bez_edit.jsp','Masken und Sachgebiete'::varchar(200),'In diesem Formular können Sie Masken zu Sachgebieten zuordnen.'::varchar(255));
insert into tmp_db_forms (name, tablename,form_path,caption,description) insert into tmp_db_forms (name, tablename,form_path,caption,description)

12
superx/WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_pg.sql

@ -277,6 +277,12 @@ select now(), 'Scriptfile $SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.
\! DOSQL $SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql \! DOSQL $SUPERX_DIR/db/install/schluesseltabellen/cif_fuellen.sql
select now(), 'Scriptfile $SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql ausführen';
\! DOSQL $SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql
select now(), 'Scriptfile $SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql ausführen'; select now(), 'Scriptfile $SUPERX_DIR/db/install/upgrade/menu_element_upgrade.sql ausführen';
@ -323,6 +329,12 @@ select now(), 'Scriptfile $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sq
\! DOSQL $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql \! DOSQL $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql
select now(), 'Scriptfile $SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql ausführen';
\! DOSQL $SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql
select now(), 'Lade Tabelle dim_datum'; select now(), 'Lade Tabelle dim_datum';
\! sx_auto_upload_table.x dim_datum $SUPERX_DIR/db/install/schluesseltabellen/release_unloads/dim_datum.unl \! sx_auto_upload_table.x dim_datum $SUPERX_DIR/db/install/schluesseltabellen/release_unloads/dim_datum.unl

30
superx/WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_themenbaum.sql

@ -1619,36 +1619,6 @@ select
delete from tmp_themenbaum; delete from tmp_themenbaum;
insert into tmp_themenbaum(
name,
maskeninfo_id,
gueltig_seit,
gueltig_bis)
select 'OrgUnitTests'::char(255),71640,
date_val('01.01.1900'),date_val('30.09.2999')
from xdummy;
delete from tmp_themenbaum where 0 <
(select count(*) from themenbaum where maskeninfo_id=71640);
update tmp_themenbaum set parent=(select max(tid) from themenbaum where name='Entwicklung');
insert into themenbaum(
name,
maskeninfo_id,
parent,
gueltig_seit,
gueltig_bis,
erlaeuterung)
select
name,
maskeninfo_id,
parent,
gueltig_seit,
gueltig_bis,
erlaeuterung
from tmp_themenbaum;
delete from tmp_themenbaum;
insert into tmp_themenbaum( insert into tmp_themenbaum(
name, name,
maskeninfo_id, maskeninfo_id,

56
superx/WEB-INF/kern_dbforms-config_ids.xml

@ -1041,11 +1041,11 @@
<comment>Um zukünftig evtl. Hierarchien von Sichten abzubilden <comment>Um zukünftig evtl. Hierarchien von Sichten abzubilden
</comment> </comment>
</field> </field>
<field name="systeminfoid" description="Systeminfo" fieldType="int" size="6" isKey="" defaultValue="0" sortable=""> <field name="systeminfoid" description="Komponente" fieldType="int" size="6" isKey="" defaultValue="0" sortable="">
<comment>Querverweis zur Systeminfo</comment> <comment>Querverweis zur Systeminfo</comment>
</field> </field>
<field name="art" description="" fieldType="char" size="40" isKey="true" sortable=""/> <field name="art" description="Sichtart" fieldType="char" size="40" isKey="true" sortable=""/>
<field name="type" description="Type" fieldType="int" size="6" isKey="" defaultValue="10" sortable=""> <field name="type" description="Sicht-Typ" fieldType="int" size="6" isKey="" defaultValue="10" sortable="">
<comment>10 ist standardsicht, 20 ist alt.Hierarchie</comment> <comment>10 ist standardsicht, 20 ist alt.Hierarchie</comment>
</field> </field>
<field name="name_intern" description="Interner Name" fieldType="char" size="200" isKey="" sortable="true"> <field name="name_intern" description="Interner Name" fieldType="char" size="200" isKey="" sortable="true">
@ -1056,7 +1056,7 @@
<comment>Bezeichnung der Sicht, die für User angezeigt wird <comment>Bezeichnung der Sicht, die für User angezeigt wird
</comment> </comment>
</field> </field>
<field name="beschreibung" description="" fieldType="char" size="255" isKey="" sortable=""/> <field name="beschreibung" description="Beschreibung" fieldType="char" size="255" isKey="" sortable=""/>
<field name="sortnr" description="Sortiernummer" fieldType="int" size="6" isKey="" defaultValue="0" sortable=""> <field name="sortnr" description="Sortiernummer" fieldType="int" size="6" isKey="" defaultValue="0" sortable="">
<comment>kann für Sortierungen benutzt werden</comment> <comment>kann für Sortierungen benutzt werden</comment>
</field> </field>
@ -1065,14 +1065,14 @@
key,parent,name,gueltig_seit,gueltig_bis oder Prozedur, die mit key,parent,name,gueltig_seit,gueltig_bis oder Prozedur, die mit
sp_ anfängt</comment> sp_ anfängt</comment>
</field> </field>
<field name="alt_hier_id" description="" fieldType="char" size="150" isKey="" sortable=""> <field name="alt_hier_id" description="Alternat. Hierarchie ID (COB)" fieldType="char" size="150" isKey="" sortable="">
<comment>id der alt.Hier in angegebenen Quelltabelle null bei <comment>id der alt.Hier in angegebenen Quelltabelle null bei
regulärer Hierarchie</comment> regulärer Hierarchie</comment>
</field> </field>
<field name="treecfgtable" description="" fieldType="char" size="255" isKey="" sortable=""> <field name="treecfgtable" description="Alternat. Hier. Tree-Cfg (COB)" fieldType="char" size="255" isKey="" sortable="">
<comment>Tabelle mit Infos zu TreeView aus Cob</comment> <comment>Tabelle mit Infos zu TreeView aus Cob</comment>
</field> </field>
<field name="treecfgid" description="" fieldType="char" size="150" isKey="" sortable=""> <field name="treecfgid" description="Alternat. Hierarchie Tree-ID (COB)" fieldType="char" size="150" isKey="" sortable="">
<comment>id des benutzen trees aus Cob-Tabelle trees null bei <comment>id des benutzen trees aus Cob-Tabelle trees null bei
regulärer Hierachie</comment> regulärer Hierachie</comment>
</field> </field>
@ -1090,23 +1090,23 @@
<field name="sesamkey" description="" fieldType="char" size="100" isKey="" sortable=""> <field name="sesamkey" description="" fieldType="char" size="100" isKey="" sortable="">
<comment>zukünftig für erweiterte Rechtevergabe</comment> <comment>zukünftig für erweiterte Rechtevergabe</comment>
</field> </field>
<field name="standbutton" description="" fieldType="int" size="6" isKey="" defaultValue="0" sortable=""> <field name="standbutton" description="Standbutton anzeigen" fieldType="int" size="6" isKey="" defaultValue="0" sortable="">
<comment>soll der Stand geändert werden können</comment> <comment>soll der Stand geändert werden können</comment>
</field> </field>
<field name="attribut1" description="" fieldType="char" size="255" isKey="" sortable=""> <field name="attribut1" description="Attribut 1" fieldType="char" size="255" isKey="" sortable="">
<comment>bei Bedarf noch Attribute der Sicht hinterlegt werden, auf <comment>bei Bedarf noch Attribute der Sicht hinterlegt werden, auf
die man bei Bedarf Einschränkungen fahren kann</comment> die man bei Bedarf Einschränkungen fahren kann</comment>
</field> </field>
<field name="attribut2" description="" fieldType="char" size="255" isKey="" sortable=""> <field name="attribut2" description="Attribut 2" fieldType="char" size="255" isKey="" sortable="">
<comment>bei Bedarf noch Attribute der Sicht hinterlegt werden, auf <comment>bei Bedarf noch Attribute der Sicht hinterlegt werden, auf
die man bei Bedarf Einschränkungen fahren kann</comment> die man bei Bedarf Einschränkungen fahren kann</comment>
</field> </field>
<field name="attribut3" description="" fieldType="int" size="6" isKey="" sortable=""> <field name="attribut3" description="Attribut 3" fieldType="int" size="6" isKey="" sortable="">
<comment>bei Bedarf noch Attribute der Sicht hinterlegt werden, auf <comment>bei Bedarf noch ein Ganzzahl-Attribut der Sicht hinterlegt werden, auf
die man bei Bedarf Einschränkungen fahren kann</comment> die man bei Bedarf Einschränkungen fahren kann</comment>
</field> </field>
<field name="attribut4" description="" fieldType="int" size="6" isKey="" sortable=""> <field name="attribut4" description="Attribut 4" fieldType="int" size="6" isKey="" sortable="">
<comment>bei Bedarf noch Attribute der Sicht hinterlegt werden, auf <comment>bei Bedarf noch ein Ganzzahl-Attribut der Sicht hinterlegt werden, auf
die man bei Bedarf Einschränkungen fahren kann</comment> die man bei Bedarf Einschränkungen fahren kann</comment>
</field> </field>
<field name="xmlmaxentries" description="Max. Zeilen XML" fieldType="int" size="6" isKey="" sortable=""> <field name="xmlmaxentries" description="Max. Zeilen XML" fieldType="int" size="6" isKey="" sortable="">
@ -1117,10 +1117,10 @@
<field name="cacheapplet" description="" fieldType="char" size="255" isKey="" sortable=""> <field name="cacheapplet" description="" fieldType="char" size="255" isKey="" sortable="">
<comment>soll Sicht im Applet gecachet werden</comment> <comment>soll Sicht im Applet gecachet werden</comment>
</field> </field>
<field name="cachexml" description="" fieldType="char" size="255" isKey="" sortable=""> <field name="cachexml" description="Sicht Cacheing" fieldType="char" size="255" isKey="" sortable="">
<comment>soll Sicht im XML-Frontend gecachet werden</comment> <comment>soll Sicht im XML-Frontend gecachet werden</comment>
</field> </field>
<field name="aktiv" description="" fieldType="int" size="6" isKey="" defaultValue="1" sortable=""/> <field name="aktiv" description="Aktiv?" fieldType="int" size="6" isKey="" defaultValue="1" sortable=""/>
<foreign-key foreignTable="systeminfo" name="sichten_systeminfo45" displayType="select" visibleFields="name" format="%s"> <foreign-key foreignTable="systeminfo" name="sichten_systeminfo45" displayType="select" visibleFields="name" format="%s">
<reference local="systeminfoid" foreign="tid"/> <reference local="systeminfoid" foreign="tid"/>
</foreign-key> </foreign-key>
@ -2400,12 +2400,32 @@ mode="full">
</form> </form>
<form name="sichten" table="sichten" path="/edit/kern/sichten_edit.jsp" followUp="" caption="Sichten" orderBy="name" gotoHt="tid" helpfile="" maxRows="1" mode="full"> <form name="sichten" table="sichten" path="/edit/kern/sichten_edit.jsp" followUp="" caption="Sichten" orderBy="name" gotoHt="tid" helpfile="" maxRows="1" mode="full">
<description>In diesem Formular können Sie Sichten auf das Organigramm verwalten.</description> <description>In diesem Formular können Sie Sichten verwalten.</description>
<filters> <filters>
<filter mandatory="false" type="equal">art</filter> <filter mandatory="false" type="equal">art</filter>
<filter mandatory="false" type="contains">name</filter> <filter mandatory="false" type="contains">name</filter>
</filters> </filters>
<field-selection complete="true"/> <field-selection complete="false"/>
<customfield name="tid"/>
<customfield name="systeminfoid"/>
<customfield name="art" visibleSize="40"/>
<customfield name="type" visibleSize="5"/>
<customfield name="name_intern" visibleSize="40"/>
<customfield name="name" visibleSize="60"/>
<customfield name="beschreibung" visibleSize="60"/>
<customfield name="sortnr" visibleSize="10"/>
<customfield name="quelle" visibleSize="40"/>
<customfield name="alt_hier_id" visibleSize="30"/>
<customfield name="treecfgtable" visibleSize="30"/>
<customfield name="treecfgid" visibleSize="30"/>
<customfield name="standbutton" visibleSize="20"/>
<customfield name="attribut1" visibleSize="30"/>
<customfield name="attribut2" visibleSize="30"/>
<customfield name="attribut3" visibleSize="30"/>
<customfield name="attribut4" visibleSize="30"/>
<customfield name="cachexml" visibleSize="30"/>
<customfield name="aktiv" visibleSize="30"/>
</form> </form>
<form name="sachgeb_maske_bez" table="sachgeb_maske_bez" path="/edit/kern/sachgeb_maske_bez_edit.jsp" followUp="" caption="Masken und Sachgebiete" orderBy="maskeninfo_id,sachgebiete_id" gotoHt="" helpfile="" maxRows="*" mode="full"> <form name="sachgeb_maske_bez" table="sachgeb_maske_bez" path="/edit/kern/sachgeb_maske_bez_edit.jsp" followUp="" caption="Masken und Sachgebiete" orderBy="maskeninfo_id,sachgebiete_id" gotoHt="" helpfile="" maxRows="*" mode="full">

BIN
superx/WEB-INF/lib/superx5.0.jar

Binary file not shown.

49
superx/WEB-INF/patch/patch_archive/patch_2023-11-22_bash_var.sh

@ -0,0 +1,49 @@
export ANLEITUNG="Modul: KERN
PATCH 2023-11-22 Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 :
Kernmodul 5.0 Bugfixes
Layoutanpassung Themenbaum und Menüs
Bugfix kommandozeilenbasierter Aufruf von Berichten (ExecuteMask)
Bugfixes Informix
Achtung: Dieser Patch ist für SuperX 5.0 geeignet, nicht für HISinOne-BI.
Dateien:
Datei:
edit/kern/show_html_content.jsp Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Bugfix Impressum Link unter Informix
Datei:
edit/kern/webapp_manager.jsp Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=306961 : Layoutfeinheiten Webanwendung Manager
Datei:
style/superx.css Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Layout Themenbaum nach Login: Blautöne vereinheitlicht
Datei:
WEB-INF/conf/edustore/db/install/masken/remove_obsolete_masks.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen
Datei:
WEB-INF/conf/edustore/db/install/prozeduren/proc_sp_user_themen_ids.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Bugfix Themenbaum bei Informix
Datei:
WEB-INF/conf/edustore/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Doku Links Konstanten setzen bei SuperX
Datei:
WEB-INF/conf/edustore/db/install/upgrade/cif_fuellen_key_2.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : CIF-Schlüssel key=2 nachtragen (Stammdatenverwaltung)
Datei:
WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_pg.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Doku Links Konstanten setzen bei SuperX
Datei:
WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_ids.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Doku Links Konstanten setzen bei SuperX
Datei:
WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_themenbaum.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen
Datei:
WEB-INF/lib/superx5.0.jar Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=272917 : SuperX-Servlet Bugfix ExecuteMask net.sf.saxon.trans.XPathException: Cannot find a 1-argument function named...
Datei:
xml/pageComponents_html.xsl Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Icons im Breadcrumb verkleinert
Änderungen:
Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Anpassung Doku Links Konstanten
Scriptfile: $SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Themenbaum Informix
Ausgeführter SQL Befehl: drop procedure sp_user_themen(integer,date,smallint); Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Themenbaum Informix
Scriptfile: $SUPERX_DIR/db/install/prozeduren/proc_sp_user_themen_ids.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen
Scriptfile: $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql Erweiterung https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740 : CIF key=2
Scriptfile: $SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql
"
export MODULE_LIST="kern "

137
superx/WEB-INF/patch/patch_archive/patch_2023-11-22_readme.htm

@ -0,0 +1,137 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Patch </title>
<META NAME="author" content="Daniel Quathamer">
<META NAME="copyright" content="(c)2023 Daniel Quathamer">
<META NAME="date" content="24.11.2023 21:39:57">
<meta name="viewport" content="width=device-width, initial-scale=1"><style type="text/css">
@page { }
table { border-collapse:collapse; border-spacing:0; empty-cells:show }
td, th { vertical-align:top; font-size:12pt;}
h1, h2, h3, h4, h5, h6 { clear:both }
span.footnodeNumber { padding-right:1em; }
span.annotation_style_by_filter { font-size:95%; font-family:Arial; background-color:#fff000; margin:0; border:0; padding:0; }
</style><LINK REL="stylesheet" type="text/css" href="https://super-ics.de/superx/style/bulma.css">
<base target="_parent">
</head>
<body>
<div class="container has-text-left">
<div class="columns is-mobile is-left">
<div class="column is-14">
<div class="card has-background">
<div class="card">
<header class="card-header">
<div class="media-content">
<div class="media-left">
<figure class="image is-96x96"><a href="http://www.superx-projekt.de"><img src="https://super-ics.de/superx/images/superx_logo_pur.png"></a></figure>
</div>
<div class="media-right">
<p class="title is-1"></p>
<p class="title is-3">Patchnotes mit Administrationshilfe</p>
<p class="subtitle is-5">made by MEMTEXT</p>
<p class="subtitle is-5"></p>
</div>
</div>
</header>
<div class="card-content">
<div class="media">
<div class="media-left">
<figure class="image is-48x48"><img src="https://super-ics.de/superx/images/context_add.svg"></figure>
</div>
<div class="media-content">
<p class="title is-5">Modul: KERN</p>
<p class="subtitle is-5">PATCH 2023-11-22</p>
</div>
</div>
<div class="content">
<p><strong>Achtung: Der Patch ist nur für aktuelle Modulversionen geeignet!</strong></p>
<p><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>:
</p>
<patch-description feature_id="307740">
<ul><strong>Kernmodul 5.0 Bugfixes </strong>
<li>Layoutanpassung Themenbaum und Menüs</li>
<li>Bugfix kommandozeilenbasierter Aufruf von Berichten (ExecuteMask)</li>
<li>Bugfixes Informix</li>
</ul>
<p>
<strong>Achtung:</strong> Dieser Patch ist für SuperX 5.0 geeignet, nicht für HISinOne-BI.<br>
</p>
</patch-description>
<p>Dateien:</p>
<ul type="circle">
<li>Datei: edit/kern/show_html_content.jsp<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Bugfix Impressum Link unter Informix
</li>
<li>Datei: edit/kern/webapp_manager.jsp<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=306961">306961</a></strong>: Layoutfeinheiten Webanwendung Manager
</li>
<li>Datei: style/superx.css<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Layout Themenbaum nach Login: Blautöne vereinheitlicht
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/masken/remove_obsolete_masks.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/prozeduren/proc_sp_user_themen_ids.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Bugfix Themenbaum bei Informix
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Doku Links Konstanten setzen bei SuperX
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/upgrade/cif_fuellen_key_2.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: CIF-Schlüssel key=2 nachtragen (Stammdatenverwaltung)
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_pg.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Doku Links Konstanten setzen bei SuperX
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_ids.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Doku Links Konstanten setzen bei SuperX
</li>
<li>Datei: WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_themenbaum.sql<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen
</li>
<li>Datei: WEB-INF/lib/superx5.0.jar<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=272917">272917</a></strong>: SuperX-Servlet Bugfix ExecuteMask net.sf.saxon.trans.XPathException: Cannot find a 1-argument function named...
</li>
<li>Datei: xml/pageComponents_html.xsl<br><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Icons im Breadcrumb verkleinert
</li>
</ul>
<p>Änderungen:</p>
<ul type="circle">
<li><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Anpassung Doku Links Konstanten<br>Scriptfile: $SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql
</li>
<li><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Themenbaum Informix<br>
Ausgeführter SQL Befehl: drop procedure sp_user_themen(integer,date,smallint);
</li>
<li><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Themenbaum Informix<br>Scriptfile: $SUPERX_DIR/db/install/prozeduren/proc_sp_user_themen_ids.sql
</li>
<li><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen<br>Scriptfile: $SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql
</li>
<li><strong> Erweiterung <a href="https://hiszilla.his.de/hiszilla/show_bug.cgi?id=307740">307740</a></strong>: CIF key=2<br>Scriptfile: $SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql
</li>
</ul>
<hr>
</div>
<div class="content">
<h3>Download</h3>
<ul>
<li><strong>Patch SuperX <a href="http://www.superx-projekt.de/dist/patch/patch_2023-11-22_superx_utf8.zip">klassisch in UTF8</a></strong></li>
<li><strong>Patch <a href="http://www.superx-projekt.de/dist/patch/patch_2023-11-22_superx_iso.zip">klassisch in ISO</a></strong></li>
</ul>
<p><small>In der klassischen SuperX-Variante liegt das db und webserver Verzeichnis auf einer Ebene meistens unterhalb von /home/superx.
Bei der "webapps"-Variante liegt alles unterhalb von webapps/superx. Dies ist der Standard in HISinOne-BI.</small></p>
</div>
<footer class="card-footer"><a href="http://download.superx-projekt.de/" class="card-footer-item"> Link zur Downloadseite
<figure class="image is-48x48"><img src="https://super-ics.de/superx/images/downloadblck.svg"></figure></a><a href="http://www.superx-projekt.de/doku/kern_modul/install/f_Patcheinspielen.htm" class="card-footer-item"> Hinweise zur Patchinstallation
<figure class="image is-48x48"><img src="https://super-ics.de/superx/images/bookblck.svg"></figure></a><a href="https://super-ics.de/impressum.htm" class="card-footer-item"> Impressum </a><a href="https://super-ics.de/datenschutz_public.htm" class="card-footer-item"> Datenschutz </a></footer>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

73
superx/WEB-INF/patch/xml/patch_2023-11-22.xml

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="UTF-8"?>
<patch patch_id="2023-11-22">
<systeme>
<!--<system name="his1" codierung="utf8"/>-->
<system name="superx" codierung="utf8"/>
<system name="superx" codierung="iso"/>
</systeme>
<module name="kern" systeminfo_id="xxx" inst_from="xx">
<patch-description feature_id="307740">
<ul><strong>Kernmodul 5.0 Bugfixes </strong>
<li>Layoutanpassung Themenbaum und Menüs</li>
<li>Bugfix kommandozeilenbasierter Aufruf von Berichten (ExecuteMask)</li>
<li>Bugfixes Informix</li>
</ul>
<p>
<strong>Achtung:</strong> Dieser Patch ist für SuperX 5.0 geeignet, nicht für HISinOne-BI.<br />
</p>
</patch-description>
<patch-test>
<!-- Bisher nur sql erlaubt. Ergebniss muss 0 sein, um zu erlauben, dass der Patch eingespielt wird! -->
<nativeaction sql="select 0 from xdummy where (select count(*) from db_version where his_system='kern') > 0 " scriptfile="" database=""/>
</patch-test>
<patch-data>
<files>
<file path="edit/kern/show_html_content.jsp"><patch-description feature_id="307740">Bugfix Impressum Link unter Informix</patch-description></file>
<file path="edit/kern/webapp_manager.jsp"><patch-description feature_id="306961">Layoutfeinheiten Webanwendung Manager</patch-description></file>
<file path="style/superx.css"><patch-description feature_id="307740">Layout Themenbaum nach Login: Blautöne vereinheitlicht</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/masken/remove_obsolete_masks.sql"><patch-description feature_id="307740">Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/prozeduren/proc_sp_user_themen_ids.sql"><patch-description feature_id="307740">Bugfix Themenbaum bei Informix</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql"><patch-description feature_id="307740">Doku Links Konstanten setzen bei SuperX</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/upgrade/cif_fuellen_key_2.sql"><patch-description feature_id="307740">CIF-Schlüssel key=2 nachtragen (Stammdatenverwaltung)</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_pg.sql"><patch-description feature_id="307740">Doku Links Konstanten setzen bei SuperX</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_ids.sql"><patch-description feature_id="307740">Doku Links Konstanten setzen bei SuperX</patch-description></file>
<file path="WEB-INF/conf/edustore/db/install/upgrade/kern_upgrade_themenbaum.sql"><patch-description feature_id="307740">Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen</patch-description></file>
<file path="WEB-INF/lib/superx5.0.jar"><patch-description feature_id="272917">SuperX-Servlet Bugfix ExecuteMask net.sf.saxon.trans.XPathException: Cannot find a 1-argument function named...</patch-description></file>
<file path="xml/pageComponents_html.xsl"><patch-description feature_id="307740">Icons im Breadcrumb verkleinert</patch-description></file>
</files>
<database name="superx">
<!-- TODO: hier können beliebige Elemente der normalen Modul-XML stehen-->
<masken>
</masken>
</database>
<upgrade>
<upgrade-step>
<action>
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/schluesseltabellen/konstanten_doku_links_setzen.sql" database=""><patch-description feature_id="307740">Anpassung Doku Links Konstanten</patch-description></nativeaction>
<nativeaction sql="drop procedure sp_user_themen(integer,date,smallint);" scriptfile="" database="INFORMIX"><patch-description feature_id="307740">Themenbaum Informix</patch-description></nativeaction>
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/prozeduren/proc_sp_user_themen_ids.sql" database="INFORMIX"><patch-description feature_id="307740">Themenbaum Informix</patch-description></nativeaction>
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/masken/remove_obsolete_masks.sql" database=""><patch-description feature_id="307740">Masken Verwundbarkeitstest und Test LiveMapping unsichtbar machen</patch-description></nativeaction>
<nativeaction sql="" scriptfile="$SUPERX_DIR/db/install/upgrade/cif_fuellen_key_2.sql" database=""><patch-description feature_id="307740">CIF key=2</patch-description></nativeaction>
</action>
</upgrade-step>
</upgrade>
</patch-data>
</module>
</patch>

94
superx/edit/kern/webapp_manager.jsp

@ -23,13 +23,11 @@
function getVersion() function getVersion()
{ {
//alert("klappt");
var xhttp = new XMLHttpRequest(); var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() { xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) { if (this.readyState == 4 && this.status == 200) {
document.getElementById("version").innerHTML = this.responseText; document.getElementById("version").innerHTML = this.responseText;
//alert(this.responseText);
} }
}; };
xhttp.open("GET", "../../sxrest/version", true); xhttp.open("GET", "../../sxrest/version", true);
@ -37,13 +35,11 @@ var xhttp = new XMLHttpRequest();
} }
function ManagerCacheRefresh() function ManagerCacheRefresh()
{ {
//alert("klappt");
var xhttp = new XMLHttpRequest(); var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() { xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) { if (this.readyState == 4 && this.status == 200) {
document.getElementById("ManagerCacheStatus").innerHTML = this.responseText; document.getElementById("ManagerCacheStatus").innerHTML = this.responseText;
//alert(this.responseText);
} }
}; };
xhttp.open("GET", "../../sxrest/managercache_refresh", true); xhttp.open("GET", "../../sxrest/managercache_refresh", true);
@ -51,42 +47,26 @@ var xhttp = new XMLHttpRequest();
} }
function TransletCacheRefresh() function TransletCacheRefresh()
{ {
//alert("klappt");
var xhttp = new XMLHttpRequest(); var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() { xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) { if (this.readyState == 4 && this.status == 200) {
document.getElementById("TransletCacheStatus").innerHTML = this.responseText; document.getElementById("TransletCacheStatus").innerHTML = this.responseText;
//alert(this.responseText);
} }
}; };
xhttp.open("GET", "../../sxrest/transletcache_refresh", true); xhttp.open("GET", "../../sxrest/transletcache_refresh", true);
xhttp.send(); xhttp.send();
} }
function toggleDevelopmentMode(modus)
{
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("toggleDevelopmentmodeStatus").innerHTML = this.responseText;
//alert(this.responseText);
}
};
xhttp.open("POST", "../../sxrest/toggle_developmentmode/"+modus, true);
xhttp.send();
}
function getLogs(logtype,caption,loglines) function getLogs(logtype,caption,loglines)
{ {
document.getElementById("MaskHeader").innerHTML="Protokolle"; document.getElementById("MaskHeader").innerHTML=(logtype.startsWith("server")?"Server-Logdateien":"Maskenprotokolle");
document.getElementById("MaskSubHeader").innerHTML=caption; document.getElementById("MaskSubHeader").innerHTML=caption;
var xhttp = new XMLHttpRequest(); var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() { xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) { if (this.readyState == 4 && this.status == 200) {
document.getElementById("Inhalt").innerHTML = this.responseText; document.getElementById("Inhalt").innerHTML = this.responseText;
//alert(this.responseText);
} }
}; };
xhttp.open("GET", "../../sxrest/logs/"+logtype+"?loglines="+loglines, true); xhttp.open("GET", "../../sxrest/logs/"+logtype+"?loglines="+loglines, true);
@ -229,16 +209,15 @@ if(tab == null)
<div class="column is-3 "> <div class="column is-3 ">
<aside class="menu is-hidden-mobile"> <aside class="menu is-hidden-mobile">
<ul class="menu-list">
<li><a class="is-active">Untermenü</a></li>
</ul>
<% <%
if(tab.equals("mask")) if(tab.equals("mask"))
{ {
%> %>
<p class="menu-label"> <ul class="menu-list">
Maskenprotokolle <li><a class="is-active">Maskenprotokolle</a></li>
</p> </ul>
<ul class="menu-list"> <ul class="menu-list">
<li><a onClick="getLogs('activity','Letzte Maske',100000);">Letzte Maske</a></li> <li><a onClick="getLogs('activity','Letzte Maske',100000);">Letzte Maske</a></li>
<li><a onClick="getLogs('fmsql','SQL vor Freemarker-Transformation',100000);">SQL vor Freemarker-Transf.</a></li> <li><a onClick="getLogs('fmsql','SQL vor Freemarker-Transformation',100000);">SQL vor Freemarker-Transf.</a></li>
@ -251,9 +230,10 @@ if(tab.equals("mask"))
if(tab.equals("log")) if(tab.equals("log"))
{ {
%> %>
<p class="menu-label"> <ul class="menu-list">
Server-Logdateien <li><a class="is-active">Server-Logdateien</a></li>
</p> </ul>
<ul class="menu-list"> <ul class="menu-list">
<li><a onClick="getLogs('serverlog','Server log',document.forms['log'].elements['loglines'].value);">Server log</a></li> <li><a onClick="getLogs('serverlog','Server log',document.forms['log'].elements['loglines'].value);">Server log</a></li>
<li><a onClick="getLogs('serverlogsql','SQL-Log',document.forms['log'].elements['loglines'].value);">SQL log</a></li> <li><a onClick="getLogs('serverlogsql','SQL-Log',document.forms['log'].elements['loglines'].value);">SQL log</a></li>
@ -351,14 +331,22 @@ if(tab.equals(""))
if(tab.equals("mask")) if(tab.equals("mask"))
{ {
%> %>
<section class="section">
<section class="hero is-info welcome is-small">
<div class="container" id="loadMask" > <div class="hero-body">
<h1 class="title" id="MaskHeader">Masken-Verwaltung</h1> <div class="container">
<h2 class="subtitle"> <h1 class="title" id="MaskHeader">
<div id="MaskSubHeader">Wählen Sie links das Masken-Menü</div> Masken-Verwaltung
</h1>
<h2 class="subtitle" id="MaskSubHeader">
Wählen Sie links das Masken-Menü
</h2> </h2>
</div>
</div>
</section>
<section class="section">
<div class="container" id="loadMask" >
<div class="bd-snippet-code highlight-full "> <div class="bd-snippet-code highlight-full ">
<figure class="highlight"><div class="buttons has-addons is-right"> <figure class="highlight"><div class="buttons has-addons is-right">
@ -381,12 +369,21 @@ if(tab.equals("mask"))
if(tab.equals("db")) if(tab.equals("db"))
{ {
%> %>
<section class="section"> <section class="hero is-info welcome is-small">
<div class="hero-body">
<div class="container"> <div class="container">
<h1 class="title" id="MaskHeader">Datenbank</h1> <h1 class="title" id="MaskHeader">
<h2 class="subtitle"> Datenbank
<div id="MaskSubHeader">Verbindungsparameter</div> </h1>
<h2 class="subtitle" id="MaskSubHeader">
Verbindungsparameter
</h2> </h2>
</div>
</div>
</section>
<section class="section">
<div class="container">
<p align="left"><% <p align="left"><%
Enumeration propNames = props.propertyNames(); Enumeration propNames = props.propertyNames();
while (propNames.hasMoreElements()) { while (propNames.hasMoreElements()) {
@ -408,13 +405,22 @@ if(tab.equals("db"))
if(tab.equals("log")) if(tab.equals("log"))
{ {
%> %>
<section class="hero is-info welcome is-small">
<div class="hero-body">
<div class="container">
<h1 class="title" id="MaskHeader">
Server-Logdateien
</h1>
<h2 class="subtitle" id="MaskSubHeader">
Logtyp
</h2>
</div>
</div>
</section>
<section class="section"> <section class="section">
<form name="log" > <form name="log" >
<div class="container" id="loadMask" > <div class="container" id="loadMask" >
<h1 class="title" id="MaskHeader">Server-Logdateien</h1>
<h2 class="subtitle">
<div id="MaskSubHeader">Logtyp</div>
</h2>
<div> (max. letzte <input type="text" size="5" maxlength="5" name="loglines" value="100" /> Zeilen) <div> (max. letzte <input type="text" size="5" maxlength="5" name="loglines" value="100" /> Zeilen)
<textarea id="Inhalt" name="Inhalt" class="textarea" placeholder="Inhalt..." rows="20"></textarea> <textarea id="Inhalt" name="Inhalt" class="textarea" placeholder="Inhalt..." rows="20"></textarea>

4
superx/style/superx.css

@ -59,8 +59,8 @@ table.ergtabelle th, table.ergtabelle td {
padding: 5px; padding: 5px;
} }
a:link { color:#222289; text-decoration:none } a:link { color:#1338DB; text-decoration:none }
a:visited { color:#222289; text-decoration:none } a:visited { color:#1338DB; text-decoration:none }
a:active { background-color:white;color:blue; text-decoration:none } a:active { background-color:white;color:blue; text-decoration:none }
/*H1 { /*H1 {
margin-left:30px} margin-left:30px}

2
superx/xml/pageComponents_html.xsl

@ -237,7 +237,7 @@ Bit zur Lösung des Problems bleibt dies auf Kommentar
</a> </a>
<img src="../images/icons/resultset_next.svg" class="svg_icon" alt="" style="margin-left: 2px; top: 5px; position:relative;" /> <img src="../images/icons/resultset_next.svg" class="svg_mini_icon" alt="" style="margin-left: 2px; position:relative;" />
</li> </li>
</xsl:for-each> </xsl:for-each>

2
superx/xml/tabelle2jasperreport_generic.xsl

@ -319,7 +319,7 @@ leftMargin="16" rightMargin="16" topMargin="14" bottomMargin="16">
<xsl:text>java.util.Date</xsl:text> <xsl:text>java.util.Date</xsl:text>
</xsl:when> </xsl:when>
<xsl:when test="@typ='8'"> <xsl:when test="@typ='8'">
<xsl:text>java.lang.Timestamp</xsl:text> <xsl:text>java.sql.Timestamp</xsl:text>
</xsl:when> </xsl:when>
<xsl:when test="@typ='9'"> <xsl:when test="@typ='9'">
<xsl:text>java.lang.Time</xsl:text> <xsl:text>java.lang.Time</xsl:text>

Loading…
Cancel
Save