class SceItemRmsRN extends BaseBusiness {

	public void atualizarSceItemRmsGrupoMaterialSemGrupo(SceItemRms sceItemRms, String nomeMicrocomputador) throws BaseException{

		final Integer seqReqMaterial = sceItemRms.getSceReqMateriais().getSeq();
		final Short seqAlmoxarifado = sceItemRms.getSceReqMateriais().getAlmoxarifado().getSeq();
		final SceReqMaterial sceReqMateriais = this.getSceReqMateriaisDAO().buscarSceReqMateriaisPorAlmoxarifado(seqReqMaterial, seqAlmoxarifado);

		// Verifica existencia da requisição de material
		if(sceReqMateriais == null){
			throw new ApplicationBusinessException(SceItemRmsRNExceptionCode.SCE_00839);
		}

		// Verifica se o almoxarifado da requisição de material é central
		if (sceReqMateriais.getAlmoxarifado().getIndCentral()) {

			SceItemRms itemRms = this.getSceItemRmsDAO().buscarSceItemRmsPorGrupoMaterialSemGrupo(sceItemRms.getSceReqMateriais().getSeq());

			// Verifica a existencia do item da requisição de material
			if (itemRms != null) {

				// Instancia uma lista que armazenará o valor numérico dos parâmetros do AGH
				List<Integer> listaParametrosGrupos = new LinkedList<Integer>();

				// Acrescenta na lista o valor numérico do parametro para grupo de rouparia
				this.addGrupoParametroLista(AghuParametrosEnum.P_GR_ROUPARIA, listaParametrosGrupos);

				// Acrescenta na lista o valor numérico do parametro para grupo de material de expediente
				this.addGrupoParametroLista(AghuParametrosEnum.P_GR_MAT_EXPEDIENTE, listaParametrosGrupos);

				// Acrescenta na lista o valor numérico do parametro para grupo de  higiene e limpeza
				this.addGrupoParametroLista(AghuParametrosEnum.P_GR_HIGIENE_LIMPEZA, listaParametrosGrupos);

				// Atualiza a requisição de materal com o grupo de material do SceItemRms localizado
				if (!listaParametrosGrupos.contains(itemRms.getEstoqueAlmoxarifado().getMaterial().getGrupoMaterial().getCodigo()) && itemRms.getSceReqMateriais().getGrupoMaterial() == null) {

					// #42059 - Comentado o setGrupoMaterial, para que o grupo de material seja gravado somente quando o usuário informar
					//sceReqMateriais.setGrupoMaterial(itemRms.getEstoqueAlmoxarifado().getMaterial().getGrupoMaterial());
					this.getSceReqMateriaisRN().atualizar(sceReqMateriais, nomeMicrocomputador);

				}

			} else {

				throw new ApplicationBusinessException(SceItemRmsRNExceptionCode.SCE_00865);

			}

		} 

	}

}