Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 41.34 KB | None | 0 0
  1. /**
  2. * Task: TS1001Q0B2
  3. */
  4. // The screen uses global ldata: ldTempOne and ldTempTwo
  5.  
  6. scrset(
  7. sActivityReportingCPGroup:frm(#Activity_report, 60|60|60|55,
  8. init:block(
  9. set($pestCode, .pest, dDone),
  10. set($taskCode, .task, dDone),
  11. set($lc,.plot,dDone),
  12. set($plotCode,.plot,dDone)
  13. set($crop, .crop, dDone),
  14. set($farm,.farm,dTemp),
  15.  
  16. //plot area
  17. set($plotArea,${locationArea(lc,'DEF')}),
  18. if(${isEmpty(plotArea)},set($plotArea,${0})),
  19. set($plotAreaShort,${frm(plotArea,0,2)}),
  20.  
  21. // time
  22. set($startHour,.start_hour,dTemp),
  23. set($startMinutes,.start_minutes,dTemp),
  24. set($endHour,.end_hour,dTemp),
  25. set($endMinutes,.end_minutes,dTemp),
  26.  
  27. //Setting the list of the activities
  28.  
  29. set($activityType, .activity_data,dTemp),
  30. if(${notEmpty(activityType)}, block(
  31. set($previousActivitySelected, .previous_activity_selected,dTemp),
  32. if(${def(previousActivitySelected,"n/a")!=activityType}, block(
  33. set(.previous_activity_selected, ${activityType},dTemp),
  34. unset(.activity_sub_type, dTemp),
  35. set(.list_type,$activityType,dTemp),
  36. set($formatCategoryActivities, ${frm(activityType-1,0,0)}),
  37. // populating ldata
  38. set($allActivitiesArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[2]/list['.formatCategoryActivities.']/li.val')}),
  39. remli(all, ldTempTwo),
  40. for(eachActivity, $allActivitiesArray, block(
  41. set($activityName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[2]/list/li[val==eachActivity].lbl'),res("n%2Fa"))}),
  42. addli($eachActivity, $activityName, rid:ldTempTwo)
  43. ))
  44. ))
  45. ))
  46.  
  47. ),
  48.  
  49. refresh:block(
  50. // Calculations for the total hours
  51. if(${allNotNull(startHour,startMinutes,endHour,endMinutes)},block(
  52. set($startTime,${setMinute(setHour(date(),startHour),startMinutes)}),
  53. set($endTime,${setMinute(setHour(date(),endHour),endMinutes)}),
  54. set($workHoursMachine,${frm(minutesInterval(startTime,endTime)/60,0,2)})
  55. if(${workHoursMachine<0},block(
  56. set($endTime,${shiftDays(endTime,1)})
  57. set($workHoursMachine,${frm(minutesInterval(startTime,endTime)/60,0,2)})
  58. )),
  59. set($hoursWorked, ${frm(floor(workHoursMachine),2,0)}),
  60. set($minutesWorked, ${frm((workHoursMachine-floor(workHoursMachine))*60,2,0)})
  61. )),
  62.  
  63. //Visibility check for the pannels
  64. if(${notEmpty(activityType)}, block(
  65. if(${activityType=='1'||activityType=='5'||activityType=='6'||activityType=='7'||activityType=='9'||activityType=='10'}, block(
  66. set($visiblePannelOne, ${'yes'}),
  67. set(.visible_pannel_one,$visiblePannelOne,dTemp)
  68. )),
  69. if(${activityType=='2'||activityType=='4'}, block(
  70. set($visiblePannelTwo, ${'yes'}),
  71. set(.visible_pannel_two,$visiblePannelTwo,dTemp)
  72. )),
  73. if(${activityType=='3'||activityType=='8'}, block(
  74. set($visiblePannelThree, ${'yes'}),
  75. set(.visible_pannel_three,$visiblePannelThree,dTemp)
  76. ))
  77. )),
  78.  
  79. ),
  80.  
  81. focus:block(
  82. set($lblName,${qp('.lblName','dTemp')}),
  83. if(${notEmpty(lblName)}, block(
  84. focus(${'.'.lblName}),
  85. unset(.lblName,dTemp))
  86. )
  87. ),
  88.  
  89.  
  90. //Headers
  91. lbl(#Date%3A, lo(1, m(5, 0, 0, 0), style:captionGrey)),
  92. lbl(${date()}, lo(3, m(5, 0, 0, 0), style:captionGrey)),
  93. lbl(#Plot%3A, lo(1, bg:FFc6d2d2)),
  94. lbl(${qp('.plotName', 'dTemp')}, lo(3, bg:FFc6d2d2)),
  95. lbl(#Crop%3A, lo(1, style:captionGrey)),
  96. lbl(${qp('.cropName', 'dTemp')}, lo(3, style:captionGrey)),
  97. lbl(#Area%3A,lo(1,bg:FFc6d2d2)),
  98. lbl(${def(plotAreaShort,'n/a').' '.res('Hectare')},lo(3,bg:FFc6d2d2)),
  99.  
  100. lbl(#Report_field_activity,lo(4,m(5,0,5,0),style:group)),
  101.  
  102. // Selection of sub-activities
  103. lPrpActivities:pnl(cols:55|55|55|55|20,lo(4),
  104. btn(#Select_activity_type,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  105. set(.lblName, ${'lPrpActivities'}, dTemp),
  106. goto(scr,.def.sActivitiesDataByType)
  107.  
  108. ))),
  109. list(in:listType,req:yes,val:${'-1'},
  110. dpath(dTemp,.list_type),
  111. lo(2,enabled:false),
  112. li(-1,#n%2fa)
  113. producer(listOptions,prm(prop:activity_types))
  114. ),
  115. lbl(#Activity,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
  116. list(activitySubType,true,rows:1,sort:no,
  117. lo(2,m(0,1,0,0)),
  118. dpath(dTemp,.activity_sub_type),
  119. data:ldTempTwo)
  120. ),
  121.  
  122. // Selection of full or partial area
  123. lbl(${res("Area")." (HA)"},lo(1)),
  124. ni(partialArea,req:yes,val:${def(plotAreaShort,"n/a")},min:0,max:${def(plotAreaShort,999)},lo(1),dpath(dTemp,.partial_area)),
  125. lbl("",lo(2)),
  126.  
  127. // Selection of Rate
  128. lbl(${res("Rate")." (HA)"},lo(1)),
  129. ni(rate,req:yes,val:1,min:0,lo(1),dpath(dTemp,.rate)),
  130. lbl("",lo(2)),
  131.  
  132. //Start and End time
  133. lWorkedHours:pnl(cols:100|40|33|16|33|13,lo(4),
  134. lbl(${res("Start_Time").":"},lo(2,m(10,15,0,0),style:captionGrey)),
  135. list(startHour,true,0,1,lo(1,m(10,5,0,0)),dpath(dTemp,.start_hour),
  136. li(0,"00"),li(1,"01"),li(2,"02"),li(3,"03"),li(4,"04"),li(5,"05"),li(6,"06"),
  137. li(7,"07"),li(8,"08"),li(9,"09"),li(10,"10"),li(11,"11"),li(12,"12"),li(13,"13"),
  138. li(14,"14"),li(15,"15"),li(16,"16"),li(17,"17"),li(18,"18"),li(19,"19"),
  139. li(20,"20"),li(21,"21"),li(22,"22"),li(23,"23")
  140. ),
  141. lbl(':',lo(1,m(10,0,0,0))),
  142. list(startMinutes,true,0,1,lo(1,m(10,5,0,0)),dpath(dTemp,.start_minutes),
  143. li(0,"00"),li(5,"05"),li(10,"10"),li(15,"15"),li(20,"20"),
  144. li(25,"25"),li(30,"30"),li(35,"35"),li(40,"40"),li(45,"45"),
  145. li(50,"50"),li(55,"55")
  146. ),
  147. lbl('',lo(1)),
  148. lbl(${res("End_Time").":"},lo(2,m(0,15,0,0),style:captionGrey)),
  149. list(endHour,true,0,1,lo(1,m(0,5,0,0)),dpath(dTemp,.end_hour),
  150. li(0,"00"),li(1,"01"),li(2,"02"),li(3,"03"),li(4,"04"),
  151. li(5,"05"),li(6,"06"),li(7,"07"),li(8,"08"),li(9,"09"),li(10,"10"),li(11,"11"),
  152. li(12,"12"),li(13,"13"),li(14,"14"),li(15,"15"),li(16,"16"),li(17,"17"),
  153. li(18,"18"),li(19,"19"),li(20,"20"),li(21,"21"),li(22,"22"),li(23,"23")
  154. ),
  155. lbl(':',lo(1)),
  156. list(endMinutes,true,0,1,lo(1,m(0,5,0,0)),dpath(dTemp,.end_minutes),
  157. li(0,"00"),li(5,"05"),li(10,"10"),li(15,"15"),li(20,"20"),li(25,"25"),
  158. li(30,"30"),li(35,"35"),li(40,"40"),li(45,"45"),li(50,"50"),li(55,"55")
  159. ),
  160. lbl(${res("Total_Hours")},lo(3,m(5,15,0,0),style:captionGrey)),
  161. 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))
  162. ),
  163.  
  164. // Report Responsible Workers panel - selection of type and name
  165. lbl(#Report_responsible_workers,lo(4,m(5,0,5,0),style:group)),
  166. lPrpResponsibleWorkers:prp(ivar:ri,lo(4),dpath(dTemp,.all_workers\:dlist/dset[ri]),
  167. cont:pnl(cols:55|55|55|55|20,
  168. lbl(#Worker_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
  169. list(workerType,true,rows:1,sort:false,
  170. lo(2,m(0,1,0,0)),
  171. dpath(dTemp,.all_workers\:dlist/dset[ri].workers_type),
  172. producer(listOptions,prm(prop:workers_types_cpg))),
  173. del:btn(X),
  174.  
  175. btn(#Select_worker,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  176. set($workerCategory, ${qps('.all_workers\:dlist/dset[ri].workers_type','dTemp')})
  177. if(${notEmpty(workerCategory)}, block(
  178. // format category
  179. set($formatCategory, ${frm(workerCategory-1,0,0)}),
  180. set(.lblName, ${'lPrpResponsibleWorkers'}, dTemp),
  181. set(.row_in_dset, ${ri}, dTemp),
  182. unset(.worker_data, dTemp),
  183. // populating ldata
  184. set($allWorkersArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[0]/ldata['.formatCategory.']/li.val')}),
  185. remli(all, ldTempOne),
  186. for(eachWorker, $allWorkersArray, block(
  187. set($workerName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[0]/ldata/li[val==eachWorker].lbl'),res("n%2Fa"))}),
  188. addli($eachWorker, $workerName, rid:ldTempOne)
  189. )),
  190. goto(scr,.def.sWorkerDataByType)
  191. ))
  192. ))),
  193. lbl(${def(qps('.all_workers\:dlist/dset[ri].worker_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
  194. ),
  195. add:btn(#Add,lo(1,m(2,30,1,30)))
  196. ),
  197.  
  198. // Report Operator Workers panel - selection of type and name
  199. lbl(#Report_operators,lo(4,m(5,0,5,0),style:group)),
  200. lPrpOperators:prp(ivar:operatorIter,lo(4),dpath(dTemp,.all_operators\:dlist/dset[operatorIter]),
  201. cont:pnl(cols:55|55|55|55|20,
  202. lbl(#Worker_operator,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
  203. lbl(#Operators,aln:left,lo(2,m(0,1,0,0))),
  204. // list(workerType,true,rows:1,sort:false,
  205. // lo(2,m(0,1,0,0)),
  206. // dpath(dTemp,.all_workers\:dlist/dset[operatorIter].workers_type),
  207. // producer(listOptions,prm(prop:workers_types_cpg))),
  208. del:btn(X),
  209.  
  210. btn(#Select_operator,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  211. //set($workerCategory, ${qps('.all_workers\:dlist/dset[operatorIter].workers_type','dTemp')})
  212. // if(${notEmpty(workerCategory)}, block(
  213. // format category
  214. //set($formatCategory, ${frm(workerCategory-1,0,0)}),
  215. set(.lblName, ${'lPrpOperators'}, dTemp),
  216. set(.row_in_dset_operator, ${operatorIter}, dTemp),
  217. unset(.operator_data, dTemp),
  218. // populating ldata
  219. set($allOperatorsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[6]/ldata[0]/li.val')}),
  220. remli(all, ldTempOne),
  221. for(eachOperator, $allOperatorsArray, block(
  222. set($operatorName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[6]/ldata/li[val==eachOperator].lbl'),res("n%2Fa"))}),
  223. addli($eachOperator, $operatorName, rid:ldTempOne)
  224. )),
  225. goto(scr,.def.sSelectOperators)
  226. //))
  227. ))),
  228. lbl(${def(qps('.all_operators\:dlist/dset[operatorIter].operator_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
  229. ),
  230. add:btn(#Add,lo(1,m(2,30,1,30)))
  231. ),
  232.  
  233. // Report equipment panel - selection of equipment type and name
  234. lbl(#Report_equipment,lo(4,m(5,0,5,0),style:group)),
  235. lPrpEquipment:prp(ivar:equipmentIter,lo(4),dpath(dTemp,.all_equipment\:dlist/dset[equipmentIter]),
  236. cont:pnl(cols:55|55|55|55|20,
  237. lbl(#Equipment_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
  238. list(equipmentType,true,rows:1,sort:false,
  239. lo(2,m(0,1,0,0)),
  240. dpath(dTemp,.all_equipment\:dlist/dset[equipmentIter].equipment_type),
  241. producer(listOptions,prm(prop:machines_types))),
  242. del:btn(X),
  243.  
  244. btn(#Select_equipment,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  245. set($equipmentCategory, ${qps('.all_equipment\:dlist/dset[equipmentIter].equipment_type','dTemp')})
  246. if(${notEmpty(equipmentCategory)}, block(
  247. set($formatCategory, ${frm(equipmentCategory-1,0,0)}),
  248. set(.lblName, ${'lPrpEquipment'}, dTemp),
  249. set(.row_in_dset_equipment, ${equipmentIter}, dTemp),
  250. unset(.equipment_data, dTemp),
  251. set($allEquipmentArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[1]/ldata['.formatCategory.']/li.val')}),
  252. remli(all, ldTempOne),
  253. for(eachEquipment, $allEquipmentArray, block(
  254. set($equipmentType, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[1]/ldata/li[val==eachEquipment].lbl'),res("n%2Fa"))}),
  255. addli($eachEquipment, $equipmentType, rid:ldTempOne)
  256. )),
  257. goto(scr,.def.sEquipmentDataByType)
  258. ))
  259. ))),
  260. lbl(${def(qps('.all_equipment\:dlist/dset[equipmentIter].equipment_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
  261.  
  262. ),
  263. add:btn(#Add,lo(1,m(2,30,1,30)))
  264. ),
  265.  
  266. // Chemical selection panel
  267. lbl(#Report_chemicals,lo(4,m(5,0,5,0),style:group,visible:${notEmpty(visiblePannelTwo)})),
  268. lPrpChemicals:prp(ivar:chemicalsIter,lo(4,visible:${notEmpty(visiblePannelTwo)}),dpath(dTemp,.all_chemicals\:dlist/dset[chemicalsIter]),
  269. cont:pnl(cols:55|55|55|55|20,
  270. lbl(#Chemical_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
  271. list(chemicalType,true,rows:1,sort:false,
  272. lo(2,m(0,1,0,0)),
  273. dpath(dTemp,.all_chemicals\:dlist/dset[chemicalsIter].chemical_type),
  274. producer(listOptions,prm(prop:chemical_types))),
  275. del:btn(X),
  276.  
  277. btn(#Select_chemical,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  278. set($chemicalCategory, ${qps('.all_chemicals\:dlist/dset[chemicalsIter].chemical_type','dTemp')})
  279. if(${notEmpty(chemicalCategory)}, block(
  280. set($formatCategoryChemicals, ${frm(chemicalCategory-1,0,0)}),
  281. set(.lblName, ${'lPrpChemicals'}, dTemp),
  282. set(.row_in_dset_chemicals, ${chemicalsIter}, dTemp),
  283. unset(.chemicals_data, dTemp),
  284. set($allchemicalsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[3]/ldata['.formatCategoryChemicals.']/li.val')}),
  285. remli(all, ldTempOne),
  286. for(eachChemical, $allchemicalsArray, block(
  287. set($chemicalType, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[3]/ldata/li[val==eachChemical].lbl'),res("n%2Fa"))}),
  288. addli($eachChemical, $chemicalType, rid:ldTempOne)
  289. )),
  290. goto(scr,.def.sChemicalDataByType)
  291. ))
  292. ))),
  293. lbl(${def(qps('.all_chemicals\:dlist/dset[chemicalsIter].chemical_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0))),
  294. lbl(#Dosage%3A,lo(2),aln:right),
  295. ni(dosage,req:yes,val:0,min:0,lo(1),dpath(dTemp,.all_chemicals\:dlist/dset[chemicalsIter].dosage)),
  296. lbl(${res('l').'/'.res('ha')},lo(2))
  297. ),
  298. add:btn(#Add,lo(1,m(2,30,1,30)))
  299. ),
  300.  
  301. // Report products panel
  302. lbl(#Report_products,lo(4,m(5,0,5,0),style:group,visible:${notEmpty(visiblePannelOne)})),
  303. lPrpProducts:prp(ivar:productsIter,lo(4,visible:${notEmpty(visiblePannelOne)}),dpath(dTemp,.all_products\:dlist/dset[productsIter]),
  304. cont:pnl(cols:55|55|55|55|20,
  305. lbl(#Product_type,aln:center,lo(2,m(0,1,0,0),style:captionGrey)),
  306. list(productType,true,rows:1,sort:false,
  307. lo(2,m(0,1,0,0)),
  308. dpath(dTemp,.all_products\:dlist/dset[productsIter].products_type),
  309. producer(listOptions,prm(prop:other_products_cpg))),
  310. del:btn(X),
  311.  
  312. btn(#Select_product,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  313. set($productCategory, ${qps('.all_products\:dlist/dset[productsIter].products_type','dTemp')})
  314. if(${notEmpty(productCategory)}, block(
  315. set($formatCategoryProducts, ${frm(productCategory-1,0,0)}),
  316. set(.lblName, ${'lPrpProducts'}, dTemp),
  317. set(.row_in_dset_products, ${productsIter}, dTemp),
  318. unset(.products_data, dTemp),
  319. set($allProductsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[4]/ldata['.formatCategoryProducts.']/li.val')}),
  320. remli(all, ldTempOne),
  321. for(eachProduct, $allProductsArray, block(
  322. set($productName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[4]/ldata/li[val==eachProduct].lbl'),res("n%2Fa"))}),
  323. addli($eachProduct, $productName, rid:ldTempOne)
  324. )),
  325. goto(scr,.def.sProductDataByType)
  326. ))
  327. ))),
  328. lbl(${def(qps('.all_products\:dlist/dset[productsIter].product_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0)))
  329. ),
  330. add:btn(#Add,lo(1,m(2,30,1,30)))
  331. ),
  332.  
  333. //Report Seeds panel
  334. lbl(#Report_crop_seeds,lo(4,m(5,0,5,0),style:group,visible:${notEmpty(visiblePannelThree)})),
  335. lPrpSeeds:prp(ivar:seedsIter,lo(4,visible:${notEmpty(visiblePannelThree)}),dpath(dTemp,.all_seeds\:dlist/dset[seedsIter]),
  336. cont:pnl(cols:55|55|55|55|20,
  337.  
  338. btn(#Select_seeds,aln:center,lo(2,m(0,0,0,0)),call(na,rvr:false,block(
  339. set($seedsCategory, ${1})
  340. if(${notEmpty(seedsCategory)}, block(
  341. set($formatCategorySeeds, ${frm(seedsCategory-1,0,0)}),
  342. set(.lblName, ${'lPrpSeeds'}, dTemp),
  343. set(.row_in_dset_seeds, ${seedsIter}, dTemp),
  344. unset(.seeds_data, dTemp),
  345. set($allseedsArray, ${qp('/seq[0].sDummyScreenToGetData/pnl[5]/ldata/li.val')}),
  346. remli(all, ldTempOne),
  347. for(eachSeed, $allseedsArray, block(
  348. set($seedName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[5]/ldata/li[val==eachSeed].lbl'),res("n%2Fa"))}),
  349. addli($eachSeed, $seedName, rid:ldTempOne)
  350. )),
  351. goto(scr,.def.sSeedsDataByType)
  352. ))
  353. ))),
  354. lbl(${def(qps('.all_seeds\:dlist/dset[seedsIter].seeds_name','dTemp'),res('n%2Fa'))},lo(2,m(0,0,0,0))),
  355. del:btn(X)
  356. ),
  357. add:btn(#Add,lo(1,m(2,30,1,30)))
  358. ),
  359.  
  360.  
  361.  
  362.  
  363. lbl(${""},lo(4)),
  364. auxinfo:producer(prm(tags:no,photos:yes,notes:yes,dset:dsActivityReporting)),
  365.  
  366. btn(#Save,pim:true,aln:center,lo(4,m(10,20,1,20)),call(na,block(
  367.  
  368. // Setting task code depending on the activity choice
  369. if(${notEmpty(activityType)}, block(
  370. if(${activityType=='1'}, set($taskCodeMain,${'TS102JQ'})), // Land Preparation
  371. if(${activityType=='2'}, set($taskCodeMain,${'TS102JR'})), // Broadcast
  372. if(${activityType=='3'}, set($taskCodeMain,${'TS102JS'})), // Sowing
  373. if(${activityType=='4'}, set($taskCodeMain,${'TS102JR'})), // Spray
  374. if(${activityType=='5'}, set($taskCodeMain,${'TS102JQ'})), // Harvest
  375. if(${activityType=='6'}, set($taskCodeMain,${'TS102JQ'})), // Other
  376. if(${activityType=='7'}, set($taskCodeMain,${'TS102JQ'})), // Transport
  377. if(${activityType=='8'}, set($taskCodeMain,${'TS102JS'})), // Treatment
  378. if(${activityType=='9'}, set($taskCodeMain,${'TS102JQ'})), // Deforestation
  379. if(${activityType=='10'}, set($taskCodeMain,${'TS102JQ'})) // Post harvest and dryer
  380. )
  381. ),
  382. // Check for empty activity
  383. if(${isEmpty(taskCodeMain)}, block(
  384. alert(warn, #Please_select_activity_type),
  385. end()
  386. )),
  387. //Check for empty activity
  388. if(${isEmpty(activitySubType)},block(
  389. alert(warn,${res('Please_select_sub_activity%2E')}),
  390. end()
  391. )),
  392.  
  393. // Working hours check - Should be less than 14 hours
  394. if(${hoursWorked>14}, block(
  395. alert(warn, #Working_hours_cannot_be_more_than_14_Please_change_Start_or_End_Time),
  396. set(.lblName, ${'lWorkedHours'}, dTemp),
  397. end()
  398. )),
  399.  
  400. //Check for Worker selection - Its mandatory to have Responsible (R-**) and Operator (OP-**)
  401. // If the list of integers workers_type_cpg exceeds 10, the numbers should change to 01,02,03..
  402. set($workerTypesStr, ${""}),
  403.  
  404. // for(iterCheckWorkerType, ${qp('.all_workers/dset.workers_type','dTemp')}, block(
  405. // if(${workerTypesStr==""},
  406. // set($workerTypesStr, ${iterCheckWorkerType}),
  407. // set($workerTypesStr, ${workerTypesStr."|".iterCheckWorkerType})
  408. // )
  409. // )),
  410. // // String looks like 1|2|1|6
  411. // if(${containsNone(workerTypesStr, "1")}, block(
  412. // alert(warn, #Please_select_an_operator),
  413. // set(.lblName, ${'lPrpWorkers'}, dTemp),
  414. // end()
  415. // )),
  416. // if(${containsNone(workerTypesStr,["2","3","4","5","6","7","8"])}, block(
  417. // alert(warn, #Please_select_responsible),
  418. // set(.lblName, ${'lPrpWorkers'}, dTemp),
  419. // end()
  420. // )),
  421. //Check if responsible is selected - mandatory
  422. if(${isEmpty(qp('.all_workers/dset.worker_resource','dTemp'))}, block(
  423. alert(warn, #Please_select_responsible),
  424. set(.lblName, ${'lPrpResponsibleWorkers'}, dTemp),
  425. end()
  426. )),
  427.  
  428. // Check if operator is selected - optional
  429. if(${isEmpty(qp('.all_operators/dset.operator_resource','dTemp'))}, block(
  430. alert(question, #No_operator_selected_Are_you_sure_you_want_to_save%3F, continue),
  431. if(${!continue}, end())
  432. )),
  433.  
  434. unset($warningDupicate),
  435. unset($resourcesStr),
  436. set($resourcesStr, ${''}),
  437.  
  438. //Duplicate check - Workers
  439. for(iterCheckWorker, ${qp('.all_workers/dset.worker_resource','dTemp')}, block(
  440. if(${containsAny(resourcesStr,iterCheckWorker)},block(
  441. set($warningDupicate, ${'yes'})
  442. )),
  443. set($resourcesStr, ${resourcesStr."|".iterCheckWorker})
  444. )),
  445. if(${notEmpty(warningDupicate)}, block(
  446. alert(warn, #Please_do_not_duplicate_responsibles),
  447. set(.lblName, ${'lPrpResponsibleWorkers'}, dTemp),
  448. end()
  449. )),
  450.  
  451. //Duplicate check - Operators
  452. for(iterCheckWorker, ${qp('.all_operators/dset.operator_resource','dTemp')}, block(
  453. if(${containsAny(resourcesStr,iterCheckWorker)},block(
  454. set($warningDupicate, ${'yes'})
  455. )),
  456. set($resourcesStr, ${resourcesStr."|".iterCheckWorker})
  457. )),
  458. if(${notEmpty(warningDupicate)}, block(
  459. alert(warn, #Please_do_not_duplicate_operators),
  460. set(.lblName, ${'lPrpOperators'}, dTemp),
  461. end()
  462. )),
  463.  
  464. // Duplicate check - Equipment
  465. for(iterCheckEquipment, ${qp('.all_equipment/dset.equipment_resource','dTemp')}, block(
  466. if(${containsAny(resourcesStr,iterCheckEquipment)},block(
  467. set($warningDupicate, ${'yes'})
  468. )),
  469. set($resourcesStr, ${resourcesStr."|".iterCheckEquipment})
  470. )),
  471. if(${notEmpty(warningDupicate)}, block(
  472. alert(warn, #Please_do_not_duplicate_equipment),
  473. set(.lblName, ${'lPrpEquipment'}, dTemp),
  474. end()
  475. )),
  476.  
  477. // Duplicate check - Chemicals
  478. for(iterCheckChemicals, ${qp('.all_chemicals/dset.chemical_resource','dTemp')}, block(
  479. if(${containsAny(resourcesStr,iterCheckChemicals)},block(
  480. set($warningDupicate, ${'yes'})
  481. )),
  482. set($resourcesStr, ${resourcesStr."|".iterCheckChemicals})
  483. )),
  484. if(${notEmpty(warningDupicate)}, block(
  485. alert(warn, #Please_do_not_duplicate_chemicals),
  486. set(.lblName, ${'lPrpChemicals'}, dTemp),
  487. end()
  488. )),
  489.  
  490. // Duplicate check - Products
  491. for(iterCheckProducts, ${qp('.all_products/dset.product_resource','dTemp')}, block(
  492. if(${containsAny(resourcesStr,iterCheckProducts)},block(
  493. set($warningDupicate, ${'yes'})
  494. )),
  495. set($resourcesStr, ${resourcesStr."|".iterCheckProducts})
  496. )),
  497. if(${notEmpty(warningDupicate)}, block(
  498. alert(warn, #Please_do_not_duplicate_products),
  499. set(.lblName, ${'lPrpProducts'}, dTemp),
  500. end()
  501. )),
  502.  
  503. // Duplicate check - Seeds
  504. for(iterCheckSeeds, ${qp('.all_seeds/dset.seeds_resource','dTemp')}, block(
  505. if(${containsAny(resourcesStr,iterCheckSeeds)},block(
  506. set($warningDupicate, ${'yes'})
  507. )),
  508. set($resourcesStr, ${resourcesStr."|".iterCheckSeeds})
  509. )),
  510. if(${notEmpty(warningDupicate)}, block(
  511. alert(warn, #Please_do_not_duplicate_seeds),
  512. set(.lblName, ${'lPrpProducts'}, dTemp),
  513. end()
  514. )),
  515.  
  516. // Checks for necessary data for saving the screen
  517.  
  518. // Atleast one worker to be selected
  519. if(${qpc('.all_workers/dset.worker_name','dTemp')==0}, block(
  520. alert(warn, #Please_select_atleast_one_worker),
  521. set(.lblName, ${'lPrpWorkers'}, dTemp),
  522. end()
  523. )),
  524.  
  525. // Atleast one equipment to be selected
  526. if(${qpc('.all_equipment/dset.equipment_name','dTemp')==0}, block(
  527. alert(warn, #Please_select_atleast_one_equipment),
  528. set(.lblName, ${'lPrpEquipment'}, dTemp),
  529. end()
  530. )),
  531.  
  532. //Chemicals
  533. // Checking the type of activity, atleast one chemical to be selected and saving the chemicals
  534. if(${activityType=='2'||activityType=='4'}, block(
  535. if(${qpc('.all_chemicals/dset.chemical_name','dTemp')==0}, block(
  536. alert(warn, #Please_select_atleast_one_chemical),
  537. set(.lblName, ${'lPrpChemicals'}, dTemp),
  538. end()
  539. )),
  540. //Saving the chemicals
  541. for(iterEachChemical, ${qp('.all_chemicals/dset.chemical_resource','dTemp')}, block(
  542. set($chemicalsUsage,${def(qps('.all_chemicals\:dlist/dset[i_iterEachChemical].dosage','dTemp'),0)}),
  543. set(.product_chemicals_cpg\:dlist/dset[i_iterEachChemical].resource, ${iterEachChemical},dDone),
  544. set(.product_chemicals_cpg\:dlist/dset[i_iterEachChemical].dosage, ${chemicalsUsage},dDone)
  545. ))
  546. )),
  547.  
  548. //Seeds
  549. // Checking the type of activity, atleast one chemical to be selected and saving the seeds
  550. if(${activityType=='3'||activityType=='8'}, block(
  551. if(${qpc('.all_seeds/dset.seeds_name','dTemp')==0}, block(
  552. alert(warn, #Please_select_atleast_one_seed),
  553. set(.lblName, ${'lPrpSeeds'}, dTemp),
  554. end()
  555. )),
  556. //Saving the seeds
  557. for(iterEachSeed, ${qp('.all_seeds/dset.seeds_resource','dTemp')}, block(
  558. set(.seeds_cpg\:dlist/dset.resource, ${iterEachSeed},dDone),
  559. ))
  560. )),
  561.  
  562. //Products
  563. // Checking the type of activity, atleast one chemical to be selected and saving the Products
  564. if(${activityType=='1'||activityType=='5'||activityType=='6'||activityType=='7'||activityType=='9'||activityType=='10'}, block(
  565. if(${qpc('.all_products/dset.product_name','dTemp')==0}, block(
  566. alert(warn, #Please_select_atleast_one_product),
  567. set(.lblName, ${'lPrpProducts'}, dTemp),
  568. end()
  569. )),
  570. //Saving the products
  571. for(iterEachProduct, ${qp('.all_products/dset.product_resource','dTemp')}, block(
  572. set(.other_materials_cpg\:dlist/dset.resource, ${iterEachProduct},dDone),
  573. ))
  574. )),
  575.  
  576. // Saving workers
  577. for(iterEachWorker, ${qp('.all_workers/dset.worker_resource','dTemp')}, block(
  578. set(.workers_cpg\:dlist/dset.resource, ${iterEachWorker},dDone)
  579. )),
  580.  
  581. // Saving operators
  582. for(iterEachOperator, ${qp('.all_operators/dset.operator_resource','dTemp')}, block(
  583. set(.workers_cpg\:dlist/dset.resource, ${iterEachOperator},dDone)
  584. )),
  585.  
  586. // Saving equipment
  587. for(iterEachEquipment, ${qp('.all_equipment/dset.equipment_resource','dTemp')}, block(
  588. set(.equipment_cpg\:dlist/dset.resource, ${iterEachEquipment},dDone),
  589. )),
  590.  
  591. remli(all, ldTempTwo), // Emptying the ldata used for activities/ sub activities
  592. set(.rate_ha, ${rate},dDone), // Rate
  593. set(.area, ${partialArea},dDone), // Applied area
  594. set(.start_time_cpg, ${startTime},dDone), // Start time
  595. set(.end_time_cpg, ${endTime},dDone), // End time
  596. set(.total_hours_cpg, ${workHoursMachine},dDone), // Total hours
  597. set(.data,${'completed'},dDone),
  598. set(.pest,${activitySubType},dDone), // Activity code - depends on the choice
  599. set(.task,${taskCodeMain},dDone), // Task code - depends on the choice
  600. set($dsetName,${'dsActivityReporting'}),
  601. proc(copyNotes),
  602. store(dDone, yes),
  603. proc(cleanNotes),
  604. cancel(${qp('.pestPath','dTemp')})
  605. ))),
  606. back:call(#Back, cancel())
  607. ),
  608.  
  609. sDummyScreenToGetData:frm(#Screen_name, 60|60|60|55,
  610. init:block(),
  611. refresh:block(),
  612.  
  613. //Worker Type [0]
  614. pnl(cols:235,lo(4),
  615. @ldWorkersTopManagement:ldata(
  616. producer(resourceList,prm(prop:workers_top_management))
  617. ),
  618. @ldWorkersCropManagement:ldata(
  619. producer(resourceList,prm(prop:workers_crop_management))
  620. ),
  621. @ldWorkersPA:ldata(
  622. producer(resourceList,prm(prop:workers_PA))
  623. ),
  624. @ldWorkersOffice:ldata(
  625. producer(resourceList,prm(prop:workers_office))
  626. ),
  627. @ldWorkersTrainee2018:ldata(
  628. producer(resourceList,prm(prop:workers_trainee_2018))
  629. ),
  630. @ldWorkersTrainee2017:ldata(
  631. producer(resourceList,prm(prop:workers_trainee_2017))
  632. ),
  633. @ldWorkersExperimental:ldata(
  634. producer(resourceList,prm(prop:workers_experimental))
  635. )
  636. ),
  637.  
  638. // Equipment Type [1]
  639. pnl(cols:235,lo(4),
  640. @ldEquipmentChains:ldata(
  641. producer(resourceList,prm(prop:machines_chains))
  642. ),
  643. @ldEquipmentRootRake:ldata(
  644. producer(resourceList,prm(prop:machines_rootrake))
  645. ),
  646. @ldEquipmentTractors:ldata(
  647. producer(resourceList,prm(prop:machines_tractors))
  648. ),
  649. @ldEquipmentCannon:ldata(
  650. producer(resourceList,prm(prop:machines_cannon))
  651. ),
  652. @ldEquipmentSprayer:ldata(
  653. producer(resourceList,prm(prop:machines_sprayer))
  654. ),
  655. @ldEquipmentSpreader:ldata(
  656. producer(resourceList,prm(prop:machines_spreader))
  657. ),
  658. @ldEquipmentBackhoe:ldata(
  659. producer(resourceList,prm(prop:machines_backhoe))
  660. ),
  661. @ldEquipmentLoader:ldata(
  662. producer(resourceList,prm(prop:machines_loader))
  663. ),
  664. @ldEquipmentBulldozer:ldata(
  665. producer(resourceList,prm(prop:machines_bulldozer))
  666. ),
  667. @ldEquipmentExcavador:ldata(
  668. producer(resourceList,prm(prop:machines_excavador))
  669. ),
  670. @ldEquipmentAriVehicle:ldata(
  671. producer(resourceList,prm(prop:machines_airvehicle))
  672. ),
  673. @ldEquipmentMotorcycles:ldata(
  674. producer(resourceList,prm(prop:machines_motorcycles))
  675. ),
  676. @ldEquipmentGrainbox:ldata(
  677. producer(resourceList,prm(prop:machines_grainbox))
  678. ),
  679. @ldEquipmentEngine:ldata(
  680. producer(resourceList,prm(prop:machines_engine))
  681. ),
  682. @ldEquipmentWaterConvoy:ldata(
  683. producer(resourceList,prm(prop:machines_waterconvoy))
  684. ),
  685. @ldEquipmentFuelConvoy:ldata(
  686. producer(resourceList,prm(prop:machines_fuelconvoy))
  687. ),
  688. @ldEquipmentBus:ldata(
  689. producer(resourceList,prm(prop:machines_bus))
  690. ),
  691. @ldEquipmentTrucks:ldata(
  692. producer(resourceList,prm(prop:machines_trucks))
  693. ),
  694. @ldEquipmentVehicle:ldata(
  695. producer(resourceList,prm(prop:machines_vehicle))
  696. ),
  697. @ldEquipmentRollercutter:ldata(
  698. producer(resourceList,prm(prop:machines_rollercutter))
  699. ),
  700. @ldEquipmentRotary:ldata(
  701. producer(resourceList,prm(prop:machines_rotary))
  702. ),
  703. @ldEquipmentTrailers:ldata(
  704. producer(resourceList,prm(prop:machines_trailers))
  705. ),
  706. @ldEquipmentHoister:ldata(
  707. producer(resourceList,prm(prop:machines_hoister))
  708. ),
  709. @ldEquipmentHeavyGates:ldata(
  710. producer(resourceList,prm(prop:machines_heavygate))
  711. ),
  712. @ldEquipmentFieldKing:ldata(
  713. producer(resourceList,prm(prop:machines_fieldking))
  714. ),
  715. @ldEquipmentIntermediateGate:ldata(
  716. producer(resourceList,prm(prop:machines_intermediategate))
  717. ),
  718. @ldEquipmentLevellingGate:ldata(
  719. producer(resourceList,prm(prop:machines_levellinggate))
  720. ),
  721. @ldEquipmentMediumGate:ldata(
  722. producer(resourceList,prm(prop:machines_mediumgate))
  723. ),
  724. @ldEquipmentTerracer:ldata(
  725. producer(resourceList,prm(prop:machines_terracer))
  726. ),
  727. @ldEquipmentPlanter:ldata(
  728. producer(resourceList,prm(prop:machines_planter))
  729. ),
  730. @ldEquipmentCassavaPlanter:ldata(
  731. producer(resourceList,prm(prop:machines_cassavaplanter))
  732. ),
  733. @ldEquipmentGenerator:ldata(
  734. producer(resourceList,prm(prop:machines_generator))
  735. ),
  736. @ldEquipmentCornhead:ldata(
  737. producer(resourceList,prm(prop:machines_cornhead))
  738. ),
  739. @ldEquipmentHeadcarry:ldata(
  740. producer(resourceList,prm(prop:machines_headcarry))
  741. ),
  742. @ldEquipmentSoybeanhead:ldata(
  743. producer(resourceList,prm(prop:machines_soybeanhead))
  744. ),
  745. @ldEquipmentDeforestationset:ldata(
  746. producer(resourceList,prm(prop:machines_deforestationset))
  747. ),
  748. @ldEquipmentPreparationset:ldata(
  749. producer(resourceList,prm(prop:machines_land_preparationset))
  750. ),
  751. @ldEquipmentRobust:ldata(
  752. producer(resourceList,prm(prop:machines_robust))
  753. ),
  754. @ldEquipmentStarplan:ldata(
  755. producer(resourceList,prm(prop:machines_starplan))
  756. ),
  757. @ldEquipmentHarvester:ldata(
  758. producer(resourceList,prm(prop:machines_harvester))
  759. ),
  760. @ldEquipmentHarvesterUprooter:ldata(
  761. producer(resourceList,prm(prop:machines_harvesteruprooter))
  762. ),
  763. @ldEquipmentDiscFurrow:ldata(
  764. producer(resourceList,prm(prop:machines_discfurrow))
  765. ),
  766. @ldEquipmentSeedsTreatment:ldata(
  767. producer(resourceList,prm(prop:machines_seedstreatment))
  768. ),
  769. @ldEquipmentFrontblade:ldata(
  770. producer(resourceList,prm(prop:machines_frontblade))
  771. ),
  772. @ldEquipmentSubsoiler:ldata(
  773. producer(resourceList,prm(prop:machines_subsoiler))
  774. )
  775. ),
  776.  
  777. // Activity Type [2]
  778. pnl(cols:235,lo(4),
  779. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  780. producer(listOptions,prm(prop:land_preparation_activities))
  781. ),
  782. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  783. producer(listOptions,prm(prop:broadcast_activities))
  784. ),
  785. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  786. producer(listOptions,prm(prop:sowing_activities))
  787. ),
  788. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  789. producer(listOptions,prm(prop:spray_activities))
  790. ),
  791. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  792. producer(listOptions,prm(prop:harvest_activities))
  793. ),
  794. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  795. producer(listOptions,prm(prop:other_activities))
  796. ),
  797. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  798. producer(listOptions,prm(prop:transport_activities))
  799. ),
  800. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  801. producer(listOptions,prm(prop:treatment_activities))
  802. ),
  803. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  804. producer(listOptions,prm(prop:deforestation_activities))
  805. ),
  806. list(in:listItem,req:yes,dpath(dTemp,.list_item),lo(1),
  807. producer(listOptions,prm(prop:post_harvest_dryer_activities))
  808. )
  809. ),
  810.  
  811. //Chemicals pnl [3]
  812. pnl(cols:235,lo(4),
  813.  
  814. @ldChemicalsFertilizerBasement:ldata(
  815. producer(resourceList,prm(prop:product_fert_basement_cpg))
  816. ),
  817. @ldChemicalsFertilizerMicronutrient:ldata(
  818. producer(resourceList,prm(prop:product_fert_micronutrient_cpg))
  819. ),
  820. @ldChemicalsFertilizerOverTop:ldata(
  821. producer(resourceList,prm(prop:product_fert_overtop_cpg))
  822. ),
  823. @ldChemicalsFertilizerSpray:ldata(
  824. producer(resourceList,prm(prop:product_fert_spray_cpg))
  825. ),
  826. @ldChemicalsFungicideContact:ldata(
  827. producer(resourceList,prm(prop:product_fung_contact_gpg))
  828. ),
  829. @ldChemicalsFungicideReadyMix:ldata(
  830. producer(resourceList,prm(prop:product_fung_readymix_gpg))
  831. ),
  832. @ldChemicalsFungicideSystemic:ldata(
  833. producer(resourceList,prm(prop:product_fung_systemic_gpg))
  834. ),
  835. @ldChemicalsHerbicideContact:ldata(
  836. producer(resourceList,prm(prop:product_herb_contact_cpg))
  837. ),
  838. @ldChemicalsHerbicideSystemic:ldata(
  839. producer(resourceList,prm(prop:product_herb_systemic_cpg))
  840. ),
  841. @ldChemicalsInsecticideContact:ldata(
  842. producer(resourceList,prm(prop:product_insec_contact_cpg))
  843. ),
  844. @ldChemicalsInsecticideIGR:ldata(
  845. producer(resourceList,prm(prop:product_insec_IGR_cpg))
  846. ),
  847. @ldChemicalsInsecticideReadyMix:ldata(
  848. producer(resourceList,prm(prop:product_insec_readymix_cpg))
  849. ),
  850. @ldChemicalsInsecticideSystemic:ldata(
  851. producer(resourceList,prm(prop:product_insec_systemic_cpg))
  852. ),
  853. @ldChemicalsCorrectiveSoilImprovement:ldata(
  854. producer(resourceList,prm(prop:product_corrective_cpg))
  855. )
  856.  
  857. ),
  858.  
  859. // Other Products pnl [4]
  860. pnl(cols:235,lo(4),
  861. @ldProductSpecialBioStimulant:ldata(
  862. producer(resourceList,prm(prop:product_special_bio_cpg))
  863. ),
  864. @ldProductSpecialMicronutrients:ldata(
  865. producer(resourceList,prm(prop:product_special_micronutrients_cpg))
  866. ),
  867. @ldProductOtherAdjuvant:ldata(
  868. producer(resourceList,prm(prop:product_other_adjuvant_cpg))
  869. ),
  870. @ldProductOtherFood:ldata(
  871. producer(resourceList,prm(prop:product_other_food_cpg))
  872. ),
  873. @ldProductOtherInoculant:ldata(
  874. producer(resourceList,prm(prop:product_other_inoculant_cpg))
  875. ),
  876. @ldProductOtherMicronutrients:ldata(
  877. producer(resourceList,prm(prop:product_other_micronutrients_cpg))
  878. ),
  879. @ldProductFuelLubricant:ldata(
  880. producer(resourceList,prm(prop:product_fuel_lubricant_cpg))
  881. )
  882. ),
  883.  
  884. //Chemicals pnl [5]
  885. pnl(cols:235,lo(4),
  886. @ldSeedsCpg:ldata(
  887. producer(resourceList,prm(prop:product_crop_seeds_cpg))
  888. )
  889. ),
  890.  
  891. //Opertors [6]
  892. pnl(cols:235,lo(4),
  893. @ldWorkersOperators:ldata(
  894. producer(resourceList,prm(prop:workers_operators))
  895. )
  896. ),
  897. back:call(#Back, cancel())
  898. ),
  899.  
  900. sWorkerDataByType:menu(#Workers,workerSelected,data:ldTempOne,multi:no,dialog:yes,
  901. dpath(dTemp,.worker_data),
  902. ok:call(#Ok,block(
  903. set($rowInDset, .row_in_dset, dTemp),
  904. if(${isEmpty(rowInDset)}, set($rowInDset, ${frm(0,0,0)})),
  905. set($resourceName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[0]/ldata/li[val==workerSelected].lbl'),res('n%2Fa'))}),
  906. set(.all_workers\:dlist/dset[rowInDset].worker_resource, ${workerSelected}, dTemp),
  907. set(.all_workers\:dlist/dset[rowInDset].worker_name, ${resourceName}, dTemp),
  908. back()
  909. )),
  910. cancel:call(#Cancel,cancel())
  911. ),
  912. sSelectOperators:menu(#Operators,operatorSelected,data:ldTempOne,multi:no,dialog:yes,
  913. dpath(dTemp,.operator_data),
  914. ok:call(#Ok,block(
  915. set($rowInDsetOperator, .row_in_dset_operator, dTemp),
  916. if(${isEmpty(rowInDsetOperator)}, set($rowInDsetOperator, ${frm(0,0,0)})),
  917. set($resourceName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[6]/ldata/li[val==operatorSelected].lbl'),res('n%2Fa'))}),
  918. set(.all_operators\:dlist/dset[rowInDsetOperator].operator_resource, ${operatorSelected}, dTemp),
  919. set(.all_operators\:dlist/dset[rowInDsetOperator].operator_name, ${resourceName}, dTemp),
  920. back()
  921. )),
  922. cancel:call(#Cancel,cancel())
  923. ),
  924. sEquipmentDataByType:menu(#Equipment,equipmentSelected,data:ldTempOne,multi:no,dialog:yes,
  925. dpath(dTemp,.equipment_data),
  926. ok:call(#Ok,block(
  927. set($rowInDsetEquipment, .row_in_dset_equipment, dTemp),
  928. if(${isEmpty(rowInDsetEquipment)}, set($rowInDsetEquipment, ${frm(0,0,0)})),
  929. set($resourceName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[1]/ldata/li[val==equipmentSelected].lbl'),res('n%2Fa'))}),
  930. set(.all_equipment\:dlist/dset[rowInDsetEquipment].equipment_resource, ${equipmentSelected}, dTemp),
  931. set(.all_equipment\:dlist/dset[rowInDsetEquipment].equipment_name, ${resourceName}, dTemp),
  932. back()
  933. )),
  934. cancel:call(#Cancel,cancel())
  935. ),
  936. sActivitiesDataByType:menu(#Activities,activitiesSelected,multi:no,dialog:yes,
  937. dpath(dTemp,.activity_data),
  938. producer(listOptions,prm(prop:activity_types)),
  939. ok:call(#Ok,block(
  940. set($resourceNameActivity, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[2]/list/li[val==activitiesSelected].lbl'),res('n%2Fa'))}),
  941. set(.selected_activity_type, ${resourceNameActivity},dTemp),
  942. back()
  943. )),
  944. cancel:call(#Cancel,cancel())
  945. ),
  946. sChemicalDataByType:menu(#Chemicals,chemicalsSelected,data:ldTempOne,multi:no,dialog:yes,
  947. dpath(dTemp,.chemicals_data),
  948. ok:call(#Ok,block(
  949. set($rowInDsetChems, .row_in_dset_chemicals, dTemp),
  950. if(${isEmpty(rowInDsetChems)}, set($rowInDsetChems, ${frm(0,0,0)})),
  951. set($chemicalName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[3]/ldata/li[val==chemicalsSelected].lbl'),res('n%2Fa'))}),
  952. set(.all_chemicals\:dlist/dset[rowInDsetChems].chemical_resource, ${chemicalsSelected}, dTemp),
  953. set(.all_chemicals\:dlist/dset[rowInDsetChems].chemical_name, ${chemicalName}, dTemp),
  954. back()
  955. )),
  956. cancel:call(#Cancel,cancel())
  957. ),
  958. sProductDataByType:menu(#Products,productsSelected,data:ldTempOne,multi:no,dialog:yes,
  959. dpath(dTemp,.products_data),
  960. ok:call(#Ok,block(
  961. set($rowInDsetProducts, .row_in_dset_products, dTemp),
  962. if(${isEmpty(rowInDsetProducts)}, set($rowInDsetProducts, ${frm(0,0,0)})),
  963. set($productName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[4]/ldata/li[val==productsSelected].lbl'),res('n%2Fa'))}),
  964. set(.all_products\:dlist/dset[rowInDsetProducts].product_resource, ${productsSelected}, dTemp),
  965. set(.all_products\:dlist/dset[rowInDsetProducts].product_name, ${productName}, dTemp),
  966. back()
  967. )),
  968. cancel:call(#Cancel,cancel())
  969. ),
  970. sSeedsDataByType:menu(#Seeds,seedsSelected,data:ldTempOne,multi:no,dialog:yes,
  971. dpath(dTemp,.seeds_data),
  972. ok:call(#Ok,block(
  973. set($rowInDsetSeeds, .row_in_dset_seeds, dTemp),
  974. if(${isEmpty(rowInDsetSeeds)}, set($rowInDsetSeeds, ${frm(0,0,0)})),
  975. set($seedsName, ${def(qps('/seq[0].sDummyScreenToGetData/pnl[5]/ldata/li[val==seedsSelected].lbl'),res('n%2Fa'))}),
  976. set(.all_seeds\:dlist/dset[rowInDsetSeeds].seeds_resource, ${seedsSelected}, dTemp),
  977. set(.all_seeds\:dlist/dset[rowInDsetSeeds].seeds_name, ${seedsName}, dTemp),
  978. back()
  979. )),
  980. cancel:call(#Cancel,cancel())
  981. )
  982. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement