sábado, 17 de agosto de 2013

Access reports in Adempiere

int AD_Role_ID = Env.getAD_Role_ID(Env.getCtx());
        int AD_User_ID = Env.getAD_User_ID(Env.getCtx());
       
        int AD_Process_ID = DB.getSQLValue(null, "select p.ad_process_id from ad_process p where p.value = 'NombreReporte'");
       
        Object[] params = {AD_Role_ID, AD_Process_ID};
        String sql = "select coalesce((select 1 as tiene_acceso from ad_process_access pa where pa.ad_role_id = ? and pa.ad_process_id = ?), 0);";
        BigDecimal tiene_acceso = DB.getSQLValueBD(null, sql, params);
       
        if(tiene_acceso.compareTo(BigDecimal.ZERO) > 0)
            ADialog.info(0, null, "El usuario tiene acceso al reporte");
        else
            ADialog.info(0, null, "El usuario no tiene acceso al reporte");

No hay comentarios:

Publicar un comentario