Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.13 KB | None | 0 0
  1. scrset(
  2. sCFormDamageReportSummaryMafre:frm(${res("Damage_Report").": ".def(reportID,"000")},80|40|35|45|40,
  3. init:block(
  4.  
  5. set($lc,.plot,dDone),
  6. log(warn,${"lc: ".def(lc,"n/a")}),
  7.  
  8. set($pestCode,${'ML214I9I'})
  9. set($screenDataString,${lastData('/data[pest==pestCode&&plot==lc].screen_data')}),
  10. log(warn,${"screenDataString: ".def(screenDataString,"n/a")}),
  11. if(${notEmpty(screenDataString)},block(
  12. set($screenData,${split(screenDataString,"|")}),
  13. set($claimNum,${screenData[0]}),
  14. set($claimDate,${screenData[1]}),
  15. set($PeriodStart,${screenData[2]}),
  16. set($PeriodEnd,${screenData[3]}),
  17. set($days,${screenData[4]}),
  18. set($affectedArea,${screenData[5]}),
  19. set($prodTotal,${screenData[6]}),
  20. set($prodObtained,${screenData[7]}),
  21. set($prodLoss,${screenData[8]}),
  22. set($prodDiff,${screenData[9]}),
  23. set($totalLossValue,${screenData[10]}),
  24. set($causeOfLoss,${screenData[11]})
  25. ),
  26. block(
  27. alert(warn,${res("Please_fill_damage_form_first")}),
  28. // end()
  29. )
  30. )
  31.  
  32. set($samplePestCode,${"ML214I9I6I"}),
  33.  
  34. // pull all properties into runtime
  35. set($agentName,.agent_name_mapfre_py,dDone),
  36. set($numInsuredDoc,.num_insured_doc,dDone),
  37. set($propertyName,.property_name_mapfre_py,dDone),
  38. set($plantingDate,.planting_date_mapfre_py,dDone),
  39. set($area,.Area,dDone),
  40. set($insuredArea,.insured_area_mapfre_py,dDone),
  41. set($expectedProductivity,.expected_productivity_mapfre_py,dDone),
  42. set($guaranteedProductivity,.guaranteed_productivity_mapfre_py,dDone),
  43. set($policyNum,.policy_num,dDone),
  44. set($city,.city_mapfre_py,dDone),
  45. set($dateOfProposal,.date_of_proposal_mapfre_py,dDone),
  46. set($cropValuePTon,.crop_value_p_ton_mapfre_py,dDone),
  47. set($insuredAmount,.insured_amount_mapfre_py,dDone),
  48. set($numOfLots,.num_of_lots_mapfre_py,dDone)
  49. set($insuredCrop,.insured_crop_mapfre_py,dDone),
  50. set($farm,.farm,dTemp),
  51. set($regionCode,${qp('.region','dTemp')}),
  52. set($regionNameWithCity,${qps('.def.sRoot/mi[val==regionCode].lbl')}),
  53. if(${notEmpty(regionNameWithCity)},block(
  54. set($regionNameWithCityArr,${split(regionNameWithCity,"/")}),
  55. set($regionName,${regionNameWithCityArr[0]}),
  56. set($cityName,${regionNameWithCityArr[1]})
  57. ))
  58.  
  59.  
  60. // policyType => 1 = Multi-Risk; 2 = Direct Damage;
  61. set($policyType,.policy_type_mapfre_py,dDone),
  62. set($multiRisk,${if(policyType==1,true,false)}),
  63.  
  64. set($regionPath,${qps('.def.sRoot/mi[val==regionCode]/call[0]/goto[0].path')}), // get the path to the region menu
  65. set($growerName,${qps(regionPath.'/mi[val==farm].lbl')}),
  66. set($farmPath,${qps(regionPath.'/mi[val==farm]/call[0]/goto[0].path')}), // got the path to the grower's menu
  67. set($flowLotCodes,${qp(farmPath.'/mi.val')}), // get the list of grower's plots' codes
  68. // set($flowLotsDisplay,${qp(farmPath.'/mi/prm.ln')}), // get the list of the grower's plots' names
  69.  
  70. set($policyNum,.policy_num,dDone),
  71.  
  72. // filter the plots to the ones belonging to the policy
  73. for(lotCode,$flowLotCodes,block(
  74. set($lotName, ${qps(farmPath.'/mi[val==lotCode]/prm.ln')}),
  75. set($lotPolicy, ${qps(farmPath.'/mi[val==lotCode]/prm.policy_num')}),
  76. if(${lotPolicy==policyNum&&lotCode!=lc},block(
  77. set($policyLotCodesString,${concat("|",policyLotCodesString,lotCode)}),
  78. // set($policyLotNamesString,${concat("|",policyLotNamesString,flowLotsDisplay[i_lotCode])}) // Do we need this?
  79. set($policyLotAreaString,${concat("|",policyLotAreaString,qps(farmPath.'/mi[val==lotCode]/prm.insured_area_mapfre_py'))})
  80. ))
  81. )),
  82.  
  83. set($totalSampleCounter,${'0'}),
  84. if(${notEmpty(policyLotCodesString)},block(
  85. set($policyLotCodes,${split(policyLotCodesString,"|")}),
  86. set($lotCounter,${len(policyLotCodes)}),
  87. // Iterate over the policy's lots and calculate their averages and totals
  88. if(${notEmpty(policyLotAreaString)},set($policyLotArea,${split(policyLotAreaString,"|")})),
  89. set($i,${frm(-1,0,0)}),
  90. for(lotCode,$policyLotCodes,block(
  91. set($countSample,
  92. ${dataAverage(
  93. ['pest',samplePestCode,'plot',lotCode],
  94. 'ritems',
  95. avgSample
  96. )}
  97. ),
  98. set($totalSampleCounter,${totalSampleCounter+countSample}),
  99. if(${notEmpty(policyLotArea)},block(
  100. set($areaSample,${policyLotArea[i_lotCode]}),
  101. set($totalSample,${avgSample*areaSample}),
  102. set($productTotal,${def(productTotal,0)+totalSample}),
  103. )),
  104. if(${countSample>0},block(
  105. set($policyArea,${def(policyArea,0)+areaSample}),
  106. set($i, ${frm(i+1,0,0)}),
  107. set(${".lots:dlist/dset[".i."].num"},${frm(i_lotCode+1,0,0)},dTemp),
  108. set(${".lots:dlist/dset[".i."].samples"},${def(countSample,"0")},dTemp),
  109. set(${".lots:dlist/dset[".i."].avg"},${def(avgSample,"0")},dTemp),
  110. set(${".lots:dlist/dset[".i."].area"},${def(areaSample,"0")},dTemp)
  111. set(${".lots:dlist/dset[".i."].total"},${def(totalSample,"0")},dTemp)
  112. ))
  113. ))
  114.  
  115. ))
  116.  
  117. ),
  118. refresh:block(
  119. ),
  120. focus:block(
  121. set($lblName,${qp('.lblName','dTemp')}),
  122. if(${notEmpty(lblName)},block(
  123. focus(${'.'.lblName}),
  124. unset(.lblName,dTemp)))),
  125.  
  126. //STYLES
  127. captionB:style(
  128. style(spec:light,bg:FFC6CFFF),
  129. style(spec:dark,bg:FF222D6D)
  130. ),
  131. subCategory:style(
  132. style(spec:light,bg:803c743d),
  133. style(spec:dark,bg:803c743d)
  134. ),
  135. captionY:style(
  136. style(spec:light,bg:FFFFC107),
  137. style(spec:dark,bg:FFFF6F00)
  138. ),
  139. RedText:style(
  140. style(spec:light,color:FFaa0000),
  141. style(spec:dark,color:FFea0000)),
  142. captionLightGrey:style(
  143. style(spec:light,bg:80dddddd),
  144. style(spec:dark,bg:80dddddd)),
  145.  
  146. //HEADERS
  147. lbl(${res("Product_Type").":"},lo(2)),
  148. //lbl(${qp('.productType','dTemp')},lo(4)), //Plot property in project
  149. lbl(${res("Direct_Damage")},lo(3)), // Temp line
  150.  
  151. lbl(${res("Policy_Number").":"},lo(2)),
  152. lbl(${def(policyNum,res("n%2Fa"))},lo(3)),
  153.  
  154. lbl(${res("Policy_Type").":"},lo(2)),
  155. lbl(${res("Preliminary")},lo(3)), // Temp line
  156. /* list(policyType,true,rows:1,
  157. lo(4),
  158. dpath(dTemp,.policy_type)
  159. li(0,${("")},ord:0),
  160. li(1,${res('Preliminary')},ord:1),
  161. li(2,${res('Final')},ord:2),
  162. // li(3,${res('Escalation')},ord:3),
  163. li(4,${res('Re%2dinspection')},ord:4)
  164. ), */
  165.  
  166. // lbl(#Plot%3A,lo(1)),
  167. // lbl(${qp('.plotName','dTemp')},lo(2)),
  168.  
  169. pnl(cols:65|60|50|65,lo(5),
  170.  
  171. lbl(#Crop%3A,lo(2)),
  172. lbl(${def(insuredCrop,res("n%2Fa"))},lo(2)),
  173.  
  174. lbl(${res("Agent").":"},lo(2)),
  175. lbl(${def(agentName,res("n%2Fa"))},lo(2)),
  176.  
  177. lbl(${res("Insuree").":"},lo(2)),
  178. lbl(${def(growerName,res("n%2Fa"))},lo(2)),
  179.  
  180. lbl(${res("ID").":"},lo(2)),
  181. lbl(${def(numInsuredDoc,"000000000")},lo(2)),
  182.  
  183. lbl(${res("Property").":"},lo(2)),
  184. lbl(${def(propertyName,res("n%2Fa"))},lo(2)),
  185.  
  186. lbl(${res("Region")."/".res("City").":"},lo(2)),
  187. lbl(${def(regionNameWithCity,res("n%2Fa"))},lo(2))
  188. // lbl("Gotham",lo(4)), // Temp line
  189. ),
  190.  
  191. lbl(${res("Damage_Report")},aln:center,lo(5,style:group,m(5,0,0,0))),
  192.  
  193. lbl(${res("Claim")." #:"},lo(1)),
  194. lbl(${def(claimNum,res("n%2Fa"))},lo(2)), //XX
  195. lbl(${formatDateTime(def(claimDate,date()),"dd-MM-yy")},lo(2)), //XX
  196.  
  197. lbl(${res("Cause_of_Loss").":"},lo(2)),
  198. lbl(${def(causeOfLoss,res("n%2Fa"))},lo(3)),
  199.  
  200. pnl(cols:100|40|100,lo(5),
  201. lbl(${res("Period_of_Loss").":"},lo(3,m(5,10,0,10),bg:ffcdd3b1),aln:center),
  202. lbl(${def(PeriodStart,' / / ')},lo(1,m(0,10,0,0)),aln:center),
  203. lbl(${"-"},lo(1,m(0,0,0,0)),aln:center),
  204. lbl(${def(PeriodEnd,' / / ')},lo(1,m(0,0,0,10)),aln:center),
  205. lbl(${def(days,"#")." ".res("Days")},lo(3),aln:center)),
  206.  
  207. // lbl(#Plot%3A,lo(1)),
  208. // lbl(${qp('.plotName','dTemp')},lo(4)),
  209.  
  210. pnl(cols:90|60|45|45,lo(5),
  211. lbl(${res("Planting_Date").": ".def(plantingDate,'n/a')},lo(3)),
  212. lbl(${def(substr(def(PhenoStageName," "),0,2),'--')},aln:center,lo(1,style:captionBrown)),
  213. lbl(${res("Emergance_Date").": ".def(emerganceDate,'n/a')},lo(4))),
  214.  
  215. // -------------------- TABLE ------------ //
  216.  
  217.  
  218. // Lot productivity - samples
  219. pnl(cols:25|40|55|40|80,lo(5),
  220. lbl(${"#"},lo(1,style:group),aln:center),
  221. lbl(${res("Count")},lo(1,style:group),aln:center),
  222. lbl(${res("Avg")},lo(1,style:group),aln:center),
  223. lbl(${res("Area")},lo(1,style:group),aln:center),
  224. lbl(${res("Total")},lo(1,style:group),aln:center)
  225. ),
  226. prp(ivar:lot,lo(5),dpath(dTemp,.lots\:dlist/dset[lot]),
  227. cont:pnl(cols:25|25|70|40|80,lo(5),
  228. lbl(${frm(def(qps('.lots:dlist/dset[lot].num','dTemp'),0),0,0,false,true)}),
  229. lbl(${frm(def(qps('.lots:dlist/dset[lot].samples','dTemp'),0),0,0,false,true)}),
  230. lbl(${frm(def(qps('.lots:dlist/dset[lot].avg','dTemp'),0),0,2,false,true)},aln:center),
  231. lbl(${frm(def(qps('.lots:dlist/dset[lot].area','dTemp'),0),0,1,false,true)},aln:center),
  232. lbl(${frm(def(qps('.lots:dlist/dset[lot].total','dTemp'),0)/1000,0,2,false,true)."k"},aln:center)
  233. )
  234. ),
  235. pnl(cols:40|40|40|40|80,lo(5,visible:${def(totalSampleCounter,0)>0}),
  236. lbl("",lo(2)),
  237. lbl(${res("Total").":"},lo(1,style:group),aln:right),
  238. lbl(${def(policyArea,res("n%2Fa"))},lo(1,bg:ff26283E,clr:ffffffff),aln:right),
  239. // Policy Total Production lbl + store
  240. lbl(${if(notEmpty(productTotal),frm(productTotal/1000,0,2,false,true)."k",res("n%2Fa"))},lo(1,bg:6626283E,clr:ffffffff),aln:right)
  241.  
  242. )
  243.  
  244.  
  245.  
  246.  
  247.  
  248. // -------------------- TABLE ------------ //
  249.  
  250. // Add : Total Area Sum
  251.  
  252. // lbl(${res("Plot_Area").":"},lo(2,m(0,0,0,0))),
  253. // // lbl(${def(plotAreaShort,'n/a').' Ha'},lo(2)),
  254. // lbl(${locationArea(plotCode,'DEF',true)},lo(3)),
  255.  
  256. lbl(${res("Affected_Area").": ".def(affectedArea,'--')." ha"},lo(5)),
  257. // lbl(${"(".def(affectedAreaPercent,'0')."% )"},lo(2))
  258.  
  259. lbl('',lo(5)),
  260.  
  261. lbl(${res("Policy_Total_Production").": "},lo(3,style:captionGrey,m(0,15,0,0))),
  262. lbl(${if(notEmpty(prodTotal),frm(prodTotal,0,1)." Tons",res("n%2Fa"))},lo(2,style:captionGrey,m(0,0,0,15)),aln:center,sd:true),
  263.  
  264. lbl(${res("Productivity_Guaranteed").": "},lo(3,style:captionGrey,m(2,15,0,0))),
  265. lbl(${if(notEmpty(guaranteedProductivity),frm(guaranteedProductivity,0,1)." Tons",res("n%2Fa"))},lo(2,style:captionGrey,m(2,0,0,15)),aln:center,sd:true),
  266.  
  267. lbl(${res("Producivity_Obtained").":"},lo(3,style:captionGrey,m(0,15,0,0))),
  268. lbl(${if(notEmpty(prodObtained),frm(prodObtained,0,0)." Tons",res("n%2Fa"))},sd:yes,lo(2,style:captionGrey,m(0,0,0,15)),aln:center),
  269.  
  270. lbl(${res("Productivity_Loss").":"},lo(3,style:captionGrey,m(0,15,0,0))),
  271. lbl(${if(notEmpty(prodLoss),prodLoss." Tons",res("n%2Fa"))},sd:yes,lo(2,style:captionGrey,m(0,0,0,15)),aln:center),
  272.  
  273. lbl(${res("Loss_%2D_Total").":"},lo(3,style:captionGrey,m(2,15,0,0))),
  274. lbl(${if(notEmpty(prodDiff),prodDiff." Tons",res("n%2Fa"))},sd:yes,lo(2,style:captionGrey,m(2,0,0,15)),aln:center),
  275.  
  276. lbl(${res("Crop_value").":"},lo(3,style:captionGrey,m(2,15,0,0))),
  277. lbl(${if(notEmpty(cropValuePTon),frm(cropValuePTon,0,0)." $/Ton",res("n%2Fa"))},sd:yes,lo(2,style:captionGrey,m(2,0,0,15)),aln:center)
  278.  
  279. lbl(${res("Value_of_total_loss").":"},lo(3,bg:fff9918b,m(2,15,0,0))),
  280. lbl(${if(notEmpty(totalLossValue),frm(totalLossValue,0,0)." $/Ton",res("n%2Fa"))},sd:yes,lo(2,bg:fff9918b,m(2,0,0,15)),aln:center)
  281.  
  282.  
  283. lbl('',lo(5)), //indent
  284.  
  285. //Observations
  286.  
  287. lbl('',lo(5)), //indent
  288. //Finalize
  289.  
  290. lbl("",lo(5)),
  291.  
  292. ok:call(#Ok,back()),
  293. cancel:call(#Cancel,cancel()),
  294. back:call(#Back, cancel())
  295. ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement