단일 대역에 여러 행이 있는 상태에서 데이터 오버플로 행 늘리기

제 요구 사항에 따라 하나의 '세부 정보' 밴드에 여러 행이 있어야 합니다.

현재 가장 왼쪽 열에 정적 텍스트 필드(색상으로 강조 표시됨)가 있고 그 옆에 세 개의 텍스트 데이터 필드가 있습니다.

제가 보고서에서 원하는 것은 세 개의 밴드 중 하나의 데이터가 넘칠 때 정적 텍스트 밴드와 함께 정적 텍스트 밴드의 높이가 늘어나고, 늘어난 행 아래에 다음 행이 '올바르게'로 표시되는 것입니다. '올바르게'란 다음 행 요소의 '상단' 값이 동일해야 하고 동일한 '행'에 표시되어야 한다는 의미입니다.

'오버플로로 늘이기' 플래그를 'true'로, '위치'를 'float'로 설정해 보았지만 다음 행 데이터의 위치가 제대로 지정되지 않는 것이 문제입니다.

질문에 대한 의견 (2)
해결책

해답을 찾았습니다. 해결책의 핵심은 한 행 안에 있는 요소들을 함께 그룹화하는 것입니다.

  1. 정적 텍스트 레이블을 모두 제거합니다. 대신 텍스트를 따옴표로 묶은 텍스트 필드를 사용합니다. 텍스트 필드는 다른 텍스트 필드 및 데이터 필드와 함께 그룹화할 수 있습니다.
  2. 따옴표로 묶은 텍스트 필드 뒤에 있는 모든 데이터 필드를 따옴표로 묶은 텍스트 필드와 같은 그룹에 배치합니다.
  3. 이제 표시하려는 모든 행에 대해 동일한 작업을 수행합니다. 개별 행에 대해 별도의 그룹을 지정합니다.

한 그룹의 모든 요소를 선택하거나 모든 고럽의 모든 요소를 선택하고 이 작업을 수행합니다:

  • '위치'를 '플로트'로 설정합니다;
  • '스트레치 유형'을 '가장 키가 큰 객체 기준'으로 설정합니다;
  • 확인란을 선택합니다.
  • '오버플로로 늘이기' 확인란을 선택합니다.

이것이 우리가 함께 '늘리기'를 위해 할 수 있는 전부입니다.

이제 밴드는 이렇게 늘어난 디테일로 동적으로 늘어나야 합니다. 밴드 속성으로 이동하여 분할 유형을 '기본값'으로 설정하고 분할 허용을 '참'으로 설정하면 됩니다. 이것이 저에게는 트릭이었습니다.

해설 (3)

누군가 이 문제를 제기하고 위의 답변이 작동하지 않는 경우. XML의 루트 요소를 확인하는 것이 좋습니다. 다음과 같은 속성을 가지고 있다면 제거하세요:

printOrder="Horizontal"

그러면 위의 답변이 작동합니다.

누군가가 같은 내용을 검색하는 데 하루를 절약할 수 있기를 바랍니다.

해설 (0)

제 경우에는 조언대로 해도 효과가 없었습니다. 저는 객체를 그룹화하는 대신 프레임을 만들고 그 프레임에 이전에 그룹화된 요소를 넣는 방식으로 솔루션을 약간 수정했습니다. 해당 프레임에 포지션 유형='플로트'와 스트레치 유형='스트레치 없음'을 설정하고 스트레치 유형='상대적 최대 객체'를 하위 항목에 설정했더니 모두 작동합니다.

해설 (2)