# ERPNext - web based ERP (http://erpnext.com) # Copyright (C) 2012 Web Notes Technologies Pvt Ltd # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . from __future__ import unicode_literals import webnotes from webnotes import _, msgprint from webnotes.utils import cint, comma_or @webnotes.whitelist() def get_sc_list(arg=None): """return list of reports for the given module module""" limit_start = webnotes.form_dict.get("limit_start") limit_page_length = webnotes.form_dict.get("limit_page_length") module = webnotes.form_dict.get("module") webnotes.response['values'] = webnotes.conn.sql(""" select distinct criteria_name, doc_type, parent_doc_type from `tabSearch Criteria` where module=%s and docstatus in (0, NULL) and ifnull(disabled, 0) = 0 order by criteria_name limit %s, %s""" % \ ("%s", cint(limit_start), cint(limit_page_length)), (module,), as_dict=True) @webnotes.whitelist() def get_report_list(): """return list on new style reports for modules""" limit_start = webnotes.form_dict.get("limit_start") limit_page_length = webnotes.form_dict.get("limit_page_length") module = webnotes.form_dict.get("module") webnotes.response['values'] = webnotes.conn.sql(""" select distinct tabReport.name, tabReport.ref_doctype, if(ifnull(tabReport.query, '')!='', 1, 0) as is_query_report from `tabReport`, `tabDocType` where tabDocType.module=%s and tabDocType.name = tabReport.ref_doctype and tabReport.docstatus in (0, NULL) and ifnull(tabReport.disabled,0) != 1 order by tabReport.name limit %s, %s""" % \ ("%s", cint(limit_start), cint(limit_page_length)), (module,), as_dict=True) def validate_status(status, options): if status not in options: msgprint(_("Status must be one of ") + comma_or(options), raise_exception=True)