]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
0aff9ca5bbefb25a3137a4245d1a675adec94ed7
[tmp/jakarta-migration.git] /
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Created with Jaspersoft Studio version 6.20.1.final using JasperReports Library version 6.20.1-7584acb244139816654f64e2fd57a00d3e31921e  -->
3 <jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="summary_documentation_consultation" language="javascript" pageWidth="1500" pageHeight="800" orientation="Landscape" columnWidth="100" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" isIgnorePagination="true" uuid="e9c71592-7651-43d3-b4ac-6eea5e049ac0">
4         <property name="com.jaspersoft.studio.data.sql.tables" value="" />
5         <property name="com.jaspersoft.studio.data.defaultdataadapter" value="nuxeo" />
6         <property name="com.jaspersoft.studio.data.sql.SQLQueryDesigner.sash.w1" value="193" />
7         <property name="com.jaspersoft.studio.data.sql.SQLQueryDesigner.sash.w2" value="800" />
8         <property name="com.jaspersoft.studio.property.dataset.dialog.DatasetDialog.sash.w1" value="625" />
9         <property name="com.jaspersoft.studio.property.dataset.dialog.DatasetDialog.sash.w2" value="361" />
10         <style name="Column header" fontName="SansSerif" fontSize="12" isBold="true" />
11         <style name="Detail" fontName="SansSerif" fontSize="12" />
12         <parameter name="deurnfields" class="java.lang.String" isForPrompting="false">
13                 <defaultValueExpression><![CDATA["onbehalfof,cultures,summary_types,sites,exit_owners,status"]]></defaultValueExpression>
14         </parameter>
15         <parameter name="tenantid" class="java.lang.String" isForPrompting="false">
16                 <defaultValueExpression><![CDATA["1"]]></defaultValueExpression>
17         </parameter>
18         <parameter name="csidlist" class="java.lang.String" isForPrompting="false" />
19         <parameter name="csids" class="java.lang.String" isForPrompting="false">
20                 <defaultValueExpression><![CDATA[$P{csidlist} != null ? ("'" + $P{csidlist}.replace(/,/g, "','") + "'") : "NOVALUE"]]></defaultValueExpression>
21         </parameter>
22         <parameter name="whereclause_relation" class="java.lang.String" isForPrompting="false">
23                 <defaultValueExpression><![CDATA[$P{csids} != "NOVALUE" ? ( "AND relation.subjectcsid IN (" + $P{csids} + ")" ) : ""]]></defaultValueExpression>
24         </parameter>
25         <parameter name="whereclause" class="java.lang.String" isForPrompting="false">
26                 <defaultValueExpression><![CDATA[$P{csids} != "NOVALUE" ? ( "WHERE summary_hierarchy.name IN (" + $P{csids} + ")" ) : ""]]></defaultValueExpression>
27         </parameter>
28         <queryString language="SQL">
29                 <![CDATA[WITH related_objects AS (
30         SELECT hierarchy.id as object_id,
31                 relation.objectcsid,
32                 relation.subjectcsid as repatriation_csid
33         FROM relations_common relation
34                 INNER JOIN hierarchy on hierarchy.name = relation.objectcsid
35     INNER JOIN misc ON misc.id = relation.id
36     AND misc.lifecyclestate != 'deleted'
37         WHERE relation.objectdocumenttype = 'CollectionObject'
38                 AND relation.subjectdocumenttype = 'SummaryDocumentation'
39                 $P!{whereclause_relation}
40 ),
41 related_exits AS (
42         SELECT DISTINCT ON (objs.repatriation_csid, hierarchy.id) objs.objectcsid,
43                 objs.repatriation_csid,
44                 hierarchy.id as exit_id,
45                 relation.subjectcsid as exit_csid
46         FROM related_objects objs
47                 INNER join relations_common relation on relation.objectcsid = objs.objectcsid
48                 AND relation.subjectdocumenttype = 'Exit'
49                 INNER JOIN hierarchy on hierarchy.name = relation.subjectcsid
50     INNER JOIN misc ON misc.id = relation.id
51     AND misc.lifecyclestate != 'deleted'
52 )
53 SELECT summary.documentationnumber,
54   summary.originationdate,
55   coalesce(titles.titles, '{}') AS titles,
56   coalesce(summarytypes.summary_types, '{}') AS summary_types,
57   coalesce(partiesinvolved.onbehalfof, '{}') AS onbehalfof,
58   coalesce(culturalgroup.cultures, '{}') AS cultures,
59   summary_status.status,
60   summary_status.statusdate,
61   coalesce(object_count.sacred_object_count, 0) AS sacred_object_count,
62   coalesce(object_count.ufo_count, 0) AS ufo_count,
63   coalesce(object_count.cultural_patrimony_count, 0) AS cultural_patrimony_count,
64   coalesce(object_count.lineal_descendent_count, 0) AS lineal_descendent_count,
65   coalesce(archaeological_sites.sites, '{}') AS sites,
66   coalesce(consultations.log_total, 0) AS log_total,
67   coalesce(exits.exit_owners, '{}') AS exit_owners,
68   coalesce(exits.exit_dates, '{}') AS exit_dates
69 FROM hierarchy summary_hierarchy
70         INNER JOIN misc ON misc.id = summary_hierarchy.id
71         AND misc.lifecyclestate != 'deleted'
72         INNER JOIN summarydocumentations_common summary ON summary.id = summary_hierarchy.id
73         LEFT JOIN (
74                 -- Summary title
75                 SELECT title.id AS summary_id,
76                         array_agg(title.item) AS titles
77                 FROM summarydocumentations_common_titles title
78                 GROUP BY title.id
79         ) titles ON titles.summary_id = summary_hierarchy.id
80         LEFT JOIN (
81                 -- Summary types
82                 SELECT summarytype.id AS summary_id,
83                         array_agg(summarytype.item) AS summary_types
84                 FROM summarydocumentations_common_types summarytype
85                 GROUP BY summarytype.id
86         ) summarytypes ON summarytypes.summary_id = summary_hierarchy.id
87         LEFT JOIN (
88                 -- Organizations pulled from on behalf field on Summary record
89                 SELECT hierarchy.parentid,
90                         array_agg(party.involvedonbehalfof) as onbehalfof
91                 FROM hierarchy
92                         INNER JOIN partiesinvolvedgroup party ON party.id = hierarchy.id
93                 WHERE hierarchy.name = 'summarydocumentations_common:partiesInvolvedGroupList'
94                 GROUP BY hierarchy.parentid
95         ) partiesinvolved ON partiesinvolved.parentid = summary_hierarchy.id
96         LEFT JOIN (
97                 SELECT hierarchy.parentid,
98                         array_agg(culturalgroup.culture) AS cultures
99                 FROM hierarchy
100                         INNER JOIN culturalgroup ON culturalgroup.id = hierarchy.id
101                         AND hierarchy.name = 'summarydocumentations_common:culturalGroupList'
102                 GROUP BY hierarchy.parentid
103         ) culturalgroup ON culturalgroup.parentid = summary.id
104         LEFT JOIN (
105                 -- Related archaeological sites
106                 SELECT hierarchy.parentid,
107                         array_agg(asg.archaeologicalsite) AS sites
108                 FROM hierarchy
109                         INNER JOIN archaeologicalsitegroup asg ON asg.id = hierarchy.id
110                 WHERE hierarchy.name = 'summarydocumentations_common:archaeologicalSiteGroupList'
111                 GROUP BY hierarchy.parentid
112         ) archaeological_sites ON archaeological_sites.parentid = summary.id
113         LEFT JOIN (
114                 -- Current Status: most recent
115                 SELECT DISTINCT ON (hierarchy.parentid) hierarchy.parentid,
116                         status_group.status,
117                         status_group.statusdate
118                 FROM hierarchy
119                         INNER JOIN statusgroup status_group ON status_group.id = hierarchy.id
120                 WHERE hierarchy.name = 'summarydocumentations_common:statusGroupList'
121                 ORDER BY hierarchy.parentid,
122                         status_group.statusdate DESC NULLS LAST
123         ) summary_status ON summary_status.parentid = summary_hierarchy.id
124         LEFT JOIN LATERAL (
125                 -- Related Object - Object Count
126                 -- type is sacred object, cultural partrimony, UFO and lineal descent
127                 -- Use regex matching because the refnames can contain subsets of the others,
128                 -- so occasionally do things like use a word boundary (\y) to avoid overlaps
129                 SELECT objs.repatriation_csid,
130                         sum(
131                                 CASE
132                                         WHEN ocg.objectcounttype ~ 'sacred_object' THEN ocg.objectcount
133                                         ELSE 0
134                                 END
135                         ) AS sacred_object_count,
136                         sum(
137                                 CASE
138                                         WHEN ocg.objectcounttype ~ 'unassociated_funerary' THEN ocg.objectcount
139                                         ELSE 0
140                                 END
141                         ) AS ufo_count,
142                         sum(
143                                 CASE
144                                         WHEN ocg.objectcounttype ~ 'cultural_patrimony' THEN ocg.objectcount
145                                         ELSE 0
146                                 END
147                         ) AS cultural_patrimony_count,
148                         sum(
149                                 CASE
150                                         WHEN ocg.objectcounttype ~ 'lineal_descendent' THEN ocg.objectcount
151                                         ELSE 0
152                                 END
153                         ) AS lineal_descendent_count
154                 FROM hierarchy ocg_hierarchy
155                         INNER JOIN related_objects objs ON objs.object_id = ocg_hierarchy.parentid
156                         INNER JOIN objectcountgroup ocg ON ocg.id = ocg_hierarchy.id
157                 WHERE ocg_hierarchy.name = 'collectionobjects_common:objectCountGroupList'
158                 GROUP BY objs.repatriation_csid
159         ) object_count ON object_count.repatriation_csid = summary_hierarchy.name
160         LEFT JOIN (
161                 -- Related Consultations (Summary -> Consultation)
162                 -- Number of Consultation Log Entries. Consultations related to the Summary record, pull a count of how many entries are in the log.
163                 SELECT relation.subjectcsid,
164                         count(cl_hierarchy.pos) AS log_total
165                 FROM relations_common relation
166                         INNER JOIN misc ON misc.id = relation.id
167                         AND misc.lifecyclestate != 'deleted'
168                         INNER JOIN hierarchy consultation_hierarchy ON consultation_hierarchy.name = relation.objectcsid
169                         INNER JOIN hierarchy cl_hierarchy ON cl_hierarchy.parentid = consultation_hierarchy.id
170                         AND cl_hierarchy.name = 'consultations_common:consultationLogGroupList'
171                 WHERE relation.objectdocumenttype = 'Consultation'
172                         AND relation.subjectdocumenttype = 'SummaryDocumentation'
173                         $P!{whereclause_relation}
174                 GROUP BY relation.subjectcsid
175         ) consultations ON consultations.subjectcsid = summary_hierarchy.name
176         LEFT JOIN (
177                 -- Related Object Exits (Object -> ObjectExit (New))
178                 -- Current owner with exit date: If there is an object exit related to the related objects, pull the current owner. Concatenate and separate by ;
179                 --   (Format example: The United Band of Humbolt People, 2024-08-02; The Dog River People, 2024-09-05).
180                 -- Allows NULL values to aggregate so we don't lose track of pairs
181                 SELECT related_exits.repatriation_csid,
182                         array_agg(exit.exitdate) as exit_dates,
183                         array_agg(owners.item) AS exit_owners
184                 FROM exits_common exit
185                         INNER JOIN related_exits on related_exits.exit_id = exit.id
186                         LEFT JOIN exits_common_owners owners on owners.id = exit.id AND owners.pos = 0
187                 GROUP BY related_exits.repatriation_csid
188         ) exits ON exits.repatriation_csid = summary_hierarchy.name
189         $P!{whereclause}]]>
190         </queryString>
191         <field name="documentationnumber" class="java.lang.String">
192                 <property name="com.jaspersoft.studio.field.name" value="documentationnumber" />
193                 <property name="com.jaspersoft.studio.field.label" value="documentationnumber" />
194                 <property name="com.jaspersoft.studio.field.tree.path" value="summarydocumentations_common" />
195         </field>
196         <field name="originationdate" class="java.sql.Timestamp">
197                 <property name="com.jaspersoft.studio.field.name" value="originationdate" />
198                 <property name="com.jaspersoft.studio.field.label" value="originationdate" />
199                 <property name="com.jaspersoft.studio.field.tree.path" value="summarydocumentations_common" />
200         </field>
201         <field name="titles" class="java.sql.Array">
202                 <property name="com.jaspersoft.studio.field.name" value="titles" />
203                 <property name="com.jaspersoft.studio.field.label" value="titles" />
204         </field>
205         <field name="summary_types" class="java.sql.Array">
206                 <property name="com.jaspersoft.studio.field.name" value="summary_types" />
207                 <property name="com.jaspersoft.studio.field.label" value="summary_types" />
208         </field>
209         <field name="onbehalfof" class="java.sql.Array">
210                 <property name="com.jaspersoft.studio.field.name" value="onbehalfof" />
211                 <property name="com.jaspersoft.studio.field.label" value="onbehalfof" />
212         </field>
213         <field name="cultures" class="java.sql.Array">
214                 <property name="com.jaspersoft.studio.field.name" value="cultures" />
215                 <property name="com.jaspersoft.studio.field.label" value="cultures" />
216         </field>
217         <field name="status" class="java.lang.String">
218                 <property name="com.jaspersoft.studio.field.name" value="status" />
219                 <property name="com.jaspersoft.studio.field.label" value="status" />
220                 <property name="com.jaspersoft.studio.field.tree.path" value="statusgroup" />
221         </field>
222         <field name="statusdate" class="java.sql.Timestamp">
223                 <property name="com.jaspersoft.studio.field.name" value="statusdate" />
224                 <property name="com.jaspersoft.studio.field.label" value="statusdate" />
225                 <property name="com.jaspersoft.studio.field.tree.path" value="statusgroup" />
226         </field>
227         <field name="sacred_object_count" class="java.math.BigDecimal">
228                 <property name="com.jaspersoft.studio.field.name" value="sacred_object_count" />
229                 <property name="com.jaspersoft.studio.field.label" value="sacred_object_count" />
230         </field>
231         <field name="ufo_count" class="java.math.BigDecimal">
232                 <property name="com.jaspersoft.studio.field.name" value="ufo_count" />
233                 <property name="com.jaspersoft.studio.field.label" value="ufo_count" />
234         </field>
235         <field name="cultural_patrimony_count" class="java.math.BigDecimal">
236                 <property name="com.jaspersoft.studio.field.name" value="cultural_patrimony_count" />
237                 <property name="com.jaspersoft.studio.field.label" value="cultural_patrimony_count" />
238         </field>
239         <field name="lineal_descendent_count" class="java.math.BigDecimal">
240                 <property name="com.jaspersoft.studio.field.name" value="lineal_descendent_count" />
241                 <property name="com.jaspersoft.studio.field.label" value="lineal_descendent_count" />
242         </field>
243         <field name="sites" class="java.sql.Array">
244                 <property name="com.jaspersoft.studio.field.name" value="sites" />
245                 <property name="com.jaspersoft.studio.field.label" value="sites" />
246         </field>
247         <field name="log_total" class="java.lang.Long">
248                 <property name="com.jaspersoft.studio.field.name" value="log_total" />
249                 <property name="com.jaspersoft.studio.field.label" value="log_total" />
250         </field>
251         <field name="exit_owners" class="java.sql.Array">
252                 <property name="com.jaspersoft.studio.field.name" value="exit_owners" />
253                 <property name="com.jaspersoft.studio.field.label" value="exit_owners" />
254         </field>
255         <field name="exit_dates" class="java.sql.Array">
256                 <property name="com.jaspersoft.studio.field.name" value="exit_dates" />
257                 <property name="com.jaspersoft.studio.field.label" value="exit_dates" />
258         </field>
259         <background>
260                 <band splitType="Stretch" />
261         </background>
262         <columnHeader>
263                 <band height="44" splitType="Stretch">
264                         <property name="com.jaspersoft.studio.layout" value="com.jaspersoft.studio.editor.layout.FreeLayout" />
265                         <property name="com.jaspersoft.studio.unit.height" value="px" />
266                         <staticText>
267                                 <reportElement style="Column header" x="0" y="0" width="100" height="44" uuid="b8cd41b4-34e5-455f-81fc-97800f4ae9b7">
268                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
269                                 </reportElement>
270                                 <textElement markup="styled" />
271                                 <text><![CDATA[Organization(s)]]></text>
272                         </staticText>
273                         <staticText>
274                                 <reportElement style="Column header" x="100" y="0" width="100" height="44" uuid="539fd511-8c4c-4f20-ac0f-1b71fdc26939">
275                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
276                                 </reportElement>
277                                 <textElement markup="styled" />
278                                 <text><![CDATA[Summary Documentation Origination Date]]></text>
279                         </staticText>
280                         <staticText>
281                                 <reportElement style="Column header" x="200" y="0" width="100" height="44" uuid="9741cf97-9acc-45aa-bab2-90a03cf29e83">
282                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
283                                 </reportElement>
284                                 <textElement markup="styled" />
285                                 <text><![CDATA[Summary Documentation Number]]></text>
286                         </staticText>
287                         <staticText>
288                                 <reportElement style="Column header" x="300" y="0" width="100" height="44" uuid="65b98683-6871-48ec-a4c4-553e41f1b26b">
289                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
290                                 </reportElement>
291                                 <textElement markup="styled" />
292                                 <text><![CDATA[Summary Documentation Title]]></text>
293                         </staticText>
294                         <staticText>
295                                 <reportElement style="Column header" x="400" y="0" width="100" height="44" uuid="02898623-0732-4b3d-abe6-948350332361">
296                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
297                                 </reportElement>
298                                 <textElement markup="styled" />
299                                 <text><![CDATA[Summary Documentation - Summary Status]]></text>
300                         </staticText>
301                         <staticText>
302                                 <reportElement style="Column header" x="500" y="0" width="100" height="44" uuid="a0f54698-7f5f-4d08-8286-f86c412fa876">
303                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
304                                 </reportElement>
305                                 <textElement markup="styled" />
306                                 <text><![CDATA[UFO Count]]></text>
307                         </staticText>
308                         <staticText>
309                                 <reportElement style="Column header" x="600" y="0" width="100" height="44" uuid="9afbf556-a4f6-4041-97a9-ac9f106aa75e">
310                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
311                                 </reportElement>
312                                 <textElement markup="styled" />
313                                 <text><![CDATA[Objects of Cultural Patrimony Count]]></text>
314                         </staticText>
315                         <staticText>
316                                 <reportElement style="Column header" x="700" y="0" width="100" height="44" uuid="679eb6c6-e454-47d1-8320-1a723dabf0a1">
317                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
318                                 </reportElement>
319                                 <textElement markup="styled" />
320                                 <text><![CDATA[Sacred Object Count]]></text>
321                         </staticText>
322                         <staticText>
323                                 <reportElement style="Column header" x="800" y="0" width="100" height="44" uuid="f9a1fb86-9c78-48ba-942e-e35417916eeb">
324                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
325                                 </reportElement>
326                                 <textElement markup="styled" />
327                                 <text><![CDATA[Lineal Descendent Count]]></text>
328                         </staticText>
329                         <staticText>
330                                 <reportElement style="Column header" x="900" y="0" width="100" height="44" uuid="c2e6ccf4-0900-400d-a6f4-4ea0fc9bb95a">
331                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
332                                 </reportElement>
333                                 <textElement markup="styled" />
334                                 <text><![CDATA[NAGPRA Category Type(s)]]></text>
335                         </staticText>
336                         <staticText>
337                                 <reportElement style="Column header" x="1000" y="0" width="100" height="44" uuid="52cec6c0-596a-47f6-877a-fa0a4227e55d">
338                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
339                                 </reportElement>
340                                 <textElement markup="styled" />
341                                 <text><![CDATA[Site(s) Related to Summary]]></text>
342                         </staticText>
343                         <staticText>
344                                 <reportElement style="Column header" x="1100" y="0" width="100" height="44" uuid="c361bc9c-e677-4a74-a59e-695ba9eddbaa">
345                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
346                                 </reportElement>
347                                 <textElement markup="styled" />
348                                 <text><![CDATA[Culture(s) Related to Summary]]></text>
349                         </staticText>
350                         <staticText>
351                                 <reportElement style="Column header" x="1200" y="0" width="100" height="44" uuid="f6441c8d-82a9-4908-94c0-b57be2d22746">
352                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
353                                 </reportElement>
354                                 <textElement markup="styled" />
355                                 <text><![CDATA[Number of Associated Consultation Log Entries]]></text>
356                         </staticText>
357                         <staticText>
358                                 <reportElement style="Column header" x="1300" y="0" width="100" height="44" uuid="17fc9356-5a96-4aa4-915a-cf18a83bc614">
359                                         <property name="com.jaspersoft.studio.unit.width" value="px" />
360                                 </reportElement>
361                                 <textElement markup="styled" />
362                                 <text><![CDATA[Exit Record Current Owner with Exit Date]]></text>
363                         </staticText>
364                 </band>
365         </columnHeader>
366         <detail>
367                 <band height="66" splitType="Stretch">
368                         <property name="com.jaspersoft.studio.unit.height" value="px" />
369                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
370                                 <reportElement style="Detail" x="0" y="0" width="100" height="30" uuid="b387bbaf-4760-45af-a84c-62681a678e61">
371                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
372                                 </reportElement>
373                                 <textFieldExpression><![CDATA[$F{onbehalfof}.getArray().join('; ')]]></textFieldExpression>
374                         </textField>
375                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
376                                 <reportElement style="Detail" x="100" y="0" width="100" height="30" uuid="e3b59f6b-c027-4527-8f95-453c97a250f5">
377                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
378                                 </reportElement>
379                                 <textFieldExpression><![CDATA[$F{originationdate} !== null ? java.lang.String.format("%tF", $F{originationdate}) : '']]></textFieldExpression>
380                         </textField>
381                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
382                                 <reportElement style="Detail" x="200" y="0" width="100" height="30" uuid="0138ed1b-1e54-4d27-92f4-1e42769adbcb">
383                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
384                                 </reportElement>
385                                 <textFieldExpression><![CDATA[$F{documentationnumber}]]></textFieldExpression>
386                         </textField>
387                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
388                                 <reportElement style="Detail" x="300" y="0" width="100" height="30" uuid="99fcf86b-ed71-413a-a65f-dcbb51d096eb">
389                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
390                                 </reportElement>
391                                 <textFieldExpression><![CDATA[$F{titles}.getArray().join('; ')]]></textFieldExpression>
392                         </textField>
393                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
394                                 <reportElement style="Detail" x="400" y="0" width="100" height="30" uuid="637dac22-c0a3-4c77-b323-f15f65b5bdf7">
395                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
396                                 </reportElement>
397                                 <textFieldExpression>
398                                         <![CDATA[
399                                                 var status = $F{status} !== null ? $F{status} : '';
400                                                 var date = $F{statusdate} !== null ? java.lang.String.format("(%tF)", $F{statusdate}) : '';
401                                                 status + " " + date;
402                                         ]]>
403                                 </textFieldExpression>
404                         </textField>
405                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
406                                 <reportElement style="Detail" x="500" y="0" width="100" height="30" uuid="9bada286-6f81-4548-bc77-669a0973da26">
407                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
408                                 </reportElement>
409                                 <textFieldExpression><![CDATA[$F{ufo_count}]]></textFieldExpression>
410                         </textField>
411                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
412                                 <reportElement style="Detail" x="600" y="0" width="100" height="30" uuid="6619c361-ae3e-4f49-9f9e-492cc307ca30">
413                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
414                                 </reportElement>
415                                 <textFieldExpression><![CDATA[$F{cultural_patrimony_count}]]></textFieldExpression>
416                         </textField>
417                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
418                                 <reportElement style="Detail" x="700" y="0" width="100" height="30" uuid="bebdb2bf-297a-477b-a03b-88e5e15fb0f6">
419                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
420                                 </reportElement>
421                                 <textFieldExpression><![CDATA[$F{sacred_object_count}]]></textFieldExpression>
422                         </textField>
423                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
424                                 <reportElement style="Detail" x="800" y="0" width="100" height="30" uuid="6619e1e3-2761-4c6b-8e4a-3be5d8e4b956">
425                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
426                                 </reportElement>
427                                 <textFieldExpression><![CDATA[$F{lineal_descendent_count}]]></textFieldExpression>
428                         </textField>
429                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
430                                 <reportElement style="Detail" x="900" y="0" width="100" height="30" uuid="0beee49d-f49d-4e17-8f78-bb5c3184aaa1">
431                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
432                                 </reportElement>
433                                 <textFieldExpression><![CDATA[$F{summary_types}.getArray().join('; ')]]></textFieldExpression>
434                         </textField>
435                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
436                                 <reportElement style="Detail" x="1000" y="0" width="100" height="30" uuid="bd6c6806-b6d2-495c-917f-ae879e740992">
437                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
438                                 </reportElement>
439                                 <textFieldExpression><![CDATA[$F{sites}.getArray().join('; ')]]></textFieldExpression>
440                         </textField>
441                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
442                                 <reportElement style="Detail" x="1100" y="0" width="100" height="30" uuid="6d4f8b23-ea8c-4a38-9acc-4ca7eff30219">
443                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
444                                 </reportElement>
445                                 <textFieldExpression><![CDATA[$F{cultures}.getArray().join('; ')]]></textFieldExpression>
446                         </textField>
447                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
448                                 <reportElement style="Detail" x="1200" y="0" width="100" height="30" uuid="54b06775-91a6-4b74-a747-a7977e5943fb">
449                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
450                                 </reportElement>
451                                 <textFieldExpression><![CDATA[$F{log_total}]]></textFieldExpression>
452                         </textField>
453                         <textField textAdjust="StretchHeight" isBlankWhenNull="true">
454                                 <reportElement style="Detail" x="1300" y="0" width="100" height="30" uuid="04107479-6227-4b31-b0b5-50316e4d3426">
455                                         <property name="com.jaspersoft.studio.unit.y" value="px" />
456                                 </reportElement>
457                                 <textFieldExpression>
458                                         <![CDATA[
459                                                 var dates = $F{exit_dates}.getArray();
460                                                 $F{exit_owners}.getArray().map(function(owner, index) {
461                                                         if (!owner) {
462                                                                 return null;
463                                                         }
464                                                         return dates[index] === null ? owner : java.lang.String.format("%s (%tF)", owner, dates[index]);
465                                                 }).filter(owner => !!owner).join('; ')
466                                         ]]>
467                                 </textFieldExpression>
468                         </textField>
469                 </band>
470         </detail>
471 </jasperReport>