Mesclado céludas usando rich:column

0 respostas
C

Senhores, estou um problema interessante.
Uso JSF e Richfaces, e estou fazendo uma tabela de horários de aula.
Bem, o problema é que a turma deve aparecer apenas uma vez na tabela de horário, e depois uma lista simples com os dados dos professores, matérias e horários para a semana.
O header da tabela é o seguinte:

ps: x seria o campo vazio

turma - professor - matéria - x - mês
x - x - x - x - semana
x - x - x - x - STQQSSD

x - tia lú - geografia - x - xx9:30xxxx
1º serie A - tia jú - Matemática - x - xx9:30xxxx
x - tio Zé - Matemática - x - xx9:30xxxx

O problema é fazer a tal da turma aparecer apenas uma vez. Segue o código do header:

<f:facet name="header">
									<rich:columnGroup>

										<rich:column  colspan="1">
											<h:outputText value="#{mensagens.lblTurma}" />
										</rich:column>

										<rich:column  colspan="1">
											<h:outputText value="#{mensagens.professor}" />
										</rich:column>

										<rich:column  colspan="1">
											<h:outputText value="#{mensagens.materia}" />
										</rich:column>

										<rich:column  colspan="1">
											<h:outputText value="xxxxxx" />
										</rich:column>

										<rich:column  colspan="1">
											<h:outputText value="xxxxxx" />
										</rich:column>

										<rich:column  colspan="7">
											<h:outputText value="mês"  />
										</rich:column>




										<rich:column  breakBefore="true"
											colspan="1">
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column  colspan="1">
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column  colspan="1">
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column  colspan="1">
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column  colspan="1">
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column 
											colspan="7">
											<h:outputText value="semana"  />
										</rich:column>


										<rich:column  breakBefore="true">
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column >
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column >
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column >
											<rich:spacer width="10px" />
										</rich:column>

										<rich:column >
											<rich:spacer width="10px" />
										</rich:column>


	

										<rich:column >
											<h:outputText value="#{mensagens.SEGUNDAshort}" />
										</rich:column>

										<rich:column >
											<h:outputText value="#{mensagens.TERCAshort}" />
										</rich:column>

										<rich:column >
											<h:outputText value="#{mensagens.QUARTAshort}" />
										</rich:column>

										<rich:column >
											<h:outputText value="#{mensagens.QUINTAshort}" />
										</rich:column>

										<rich:column >
											<h:outputText value="#{mensagens.SEXTAshort}" />
										</rich:column>
										
										<rich:column >
											<h:outputText value="#{mensagens.SABADOshort}" />
										</rich:column>

										<rich:column >
											<h:outputText value="#{mensagens.DOMINGOshort}" />
										</rich:column>


									</rich:columnGroup>
								</f:facet>

Agora o código da tabela mesmo, com dados fake:

<rich:column >
									<h:outputText value="turma a"  />
								</rich:column>

								<rich:column >
									<h:outputText value="tia lú"  />
								</rich:column>

								<rich:column >
									<h:outputText value="matemática"  />
								</rich:column>

								<rich:column >
									<h:outputText value="xxxxx"  />
								</rich:column>

								<rich:column >
									<h:outputText value="xxxxx"  />
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

								<rich:column >
									<h:panelGrid columns="1" >
										<h:outputText value="7:30"  />
										<h:outputText value="9:30"  />
									</h:panelGrid>
								</rich:column>

Onde diz “turma a” deve ser exibido apenas uma vez em toda a tabela, e não uma vez por linha. A minha grande dificuldade está sendo justamente mesclar as células da turma.
Eu suprimi do código estilos e mascaras para que ficasse mais legível.

Criado 21 de janeiro de 2009
Respostas 0
Participantes 1