mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-05 21:29:11 +00:00
style: bulk format code with black
v13 port because otherwise backports will result in conflicts always
This commit is contained in:
@@ -27,5 +27,5 @@ class Crop(Document):
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_item_details(item_code):
|
||||
item = frappe.get_doc('Item', item_code)
|
||||
item = frappe.get_doc("Item", item_code)
|
||||
return {"uom": item.stock_uom, "rate": item.valuation_rate}
|
||||
|
||||
@@ -1,13 +1,5 @@
|
||||
|
||||
from frappe import _
|
||||
|
||||
|
||||
def get_data():
|
||||
return {
|
||||
'transactions': [
|
||||
{
|
||||
'label': _('Crop Cycle'),
|
||||
'items': ['Crop Cycle']
|
||||
}
|
||||
]
|
||||
}
|
||||
return {"transactions": [{"label": _("Crop Cycle"), "items": ["Crop Cycle"]}]}
|
||||
|
||||
@@ -7,7 +7,8 @@ import frappe
|
||||
|
||||
test_dependencies = ["Fertilizer"]
|
||||
|
||||
|
||||
class TestCrop(unittest.TestCase):
|
||||
def test_crop_period(self):
|
||||
basil = frappe.get_doc('Crop', 'Basil from seed')
|
||||
basil = frappe.get_doc("Crop", "Basil from seed")
|
||||
self.assertEqual(basil.period, 15)
|
||||
|
||||
@@ -22,7 +22,7 @@ class CropCycle(Document):
|
||||
self.create_tasks_for_diseases()
|
||||
|
||||
def set_missing_values(self):
|
||||
crop = frappe.get_doc('Crop', self.crop)
|
||||
crop = frappe.get_doc("Crop", self.crop)
|
||||
|
||||
if not self.crop_spacing_uom:
|
||||
self.crop_spacing_uom = crop.crop_spacing_uom
|
||||
@@ -31,7 +31,7 @@ class CropCycle(Document):
|
||||
self.row_spacing_uom = crop.row_spacing_uom
|
||||
|
||||
def create_crop_cycle_project(self):
|
||||
crop = frappe.get_doc('Crop', self.crop)
|
||||
crop = frappe.get_doc("Crop", self.crop)
|
||||
|
||||
self.project = self.create_project(crop.period, crop.agriculture_task)
|
||||
self.create_task(crop.agriculture_task, self.project, self.start_date)
|
||||
@@ -42,49 +42,56 @@ class CropCycle(Document):
|
||||
self.import_disease_tasks(disease.disease, disease.start_date)
|
||||
disease.tasks_created = True
|
||||
|
||||
frappe.msgprint(_("Tasks have been created for managing the {0} disease (on row {1})").format(disease.disease, disease.idx))
|
||||
frappe.msgprint(
|
||||
_("Tasks have been created for managing the {0} disease (on row {1})").format(
|
||||
disease.disease, disease.idx
|
||||
)
|
||||
)
|
||||
|
||||
def import_disease_tasks(self, disease, start_date):
|
||||
disease_doc = frappe.get_doc('Disease', disease)
|
||||
disease_doc = frappe.get_doc("Disease", disease)
|
||||
self.create_task(disease_doc.treatment_task, self.project, start_date)
|
||||
|
||||
def create_project(self, period, crop_tasks):
|
||||
project = frappe.get_doc({
|
||||
"doctype": "Project",
|
||||
"project_name": self.title,
|
||||
"expected_start_date": self.start_date,
|
||||
"expected_end_date": add_days(self.start_date, period - 1)
|
||||
}).insert()
|
||||
project = frappe.get_doc(
|
||||
{
|
||||
"doctype": "Project",
|
||||
"project_name": self.title,
|
||||
"expected_start_date": self.start_date,
|
||||
"expected_end_date": add_days(self.start_date, period - 1),
|
||||
}
|
||||
).insert()
|
||||
|
||||
return project.name
|
||||
|
||||
def create_task(self, crop_tasks, project_name, start_date):
|
||||
for crop_task in crop_tasks:
|
||||
frappe.get_doc({
|
||||
"doctype": "Task",
|
||||
"subject": crop_task.get("task_name"),
|
||||
"priority": crop_task.get("priority"),
|
||||
"project": project_name,
|
||||
"exp_start_date": add_days(start_date, crop_task.get("start_day") - 1),
|
||||
"exp_end_date": add_days(start_date, crop_task.get("end_day") - 1)
|
||||
}).insert()
|
||||
frappe.get_doc(
|
||||
{
|
||||
"doctype": "Task",
|
||||
"subject": crop_task.get("task_name"),
|
||||
"priority": crop_task.get("priority"),
|
||||
"project": project_name,
|
||||
"exp_start_date": add_days(start_date, crop_task.get("start_day") - 1),
|
||||
"exp_end_date": add_days(start_date, crop_task.get("end_day") - 1),
|
||||
}
|
||||
).insert()
|
||||
|
||||
@frappe.whitelist()
|
||||
def reload_linked_analysis(self):
|
||||
linked_doctypes = ['Soil Texture', 'Soil Analysis', 'Plant Analysis']
|
||||
required_fields = ['location', 'name', 'collection_datetime']
|
||||
linked_doctypes = ["Soil Texture", "Soil Analysis", "Plant Analysis"]
|
||||
required_fields = ["location", "name", "collection_datetime"]
|
||||
output = {}
|
||||
|
||||
for doctype in linked_doctypes:
|
||||
output[doctype] = frappe.get_all(doctype, fields=required_fields)
|
||||
|
||||
output['Location'] = []
|
||||
output["Location"] = []
|
||||
|
||||
for location in self.linked_location:
|
||||
output['Location'].append(frappe.get_doc('Location', location.location))
|
||||
output["Location"].append(frappe.get_doc("Location", location.location))
|
||||
|
||||
frappe.publish_realtime("List of Linked Docs",
|
||||
output, user=frappe.session.user)
|
||||
frappe.publish_realtime("List of Linked Docs", output, user=frappe.session.user)
|
||||
|
||||
@frappe.whitelist()
|
||||
def append_to_child(self, obj_to_append):
|
||||
@@ -96,11 +103,11 @@ class CropCycle(Document):
|
||||
|
||||
|
||||
def get_coordinates(doc):
|
||||
return ast.literal_eval(doc.location).get('features')[0].get('geometry').get('coordinates')
|
||||
return ast.literal_eval(doc.location).get("features")[0].get("geometry").get("coordinates")
|
||||
|
||||
|
||||
def get_geometry_type(doc):
|
||||
return ast.literal_eval(doc.location).get('features')[0].get('geometry').get('type')
|
||||
return ast.literal_eval(doc.location).get("features")[0].get("geometry").get("type")
|
||||
|
||||
|
||||
def is_in_location(point, vs):
|
||||
@@ -114,8 +121,7 @@ def is_in_location(point, vs):
|
||||
xi, yi = vs[i]
|
||||
xj, yj = vs[j]
|
||||
|
||||
intersect = ((yi > y) != (yj > y)) and (
|
||||
x < (xj - xi) * (y - yi) / (yj - yi) + xi)
|
||||
intersect = ((yi > y) != (yj > y)) and (x < (xj - xi) * (y - yi) / (yj - yi) + xi)
|
||||
|
||||
if intersect:
|
||||
inside = not inside
|
||||
|
||||
@@ -11,8 +11,8 @@ test_dependencies = ["Crop", "Fertilizer", "Location", "Disease"]
|
||||
|
||||
class TestCropCycle(unittest.TestCase):
|
||||
def test_crop_cycle_creation(self):
|
||||
cycle = frappe.get_doc('Crop Cycle', 'Basil from seed 2017')
|
||||
self.assertTrue(frappe.db.exists('Crop Cycle', 'Basil from seed 2017'))
|
||||
cycle = frappe.get_doc("Crop Cycle", "Basil from seed 2017")
|
||||
self.assertTrue(frappe.db.exists("Crop Cycle", "Basil from seed 2017"))
|
||||
|
||||
# check if the tasks were created
|
||||
self.assertEqual(check_task_creation(), True)
|
||||
@@ -23,45 +23,48 @@ def check_task_creation():
|
||||
all_task_dict = {
|
||||
"Survey and find the aphid locations": {
|
||||
"exp_start_date": datetime.date(2017, 11, 21),
|
||||
"exp_end_date": datetime.date(2017, 11, 22)
|
||||
"exp_end_date": datetime.date(2017, 11, 22),
|
||||
},
|
||||
"Apply Pesticides": {
|
||||
"exp_start_date": datetime.date(2017, 11, 23),
|
||||
"exp_end_date": datetime.date(2017, 11, 23)
|
||||
"exp_end_date": datetime.date(2017, 11, 23),
|
||||
},
|
||||
"Plough the field": {
|
||||
"exp_start_date": datetime.date(2017, 11, 11),
|
||||
"exp_end_date": datetime.date(2017, 11, 11)
|
||||
"exp_end_date": datetime.date(2017, 11, 11),
|
||||
},
|
||||
"Plant the seeds": {
|
||||
"exp_start_date": datetime.date(2017, 11, 12),
|
||||
"exp_end_date": datetime.date(2017, 11, 13)
|
||||
"exp_end_date": datetime.date(2017, 11, 13),
|
||||
},
|
||||
"Water the field": {
|
||||
"exp_start_date": datetime.date(2017, 11, 14),
|
||||
"exp_end_date": datetime.date(2017, 11, 14)
|
||||
"exp_end_date": datetime.date(2017, 11, 14),
|
||||
},
|
||||
"First harvest": {
|
||||
"exp_start_date": datetime.date(2017, 11, 18),
|
||||
"exp_end_date": datetime.date(2017, 11, 18)
|
||||
"exp_end_date": datetime.date(2017, 11, 18),
|
||||
},
|
||||
"Add the fertilizer": {
|
||||
"exp_start_date": datetime.date(2017, 11, 20),
|
||||
"exp_end_date": datetime.date(2017, 11, 22)
|
||||
"exp_end_date": datetime.date(2017, 11, 22),
|
||||
},
|
||||
"Final cut": {
|
||||
"exp_start_date": datetime.date(2017, 11, 25),
|
||||
"exp_end_date": datetime.date(2017, 11, 25)
|
||||
}
|
||||
"exp_end_date": datetime.date(2017, 11, 25),
|
||||
},
|
||||
}
|
||||
|
||||
all_tasks = frappe.get_all('Task')
|
||||
all_tasks = frappe.get_all("Task")
|
||||
|
||||
for task in all_tasks:
|
||||
sample_task = frappe.get_doc('Task', task.name)
|
||||
sample_task = frappe.get_doc("Task", task.name)
|
||||
|
||||
if sample_task.subject in list(all_task_dict):
|
||||
if sample_task.exp_start_date != all_task_dict[sample_task.subject]['exp_start_date'] or sample_task.exp_end_date != all_task_dict[sample_task.subject]['exp_end_date']:
|
||||
if (
|
||||
sample_task.exp_start_date != all_task_dict[sample_task.subject]["exp_start_date"]
|
||||
or sample_task.exp_end_date != all_task_dict[sample_task.subject]["exp_end_date"]
|
||||
):
|
||||
return False
|
||||
all_task_dict.pop(sample_task.subject)
|
||||
|
||||
@@ -69,4 +72,4 @@ def check_task_creation():
|
||||
|
||||
|
||||
def check_project_creation():
|
||||
return True if frappe.db.exists('Project', {'project_name': 'Basil from seed 2017'}) else False
|
||||
return True if frappe.db.exists("Project", {"project_name": "Basil from seed 2017"}) else False
|
||||
|
||||
@@ -15,5 +15,6 @@ class Disease(Document):
|
||||
if task.start_day > task.end_day:
|
||||
frappe.throw(_("Start day is greater than end day in task '{0}'").format(task.task_name))
|
||||
# to calculate the period of the Crop Cycle
|
||||
if task.end_day > max_period: max_period = task.end_day
|
||||
if task.end_day > max_period:
|
||||
max_period = task.end_day
|
||||
self.treatment_period = max_period
|
||||
|
||||
@@ -8,5 +8,5 @@ import frappe
|
||||
|
||||
class TestDisease(unittest.TestCase):
|
||||
def test_treatment_period(self):
|
||||
disease = frappe.get_doc('Disease', 'Aphids')
|
||||
disease = frappe.get_doc("Disease", "Aphids")
|
||||
self.assertEqual(disease.treatment_period, 3)
|
||||
|
||||
@@ -9,6 +9,6 @@ from frappe.model.document import Document
|
||||
class Fertilizer(Document):
|
||||
@frappe.whitelist()
|
||||
def load_contents(self):
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={'linked_doctype':'Fertilizer'})
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={"linked_doctype": "Fertilizer"})
|
||||
for doc in docs:
|
||||
self.append('fertilizer_contents', {'title': str(doc.name)})
|
||||
self.append("fertilizer_contents", {"title": str(doc.name)})
|
||||
|
||||
@@ -8,4 +8,4 @@ import frappe
|
||||
|
||||
class TestFertilizer(unittest.TestCase):
|
||||
def test_fertilizer_creation(self):
|
||||
self.assertEqual(frappe.db.exists('Fertilizer', 'Urea'), 'Urea')
|
||||
self.assertEqual(frappe.db.exists("Fertilizer", "Urea"), "Urea")
|
||||
|
||||
@@ -9,6 +9,8 @@ from frappe.model.document import Document
|
||||
class PlantAnalysis(Document):
|
||||
@frappe.whitelist()
|
||||
def load_contents(self):
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={'linked_doctype':'Plant Analysis'})
|
||||
docs = frappe.get_all(
|
||||
"Agriculture Analysis Criteria", filters={"linked_doctype": "Plant Analysis"}
|
||||
)
|
||||
for doc in docs:
|
||||
self.append('plant_analysis_criteria', {'title': str(doc.name)})
|
||||
self.append("plant_analysis_criteria", {"title": str(doc.name)})
|
||||
|
||||
@@ -9,6 +9,8 @@ from frappe.model.document import Document
|
||||
class SoilAnalysis(Document):
|
||||
@frappe.whitelist()
|
||||
def load_contents(self):
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={'linked_doctype':'Soil Analysis'})
|
||||
docs = frappe.get_all(
|
||||
"Agriculture Analysis Criteria", filters={"linked_doctype": "Soil Analysis"}
|
||||
)
|
||||
for doc in docs:
|
||||
self.append('soil_analysis_criteria', {'title': str(doc.name)})
|
||||
self.append("soil_analysis_criteria", {"title": str(doc.name)})
|
||||
|
||||
@@ -10,62 +10,74 @@ from frappe.utils import cint, flt
|
||||
|
||||
class SoilTexture(Document):
|
||||
soil_edit_order = [2, 1, 0]
|
||||
soil_types = ['clay_composition', 'sand_composition', 'silt_composition']
|
||||
soil_types = ["clay_composition", "sand_composition", "silt_composition"]
|
||||
|
||||
@frappe.whitelist()
|
||||
def load_contents(self):
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={'linked_doctype':'Soil Texture'})
|
||||
docs = frappe.get_all(
|
||||
"Agriculture Analysis Criteria", filters={"linked_doctype": "Soil Texture"}
|
||||
)
|
||||
for doc in docs:
|
||||
self.append('soil_texture_criteria', {'title': str(doc.name)})
|
||||
self.append("soil_texture_criteria", {"title": str(doc.name)})
|
||||
|
||||
def validate(self):
|
||||
self.update_soil_edit('sand_composition')
|
||||
self.update_soil_edit("sand_composition")
|
||||
for soil_type in self.soil_types:
|
||||
if self.get(soil_type) > 100 or self.get(soil_type) < 0:
|
||||
frappe.throw(_("{0} should be a value between 0 and 100").format(soil_type))
|
||||
if sum(self.get(soil_type) for soil_type in self.soil_types) != 100:
|
||||
frappe.throw(_('Soil compositions do not add up to 100'))
|
||||
frappe.throw(_("Soil compositions do not add up to 100"))
|
||||
|
||||
@frappe.whitelist()
|
||||
def update_soil_edit(self, soil_type):
|
||||
self.soil_edit_order[self.soil_types.index(soil_type)] = max(self.soil_edit_order)+1
|
||||
self.soil_edit_order[self.soil_types.index(soil_type)] = max(self.soil_edit_order) + 1
|
||||
self.soil_type = self.get_soil_type()
|
||||
|
||||
def get_soil_type(self):
|
||||
# update the last edited soil type
|
||||
if sum(self.soil_edit_order) < 5: return
|
||||
if sum(self.soil_edit_order) < 5:
|
||||
return
|
||||
last_edit_index = self.soil_edit_order.index(min(self.soil_edit_order))
|
||||
|
||||
# set composition of the last edited soil
|
||||
self.set(self.soil_types[last_edit_index],
|
||||
100 - sum(cint(self.get(soil_type)) for soil_type in self.soil_types) + cint(self.get(self.soil_types[last_edit_index])))
|
||||
self.set(
|
||||
self.soil_types[last_edit_index],
|
||||
100
|
||||
- sum(cint(self.get(soil_type)) for soil_type in self.soil_types)
|
||||
+ cint(self.get(self.soil_types[last_edit_index])),
|
||||
)
|
||||
|
||||
# calculate soil type
|
||||
c, sa, si = flt(self.clay_composition), flt(self.sand_composition), flt(self.silt_composition)
|
||||
|
||||
if si + (1.5 * c) < 15:
|
||||
return 'Sand'
|
||||
return "Sand"
|
||||
elif si + 1.5 * c >= 15 and si + 2 * c < 30:
|
||||
return 'Loamy Sand'
|
||||
elif ((c >= 7 and c < 20) or (sa > 52) and ((si + 2*c) >= 30) or (c < 7 and si < 50 and (si+2*c) >= 30)):
|
||||
return 'Sandy Loam'
|
||||
elif ((c >= 7 and c < 27) and (si >= 28 and si < 50) and (sa <= 52)):
|
||||
return 'Loam'
|
||||
elif ((si >= 50 and (c >= 12 and c < 27)) or ((si >= 50 and si < 80) and c < 12)):
|
||||
return 'Silt Loam'
|
||||
elif (si >= 80 and c < 12):
|
||||
return 'Silt'
|
||||
elif ((c >= 20 and c < 35) and (si < 28) and (sa > 45)):
|
||||
return 'Sandy Clay Loam'
|
||||
elif ((c >= 27 and c < 40) and (sa > 20 and sa <= 45)):
|
||||
return 'Clay Loam'
|
||||
elif ((c >= 27 and c < 40) and (sa <= 20)):
|
||||
return 'Silty Clay Loam'
|
||||
elif (c >= 35 and sa > 45):
|
||||
return 'Sandy Clay'
|
||||
elif (c >= 40 and si >= 40):
|
||||
return 'Silty Clay'
|
||||
elif (c >= 40 and sa <= 45 and si < 40):
|
||||
return 'Clay'
|
||||
return "Loamy Sand"
|
||||
elif (
|
||||
(c >= 7 and c < 20)
|
||||
or (sa > 52)
|
||||
and ((si + 2 * c) >= 30)
|
||||
or (c < 7 and si < 50 and (si + 2 * c) >= 30)
|
||||
):
|
||||
return "Sandy Loam"
|
||||
elif (c >= 7 and c < 27) and (si >= 28 and si < 50) and (sa <= 52):
|
||||
return "Loam"
|
||||
elif (si >= 50 and (c >= 12 and c < 27)) or ((si >= 50 and si < 80) and c < 12):
|
||||
return "Silt Loam"
|
||||
elif si >= 80 and c < 12:
|
||||
return "Silt"
|
||||
elif (c >= 20 and c < 35) and (si < 28) and (sa > 45):
|
||||
return "Sandy Clay Loam"
|
||||
elif (c >= 27 and c < 40) and (sa > 20 and sa <= 45):
|
||||
return "Clay Loam"
|
||||
elif (c >= 27 and c < 40) and (sa <= 20):
|
||||
return "Silty Clay Loam"
|
||||
elif c >= 35 and sa > 45:
|
||||
return "Sandy Clay"
|
||||
elif c >= 40 and si >= 40:
|
||||
return "Silty Clay"
|
||||
elif c >= 40 and sa <= 45 and si < 40:
|
||||
return "Clay"
|
||||
else:
|
||||
return 'Select'
|
||||
return "Select"
|
||||
|
||||
@@ -8,7 +8,9 @@ import frappe
|
||||
|
||||
class TestSoilTexture(unittest.TestCase):
|
||||
def test_texture_selection(self):
|
||||
soil_tex = frappe.get_all('Soil Texture', fields=['name'], filters={'collection_datetime': '2017-11-08'})
|
||||
doc = frappe.get_doc('Soil Texture', soil_tex[0].name)
|
||||
soil_tex = frappe.get_all(
|
||||
"Soil Texture", fields=["name"], filters={"collection_datetime": "2017-11-08"}
|
||||
)
|
||||
doc = frappe.get_doc("Soil Texture", soil_tex[0].name)
|
||||
self.assertEqual(doc.silt_composition, 50)
|
||||
self.assertEqual(doc.soil_type, 'Silt Loam')
|
||||
self.assertEqual(doc.soil_type, "Silt Loam")
|
||||
|
||||
@@ -10,9 +10,11 @@ from frappe.model.document import Document
|
||||
class WaterAnalysis(Document):
|
||||
@frappe.whitelist()
|
||||
def load_contents(self):
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={'linked_doctype':'Water Analysis'})
|
||||
docs = frappe.get_all(
|
||||
"Agriculture Analysis Criteria", filters={"linked_doctype": "Water Analysis"}
|
||||
)
|
||||
for doc in docs:
|
||||
self.append('water_analysis_criteria', {'title': str(doc.name)})
|
||||
self.append("water_analysis_criteria", {"title": str(doc.name)})
|
||||
|
||||
@frappe.whitelist()
|
||||
def update_lab_result_date(self):
|
||||
@@ -21,6 +23,6 @@ class WaterAnalysis(Document):
|
||||
|
||||
def validate(self):
|
||||
if self.collection_datetime > self.laboratory_testing_datetime:
|
||||
frappe.throw(_('Lab testing datetime cannot be before collection datetime'))
|
||||
frappe.throw(_("Lab testing datetime cannot be before collection datetime"))
|
||||
if self.laboratory_testing_datetime > self.result_datetime:
|
||||
frappe.throw(_('Lab result datetime cannot be before testing datetime'))
|
||||
frappe.throw(_("Lab result datetime cannot be before testing datetime"))
|
||||
|
||||
@@ -9,6 +9,6 @@ from frappe.model.document import Document
|
||||
class Weather(Document):
|
||||
@frappe.whitelist()
|
||||
def load_contents(self):
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={'linked_doctype':'Weather'})
|
||||
docs = frappe.get_all("Agriculture Analysis Criteria", filters={"linked_doctype": "Weather"})
|
||||
for doc in docs:
|
||||
self.append('weather_parameter', {'title': str(doc.name)})
|
||||
self.append("weather_parameter", {"title": str(doc.name)})
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
import frappe
|
||||
from frappe import _
|
||||
|
||||
@@ -6,427 +5,493 @@ from erpnext.setup.utils import insert_record
|
||||
|
||||
|
||||
def setup_agriculture():
|
||||
if frappe.get_all('Agriculture Analysis Criteria'):
|
||||
if frappe.get_all("Agriculture Analysis Criteria"):
|
||||
# already setup
|
||||
return
|
||||
create_agriculture_data()
|
||||
|
||||
|
||||
def create_agriculture_data():
|
||||
records = [
|
||||
dict(
|
||||
doctype='Item Group',
|
||||
item_group_name='Fertilizer',
|
||||
doctype="Item Group",
|
||||
item_group_name="Fertilizer",
|
||||
is_group=0,
|
||||
parent_item_group=_('All Item Groups')),
|
||||
parent_item_group=_("All Item Groups"),
|
||||
),
|
||||
dict(
|
||||
doctype='Item Group',
|
||||
item_group_name='Seed',
|
||||
doctype="Item Group", item_group_name="Seed", is_group=0, parent_item_group=_("All Item Groups")
|
||||
),
|
||||
dict(
|
||||
doctype="Item Group",
|
||||
item_group_name="By-product",
|
||||
is_group=0,
|
||||
parent_item_group=_('All Item Groups')),
|
||||
parent_item_group=_("All Item Groups"),
|
||||
),
|
||||
dict(
|
||||
doctype='Item Group',
|
||||
item_group_name='By-product',
|
||||
doctype="Item Group",
|
||||
item_group_name="Produce",
|
||||
is_group=0,
|
||||
parent_item_group=_('All Item Groups')),
|
||||
parent_item_group=_("All Item Groups"),
|
||||
),
|
||||
dict(
|
||||
doctype='Item Group',
|
||||
item_group_name='Produce',
|
||||
is_group=0,
|
||||
parent_item_group=_('All Item Groups')),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Nitrogen Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Nitrogen Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Phosphorous Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Phosphorous Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Potassium Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Potassium Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Calcium Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Calcium Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Sulphur Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Sulphur Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Magnesium Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Magnesium Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Iron Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Iron Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Copper Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Copper Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Zinc Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Zinc Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Boron Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Boron Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Manganese Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Manganese Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Chlorine Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Chlorine Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Molybdenum Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Molybdenum Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Sodium Content',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Sodium Content",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Humic Acid',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Humic Acid",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Fulvic Acid',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Fulvic Acid",
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
linked_doctype="Fertilizer",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Inert',
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
doctype="Agriculture Analysis Criteria", title="Inert", standard=1, linked_doctype="Fertilizer"
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Others',
|
||||
standard=1,
|
||||
linked_doctype='Fertilizer'),
|
||||
doctype="Agriculture Analysis Criteria", title="Others", standard=1, linked_doctype="Fertilizer"
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Nitrogen',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Nitrogen",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Phosphorous',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Phosphorous",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Potassium',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Potassium",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Calcium',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Calcium",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Magnesium',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Magnesium",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Sulphur',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Sulphur",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Boron',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Boron",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Copper',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Copper",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Iron',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Iron",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Manganese',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Manganese",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Zinc',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Zinc",
|
||||
standard=1,
|
||||
linked_doctype='Plant Analysis'),
|
||||
linked_doctype="Plant Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Depth (in cm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Depth (in cm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Soil pH',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Soil pH",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Salt Concentration (%)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Salt Concentration (%)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Organic Matter (%)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Organic Matter (%)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='CEC (Cation Exchange Capacity) (MAQ/100mL)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="CEC (Cation Exchange Capacity) (MAQ/100mL)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Potassium Saturation (%)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Potassium Saturation (%)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Calcium Saturation (%)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Calcium Saturation (%)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Manganese Saturation (%)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Manganese Saturation (%)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Nirtogen (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Nirtogen (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Phosphorous (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Phosphorous (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Potassium (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Potassium (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Calcium (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Calcium (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Magnesium (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Magnesium (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Sulphur (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Sulphur (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Copper (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Copper (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Iron (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Iron (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Manganese (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Manganese (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Zinc (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Zinc (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Aluminium (ppm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Aluminium (ppm)",
|
||||
standard=1,
|
||||
linked_doctype='Soil Analysis'),
|
||||
linked_doctype="Soil Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Water pH',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Water pH",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Conductivity (mS/cm)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Conductivity (mS/cm)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Hardness (mg/CaCO3)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Hardness (mg/CaCO3)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Turbidity (NTU)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Turbidity (NTU)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Odor',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Odor",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Color',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Color",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Nitrate (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Nitrate (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Nirtite (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Nirtite (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Calcium (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Calcium (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Magnesium (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Magnesium (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Sulphate (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Sulphate (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Boron (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Boron (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Copper (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Copper (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Iron (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Iron (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Manganese (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Manganese (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Zinc (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Zinc (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Chlorine (mg/L)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Chlorine (mg/L)",
|
||||
standard=1,
|
||||
linked_doctype='Water Analysis'),
|
||||
linked_doctype="Water Analysis",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Bulk Density',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Bulk Density",
|
||||
standard=1,
|
||||
linked_doctype='Soil Texture'),
|
||||
linked_doctype="Soil Texture",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Field Capacity',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Field Capacity",
|
||||
standard=1,
|
||||
linked_doctype='Soil Texture'),
|
||||
linked_doctype="Soil Texture",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Wilting Point',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Wilting Point",
|
||||
standard=1,
|
||||
linked_doctype='Soil Texture'),
|
||||
linked_doctype="Soil Texture",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Hydraulic Conductivity',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Hydraulic Conductivity",
|
||||
standard=1,
|
||||
linked_doctype='Soil Texture'),
|
||||
linked_doctype="Soil Texture",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Organic Matter',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Organic Matter",
|
||||
standard=1,
|
||||
linked_doctype='Soil Texture'),
|
||||
linked_doctype="Soil Texture",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Temperature High',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Temperature High",
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
linked_doctype="Weather",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Temperature Low',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Temperature Low",
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
linked_doctype="Weather",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Temperature Average',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Temperature Average",
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
linked_doctype="Weather",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Dew Point',
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
doctype="Agriculture Analysis Criteria", title="Dew Point", standard=1, linked_doctype="Weather"
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Precipitation Received',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Precipitation Received",
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
linked_doctype="Weather",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Humidity',
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
doctype="Agriculture Analysis Criteria", title="Humidity", standard=1, linked_doctype="Weather"
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Pressure',
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
doctype="Agriculture Analysis Criteria", title="Pressure", standard=1, linked_doctype="Weather"
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Insolation/ PAR (Photosynthetically Active Radiation)',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Insolation/ PAR (Photosynthetically Active Radiation)",
|
||||
standard=1,
|
||||
linked_doctype='Weather'),
|
||||
linked_doctype="Weather",
|
||||
),
|
||||
dict(
|
||||
doctype='Agriculture Analysis Criteria',
|
||||
title='Degree Days',
|
||||
doctype="Agriculture Analysis Criteria",
|
||||
title="Degree Days",
|
||||
standard=1,
|
||||
linked_doctype='Weather')
|
||||
linked_doctype="Weather",
|
||||
),
|
||||
]
|
||||
insert_record(records)
|
||||
|
||||
Reference in New Issue
Block a user