function inputFields(form){
	
	var atividade = parseInt(getValue("WKNumState"));
	
	//Tratamento para o campos data (app)
	toBrazilianFormat(form, "txtDataSolicitacao");
	toBrazilianFormat(form, "txtDataVencimento");
	toBrazilianFormat(form, "txtDataPrevisao");
	toBrazilianFormat(form, "dtEmissao");
	toBrazilianFormat(form, "dtVencimento");
	toBrazilianFormat(form, "dtUserAnexaBaixa");
	toBrazilianFormat(form, "dtUserAnexaDanfe");
	toBrazilianFormat(form, "dtUserCoord");
	toBrazilianFormat(form, "dtUserDiretor");
	toBrazilianFormat(form, "dtUserFinanceiro");
	toBrazilianFormat(form, "dtUserFiscal");
	toBrazilianFormat(form, "dtUserGerente");
	toBrazilianFormat(form, "dtUserSuperintendente");
	
	if (atividade == 4) {
		
		var vlSolicitado = form.getValue("vlSolicitado");
		
		vlSolicitado = vlSolicitado.replace(".","").replace(".","").replace(".","");
		
		vlSolicitado = vlSolicitado.replace(",",".");
		
		var decVlSolicitado = parseFloat(vlSolicitado);
		
		form.setValue("enviaGerente", "N");
		form.setValue("enviaDiretor", "N");
		form.setValue("enviaSuperintendente", "N");
		
		if (decVlSolicitado >= 50001) {
			form.setValue("enviaGerente", "S");
		}
		if (decVlSolicitado > 200001) {
			form.setValue("enviaDiretor", "S");
		}
		if (decVlSolicitado > 500000) {
			form.setValue("enviaSuperintendente", "S");
		}
	}
	
}

/**
 * Retorna o nome dos campos de um pai filho com base em um prefixo.
 * 
 * @param form: Variavel padrao do evento.
 * @param tableName: Nome da tabela pai filho.
 * @param fieldName: Prefixo do nome do campo.
 * @returns [String].
 */
function getFieldsFromTable(form, tableName, fieldName){
	//log.info("inputFields/getFieldsFromTable diz: tablename = "+tableName);
	//log.info("inputFields/getFieldsFromTable diz: fieldName = "+fieldName);
	var map = form.getChildrenFromTable(tableName);
	var iterator = map.keySet().iterator();
	var fields = [];
	
	while(iterator.hasNext()){    
        var key = iterator.next();
		//log.info("inputFields/getFieldsFromTable diz: key = "+key);
         
        if(key.indexOf(fieldName) >= 0){
			//log.info("inputFields/getFieldsFromTable diz: add key");
            fields.push(key);
        }   
    }
	
	//log.info("inputFields/getFieldsFromTable diz: fields.length = "+fields.length);
     
    return fields;
}

/**
 * Formata a data para o formato brasileiro caso esteja no formato universal.
 * 
 * @param form: Variavel padrao do evento.
 * @param fieldName: Nome do campo com data.
 * @returns void.
 */
function toBrazilianFormat(form, fieldName){
	//log.info("inputFields/toBrazilianFormmat diz: fieldName = "+fieldName);
	var regEx = /^\d{4}-\d{2}-\d{2}$/;
	var isUnformmated = form.getValue(fieldName).match(regEx);
	//log.info("inputFields/toBrazilianFormmat diz: isUnformmated = "+isUnformmated); 
	
	if(isUnformmated){
		var split = form.getValue(fieldName).split('-');
		var formmated = split[2]+"/"+split[1]+"/"+split[0];
		
		//log.info("inputFields/toBrazilianFormmat diz: formmated = "+formmated);
		
		form.setValue(fieldName, formmated);
	}
}
