Heim > Datenbank > MySQL-Tutorial > Wie übergebe ich eine dynamische SQL-Parameterliste „IN' in JasperReports?

Wie übergebe ich eine dynamische SQL-Parameterliste „IN' in JasperReports?

Mary-Kate Olsen
Freigeben: 2024-12-31 08:15:10
Original
569 Leute haben es durchsucht

How to Pass a Dynamic SQL

Übergabe der SQL „IN“-Parameterliste in JasperReports

Beim Generieren von JasperReports mit SQL-Abfragen unter Verwendung des „IN“-Prädikats kann eine dynamische Parameterzuweisung erfolgen durch Java-Programmierung erreicht werden. Lassen Sie uns untersuchen, wie Sie den Wert des Parameters „roles“ dynamisch festlegen.

Die betreffende Abfrage:

SELECT customer_name AS NAME,
       id_customer AS ID
  FROM customer
 WHERE customer_role IN ($P{roles})
Nach dem Login kopieren

Parameterzuweisung in Java

JasperReports bietet eine spezielle Variable, $X, zum dynamischen Festlegen von Parametern. Um dem Parameter „roles“ eine Liste von Werten zuzuweisen, verwenden Sie die folgende Syntax:

select * from customer where $X{IN,customer_role,roles}
Nach dem Login kopieren

Hier ist ein Beispiel für das programmgesteuerte Festlegen des Parameterwerts in Java:

// Get a JasperReports instance
JasperPrint jasperPrint = jasperReport.fill(parametersMap, dataSource);

// Create a new parameter list
java.util.List<JRParameter> updatedParameters = new ArrayList<>();

// Add the "roles" parameter with the updated value
updatedParameters.add(new JRParameter("roles", ArrayList.class, roles));

// Set the parameter list
jasperPrint.setParameters(updatedParameters);
Nach dem Login kopieren

Zusätzliche Hinweise

  • Die Rollenliste sollte vom Typ sein ArrayList.
  • Weitere Informationen zur Parameterbehandlung finden Sie in der JasperReports-Dokumentation.

Das obige ist der detaillierte Inhalt vonWie übergebe ich eine dynamische SQL-Parameterliste „IN' in JasperReports?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage