SMZHA30000_회의록관리.xfdl 54 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMZHA30000" position="absolute 0 0 1225 780" titletext="회의록관리" oninit="SMZHA30000_oninit" onload="SMZHA30000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Grid position="absolute 0 105 1225 778" id="grd_conflist" binddataset="ds_main_confinfo" autofittype="col" oncelldblclick="grd_conflist_oncelldblclick">
  8. <Formats>
  9. <Format id="default">
  10. <Columns>
  11. <Column size="72"/>
  12. <Column size="41"/>
  13. <Column size="124"/>
  14. <Column size="210"/>
  15. <Column size="408"/>
  16. <Column size="56"/>
  17. <Column size="56"/>
  18. <Column size="139"/>
  19. <Column size="53"/>
  20. </Columns>
  21. <Rows>
  22. <Row size="24" band="head"/>
  23. <Row size="24"/>
  24. </Rows>
  25. <Band id="head">
  26. <Cell text="일자"/>
  27. <Cell col="1" colspan="2" text="주관부서" taborder="undefined" suppress="0"/>
  28. <Cell col="3" text="제목"/>
  29. <Cell col="4" text="참석자"/>
  30. <Cell col="5" text="시작시간"/>
  31. <Cell col="6" text="종료시간"/>
  32. <Cell col="7" text="장소"/>
  33. <Cell col="8" text="주관자"/>
  34. </Band>
  35. <Band id="body">
  36. <Cell text="bind:confdd"/>
  37. <Cell col="1" displaytype="combo" edittype="combo" style="align:center;" text="bind:confinstcd" combodataset="ds_init_instinfo_instlist" combocodecol="value" combodatacol="label"/>
  38. <Cell col="2" text="bind:confdeptnm"/>
  39. <Cell col="3" text="bind:title"/>
  40. <Cell col="4" text="bind:confattendernm"/>
  41. <Cell col="5" displaytype="date" text="bind:starttm" mask="HH:mm"/>
  42. <Cell col="6" displaytype="date" text="bind:endtm" mask="HH:mm"/>
  43. <Cell col="7" text="bind:plce"/>
  44. <Cell col="8" text="bind:confusernm"/>
  45. </Band>
  46. </Format>
  47. </Formats>
  48. </Grid>
  49. <Div position="absolute 0 25 1225 85" align="align:center top;" id="group2" class="div_SA">
  50. <Layouts>
  51. <Layout>
  52. <Button position="absolute 1149 18 1205 38" id="button5" class="btn1" taborder="5" text="조회" anchor="default" onclick="group2_button5_onclick"/>
  53. <Static text="제목/내용" position="absolute 15 34 124 54" id="caption20" class="search_name" anchor="default"/>
  54. <Calendar position="absolute 640 8 740 28" id="ipt_s_fromdd" taborder="4" anchor="default"/>
  55. <Static text="일자" position="absolute 583 8 683 28" id="caption22" class="search_name" anchor="default"/>
  56. <Calendar position="absolute 755 8 855 28" id="ipt_s_todd" taborder="4" anchor="default"/>
  57. <Static text="~" position="absolute 743 8 758 28" id="caption26" anchor="default"/>
  58. <Static text="기관/부서" position="absolute 15 8 115 28" id="cpt_dept" class="search_name" anchor="default"/>
  59. <Combo position="absolute 105 8 170 28" id="cmb_s_instcd" taborder="3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  60. <Dataset id="innerdataset">
  61. <ColumnInfo>
  62. <Column id="codecolumn"/>
  63. <Column id="datacolumn"/>
  64. </ColumnInfo>
  65. <Rows>
  66. <Row>
  67. <Col id="codecolumn">
  68. </Col>
  69. <Col id="datacolumn">전체</Col>
  70. </Row>
  71. <Row>
  72. <Col id="codecolumn">031</Col>
  73. <Col id="datacolumn">본원</Col>
  74. </Row>
  75. <Row>
  76. <Col id="codecolumn">032</Col>
  77. <Col id="datacolumn">칠곡</Col>
  78. </Row>
  79. </Rows>
  80. </Dataset>
  81. </Combo>
  82. <Button position="absolute 268 7 288 27" id="btn_s_deptcd" class="icon_search" text="" anchor="default" onclick="group2_btn_s_deptcd_onclick"/>
  83. <CheckBox position="absolute 453 8 553 28" id="chk_s_subdeptyn" enable="false" anchor="default" text="하위부서포함"/>
  84. <Edit position="absolute 287 8 450 28" id="ipt_s_deptnm" enable="false" anchor="default"/>
  85. <Edit position="absolute 172 8 267 28" id="ipt_s_deptcd" enable="false" taborder="2" anchor="default"/>
  86. <Edit position="absolute 105 34 450 54" id="ipt_s_term" anchor="default"/>
  87. </Layout>
  88. </Layouts>
  89. </Div>
  90. <Static text="회의록 관리" position="absolute 0 0 144 25" id="caption6" class="tit_1"/>
  91. <Button position="absolute 1111 4 1167 24" id="btn_del" class="btn4" enable="false" text="삭제" onclick="btn_del_onclick"/>
  92. <Button position="absolute 1053 4 1109 24" id="btn_new" class="btn4" text="신규" onclick="btn_new_onclick"/>
  93. <Button position="absolute 1169 4 1225 24" id="btn_save" class="btn4" enable="false" taborder="26" text="저장" onclick="btn_save_onclick"/>
  94. <Button position="absolute 995 4 1051 24" id="btn_print" class="btn6" text="출력" onclick="btn_print_onclick"/>
  95. <Div position="absolute 500 105 1225 782" id="grp_detl" visible="false" style="background:transparent;">
  96. <Layouts>
  97. <Layout>
  98. <Edit position="absolute 622 650 725 671" id="ipt_fstrgstrnm" enable="false" anchor="default" taborder="19"/>
  99. <Edit position="absolute 96 194 725 215" id="ipt_title" class="input_essential" anchor="default" taborder="9"/>
  100. <Edit position="absolute 97 650 396 671" id="ipt_attfilenm" enable="false" anchor="default" taborder="18"/>
  101. <Combo position="absolute 96 29 161 50" id="cmb_instcd" class="input_essential" innerdataset="@ds_init_instinfo_instlist" datacolumn="label" codecolumn="value" anchor="default" style="align:center middle;" taborder="2"/>
  102. <Static text="비고" position="absolute 5 132 95 190" id="caption10" class="cell_1" anchor="default"/>
  103. <Static text="주관부서" position="absolute 5 28 95 51" id="caption1" class="cell_1" anchor="default"/>
  104. <Static text="회의내용" position="absolute 5 219 95 242" id="caption11" class="cell_1" anchor="default"/>
  105. <Edit position="absolute 162 29 372 50" id="ipt_confdeptnm" class="input_essential" anchor="default" taborder="3" readonly="true"/>
  106. <Static text="종료시간" position="absolute 200 80 290 103" id="caption2" class="cell_1" anchor="default"/>
  107. <Static text="일자" position="absolute 5 2 95 25" id="caption44" class="cell_1" anchor="default"/>
  108. <Button position="absolute 683 0 725 20" id="btn_rowdel" class="btn2_letter2" text="삭제" anchor="default" onclick="grp_detl_btn_rowdel_onclick" enable="false" taborder="17"/>
  109. <Static text="시작시간" position="absolute 5 80 95 103" id="caption3" class="cell_1" anchor="default"/>
  110. <Static text="주관자" position="absolute 5 54 95 77" id="caption4" class="cell_1" anchor="default"/>
  111. <Grid position="absolute 395 26 725 188" id="grd_confattender" binddataset="ds_main_confdetlinfo_confattenderinfo" anchor="default" autofittype="col" onlbuttondown="grp_detl_grd_confattender_onlbuttondown" taborder="16">
  112. <Formats>
  113. <Format id="default">
  114. <Columns>
  115. <Column size="0"/>
  116. <Column size="23"/>
  117. <Column size="51"/>
  118. <Column size="16"/>
  119. <Column size="39"/>
  120. <Column size="165"/>
  121. <Column size="0"/>
  122. <Column size="0"/>
  123. <Column size="0"/>
  124. </Columns>
  125. <Rows>
  126. <Row size="24" band="head"/>
  127. <Row size="24"/>
  128. </Rows>
  129. <Band id="head">
  130. <Cell/>
  131. <Cell col="1"/>
  132. <Cell col="2" colspan="2" text="참석자" taborder="undefined"/>
  133. <Cell col="4" colspan="2" text="부서" taborder="undefined"/>
  134. <Cell col="6" text="dutplcecd"/>
  135. <Cell col="7" text="userid"/>
  136. <Cell col="8" text="seq"/>
  137. </Band>
  138. <Band id="body">
  139. <Cell/>
  140. <Cell col="1" displaytype="normal"/>
  141. <Cell col="2" displaytype="text" edittype="text" style="align:center;" text="bind:usernm"/>
  142. <Cell col="3" celltype="none" displaytype="normal" edittype="button" style="align:center middle;controlalign:center middle;" expandshow="show" expandsize="13" autosizerow="default" autosizecol="default"/>
  143. <Cell col="4" displaytype="combo" edittype="combo" style="align:center;" text="bind:dutplceinstcd" combodataset="ds_init_instinfo_instlist" combocodecol="value" combodatacol="label"/>
  144. <Cell col="5" displaytype="text" edittype="text" text="bind:dutplcenm"/>
  145. <Cell col="6" text="bind:dutplcecd"/>
  146. <Cell col="7" text="bind:userid"/>
  147. <Cell col="8" text="bind:seq"/>
  148. </Band>
  149. </Format>
  150. </Formats>
  151. </Grid>
  152. <Static text="장소" position="absolute 5 106 95 129" id="caption5" class="cell_1" anchor="default"/>
  153. <Shape position="absolute 5 50 392 56" linetype="horizontal" id="line1" class="line_2" anchor="default"/>
  154. <Button position="absolute 200 55 220 75" id="btn_userid" class="icon_search" taborder="21" text="" anchor="default" onclick="grp_detl_btn_userid_onclick"/>
  155. <Button position="absolute 372 29 392 49" id="btn_confdeptcd" class="icon_search" taborder="20" text="" anchor="default" onclick="grp_detl_btn_confdeptcd_onclick" enable="true"/>
  156. <Shape position="absolute 5 102 392 108" linetype="horizontal" id="line2" class="line_2" anchor="default"/>
  157. <Static text="작성자" position="absolute 530 649 620 672" id="caption7" class="cell_1" anchor="default"/>
  158. <Edit position="absolute 96 55 196 76" id="ipt_confusernm" class="input_essential" anchor="default" taborder="4" readonly="true"/>
  159. <Shape position="absolute 5 76 392 82" linetype="horizontal" id="line3" class="line_2" anchor="default"/>
  160. <TextArea position="absolute 96 133 391 188" id="ta_bigo" anchor="default" wordwrap="both" taborder="8"/>
  161. <MaskEdit position="absolute 96 81 136 102" id="ipt_starttm" class="input_essential" mask="##:##" anchor="default" trimtype="both" type="string" taborder="5"/>
  162. <Static text="제목" position="absolute 5 193 95 216" id="caption8" class="cell_1" anchor="default"/>
  163. <Shape position="absolute 5 128 392 134" linetype="horizontal" id="line4" class="line_2" anchor="default"/>
  164. <Static text="첨부파일" position="absolute 5 649 95 672" id="caption9" class="cell_1" anchor="default"/>
  165. <MaskEdit position="absolute 291 81 331 102" id="ipt_endtm" class="input_essential" mask="##:##" anchor="default" trimtype="both" type="string" taborder="6"/>
  166. <Shape position="absolute 5 24 392 30" linetype="horizontal" id="line5" class="line_2" anchor="default"/>
  167. <Button position="absolute 639 0 681 20" id="btn_rowadd" class="btn2_letter2" text="추가" anchor="default" onclick="grp_detl_btn_rowadd_onclick" enable="false" taborder="15"/>
  168. <Shape position="absolute 5 215 725 221" linetype="horizontal" id="line6" class="line_2" anchor="default"/>
  169. <Edit position="absolute 96 107 391 128" id="ipt_plce" anchor="default" taborder="7"/>
  170. <Calendar position="absolute 96 3 191 24" id="ipt_confdd" class="input_essential" taborder="1" anchor="default"/>
  171. <Shape position="absolute 0 2 6 677" linetype="vertical" id="line7" class="line_1" anchor="default"/>
  172. <Shape position="absolute 5 671 722 677" linetype="horizontal" id="line8" class="line_2" anchor="default"/>
  173. <Shape position="absolute 5 645 722 651" linetype="horizontal" id="line9" class="line_2" anchor="default"/>
  174. <Button position="absolute 398 650 462 671" id="btn_attach" class="btn2" taborder="22" text="파일첨부" anchor="default" onclick="grp_detl_btn_attach_onclick" enable="false"/>
  175. <Button position="absolute 464 650 528 671" id="btn_down" class="btn2" text="다운로드" anchor="default" onclick="grp_detl_btn_down_onclick" enable="false" taborder="14"/>
  176. <Button position="absolute 17 275 81 295" id="btn_hwpbigview" class="btn2" text="크게보기" anchor="default" onclick="grp_detl_btn_hwpbigview_onclick" enable="false" taborder="13"/>
  177. <Button position="absolute 17 250 81 270" id="btn_hwpeditmode" class="btn5" text="EDIT변환" anchor="default" onclick="grp_detl_btn_hwpeditmode_onclick" enable="false" taborder="12"/>
  178. <TextArea position="absolute 96 219 725 644" id="ta_conts" class="input_essential" anchor="default" wordwrap="both" style="padding:5 5 0 8;" taborder="11"/>
  179. <Div position="absolute 96 236 725 661" id="grp_edit" visible="false" anchor="default" taborder="10">
  180. <Layouts>
  181. <Layout>
  182. <ActiveX position="absolute 0 -15 629 410" id="pHwpCtrl" progid="{bd9c32de-3155-4691-8972-097d53b10052}" anchor="default" visible="false" taborder="0"/>
  183. </Layout>
  184. </Layouts>
  185. </Div>
  186. <Button position="absolute 17 300 81 320" id="btn_hwpmenuview" class="btn2" visible="false" text="메뉴보기" anchor="default" onclick="grp_detl_btn_hwpmenuview_onclick"/>
  187. <Shape id="line00" class="line_2" position="absolute 5 189 725 195" anchor="default"/>
  188. </Layout>
  189. </Layouts>
  190. </Div>
  191. <Button position="absolute 448 86 501 104" id="btn_unfold" class="btn2" visible="false" text="펼치기" onclick="btn_unfold_onclick"/>
  192. <Button id="btn_fold" taborder="27" text="접기" class="btn2" visible="true" position="absolute 1185 86 1225 104" onclick="btn_fold_onclick"/>
  193. </Layout>
  194. </Layouts>
  195. <Objects>
  196. <Dataset id="ds_init_instinfo_instlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  197. <ColumnInfo>
  198. <Column id="label" type="STRING"/>
  199. <Column id="value" type="STRING"/>
  200. </ColumnInfo>
  201. <Rows>
  202. <Row>
  203. <Col id="label">본원</Col>
  204. <Col id="value">031</Col>
  205. </Row>
  206. <Row>
  207. <Col id="label">칠곡</Col>
  208. <Col id="value">032</Col>
  209. </Row>
  210. </Rows>
  211. </Dataset>
  212. <Dataset id="ds_grd_confattender" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  213. <ColumnInfo>
  214. <Column id="usernm" type="STRING"/>
  215. <Column id="dutplceinstcd" type="STRING"/>
  216. <Column id="dutplcenm" type="STRING"/>
  217. <Column id="dutplcecd" type="STRING"/>
  218. <Column id="userid" type="STRING"/>
  219. <Column id="seq" type="STRING"/>
  220. </ColumnInfo>
  221. </Dataset>
  222. <Dataset id="ds_init_selected" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  223. <ColumnInfo>
  224. <Column id="seq" type="STRING" size="256" sumtext="일련번호"/>
  225. <Column id="title" type="STRING" size="256" sumtext="제목"/>
  226. <Column id="confdd" type="STRING" size="256" sumtext="일자"/>
  227. <Column id="confinstcd" type="STRING" size="256" sumtext="회의주관기관코드"/>
  228. <Column id="confdeptcd" type="STRING" size="256" sumtext="회의주관부서코드"/>
  229. <Column id="confdeptnm" type="STRING" size="256" sumtext="회의주관부서명"/>
  230. <Column id="confuserid" type="STRING" size="256" sumtext="회의주관부서명"/>
  231. <Column id="confusernm" type="STRING" size="256" sumtext="회의주관부서명"/>
  232. <Column id="plce" type="STRING" size="256" sumtext="회의주관부서명"/>
  233. <Column id="starttm" type="STRING" size="256" sumtext="회의주관부서명"/>
  234. <Column id="endtm" type="STRING" size="256" sumtext="회의주관부서명"/>
  235. <Column id="bigo" type="STRING" size="256" sumtext="회의주관부서명"/>
  236. <Column id="contents" type="STRING" size="256" sumtext="회의주관부서명"/>
  237. <Column id="fstrgstrid" type="STRING" size="256" sumtext="회의주관부서명"/>
  238. <Column id="fstrgstrnm" type="STRING" size="256" sumtext="회의주관부서명"/>
  239. <Column id="attfilenm" type="STRING" size="256" sumtext="부서장승인여부"/>
  240. <Column id="attfilepath" type="STRING" size="256" sumtext="부서장승인여부"/>
  241. <Column id="contents2" type="STRING" size="256" sumtext="회의주관부서명"/>
  242. <Column id="hwpeditmodeflag" type="STRING" size="256" sumtext="회의주관부서명"/>
  243. <Column id="sm" type="STRING" size="256"/>
  244. </ColumnInfo>
  245. <Rows>
  246. <Row/>
  247. </Rows>
  248. </Dataset>
  249. <Dataset id="ds_send_search_searchdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  250. <ColumnInfo>
  251. <Column id="fromdd" type="STRING" size="256"/>
  252. <Column id="todd" type="STRING" size="256"/>
  253. <Column id="instcd" type="STRING" size="256"/>
  254. <Column id="deptcd" type="STRING" size="256"/>
  255. <Column id="deptnm" type="STRING" size="256"/>
  256. <Column id="term" type="STRING" size="256"/>
  257. <Column id="subdeptyn" type="STRING" size="256"/>
  258. </ColumnInfo>
  259. <Rows>
  260. <Row>
  261. <Col id="fromdd"/>
  262. <Col id="todd"/>
  263. <Col id="instcd"/>
  264. <Col id="deptcd"/>
  265. <Col id="deptnm"/>
  266. <Col id="term"/>
  267. <Col id="subdeptyn"/>
  268. </Row>
  269. </Rows>
  270. </Dataset>
  271. <Dataset id="ds_main_confinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  272. <ColumnInfo>
  273. <Column id="seq" type="STRING" size="256" sumtext="일련번호"/>
  274. <Column id="title" type="STRING" size="256" sumtext="제목"/>
  275. <Column id="confdd" type="STRING" size="256" sumtext="일자"/>
  276. <Column id="confinstcd" type="STRING" size="256" sumtext="회의주관기관코드"/>
  277. <Column id="confdeptcd" type="STRING" size="256" sumtext="회의주관부서코드"/>
  278. <Column id="confdeptnm" type="STRING" size="256" sumtext="회의주관부서명"/>
  279. <Column id="confattendernm" type="STRING" size="256" sumtext="회의참석자명"/>
  280. <Column id="starttm" type="STRING" size="256" sumtext="회의주관부서명"/>
  281. <Column id="endtm" type="STRING" size="256" sumtext="회의주관부서명"/>
  282. <Column id="plce" type="STRING" size="256" sumtext="회의주관부서명"/>
  283. <Column id="confusernm" type="STRING" size="256" sumtext="회의주관부서명"/>
  284. </ColumnInfo>
  285. </Dataset>
  286. <Dataset id="ds_send_searchdetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  287. <ColumnInfo>
  288. <Column id="seq" type="STRING" size="256" sumtext="요청번호"/>
  289. </ColumnInfo>
  290. <Rows>
  291. <Row/>
  292. </Rows>
  293. </Dataset>
  294. <Dataset id="ds_main_confdetlinfo" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  295. <ColumnInfo>
  296. <Column id="seq" type="STRING" size="256" sumtext="일련번호"/>
  297. <Column id="title" type="STRING" size="256" sumtext="제목"/>
  298. <Column id="confdd" type="STRING" size="256" sumtext="일자"/>
  299. <Column id="confinstcd" type="STRING" size="256" sumtext="회의주관기관코드"/>
  300. <Column id="confdeptcd" type="STRING" size="256" sumtext="회의주관부서코드"/>
  301. <Column id="confdeptnm" type="STRING" size="256" sumtext="회의주관부서명"/>
  302. <Column id="confuserid" type="STRING" size="256" sumtext="회의주관부서명"/>
  303. <Column id="confusernm" type="STRING" size="256" sumtext="회의주관부서명"/>
  304. <Column id="plce" type="STRING" size="256" sumtext="회의주관부서명"/>
  305. <Column id="starttm" type="STRING" size="256" sumtext="회의주관부서명"/>
  306. <Column id="endtm" type="STRING" size="256" sumtext="회의주관부서명"/>
  307. <Column id="bigo" type="STRING" size="256" sumtext="회의주관부서명"/>
  308. <Column id="contents" type="STRING" size="256" sumtext="회의주관부서명"/>
  309. <Column id="fstrgstrid" type="STRING" size="256" sumtext="회의주관부서명"/>
  310. <Column id="fstrgstrnm" type="STRING" size="256" sumtext="회의주관부서명"/>
  311. <Column id="attfilenm" type="STRING" size="256" sumtext="부서장승인여부"/>
  312. <Column id="attfilepath" type="STRING" size="256" sumtext="부서장승인여부"/>
  313. <Column id="contents2" type="STRING" size="256" sumtext="회의주관부서명"/>
  314. <Column id="hwpeditmodeflag" type="STRING" size="256" sumtext="회의주관부서명"/>
  315. <Column id="sm" type="STRING" size="256"/>
  316. </ColumnInfo>
  317. </Dataset>
  318. <Dataset id="ds_main_confdetlinfo_confattenderinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  319. <ColumnInfo>
  320. <Column id="seq" type="STRING" size="256" sumtext="일련번호"/>
  321. <Column id="dutplcecd" type="STRING" size="256" sumtext="회의주관부서코드"/>
  322. <Column id="dutplcenm" type="STRING" size="256" sumtext="회의주관부서명"/>
  323. <Column id="dutplceinstcd" type="STRING" size="256" sumtext="회의주관부서명"/>
  324. <Column id="userid" type="STRING" size="256" sumtext="회의주관부서명"/>
  325. <Column id="usernm" type="STRING" size="256" sumtext="회의주관부서명"/>
  326. <Column id="sm" type="STRING" size="256"/>
  327. </ColumnInfo>
  328. <Rows>
  329. <Row/>
  330. </Rows>
  331. </Dataset>
  332. <Dataset id="ds_send_save_attach" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  333. <ColumnInfo>
  334. <Column id="filedata" type="BLOB" size="256"/>
  335. <Column id="filenm" type="STRING" size="256"/>
  336. <Column id="filesize" type="STRING" size="256"/>
  337. <Column id="filetype" type="STRING" size="256"/>
  338. </ColumnInfo>
  339. <Rows>
  340. <Row/>
  341. </Rows>
  342. </Dataset>
  343. <Dataset id="ds_send_confdetlinfo_confattenderinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  344. <ColumnInfo>
  345. <Column id="seq" type="STRING" size="256" sumtext="일련번호"/>
  346. <Column id="dutplcecd" type="STRING" size="256" sumtext="회의주관부서코드"/>
  347. <Column id="dutplcenm" type="STRING" size="256" sumtext="회의주관부서명"/>
  348. <Column id="dutplceinstcd" type="STRING" size="256" sumtext="회의주관부서명"/>
  349. <Column id="userid" type="STRING" size="256" sumtext="회의주관부서명"/>
  350. <Column id="usernm" type="STRING" size="256" sumtext="회의주관부서명"/>
  351. <Column id="sm" type="STRING" size="256"/>
  352. </ColumnInfo>
  353. <Rows>
  354. <Row/>
  355. </Rows>
  356. </Dataset>
  357. <Dataset id="ds_main_print" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="false" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  358. </Objects>
  359. <Bind>
  360. <BindItem id="item0" compid="group2.ipt_s_deptcd" propid="value" datasetid="ds_send_search_searchdata" columnid="deptcd"/>
  361. <BindItem id="item1" compid="group2.ipt_s_deptnm" propid="value" datasetid="ds_send_search_searchdata" columnid="deptnm"/>
  362. <BindItem id="item2" compid="group2.chk_s_subdeptyn" propid="value" datasetid="ds_send_search_searchdata" columnid="subdeptyn"/>
  363. <BindItem id="item3" compid="group2.ipt_s_fromdd" propid="value" datasetid="ds_send_search_searchdata" columnid="fromdd"/>
  364. <BindItem id="item4" compid="group2.ipt_s_todd" propid="value" datasetid="ds_send_search_searchdata" columnid="todd"/>
  365. <BindItem id="item5" compid="group2.ipt_s_term" propid="value" datasetid="ds_send_search_searchdata" columnid="term"/>
  366. <BindItem id="item6" compid="grp_detl.cmb_instcd" propid="value" datasetid="ds_main_confdetlinfo" columnid="confinstcd"/>
  367. <BindItem id="item7" compid="grp_detl.ipt_confdd" propid="value" datasetid="ds_main_confdetlinfo" columnid="confdd"/>
  368. <BindItem id="item8" compid="grp_detl.ipt_confdeptnm" propid="value" datasetid="ds_main_confdetlinfo" columnid="confdeptnm"/>
  369. <BindItem id="item9" compid="grp_detl.ipt_confusernm" propid="value" datasetid="ds_main_confdetlinfo" columnid="confusernm"/>
  370. <BindItem id="item10" compid="grp_detl.ipt_starttm" propid="value" datasetid="ds_main_confdetlinfo" columnid="starttm"/>
  371. <BindItem id="item11" compid="grp_detl.ipt_endtm" propid="value" datasetid="ds_main_confdetlinfo" columnid="endtm"/>
  372. <BindItem id="item12" compid="grp_detl.ipt_plce" propid="value" datasetid="ds_main_confdetlinfo" columnid="plce"/>
  373. <BindItem id="item13" compid="grp_detl.ta_bigo" propid="value" datasetid="ds_main_confdetlinfo" columnid="bigo"/>
  374. <BindItem id="item14" compid="grp_detl.ipt_title" propid="value" datasetid="ds_main_confdetlinfo" columnid="title"/>
  375. <BindItem id="item15" compid="grp_detl.ta_conts" propid="value" datasetid="ds_main_confdetlinfo" columnid="contents"/>
  376. <BindItem id="item16" compid="grp_detl.ipt_fstrgstrnm" propid="value" datasetid="ds_main_confdetlinfo" columnid="fstrgstrnm"/>
  377. <BindItem id="item17" compid="grp_detl.ipt_attfilenm" propid="value" datasetid="ds_main_confdetlinfo" columnid="attfilenm"/>
  378. </Bind>
  379. <Script type="xscript4.0"><![CDATA[include "com_commonxp::comm_main.xjs";
  380. include "mis_miscommonxp::MIS.xjs";
  381. var hwpInstall = true;
  382. var status;
  383. var viewflag = "u";
  384. var DISABLE_COLOR = "#ecebec";
  385. var ENABLE_COLOR = "#ffffff";
  386. var hwpmenuviewflag="N"; // 메뉴보기 flag (Y/N)
  387. var hwpbigviewflag="N"; // 크게보기 flag(Y/N)
  388. var hwpeditmodeflag="N"; // EDIT MODE flag (Y/N)
  389. var gMaxSize = 10485760;
  390. function SMZHA30000_oninit(obj:Form, e:InitEventInfo)
  391. {
  392. frmf_initForm(obj);
  393. }
  394. function SMZHA30000_onload(obj:Form, e:LoadEventInfo)
  395. {
  396. fInitialize();
  397. }
  398. function fSetAuth(flag)
  399. {
  400. trace("fSetAuth");
  401. if(flag == "search")
  402. { // 조회 시
  403. trace("fSetAuth flag = search");
  404. if(ds_main_confdetlinfo.getColumn(0,"fstrgstrid")==sysf_getUserId())
  405. { // 작성자 본인인 경우
  406. trace("fSetAuth flag = search me");
  407. grp_detl.ipt_confdd.enable = true;
  408. grp_detl.cmb_instcd.enable = true;
  409. grp_detl.ipt_confdeptnm.enable = true;
  410. grp_detl.btn_confdeptcd.enable = true;
  411. grp_detl.ipt_confusernm.enable = true;
  412. grp_detl.btn_userid.enable = true;
  413. grp_detl.ipt_starttm.enable = true;
  414. grp_detl.ipt_endtm.enable = true;
  415. grp_detl.ipt_plce.enable = true;
  416. grp_detl.ta_bigo.enable = true;
  417. grp_detl.ipt_title.enable = true;
  418. grp_detl.ta_conts.enable = true;
  419. grp_detl.btn_rowadd.enable = true;
  420. grp_detl.btn_rowdel.enable = true;
  421. grp_detl.btn_hwpeditmode.enable = true;
  422. grp_detl.btn_hwpbigview.enable = true;
  423. grp_detl.ipt_fstrgstrnm.enable = false;
  424. grp_detl.btn_attach.enable = true;
  425. grp_detl.btn_down.enable = true;
  426. }
  427. else
  428. {
  429. fSetAuth("init");
  430. }
  431. }
  432. else if(flag == "init")
  433. { // 초기화
  434. trace("fSetAuth flag = init");
  435. grp_detl.ipt_confdd.enable = false;
  436. grp_detl.cmb_instcd.enable = false;
  437. grp_detl.ipt_confdeptnm.enable = false;
  438. grp_detl.btn_confdeptcd.enable = false;
  439. grp_detl.ipt_confusernm.enable = false;
  440. grp_detl.btn_userid.enable = false;
  441. grp_detl.ipt_starttm.enable = false;
  442. grp_detl.ipt_endtm.enable = false;
  443. grp_detl.ipt_plce.enable = false;
  444. grp_detl.ta_bigo.enable = false;
  445. grp_detl.ipt_title.enable = false;
  446. grp_detl.ta_conts.enable = false;
  447. grp_detl.btn_rowadd.enable = false;
  448. grp_detl.btn_rowdel.enable = false;
  449. grp_detl.btn_hwpeditmode.enable = false;
  450. grp_detl.btn_hwpbigview.enable = false;
  451. grp_detl.ipt_fstrgstrnm.enable = false;
  452. grp_detl.btn_attach.enable = false;
  453. grp_detl.btn_down.enable = false;
  454. }
  455. else if(flag =="insert")
  456. { //신규 입력 시
  457. trace("fSetAuth flag = insert");
  458. grp_detl.ipt_confdd.enable = true;
  459. grp_detl.cmb_instcd.enable = true;
  460. grp_detl.ipt_confdeptnm.enable = true;
  461. grp_detl.btn_confdeptcd.enable = true;
  462. grp_detl.ipt_confusernm.enable = true;
  463. grp_detl.btn_userid.enable = true;
  464. grp_detl.ipt_starttm.enable = true;
  465. grp_detl.ipt_endtm.enable = true;
  466. grp_detl.ipt_plce.enable = true;
  467. grp_detl.ta_bigo.enable = true;
  468. grp_detl.ipt_title.enable = true;
  469. grp_detl.ta_conts.enable = true;
  470. grp_detl.btn_rowadd.enable = true;
  471. grp_detl.btn_rowdel.enable = true;
  472. grp_detl.btn_hwpeditmode.enable = true;
  473. grp_detl.btn_hwpbigview.enable = true;
  474. grp_detl.ipt_fstrgstrnm.enable = false;
  475. grp_detl.btn_attach.enable = true;
  476. grp_detl.btn_down.enable = true;
  477. }
  478. }
  479. function fInitialize()
  480. {
  481. grdf_setRowTypeIcon(grp_detl.grd_confattender, 1); //상태값 표시
  482. ds_init_selected.setColumn(0, "confdd", utlf_getCurrentDate());
  483. ds_init_selected.setColumn(0, "confinstcd", sysf_getUserInfo("dutplceinstcd"));
  484. ds_init_selected.setColumn(0, "confdeptcd", sysf_getUserInfo("dutplcecd"));
  485. ds_init_selected.setColumn(0, "confdeptnm", sysf_getUserInfo("dutplcenm"));
  486. ds_init_selected.setColumn(0, "fstrgstrnm", sysf_getUserName());
  487. ds_send_search_searchdata.setColumn(0, "fromdd", utlf_getDateTime(utlf_getNewDate().getAddDate(-1,"M"),"D"));
  488. ds_send_search_searchdata.setColumn(0, "todd", utlf_getCurrentDate());
  489. group2.cmb_s_instcd.index = 0;
  490. }
  491. function group2_btn_s_deptcd_onclick(obj:Button, e:ClickEventInfo)
  492. {
  493. var recv_list = "deptcd,deptnm";
  494. misfOpenPopUpList("02", ds_send_search_searchdata ,"", recv_list, ds_send_search_searchdata.getColumn(0, "instcd"), "instcd");
  495. if(utlf_isNull(group2.ipt_s_deptcd.value))
  496. {
  497. group2.ipt_s_deptnm.value = "";
  498. group2.chk_s_subdeptyn.value = "";
  499. group2.chk_s_subdeptyn.enable = false;
  500. }
  501. else
  502. {
  503. group2.chk_s_subdeptyn.enable = true;
  504. }
  505. }
  506. //조회
  507. function group2_button5_onclick(obj:Button, e:ClickEventInfo)
  508. {
  509. fSearch();
  510. }
  511. function fSearch()
  512. {
  513. var oParam = {};
  514. oParam.id = "TRZHA30001";
  515. oParam.service = "reqprgmapp.ConfMngt";
  516. oParam.method = "retGetConfList";
  517. oParam.inds = "req=ds_send_search_searchdata";
  518. oParam.outds = "ds_main_confinfo=conflist";
  519. oParam.async = false;
  520. oParam.callback = "cf_TRZHA30001";
  521. tranf_submit(oParam);
  522. }
  523. function cf_TRZHA30001(sSvcId, nErrorCode, sErrorMsg)
  524. {
  525. if(nErrorCode < 0) return;
  526. }
  527. function fSearchDetl()
  528. {
  529. var seq = ds_main_confinfo.getColumn(grd_conflist.selectendrow, "seq");
  530. ds_send_searchdetl.setColumn(0, "seq", seq);
  531. var oParam = {};
  532. oParam.id = "TRZHA30002";
  533. oParam.service = "reqprgmapp.ConfMngt";
  534. oParam.method = "retGetConf";
  535. oParam.inds = "req=ds_send_searchdetl";
  536. oParam.outds = "ds_main_confdetlinfo=conf ds_main_confdetlinfo_confattenderinfo=confattenderlist";
  537. oParam.async = true;
  538. oParam.callback = "cf_TRZHA30002";
  539. tranf_submit(oParam);
  540. }
  541. function cf_TRZHA30002(sSvcId, nErrorCode, sErrorMsg)
  542. {
  543. if(nErrorCode < 0) return;
  544. if(typeof(grp_detl.grp_edit.pHwpCtrl) == "undefined")
  545. {
  546. hwpeditmodeflag = "N";
  547. }
  548. else
  549. {
  550. hwpeditmodeflag = ds_main_confdetlinfo.getColumn(0, "hwpeditmodeflag");
  551. }
  552. if(hwpeditmodeflag == "N")
  553. {
  554. fChangEditMode(hwpeditmodeflag);
  555. }
  556. else
  557. {
  558. fChangEditMode(hwpeditmodeflag);
  559. grp_detl.grp_edit.pHwpCtrl.SetTextFile(ds_main_confdetlinfo.getColumn(0, "contents2"),"HWPML2X","");
  560. }
  561. fSetAuth("search");
  562. if(viewflag == "f")
  563. {
  564. if(ds_main_confdetlinfo.getColumn(0,"fstrgstrid") == sysf_getUserId())
  565. {
  566. btn_save.enable = true;
  567. btn_del.enable = true;
  568. }
  569. else
  570. {
  571. btn_save.enable = false;
  572. btn_del.enable = false;
  573. }
  574. }
  575. }
  576. function fChangEditMode(hwpeditmodeflag)
  577. {
  578. trace("fChangEditMode() hwpeditmodeflag = " + hwpeditmodeflag);
  579. if(hwpeditmodeflag == "N")
  580. {
  581. grp_detl.btn_hwpeditmode.text = "EDIT변환";
  582. grp_detl.grp_edit.visible = false;
  583. grp_detl.grp_edit.pHwpCtrl.visible = false;
  584. grp_detl.ta_conts.visible = true;
  585. grp_detl.btn_hwpmenuview.visible = false;
  586. }
  587. else
  588. {
  589. grp_detl.btn_hwpeditmode.text = "TXT변환";
  590. grp_detl.grp_edit.pHwpCtrl.SetToolBar(-1, "TOOLBAR_STANDARD");
  591. grp_detl.grp_edit.pHwpCtrl.SetToolBar(-1, "TOOLBAR_FORMAT");
  592. grp_detl.grp_edit.pHwpCtrl.SetToolBar(-1, "TOOLBAR_DRAW");
  593. grp_detl.grp_edit.pHwpCtrl.SetToolBar(-1, "TOOLBAR_TABLE");
  594. grp_detl.grp_edit.pHwpCtrl.SetToolBar(-1, "TOOLBAR_IMAGE");
  595. grp_detl.grp_edit.pHwpCtrl.SetToolBar(0, "FilePreview, Print, Separator, Undo, Redo, Separator, Cut, Copy, Paste,"+"Separator, ParaNumberBullet, MultiColumn, SpellingCheck, HwpDic, Separator, PictureInsertDialog, MacroPlay1");
  596. grp_detl.grp_edit.pHwpCtrl.SetToolBar(0, "Print, Separator, Undo, Redo, Separator, Cut, Copy, Paste,"+"Separator, ParaNumberBullet, MultiColumn, SpellingCheck, HwpDic, Separator, PictureInsertDialog, MacroPlay1");
  597. var dact = grp_detl.grp_edit.pHwpCtrl.CreateAction("CharShape");
  598. var dset = dact.CreateSet();
  599. dact.GetDefault(dset);
  600. dset.SetItem("FaceNameHangul", "굴림");
  601. dset.SetItem("FaceNameLatin", "굴림");
  602. dset.SetItem("FaceNameHanja", "굴림");
  603. dset.SetItem("FaceNameJapanese", "굴림");
  604. dset.SetItem("FaceNameOther", "굴림");
  605. dset.SetItem("FaceNameSymbol", "굴림");
  606. dset.SetItem("FaceNameUser", "굴림");
  607. dact.Execute(dset); // 액션 실행
  608. grp_detl.grp_edit.visible = true;
  609. grp_detl.grp_edit.pHwpCtrl.visible = true;
  610. grp_detl.ta_conts.visible = false;
  611. grp_detl.btn_hwpmenuview.visible = true;
  612. }
  613. }
  614. //신규
  615. function btn_new_onclick(obj:Button, e:ClickEventInfo)
  616. {
  617. if(status == "i")
  618. {
  619. sysf_messageBox("신규 내용을 저장 후 진행하시기 바랍니다.");
  620. }
  621. else
  622. {
  623. var row;
  624. if(grd_conflist.rowcount == 0)//데이터가 없다면
  625. {
  626. row = ds_main_confinfo.addRow();
  627. }
  628. else
  629. {
  630. row = ds_main_confinfo.insertRow(0);
  631. }
  632. ds_main_confdetlinfo_confattenderinfo.deleteAll();
  633. var attnerderRow = ds_main_confdetlinfo_confattenderinfo.addRow();
  634. ds_main_confdetlinfo_confattenderinfo.setColumn(attnerderRow, "dutplceinstcd", sysf_getUserInfo("dutplceinstcd"));
  635. ds_main_confdetlinfo_confattenderinfo.setColumn(attnerderRow, "dutplcecd", sysf_getUserInfo("dutplcecd"));
  636. ds_main_confdetlinfo_confattenderinfo.setColumn(attnerderRow, "dutplcenm", sysf_getUserInfo("dutplcenm"));
  637. ds_main_confdetlinfo_confattenderinfo.setColumn(attnerderRow, "userid", sysf_getUserId());
  638. ds_main_confdetlinfo_confattenderinfo.setColumn(attnerderRow, "usernm", sysf_getUserName());
  639. ds_main_confdetlinfo.copyData(ds_init_selected);
  640. hwpeditmodeflag = "N";
  641. fChangEditMode(hwpeditmodeflag);
  642. status = "i"
  643. fViewChange("f");
  644. fSetAuth("insert");
  645. btn_save.enable = true;
  646. }
  647. }
  648. //화면 확장 축소 관리
  649. function fViewChange(flag)
  650. {
  651. if(flag == "u")//화면 확장
  652. {
  653. viewflag = "u";
  654. grd_conflist.autofittype="col";
  655. grd_conflist.position.right = group2.position.right;
  656. grp_detl.visible = false;
  657. grp_detl.grp_edit.pHwpCtrl.visible = false;
  658. btn_del.enable = false;
  659. btn_save.enable = false;
  660. btn_unfold.visible = false;
  661. btn_fold.visible = true;
  662. }
  663. else if(flag == "f")//화면 축소
  664. {
  665. viewflag = "f";
  666. grd_conflist.autofittype="none";
  667. grd_conflist.position.right = grp_detl.position.left;
  668. grp_detl.visible = true;
  669. //grp_detl.grp_edit.pHwpCtrl.visible = true;
  670. if(ds_main_confdetlinfo.getColumn(0, "fstrgstrid") == sysf_getUserId())//작성자 본인인 경우
  671. {
  672. btn_save.enable = true;
  673. btn_del.enable = true;
  674. }
  675. else//작성자 본인이 아닌 경우
  676. {
  677. btn_save.enable = false;
  678. btn_del.enable = false;
  679. }
  680. btn_unfold.visible = true;
  681. btn_fold.visible = false;
  682. }
  683. }
  684. function grp_detl_grd_confattender_onlbuttondown(obj:Grid, e:GridMouseEventInfo)
  685. {
  686. if(e.col == 3)
  687. {
  688. //var varLastSeq = ds_main_confdetlinfo_confattenderinfo.getColumn(ds_main_confdetlinfo_confattenderinfo.getRowCount-1, "seq");
  689. //trace(varLastSeq);
  690. var varID = ds_main_confdetlinfo_confattenderinfo.getColumn(e.row, "userid");
  691. trace(varID);
  692. if(!utlf_isNull(varID))
  693. {
  694. return;
  695. }
  696. var iProperties = frmf_modal("SPZSU10103", "SPZSU10103", null, null, null, 200, 200, null, null, null, null, null, "M");
  697. trace(iProperties);
  698. if(!utlf_isNull(iProperties))
  699. {
  700. var iNodesetCount = iProperties.rowcount;
  701. for(var i = 0; i < iNodesetCount; i++)
  702. {
  703. // 여러명 동시 선택 되어진 경우 선택된 열 부터 입력
  704. var iRow = e.row;
  705. if(i != 0)
  706. {
  707. //두번째부터 아래 추가
  708. iRow = ds_main_confdetlinfo_confattenderinfo.addRow();
  709. }
  710. //ds_main_confdetlinfo_confattenderinfo.setColumn(iRow, "seq", varLastSeq+i+1 );
  711. ds_main_confdetlinfo_confattenderinfo.setColumn(iRow, "userid", iProperties.getColumn(i, "userid"));
  712. ds_main_confdetlinfo_confattenderinfo.setColumn(iRow, "usernm", iProperties.getColumn(i, "usernm"));
  713. ds_main_confdetlinfo_confattenderinfo.setColumn(iRow, "dutplceinstcd", iProperties.getColumn(i, "dutplceinstcd"));
  714. ds_main_confdetlinfo_confattenderinfo.setColumn(iRow, "dutplcecd", iProperties.getColumn(i, "dutplcecd"));
  715. ds_main_confdetlinfo_confattenderinfo.setColumn(iRow, "dutplcenm", iProperties.getColumn(i, "dutplcenm"));
  716. }
  717. }
  718. }
  719. }
  720. //추가 버튼
  721. function grp_detl_btn_rowadd_onclick(obj:Button, e:ClickEventInfo)
  722. {
  723. ds_main_confdetlinfo_confattenderinfo.addRow();
  724. }
  725. //삭제 버튼
  726. function grp_detl_btn_rowdel_onclick(obj:Button, e:ClickEventInfo)
  727. {
  728. var cRow = ds_main_confdetlinfo_confattenderinfo.rowposition;
  729. if(cRow < 0)
  730. {
  731. sysf_messageBox("삭제할 ","E013");
  732. return false;
  733. }
  734. if(ds_main_confdetlinfo_confattenderinfo.getRowType(cRow) == 2)
  735. {
  736. ds_main_confdetlinfo_confattenderinfo.deleteRow(cRow);
  737. }
  738. else
  739. {
  740. grdf_setStatus(grp_detl.grd_confattender, "d", [cRow]);
  741. }
  742. }
  743. //주관부서
  744. function grp_detl_btn_confdeptcd_onclick(obj:Button, e:ClickEventInfo)
  745. {
  746. var recv_list = "confdeptcd,confdeptnm";
  747. misfOpenPopUpList("02", ds_main_confdetlinfo ,"", recv_list, ds_main_confdetlinfo.getColumn(0, "confinstcd"), "instcd");
  748. }
  749. //주관자
  750. function grp_detl_btn_userid_onclick(obj:Button, e:ClickEventInfo)
  751. {
  752. var iProperties = frmf_modal("SPZSU10103", "SPZSU10103", null, null, null, 200, 200, null, null, null, null, null, "M");
  753. if(!utlf_isNull(iProperties))
  754. {
  755. ds_main_confdetlinfo.setColumn(0, "confuserid", iProperties.getColumn(0, "userid"));
  756. ds_main_confdetlinfo.setColumn(0, "confusernm", iProperties.getColumn(0, "usernm"));
  757. var rtn = sysf_messageBox("기관과 부서까지 ","Q009");
  758. if(rtn == 6)
  759. {
  760. ds_main_confdetlinfo.setColumn(0, "confinstcd", iProperties.getColumn(0, "dutplceinstcd"));
  761. ds_main_confdetlinfo.setColumn(0, "confdeptcd", iProperties.getColumn(0, "dutplcecd"));
  762. ds_main_confdetlinfo.setColumn(0, "confdeptnm", iProperties.getColumn(0, "dutplcenm"));
  763. }
  764. }
  765. }
  766. //삭제
  767. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  768. {
  769. var rtn = sysf_messageBox("정말로 ", "Q001");
  770. if(rtn == 6)
  771. {
  772. status = "d";
  773. fSave();
  774. fSearch();
  775. }
  776. }
  777. //저장
  778. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  779. {
  780. if(fSaveValidate())
  781. {
  782. fSave();
  783. fSearch();
  784. fSearchDetl();
  785. }
  786. }
  787. function fSaveValidate()
  788. {
  789. //회의일자
  790. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"confdd")))
  791. {
  792. sysf_messageBox("회의일자는 ", "I003");
  793. grp_detl.ipt_confdd.setFocus();
  794. return false;
  795. }
  796. //주관부서
  797. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"confdeptcd")))
  798. {
  799. sysf_messageBox("주관부서는 ", "I003");
  800. grp_detl.ipt_confdeptnm.setFocus();
  801. return false;
  802. }
  803. //주관자
  804. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"confuserid")))
  805. {
  806. sysf_messageBox("주관자는 ", "I003");
  807. grp_detl.ipt_confusernm.setFocus();
  808. return false;
  809. }
  810. //시작시간
  811. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"starttm")))
  812. {
  813. sysf_messageBox("시작시간은 ", "I003");
  814. grp_detl.ipt_starttm.setFocus();
  815. return false;
  816. }
  817. //종료시간
  818. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"endtm")))
  819. {
  820. sysf_messageBox("종료시간은 ", "I003");
  821. grp_detl.ipt_endtm.setFocus();
  822. return false;
  823. }
  824. //제목
  825. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"title")))
  826. {
  827. sysf_messageBox("제목은 ", "I003");
  828. grp_detl.ipt_title.setFocus();
  829. return false;
  830. }
  831. //회의내용
  832. if(utlf_isNull(ds_main_confdetlinfo.getColumn(0,"contents")))
  833. {
  834. sysf_messageBox("회의내용은 ", "I003");
  835. grp_detl.ta_conts.setFocus();
  836. return false;
  837. }
  838. //회의내용
  839. if(ds_main_confdetlinfo_confattenderinfo.getRowCount <= 1)
  840. {
  841. sysf_messageBox("참석자는 최소 1명 이상이 ", "I003");
  842. return false;
  843. }
  844. return true;
  845. }
  846. function fSave()
  847. {
  848. if(hwpeditmodeflag == "N")
  849. {
  850. ds_main_confdetlinfo.setColumn(0,"contents2", "");
  851. }
  852. else
  853. {
  854. ds_main_confdetlinfo.setColumn(0,"contents2", grp_detl.grp_edit.pHwpCtrl.GetTextFile("HWPML2X", ""));
  855. ds_main_confdetlinfo.setColumn(0,"contents", grp_detl.grp_edit.pHwpCtrl.GetTextFile("TEXT", ""));
  856. }
  857. ds_main_confdetlinfo.setColumn(0, "hwpeditmodeflag", hwpeditmodeflag);
  858. ds_main_confdetlinfo.setColumn(0,"sm", status);
  859. //그리드의 상태 값을 반영
  860. var dsUpdate = grdf_getGridUpdateData(grp_detl.grd_confattender, "all");
  861. grdf_setStatusColumn(dsUpdate, "sm");
  862. ds_send_confdetlinfo_confattenderinfo.copyData(dsUpdate,true);
  863. trace(ds_main_confdetlinfo_confattenderinfo.saveXML());
  864. var oParam = {};
  865. oParam.id = "TXZHA30001";
  866. oParam.service = "reqprgmapp.ConfMngt";
  867. oParam.method = "reqExeSaveConf";
  868. oParam.inds = "confattenderlist=ds_send_confdetlinfo_confattenderinfo req=ds_main_confdetlinfo attach=ds_send_save_attach";
  869. //oParam.outds = "ds_=saveresultlist";
  870. oParam.async = false;
  871. oParam.callback = "cf_TXZHA30001";
  872. tranf_submit(oParam);
  873. }
  874. function cf_TXZHA30001(sSvcId, nErrorCode, sErrorMsg)
  875. {
  876. if(nErrorCode < 0) return;
  877. sysf_messageBox("정상적으로 저장이 ","I002");
  878. }
  879. //EDIT 변환
  880. function grp_detl_btn_hwpeditmode_onclick(obj:Button, e:ClickEventInfo)
  881. {
  882. if(hwpeditmodeflag == "N")
  883. {
  884. if(typeof(grp_detl.grp_edit.pHwpCtrl) == "undefined")
  885. {
  886. sysf_messageBox("한글이 설치되지 않았습니다.\n설치 후 진행 ","I006");
  887. return;
  888. }
  889. var rtn = sysf_messageBox("EDIT 모드로 변환됩니다. ", "Q003");
  890. if(rtn == 6)
  891. {
  892. hwpeditmodeflag = "Y";
  893. fChangEditMode(hwpeditmodeflag);
  894. grp_detl.grp_edit.pHwpCtrl.Clear(1);
  895. grp_detl.grp_edit.pHwpCtrl.SetTextFile(grp_detl.ta_conts.value, "TEXT", "");
  896. }
  897. }
  898. else
  899. {
  900. var rtn = sysf_messageBox("TEXT 모드로 변환되며 EDIT 모드에서 작성된 서식은 사라집니다.\n", "Q003");
  901. if(rtn == 6)
  902. {
  903. hwpeditmodeflag = "N";
  904. fChangEditMode(hwpeditmodeflag);
  905. var contents = grp_detl.grp_edit.pHwpCtrl.GetTextFile("TEXT", "");
  906. grp_detl.ta_conts.value = contents.replace(/\r/g, '') ;
  907. }
  908. }
  909. }
  910. //크게 보기
  911. function grp_detl_btn_hwpbigview_onclick(obj:Button, e:ClickEventInfo)
  912. {
  913. var objArgs = new Object();
  914. objArgs.plgv_hwpeditmodeflag = hwpeditmodeflag;
  915. if(hwpeditmodeflag == "N")
  916. {
  917. objArgs.plgv_contents = ds_main_confdetlinfo.getColumn(0, "contents");
  918. }
  919. else
  920. {
  921. objArgs.plgv_contents = grp_detl.grp_edit.pHwpCtrl.GetTextFile("HWPML2X", "");
  922. }
  923. frmf_modal("SPZHA30001", "SPZHA30001", objArgs,"","","","","","","","","","M");
  924. var varContents = frmf_getParameter("SPZHA30001_contents");
  925. var varCloseFlag = frmf_getParameter("SPZHA30001_closeflag");
  926. var varHwpeditModeFlag = frmf_getParameter("SPZHA30001_hwpeditmodeflag");
  927. if(varCloseFlag == "ok")
  928. {
  929. hwpeditmodeflag = varHwpeditModeFlag;
  930. fChangEditMode(hwpeditmodeflag);
  931. if(varHwpeditModeFlag == "N")
  932. {
  933. ds_main_confdetlinfo.setColumn(0, "contents", varContents);
  934. }
  935. else
  936. {
  937. grp_detl.grp_edit.pHwpCtrl.Clear(1);
  938. grp_detl.grp_edit.pHwpCtrl.SetTextFile(varContents,"TEXT","");
  939. }
  940. fChangEditMode(hwpeditmodeflag);
  941. }
  942. }
  943. //메뉴보기
  944. function grp_detl_btn_hwpmenuview_onclick(obj:Button, e:ClickEventInfo)
  945. {
  946. if(hwpmenuviewflag == "N")
  947. {
  948. hwpmenuviewflag = "Y";
  949. grp_detl.btn_hwpmenuview.text = "메뉴숨김";
  950. grp_detl.grp_edit.pHwpCtrl.ShowToolBar(true);
  951. grp_detl.grp_edit.pHwpCtrl.ShowStatusBar(1);
  952. }
  953. else
  954. {
  955. hwpmenuviewflag = "N";
  956. grp_detl.btn_hwpmenuview.text = "메뉴보기";
  957. grp_detl.grp_edit.pHwpCtrl.ShowToolBar(false);
  958. grp_detl.grp_edit.pHwpCtrl.ShowStatusBar(0);
  959. }
  960. }
  961. //펼치기
  962. function btn_unfold_onclick(obj:Button, e:ClickEventInfo)
  963. {
  964. fViewChange("u");
  965. }
  966. function btn_fold_onclick(obj:Button, e:ClickEventInfo)
  967. {
  968. fViewChange("f");
  969. }
  970. //파일첨부
  971. function grp_detl_btn_attach_onclick(obj:Button, e:ClickEventInfo)
  972. {
  973. fFileAdd(ds_main_confdetlinfo);
  974. ds_main_confdetlinfo.setColumn(0, "attfilenm", ds_send_save_attach.getColumn(0, "filenm"));
  975. trace(ds_main_confdetlinfo.getColumn(0,"attfilenm" ));
  976. }
  977. function fFileAdd(oDataset){
  978. //******파일을 첨부하기 위해 파일열기가 open 되게 한다.
  979. var name = oDataset.getColumn(0, "filenm");
  980. if(!utlf_isNull(name)){
  981. var fileupdata = sysf_messageBox(name + " 파일 수정을" , "S001");
  982. if(fileupdata == '6'){
  983. //파일 삭제
  984. //input박스에 나타난 명을 제거
  985. oDataset.setColumn(0, "filenm", "");
  986. //파일 저장
  987. //파일을 받아오기 위해 파일열기 팝업창을 띄운다.
  988. var fd = new FileDialog;
  989. var objVFileList = fd.open("첨부 할 파일을 선택하여 주십시오.", FileDialog.LOAD);
  990. oDataset.setColumn(0, "filenm", objVFileList.filename);
  991. //선택한 파일이 저장버튼을 눌렀을때 저장이 되게 하기 위해 파일 저장 인스턴스에 파일주소를 저장해 둔다.
  992. /*
  993. dsf_createDsRow("ds_send_save_attach", [{col:"filedata", type:"BLOB", size:256}
  994. , {col:"filenm", type:"string", size:256}
  995. , {col:"filesize", type:"string", size:256}
  996. , {col:"filetype", type:"string", size:256}]);
  997. */
  998. var oDsSaveFile = this.objects["ds_send_save_attach"];
  999. var objFileinfo = dsf_writeFileToDs(objVFileList, oDsSaveFile, 0, "filedata");
  1000. oDsSaveFile.setColumn(0, "filenm", objFileinfo.filename);
  1001. oDsSaveFile.setColumn(0, "filesize", objFileinfo.filesize);
  1002. oDsSaveFile.setColumn(0, "filetype", objFileinfo.filetype);
  1003. //파일 크기가 너무 큰경우 메세지를 띄운다.
  1004. if (!checkFileSize(objFileinfo.filesize)){
  1005. oDataset.setColumn(0, "filenm", "");
  1006. sysf_messageBox("파일 크기가 최대치(" + gMaxSize + "Byte)를", "E003");
  1007. oDsSaveFile.setColumn(0, "filedata", "");
  1008. }
  1009. }else if(fileupdata == '7'){
  1010. sysf_messageBox(name + " 파일 수정을 하지", "E007");
  1011. }
  1012. }
  1013. else
  1014. {
  1015. //파일을 받아오기 위해 파일열기 팝업창을 띄운다.
  1016. var fd = new FileDialog;
  1017. var objVFileList = fd.open("첨부 할 파일을 선택하여 주십시오.", FileDialog.LOAD);
  1018. //파일 경로가 아닌 이름만 input박스에 넣기 위한 처리
  1019. oDataset.setColumn(0, "filenm", objVFileList.filename);
  1020. //선택한 파일이 저장버튼을 눌렀을때 저장이 되게 하기 위해 파일 저장 인스턴스에 파일주소를 저장해 둔다.
  1021. /*
  1022. dsf_createDsRow("ds_send_save_attach", [{col:"filedata", type:"BLOB", size:256}
  1023. , {col:"filenm", type:"string", size:256}
  1024. , {col:"filesize", type:"string", size:256}
  1025. , {col:"filetype", type:"string", size:256}]);
  1026. */
  1027. var oDsSaveFile = this.objects["ds_send_save_attach"];
  1028. var objFileinfo = dsf_writeFileToDs(objVFileList, oDsSaveFile, 0, "filedata");
  1029. oDsSaveFile.setColumn(0, "filenm", objFileinfo.filename);
  1030. oDsSaveFile.setColumn(0, "filesize", objFileinfo.filesize);
  1031. oDsSaveFile.setColumn(0, "filetype", objFileinfo.filetype);
  1032. //파일 크기가 너무 큰경우 메세지를 띄운다.
  1033. if (!checkFileSize(objFileinfo.filesize)){
  1034. oDataset.setColumn(0, "filenm", "");
  1035. sysf_messageBox("파일 크기가 최대치(" + gMaxSize + "Byte)를", "E003");
  1036. oDsSaveFile.setColumn(0, "filedata", "");
  1037. }
  1038. }
  1039. }
  1040. function checkFileSize(fileSize)
  1041. {
  1042. if (fileSize <= gMaxSize)
  1043. return true;
  1044. else
  1045. return false;
  1046. }
  1047. //다운로드
  1048. function grp_detl_btn_down_onclick(obj:Button, e:ClickEventInfo)
  1049. {
  1050. fFileDown(ds_main_confdetlinfo.getColumn(0,"attfilenm"), ds_main_confdetlinfo.getColumn(0, "attfilepath"), ds_main_confdetlinfo);
  1051. }
  1052. function fFileDown(knowfilenm, knowfilepath, oDataset)
  1053. {
  1054. //파일명이 있는 경우 다운로드
  1055. if(!utlf_isNull(knowfilenm)){
  1056. //파일명의 확장자만 받아옴
  1057. var fileext = knowfilenm.lastIndexOf(".");
  1058. var ext = knowfilenm.substring(fileext +1);
  1059. //파일을 다운로드 하기 위해 저장할 창을 띄움
  1060. var fd = new FileDialog;
  1061. var objVFileList = fd.open("다운 받을 위치를 선택하여 주십시오.", FileDialog.SAVE, "", knowfilenm);
  1062. //키값을 받아옴
  1063. dsf_createDsRow("ds_attfile", [{col:"attfilepath", type:"string", size:256, val:knowfilepath}
  1064. , {col:"filepathcolnm", type:"string", size:256, val:"attfilepath"}]);
  1065. dsf_createDs("ds_filelist");
  1066. //키값을 가지고 DB에 저장된 데이타를 조회하러 간다
  1067. var oParam = {};
  1068. oParam.id = "TRZHI05105";
  1069. oParam.service = "irmsapp.MessageMngt";
  1070. oParam.method = "reqAttFileDownLoad";
  1071. oParam.inds = "req=ds_attfile";
  1072. oParam.outds = "ds_filelist=filelist";
  1073. oParam.async = false;
  1074. tranf_submit(oParam);
  1075. if (objVFileList != null) {
  1076. dsf_readFileFromDs(objVFileList.fullpath, ds_filelist, 0, "attfilecnts"); // 파일저장
  1077. if(sysf_messageBox("파일을", "Q004") == "6")
  1078. system.execShell("\"" + objVFileList.fullpath + "\"");
  1079. }
  1080. } else {
  1081. sysf_messageBox("파일이 첨부되지 않은상태입니다.", "C000");
  1082. }
  1083. }
  1084. //회의록 리스트 더블 클릭
  1085. function grd_conflist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  1086. {
  1087. if(viewflag == "u")
  1088. {
  1089. fViewChange("f");
  1090. }
  1091. fSearchDetl();
  1092. status = "u"
  1093. }
  1094. function btn_print_onclick(obj:Button, e:ClickEventInfo)
  1095. {
  1096. if(status != "u")
  1097. {
  1098. messageBox("입력 저장 후 ","I006");
  1099. return;
  1100. }
  1101. var confattenderdesc = ds_main_confdetlinfo_confattenderinfo.getColumn(0, "usernm");
  1102. for(var iIndex = 1 ; iIndex < ds_main_confdetlinfo_confattenderinfo.rowcount; iIndex++)
  1103. {
  1104. confattenderdesc += ", " + ds_main_confdetlinfo_confattenderinfo.getColumn(iIndex, "usernm");
  1105. trace(confattenderdesc);
  1106. }
  1107. ds_main_print.clear();
  1108. var nRow = ds_main_print.addRow();
  1109. var vaSucc = ds_main_print.copyData(ds_main_confdetlinfo);
  1110. ds_main_print.addColumn("confattenderdesc", "string", 256);
  1111. ds_main_print.addColumn("confinstnm", "string", 256);
  1112. ds_main_print.setColumn(0, "confattenderdesc", confattenderdesc);
  1113. ds_main_print.setColumn(0, "confinstnm", grp_detl.cmb_instcd.text);
  1114. var objDOM = rptf_createDOM();
  1115. var objParam = new Object();
  1116. if(hwpeditmodeflag == "N")
  1117. {
  1118. rptf_setNodeListToDOM(objDOM, "/root/main/confdetlinfo/selected", ds_main_print); // 데이터셋 1
  1119. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1120. var option = "open=1;save=1;directprint=0;print=1;zoom=0;callback=cbf_rpt_onFinishPrintXML;printdialog=0";
  1121. rptf_exeReportPreview30(["RPZHA30001"],[objParam], option);
  1122. }
  1123. else
  1124. {
  1125. var rtn = sysf_messageBox("EDIT모드에서 서식포함해서 출력 시 첨부출력물로 별도 출력됩니다.\n서식포함해서 출력", "S003","텍스트만 출력하시려면");
  1126. if(rtn == 6)
  1127. {
  1128. ds_main_print.setColumn(0, "contents", "[첨부출력물참조]");
  1129. rptf_setNodeListToDOM(objDOM, "/root/main/confdetlinfo/selected", ds_main_print); // 데이터셋 1
  1130. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1131. var option = "open=1;save=1;directprint=0;print=1;zoom=0;callback=cbf_rpt_onFinishPrintXML;printdialog=0";
  1132. rptf_exeReportPreview30(["RPZHA30001"],[objParam], option);
  1133. grp_detl.grp_edit.pHwpCtrl.PrintDocument();
  1134. }
  1135. else if(rtn == 7)
  1136. {
  1137. rptf_setNodeListToDOM(objDOM, "/root/main/confdetlinfo/selected", ds_main_print); // 데이터셋 1
  1138. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1139. var option = "open=1;save=1;directprint=0;print=1;zoom=0;callback=cbf_rpt_onFinishPrintXML;printdialog=0";
  1140. rptf_exeReportPreview30(["RPZHA30001"],[objParam], option);
  1141. }
  1142. }
  1143. }
  1144. function cbf_rpt_onFinishPrintXML()
  1145. {
  1146. close();
  1147. }
  1148. ]]></Script>
  1149. </Form>
  1150. </FDL>