Iterator it = new FuncaoDao(request).getFuncoesNaoOpcionais().iterator();
List funcoesDaEstrutura = new EstruturaFuncaoDao(request).getFuncoes(estrutura);
while (it.hasNext()) {
EstruturaFuncaoEttf estruturaFuncao = new EstruturaFuncaoEttf();
FuncaoFun funcao = (FuncaoFun) it.next();
estruturaFuncao.setFuncaoFun(funcao);
estruturaFuncao.setEstruturaEtt(estrutura);
if ( funcoesDaEstrutura.contains(funcao)){
estruturaFuncao = (EstruturaFuncaoEttf) new EstruturaFuncaoDao(request).pesquisar(estruturaFuncao, null).iterator().next();
} else {
estruturaFuncao.setLabelEttf(funcao.getLabelPadraoFun());
// Robson - incluir valores do campo documentacao da fun��o no estruturaFuncao
estruturaFuncao.setDocumentacaoEttf(funcao.getDocumentacaoFun());
estruturaFuncao.setIndExibirHistoricoEttf("S");
}
if (estruturaFuncao.getIndExibirHistoricoEttf() == null){
estruturaFuncao.setIndExibirHistoricoEttf("N");
}
retorno.add(estruturaFuncao);
}
return retorno;