Compare commits

...

1 Commits

  1. 29
      src/de/superx/common/Maske.java
  2. 12
      src/de/superx/servlet/SuperXmlTabelle.java

29
src/de/superx/common/Maske.java

@ -2531,17 +2531,24 @@ public class Maske extends NamedIdObject implements Serializable { @@ -2531,17 +2531,24 @@ public class Maske extends NamedIdObject implements Serializable {
return result;
}
/**
* Normalerweise Maskenname nur bei JasperReports der Stylesheetname
*
* @return
*/
public String getExportName() {
String result = getName();
if (selectedTableStylesheet != null && selectedTableStylesheet.getFilename().indexOf(".jrxml") > -1)
result = selectedTableStylesheet.getCaption();
return result;
}
/**
* Normalerweise Maskenname nur bei JasperReports der Stylesheetname
*
* @return
*/
public String getExportName() {
String result = getName();
if (selectedTableStylesheet != null && selectedTableStylesheet.getFilename().indexOf(".jrxml") > -1) result = selectedTableStylesheet.getCaption();
if (map.containsKey("exportfilename"))
{
if (map.get("exportfilename")==null||map.get("exportfilename").toString().trim().equals(""))
{
throw new IllegalStateException("Die Maske definiert exportfilename, dieser ist aber leer. Masken-SQL prüfen");
}
result=map.get("exportfilename").toString();
}
return result;
}
public String getFullTableXml(String mandantenId, SxUser sxuser, HttpServletRequest request, Locale locale)
throws TransformerConfigurationException, TemplateException, IOException, SQLException,

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

@ -501,7 +501,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet { @@ -501,7 +501,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
response.reset();
//response.setContentType("application/vnd.ms-excel");
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getName()) + ".xlsx");
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getExportName()) + ".xlsx");
response.setHeader("Cache-Control", "expires=0");
response.setContentLength(outStream.size());
ServletOutputStream sos;
@ -921,7 +921,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet { @@ -921,7 +921,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
// neu MB
if (maske.getSelectedTableStylesheetFilename() != null && maske.getSelectedTableStylesheetFilename().equals("tabelle_xml.xsl")) {
response.setContentType("application/x-xml; charset=" + SqlStringUtils.getEncoding());
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getName()) + ".xml");
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getExportName()) + ".xml");
response.setHeader("Cache-Control", "expires=0");
// hier wird für xml-output localiziert für andere
// formate in xmlTransformer könnte
@ -1011,7 +1011,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet { @@ -1011,7 +1011,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
// 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.getExportName()) + filename_extension);
response.setHeader("Cache-Control", "expires=0");
}
}
@ -1019,7 +1019,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet { @@ -1019,7 +1019,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
getServletConfig(), request, response,
getMandantenID(), getBrowser());
xmlTransformer.setMaske(maske);
xmlTransformer.transform(maske.getName(),
xmlTransformer.transform(maske.getExportName(),
maske.getTmpFiles(), currentXml, desiredLocale,
maske.getSelectedTableStylesheetFilename(),
maske.getSelectedTableStylesheetContenttype(contenttype),
@ -1060,7 +1060,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet { @@ -1060,7 +1060,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
private void csvExport() throws IOException {
StringBuffer csv = maske.getCSV(getMandantenID());
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getName()) + ".csv");
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getExportName()) + ".csv");
response.setHeader("Cache-Control", "expires=0");
sendBack(csv.toString(), "text/csv", de.superx.servlet.SuperXManager.csvEncoding);
@ -1860,7 +1860,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet { @@ -1860,7 +1860,7 @@ public class SuperXmlTabelle extends AbstractSuperXServlet {
String filename_extension=".jrxml";
OutputStream out = response.getOutputStream();
// open browser download dialogue
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getName()) + filename_extension);
response.setHeader("Content-disposition", "attachment; filename=" + FileUtils.removeProblemChars(maske.getExportName()) + filename_extension);
response.setHeader("Cache-Control", "expires=0");
String jrxmlFileContent = de.memtext.util.FileUtils.getFileContentsWithEncoding(jrxmlFilePath, SqlStringUtils.getEncoding());

Loading…
Cancel
Save