[JAVA] Passen Sie die Ausgabe mit Wagbys CSV-Download-Funktion an

Motivation

Ich wollte den Inhalt der Ausgabe-CSV bearbeiten, während ich die Standard-CSV-Download-Funktion verwendete.

Da es nicht auf der Support-Seite war, werde ich beschreiben, was ich überprüft habe.

Wagby-Version

8.2.0

Was du machen willst

Vermeiden Sie das Drucken von CSV-Kopfzeilen

Erste Stufe

Es wird anscheinend nicht empfohlen, dies für die von Wagby erstellte Anwendung zu tun. Wenn es mit einem ETL-Tool separat verarbeitet werden kann, ist dies möglicherweise einfacher.

Bei der Ausführung einer mit Wagby erstellten Anwendung

Es ist erforderlich, eine Klasse zu erstellen, die das automatisch generierte Java erbt, und den Inhalt der CSV-Ausgabemethode zu ändern.

Zu erbende Klasse: Download Modellname ProcessBean

DownloadTestProcessBean.java


public Object outputAllData(DbDownloadProcessor out, Map paramMap, boolean getallmodelitem) {
    ...
    // Output header line
    Collection<String> targetitems =
        (Collection<String>) getParameter("targetitems");
    String[] _data = ((jp.jasminesoft.wagby.app.test.TestPCSVHelper)p.appctx.getBean("TestPCSVHelper")).toCsvDataHeader(null, colMap, (ActionParameter)p, getallmodelitem, targetitems);
    out.write(_data);
    ...
}

Eine CSV ohne Header kann erstellt werden, indem eine Methode erstellt wird, die die durch Überschreiben der obigen Methode beschriebene Verarbeitung der Headerausgabe löscht.

Dieser Prozess kann sich ändern, wenn die Wagby-Version aktualisiert wird. Überprüfen Sie daher besser, ob sich der geerbte Prozess beim Aktualisieren der Version geändert hat.

Ändern (formatieren) Sie den Inhalt jeder Ausgabespalte

Da es nicht auf der Support-Seite vorgestellt wird, scheint es sich nicht um einen benutzerdefinierten Standardpunkt zu handeln, aber zum Zeitpunkt des Lesens und der Ausgabe jeder Zeile wird ein Javascript aufgerufen, und es ist möglich, den Inhalt dort zu bearbeiten.

Javascript-Name: Modellname + Helper_beforeShowInDownload.js

TestHelper_beforeShowInDownload.js


/**
 *Von Java aufgerufene Methoden
 */
function process() {
    //Der Inhalt des Geschäftsmodells kann neu geschrieben werden
    test.id = "hoge";
}

Zu diesem Zeitpunkt speichert nicht nur die Spaltenausgabe in CSV, sondern auch das Geschäftsmodell alle Datensätze des Modells.

Recommended Posts

Passen Sie die Ausgabe mit Wagbys CSV-Download-Funktion an
Ausgabe einer CSV-Datei mit offener CSV
[Ruby on Rails] CSV-Ausgabefunktion
Implementieren Sie die CSV-Download-Funktion in Rails
[Tutorial] Eclipse herunterladen → Anwendung mit Java ausführen (Plejaden)
Ich habe versucht, CSV mit Outsystems zu lesen und auszugeben
Feder mit Kotorin ―― 3. Auslassen von Wellenklammern aus der Funktion