SMRSM00200_화학물질종합관리.xfdl 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRSM00200" position="absolute 0 0 819 551" titletext="화학물질 종합관리" oninit="SMRSM00200_oninit" onload="SMRSM00200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="화학물질 종합관리" class="tit_1" position="absolute 0 0 173 25"/>
  8. <Shape id="line2" linetype="horizontal" class="line_6" position="absolute 0 38 815 44"/>
  9. <Button id="btn_save" taborder="1" text="저장" class="btn4" position="absolute 696 18 752 40" onclick="btn_save_onclick"/>
  10. <Button id="btn_close" taborder="2" text="닫기" class="btn4" position="absolute 755 18 811 40" onclick="btn_close_onclick"/>
  11. <Div id="grp_sea" taborder="3" class="div_SA2" position="absolute 0 41 815 76">
  12. <Layouts>
  13. <Layout width="815" height="35">
  14. <Button id="btn_search" taborder="1" text="조회" class="btn1" visible="false" position="absolute 675 6 731 28" onclick="grp_sea_btn_search_onclick"/>
  15. <Static id="caption1" text="물질명" position="absolute 45 10 90 26"/>
  16. <Static id="caption7" text="제조회사" position="absolute 355 10 410 26"/>
  17. </Layout>
  18. </Layouts>
  19. </Div>
  20. <Shape id="line1" class="line_10" position="absolute 0 106 815 112"/>
  21. <Shape id="line13" linetype="horizontal" class="line_2" position="absolute 1 131 813 137"/>
  22. <Static id="caption20" text="종합정보" class="tit_2" position="absolute 1 89 75 105"/>
  23. <Static id="cap_matrcd" text="유해 구성성분" class="cell_1" position="absolute 0 111 160 134"/>
  24. <Static id="cap_matrnm" text="유해등급" class="cell_1" position="absolute 0 136 160 159"/>
  25. <Shape id="line4" linetype="horizontal" class="line_2" position="absolute 1 156 813 162"/>
  26. <Shape id="line16" linetype="horizontal" class="line_2" position="absolute 0 489 813 495"/>
  27. <Shape id="line17" linetype="horizontal" class="line_2" position="absolute 0 516 813 522"/>
  28. <Shape id="line18" linetype="horizontal" class="line_2" position="absolute 0 541 813 547"/>
  29. <Static id="caption24" text="제품 경고표시 그림문자" class="cell_1" position="absolute 0 384 160 494"/>
  30. <Static id="caption25" text="유해위험성" class="cell_1" position="absolute 0 161 160 306"/>
  31. <Static id="caption29" text="작업환경측정 물질" class="cell_1" position="absolute 0 496 160 519"/>
  32. <Shape id="line7" linetype="horizontal" class="line_2" position="absolute 1 304 813 310"/>
  33. <Shape id="line20" linetype="horizontal" class="line_2" position="absolute 1 329 813 335"/>
  34. <Static id="caption11" text="신호어" class="cell_1" position="absolute 0 309 160 332"/>
  35. <Shape id="line9" linetype="horizontal" class="line_2" position="absolute 1 354 813 360"/>
  36. <Shape id="line10" linetype="horizontal" class="line_2" position="absolute 1 379 813 385"/>
  37. <Static id="caption12" text="작업 공정별 관리요령" class="cell_1" position="absolute 0 359 160 382"/>
  38. <Edit id="opt_prodcmpynm" taborder="4" readonly="true" position="absolute 418 49 658 68"/>
  39. <Radio id="rdo_envinspyn" taborder="5" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 165 497 270 517">
  40. <Dataset id="innerdataset">
  41. <ColumnInfo>
  42. <Column id="codecolumn"/>
  43. <Column id="datacolumn"/>
  44. </ColumnInfo>
  45. <Rows>
  46. <Row>
  47. <Col id="codecolumn">Y</Col>
  48. <Col id="datacolumn">Yes</Col>
  49. </Row>
  50. <Row>
  51. <Col id="codecolumn">N</Col>
  52. <Col id="datacolumn">No</Col>
  53. </Row>
  54. </Rows>
  55. </Dataset>
  56. </Radio>
  57. <Static id="caption3" text="물질안전보건자료(MSDS)" class="cell_1" position="absolute 0 334 160 357"/>
  58. <Combo id="cmb_fileyn1" taborder="6" codecolumn="codecolumn" datacolumn="datacolumn" enable="false" position="absolute 165 336 205 355">
  59. <Dataset id="innerdataset">
  60. <ColumnInfo>
  61. <Column id="codecolumn"/>
  62. <Column id="datacolumn"/>
  63. </ColumnInfo>
  64. <Rows>
  65. <Row>
  66. <Col id="codecolumn">Y</Col>
  67. <Col id="datacolumn">Y</Col>
  68. </Row>
  69. <Row>
  70. <Col id="codecolumn">N</Col>
  71. <Col id="datacolumn">N</Col>
  72. </Row>
  73. </Rows>
  74. </Dataset>
  75. </Combo>
  76. <Button id="btn_fileup1" taborder="7" text="등록" class="btn2" position="absolute 210 336 252 355" onclick="btn_fileup1_onclick"/>
  77. <Button id="btn_filedel1" taborder="8" text="삭제" class="btn2" position="absolute 255 336 297 355" onclick="btn_filedel1_onclick"/>
  78. <Button id="btn_filedown1" taborder="9" text="다운" class="btn2" position="absolute 300 336 342 355" onclick="btn_filedown1_onclick"/>
  79. <Button id="btn_fileup2" taborder="10" text="등록" class="btn2" position="absolute 210 361 252 380" onclick="btn_fileup2_onclick"/>
  80. <Button id="btn_filedown2" taborder="11" text="다운" class="btn2" position="absolute 300 361 342 380" onclick="btn_filedown2_onclick"/>
  81. <Combo id="cmb_fileyn2" taborder="12" codecolumn="codecolumn" datacolumn="datacolumn" enable="false" position="absolute 165 361 205 380">
  82. <Dataset id="innerdataset">
  83. <ColumnInfo>
  84. <Column id="codecolumn"/>
  85. <Column id="datacolumn"/>
  86. </ColumnInfo>
  87. <Rows>
  88. <Row>
  89. <Col id="codecolumn">Y</Col>
  90. <Col id="datacolumn">Y</Col>
  91. </Row>
  92. <Row>
  93. <Col id="codecolumn">N</Col>
  94. <Col id="datacolumn">N</Col>
  95. </Row>
  96. </Rows>
  97. </Dataset>
  98. </Combo>
  99. <Button id="btn_filedel2" taborder="13" text="삭제" class="btn2" position="absolute 255 361 297 380" onclick="btn_filedel2_onclick"/>
  100. <ImageViewer id="img1" taborder="14" image="URL('IMG::mis/warn1.png')" position="absolute 165 389 215 439" style="color:black;" stretch="fit"/>
  101. <ImageViewer id="img2" taborder="15" image="URL('IMG::mis/warn2.png')" position="absolute 220 389 270 439" stretch="fit"/>
  102. <ImageViewer id="img3" taborder="16" image="URL('IMG::mis/warn3.png')" position="absolute 275 389 325 439" stretch="fit"/>
  103. <ImageViewer id="img4" taborder="17" image="URL('IMG::mis/warn4.png')" position="absolute 330 389 380 439" stretch="fit"/>
  104. <ImageViewer id="img5" taborder="18" image="URL('IMG::mis/warn5.png')" position="absolute 385 389 435 439" stretch="fit"/>
  105. <ImageViewer id="img6" taborder="19" image="URL('IMG::mis/warn6.png')" position="absolute 440 389 490 439" stretch="fit"/>
  106. <ImageViewer id="img7" taborder="20" image="URL('IMG::mis/warn7.png')" position="absolute 495 389 545 439" stretch="fit"/>
  107. <ImageViewer id="img8" taborder="21" image="URL('IMG::mis/warn8.png')" position="absolute 550 389 600 439" stretch="fit"/>
  108. <ImageViewer id="img9" taborder="22" image="URL('IMG::mis/warn9.png')" position="absolute 605 389 655 439" stretch="fit"/>
  109. <Static id="caption8" text="인화성" position="absolute 170 439 210 459"/>
  110. <Static id="caption9" text=" 흡인&#13;&#10;유해성" position="absolute 225 436 265 474"/>
  111. <Static id="caption10" text="급성독성" position="absolute 275 439 325 459"/>
  112. <Static id="caption13" text="부식성" position="absolute 335 439 375 459"/>
  113. <Static id="caption14" text="산화성" position="absolute 390 439 430 459"/>
  114. <Static id="caption15" text="고압가스" position="absolute 440 439 490 459"/>
  115. <Static id="caption16" text="폭발성" position="absolute 500 439 540 459"/>
  116. <Static id="caption17" text="수생환경&#13;&#10; 유해성" position="absolute 550 436 600 474"/>
  117. <Static id="caption18" text="경고" position="absolute 620 439 660 459"/>
  118. <Static id="caption5" text="특수건강진단 물질" class="cell_1" position="absolute 0 521 160 544"/>
  119. <Radio id="rdo_spcldiagyn" taborder="23" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 165 522 270 542">
  120. <Dataset id="innerdataset">
  121. <ColumnInfo>
  122. <Column id="codecolumn"/>
  123. <Column id="datacolumn"/>
  124. </ColumnInfo>
  125. <Rows>
  126. <Row>
  127. <Col id="codecolumn">Y</Col>
  128. <Col id="datacolumn">Yes</Col>
  129. </Row>
  130. <Row>
  131. <Col id="codecolumn">N</Col>
  132. <Col id="datacolumn">No</Col>
  133. </Row>
  134. </Rows>
  135. </Dataset>
  136. </Radio>
  137. <Edit id="opt_matrnm" taborder="24" readonly="true" position="absolute 98 49 338 68"/>
  138. <Edit id="ipt_harmcomp" taborder="25" class="input_default" position="absolute 164 113 795 132"/>
  139. <Radio id="rdo_harmgrde" taborder="26" columncount="4" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 165 138 515 158">
  140. <Dataset id="innerdataset">
  141. <ColumnInfo>
  142. <Column id="codecolumn"/>
  143. <Column id="datacolumn"/>
  144. </ColumnInfo>
  145. <Rows>
  146. <Row>
  147. <Col id="codecolumn">1</Col>
  148. <Col id="datacolumn">1 등급</Col>
  149. </Row>
  150. <Row>
  151. <Col id="codecolumn">2</Col>
  152. <Col id="datacolumn">2 등급</Col>
  153. </Row>
  154. <Row>
  155. <Col id="codecolumn">3</Col>
  156. <Col id="datacolumn">3 등급</Col>
  157. </Row>
  158. <Row>
  159. <Col id="codecolumn">4</Col>
  160. <Col id="datacolumn">4 등급</Col>
  161. </Row>
  162. </Rows>
  163. </Dataset>
  164. </Radio>
  165. <Grid id="grd_alist" taborder="27" binddataset="ds_main_matrinfo_alist" useinputpanel="false" position="absolute 164 164 379 304" autofittype="col">
  166. <Formats>
  167. <Format id="default">
  168. <Columns>
  169. <Column size="24"/>
  170. <Column size="172"/>
  171. <Column size="0"/>
  172. <Column size="0"/>
  173. <Column size="0"/>
  174. </Columns>
  175. <Rows>
  176. <Row size="24" band="head"/>
  177. <Row size="24"/>
  178. </Rows>
  179. <Band id="head">
  180. <Cell/>
  181. <Cell col="1" text="물리적위험성"/>
  182. <Cell col="2" text="matrcd"/>
  183. <Cell col="3" text="harmcls"/>
  184. <Cell col="4" text="harmcd"/>
  185. </Band>
  186. <Band id="body">
  187. <Cell displaytype="checkbox" edittype="checkbox" text="bind:chkval" expr="expr:expr:chkval == 'Y' ? 1 : 0"/>
  188. <Cell col="1" style="align:left middle;" text="bind:harmnm"/>
  189. <Cell col="2" text="bind:matrcd"/>
  190. <Cell col="3" text="bind:harmcls"/>
  191. <Cell col="4" text="bind:harmcd"/>
  192. </Band>
  193. </Format>
  194. </Formats>
  195. </Grid>
  196. <Grid id="grd_blist" taborder="28" binddataset="ds_main_matrinfo_blist" useinputpanel="false" position="absolute 380 164 595 304" autofittype="col">
  197. <Formats>
  198. <Format id="default">
  199. <Columns>
  200. <Column size="24"/>
  201. <Column size="172"/>
  202. <Column size="0"/>
  203. <Column size="0"/>
  204. <Column size="0"/>
  205. </Columns>
  206. <Rows>
  207. <Row size="24" band="head"/>
  208. <Row size="24"/>
  209. </Rows>
  210. <Band id="head">
  211. <Cell/>
  212. <Cell col="1" text="건강유해성"/>
  213. <Cell col="2" text="matrcd"/>
  214. <Cell col="3" text="harmcls"/>
  215. <Cell col="4" text="harmcd"/>
  216. </Band>
  217. <Band id="body">
  218. <Cell displaytype="checkbox" edittype="checkbox" text="bind:chkval" expr="expr:expr:chkval == 'Y' ? 1 : 0"/>
  219. <Cell col="1" style="align:left middle;" text="bind:harmnm"/>
  220. <Cell col="2" text="bind:matrcd"/>
  221. <Cell col="3" text="bind:harmcls"/>
  222. <Cell col="4" text="bind:harmcd"/>
  223. </Band>
  224. </Format>
  225. </Formats>
  226. </Grid>
  227. <Grid id="grd_clist" taborder="29" binddataset="ds_main_matrinfo_clist" useinputpanel="false" position="absolute 596 164 811 304" autofittype="col">
  228. <Formats>
  229. <Format id="default">
  230. <Columns>
  231. <Column size="24"/>
  232. <Column size="172"/>
  233. <Column size="0"/>
  234. <Column size="0"/>
  235. <Column size="0"/>
  236. </Columns>
  237. <Rows>
  238. <Row size="24" band="head"/>
  239. <Row size="24"/>
  240. </Rows>
  241. <Band id="head">
  242. <Cell expr="expr:expr:chkval == 'Y' ? 1 : 0"/>
  243. <Cell col="1" text="환경유해성"/>
  244. <Cell col="2" text="matrcd"/>
  245. <Cell col="3" text="harmcls"/>
  246. <Cell col="4" text="harmcd"/>
  247. </Band>
  248. <Band id="body">
  249. <Cell displaytype="checkbox" edittype="checkbox" text="bind:chkval" expr="expr:expr:chkval == 'Y' ? 1 : 0"/>
  250. <Cell col="1" style="align:left middle;" text="bind:harmnm"/>
  251. <Cell col="2" text="bind:matrcd"/>
  252. <Cell col="3" text="bind:harmcls"/>
  253. <Cell col="4" text="bind:harmcd"/>
  254. </Band>
  255. </Format>
  256. </Formats>
  257. </Grid>
  258. <Radio id="rdo_sgnl" taborder="30" columncount="4" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 165 311 515 331">
  259. <Dataset id="innerdataset">
  260. <ColumnInfo>
  261. <Column id="codecolumn"/>
  262. <Column id="datacolumn"/>
  263. </ColumnInfo>
  264. <Rows>
  265. <Row>
  266. <Col id="codecolumn">위험</Col>
  267. <Col id="datacolumn">위험</Col>
  268. </Row>
  269. <Row>
  270. <Col id="codecolumn">경고</Col>
  271. <Col id="datacolumn">경고</Col>
  272. </Row>
  273. <Row>
  274. <Col id="codecolumn">해당없음</Col>
  275. <Col id="datacolumn">해당없음</Col>
  276. </Row>
  277. </Rows>
  278. </Dataset>
  279. </Radio>
  280. <CheckBox id="cbx_1" taborder="31" position="absolute 180 469 200 489" truevalue="Y" onclick="cbx_1_onclick"/>
  281. <CheckBox id="cbx_2" taborder="32" position="absolute 235 469 255 489" truevalue="Y" onclick="cbx_2_onclick"/>
  282. <CheckBox id="cbx_3" taborder="33" position="absolute 290 469 310 489" truevalue="Y" onclick="cbx_3_onclick"/>
  283. <CheckBox id="cbx_4" taborder="34" position="absolute 345 469 365 489" truevalue="Y" onclick="cbx_4_onclick"/>
  284. <CheckBox id="cbx_5" taborder="35" position="absolute 400 469 420 489" truevalue="Y" onclick="cbx_5_onclick"/>
  285. <CheckBox id="cbx_6" taborder="36" position="absolute 455 469 475 489" truevalue="Y" onclick="cbx_6_onclick"/>
  286. <CheckBox id="cbx_7" taborder="37" position="absolute 510 469 530 489" truevalue="Y" onclick="cbx_7_onclick"/>
  287. <CheckBox id="cbx_8" taborder="38" position="absolute 567 469 587 489" truevalue="Y" onclick="cbx_8_onclick"/>
  288. <CheckBox id="cbx_9" taborder="39" position="absolute 620 469 640 489" truevalue="Y" onclick="cbx_9_onclick"/>
  289. <Edit id="ipt_updpath" taborder="40" visible="false" position="absolute 430 336 530 355"/>
  290. </Layout>
  291. </Layouts>
  292. <Objects>
  293. <Dataset id="ds_main_matrinfo_alist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_matrinfo_alist_oncolumnchanged">
  294. <ColumnInfo>
  295. <Column id="chkval" type="STRING"/>
  296. <Column id="harmnm" type="STRING"/>
  297. <Column id="matrcd" type="STRING"/>
  298. <Column id="harmcls" type="STRING"/>
  299. <Column id="harmcd" type="STRING"/>
  300. </ColumnInfo>
  301. </Dataset>
  302. <Dataset id="ds_main_matrinfo_blist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_matrinfo_blist_oncolumnchanged">
  303. <ColumnInfo>
  304. <Column id="chkval" type="STRING"/>
  305. <Column id="harmnm" type="STRING"/>
  306. <Column id="matrcd" type="STRING"/>
  307. <Column id="harmcls" type="STRING"/>
  308. <Column id="harmcd" type="STRING"/>
  309. </ColumnInfo>
  310. </Dataset>
  311. <Dataset id="ds_main_matrinfo_clist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_matrinfo_clist_oncolumnchanged">
  312. <ColumnInfo>
  313. <Column id="chkval" type="STRING"/>
  314. <Column id="harmnm" type="STRING"/>
  315. <Column id="matrcd" type="STRING"/>
  316. <Column id="harmcls" type="STRING"/>
  317. <Column id="harmcd" type="STRING"/>
  318. </ColumnInfo>
  319. </Dataset>
  320. <Dataset id="ds_main_condition" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  321. <ColumnInfo>
  322. <Column id="matrcd" type="STRING" size="256"/>
  323. </ColumnInfo>
  324. <Rows>
  325. <Row/>
  326. </Rows>
  327. </Dataset>
  328. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  329. <Dataset id="ds_main_matrinfo_detail" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  330. <ColumnInfo>
  331. <Column id="status" type="STRING" size="256" sumtext="상태"/>
  332. <Column id="matrcd" type="STRING" size="256" sumtext="물질코드"/>
  333. <Column id="matrnm" type="STRING" size="256" sumtext="물질명"/>
  334. <Column id="prodcmpynm" type="STRING" size="256" sumtext="제조회사명"/>
  335. <Column id="harmcomp" type="STRING" size="256" sumtext="유해구성성분"/>
  336. <Column id="harmgrde" type="STRING" size="256" sumtext="유해등급"/>
  337. <Column id="sgnl" type="STRING" size="256" sumtext="신호어"/>
  338. <Column id="msdsfileyn" type="STRING" size="256" sumtext="msds파일여부"/>
  339. <Column id="msdsfilepath" type="STRING" size="256" sumtext="msds파일path"/>
  340. <Column id="msdsfilenm" type="STRING" size="256" sumtext="msds파일이름"/>
  341. <Column id="workfileyn" type="STRING" size="256" sumtext="작업공정별 작업요령 파일여부"/>
  342. <Column id="workfilepath" type="STRING" size="256" sumtext="작업공정별 작업요령 파일path"/>
  343. <Column id="workfilenm" type="STRING" size="256" sumtext="작업공정별 작업요령 파일이름"/>
  344. <Column id="warnyn1" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  345. <Column id="warnyn2" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  346. <Column id="warnyn3" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  347. <Column id="warnyn4" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  348. <Column id="warnyn5" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  349. <Column id="warnyn6" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  350. <Column id="warnyn7" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  351. <Column id="warnyn8" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  352. <Column id="warnyn9" type="STRING" size="256" sumtext="제품경고표시여부()"/>
  353. <Column id="envinspyn" type="STRING" size="256" sumtext="비고"/>
  354. <Column id="spcldiagyn" type="STRING" size="256" sumtext="비고"/>
  355. </ColumnInfo>
  356. </Dataset>
  357. <Dataset id="ds_filepath" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  358. <ColumnInfo>
  359. <Column id="instcd" type="STRING" size="256" sumtext="기관"/>
  360. <Column id="reqdd" type="STRING" size="256" sumtext="신청일자"/>
  361. <Column id="reqseqno" type="STRING" size="256" sumtext="신청순번"/>
  362. </ColumnInfo>
  363. <Rows>
  364. <Row>
  365. <Col id="instcd"/>
  366. <Col id="reqdd"/>
  367. <Col id="reqseqno"/>
  368. </Row>
  369. </Rows>
  370. </Dataset>
  371. <Dataset id="ds_attach" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  372. <ColumnInfo>
  373. <Column id="filenm" type="STRING" size="256" sumtext="파일명"/>
  374. <Column id="filedata" type="BLOB" size="256" sumtext="파일데이터"/>
  375. <Column id="filesize" type="STRING" size="256" sumtext="파일크기"/>
  376. <Column id="filetype" type="STRING" size="256" sumtext="파일종류"/>
  377. <Column id="attfilenm" type="STRING" size="256"/>
  378. </ColumnInfo>
  379. </Dataset>
  380. <Dataset id="ds_main_filepath" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  381. <ColumnInfo>
  382. <Column id="filepath" type="STRING" size="256" sumtext="파일경로"/>
  383. <Column id="filenm" type="STRING" size="256" sumtext="파일"/>
  384. </ColumnInfo>
  385. </Dataset>
  386. <Dataset id="ds_delete" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  387. <ColumnInfo>
  388. <Column id="filepath" type="STRING" size="256"/>
  389. <Column id="fiepath" type="STRING" size="256"/>
  390. </ColumnInfo>
  391. <Rows>
  392. <Row>
  393. <Col id="filepath"/>
  394. <Col id="fiepath"/>
  395. </Row>
  396. </Rows>
  397. </Dataset>
  398. <Dataset id="ds_attachfile" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  399. <ColumnInfo>
  400. <Column id="filedata" type="STRING" size="256" sumtext="파일데이터"/>
  401. </ColumnInfo>
  402. </Dataset>
  403. </Objects>
  404. <Bind>
  405. <BindItem id="item0" compid="opt_matrnm" propid="value" datasetid="ds_main_matrinfo_detail" columnid="matrnm"/>
  406. <BindItem id="item1" compid="opt_prodcmpynm" propid="value" datasetid="ds_main_matrinfo_detail" columnid="prodcmpynm"/>
  407. <BindItem id="item2" compid="ipt_harmcomp" propid="value" datasetid="ds_main_matrinfo_detail" columnid="harmcomp"/>
  408. <BindItem id="item3" compid="rdo_harmgrde" propid="value" datasetid="ds_main_matrinfo_detail" columnid="harmgrde"/>
  409. <BindItem id="item4" compid="rdo_sgnl" propid="value" datasetid="ds_main_matrinfo_detail" columnid="sgnl"/>
  410. <BindItem id="item5" compid="cmb_fileyn1" propid="value" datasetid="ds_main_matrinfo_detail" columnid="msdsfileyn"/>
  411. <BindItem id="item6" compid="cmb_fileyn2" propid="value" datasetid="ds_main_matrinfo_detail" columnid="workfileyn"/>
  412. <BindItem id="item7" compid="cbx_1" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn1"/>
  413. <BindItem id="item8" compid="cbx_2" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn2"/>
  414. <BindItem id="item9" compid="cbx_3" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn3"/>
  415. <BindItem id="item10" compid="cbx_4" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn4"/>
  416. <BindItem id="item11" compid="cbx_5" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn5"/>
  417. <BindItem id="item12" compid="cbx_6" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn6"/>
  418. <BindItem id="item13" compid="cbx_7" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn7"/>
  419. <BindItem id="item14" compid="cbx_8" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn8"/>
  420. <BindItem id="item15" compid="cbx_9" propid="value" datasetid="ds_main_matrinfo_detail" columnid="warnyn9"/>
  421. <BindItem id="item16" compid="rdo_envinspyn" propid="value" datasetid="ds_main_matrinfo_detail" columnid="envinspyn"/>
  422. <BindItem id="item17" compid="rdo_spcldiagyn" propid="value" datasetid="ds_main_matrinfo_detail" columnid="spcldiagyn"/>
  423. </Bind>
  424. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  425. * System Name :
  426. * Job Name :
  427. * Creator :
  428. * Make Date : 2017-06-19
  429. * Description :
  430. *---------------------------------------------------------------------------------------
  431. * Modify Date Modifier Modify Description
  432. *---------------------------------------------------------------------------------------
  433. * 2017-06-19 Live Converter TF->XP
  434. *
  435. *---------------------------------------------------------------------------------------
  436. ****************************************************************************************/
  437. include "com_commonxp::comm_main.xjs";
  438. include "mis_miscommonxp::MIS.xjs";
  439. include "mis_miscommonxp::RAC001.xjs";
  440. include "mis_miscommonxp::RSZ001.xjs";
  441. function SMRSM00200_oninit(obj:Form, e:InitEventInfo)
  442. {
  443. frmf_initForm(obj);
  444. }
  445. function SMRSM00200_onload(obj:Form, e:LoadEventInfo)
  446. {
  447. grdf_initGrid(grd_alist);
  448. grdf_initGrid(grd_blist);
  449. grdf_initGrid(grd_clist);
  450. try
  451. {
  452. ds_main_condition.copyData(arg_ds_popdata);
  453. }catch(e){}
  454. fOpenForm();
  455. }
  456. function fOpenForm()
  457. {
  458. ds_main_matrinfo_alist.clearData();
  459. ds_main_matrinfo_blist.clearData();
  460. ds_main_matrinfo_clist.clearData();
  461. fGetMatrInfo();//코드 종합정보 조회
  462. }
  463. //화학물질 종합정보 조회
  464. function fGetMatrInfo()
  465. {
  466. ds_send.copyData(ds_main_condition);
  467. var oParam = {};
  468. oParam.id = "TRRSM00201";
  469. oParam.service = "purcbaseapp.PurcBaseMngt";
  470. oParam.method = "reqGetMatrGenInfo";
  471. oParam.inds = "req=ds_send";
  472. oParam.outds = "ds_main_matrinfo_detail=detail ds_main_matrinfo_alist=alist ds_main_matrinfo_blist=blist ds_main_matrinfo_clist=clist";
  473. oParam.async = false;
  474. //oParam.callback = "cf_TRRSM00201";
  475. tranf_submit(oParam);
  476. if(ds_main_matrinfo_detail.getColumn(0, "msdsfileyn") != "Y")
  477. {
  478. btn_filedel1.enable = false;
  479. btn_filedown1.enable = false;
  480. }
  481. if(ds_main_matrinfo_detail.getColumn(0, "workfileyn") != "Y")
  482. {
  483. btn_filedel2.enable = false;
  484. btn_filedown2.enable = false;
  485. }
  486. }
  487. function ds_main_matrinfo_alist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  488. {
  489. if(e.columnid == "chkval")
  490. {
  491. obj.setColumn(e.row, "chkval", (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
  492. }
  493. }
  494. function ds_main_matrinfo_blist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  495. {
  496. if(e.columnid == "chkval")
  497. {
  498. obj.setColumn(e.row, "chkval", (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
  499. }
  500. }
  501. function ds_main_matrinfo_clist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  502. {
  503. if(e.columnid == "chkval")
  504. {
  505. obj.setColumn(e.row, "chkval", (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
  506. }
  507. }
  508. //조회버튼 클릭
  509. function grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  510. {
  511. fGetMatrInfo();
  512. }
  513. //물질안전보건자료 등록
  514. function btn_fileup1_onclick(obj:Button, e:ClickEventInfo)
  515. {
  516. fupload("1");
  517. if( !utlf_isNull(ds_main_filepath.getColumn(0, "filepath")))
  518. {
  519. ds_main_matrinfo_detail.setColumn(0, "msdsfileyn", "Y");
  520. btn_filedel1.enable = true;
  521. btn_filedown1.enable = true;
  522. }
  523. }
  524. //물질안전보건자료 삭제
  525. function btn_filedel1_onclick(obj:Button, e:ClickEventInfo)
  526. {
  527. fdelete("1");
  528. btn_filedel1.enable = false;
  529. btn_filedown1.enable = false;
  530. }
  531. //물질안전보건자료 다운
  532. function btn_filedown1_onclick(obj:Button, e:ClickEventInfo)
  533. {
  534. if(cmb_fileyn1.value == "Y")
  535. {
  536. fdown("1");
  537. }
  538. else
  539. {
  540. sysf_messageBox("내려받을 첨부 파일이 없습니다.", "E999", "");
  541. }
  542. }
  543. //작업 공정별 관리요령 등록
  544. function btn_fileup2_onclick(obj:Button, e:ClickEventInfo)
  545. {
  546. fupload("2");
  547. if( !utlf_isNull(ds_main_filepath.getColumn(0, "filepath")))
  548. {
  549. ds_main_matrinfo_detail.setColumn(0, "workfileyn", "Y");
  550. btn_filedel2.enable = true;
  551. btn_filedown2.enable = true;
  552. }
  553. }
  554. //작업 공정별 관리요령 삭제
  555. function btn_filedel2_onclick(obj:Button, e:ClickEventInfo)
  556. {
  557. fdelete("2");
  558. btn_filedel2.enable = false;
  559. btn_filedown2.enable = false;
  560. }
  561. function btn_filedown2_onclick(obj:Button, e:ClickEventInfo)
  562. {
  563. if(cmb_fileyn2.value == "Y")
  564. {
  565. fdown("2");
  566. }
  567. else
  568. {
  569. sysf_messageBox("내려받을 첨부 파일이 없습니다.", "E999", "");
  570. }
  571. }
  572. function fupload(flag)
  573. {
  574. var fd = new FileDialog();
  575. fd.filter = "All Files (*.*)|*.*";//"PDF Files(*.pdf)|*.pdf";
  576. var objVFileList = fd.open("FileOpen", FileDialog.LOAD); // 여러파일 선택\
  577. if( utlf_isNull(objVFileList)){
  578. return;
  579. }else{
  580. ipt_updpath.value = objVFileList.filename;
  581. ds_attach.clearData();
  582. var iRow = ds_attach.addRow();
  583. var vfile = dsf_writeFileToDs(objVFileList, ds_attach, iRow, "filedata");
  584. ds_attach.setColumn(iRow,"attfilenm",objVFileList.filename);
  585. ds_attach.setColumn(iRow,"filenm",objVFileList.filename);
  586. ds_attach.setColumn(iRow,"filesize",vfile.filesize);
  587. ds_attach.setColumn(iRow,"filetype",vfile.filetype);
  588. }
  589. if(flag == "1")
  590. {
  591. ds_main_matrinfo_detail.setColumn(0, "msdsfilenm", objVFileList.filename);
  592. var oParam = {};
  593. oParam.id = "TXRSC20203";
  594. oParam.service = "reqapp.ReqMngt";
  595. oParam.method = "reqExeSavePurcPrcsPresCondFile";
  596. oParam.inds = "filepath=ds_filepath attach=ds_attach";
  597. oParam.outds = "ds_main_filepath=filepath";
  598. oParam.async = false;
  599. //oParam.callback = "cf_TXRSC20203";
  600. tranf_submit(oParam);
  601. if( !utlf_isNull(ds_main_filepath.getColumn(0, "filepath")))
  602. {
  603. ds_main_matrinfo_detail.setColumn(0, "msdsfilepath", ds_main_filepath.getColumn(0, "filepath"));
  604. }
  605. }
  606. else if(flag == "2")
  607. {
  608. ds_main_matrinfo_detail.setColumn(0, "workfilenm", objVFileList.filename);
  609. var oParam = {};
  610. oParam.id = "TXRSC20203";
  611. oParam.service = "reqapp.ReqMngt";
  612. oParam.method = "reqExeSavePurcPrcsPresCondFile";
  613. oParam.inds = "filepath=ds_filepath attach=ds_attach";
  614. oParam.outds = "ds_main_filepath=filepath";
  615. oParam.async = false;
  616. //oParam.callback = "cf_TXRSC20203";
  617. tranf_submit(oParam);
  618. if( !utlf_isNull(ds_main_filepath.getColumn(0, "filepath")))
  619. {
  620. ds_main_matrinfo_detail.setColumn(0, "workfilepath", ds_main_filepath.getColumn(0, "filepath"));
  621. }
  622. }
  623. }
  624. function fdelete(flag)
  625. {
  626. if(flag == "1")
  627. {
  628. ds_delete.setColumn(0, "fiepath", ds_main_matrinfo_detail.getColumn(0, "msdsfilepath"));
  629. trace(ds_delete.saveXML())
  630. var oParam = {};
  631. oParam.id = "TXRSC20204";
  632. oParam.service = "reqapp.ReqMngt";
  633. oParam.method = "reqExeDeletePurcPrcsPresCondFile";
  634. oParam.inds = "req=ds_delete";
  635. oParam.outds = "";
  636. oParam.async = false;
  637. //oParam.callback = "cf_TXRSC20204";
  638. tranf_submit(oParam);
  639. ds_main_matrinfo_detail.setColumn(0, "msdsfileyn", "N");
  640. ds_main_matrinfo_detail.setColumn(0, "msdsfilepath", "");
  641. ds_main_matrinfo_detail.setColumn(0, "msdsfilenm", "");
  642. }
  643. else if (flag == "2")
  644. {
  645. ds_delete.setColumn(0, "fiepath", ds_main_matrinfo_detail.getColumn(0, "workfilepath"));
  646. var oParam = {};
  647. oParam.id = "TXRSC20204";
  648. oParam.service = "reqapp.ReqMngt";
  649. oParam.method = "reqExeDeletePurcPrcsPresCondFile";
  650. oParam.inds = "req=ds_delete";
  651. oParam.outds = "";
  652. oParam.async = false;
  653. //oParam.callback = "cf_TXRSC20204";
  654. tranf_submit(oParam);
  655. ds_main_matrinfo_detail.setColumn(0, "workfileyn", "N");
  656. ds_main_matrinfo_detail.setColumn(0, "workfilepath", "");
  657. ds_main_matrinfo_detail.setColumn(0, "workfilenm", "");
  658. }
  659. }
  660. function fdown(flag)
  661. {
  662. var filepath = "";
  663. var filenm = "";
  664. if(flag == "1")
  665. {
  666. filepath = ds_main_matrinfo_detail.getColumn(0, "msdsfilepath")
  667. filenm = ds_main_matrinfo_detail.getColumn(0, "msdsfilenm")
  668. }
  669. else if (flag == "2")
  670. {
  671. filepath = ds_main_matrinfo_detail.getColumn(0, "workfilepath")
  672. filenm = ds_main_matrinfo_detail.getColumn(0, "workfilenm")
  673. }
  674. // var localfile = fd.open("open", FileDialog.LOAD,"%%");
  675. // files.open(VirtualFile.openRead | VirtualFile.openBinary);
  676. // files.close();
  677. var fd = new FileDialog;
  678. var objVFile = fd.open("FileSave", FileDialog.SAVE, "%MYDOCUMENT%", filenm); // 단일 파일 선택
  679. if(!utlf_isNull(objVFile))
  680. {
  681. dsf_createDsRow("ds_tmep_filepath", [{col : "filepath", val : filepath}]);
  682. var oParam = {};
  683. oParam.id = "TRRWC03003";
  684. oParam.service = "paybaseinfomngtapp.PayBaseInfoMngt";
  685. oParam.method = "reqGetManualAtt";
  686. oParam.inds = "req=ds_tmep_filepath";
  687. oParam.outds = "ds_attachfile=attachfile";
  688. oParam.async = false;
  689. //oParam.callback = "cf_TRRWC03003";
  690. tranf_submit(oParam);
  691. var temp = dsf_readFileFromDs(objVFile.fullpath, ds_attachfile, 0, "filedata"); // 파일저장
  692. if(!utlf_isNull(temp)){
  693. var rtn = sysf_messageBox("파일을", "Q004");
  694. if( rtn == 6 )
  695. {
  696. system.execShell("\"" + objVFile.fullpath + "\"");
  697. }
  698. }
  699. }
  700. }
  701. //저장버튼
  702. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  703. {
  704. fClickSaveBtn();
  705. }
  706. // 저장버튼 클릭시 저장 수행 함수
  707. function fClickSaveBtn()
  708. {
  709. if(opt_matrnm.text.length == 0)
  710. {
  711. sysf_messageBox("화학물질이 지정되지 않았습니다. " + "\n" + "닫기 버튼을 누른 후 다시 여시기 바랍니다. ", "I999", "");
  712. return;
  713. }
  714. var oParam = {};
  715. oParam.id = "TXRSM00201";
  716. oParam.service = "purcbaseapp.PurcBaseMngt";
  717. oParam.method = "reqExeSaveMatrGen";
  718. oParam.inds = "detail=ds_main_matrinfo_detail:A alist=ds_main_matrinfo_alist:A blist=ds_main_matrinfo_blist:A clist=ds_main_matrinfo_clist:A";
  719. oParam.async = false;
  720. oParam.callback = "cf_TXRSM00201";
  721. tranf_submit(oParam);
  722. }
  723. function cf_TXRSM00201(sSvcId, nErrorCode, sErrorMsg)
  724. {
  725. if(nErrorCode < 0) return;
  726. else
  727. {
  728. fGetMatrInfo();
  729. sysf_messageBox("저장되었습니다. ", "I999", "");
  730. }
  731. }
  732. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  733. {
  734. this.close();
  735. }
  736. function cbx_1_onclick(obj:CheckBox, e:ClickEventInfo)
  737. {
  738. if( obj.value != "Y" ){
  739. ds_main_matrinfo_detail.setColumn(0, "warnyn1", "");
  740. }
  741. }
  742. function cbx_2_onclick(obj:CheckBox, e:ClickEventInfo)
  743. {
  744. if( obj.value != "Y" ){
  745. ds_main_matrinfo_detail.setColumn(0, "warnyn2", "");
  746. }
  747. }
  748. function cbx_3_onclick(obj:CheckBox, e:ClickEventInfo)
  749. {
  750. if( obj.value != "Y" ){
  751. ds_main_matrinfo_detail.setColumn(0, "warnyn3", "");
  752. }
  753. }
  754. function cbx_4_onclick(obj:CheckBox, e:ClickEventInfo)
  755. {
  756. if( obj.value != "Y" ){
  757. ds_main_matrinfo_detail.setColumn(0, "warnyn4", "");
  758. }
  759. }
  760. function cbx_5_onclick(obj:CheckBox, e:ClickEventInfo)
  761. {
  762. if( obj.value != "Y" ){
  763. ds_main_matrinfo_detail.setColumn(0, "warnyn5", "");
  764. }
  765. }
  766. function cbx_6_onclick(obj:CheckBox, e:ClickEventInfo)
  767. {
  768. if( obj.value != "Y" ){
  769. ds_main_matrinfo_detail.setColumn(0, "warnyn6", "");
  770. }
  771. }
  772. function cbx_7_onclick(obj:CheckBox, e:ClickEventInfo)
  773. {
  774. if( obj.value != "Y" ){
  775. ds_main_matrinfo_detail.setColumn(0, "warnyn7", "");
  776. }
  777. }
  778. function cbx_8_onclick(obj:CheckBox, e:ClickEventInfo)
  779. {
  780. if( obj.value != "Y" ){
  781. ds_main_matrinfo_detail.setColumn(0, "warnyn8", "");
  782. }
  783. }
  784. function cbx_9_onclick(obj:CheckBox, e:ClickEventInfo)
  785. {
  786. if( obj.value != "Y" ){
  787. ds_main_matrinfo_detail.setColumn(0, "warnyn9", "");
  788. }
  789. }
  790. ]]></Script>
  791. </Form>
  792. </FDL>