Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Task: TS1001Q0B2
- */
- // The screen uses global ldata: ldTempOne and ldTempTwo
- scrset(
- sActivityReportingCPGroup:frm(#Activity_report, 60|60|60|55,
- init:block(
- set($pestCode, .pest, dDone),
- set($taskCode, .task, dDone),
- set($lc,.plot,dDone),
- set($plotCode,.plot,dDone)
- set($crop, .crop, dDone),
- set($farm,.farm,dTemp),
- //plot area
- set($plotArea,${locationArea(lc,'DEF')}),
- if(${isEmpty(plotArea)},set($plotArea,${0})),
- set($plotAreaShort,${frm(plotArea,0,2)}),
- // time
- set($startHour,.start_hour,dTemp),
- set($startMinutes,.start_minutes,dTemp),
- set($endHour,.end_hour,dTemp),
- set($endMinutes,.end_minutes,dTemp),
- //Setting the list of the activities
- set($activityType, .activity_data,dTemp),
- if(${notEmpty(activityType)}, block(
- set($previousActivitySelected, .previous_activity_selected,dTemp),
- if(${def(previousActivitySelected,"n/a")!=activityType}, block(
- set(.previous_activity_selected, ${activityType},dTemp),
- unset(.activity_sub_type, dTemp),
- set(.list_type,$activityType,dTemp),
- set($formatCategoryActivities, ${frm(activityType-1,0,0)}),
- // populating ldata
- set($allActivitiesArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[2]/list['.formatCategoryActivities.']/li.val')}),
- remli(all, ldTempTwo),
- for(eachActivity, $allActivitiesArray, block(
- set($activityName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[2]/list/li[val==eachActivity].lbl'),res("n%2Fa"))}),
- addli($eachActivity, $activityName, rid:ldTempTwo)
- ))
- ))
- ))
- ),
- refresh:block(
- // Calculations for the total hours
- if(${allNotNull(startHour,startMinutes,endHour,endMinutes)},block(
- set($startTime,${setMinute(setHour(date(),startHour),startMinutes)}),
- set($endTime,${setMinute(setHour(date(),endHour),endMinutes)}),
- set($workHoursMachine,${frm(minutesInterval(startTime,endTime)/60,0,2)})
- if(${workHoursMachine<0},block(
- set($endTime,${shiftDays(endTime,1)})
- set($workHoursMachine,${frm(minutesInterval(startTime,endTime)/60,0,2)})
- )),
- set($hoursWorked, ${frm(floor(workHoursMachine),2,0)}),
- set($minutesWorked, ${frm((workHoursMachine-floor(workHoursMachine))*60,2,0)})
- )),
- //Visibility check for the pannels
- if(${notEmpty(activityType)}, block(
- if(${activityType=='1'||activityType=='5'||activityType=='6'||activityType=='7'||activityType=='9'||activityType=='10'}, block(
- set($visiblePannelOne, ${'yes'}),
- set(.visible_pannel_one,$visiblePannelOne,dTemp)
- )),
- if(${activityType=='2'||activityType=='4'}, block(
- set($visiblePannelTwo, ${'yes'}),
- set(.visible_pannel_two,$visiblePannelTwo,dTemp)
- )),
- if(${activityType=='3'||activityType=='8'}, block(
- set($visiblePannelThree, ${'yes'}),
- set(.visible_pannel_three,$visiblePannelThree,dTemp)
- ))
- )),
- ),
- focus:block(
- set($lblName,${qp('.lblName','dTemp')}),
- if(${notEmpty(lblName)}, block(
- focus(${'.'.lblName}),
- unset(.lblName,dTemp))
- )
- ),
- //Headers
- lbl(#Date%3A, lo(1, m(5, 0, 0, 0), style:captionGrey)),
- lbl(${date()}, lo(3, m(5, 0, 0, 0), style:captionGrey)),
- lbl(#Plot%3A, lo(1, bg:FFc6d2d2)),
- lbl(${qp('.plotName', 'dTemp')}, lo(3, bg:FFc6d2d2)),
- lbl(#Crop%3A, lo(1, style:captionGrey)),
- lbl(${qp('.cropName', 'dTemp')}, lo(3, style:captionGrey)),
- lbl(#Area%3A,lo(1,bg:FFc6d2d2)),
- lbl(${def(plotAreaShort,'n/a').' '.res('Hectare')},lo(3,bg:FFc6d2d2)),
- lbl(#Report_field_activity,lo(4,m(5,0,5,0),style:group)),
- // Selection of sub-activities
- lPrpActivities:pnl(cols:55|55|55|55|20,lo(4),
- btn(#Select_activity_type,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- set(.lblName, ${'lPrpActivities'}, dTemp),
- goto(scr,.def.sActivitiesDataByType)
- ))),
- list(in:listType,req:yes,val:${'-1'},
- dpath(dTemp,.list_type),
- lo(2,enabled:false),
- li(-1,#n%2fa)
- producer(listOptions,prm(prop:activity_types))
- ),
- lbl(#Activity,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
- list(activitySubType,true,rows:1,sort:no,
- lo(2,m(0,1,0,0)),
- dpath(dTemp,.activity_sub_type),
- data:ldTempTwo)
- ),
- // Selection of full or partial area
- lbl(${res("Area")." (HA)"},lo(1)),
- ni(partialArea,req:yes,val:${def(plotAreaShort,"n/a")},min:0,max:${def(plotAreaShort,999)},lo(1),dpath(dTemp,.partial_area)),
- lbl("",lo(2)),
- // Selection of Rate
- lbl(${res("Rate")." (HA)"},lo(1)),
- ni(rate,req:yes,val:1,min:0,lo(1),dpath(dTemp,.rate)),
- lbl("",lo(2)),
- //Start and End time
- lWorkedHours:pnl(cols:100|40|33|16|33|13,lo(4),
- lbl(${res("Start_Time").":"},lo(2,m(10,15,0,0),style:captionGrey)),
- list(startHour,true,0,1,lo(1,m(10,5,0,0)),dpath(dTemp,.start_hour),
- li(0,"00"),li(1,"01"),li(2,"02"),li(3,"03"),li(4,"04"),li(5,"05"),li(6,"06"),
- li(7,"07"),li(8,"08"),li(9,"09"),li(10,"10"),li(11,"11"),li(12,"12"),li(13,"13"),
- li(14,"14"),li(15,"15"),li(16,"16"),li(17,"17"),li(18,"18"),li(19,"19"),
- li(20,"20"),li(21,"21"),li(22,"22"),li(23,"23")
- ),
- lbl(':',lo(1,m(10,0,0,0))),
- list(startMinutes,true,0,1,lo(1,m(10,5,0,0)),dpath(dTemp,.start_minutes),
- li(0,"00"),li(5,"05"),li(10,"10"),li(15,"15"),li(20,"20"),
- li(25,"25"),li(30,"30"),li(35,"35"),li(40,"40"),li(45,"45"),
- li(50,"50"),li(55,"55")
- ),
- lbl('',lo(1)),
- lbl(${res("End_Time").":"},lo(2,m(0,15,0,0),style:captionGrey)),
- list(endHour,true,0,1,lo(1,m(0,5,0,0)),dpath(dTemp,.end_hour),
- li(0,"00"),li(1,"01"),li(2,"02"),li(3,"03"),li(4,"04"),
- li(5,"05"),li(6,"06"),li(7,"07"),li(8,"08"),li(9,"09"),li(10,"10"),li(11,"11"),
- li(12,"12"),li(13,"13"),li(14,"14"),li(15,"15"),li(16,"16"),li(17,"17"),
- li(18,"18"),li(19,"19"),li(20,"20"),li(21,"21"),li(22,"22"),li(23,"23")
- ),
- lbl(':',lo(1)),
- list(endMinutes,true,0,1,lo(1,m(0,5,0,0)),dpath(dTemp,.end_minutes),
- li(0,"00"),li(5,"05"),li(10,"10"),li(15,"15"),li(20,"20"),li(25,"25"),
- li(30,"30"),li(35,"35"),li(40,"40"),li(45,"45"),li(50,"50"),li(55,"55")
- ),
- lbl(${res("Total_Hours")},lo(3,m(5,15,0,0),style:captionGrey)),
- lbl(${if(notEmpty(workHoursMachine),def(hoursWorked,"n/a").":".def(minutesWorked,"n/a"),"n/a")},sd:yes,lo(3,m(5,0,0,15),style:captionGrey))
- ),
- // Report Responsible Workers panel - selection of type and name
- lbl(#Report_responsible_workers,lo(4,m(5,0,5,0),style:group)),
- lPrpResponsibleWorkers:prp(ivar:ri,lo(4),dpath(dTemp,.all_workers\:dlist/dset[ri]),
- cont:pnl(cols:55|55|55|55|20,
- lbl(#Worker_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
- list(workerType,true,rows:1,sort:false,
- lo(2,m(0,1,0,0)),
- dpath(dTemp,.all_workers\:dlist/dset[ri].workers_type),
- producer(listOptions,prm(prop:workers_types_cpg))),
- del:btn(X),
- btn(#Select_worker,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- set($workerCategory, ${qps('.all_workers\:dlist/dset[ri].workers_type','dTemp')})
- if(${notEmpty(workerCategory)}, block(
- // format category
- set($formatCategory, ${frm(workerCategory-1,0,0)}),
- set(.lblName, ${'lPrpResponsibleWorkers'}, dTemp),
- set(.row_in_dset, ${ri}, dTemp),
- unset(.worker_data, dTemp),
- // populating ldata
- set($allWorkersArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[0]/ldata['.formatCategory.']/li.val')}),
- remli(all, ldTempOne),
- for(eachWorker, $allWorkersArray, block(
- set($workerName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[0]/ldata/li[val==eachWorker].lbl'),res("n%2Fa"))}),
- addli($eachWorker, $workerName, rid:ldTempOne)
- )),
- goto(scr,.def.sWorkerDataByType)
- ))
- ))),
- lbl(${def(qps('.all_workers\:dlist/dset[ri].worker_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
- ),
- add:btn(#Add,lo(1,m(2,30,1,30)))
- ),
- // Report Operator Workers panel - selection of type and name
- lbl(#Report_operators,lo(4,m(5,0,5,0),style:group)),
- lPrpOperators:prp(ivar:operatorIter,lo(4),dpath(dTemp,.all_operators\:dlist/dset[operatorIter]),
- cont:pnl(cols:55|55|55|55|20,
- lbl(#Worker_operator,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
- lbl(#Operators,aln:left,lo(2,m(0,1,0,0))),
- // list(workerType,true,rows:1,sort:false,
- // lo(2,m(0,1,0,0)),
- // dpath(dTemp,.all_workers\:dlist/dset[operatorIter].workers_type),
- // producer(listOptions,prm(prop:workers_types_cpg))),
- del:btn(X),
- btn(#Select_operator,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- //set($workerCategory, ${qps('.all_workers\:dlist/dset[operatorIter].workers_type','dTemp')})
- // if(${notEmpty(workerCategory)}, block(
- // format category
- //set($formatCategory, ${frm(workerCategory-1,0,0)}),
- set(.lblName, ${'lPrpOperators'}, dTemp),
- set(.row_in_dset_operator, ${operatorIter}, dTemp),
- unset(.operator_data, dTemp),
- // populating ldata
- set($allOperatorsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[6]/ldata[0]/li.val')}),
- remli(all, ldTempOne),
- for(eachOperator, $allOperatorsArray, block(
- set($operatorName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[6]/ldata/li[val==eachOperator].lbl'),res("n%2Fa"))}),
- addli($eachOperator, $operatorName, rid:ldTempOne)
- )),
- goto(scr,.def.sSelectOperators)
- //))
- ))),
- lbl(${def(qps('.all_operators\:dlist/dset[operatorIter].operator_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
- ),
- add:btn(#Add,lo(1,m(2,30,1,30)))
- ),
- // Report equipment panel - selection of equipment type and name
- lbl(#Report_equipment,lo(4,m(5,0,5,0),style:group)),
- lPrpEquipment:prp(ivar:equipmentIter,lo(4),dpath(dTemp,.all_equipment\:dlist/dset[equipmentIter]),
- cont:pnl(cols:55|55|55|55|20,
- lbl(#Equipment_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
- list(equipmentType,true,rows:1,sort:false,
- lo(2,m(0,1,0,0)),
- dpath(dTemp,.all_equipment\:dlist/dset[equipmentIter].equipment_type),
- producer(listOptions,prm(prop:machines_types))),
- del:btn(X),
- btn(#Select_equipment,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- set($equipmentCategory, ${qps('.all_equipment\:dlist/dset[equipmentIter].equipment_type','dTemp')})
- if(${notEmpty(equipmentCategory)}, block(
- set($formatCategory, ${frm(equipmentCategory-1,0,0)}),
- set(.lblName, ${'lPrpEquipment'}, dTemp),
- set(.row_in_dset_equipment, ${equipmentIter}, dTemp),
- unset(.equipment_data, dTemp),
- set($allEquipmentArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[1]/ldata['.formatCategory.']/li.val')}),
- remli(all, ldTempOne),
- for(eachEquipment, $allEquipmentArray, block(
- set($equipmentType, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[1]/ldata/li[val==eachEquipment].lbl'),res("n%2Fa"))}),
- addli($eachEquipment, $equipmentType, rid:ldTempOne)
- )),
- goto(scr,.def.sEquipmentDataByType)
- ))
- ))),
- lbl(${def(qps('.all_equipment\:dlist/dset[equipmentIter].equipment_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
- ),
- add:btn(#Add,lo(1,m(2,30,1,30)))
- ),
- // Chemical selection panel
- lbl(#Report_chemicals,lo(4,m(5,0,5,0),style:group,visible:${notEmpty(visiblePannelTwo)})),
- lPrpChemicals:prp(ivar:chemicalsIter,lo(4,visible:${notEmpty(visiblePannelTwo)}),dpath(dTemp,.all_chemicals\:dlist/dset[chemicalsIter]),
- cont:pnl(cols:55|55|55|55|20,
- lbl(#Chemical_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
- list(chemicalType,true,rows:1,sort:false,
- lo(2,m(0,1,0,0)),
- dpath(dTemp,.all_chemicals\:dlist/dset[chemicalsIter].chemical_type),
- producer(listOptions,prm(prop:chemical_types))),
- del:btn(X),
- btn(#Select_chemical,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- set($chemicalCategory, ${qps('.all_chemicals\:dlist/dset[chemicalsIter].chemical_type','dTemp')})
- if(${notEmpty(chemicalCategory)}, block(
- set($formatCategoryChemicals, ${frm(chemicalCategory-1,0,0)}),
- set(.lblName, ${'lPrpChemicals'}, dTemp),
- set(.row_in_dset_chemicals, ${chemicalsIter}, dTemp),
- unset(.chemicals_data, dTemp),
- set($allchemicalsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[3]/ldata['.formatCategoryChemicals.']/li.val')}),
- remli(all, ldTempOne),
- for(eachChemical, $allchemicalsArray, block(
- set($chemicalType, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[3]/ldata/li[val==eachChemical].lbl'),res("n%2Fa"))}),
- addli($eachChemical, $chemicalType, rid:ldTempOne)
- )),
- goto(scr,.def.sChemicalDataByType)
- ))
- ))),
- lbl(${def(qps('.all_chemicals\:dlist/dset[chemicalsIter].chemical_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0))),
- lbl(#Dosage%3A,lo(2),aln:right),
- ni(dosage,req:yes,val:0,min:0,lo(1),dpath(dTemp,.all_chemicals\:dlist/dset[chemicalsIter].dosage)),
- lbl(${res('l').'/'.res('ha')},lo(2))
- ),
- add:btn(#Add,lo(1,m(2,30,1,30)))
- ),
- // Report products panel
- lbl(#Report_products,lo(4,m(5,0,5,0),style:group,visible:${notEmpty(visiblePannelOne)})),
- lPrpProducts:prp(ivar:productsIter,lo(4,visible:${notEmpty(visiblePannelOne)}),dpath(dTemp,.all_products\:dlist/dset[productsIter]),
- cont:pnl(cols:55|55|55|55|20,
- lbl(#Product_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
- list(productType,true,rows:1,sort:false,
- lo(2,m(0,1,0,0)),
- dpath(dTemp,.all_products\:dlist/dset[productsIter].products_type),
- producer(listOptions,prm(prop:other_products_cpg))),
- del:btn(X),
- btn(#Select_product,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- set($productCategory, ${qps('.all_products\:dlist/dset[productsIter].products_type','dTemp')})
- if(${notEmpty(productCategory)}, block(
- set($formatCategoryProducts, ${frm(productCategory-1,0,0)}),
- set(.lblName, ${'lPrpProducts'}, dTemp),
- set(.row_in_dset_products, ${productsIter}, dTemp),
- unset(.products_data, dTemp),
- set($allProductsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[4]/ldata['.formatCategoryProducts.']/li.val')}),
- remli(all, ldTempOne),
- for(eachProduct, $allProductsArray, block(
- set($productName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[4]/ldata/li[val==eachProduct].lbl'),res("n%2Fa"))}),
- addli($eachProduct, $productName, rid:ldTempOne)
- )),
- goto(scr,.def.sProductDataByType)
- ))
- ))),
- lbl(${def(qps('.all_products\:dlist/dset[productsIter].product_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
- ),
- add:btn(#Add,lo(1,m(2,30,1,30)))
- ),
- //Report Seeds panel
- lbl(#Report_crop_seeds,lo(4,m(5,0,5,0),style:group,visible:${notEmpty(visiblePannelThree)})),
- lPrpSeeds:prp(ivar:seedsIter,lo(4,visible:${notEmpty(visiblePannelThree)}),dpath(dTemp,.all_seeds\:dlist/dset[seedsIter]),
- cont:pnl(cols:55|55|55|55|20,
- btn(#Select_seeds,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
- set($seedsCategory, ${1})
- if(${notEmpty(seedsCategory)}, block(
- set($formatCategorySeeds, ${frm(seedsCategory-1,0,0)}),
- set(.lblName, ${'lPrpSeeds'}, dTemp),
- set(.row_in_dset_seeds, ${seedsIter}, dTemp),
- unset(.seeds_data, dTemp),
- set($allseedsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[5]/ldata/li.val')}),
- remli(all, ldTempOne),
- for(eachSeed, $allseedsArray, block(
- set($seedName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[5]/ldata/li[val==eachSeed].lbl'),res("n%2Fa"))}),
- addli($eachSeed, $seedName, rid:ldTempOne)
- )),
- goto(scr,.def.sSeedsDataByType)
- ))
- ))),
- lbl(${def(qps('.all_seeds\:dlist/dset[seedsIter].seeds_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0))),
- del:btn(X)
- ),
- add:btn(#Add,lo(1,m(2,30,1,30)))
- ),
- lbl(${""},lo(4)),
- auxinfo:producer(prm(tags:no,photos:yes,notes:yes,dset:dsActivityReporting)),
- btn(#Save,pim:true,aln:center,lo(4,m(10,20,1,20)),call(na,block(
- // Setting task code depending on the activity choice
- if(${notEmpty(activityType)}, block(
- if(${activityType=='1'}, set($taskCodeMain,${'TS102JQ'})), // Land Preparation
- if(${activityType=='2'}, set($taskCodeMain,${'TS102JR'})), // Broadcast
- if(${activityType=='3'}, set($taskCodeMain,${'TS102JS'})), // Sowing
- if(${activityType=='4'}, set($taskCodeMain,${'TS102JR'})), // Spray
- if(${activityType=='5'}, set($taskCodeMain,${'TS102JQ'})), // Harvest
- if(${activityType=='6'}, set($taskCodeMain,${'TS102JQ'})), // Other
- if(${activityType=='7'}, set($taskCodeMain,${'TS102JQ'})), // Transport
- if(${activityType=='8'}, set($taskCodeMain,${'TS102JS'})), // Treatment
- if(${activityType=='9'}, set($taskCodeMain,${'TS102JQ'})), // Deforestation
- if(${activityType=='10'}, set($taskCodeMain,${'TS102JQ'})) // Post harvest and dryer
- )
- ),
- // Check for empty activity
- if(${isEmpty(taskCodeMain)}, block(
- alert(warn, #Please_select_activity_type),
- end()
- )),
- //Check for empty activity
- if(${isEmpty(activitySubType)},block(
- alert(warn,${res('Please_select_sub_activity%2E')}),
- end()
- )),
- // Working hours check - Should be less than 14 hours
- if(${hoursWorked>14}, block(
- alert(warn, #Working_hours_cannot_be_more_than_14_Please_change_Start_or_End_Time),
- set(.lblName, ${'lWorkedHours'}, dTemp),
- end()
- )),
- //Check for Worker selection - Its mandatory to have Responsible (R-**) and Operator (OP-**)
- // If the list of integers workers_type_cpg exceeds 10, the numbers should change to 01,02,03..
- set($workerTypesStr, ${""}),
- // for(iterCheckWorkerType, ${qp('.all_workers/dset.workers_type','dTemp')}, block(
- // if(${workerTypesStr==""},
- // set($workerTypesStr, ${iterCheckWorkerType}),
- // set($workerTypesStr, ${workerTypesStr."|".iterCheckWorkerType})
- // )
- // )),
- // // String looks like 1|2|1|6
- // if(${containsNone(workerTypesStr, "1")}, block(
- // alert(warn, #Please_select_an_operator),
- // set(.lblName, ${'lPrpWorkers'}, dTemp),
- // end()
- // )),
- // if(${containsNone(workerTypesStr,["2","3","4","5","6","7","8"])}, block(
- // alert(warn, #Please_select_responsible),
- // set(.lblName, ${'lPrpWorkers'}, dTemp),
- // end()
- // )),
- //Check if responsible is selected - mandatory
- if(${isEmpty(qp('.all_workers/dset.worker_resource','dTemp'))}, block(
- alert(warn, #Please_select_responsible),
- set(.lblName, ${'lPrpResponsibleWorkers'}, dTemp),
- end()
- )),
- // Check if operator is selected - optional
- if(${isEmpty(qp('.all_operators/dset.operator_resource','dTemp'))}, block(
- alert(question, #No_operator_selected_Are_you_sure_you_want_to_save%3F, continue),
- if(${!continue}, end())
- )),
- unset($warningDupicate),
- unset($resourcesStr),
- set($resourcesStr, ${''}),
- //Duplicate check - Workers
- for(iterCheckWorker, ${qp('.all_workers/dset.worker_resource','dTemp')}, block(
- if(${containsAny(resourcesStr,iterCheckWorker)},block(
- set($warningDupicate, ${'yes'})
- )),
- set($resourcesStr, ${resourcesStr."|".iterCheckWorker})
- )),
- if(${notEmpty(warningDupicate)}, block(
- alert(warn, #Please_do_not_duplicate_responsibles),
- set(.lblName, ${'lPrpResponsibleWorkers'}, dTemp),
- end()
- )),
- //Duplicate check - Operators
- for(iterCheckWorker, ${qp('.all_operators/dset.operator_resource','dTemp')}, block(
- if(${containsAny(resourcesStr,iterCheckWorker)},block(
- set($warningDupicate, ${'yes'})
- )),
- set($resourcesStr, ${resourcesStr."|".iterCheckWorker})
- )),
- if(${notEmpty(warningDupicate)}, block(
- alert(warn, #Please_do_not_duplicate_operators),
- set(.lblName, ${'lPrpOperators'}, dTemp),
- end()
- )),
- // Duplicate check - Equipment
- for(iterCheckEquipment, ${qp('.all_equipment/dset.equipment_resource','dTemp')}, block(
- if(${containsAny(resourcesStr,iterCheckEquipment)},block(
- set($warningDupicate, ${'yes'})
- )),
- set($resourcesStr, ${resourcesStr."|".iterCheckEquipment})
- )),
- if(${notEmpty(warningDupicate)}, block(
- alert(warn, #Please_do_not_duplicate_equipment),
- set(.lblName, ${'lPrpEquipment'}, dTemp),
- end()
- )),
- // Duplicate check - Chemicals
- for(iterCheckChemicals, ${qp('.all_chemicals/dset.chemical_resource','dTemp')}, block(
- if(${containsAny(resourcesStr,iterCheckChemicals)},block(
- set($warningDupicate, ${'yes'})
- )),
- set($resourcesStr, ${resourcesStr."|".iterCheckChemicals})
- )),
- if(${notEmpty(warningDupicate)}, block(
- alert(warn, #Please_do_not_duplicate_chemicals),
- set(.lblName, ${'lPrpChemicals'}, dTemp),
- end()
- )),
- // Duplicate check - Products
- for(iterCheckProducts, ${qp('.all_products/dset.product_resource','dTemp')}, block(
- if(${containsAny(resourcesStr,iterCheckProducts)},block(
- set($warningDupicate, ${'yes'})
- )),
- set($resourcesStr, ${resourcesStr."|".iterCheckProducts})
- )),
- if(${notEmpty(warningDupicate)}, block(
- alert(warn, #Please_do_not_duplicate_products),
- set(.lblName, ${'lPrpProducts'}, dTemp),
- end()
- )),
- // Duplicate check - Seeds
- for(iterCheckSeeds, ${qp('.all_seeds/dset.seeds_resource','dTemp')}, block(
- if(${containsAny(resourcesStr,iterCheckSeeds)},block(
- set($warningDupicate, ${'yes'})
- )),
- set($resourcesStr, ${resourcesStr."|".iterCheckSeeds})
- )),
- if(${notEmpty(warningDupicate)}, block(
- alert(warn, #Please_do_not_duplicate_seeds),
- set(.lblName, ${'lPrpProducts'}, dTemp),
- end()
- )),
- // Checks for necessary data for saving the screen
- // Atleast one worker to be selected
- if(${qpc('.all_workers/dset.worker_name','dTemp')==0}, block(
- alert(warn, #Please_select_atleast_one_worker),
- set(.lblName, ${'lPrpWorkers'}, dTemp),
- end()
- )),
- // Atleast one equipment to be selected
- if(${qpc('.all_equipment/dset.equipment_name','dTemp')==0}, block(
- alert(warn, #Please_select_atleast_one_equipment),
- set(.lblName, ${'lPrpEquipment'}, dTemp),
- end()
- )),
- //Chemicals
- // Checking the type of activity, atleast one chemical to be selected and saving the chemicals
- if(${activityType=='2'||activityType=='4'}, block(
- if(${qpc('.all_chemicals/dset.chemical_name','dTemp')==0}, block(
- alert(warn, #Please_select_atleast_one_chemical),
- set(.lblName, ${'lPrpChemicals'}, dTemp),
- end()
- )),
- //Saving the chemicals
- for(iterEachChemical, ${qp('.all_chemicals/dset.chemical_resource','dTemp')}, block(
- set($chemicalsUsage,${def(qps('.all_chemicals\:dlist/dset[i_iterEachChemical].dosage','dTemp'),0)}),
- set(.product_chemicals_cpg\:dlist/dset[i_iterEachChemical].resource, ${iterEachChemical},dDone),
- set(.product_chemicals_cpg\:dlist/dset[i_iterEachChemical].dosage, ${chemicalsUsage},dDone)
- ))
- )),
- //Seeds
- // Checking the type of activity, atleast one chemical to be selected and saving the seeds
- if(${activityType=='3'||activityType=='8'}, block(
- if(${qpc('.all_seeds/dset.seeds_name','dTemp')==0}, block(
- alert(warn, #Please_select_atleast_one_seed),
- set(.lblName, ${'lPrpSeeds'}, dTemp),
- end()
- )),
- //Saving the seeds
- for(iterEachSeed, ${qp('.all_seeds/dset.seeds_resource','dTemp')}, block(
- set(.seeds_cpg\:dlist/dset.resource, ${iterEachSeed},dDone),
- ))
- )),
- //Products
- // Checking the type of activity, atleast one chemical to be selected and saving the Products
- if(${activityType=='1'||activityType=='5'||activityType=='6'||activityType=='7'||activityType=='9'||activityType=='10'}, block(
- if(${qpc('.all_products/dset.product_name','dTemp')==0}, block(
- alert(warn, #Please_select_atleast_one_product),
- set(.lblName, ${'lPrpProducts'}, dTemp),
- end()
- )),
- //Saving the products
- for(iterEachProduct, ${qp('.all_products/dset.product_resource','dTemp')}, block(
- set(.other_materials_cpg\:dlist/dset.resource, ${iterEachProduct},dDone),
- ))
- )),
- // Saving workers
- for(iterEachWorker, ${qp('.all_workers/dset.worker_resource','dTemp')}, block(
- set(.workers_cpg\:dlist/dset.resource, ${iterEachWorker},dDone)
- )),
- // Saving operators
- for(iterEachOperator, ${qp('.all_operators/dset.operator_resource','dTemp')}, block(
- set(.workers_cpg\:dlist/dset.resource, ${iterEachOperator},dDone)
- )),
- // Saving equipment
- for(iterEachEquipment, ${qp('.all_equipment/dset.equipment_resource','dTemp')}, block(
- set(.equipment_cpg\:dlist/dset.resource, ${iterEachEquipment},dDone),
- )),
- remli(all, ldTempTwo), // Emptying the ldata used for activities/ sub activities
- set(.rate_ha, ${rate},dDone), // Rate
- set(.area, ${partialArea},dDone), // Applied area
- set(.start_time_cpg, ${startTime},dDone), // Start time
- set(.end_time_cpg, ${endTime},dDone), // End time
- set(.total_hours_cpg, ${workHoursMachine},dDone), // Total hours
- set(.data,${'completed'},dDone),
- set(.pest,${activitySubType},dDone), // Activity code - depends on the choice
- set(.task,${taskCodeMain},dDone), // Task code - depends on the choice
- set($dsetName,${'dsActivityReporting'}),
- proc(copyNotes),
- store(dDone, yes),
- proc(cleanNotes),
- cancel(${qp('.pestPath','dTemp')})
- ))),
- back:call(#Back, cancel())
- ),
- sDummyScreenToGetData:frm(#Screen_name, 60|60|60|55,
- init:block(),
- refresh:block(),
- //Worker Type [0]
- pnl(cols:235,lo(4),
- @ldWorkersTopManagement:ldata(
- producer(resourceList,prm(prop:workers_top_management))
- ),
- @ldWorkersCropManagement:ldata(
- producer(resourceList,prm(prop:workers_crop_management))
- ),
- @ldWorkersPA:ldata(
- producer(resourceList,prm(prop:workers_PA))
- ),
- @ldWorkersOffice:ldata(
- producer(resourceList,prm(prop:workers_office))
- ),
- @ldWorkersTrainee2018:ldata(
- producer(resourceList,prm(prop:workers_trainee_2018))
- ),
- @ldWorkersTrainee2017:ldata(
- producer(resourceList,prm(prop:workers_trainee_2017))
- ),
- @ldWorkersExperimental:ldata(
- producer(resourceList,prm(prop:workers_experimental))
- )
- ),
- // Equipment Type [1]
- pnl(cols:235,lo(4),
- @ldEquipmentChains:ldata(
- producer(resourceList,prm(prop:machines_chains))
- ),
- @ldEquipmentRootRake:ldata(
- producer(resourceList,prm(prop:machines_rootrake))
- ),
- @ldEquipmentTractors:ldata(
- producer(resourceList,prm(prop:machines_tractors))
- ),
- @ldEquipmentCannon:ldata(
- producer(resourceList,prm(prop:machines_cannon))
- ),
- @ldEquipmentSprayer:ldata(
- producer(resourceList,prm(prop:machines_sprayer))
- ),
- @ldEquipmentSpreader:ldata(
- producer(resourceList,prm(prop:machines_spreader))
- ),
- @ldEquipmentBackhoe:ldata(
- producer(resourceList,prm(prop:machines_backhoe))
- ),
- @ldEquipmentLoader:ldata(
- producer(resourceList,prm(prop:machines_loader))
- ),
- @ldEquipmentBulldozer:ldata(
- producer(resourceList,prm(prop:machines_bulldozer))
- ),
- @ldEquipmentExcavador:ldata(
- producer(resourceList,prm(prop:machines_excavador))
- ),
- @ldEquipmentAriVehicle:ldata(
- producer(resourceList,prm(prop:machines_airvehicle))
- ),
- @ldEquipmentMotorcycles:ldata(
- producer(resourceList,prm(prop:machines_motorcycles))
- ),
- @ldEquipmentGrainbox:ldata(
- producer(resourceList,prm(prop:machines_grainbox))
- ),
- @ldEquipmentEngine:ldata(
- producer(resourceList,prm(prop:machines_engine))
- ),
- @ldEquipmentWaterConvoy:ldata(
- producer(resourceList,prm(prop:machines_waterconvoy))
- ),
- @ldEquipmentFuelConvoy:ldata(
- producer(resourceList,prm(prop:machines_fuelconvoy))
- ),
- @ldEquipmentBus:ldata(
- producer(resourceList,prm(prop:machines_bus))
- ),
- @ldEquipmentTrucks:ldata(
- producer(resourceList,prm(prop:machines_trucks))
- ),
- @ldEquipmentVehicle:ldata(
- producer(resourceList,prm(prop:machines_vehicle))
- ),
- @ldEquipmentRollercutter:ldata(
- producer(resourceList,prm(prop:machines_rollercutter))
- ),
- @ldEquipmentRotary:ldata(
- producer(resourceList,prm(prop:machines_rotary))
- ),
- @ldEquipmentTrailers:ldata(
- producer(resourceList,prm(prop:machines_trailers))
- ),
- @ldEquipmentHoister:ldata(
- producer(resourceList,prm(prop:machines_hoister))
- ),
- @ldEquipmentHeavyGates:ldata(
- producer(resourceList,prm(prop:machines_heavygate))
- ),
- @ldEquipmentFieldKing:ldata(
- producer(resourceList,prm(prop:machines_fieldking))
- ),
- @ldEquipmentIntermediateGate:ldata(
- producer(resourceList,prm(prop:machines_intermediategate))
- ),
- @ldEquipmentLevellingGate:ldata(
- producer(resourceList,prm(prop:machines_levellinggate))
- ),
- @ldEquipmentMediumGate:ldata(
- producer(resourceList,prm(prop:machines_mediumgate))
- ),
- @ldEquipmentTerracer:ldata(
- producer(resourceList,prm(prop:machines_terracer))
- ),
- @ldEquipmentPlanter:ldata(
- producer(resourceList,prm(prop:machines_planter))
- ),
- @ldEquipmentCassavaPlanter:ldata(
- producer(resourceList,prm(prop:machines_cassavaplanter))
- ),
- @ldEquipmentGenerator:ldata(
- producer(resourceList,prm(prop:machines_generator))
- ),
- @ldEquipmentCornhead:ldata(
- producer(resourceList,prm(prop:machines_cornhead))
- ),
- @ldEquipmentHeadcarry:ldata(
- producer(resourceList,prm(prop:machines_headcarry))
- ),
- @ldEquipmentSoybeanhead:ldata(
- producer(resourceList,prm(prop:machines_soybeanhead))
- ),
- @ldEquipmentDeforestationset:ldata(
- producer(resourceList,prm(prop:machines_deforestationset))
- ),
- @ldEquipmentPreparationset:ldata(
- producer(resourceList,prm(prop:machines_land_preparationset))
- ),
- @ldEquipmentRobust:ldata(
- producer(resourceList,prm(prop:machines_robust))
- ),
- @ldEquipmentStarplan:ldata(
- producer(resourceList,prm(prop:machines_starplan))
- ),
- @ldEquipmentHarvester:ldata(
- producer(resourceList,prm(prop:machines_harvester))
- ),
- @ldEquipmentHarvesterUprooter:ldata(
- producer(resourceList,prm(prop:machines_harvesteruprooter))
- ),
- @ldEquipmentDiscFurrow:ldata(
- producer(resourceList,prm(prop:machines_discfurrow))
- ),
- @ldEquipmentSeedsTreatment:ldata(
- producer(resourceList,prm(prop:machines_seedstreatment))
- ),
- @ldEquipmentFrontblade:ldata(
- producer(resourceList,prm(prop:machines_frontblade))
- ),
- @ldEquipmentSubsoiler:ldata(
- producer(resourceList,prm(prop:machines_subsoiler))
- )
- ),
- // Activity Type [2]
- pnl(cols:235,lo(4),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:land_preparation_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:broadcast_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:sowing_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:spray_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:harvest_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:other_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:transport_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:treatment_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:deforestation_activities))
- ),
- list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
- producer(listOptions,prm(prop:post_harvest_dryer_activities))
- )
- ),
- //Chemicals pnl [3]
- pnl(cols:235,lo(4),
- @ldChemicalsFertilizerBasement:ldata(
- producer(resourceList,prm(prop:product_fert_basement_cpg))
- ),
- @ldChemicalsFertilizerMicronutrient:ldata(
- producer(resourceList,prm(prop:product_fert_micronutrient_cpg))
- ),
- @ldChemicalsFertilizerOverTop:ldata(
- producer(resourceList,prm(prop:product_fert_overtop_cpg))
- ),
- @ldChemicalsFertilizerSpray:ldata(
- producer(resourceList,prm(prop:product_fert_spray_cpg))
- ),
- @ldChemicalsFungicideContact:ldata(
- producer(resourceList,prm(prop:product_fung_contact_gpg))
- ),
- @ldChemicalsFungicideReadyMix:ldata(
- producer(resourceList,prm(prop:product_fung_readymix_gpg))
- ),
- @ldChemicalsFungicideSystemic:ldata(
- producer(resourceList,prm(prop:product_fung_systemic_gpg))
- ),
- @ldChemicalsHerbicideContact:ldata(
- producer(resourceList,prm(prop:product_herb_contact_cpg))
- ),
- @ldChemicalsHerbicideSystemic:ldata(
- producer(resourceList,prm(prop:product_herb_systemic_cpg))
- ),
- @ldChemicalsInsecticideContact:ldata(
- producer(resourceList,prm(prop:product_insec_contact_cpg))
- ),
- @ldChemicalsInsecticideIGR:ldata(
- producer(resourceList,prm(prop:product_insec_IGR_cpg))
- ),
- @ldChemicalsInsecticideReadyMix:ldata(
- producer(resourceList,prm(prop:product_insec_readymix_cpg))
- ),
- @ldChemicalsInsecticideSystemic:ldata(
- producer(resourceList,prm(prop:product_insec_systemic_cpg))
- ),
- @ldChemicalsCorrectiveSoilImprovement:ldata(
- producer(resourceList,prm(prop:product_corrective_cpg))
- )
- ),
- // Other Products pnl [4]
- pnl(cols:235,lo(4),
- @ldProductSpecialBioStimulant:ldata(
- producer(resourceList,prm(prop:product_special_bio_cpg))
- ),
- @ldProductSpecialMicronutrients:ldata(
- producer(resourceList,prm(prop:product_special_micronutrients_cpg))
- ),
- @ldProductOtherAdjuvant:ldata(
- producer(resourceList,prm(prop:product_other_adjuvant_cpg))
- ),
- @ldProductOtherFood:ldata(
- producer(resourceList,prm(prop:product_other_food_cpg))
- ),
- @ldProductOtherInoculant:ldata(
- producer(resourceList,prm(prop:product_other_inoculant_cpg))
- ),
- @ldProductOtherMicronutrients:ldata(
- producer(resourceList,prm(prop:product_other_micronutrients_cpg))
- ),
- @ldProductFuelLubricant:ldata(
- producer(resourceList,prm(prop:product_fuel_lubricant_cpg))
- )
- ),
- //Chemicals pnl [5]
- pnl(cols:235,lo(4),
- @ldSeedsCpg:ldata(
- producer(resourceList,prm(prop:product_crop_seeds_cpg))
- )
- ),
- //Opertors [6]
- pnl(cols:235,lo(4),
- @ldWorkersOperators:ldata(
- producer(resourceList,prm(prop:workers_operators))
- )
- ),
- back:call(#Back, cancel())
- ),
- sWorkerDataByType:menu(#Workers,workerSelected,data:ldTempOne,multi:no,dialog:yes,
- dpath(dTemp,.worker_data),
- ok:call(#Ok,block(
- set($rowInDset, .row_in_dset, dTemp),
- if(${isEmpty(rowInDset)}, set($rowInDset, ${frm(0,0,0)})),
- set($resourceName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[0]/ldata/li[val==workerSelected].lbl'),res('n%2Fa'))}),
- set(.all_workers\:dlist/dset[rowInDset].worker_resource, ${workerSelected}, dTemp),
- set(.all_workers\:dlist/dset[rowInDset].worker_name, ${resourceName}, dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- ),
- sSelectOperators:menu(#Operators,operatorSelected,data:ldTempOne,multi:no,dialog:yes,
- dpath(dTemp,.operator_data),
- ok:call(#Ok,block(
- set($rowInDsetOperator, .row_in_dset_operator, dTemp),
- if(${isEmpty(rowInDsetOperator)}, set($rowInDsetOperator, ${frm(0,0,0)})),
- set($resourceName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[6]/ldata/li[val==operatorSelected].lbl'),res('n%2Fa'))}),
- set(.all_operators\:dlist/dset[rowInDsetOperator].operator_resource, ${operatorSelected}, dTemp),
- set(.all_operators\:dlist/dset[rowInDsetOperator].operator_name, ${resourceName}, dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- ),
- sEquipmentDataByType:menu(#Equipment,equipmentSelected,data:ldTempOne,multi:no,dialog:yes,
- dpath(dTemp,.equipment_data),
- ok:call(#Ok,block(
- set($rowInDsetEquipment, .row_in_dset_equipment, dTemp),
- if(${isEmpty(rowInDsetEquipment)}, set($rowInDsetEquipment, ${frm(0,0,0)})),
- set($resourceName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[1]/ldata/li[val==equipmentSelected].lbl'),res('n%2Fa'))}),
- set(.all_equipment\:dlist/dset[rowInDsetEquipment].equipment_resource, ${equipmentSelected}, dTemp),
- set(.all_equipment\:dlist/dset[rowInDsetEquipment].equipment_name, ${resourceName}, dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- ),
- sActivitiesDataByType:menu(#Activities,activitiesSelected,multi:no,dialog:yes,
- dpath(dTemp,.activity_data),
- producer(listOptions,prm(prop:activity_types)),
- ok:call(#Ok,block(
- set($resourceNameActivity, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[2]/list/li[val==activitiesSelected].lbl'),res('n%2Fa'))}),
- set(.selected_activity_type, ${resourceNameActivity},dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- ),
- sChemicalDataByType:menu(#Chemicals,chemicalsSelected,data:ldTempOne,multi:no,dialog:yes,
- dpath(dTemp,.chemicals_data),
- ok:call(#Ok,block(
- set($rowInDsetChems, .row_in_dset_chemicals, dTemp),
- if(${isEmpty(rowInDsetChems)}, set($rowInDsetChems, ${frm(0,0,0)})),
- set($chemicalName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[3]/ldata/li[val==chemicalsSelected].lbl'),res('n%2Fa'))}),
- set(.all_chemicals\:dlist/dset[rowInDsetChems].chemical_resource, ${chemicalsSelected}, dTemp),
- set(.all_chemicals\:dlist/dset[rowInDsetChems].chemical_name, ${chemicalName}, dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- ),
- sProductDataByType:menu(#Products,productsSelected,data:ldTempOne,multi:no,dialog:yes,
- dpath(dTemp,.products_data),
- ok:call(#Ok,block(
- set($rowInDsetProducts, .row_in_dset_products, dTemp),
- if(${isEmpty(rowInDsetProducts)}, set($rowInDsetProducts, ${frm(0,0,0)})),
- set($productName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[4]/ldata/li[val==productsSelected].lbl'),res('n%2Fa'))}),
- set(.all_products\:dlist/dset[rowInDsetProducts].product_resource, ${productsSelected}, dTemp),
- set(.all_products\:dlist/dset[rowInDsetProducts].product_name, ${productName}, dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- ),
- sSeedsDataByType:menu(#Seeds,seedsSelected,data:ldTempOne,multi:no,dialog:yes,
- dpath(dTemp,.seeds_data),
- ok:call(#Ok,block(
- set($rowInDsetSeeds, .row_in_dset_seeds, dTemp),
- if(${isEmpty(rowInDsetSeeds)}, set($rowInDsetSeeds, ${frm(0,0,0)})),
- set($seedsName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[5]/ldata/li[val==seedsSelected].lbl'),res('n%2Fa'))}),
- set(.all_seeds\:dlist/dset[rowInDsetSeeds].seeds_resource, ${seedsSelected}, dTemp),
- set(.all_seeds\:dlist/dset[rowInDsetSeeds].seeds_name, ${seedsName}, dTemp),
- back()
- )),
- cancel:call(#Cancel,cancel())
- )
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement