Jaspersoft studio 6.12.2如何让多个细节带依次打印数据

How make multiple detail bands to print data one after the other in Jaspersoft studio 6.12.2

我需要在 Jaspersoft 中使用 Json 数据源创建 excel 输出。预期的 excel 输出有 3 headers 并且在每个标题下,它有多行数据。每行的数据都是从 parent 和 Json 数据源中的嵌套元素中获取的。第一个标题下的行应该在打印下一个 header 之前完成打印,数据开始打印。如果有任何方法可以在不使用子报告的情况下创建此碧玉报告,请告诉我。

JSON:

[{
   "id":"123",
   "accountNumber":"123456",
   "billingAddress":{
      "addressLine1":"Test Address",
      "addressLine2":"123 Test Lane",
      "addressLine3":"Test Street",
      "city":"Test City",
      "state":"TST",
      "zipCode":"12345"
   },
   "billingAnalystCode":"D2",
   "billToId":"5947000000",
   "billToDivisionNumber":"00000",
   "billToGroupNumber":"59470",
   "brand":"ABCD",
   "coverageEndDate":"07/31/2020",
   "coverageStartDate":"07/01/2020",
   "customerType":"TEST",
   "dualChoice":false,
   "financialCompanyName":"XYZ",
   "groupName":"XYZ TEST",
   "groupSummary":[
      {
         "adjustmentAmount":0.0,
         "amount":0.0,
         "descriptionOfCharges":null,
         "feeBasis":null,
         "groupNumber":"59470",
         "numberOfClaimsPaid":0,
         "numberOfEnrollees":2,
         "coverageOptions":[
            {
               "amount":0.0,
               "amountDue":0.0,
               "coverageOptionCode":"98",
               "numberOfEnrollees":2,
               "adminRatePerEnrollee":0.0,
               "currentRate":0.0,
               "premium":0.0
            }
         ],
         "divisionSummary":[
            {
               "divisionNumber":"00001",
               "divisionName":"XYZ TEST",
               "productCode":"EEPO",
               "subGroupNumber":"59470",
               "numberOfEnrollees":2,
               "premium":0.0,
               "totalAmount":0.0,
               "amountDue":0.0,
               "billedMemberDetails":[
                  {
                     "assignedId":"91246774200",
                     "firstName":"JOHN",
                     "lastName":"DOE",
                     "memberId":"321654987",
                     "supplierId":"5463213213",
                     "coverageEffectiveDate":"06/16/2014",
                     "coverageOptionCode":"98",
                     "effectiveDate":"06/16/2014",
                     "productCode":"EDPO",
                     "premium":0.0,
                     "amount":0.0,
                     "adjustment":null,
                     "currentAmount":"0"
                  },
                  {
                     "assignedId":" ",
                     "firstName":"LISA",
                     "lastName":"DOE",
                     "memberId":"654986541",
                     "supplierId":null,
                     "coverageEffectiveDate":"06/16/2014",
                     "coverageOptionCode":"98",
                     "effectiveDate":"06/16/2014",
                     "productCode":"EDPO",
                     "premium":0.0,
                     "amount":0.0,
                     "adjustment":null,
                     "currentAmount":"0"
                  }
               ],
               "adjustedMemberDetails":[
                  {
                     "assignedId":" ",
                     "firstName":" ",
                     "lastName":" ",
                     "memberId":" ",
                     "supplierId":" ",
                     "coverageEffectiveDate":" ",
                     "coverageOptionCode":" ",
                     "effectiveDate":null,
                     "productCode":" ",
                     "premium":0.0,
                     "amount":0.0,
                     "adjustment":null,
                     "currentAmount":"0"
                  }
               ],
               "ascSummary":{
                  "numEnrollees":"0",
                  "numberOfClaims":0,
                  "claimsPaid":0.0,
                  "adminRate":0.0,
                  "rateType":"0",
                  "adminFee":0.0,
                  "stopLossFee":0.0,
                  "adjustment":0.0,
                  "subtotal":0.0,
                  "cobraTotal":0.0,
                  "productCode":"0"
               },
               "coverageOptions":[
                  {
                     "amount":0.0,
                     "amountDue":0.0,
                     "coverageOptionCode":"98",
                     "numberOfEnrollees":2,
                     "adminRatePerEnrollee":0.0,
                     "currentRate":10.0,
                     "premium":101.0
                  },
                  {
                     "amount":0.0,
                     "amountDue":0.0,
                     "coverageOptionCode":"99",
                     "numberOfEnrollees":3,
                     "adminRatePerEnrollee":0.0,
                     "currentRate":20.0,
                     "premium":102.0
                  },
                  {
                     "amount":0.0,
                     "amountDue":0.0,
                     "coverageOptionCode":"100",
                     "numberOfEnrollees":4,
                     "adminRatePerEnrollee":0.0,
                     "currentRate":30.0,
                     "premium":103.0
                  },
                  {
                     "amount":0.0,
                     "amountDue":0.0,
                     "coverageOptionCode":"101",
                     "numberOfEnrollees":5,
                     "adminRatePerEnrollee":0.0,
                     "currentRate":40.0,
                     "premium":104.0
                  }
               ],
               "fee":{
                  "adjustmentFee":0.0,
                  "adminRate":0.0,
                  "amount":0.0,
                  "claimsPaid":0.0,
                  "cobraTotal":0.0,
                  "enrolleeRoster":0.0,
                  "enrollmentAdjustmentsAmount":0.0,
                  "invoiceCapitation":0.0,
                  "invoiceMiscellaneous":0.0,
                  "invoiceOther":0.0,
                  "invoicePrefund":0.0,
                  "invoicePrefundDeposit":0.0,
                  "invoiceEqualizedDeposit":0.0,
                  "numberOfClaims":0,
                  "otherAdminFee":0.0,
                  "perEnrolleeTotal":0.0,
                  "settlementAdjustmentsAmount":0.0,
                  "stopLossFee":0.0,
                  "totalAmount":0.0
               },
               "enrolleeSummary":{
                  "totalNumberOfEnrollees":2,
                  "billedNumberOfEnrollees":0,
                  "unBilledNumberOfEnrollees":2,
                  "billedPremium":0.0,
                  "unBilledPremium":0.0,
                  "totalAmount":0.0,
                  "totalPremium":0.0
               },
               "adjustmentSummary":{
                  "totalAmount":0.0,
                  "numberOfEnrolees":0,
                  "premium":0.0
               },
               "billedSummary":{
                  "totalAmount":0.0,
                  "numberOfEnrolees":2,
                  "premium":0.0
               }
            }
         ],
         "enrolleeSummary":{
            "totalNumberOfEnrollees":2,
            "billedNumberOfEnrollees":0,
            "unBilledNumberOfEnrollees":2,
            "billedPremium":0.0,
            "unBilledPremium":0.0,
            "totalAmount":0.0,
            "totalPremium":0.0
         }
      }
   ],
   "internalReferenceId":"BE003962799-2020-06-09",
   "invoiceDate":"07/01/2020",
   "invoiceNumber":"962799",
   "invoiceSubType":"Premium",
   "invoiceType":"Premium",
   "perMemberPerMonthBilling":"PXM",
   "publisherName":null,
   "purchaseOrderNumber":null,
   "statementTypeIdentifier":"DDFD-Premium",
   "underWritingState":"33",
   "invoiceAdminSummary":{
      "invoiceEqualizedDeposit":0.0,
      "totalNumEnrollees":null,
      "totalNumClaims":null,
      "totalClaimsPaid":0.0,
      "totalAdminFee":0.0,
      "totalStopLossFee":0.0,
      "totalAdjustments":0.0,
      "settlementAdjustmentsTotal":0.0,
      "amountDue":0.0,
      "invoiceOther":0.0,
      "invoicePrefund":0.0,
      "invoicePrefundDeposit":0.0,
      "invoiceCapitation":0.0,
      "invoiceMiscellaneous":0.0,
      "invoiceCOBRATotal":0.0
   },
   "invoiceAmount":0.0,
   "invoiceAmountDue":0.0
}
]

我通过将 table 组件放在摘要带中并为除第一个之外的所有 table 设置 'float' 属性 解决了上述情况.