SMMQZ00200_메뉴얼 및 지침서 색인관리.xfdl 38 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMQZ00200" position="absolute 0 0 1195 775" titletext="간호부 교육자료 게시판" oninit="SMMQZ00200_oninit" onload="SMMQZ00200_onload" ontimer="SMMQZ00200_ontimer">
  5. <Layouts>
  6. <Layout>
  7. <Static text="간호부 교육자료 게시판" position="absolute 0 0 196 25" id="caption6" class="tit_1"/>
  8. <Div position="absolute 0 35 380 95" align="align:center top;" id="group2" class="div_SA">
  9. <Layouts>
  10. <Layout>
  11. <Button position="absolute 300 32 356 54" id="btn_search" class="btn1" taborder="5" text="조회" onclick="group2_btn_search_onclick"/>
  12. <Static text="내용" position="absolute 5 34 79 51" id="caption20" class="search_name"/>
  13. <Edit position="absolute 50 33 285 52" id="ipt_s_term"/>
  14. <Static text="기준" position="absolute 5 9 79 26" id="caption2" class="search_name"/>
  15. <Combo position="absolute 50 8 160 27" id="cmb_period" codecolumn="cdid" datacolumn="cdnm" innerdataset="@ds_init_codeinfo_codelist" enable="false"/>
  16. </Layout>
  17. </Layouts>
  18. </Div>
  19. <Grid position="absolute 0 100 380 770" treeusecheckbox="false" autofit="col" id="trv_work" oncelldblclick="trv_work_oncelldblclick" binddataset="ds_main_guideinfo_guidelist" class="datagrid2" autofittype="col" onrbuttonup="trv_work_onrbuttonup" onrbuttondown="trv_work_onrbuttondown">
  20. <Formats>
  21. <Format id="default">
  22. <Columns>
  23. <Column size="359"/>
  24. </Columns>
  25. <Rows>
  26. <Row size="17"/>
  27. </Rows>
  28. <Band id="body">
  29. <Cell displaytype="tree" edittype="tree" style="align:left;line:1 none #808080ff ;" text="bind:setnm" treestartlevel="1" treelevel="bind:depth"/>
  30. </Band>
  31. </Format>
  32. </Formats>
  33. </Grid>
  34. <Div position="absolute 15 575 233 630" id="group1" visible="false" style="background:#99ccffff;border:1 solid #3366ffff ;">
  35. <Layouts>
  36. <Layout>
  37. <Static text="폴더명" position="absolute 5 5 46 25" align="align:center middle;" id="caption4" style="font:Dotum,9,bold;"/>
  38. <Edit position="absolute 55 5 209 24" id="ipt_setnm" class="input_default" autoselect="true"/>
  39. <Button position="absolute 122 28 164 47" id="btn_cnfm" class="btn2" text="확인" onclick="group1_btn_cnfm_onclick"/>
  40. <Button position="absolute 166 28 208 47" id="button3" class="btn2" text="취소" onclick="group1_button3_onclick"/>
  41. </Layout>
  42. </Layouts>
  43. </Div>
  44. <Shape position="absolute 385 35 1190 770" id="rectangle1" type="rectangle"/>
  45. <Div position="absolute 385 5 1190 770" id="grp_guidedetl" visible="false">
  46. <Layouts>
  47. <Layout>
  48. <Shape position="absolute 0 30 805 65" id="rectangle2" type="rectangle" style="fillbrush:solid #88bbffff true;border:1 solid black ;"/>
  49. <ActiveX position="absolute 0 65 805 765" id="pHwpCtrl" progid="{bd9c32de-3155-4691-8972-097d53b10052}" visible="false"/>
  50. <Edit readonly="true" position="absolute 31 38 616 57" id="output1" style="background:stretch 5,5;font:Dotum,10,bold;"/>
  51. <Static text="내용" position="absolute 682 38 802 58" id="caption1" style="font:Dotum,10,bold;" visible="false"/>
  52. <Button position="absolute 660 7 735 26" id="btn_upload" class="btn2" visible="false" text="파일올리기" onclick="grp_guidedetl_btn_upload_onclick"/>
  53. <Button position="absolute 5 7 69 26" id="btn_hwpmenuview" class="btn2" visible="false" text="메뉴보기" onclick="grp_guidedetl_btn_hwpmenuview_onclick"/>
  54. <Button position="absolute 740 5 796 27" id="btn_save" class="btn4" taborder="26" visible="false" text="저장" onclick="grp_guidedetl_btn_save_onclick"/>
  55. <Edit readonly="true" position="absolute 645 38 680 57" align="align:right middle;" id="output2" style="background:stretch 5,5;align:right middle;font:Dotum,10,bold;" visible="false"/>
  56. </Layout>
  57. </Layouts>
  58. </Div>
  59. <PopupMenu id="pMenu_trvmenu3" innerdataset="@ds_hidden_menus_trvmenu3_menu" idcolumn="func" captioncolumn="label" levelcolumn="lev" position="absolute 5 780 110 802" onmenuclick="pMenu_trvmenu3_onmenuclick"/>
  60. <PopupMenu id="pMenu_trvmenu2" innerdataset="@ds_hidden_menus_trvmenu2_menu" idcolumn="func" captioncolumn="label" levelcolumn="lev" position="absolute 120 780 225 862" onmenuclick="pMenu_trvmenu2_onmenuclick"/>
  61. <PopupMenu id="pMenu_trvmenu1" innerdataset="ds_hidden_menus_trvmenu1_menu" idcolumn="func" captioncolumn="label" levelcolumn="lev" position="absolute 235 780 330 842" onmenuclick="pMenu_trvmenu1_onmenuclick"/>
  62. </Layout>
  63. </Layouts>
  64. <Objects>
  65. <Dataset id="ds_send_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  66. <ColumnInfo>
  67. <Column id="gubun" type="STRING" size="256"/>
  68. <Column id="period" type="STRING" size="256" sumtext="주기"/>
  69. <Column id="term" type="STRING" size="256" sumtext="내용"/>
  70. <Column id="cdgrupid" type="STRING" size="256"/>
  71. <Column id="srchdd" type="STRING" size="256"/>
  72. </ColumnInfo>
  73. <Rows>
  74. <Row>
  75. <Col id="gubun">01</Col>
  76. </Row>
  77. </Rows>
  78. </Dataset>
  79. <Dataset id="ds_main_guideinfo_guidelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  80. <ColumnInfo>
  81. <Column id="depth" type="STRING" size="256" sumtext="depth"/>
  82. <Column id="gubun" type="STRING" size="256"/>
  83. <Column id="setno" type="STRING" size="256" sumtext="업무번호"/>
  84. <Column id="supsetno" type="STRING" size="256" sumtext="상위업무번호"/>
  85. <Column id="setnm" type="STRING" size="256" sumtext="업무명"/>
  86. <Column id="period" type="STRING" size="256" sumtext="주기"/>
  87. </ColumnInfo>
  88. </Dataset>
  89. <Dataset id="ds_send_searchdetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  90. <ColumnInfo>
  91. <Column id="gubun" type="STRING" size="256"/>
  92. <Column id="period" type="STRING" size="256" sumtext="주기"/>
  93. <Column id="setno" type="STRING" size="256" sumtext="순번"/>
  94. </ColumnInfo>
  95. <Rows>
  96. <Row/>
  97. </Rows>
  98. </Dataset>
  99. <Dataset id="ds_main_guidedetlinfo_guidedetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  100. <ColumnInfo>
  101. <Column id="gubun" type="STRING" size="256"/>
  102. <Column id="setno" type="STRING" size="256" sumtext="업무번호"/>
  103. <Column id="period" type="STRING" size="256" sumtext="주기"/>
  104. <Column id="conts" type="STRING" size="256" sumtext="내용"/>
  105. </ColumnInfo>
  106. </Dataset>
  107. <Dataset id="ds_send_savefolder" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  108. <ColumnInfo>
  109. <Column id="Column0" type="STRING" size="256"/>
  110. <Column id="setno" type="STRING" size="256" sumtext="set번호"/>
  111. <Column id="supsetno" type="STRING" size="256" sumtext="상위set번호"/>
  112. <Column id="setnm" type="STRING" size="256" sumtext="set명"/>
  113. <Column id="status" type="STRING" size="256" sumtext="처리상태구분"/>
  114. <Column id="depth" type="STRING" size="256" sumtext="depth"/>
  115. <Column id="period" type="STRING" size="256" sumtext="주기"/>
  116. </ColumnInfo>
  117. </Dataset>
  118. <Dataset id="ds_send_savedetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  119. <ColumnInfo>
  120. <Column id="status" type="STRING" size="256" sumtext="처리상태구분"/>
  121. <Column id="gubun" type="STRING" size="256"/>
  122. <Column id="setno" type="STRING" size="256" sumtext="set번호"/>
  123. <Column id="period" type="STRING" size="256" sumtext="주기"/>
  124. <Column id="conts" type="STRING" size="256" sumtext="내용"/>
  125. <Column id="contstxt" type="STRING" size="256" sumtext="내용(텍스트)"/>
  126. </ColumnInfo>
  127. <Rows>
  128. <Row/>
  129. </Rows>
  130. </Dataset>
  131. <Dataset id="ds_main_select" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  132. <ColumnInfo>
  133. <Column id="gubun" type="STRING" size="256"/>
  134. <Column id="setno" type="STRING" size="256"/>
  135. <Column id="supsetno" type="STRING" size="256"/>
  136. <Column id="setnm" type="STRING" size="256"/>
  137. <Column id="status" type="STRING" size="256"/>
  138. <Column id="depth" type="STRING" size="256"/>
  139. <Column id="period" type="STRING" size="256"/>
  140. </ColumnInfo>
  141. <Rows>
  142. <Row/>
  143. </Rows>
  144. </Dataset>
  145. <Dataset id="ds_hidden_menus_trvmenu3_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  146. <ColumnInfo>
  147. <Column id="label" type="STRING" size="256"/>
  148. <Column id="func" type="STRING" size="256"/>
  149. <Column id="lev" type="STRING" size="256"/>
  150. </ColumnInfo>
  151. <Rows>
  152. <Row>
  153. <Col id="label">최상위폴더추가</Col>
  154. <Col id="func">fAddRootFolder2</Col>
  155. <Col id="lev">0</Col>
  156. </Row>
  157. </Rows>
  158. </Dataset>
  159. <Dataset id="ds_hidden_menus_trvmenu2_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  160. <ColumnInfo>
  161. <Column id="label" type="STRING" size="256"/>
  162. <Column id="func" type="STRING" size="256"/>
  163. <Column id="lev" type="STRING" size="256"/>
  164. </ColumnInfo>
  165. <Rows>
  166. <Row>
  167. <Col id="label">최상위폴더추가</Col>
  168. <Col id="func">fAddRootFolder1</Col>
  169. <Col id="lev">0</Col>
  170. </Row>
  171. <Row>
  172. <Col id="label">폴더추가</Col>
  173. <Col id="func">fAddFolder1</Col>
  174. <Col id="lev">0</Col>
  175. </Row>
  176. <Row>
  177. <Col id="label">폴더수정</Col>
  178. <Col id="func">fModFolder1</Col>
  179. <Col id="lev">0</Col>
  180. </Row>
  181. <Row>
  182. <Col id="label">폴더삭제</Col>
  183. <Col id="func">fDelFolder1</Col>
  184. <Col id="lev">0</Col>
  185. </Row>
  186. </Rows>
  187. </Dataset>
  188. <Dataset id="ds_hidden_menus_trvmenu1_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  189. <ColumnInfo>
  190. <Column id="label" type="STRING" size="256"/>
  191. <Column id="func" type="STRING" size="256"/>
  192. <Column id="lev" type="STRING" size="256"/>
  193. </ColumnInfo>
  194. <Rows>
  195. <Row>
  196. <Col id="label">폴더추가</Col>
  197. <Col id="func">fAddFolder1</Col>
  198. <Col id="lev">0</Col>
  199. </Row>
  200. <Row>
  201. <Col id="label">폴더수정</Col>
  202. <Col id="func">fModFolder1</Col>
  203. <Col id="lev">0</Col>
  204. </Row>
  205. <Row>
  206. <Col id="label">폴더삭제</Col>
  207. <Col id="func">fDelFolder1</Col>
  208. <Col id="lev">0</Col>
  209. </Row>
  210. </Rows>
  211. </Dataset>
  212. <Dataset id="ds_init_A0666" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  213. <ColumnInfo>
  214. <Column id="cdid" type="STRING" size="256"/>
  215. <Column id="cdnm" type="STRING" size="256"/>
  216. <Column id="cdval" type="STRING" size="256"/>
  217. </ColumnInfo>
  218. </Dataset>
  219. <Dataset id="ds_init_codeinfo_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  220. <ColumnInfo>
  221. <Column id="cdgrupid" type="STRING" size="256" sumtext="코드그룹ID"/>
  222. <Column id="cdid" type="STRING" size="256" sumtext="코드ID"/>
  223. <Column id="cdnm" type="STRING" size="256" sumtext="코드명"/>
  224. <Column id="grupdetldesc" type="STRING" size="256" sumtext="코드그룹상세설명"/>
  225. <Column id="supcdid" type="STRING" size="256" sumtext="상위코드ID"/>
  226. <Column id="sortseq" type="STRING" size="256" sumtext="상위코드ID"/>
  227. <Column id="valifromdd" type="STRING" size="256" sumtext="시작일자"/>
  228. <Column id="valitodd" type="STRING" size="256" sumtext="시작일자"/>
  229. </ColumnInfo>
  230. </Dataset>
  231. <Dataset id="ds_init_codeinfo_usercodelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  232. <ColumnInfo>
  233. <Column id="cdgrupid" type="STRING" size="256" sumtext="코드그룹ID"/>
  234. <Column id="cdid" type="STRING" size="256" sumtext="코드ID"/>
  235. <Column id="cdnm" type="STRING" size="256" sumtext="코드명"/>
  236. <Column id="grupdetldesc" type="STRING" size="256" sumtext="코드그룹상세설명"/>
  237. <Column id="supcdid" type="STRING" size="256" sumtext="상위코드ID"/>
  238. <Column id="sortseq" type="STRING" size="256" sumtext="상위코드ID"/>
  239. <Column id="valifromdd" type="STRING" size="256" sumtext="시작일자"/>
  240. <Column id="valitodd" type="STRING" size="256" sumtext="시작일자"/>
  241. </ColumnInfo>
  242. </Dataset>
  243. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  244. </Objects>
  245. <Bind>
  246. <BindItem id="item0" compid="group2.cmb_period" propid="value" datasetid="ds_send_search" columnid="period"/>
  247. <BindItem id="item1" compid="group2.ipt_s_term" propid="value" datasetid="ds_send_search" columnid="term"/>
  248. <BindItem id="item2" compid="grp_guidedetl.output1" propid="value" datasetid="ds_main_select" columnid="setnm"/>
  249. <BindItem id="item3" compid="grp_guidedetl.output2" propid="value" datasetid="ds_main_select" columnid="period"/>
  250. <BindItem id="item4" compid="group1.ipt_setnm" propid="value" datasetid="ds_main_select" columnid="setnm"/>
  251. </Bind>
  252. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  253. * System Name : 경대 의료정보시스템
  254. * Job Name : emr_qixp -> SMMQZ00200
  255. * Creator : yjh
  256. * Make Date : 2016-12-16
  257. * Description :
  258. *---------------------------------------------------------------------------------------
  259. * Modify Date Modifier Modify Description
  260. *---------------------------------------------------------------------------------------
  261. * 2016-12-16 yjh TF->XP
  262. *
  263. *---------------------------------------------------------------------------------------
  264. ****************************************************************************************/
  265. //=======================================================================================
  266. // Lib Include
  267. //---------------------------------------------------------------------------------------
  268. include "com_commonxp::comm_main.xjs";
  269. //=======================================================================================
  270. // Global Form Variable
  271. //---------------------------------------------------------------------------------------
  272. var sLIST_PATH = ds_main_guideinfo_guidelist;
  273. var sSELECT_PATH = ds_main_select;
  274. var status = "";
  275. var hwpmenuviewflag = "N";
  276. var fv_clientY = 0;
  277. var vGubun = "01";
  278. var arErrorCode = new HashArray();
  279. //=======================================================================================
  280. // Function
  281. //---------------------------------------------------------------------------------------
  282. function fIsAdmin(){
  283. /*
  284. var menuparm = frmf_getMenuParam();
  285. if(!utlf_isNull(menuparm) && menuparm == "Y"){
  286. return true;
  287. }else{
  288. return false;
  289. }
  290. */
  291. var jobposcd = sysf_getUserInfo("jobposcd");
  292. var jobkindcd = sysf_getUserInfo("jobkindcd");
  293. var userId = sysf_getUserInfo("userid");
  294. dsf_makeValue(ds_send_reqdata,"cdgrupid", "string", "'N05'");
  295. dsf_makeValue(ds_send_reqdata,"srchdd", "string", utlf_getCurrentDate());
  296. var oParam = {};
  297. oParam.id = "TRMNW00001";
  298. oParam.service = "wardcareapp.WardCareMngt";
  299. oParam.method = "reqGetNursHardCdInfo";
  300. oParam.inds = "req=ds_send_reqdata";
  301. oParam.outds = "ds_init_codeinfo_usercodelist=codelist";
  302. oParam.async = false;
  303. tranf_submit(oParam);
  304. ds_init_codeinfo_usercodelist.filter("cdid == '"+userId+"'");
  305. //var sUserid = model.getValue("/root/init/codeinfo/codelist[cdgrupid = 'N05' and cdid = '4']/cdnm");
  306. var adminID = ds_init_codeinfo_usercodelist.rowcount;
  307. ds_init_codeinfo_usercodelist.filter("");
  308. //if (sysf_getUserInfo("userid") == "ENR" || (jobkindcd == "1140" && (jobposcd == "41" || jobposcd == "62" || jobposcd == "75" || jobposcd == "84"))) {
  309. if(userId == "ENR" || adminID > 0) {
  310. return true;
  311. }else{
  312. return false;
  313. }
  314. //return false;
  315. }
  316. function fSearch(){
  317. var oParam = {};
  318. oParam.id = "TRMQZ00101";
  319. oParam.service = "qiapp.QIGuideMngt";
  320. oParam.method = "reqGetNursManualGuideList";
  321. oParam.inds = "req=ds_send_search";
  322. oParam.outds = "ds_main_guideinfo_guidelist=guidelist";
  323. oParam.async = false;
  324. //oParam.callback = "cf_TRMQZ00101";
  325. tranf_submit(oParam);
  326. ds_main_guideinfo_guidelist.rowposition = -1;
  327. grdf_expandDepth(trv_work, 1, "setnm");
  328. }
  329. /**
  330. * @desc : 마우스 오른쪽 버튼 팝업창
  331. * @
  332. * @param :
  333. * @return :
  334. * @---------------------------------------------------
  335. */
  336. function fMouseRghtBtnPopup(e){
  337. var rowpos = trv_work.currentrow;
  338. var length = sLIST_PATH.rowcount;
  339. fv_clientY = system.screenToClientY(this, e.screenY+20);
  340. if(length==0){
  341. pMenu_trvmenu3.trackPopup(e.screenX, e.screenY); //group1
  342. }else if(ds_main_guideinfo_guidelist.getColumn(ds_main_guideinfo_guidelist.rowposition, "depth") == 1){
  343. pMenu_trvmenu2.trackPopup(e.screenX, e.screenY); //trv_work
  344. }else if(ds_main_guideinfo_guidelist.getColumn(ds_main_guideinfo_guidelist.rowposition, "depth") <= 4){
  345. pMenu_trvmenu1.trackPopup(e.screenX, e.screenY); //trv_work
  346. }
  347. }
  348. function fSelect(){
  349. var item = trv_work.item(trv_work.selectedIndex);
  350. if(item == null){
  351. messageBox("항목을 ","C002");
  352. return;
  353. }
  354. if(item.depth<3){
  355. return;
  356. }
  357. /*
  358. model.setValue("/root/send/resultdata/setno",item.value);
  359. if(submit("TRZHA20302")){
  360. opener.javascript.setParameter("SPZHA20301_PARM_setno1",model.getValue("/root/main/selectedworkinfo/selectedworklist/setno1"));
  361. opener.javascript.setParameter("SPZHA20301_PARM_setno2",model.getValue("/root/main/selectedworkinfo/selectedworklist/setno2"));
  362. opener.javascript.setParameter("SPZHA20301_PARM_setno3",model.getValue("/root/main/selectedworkinfo/selectedworklist/setno3"));
  363. opener.javascript.setParameter("SPZHA20301_PARM_setnm1",model.getValue("/root/main/selectedworkinfo/selectedworklist/setnm1"));
  364. opener.javascript.setParameter("SPZHA20301_PARM_setnm2",model.getValue("/root/main/selectedworkinfo/selectedworklist/setnm2"));
  365. opener.javascript.setParameter("SPZHA20301_PARM_setnm3",model.getValue("/root/main/selectedworkinfo/selectedworklist/setnm3"));
  366. window.close();
  367. }
  368. */
  369. }
  370. function fAddRootFolder1(){
  371. var item = trv_work.currentrow;
  372. if(item < 0){return;}
  373. var currow = item;
  374. ds_main_select.setColumn(0, "setnm", "");
  375. group1.caption4.text="폴더명";
  376. if(fSetSelectedInfo(currow, "i",true)!=-1){
  377. fShowWndIptBox();
  378. }
  379. }
  380. function fAddRootFolder2(){
  381. var period = ds_send_search.getColumn(0, "period");
  382. sSELECT_PATH.setColumn(0, "gubun", vGubun);
  383. sSELECT_PATH.setColumn(0, "period", period);
  384. sSELECT_PATH.setColumn(0, "status", "i");
  385. fShowWndIptBox();
  386. }
  387. function fAddFolder1(){
  388. var item = trv_work.currentrow;
  389. if(item <0){return;}
  390. var currow = item;
  391. ds_main_select.setColumn(0, "setnm", "");
  392. ds_main_select.setColumn(0, "gubun", "01");
  393. group1.caption4.text="폴더명";
  394. if(fSetSelectedInfo(sLIST_PATH.rowposition, "i")!=-1){
  395. fShowWndIptBox();
  396. }
  397. }
  398. function fModFolder1(){
  399. var item = trv_work.currentrow;
  400. if(item < 0){return;}
  401. var currow = item;
  402. ds_main_select.setColumn(0, "gubun", vGubun);
  403. ds_main_select.setColumn(0, "setnm", sLIST_PATH.getColumn(sLIST_PATH.rowposition, "setnm"));
  404. group1.caption4.text="폴더명";
  405. if(fSetSelectedInfo(sLIST_PATH.rowposition, "u")!=-1){
  406. fShowWndIptBox();
  407. }
  408. }
  409. function fDelFolder1(){
  410. var item = trv_work.currentrow;
  411. if(item < 0){return;}
  412. var currow = item;
  413. sSELECT_PATH.setColumn(0, "gubun", vGubun);
  414. if(fSetSelectedInfo(sLIST_PATH.rowposition, "d")!=-1){
  415. fSaveFolder();
  416. }
  417. sLIST_PATH.rowposition = -1;
  418. }
  419. function fSetSelectedInfo(rowpos, status, rootflag){
  420. var setnm = sLIST_PATH.getColumn(rowpos, "setnm");
  421. if(status != "i" && status != "u" && status != "d") return -1;
  422. if(status == "d"){
  423. var rtnval = sysf_messageBox("[" + setnm + "]하위의 모든 업무가 지워집니다.\n" + "[" + setnm + "]업무를", "Q001");
  424. if(rtnval == 7){
  425. return -1;
  426. }
  427. }
  428. var depth = sLIST_PATH.getColumn(rowpos, "depth");
  429. var supsetno = sLIST_PATH.getColumn(rowpos, "supsetno");
  430. var setno = sLIST_PATH.getColumn(rowpos, "setno");
  431. var period = sLIST_PATH.getColumn(rowpos, "period");
  432. sSELECT_PATH.setColumn(0, "depth",depth);
  433. sSELECT_PATH.setColumn(0, "setno",setno);
  434. sSELECT_PATH.setColumn(0, "status", status);
  435. sSELECT_PATH.setColumn(0, "period", period);
  436. if(rootflag == true){
  437. sSELECT_PATH.setColumn(0, "supsetno",null);
  438. }else if(status == "i"){
  439. sSELECT_PATH.setColumn(0, "supsetno",setno);
  440. }else{
  441. sSELECT_PATH.setColumn(0, "supsetno",supsetno);
  442. }
  443. }
  444. function fClkBtnCnfm(){
  445. group1.position.height = 0;
  446. trv_work.setFocus();
  447. var indx = trv_work.currentrow;
  448. fSaveFolder();
  449. if(indx < 0){
  450. }else{
  451. var currow = indx;
  452. ds_main_guideinfo_guidelist.selectRow(currow);
  453. trv_work.setTreeStatus(indx, 1);
  454. }
  455. }
  456. function fSaveFolder(){
  457. var nRowPos = trv_work.vscrollbar.pos;
  458. ds_send_savefolder.copyData(sSELECT_PATH);
  459. var oParam = {};
  460. oParam.id = "TXMQZ00101";
  461. oParam.service = "qiapp.QIGuideMngt";
  462. oParam.method = "reqSetNursManualGuideList";
  463. oParam.inds = "req=ds_send_savefolder";
  464. oParam.outds = "ds_main_guideinfo_guidelist=guidelist";
  465. oParam.async = false;
  466. //oParam.callback = "cf_TXMQZ00101";
  467. tranf_submit(oParam);
  468. grdf_expandDepth(trv_work, 1, "setnm");
  469. trv_work.vscrollbar.pos = nRowPos;
  470. }
  471. function fShowWndIptBox(){
  472. if(fv_clientY >= 700){
  473. var ypos = 700;
  474. }else{
  475. var ypos = fv_clientY;
  476. }
  477. group1.position.top = ypos;
  478. group1.position.height = 55;
  479. group1.ipt_setnm.setFocus();
  480. }
  481. function fSearchDetl(period, setno){
  482. if(typeof(grp_guidedetl.pHwpCtrl) == undefined){
  483. sysf_messageBox("한글이 설치되지 않았습니다.\n설치 후 진행 ","I006");
  484. return;
  485. }
  486. ds_send_searchdetl.setColumn(0, "gubun",vGubun);
  487. ds_send_searchdetl.setColumn(0, "setno",setno);
  488. ds_send_searchdetl.setColumn(0, "period",period);
  489. var oParam = {};
  490. oParam.id = "TRMQZ00102";
  491. oParam.service = "qiapp.QIGuideMngt";
  492. oParam.method = "reqGetNursManualGuideListDetl";
  493. oParam.inds = "req=ds_send_searchdetl";
  494. oParam.outds = "ds_main_guidedetlinfo_guidedetl=guidedetl";
  495. oParam.async = false;
  496. //oParam.callback = "cf_TRMQZ00102";
  497. tranf_submit(oParam);
  498. var length = ds_main_guidedetlinfo_guidedetl.rowcount;
  499. if(length > 0){
  500. status = "u";
  501. grp_guidedetl.pHwpCtrl.SetTextFile(ds_main_guidedetlinfo_guidedetl.getColumn(0, "conts"),"HWPML2X","");
  502. grp_guidedetl.pHwpCtrl.MovePos(2, null, 1);//(2:문서의 시작 27:캐럿의위치)로 이동
  503. }else if(length==0){
  504. status = "i";
  505. //grp_guidedetl.pHwpCtrl.SetTextFile("","HWPML2X","");
  506. grp_guidedetl.pHwpCtrl.Clear(1);
  507. }
  508. }
  509. function fSaveDetl(){
  510. var period = ds_send_searchdetl.getColumn(0, "period");
  511. var setno = ds_send_searchdetl.getColumn(0, "setno");
  512. ds_send_savedetl.setColumn(0, "gubun",vGubun);
  513. ds_send_savedetl.setColumn(0, "period",period);
  514. ds_send_savedetl.setColumn(0, "setno",setno);
  515. ds_send_savedetl.setColumn(0, "conts",grp_guidedetl.pHwpCtrl.GetTextFile("HWPML2X", ""));
  516. ds_send_savedetl.setColumn(0, "contstxt",grp_guidedetl.pHwpCtrl.GetTextFile("TEXT", ""));
  517. ds_send_savedetl.setColumn(0, "status",status);
  518. var oParam = {};
  519. oParam.id = "TXMQZ00102";
  520. oParam.service = "qiapp.QIGuideMngt";
  521. oParam.method = "reqSetNursManualGuideListDetl";
  522. oParam.inds = "req=ds_send_savedetl";
  523. oParam.outds = "";
  524. oParam.async = false;
  525. oParam.callback = "cf_TXMQZ00102";
  526. tranf_submit(oParam);
  527. if(arErrorCode.pop("TXMQZ00102") > -1){
  528. //sysf_messageBox("저장을","E009");
  529. sysf_messageBox("저장이", "I002");
  530. }else{
  531. sysf_messageBox("저장을","E009");
  532. return false;
  533. }
  534. }
  535. function cf_TXMQZ00102(sSvcId, nErrorCode, sErrorMsg) {
  536. arErrorCode.push(sSvcId, nErrorCode);
  537. }
  538. function fFileAdd() {
  539. //파일 저장
  540. //파일을 받아오기 위해 파일열기 팝업창을 띄운다.
  541. // var name = window.fileDialog("open","|","false","","","한글파일(*.hwp)|*.hwp");
  542. //
  543. // pHwpCtrl.Open(name,"HWP","template:true");
  544. //model.makeValue("/root/send/save/attach/file", name);
  545. var fd = new FileDialog;
  546. var objVFileList = fd.open("FileOpen", FileDialog.SINGLELOAD); // 여러파일 선택 MULTILOAD
  547. if( utlf_isNull(objVFileList) || objVFileList.fullpath.indexOf(".hwp") < 0 ){
  548. alert("한글파일만 선택하세요.");
  549. }else{
  550. grp_guidedetl.pHwpCtrl.Open(objVFileList.fullpath,"HWP","template:true");
  551. }
  552. }
  553. //=======================================================================================
  554. // Event
  555. //---------------------------------------------------------------------------------------
  556. /****************************************************************************************
  557. * Components : Form
  558. * Components ID : SMMQZ00200
  559. * Event : oninit
  560. * Argument : 01.obj : Object Event has occurred
  561. * : 02.e : Event Object
  562. * Description : 화면 처음 초기화시
  563. ****************************************************************************************/
  564. function SMMQZ00200_oninit(obj:Form, e:InitEventInfo)
  565. {
  566. frmf_initForm(obj); //폼 초기화
  567. }
  568. /****************************************************************************************
  569. * Components : Form
  570. * Components ID : SMMQZ00200
  571. * Event : onload
  572. * Argument : 01.obj : Object Event has occurred
  573. * : 02.e : Event Object
  574. * Description : 화면 로딩 완료시
  575. ****************************************************************************************/
  576. function SMMQZ00200_onload(obj:Form, e:LoadEventInfo)
  577. {
  578. /*
  579. var arrParam = [
  580. {dsNm: "ds_init_A0666", cdGrpId: "A0666", sortField: "dispseq", sortMehotd: "desc"}
  581. ];
  582. appf_getCodeList(arrParam, false);
  583. var idx;
  584. for(var i=0; i<ds_init_A0666.rowcount; i++){
  585. if("1" == ds_init_A0666.getColumn(i, "cdval")){
  586. idx = i;
  587. break;
  588. }
  589. }
  590. if(!fIsAdmin()){
  591. ds_init_A0666.filter("cdval == '1'");
  592. }
  593. */
  594. //ds_send_search.setColumn(0, "cdgrupid", "'Q03', 'I06', 'I07','I13'");
  595. ds_send_search.setColumn(0, "cdgrupid", "'Q03'");
  596. ds_send_search.setColumn(0, "srchdd" , utlf_getCurrentDate()); // 조회기준일자
  597. var oParam = {};
  598. oParam.id = "TRMNW00001";
  599. oParam.service = "wardcareapp.WardCareMngt";
  600. oParam.method = "reqGetNursHardCdInfo";
  601. oParam.inds = "req=ds_send_search";
  602. oParam.outds = "ds_init_codeinfo_codelist=codelist";
  603. oParam.async = false;
  604. //oParam.callback = "cf_TRMNW00001";
  605. tranf_submit(oParam);
  606. group2.cmb_period.index = 0;
  607. // ds_send_search.setColumn(0, "period", );
  608. if(fIsAdmin()){
  609. //grp_guidedetl.visible = true;
  610. grp_guidedetl.btn_hwpmenuview.visible = true;
  611. grp_guidedetl.btn_save.visible = true;
  612. grp_guidedetl.btn_upload.visible = true;
  613. }
  614. group1.position.height = 0;
  615. group1.visible = true;
  616. /* hwp 세팅 */
  617. grp_guidedetl.pHwpCtrl.SetToolBar(-1, "TOOLBAR_MENU");
  618. grp_guidedetl.pHwpCtrl.SetToolBar(-1, "TOOLBAR_STANDARD");
  619. grp_guidedetl.pHwpCtrl.SetToolBar(-1, "TOOLBAR_FORMAT");
  620. grp_guidedetl.pHwpCtrl.SetToolBar(-1, "TOOLBAR_DRAW");
  621. grp_guidedetl.pHwpCtrl.SetToolBar(-1, "-TOOLBAR_TABLE");
  622. grp_guidedetl.pHwpCtrl.SetToolBar(-1, "-TOOLBAR_IMAGE");
  623. //pHwpCtrl.SetToolBar(-1, "-TOOLBAR_HEADERFOOTER");
  624. //pHwpCtrl.SetToolBar(0, "FilePreview, Print, Separator, Undo, Redo, Separator, Cut, Copy, Paste,"+"Separator, ParaNumberBullet, MultiColumn, SpellingCheck, HwpDic, Separator, PictureInsertDialog, MacroPlay1");
  625. //pHwpCtrl.SetToolBar(0, "Print, Separator, Undo, Redo, Separator, Cut, Copy, Paste,"+"Separator, ParaNumberBullet, MultiColumn, SpellingCheck, HwpDic, Separator, PictureInsertDialog, MacroPlay1");
  626. var dact = grp_guidedetl.pHwpCtrl.CreateAction("CharShape");
  627. var dset = dact.CreateSet();
  628. dact.GetDefault(dset);
  629. //dset.SetItem("Height", 1300);
  630. dset.SetItem("FaceNameHangul", "굴림");
  631. dset.SetItem("FaceNameLatin", "굴림");
  632. dset.SetItem("FaceNameHanja", "굴림");
  633. dset.SetItem("FaceNameJapanese", "굴림");
  634. dset.SetItem("FaceNameOther", "굴림");
  635. dset.SetItem("FaceNameSymbol", "굴림");
  636. dset.SetItem("FaceNameUser", "굴림");
  637. //dset.SetItem("TextColor", 0xFF0000); // 글자 색을 파란색으로
  638. dact.Execute(dset); // 액션 실행
  639. //group2.btn_search.click();
  640. this.setTimer(0, 100);
  641. }
  642. /****************************************************************************************
  643. * Components : Button
  644. * Components ID : btn_search
  645. * Event : onclick
  646. * Argument : 01.obj : Object Event has occurred
  647. * : 02.e : Event Object
  648. * Description : 조회버튼 클릭시
  649. ****************************************************************************************/
  650. function group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
  651. {
  652. fSearch();
  653. }
  654. /****************************************************************************************
  655. * Components : Grid
  656. * Components ID : trv_work
  657. * Event : onrbuttonup
  658. * Argument : 01.obj : Object Event has occurred
  659. * : 02.e : Event Object
  660. * Description : 마우스 우클릭시
  661. ****************************************************************************************/
  662. function trv_work_onrbuttonup(obj:Grid, e:GridMouseEventInfo)
  663. {
  664. if(!fIsAdmin()) return;
  665. if(obj.name != "trv_work") return;
  666. /*
  667. if( e.row > -1 && e.col > -1 ){
  668. grdf_setSelectedCell(obj, e);
  669. trace(obj.getEditText());
  670. if(obj.getEditText() == undefined){
  671. fMouseRghtBtnPopup(e);
  672. }
  673. }
  674. */
  675. fMouseRghtBtnPopup(e);
  676. }
  677. /****************************************************************************************
  678. * Components : Grid
  679. * Components ID : trv_work
  680. * Event : oncelldblclick
  681. * Argument : 01.obj : Object Event has occurred
  682. * : 02.e : Event Object
  683. * Description : 그리드 셀 더블클릭시
  684. ****************************************************************************************/
  685. function trv_work_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  686. {
  687. var item = ds_main_guideinfo_guidelist.rowposition;
  688. if(item < 0){return;}
  689. var currow = item;
  690. var depth = sLIST_PATH.getColumn(currow, "depth");
  691. //trace("depth :" + depth);
  692. if(depth <3){
  693. currow = trv_work.currentrow;
  694. grp_guidedetl.pHwpCtrl.visible = false;
  695. grp_guidedetl.visible = false;
  696. if( trv_work.getTreeStatus(currow) == 1 ){
  697. trv_work.setTreeStatus(currow, 0);
  698. }else{
  699. trv_work.setTreeStatus(currow, 1);
  700. }
  701. return;
  702. }else{
  703. grp_guidedetl.pHwpCtrl.visible = true;
  704. grp_guidedetl.visible = true;
  705. }
  706. var period = sLIST_PATH.getColumn(currow, "period");
  707. var setno = sLIST_PATH.getColumn(currow, "setno");
  708. var setnm = sLIST_PATH.getColumn(currow, "setnm");
  709. ds_main_select.setColumn(0, "setno",setno);
  710. ds_main_select.setColumn(0, "period",period);
  711. ds_main_select.setColumn(0, "setnm",setnm);
  712. fSearchDetl(period, setno);
  713. }
  714. /****************************************************************************************
  715. * Components : Button
  716. * Components ID : btn_cnfm
  717. * Event : onclick
  718. * Argument : 01.obj : Object Event has occurred
  719. * : 02.e : Event Object
  720. * Description : 확인버튼 클릭시
  721. ****************************************************************************************/
  722. function group1_btn_cnfm_onclick(obj:Button, e:ClickEventInfo)
  723. {
  724. fClkBtnCnfm();
  725. }
  726. /****************************************************************************************
  727. * Components : Button
  728. * Components ID : button3
  729. * Event : onclick
  730. * Argument : 01.obj : Object Event has occurred
  731. * : 02.e : Event Object
  732. * Description : 취소버튼 클릭시
  733. ****************************************************************************************/
  734. function group1_button3_onclick(obj:Button, e:ClickEventInfo)
  735. {
  736. group1.position.height = 0;
  737. }
  738. /****************************************************************************************
  739. * Components : Button
  740. * Components ID : btn_upload
  741. * Event : onclick
  742. * Argument : 01.obj : Object Event has occurred
  743. * : 02.e : Event Object
  744. * Description : 파일올리기버튼 클릭시
  745. ****************************************************************************************/
  746. function grp_guidedetl_btn_upload_onclick(obj:Button, e:ClickEventInfo)
  747. {
  748. fFileAdd();
  749. }
  750. /****************************************************************************************
  751. * Components : Button
  752. * Components ID : btn_hwpmenuview
  753. * Event : onclick
  754. * Argument : 01.obj : Object Event has occurred
  755. * : 02.e : Event Object
  756. * Description : 메뉴보기버튼 클릭시
  757. ****************************************************************************************/
  758. function grp_guidedetl_btn_hwpmenuview_onclick(obj:Button, e:ClickEventInfo)
  759. {
  760. trace("hwpmenuviewflag: " + hwpmenuviewflag);
  761. if(hwpmenuviewflag == "N"){
  762. hwpmenuviewflag = "Y";
  763. grp_guidedetl.btn_hwpmenuview.text = "메뉴숨김";
  764. grp_guidedetl.pHwpCtrl.ShowToolBar(true);
  765. //grp_guidedetl.pHwpCtrl;
  766. grp_guidedetl.pHwpCtrl.ShowStatusBar(1);
  767. }else{
  768. hwpmenuviewflag = "N";
  769. grp_guidedetl.btn_hwpmenuview.text = "메뉴보기";
  770. grp_guidedetl.pHwpCtrl.ShowToolBar(false);
  771. grp_guidedetl.pHwpCtrl.ShowStatusBar(0);
  772. }
  773. }
  774. /****************************************************************************************
  775. * Components : Button
  776. * Components ID : btn_save
  777. * Event : onclick
  778. * Argument : 01.obj : Object Event has occurred
  779. * : 02.e : Event Object
  780. * Description : 저장버튼 클릭시
  781. ****************************************************************************************/
  782. function grp_guidedetl_btn_save_onclick(obj:Button, e:ClickEventInfo)
  783. {
  784. fSaveDetl();
  785. }
  786. /****************************************************************************************
  787. * Components : PopupMenu
  788. * Components ID : pMenu_trvmenu3
  789. * Event : onmenuclick
  790. * Argument : 01.obj : Object Event has occurred
  791. * : 02.e : Event Object
  792. * Description : 팝업메뉴 클릭시
  793. ****************************************************************************************/
  794. function pMenu_trvmenu3_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  795. {
  796. switch( e.id ){
  797. case "fAddRootFolder2" :
  798. fAddRootFolder2();
  799. break;
  800. default :
  801. break;
  802. }
  803. }
  804. /****************************************************************************************
  805. * Components : PopupMenu
  806. * Components ID : pMenu_trvmenu2
  807. * Event : onmenuclick
  808. * Argument : 01.obj : Object Event has occurred
  809. * : 02.e : Event Object
  810. * Description : 팝업메뉴 클릭시
  811. ****************************************************************************************/
  812. function pMenu_trvmenu2_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  813. {
  814. switch( e.id ){
  815. case "fAddRootFolder1" :
  816. fAddRootFolder1();
  817. break;
  818. case "fAddFolder1" :
  819. fAddFolder1();
  820. break;
  821. case "fModFolder1" :
  822. fModFolder1();
  823. break;
  824. case "fDelFolder1" :
  825. fDelFolder1();
  826. break;
  827. default :
  828. break;
  829. }
  830. }
  831. /****************************************************************************************
  832. * Components : PopupMenu
  833. * Components ID : pMenu_trvmenu1
  834. * Event : onmenuclick
  835. * Argument : 01.obj : Object Event has occurred
  836. * : 02.e : Event Object
  837. * Description : 팝업메뉴 클릭시
  838. ****************************************************************************************/
  839. function pMenu_trvmenu1_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  840. {
  841. switch( e.id ){
  842. case "fAddFolder1" :
  843. fAddFolder1();
  844. break;
  845. case "fModFolder1" :
  846. fModFolder1();
  847. break;
  848. case "fDelFolder1" :
  849. fDelFolder1();
  850. break;
  851. default :
  852. break;
  853. }
  854. }
  855. function SMMQZ00200_ontimer(obj:Form, e:TimerEventInfo)
  856. {
  857. if( e.timerid == 0 ){
  858. this.killTimer(0);
  859. group2.btn_search.click();
  860. }
  861. }
  862. function trv_work_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  863. {
  864. if(!fIsAdmin()) return;
  865. if(obj.name != "trv_work") return;
  866. if( e.row > -1 && e.col > -1 ){
  867. grdf_setSelectedCell(obj, e);
  868. // if(obj.getEditText() == undefined){
  869. // fMouseRghtBtnPopup(e);
  870. // }
  871. }
  872. }
  873. ]]></Script>
  874. </Form>
  875. </FDL>