if p_type <> 'ltqm' then 
                if p_end_date <> '0' then 
                    i_sql_where := i_sql_where||'and nvl(to_char(a.check_date,''yyyy-mm-dd''),to_char(a.oper_date,''yyyy-mm-dd''))'||p_month_type||''''||p_start_date||''' ';
                else     
                    i_sql_where := i_sql_where||'and nvl(to_char(a.check_date,''yyyy-mm-dd''),to_char(a.oper_date,''yyyy-mm-dd''))'||p_month_type||''''||p_end_date||''' ';
                end if;
                if p_supper_id <> '0' then 
                    i_sql_where := i_sql_where||'and b.property_right='||p_supper_id|| '';
                end if; 
                    i_sql_where := i_sql_where||'and b.manage_type=''0036'' ;
        else 
                if p_end_date <> '0' then 
                    i_sql_where := i_sql_where||'and nvl(to_char(a.check_date,''yyyy-mm-dd''),to_char(a.oper_date,''yyyy-mm-dd''))'||p_month_type||''''||p_start_date||''' ';
                else     
                    i_sql_where := i_sql_where||'and nvl(to_char(a.check_date,''yyyy-mm-dd''),to_char(a.oper_date,''yyyy-mm-dd''))'||p_month_type||''''||p_end_date||''' ';
                end if;
                if p_supper_id <> '0' then 
                    i_sql_where := i_sql_where||'and b.property_right='||p_supper_id|| '';
                end if; 
                    i_sql_where := i_sql_where||'and b.manage_type=''0037'' ;
        end if;  
以上这段话好象在IF ELSE 这里报错,请高人指教