[Logo] Neo Framework Forum
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Register] Registrar / 
[Login] Entrar 
detalhe com checklist  XML
Índice dos Fóruns -> Dúvidas
Autor Mensagem
biharck
Equipe

Membro desde: 31/10/2008 19:39:56
Mensagens: 9
Offline

Boa tarde!
Olá pessoal tudo bem? precisa de uma ajuda de vc's!
bom é o seguinte, preciso em um detalhe ter uma lista tipo alimentos sendo um checklist, vou simplificar
Code:
 
  <t:detalhe name="listaAlimentos">
  <t:property name="tipo" />
  <t:property name="tipo.listaTipoIndividual" type="checklist"/>
  </t:detalhe>
  




tenho um detalhe de alimentos onde cada alimento (perecível e não perecível), tem uma lista de atributos onde o usuário pode checar vários, e cada tipo tem uma lista específica. O neo da suporte a este tipo de coisa? tipo a cada vez que eu inserir um novo registro a lista vai ser carregada (de checklist) em relação a cada alimento ou melhor tipo?
Um prazer falar com vc's novamente!
valew pessoal.
abs.,
Obrigado
rodrigo.freitas
Equipe
[Avatar]
Membro desde: 17/04/2007 16:43:33
Mensagens: 37
Localização: Belo Horizonte - MG
Offline

Fala bihark...

ce ta bao kra!??!?!

kra, pelo que eu saiba o Neo não tem suporte a isso não...

quando agente precisou de um tipo desses de checklist agente teve criar um componente a parte...

mas pensa em uma outra maneira... tem jeito nao???

abração kra...


Rodrigo Duarte de Freitas
Desenvolvedor de Sistemas
LinkCom - Soluçoes em T.I
Belo Horizonte - MG
rodrigo.freitas@linkcom.com.br - www.linkcom.com.br
Telefone/Fax: (31) 3239-4000
[Email] [MSN]
biharck
Equipe

Membro desde: 31/10/2008 19:39:56
Mensagens: 9
Offline

e ai Rodrigão blz? to bão,
vixi, o problema é que teria que ter uma forma do usuário selecionar n valores em um detalhe e o como many não é bacana pra usuário com baixo conhecimento em informática, se vc tiver alguma idéia será bem vinda, Obrigado pela ajuda!
Abs.,
rogel.garcia
Xiita

Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline

Não sei se entendi perfeitamente, mas você precisa é de um checklist, onde exista uma tabela que tenha uma coluna com um checkbox e outras colunas com os atributos?? Se for isso, esse exemplo vai te ajudar:

Bean que se deseja o datagrid com os checkboxes
Code:
 
 @Entity
 public class Nivel {
 
 	Integer id;
 	String nome;
 
 	@Id
 	public Integer getId() {
 		return id;
 	}
 	@DescriptionProperty
 	public String getNome() {
 		return nome;
 	}
 	public void setId(Integer id) {
 		this.id = id;
 	}
 	public void setNome(String nome) {
 		this.nome = nome;
 	}
 }
 



Filtro que receberá um text (só pra incrementar o exemplo) e a lista de niveis selecionados.
Code:
 public class SelectFilter {
 
 	String text;
 	
 	List<Nivel> listaNivel;
 
 	public List<Nivel> getListaNivel() {
 		return listaNivel;
 	}
 
 	public String getText() {
 		return text;
 	}
 
 	public void setListaNivel(List<Nivel> listaNivel) {
 		this.listaNivel = listaNivel;
 	}
 
 	public void setText(String text) {
 		this.text = text;
 	}
 }
 
 



Controller para a página
Code:
 package provaonline.controller;
 
 import org.springframework.web.servlet.ModelAndView;
 
 import provaonline.dao.NivelDAO;
 
 import br.com.linkcom.neo.controller.Controller;
 import br.com.linkcom.neo.controller.DefaultAction;
 import br.com.linkcom.neo.controller.MultiActionController;
 import br.com.linkcom.neo.core.web.WebRequestContext;
 
 @Controller(path="/pub/selectmany")
 public class SelectManyController extends MultiActionController {
 	
 	NivelDAO nivelDAO;
 	
 	public void setNivelDAO(NivelDAO nivelDAO) {
 		this.nivelDAO = nivelDAO;
 	}
 
 	@DefaultAction
 	public ModelAndView doPage(WebRequestContext request, SelectFilter selectFilter){
 		request.setAttribute("listaNivel", nivelDAO.findAll());
 		return new ModelAndView("selectmany", "filtro", selectFilter);
 	}
 }
 


JSP
Code:
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 
 <n:form>
    <n:bean name="filtro">
       <n:panelGrid>
          <t:property name="text" rows="5" cols="50" mode="input" showLabel="true"/>
          <n:dataGrid itens="${listaNivel}" itemType="provaonline.beans.Nivel">
                <n:column header="Check">
                    <n:input name="listaNivel" value="${row}" type="checklist" itens="${filtro.listaNivel}"/>
                </n:column>
                <t:property name="id"/>
                <t:property name="nome"/>
          </n:dataGrid>			
 		
          <n:submit>Enviar</n:submit>
       </n:panelGrid>
    </n:bean>
 </n:form>
 


Note que o nível tem vários atributos que poderão ser mostrados através do dataGrid. Além disso será possível selecionar alguns desses niveis e enviar para o servidor. O atributo listaNivel da classe SelectFilter conterá os niveis selecionados. Esse código também servirá para atualização da tela, ou seja, se houver um refresh e o código voltar para o mesmo JSP os checkboxes marcados anteriormente continuarão marcados.

Todo o segredo para se fazer isso está nessa linha:
Code:
 <n:input name="listaNivel" value="${row}" type="checklist" itens="${filtro.listaNivel}"/>
 

name é o nome do atributo do filtro
value é o valor que o checkbox deve ter nesse casso ${row} é o bean que está sendo interagido pelo dataGrid
type é o tipo do input, checklist no caso
itens é a lista com os itens que estão selecionados (essa lista é utilizada para checar se é para selecionar ou não o checkbox)

No exemplo não foi utilizado t:listagem t:tabelaFiltro, etx.. Mas nada impede essas tags de serem utilizadas. Foi feito dessa forma apenas para ficar mais simples.

biharck
Equipe

Membro desde: 31/10/2008 19:39:56
Mensagens: 9
Offline

valew cara ficou muito bom!
Abs.,
 
Índice dos Fóruns -> Dúvidas
Ir para:   
Powered by JForum 2.1.7 © JForum Team