Server Script
A Server Script lets you dynamically define a Python Script that is executed on the server on a document event or API
bench --site site1.local set-config server_script_enabled trueLast updated
A Server Script lets you dynamically define a Python Script that is executed on the server on a document event or API
bench --site site1.local set-config server_script_enabled trueLast updated
conditions = 'owner = {user} or assigned_by = {user}'.format(user=frappe.db.escape(user))select * from `tabToDo` where owner = '[email protected]' or assigned_by = '[email protected]'json # json module
dict # internal dict
_ # translator method
_dict # frappe._dict internal method
frappe.flags # global flags
# FORMATTING
frappe.format # frappe.format_value(value, dict(fieldtype='Currency'))
frappe.format_value # frappe.format_value(value, dict(fieldtype='Currency'))
frappe.date_format # default date format
frappe.format_date # returns date as "1st September 2019"
# SESSION
frappe.form_dict # form / request parameters
frappe.request # request object
frappe.response # response object
frappe.session.user # current user
frappe.session.csrf_token # CSRF token of the current session
frappe.user # current user
frappe.get_fullname # fullname of the current user
frappe.get_gravatar # frappe.utils.get_gravatar_url
frappe.full_name = # fullname of the current user
# ORM
frappe.get_meta # get metadata object
frappe.get_doc
frappe.get_cached_doc
frappe.get_list
frappe.get_all
frappe.get_system_settings
# DB
frappe.db.get_list
frappe.db.get_all
frappe.db.get_value
frappe.db.get_single_value
frappe.db.get_default
frappe.db.escape
frappe.db.exists
frappe.db.commit
# UTILITIES
frappe.msgprint # msgprint
frappe.get_hooks # app hooks
frappe.utils # methods in frappe.utils
frappe.render_template # frappe.render_template,
frappe.get_url # frappe.utils.get_url
frappe.sendmail # send email via server script
frappe.get_print # get pdf for a doc
frappe.attach_print # attach PDF to an email
socketio_port # port for socketio
style.border_color # '#d1d8dd'
get_next_link
scrub
guess_mimetype = mimetypes.guess_type,
html2text = html2text,
dev_server # True if in developer mode
run_script # Run another server script
# CACHE
frappe.cache.set_value
frappe.cache.get_value
frappe.cache.hset
frappe.cache.hgetif "test" in doc.description:
doc.status = 'Closed'if "validate" in doc.description:
raise frappe.ValidationErrorif doc.allocated_to:
frappe.get_doc(dict(
doctype = 'ToDo'
owner = doc.allocated_to,
description = doc.subject
)).insert()frappe.response['message'] = "hello"