SMMQR01100_안전사고통합보고목록조회(OLD).xfdl 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMQR01001" position="absolute 0 0 1201 751" titletext="안전사고 통합보고 목록조회" oninit="SMMQR01000_oninit" onload="SMMQR01000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 18 1201 751" id="group3" scrollbars="autoboth" anchor="all">
  8. <Layouts>
  9. <Layout>
  10. <Div id="div_search" taborder="1" position="absolute 0 7 1201 42" class="div_SA" anchor="left top right">
  11. <Layouts>
  12. <Layout>
  13. <Button id="btn_serch" taborder="0" text="조회" class="btn1" position="absolute 1017 8 1073 28" anchor="top right" onclick="group3_div_search_btn_serch_onclick"/>
  14. <Button id="btn_excel" taborder="1" text="엑셀" onclick="group3_div_search_btn_excel_onclick" class="btn7" position="absolute 1077 8 1133 28" anchor="top right"/>
  15. <Button id="btn_delt" taborder="2" text="삭제" class="btn4" visible="false" position="absolute 1137 8 1193 28" anchor="top right" onclick="group3_div_search_btn_delt_onclick"/>
  16. </Layout>
  17. </Layouts>
  18. </Div>
  19. <Tab position="absolute 0 40 1201 733" id="switch1" anchor="all" class="tab_Normal">
  20. <Tabpages>
  21. <Tabpage text="" id="case1">
  22. <Layouts>
  23. <Layout>
  24. <Grid id="grd_safelist" taborder="0" binddataset="ds_main_list_safe" scrollpixel="all" useinputpanel="false" cellsizingtype="col" cellsizebandtype="allband" onrbuttondown="group3_switch1_case1_grd_safelist_onrbuttondown" onrbuttonup="group3_switch1_case1_grd_safelist_onrbuttonup" oncellclick="group3_switch1_case1_grd_safelist_oncellclick" oncelldblclick="group3_switch1_case1_grd_safelist_oncelldblclick" position="absolute 0 0 1201 680" anchor="all" autosizingtype="none" extendsizetype="none" selecttype="multirow">
  25. <Formats>
  26. <Format id="default">
  27. <Columns>
  28. <Column size="20" band="left"/>
  29. <Column size="24"/>
  30. <Column size="60"/>
  31. <Column size="101"/>
  32. <Column size="100"/>
  33. <Column size="100"/>
  34. <Column size="0"/>
  35. <Column size="58"/>
  36. <Column size="55"/>
  37. <Column size="37"/>
  38. <Column size="75"/>
  39. <Column size="75"/>
  40. <Column size="109"/>
  41. <Column size="90"/>
  42. <Column size="60"/>
  43. <Column size="72"/>
  44. <Column size="69"/>
  45. <Column size="90"/>
  46. <Column size="0"/>
  47. <Column size="100"/>
  48. <Column size="100"/>
  49. <Column size="200"/>
  50. <Column size="200"/>
  51. <Column size="200"/>
  52. <Column size="200"/>
  53. <Column size="200"/>
  54. <Column size="115"/>
  55. <Column size="115"/>
  56. <Column size="100"/>
  57. <Column size="40"/>
  58. <Column size="40"/>
  59. <Column size="80"/>
  60. <Column size="150"/>
  61. <Column size="110"/>
  62. <Column size="80"/>
  63. <Column size="0"/>
  64. </Columns>
  65. <Rows>
  66. <Row size="24" band="head"/>
  67. <Row size="24"/>
  68. </Rows>
  69. <Band id="head">
  70. <Cell/>
  71. <Cell col="1"/>
  72. <Cell col="2" text="접수번호"/>
  73. <Cell col="3" text="보고일"/>
  74. <Cell col="4" text="발생일시"/>
  75. <Cell col="5" text="발견일시"/>
  76. <Cell col="6" text="최종저장"/>
  77. <Cell col="7" text="처리상태"/>
  78. <Cell col="8" text="익명여부"/>
  79. <Cell col="9" text="서면"/>
  80. <Cell col="10" text="단계"/>
  81. <Cell col="11" text="대분류"/>
  82. <Cell col="12" text="중분류"/>
  83. <Cell col="13" text="보고부서"/>
  84. <Cell col="14" text="환자명"/>
  85. <Cell col="15" text="환자번호"/>
  86. <Cell col="16" text="진료과"/>
  87. <Cell col="17" text="주치의"/>
  88. <Cell col="18" text="보고자사번"/>
  89. <Cell col="19" text="보고자직종"/>
  90. <Cell col="20" text="보고자근무년수"/>
  91. <Cell col="21" text="상세내용기술(어떻게)"/>
  92. <Cell col="22" text="상세내용기술(왜)"/>
  93. <Cell col="23" text="상세내용기술(중재내용)"/>
  94. <Cell col="24" text="신체적 손상(낙상)"/>
  95. <Cell col="25" text="손상된신체부위"/>
  96. <Cell col="26" text="담당의/당직의호출"/>
  97. <Cell col="27" text="중재"/>
  98. <Cell col="28" text="대상자구분"/>
  99. <Cell col="29" text="나이"/>
  100. <Cell col="30" text="성별"/>
  101. <Cell col="31" text="발생일시구분"/>
  102. <Cell col="32" text="낙상장소"/>
  103. <Cell col="33" text="낙상위험사정유무"/>
  104. <Cell col="34" text="예방교육유무"/>
  105. <Cell col="35" text="chkdd"/>
  106. </Band>
  107. <Band id="body">
  108. <Cell celltype="head" expr="expr:currow + 1"/>
  109. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:check"/>
  110. <Cell col="2" text="bind:acptno"/>
  111. <Cell col="3" text="bind:reptdd" mask="expr:utlf_isNull(reptdd) ? '' : '####-##-## ##:##'"/>
  112. <Cell col="4" text="bind:genrdd" mask="expr:utlf_isNull(genrdd) ? '' : '####-##-## ##:##'"/>
  113. <Cell col="5" text="bind:discvdd" mask="expr:utlf_isNull(discvdd) ? '' : '####-##-## ##:##'"/>
  114. <Cell col="6" text="bind:trsmyn"/>
  115. <Cell col="7" displaytype="combo" style="align:center;" text="bind:status" combodataset="ds_init_M0640_M0640" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  116. <Cell col="8" text="bind:anonyyn"/>
  117. <Cell col="9" text="bind:inwritingyn"/>
  118. <Cell col="10" displaytype="combo" style="align:center;" text="bind:serdiaggrde" combodataset="ds_serdiaggrde" combocodecol="value" combodatacol="label" enable="false"/>
  119. <Cell col="11" text="bind:lrgcdnm"/>
  120. <Cell col="12" style="align:center top;padding:4 2 2 2;" text="bind:mdlcdnm" wordwrap="word"/>
  121. <Cell col="13" text="bind:reptdutdept"/>
  122. <Cell col="14" text="bind:trgtnm"/>
  123. <Cell col="15" text="bind:trgtid"/>
  124. <Cell col="16" style="align:left top;padding:2 2 2 2;" text="bind:trgtorddept" wordwrap="char" autosizerow="default"/>
  125. <Cell col="17" text="bind:trgtatdoctnm"/>
  126. <Cell col="18" text="bind:reptid"/>
  127. <Cell col="19" text="bind:reptjobkindtext"/>
  128. <Cell col="20" text="bind:reptdutyearno"/>
  129. <Cell col="21" style="align:left top;padding:2 2 2 2;" text="bind:detlcnts_how" wordwrap="char" autosizerow="default"/>
  130. <Cell col="22" style="align:left top;padding:2 2 2 2;" text="bind:detlcnts_why" wordwrap="char" autosizerow="default"/>
  131. <Cell col="23" style="align:left top;padding:2 2 2 2;" text="bind:detlcnts" wordwrap="char" autosizerow="default"/>
  132. <Cell col="24" style="align:left top;padding:2 2 2 2;" text="bind:bodydamnm" wordwrap="char" autosizerow="default"/>
  133. <Cell col="25" style="align:left top;padding:2 2 2 2;" text="bind:bodypart" wordwrap="char" autosizerow="default"/>
  134. <Cell col="26" text="bind:doctorcall"/>
  135. <Cell col="27" text="bind:mediation"/>
  136. <Cell col="28" text="bind:trgtmanflag"/>
  137. <Cell col="29" text="bind:trgtage"/>
  138. <Cell col="30" text="bind:trgtsex"/>
  139. <Cell col="31" text="bind:duty"/>
  140. <Cell col="32" style="align:left;" text="bind:fallplcecd"/>
  141. <Cell col="33" text="bind:falldngrasesyn"/>
  142. <Cell col="34" text="bind:pvneducyn"/>
  143. <Cell col="35" text="bind:chkdd"/>
  144. </Band>
  145. </Format>
  146. </Formats>
  147. </Grid>
  148. </Layout>
  149. </Layouts>
  150. </Tabpage>
  151. </Tabpages>
  152. </Tab>
  153. <Static text="보고일자 :" position="absolute 11 17 82 34" id="caption3" class="search_name" anchor="default"/>
  154. <Static text="~" position="absolute 177 17 189 34" id="caption4" class="search_no_b" anchor="default"/>
  155. <Calendar position="absolute 85 15 170 35" align="align:center middle;" id="ipt_fromdd" class="input_search" anchor="default" autoselect="true"/>
  156. <Calendar position="absolute 195 15 280 35" align="align:center middle;" id="ipt_todd" class="input_search" anchor="default" onkeydown="group3_ipt_todd_onkeydown" autoselect="true"/>
  157. </Layout>
  158. </Layouts>
  159. </Div>
  160. <Static text="안전사고통합보고목록조회" position="absolute 0 0 190 25" id="caption6" class="tit_1"/>
  161. <PopupMenu id="pMenu_safelistmenu" innerdataset="@ds_popupmenu_menu_item" idcolumn="func" captioncolumn="name" levelcolumn="lev" onmenuclick="pMenu_safelistmenu_onmenuclick" position="absolute 5 776 120 818"/>
  162. </Layout>
  163. </Layouts>
  164. <Objects>
  165. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  166. <ColumnInfo>
  167. <Column id="acptno" type="STRING" size="256" sumtext=""/>
  168. <Column id="status" type="STRING" size="256" sumtext=""/>
  169. <Column id="fromdd" type="STRING" size="256" sumtext=""/>
  170. <Column id="todd" type="STRING" size="256" sumtext=""/>
  171. <Column id="admin" type="STRING" size="256" sumtext=""/>
  172. </ColumnInfo>
  173. <Rows>
  174. <Row/>
  175. </Rows>
  176. </Dataset>
  177. <Dataset id="ds_main_list_safe" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  178. <ColumnInfo>
  179. <Column id="check" type="STRING" size="256" sumtext="접수번호"/>
  180. <Column id="acptno" type="STRING" size="256" sumtext="접수번호"/>
  181. <Column id="reptdd" type="STRING" size="256" sumtext="보고일"/>
  182. <Column id="genrdd" type="STRING" size="256" sumtext="발생일"/>
  183. <Column id="discvdd" type="STRING" size="256" sumtext="발견일"/>
  184. <Column id="trsmyn" type="STRING" size="256" sumtext="전송여부"/>
  185. <Column id="status" type="STRING" size="256" sumtext="상태값"/>
  186. <Column id="statusnm" type="STRING" size="256"/>
  187. <Column id="serdiaggrde" type="STRING" size="256" sumtext="중증도"/>
  188. <Column id="lrgcdnm" type="STRING" size="256" sumtext="대분류"/>
  189. <Column id="mdlcdnm" type="STRING" size="256" sumtext="중분류"/>
  190. <Column id="reptdutdept" type="STRING" size="256" sumtext="보고부서"/>
  191. <Column id="reptposdeptcd" type="STRING" size="256" sumtext="보고부서"/>
  192. <Column id="trgtnm" type="STRING" size="256" sumtext="환자명"/>
  193. <Column id="trgtid" type="STRING" size="256" sumtext="환자ID"/>
  194. <Column id="trgtorddept" type="STRING" size="256" sumtext="진료과"/>
  195. <Column id="reptid" type="STRING" size="256" sumtext="보고자"/>
  196. <Column id="detlcnts" type="STRING" size="256" sumtext="상세내용기술"/>
  197. <Column id="anonyyn" type="STRING" size="256" sumtext="익명보고"/>
  198. <Column id="bodydamnm" type="STRING" size="256" sumtext="낙상으로 인한 신체적 손상정도"/>
  199. <Column id="detlcnts_how" type="STRING" size="256" sumtext="상세내용기술"/>
  200. <Column id="detlcnts_why" type="STRING" size="256" sumtext="상세내용기술"/>
  201. <Column id="doctorcall" type="STRING" size="256" sumtext="담당의_당직의호출"/>
  202. <Column id="mediation" type="STRING" size="256" sumtext="중재"/>
  203. <Column id="chkdd" type="STRING" size="256" sumtext="중재"/>
  204. <Column id="inwritingyn" type="STRING" size="256" sumtext="서면보고"/>
  205. <Column id="trgtmanflag" type="STRING" size="256" sumtext="대상자구분"/>
  206. <Column id="sexage" type="STRING" size="256" sumtext="성별/나이"/>
  207. <Column id="fallplcecd" type="STRING" size="256" sumtext="낙상장소"/>
  208. <Column id="trgtatdoctnm" type="STRING" size="256"/>
  209. <Column id="reptjobkindtext" type="STRING" size="256"/>
  210. <Column id="reptdutyearno" type="STRING" size="256"/>
  211. <Column id="trgtsex" type="STRING" size="256"/>
  212. <Column id="trgtage" type="STRING" size="256"/>
  213. <Column id="bodypart" type="STRING" size="256"/>
  214. <Column id="falldngrasesyn" type="STRING" size="256"/>
  215. <Column id="pvneducyn" type="STRING" size="256"/>
  216. <Column id="duty" type="STRING" size="256"/>
  217. <Column id="presyn" type="STRING" size="256"/>
  218. <Column id="causyn" type="STRING" size="256"/>
  219. <Column id="impractyn" type="STRING" size="256"/>
  220. <Column id="imprplayn" type="STRING" size="256"/>
  221. <Column id="lateyn" type="STRING" size="256"/>
  222. <Column id="endyn" type="STRING" size="256"/>
  223. <Column id="rsltdesc" type="STRING" size="256"/>
  224. </ColumnInfo>
  225. <Rows/>
  226. </Dataset>
  227. <Dataset id="ds_send_qirptlst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  228. <ColumnInfo>
  229. <Column id="list" type="STRING" size="256" sumtext="안전사고 보고시 자동으로 부여되는 보고번호"/>
  230. <Column id="acptno" type="STRING" size="256" sumtext="안전사고 보고시 자동으로 부여되는 보고번호"/>
  231. </ColumnInfo>
  232. </Dataset>
  233. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  234. <ColumnInfo>
  235. <Column id="fromdd" type="STRING" size="256" sumtext="보고시작일자"/>
  236. <Column id="todd" type="STRING" size="256" sumtext="보고마지막일자"/>
  237. <Column id="lrg" type="STRING" size="256" sumtext="대분류"/>
  238. <Column id="mdl" type="STRING" size="256" sumtext="중분류"/>
  239. <Column id="reptdutdept" type="STRING" size="256" sumtext="보고부서"/>
  240. <Column id="trgtorddept" type="STRING" size="256" sumtext="진료과"/>
  241. <Column id="rsltyn" type="STRING" size="256" sumtext="종결여부"/>
  242. <Column id="admin" type="STRING" size="256" sumtext=""/>
  243. <Column id="statistics" type="STRING" size="256" sumtext="통계여부"/>
  244. <Column id="jobposcd" type="STRING" size="256" sumtext="사용자직급"/>
  245. <Column id="grup" type="STRING" size="256" sumtext="사용자그룹"/>
  246. </ColumnInfo>
  247. <Rows>
  248. <Row/>
  249. </Rows>
  250. </Dataset>
  251. <Dataset id="ds_init_hardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  252. <ColumnInfo>
  253. <Column id="hardcdno" type="STRING" size="256"/>
  254. <Column id="hardcodenm" type="STRING" size="256"/>
  255. <Column id="hardcd" type="STRING" size="256"/>
  256. <Column id="hardcdnm" type="STRING" size="256"/>
  257. <Column id="cdseqno" type="STRING" size="256"/>
  258. </ColumnInfo>
  259. </Dataset>
  260. <Dataset id="ds_init_hardcd_hardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  261. <ColumnInfo>
  262. <Column id="hardcdno" type="STRING" size="256"/>
  263. <Column id="hardcodenm" type="STRING" size="256"/>
  264. <Column id="hardcd" type="STRING" size="256"/>
  265. <Column id="hardcdnm" type="STRING" size="256"/>
  266. <Column id="cdseqno" type="STRING" size="256"/>
  267. </ColumnInfo>
  268. </Dataset>
  269. <Dataset id="ds_serdiaggrde" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  270. <ColumnInfo>
  271. <Column id="label" type="STRING" size="256"/>
  272. <Column id="value" type="STRING" size="256"/>
  273. </ColumnInfo>
  274. <Rows>
  275. <Row>
  276. <Col id="value">1</Col>
  277. <Col id="label">1단계</Col>
  278. </Row>
  279. <Row>
  280. <Col id="value">2</Col>
  281. <Col id="label">2단계</Col>
  282. </Row>
  283. <Row>
  284. <Col id="value">3</Col>
  285. <Col id="label">3단계</Col>
  286. </Row>
  287. <Row>
  288. <Col id="value">4</Col>
  289. <Col id="label">4단계</Col>
  290. </Row>
  291. <Row>
  292. <Col id="value">5</Col>
  293. <Col id="label">5단계</Col>
  294. </Row>
  295. <Row>
  296. <Col id="value">6</Col>
  297. <Col id="label">6단계</Col>
  298. </Row>
  299. <Row>
  300. <Col id="value">7</Col>
  301. <Col id="label">7단계</Col>
  302. </Row>
  303. <Row>
  304. <Col id="value">8</Col>
  305. <Col id="label">8단계</Col>
  306. </Row>
  307. <Row>
  308. <Col id="value">9</Col>
  309. <Col id="label">9단계</Col>
  310. </Row>
  311. <Row>
  312. <Col id="value">11</Col>
  313. <Col id="label">근접오류</Col>
  314. </Row>
  315. <Row>
  316. <Col id="value">12</Col>
  317. <Col id="label">무해오류</Col>
  318. </Row>
  319. <Row>
  320. <Col id="value">13</Col>
  321. <Col id="label">유해오류</Col>
  322. </Row>
  323. <Row>
  324. <Col id="value">14</Col>
  325. <Col id="label">적신호사건</Col>
  326. </Row>
  327. </Rows>
  328. </Dataset>
  329. <Dataset id="ds_popupmenu_menu_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  330. <ColumnInfo>
  331. <Column id="name" type="STRING" size="256"/>
  332. <Column id="func" type="STRING" size="256"/>
  333. <Column id="lev" type="STRING" size="256"/>
  334. </ColumnInfo>
  335. <Rows>
  336. <Row>
  337. <Col id="name">삭제</Col>
  338. <Col id="func">fRecDel</Col>
  339. <Col id="lev">0</Col>
  340. </Row>
  341. <Row>
  342. <Col id="name">수정요청</Col>
  343. <Col id="func">fRecAdjReq</Col>
  344. <Col id="lev">0</Col>
  345. </Row>
  346. </Rows>
  347. </Dataset>
  348. <Dataset id="ds_init_M0640_M0640" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  349. <ColumnInfo>
  350. <Column id="cdid" type="STRING" size="255"/>
  351. <Column id="cdnm" type="STRING" size="255"/>
  352. </ColumnInfo>
  353. </Dataset>
  354. </Objects>
  355. <Bind>
  356. <BindItem id="item0" compid="group3.ipt_fromdd" propid="value" datasetid="ds_send" columnid="fromdd"/>
  357. <BindItem id="item1" compid="group3.ipt_todd" propid="value" datasetid="ds_send" columnid="todd"/>
  358. </Bind>
  359. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  360. * System Name : 경대 의료정보시스템
  361. * Job Name : emr_qixp -> SMMQR01000
  362. * Creator : yjh
  363. * Make Date : 2016-09-23
  364. * Description :
  365. *---------------------------------------------------------------------------------------
  366. * Modify Date Modifier Modify Description
  367. *---------------------------------------------------------------------------------------
  368. * 2016-09-23 yjh TF->XP
  369. *
  370. *---------------------------------------------------------------------------------------
  371. ****************************************************************************************/
  372. //=======================================================================================
  373. // Lib Include
  374. //---------------------------------------------------------------------------------------
  375. include "com_commonxp::comm_main.xjs";
  376. include "emr_prcpmngtxp::MMO001.xjs";
  377. //=======================================================================================
  378. // Global Form Variable
  379. //---------------------------------------------------------------------------------------
  380. var arErrorCode = new HashArray();
  381. //=======================================================================================
  382. // Function
  383. //---------------------------------------------------------------------------------------
  384. //삭제처리
  385. function fRecDel(){
  386. var row = group3.switch1.case1.grd_safelist.currentrow;
  387. var acptno = ds_main_list_safe.getColumn(row, "acptno");
  388. var reptid = ds_main_list_safe.getColumn(row, "reptid");
  389. var trsmyn = ds_main_list_safe.getColumn(row, "trsmyn");
  390. var adminchk = false;
  391. var cnt = ds_init_hardcd.rowcount;
  392. for( var i=0 ; i<cnt ; i++ ){
  393. //var trgtcd = ds_init_hardcd_hardcd.getColumn(i, "hardcd");
  394. var trgtcd = ds_init_hardcd.getColumn(i, "hardcd");
  395. if( sysf_getUserInfo("userid") == trgtcd ){
  396. adminchk = true;
  397. break;
  398. }
  399. }
  400. if( (reptid == sysf_getUserInfo("userid") && trsmyn == "N") || adminchk == true ){
  401. if( adminchk == true ){
  402. ds_send_reqdata.setColumn(0, "admin", "Y");
  403. }else{
  404. ds_send_reqdata.setColumn(0, "admin", "N");
  405. }
  406. ds_send_reqdata.setColumn(0, "acptno", acptno);
  407. ds_send_reqdata.setColumn(0, "status", "40");
  408. ds_send_reqdata.setColumn(0, "fromdd", ds_send.getColumn(0, "fromdd"));
  409. ds_send_reqdata.setColumn(0, "todd", ds_send.getColumn(0, "todd"));
  410. var rtnval = sysf_messageBox("", "Q001");
  411. if( rtnval==6 ){
  412. var nRowPos = ds_main_list_safe.rowposition;
  413. var oParam = {};
  414. oParam.id = "TXMQR00200";
  415. oParam.service = "qiapp.SafeAcdMngt";
  416. oParam.method = "reqSetReptInfo";
  417. oParam.inds = "req=ds_send_reqdata";
  418. oParam.outds = "ds_main_list_safe=safe";
  419. oParam.async = false;
  420. oParam.callback = "cf_TXMQR00200";
  421. tranf_submit(oParam);
  422. if( arErrorCode.pop("TXMQR00200") > -1 ){
  423. ds_main_list_safe.rowposition = nRowPos;
  424. sysf_messageBox("", "I001");
  425. adminchk = false;
  426. return;
  427. }
  428. }else{
  429. return;
  430. }
  431. }else if( reptid == sysf_getUserInfo("userid") && trsmyn == "Y" ){
  432. sysf_messageBox("삭제는 QI팀 전송이전만 가능합니다. 본원[5463]/칠곡[2421]으로\n문의하시면 처리", "I006");
  433. return;
  434. }
  435. }
  436. //수정요청 처리
  437. function fRecAdjReq(){
  438. var row = group3.switch1.case1.grd_safelist.currentrow;
  439. var acptno = ds_main_list_safe.getColumn(row, "acptno");
  440. var reptid = ds_main_list_safe.getColumn(row, "reptid");
  441. var trsmyn = ds_main_list_safe.getColumn(row, "trsmyn");
  442. var adminchk = false;
  443. var cnt = ds_init_hardcd.rowcount;
  444. for( var i=0 ; i<cnt ; i++ ){
  445. var trgtcd = ds_init_hardcd.getColumn(i, "hardcd");
  446. if( sysf_getUserInfo("userid") == trgtcd ){
  447. adminchk = true;
  448. break;
  449. }
  450. }
  451. if( adminchk == true ){
  452. ds_send_reqdata.setColumn(0, "admin", "Y");
  453. ds_send_reqdata.setColumn(0, "acptno", acptno);
  454. ds_send_reqdata.setColumn(0, "status", "30");
  455. ds_send_reqdata.setColumn(0, "fromdd", ds_send.getColumn(0, "fromdd"));
  456. ds_send_reqdata.setColumn(0, "todd", ds_send.getColumn(0, "todd"));
  457. var rtnval = sysf_messageBox("","Q015");
  458. if( rtnval == 6 ){
  459. var nRowPos = ds_main_list_safe.rowposition;
  460. var oParam = {};
  461. oParam.id = "TXMQR00200";
  462. oParam.service = "qiapp.SafeAcdMngt";
  463. oParam.method = "reqSetReptInfo";
  464. oParam.inds = "req=ds_send_reqdata";
  465. oParam.outds = "ds_main_list_safe=safe";
  466. oParam.async = false;
  467. oParam.callback = "cf_TXMQR00200";
  468. tranf_submit(oParam);
  469. if( arErrorCode.pop("TXMQR00200") > -1 ){
  470. ds_main_list_safe.rowposition = nRowPos;
  471. sysf_messageBox("", "I001");
  472. adminchk = false;
  473. return;
  474. }
  475. }else{
  476. return;
  477. }
  478. }else{
  479. sysf_messageBox("수정요청 권한이", "I004");
  480. return;
  481. }
  482. }
  483. function cf_TXMQR00200(sSvcId, nErrorCode, sErrorMsg) {
  484. arErrorCode.push(sSvcId, nErrorCode);
  485. }
  486. //=======================================================================================
  487. // Event
  488. //---------------------------------------------------------------------------------------
  489. /****************************************************************************************
  490. * Components : Form
  491. * Components ID : SMMQR01000
  492. * Event : oninit
  493. * Argument : 01.obj : Object Event has occurred
  494. * : 02.e : Event Object
  495. * Description : 화면 처음 초기화시
  496. ****************************************************************************************/
  497. function SMMQR01000_oninit(obj:Form, e:InitEventInfo)
  498. {
  499. frmf_initForm(obj); //폼 초기화
  500. }
  501. /****************************************************************************************
  502. * Components : Form
  503. * Components ID : SMMQR01000
  504. * Event : onload
  505. * Argument : 01.obj : Object Event has occurred
  506. * : 02.e : Event Object
  507. * Description : 화면 로딩 완료시
  508. ****************************************************************************************/
  509. function SMMQR01000_onload(obj:Form, e:LoadEventInfo)
  510. {
  511. ds_send.setColumn(0, "reptdutdept", "T");
  512. ds_send.setColumn(0, "rsltyn", "T");
  513. ds_send.setColumn(0, "todd", utlf_getCurrentDate());
  514. ds_send.setColumn(0, "fromdd", utlf_getCurrentDate().substring(0,6).concat("01"));
  515. //중증도 열에 tooltiptext 를 설정한다
  516. //grd_safelist.colStatus(grd_safelist.colRef("중증도")) = true;
  517. var arrParam = [{dsNm: "ds_init_M0640_M0640", cdGrpId: "M0640"}];
  518. appf_getCodeList(arrParam);
  519. //하드코드 테이블 체크
  520. lf_getHardCDList("N", 5595, 0 , ds_init_hardcd); //fGetHardCDList("N", 5595, 0 , "/root/init/hardcd");
  521. var cnt = ds_init_hardcd.rowcount;
  522. var adminchk = "";
  523. for( var i=0 ; i<cnt ; i++ ){
  524. var userid = ds_init_hardcd.getColumn(i, "hardcd");
  525. if( sysf_getUserInfo("userid") == userid ){
  526. adminchk = true;
  527. break;
  528. }
  529. }
  530. //20170103 삭제버튼 기능 삭제 - DB상 DELETE 되므로 기능 삭제(재수정)
  531. /*
  532. if( adminchk == true ){ //hardcd 5595일시 서면보고가 보이도록 추가.
  533. group3.btn_delt.visible = true;
  534. group3.switch1.case1.grd_safelist.setRealColSize(0, 24);
  535. group3.switch1.case1.grd_safelist.setRealColSize(8, 37);
  536. }else{
  537. group3.div_search.btn_serch.position.left = "1056";
  538. group3.div_search.btn_serch.position.width = "56";
  539. group3.div_search.btn_excel.position.left = "1116";
  540. group3.div_search.btn_excel.position.width = "56";
  541. group3.switch1.case1.grd_safelist.setRealColSize(0, 0);
  542. group3.switch1.case1.grd_safelist.setRealColSize(8, 0);
  543. }
  544. group3.switch1.case1.grd_safelist.setRealColSize(0, 0);
  545. group3.switch1.case1.grd_safelist.setRealColSize(8, 37);
  546. grdf_setGridSort(group3.switch1.case1.grd_safelist);
  547. */
  548. if( adminchk == true ){ //hardcd 5595일시 서면보고가 보이도록 추가.
  549. group3.btn_delt.visible = true;
  550. group3.switch1.case1.grd_safelist.setRealColSize(1, 60);
  551. group3.switch1.case1.grd_safelist.setRealColSize(10, 75);
  552. return;
  553. }else{
  554. group3.div_search.btn_excel.position.x = group3.div_search.position.right - group3.div_search.btn_excel.position.width - 11;
  555. group3.div_search.btn_serch.position.x = group3.div_search.btn_excel.position.x - group3.div_search.btn_serch.position.width - 3;
  556. group3.switch1.case1.grd_safelist.setRealColSize(0, 0);
  557. group3.switch1.case1.grd_safelist.setRealColSize(8, 0);
  558. }
  559. //group3.switch1.case1.grd_safelist.setRealColSize(1, 0);
  560. //group3.switch1.case1.grd_safelist.setRealColSize(10, 75);
  561. //
  562. //
  563. grdf_setGridSort(group3.switch1.case1.grd_safelist);
  564. }
  565. /****************************************************************************************
  566. * Components : Calendar
  567. * Components ID : ipt_todd
  568. * Event : onkeydown
  569. * Argument : 01.obj : Object Event has occurred
  570. * : 02.e : Event Object
  571. * Description : 달력 키 입력시
  572. ****************************************************************************************/
  573. function group3_ipt_todd_onkeydown(obj:Calendar, e:KeyEventInfo)
  574. {
  575. if( e.keycode == 13 ){
  576. group3.div_search.btn_serch.click();
  577. }
  578. }
  579. /****************************************************************************************
  580. * Components : Button
  581. * Components ID : btn_serch
  582. * Event : onclick
  583. * Argument : 01.obj : Object Event has occurred
  584. * : 02.e : Event Object
  585. * Description : 조회버튼 클릭시
  586. ****************************************************************************************/
  587. function group3_div_search_btn_serch_onclick(obj:Button, e:ClickEventInfo)
  588. {
  589. var nRowPos = ds_main_list_safe.rowposition;
  590. var nHScrollPos = group3.switch1.case1.grd_safelist.hscrollbar.pos;
  591. var oParam = {};
  592. oParam.id = "TRMQR01000";
  593. oParam.service = "qiapp.SafeAcdList";
  594. oParam.method = "reqGetSafeAcdList";
  595. oParam.inds = "req=ds_send";
  596. oParam.outds = "ds_main_list_safe=safe";
  597. oParam.async = false;
  598. //oParam.callback = "cf_TRMQR01000";
  599. tranf_submit(oParam);
  600. ds_main_list_safe.rowposition = nRowPos;
  601. group3.switch1.case1.grd_safelist.hscrollbar.pos = nHScrollPos;
  602. if( utlf_isNull(ds_main_list_safe.getColumnInfo("check")) ){
  603. ds_main_list_safe.addColumn("check", "string");
  604. }
  605. }
  606. /****************************************************************************************
  607. * Components : Button
  608. * Components ID : btn_excel
  609. * Event : onclick
  610. * Argument : 01.obj : Object Event has occurred
  611. * : 02.e : Event Object
  612. * Description : 엑셀버튼 클릭시
  613. ****************************************************************************************/
  614. function group3_div_search_btn_excel_onclick(obj:Button, e:ClickEventInfo)
  615. {
  616. grdf_exportExcel(group3.switch1.case1.grd_safelist, "안전사고통합보고목록조회_" + utlf_getCurrentDate(), "SheetName1", false, "", "user", false);
  617. }
  618. /****************************************************************************************
  619. * Components : Button
  620. * Components ID : btn_delt
  621. * Event : onclick
  622. * Argument : 01.obj : Object Event has occurred
  623. * : 02.e : Event Object
  624. * Description : 삭제버튼 클릭시
  625. ****************************************************************************************/
  626. function group3_btn_delt_onclick(obj:Button, e:ClickEventInfo)
  627. {
  628. var empty = 1 ; // 체크여부
  629. var rtn = sysf_messageBox("", "Q001");
  630. if( rtn != 6 ){
  631. return;
  632. }
  633. var adminchk = false;
  634. var cnt = ds_init_hardcd.rowcount;
  635. for( var i=0 ; i<cnt ; i++ ){
  636. var trgtcd = ds_init_hardcd.getColumn(i, "hardcd");
  637. if( sysf_getUserInfo("userid") == trgtcd ){
  638. adminchk = true;
  639. break;
  640. }
  641. }
  642. var qirptlst = "list" + "▦acptno" + "▦status" +"▩";
  643. for( var i=0 ; i<group3.switch1.case1.grd_safelist.rowcount ; i++ ){
  644. if( ds_main_list_safe.getColumn(i, "check") == "1" ){
  645. var reptid = ds_main_list_safe.getColumn(i, "reptid");
  646. var trsmyn = ds_main_list_safe.getColumn(i, "trsmyn");
  647. if( (reptid == sysf_getUserInfo("userid") && trsmyn == "N") || adminchk == true ){
  648. if( adminchk == true ){
  649. ds_send_reqdata.setColumn(0, "admin", "Y");
  650. }else{
  651. ds_send_reqdata.setColumn(0, "admin", "N");
  652. }
  653. qirptlst += "1" + "▦" + ds_main_list_safe.getColumn(i, "acptno") + "▦" + "40" + "▩";
  654. empty += 1;
  655. }else if( reptid == sysf_getUserInfo("userid") && trsmyn == "Y" ){
  656. sysf_messageBox("삭제는 QI팀 전송이전만 가능합니다. 본원[5463]/칠곡[2421]으로\n문의하시면 처리", "I006");
  657. return;
  658. }
  659. }
  660. }
  661. if( empty == 1 ){
  662. sysf_messageBox("삭제할 내용을","C002");
  663. return;
  664. }
  665. dsf_setCSVToDs("ds_send_qirptlst", qirptlst);
  666. var oParam = {};
  667. oParam.id = "TXMQR00201";
  668. oParam.service = "qiapp.QIdxMngt";
  669. oParam.method = "reqDelqireportlst";
  670. oParam.inds = "qirptlst=ds_send_qirptlst";
  671. oParam.outds = "";
  672. oParam.async = false;
  673. oParam.callback = "cf_TXMQR00201";
  674. tranf_submit(oParam);
  675. if( arErrorCode.pop("TXMQR00201") > -1 ){
  676. sysf_messageBox("삭제되었습니다.","I");
  677. }
  678. group3.div_search.btn_serch.click();
  679. }
  680. function cf_TXMQR00201(sSvcId, nErrorCode, sErrorMsg) {
  681. arErrorCode.push(sSvcId, nErrorCode);
  682. }
  683. /****************************************************************************************
  684. * Components : Grid
  685. * Components ID : grd_safelist
  686. * Event : oncelldblclick
  687. * Argument : 01.obj : Object Event has occurred
  688. * : 02.e : Event Object
  689. * Description : 그리드 셀 더블클릭시
  690. ****************************************************************************************/
  691. function group3_switch1_case1_grd_safelist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  692. {
  693. var chkcol = group3.switch1.case1.grd_safelist.getBindCellIndex("body", "check");
  694. if( e.cell != chkcol ){
  695. var cur_row = group3.switch1.case1.grd_safelist.currentrow;
  696. var temp = ds_main_list_safe.getColumn(cur_row, "acptno");
  697. var daychk = ds_main_list_safe.getColumn(cur_row, "chkdd");
  698. frmf_setParameter("ano", ds_main_list_safe.getColumn(cur_row, "acptno"));
  699. frmf_setParameter("daychk", daychk);
  700. if( cur_row >= 0 ){
  701. frmf_modal("SMMQR00100","SMMQR00100",null,"",1,10,10,"","","","","","M");
  702. var nRowPos = ds_main_list_safe.rowposition;
  703. var oParam = {};
  704. oParam.id = "TRMQR01000";
  705. oParam.service = "qiapp.SafeAcdList";
  706. oParam.method = "reqGetSafeAcdList";
  707. oParam.inds = "req=ds_send";
  708. oParam.outds = "ds_main_list_safe=safe";
  709. oParam.async = false;
  710. //oParam.callback = "cf_TRMQR01000";
  711. tranf_submit(oParam);
  712. ds_main_list_safe.rowposition = nRowPos;
  713. if( utlf_isNull(ds_main_list_safe.getColumnInfo("check")) ){
  714. ds_main_list_safe.addColumn("check", "string");
  715. }
  716. if( ds_send.getColumn(0, "admin") == "Y" ){
  717. group3.switch1.case1.grd_safelist.setRealColSize(8, 37);
  718. }else{
  719. group3.switch1.case1.grd_safelist.setRealColSize(8, 0);
  720. }
  721. }
  722. }
  723. }
  724. /****************************************************************************************
  725. * Components : Grid
  726. * Components ID : grd_safelist
  727. * Event : onrbuttondown
  728. * Argument : 01.obj : Object Event has occurred
  729. * : 02.e : Event Object
  730. * Description : 마우스 우클릭시
  731. ****************************************************************************************/
  732. function group3_switch1_case1_grd_safelist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  733. {
  734. if( e.row > -1 ){
  735. grdf_setSelectedCell(obj, e); // 선택된 행 확실히 선택해줌
  736. }
  737. }
  738. /****************************************************************************************
  739. * Components : PopupMenu
  740. * Components ID : pMenu_safelistmenu
  741. * Event : onmenuclick
  742. * Argument : 01.obj : Object Event has occurred
  743. * : 02.e : Event Object
  744. * Description : 팝업메뉴 클릭시
  745. ****************************************************************************************/
  746. function pMenu_safelistmenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  747. {
  748. eval(e.id+"()");
  749. }
  750. /****************************************************************************************
  751. * Components : Grid
  752. * Components ID : grd_safelist
  753. * Event : oncellclick
  754. * Argument : 01.obj : Object Event has occurred
  755. * : 02.e : Event Object
  756. * Description : 그리드 셀 클릭시
  757. ****************************************************************************************/
  758. function group3_switch1_case1_grd_safelist_oncellclick(obj:Grid, e:GridClickEventInfo)
  759. {
  760. var cur_row = group3.switch1.case1.grd_safelist.currentrow;
  761. if( cur_row > 0 ){
  762. var chkcol = group3.switch1.case1.grd_safelist.getBindCellIndex("body", "check");
  763. if( e.col == chkcol ) {
  764. if( utlf_isNull(ds_main_list_safe.getColumn(e.row, "acptno")) ){
  765. sysf_messageBox("접수번호가 존재하지 않습니다. \n체크를 해지합니다.");
  766. ds_main_list_safe.setColumn(e.row, "check", "0");
  767. }
  768. }
  769. }
  770. }
  771. function group3_switch1_case1_grd_safelist_onrbuttonup(obj:Grid, e:GridMouseEventInfo)
  772. {
  773. if( e.row > -1 ){
  774. grdf_setSelectedCell(obj, e); // 선택된 행 확실히 선택해줌
  775. pMenu_safelistmenu.trackPopup(e.screenX, e.screenY);
  776. }
  777. return true;
  778. }
  779. function group3_div_search_btn_delt_onclick(obj:Button, e:ClickEventInfo)
  780. {
  781. }
  782. ]]></Script>
  783. </Form>
  784. </FDL>