SMMNG02700_세탁물이불보유현황.xfdl 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMNG02700" position="absolute 0 0 729 638" titletext="부서별 이불 보유량현황" oninit="SMMNG02700_oninit" onload="SMMNG02700_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 720 25" id="grp_tle">
  8. <Layouts>
  9. <Layout>
  10. <Static text="부서별 이불 보유 현황" position="absolute 0 0 163 25" id="caption6" class="tit_1"/>
  11. </Layout>
  12. </Layouts>
  13. </Div>
  14. <Div position="absolute 0 63 725 513" id="grp_biz" scrollbars="autoboth">
  15. <Layouts>
  16. <Layout>
  17. <Static text="부서별 이불 보유 현황" position="absolute 5 9 158 25" id="caption12" class="tit_2" anchor="default"/>
  18. <Shape position="absolute 5 26 715 32" linetype="horizontal" id="line1" class="line_10" anchor="default"/>
  19. <Button position="absolute 678 3 720 22" id="btn_sav" class="btn5" text="저장" anchor="default" onclick="grp_biz_btn_sav_onclick"/>
  20. <Grid position="absolute 5 30 715 450" id="grd_pnmtlist" binddataset="ds_main_pnmtinfo_pnmtlist" anchor="default" cellsizingtype="both" extendsizetype="row">
  21. <Formats>
  22. <Format id="default">
  23. <Columns>
  24. <Column size="25" band="left"/>
  25. <Column size="0"/>
  26. <Column size="173"/>
  27. <Column size="74"/>
  28. <Column size="100"/>
  29. <Column size="323"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="0"/>
  36. </Columns>
  37. <Rows>
  38. <Row size="24" band="head"/>
  39. <Row size="24"/>
  40. </Rows>
  41. <Band id="head">
  42. <Cell/>
  43. <Cell col="1" text="물품코드"/>
  44. <Cell col="2" text="부서명"/>
  45. <Cell col="3" text="보유량"/>
  46. <Cell col="4" text="관리자"/>
  47. <Cell col="5" text="비고"/>
  48. <Cell col="6" text="기관번호"/>
  49. <Cell col="7" text="년월"/>
  50. <Cell col="8" text="부서코드"/>
  51. <Cell col="9" text="현부서코드"/>
  52. <Cell col="10" text="관리자이름"/>
  53. <Cell col="11" text="caption1"/>
  54. </Band>
  55. <Band id="body">
  56. <Cell celltype="head"/>
  57. <Cell col="1" text="bind:ioflag"/>
  58. <Cell col="2" text="bind:deptnm"/>
  59. <Cell col="3" displaytype="number" style="align:left;" text="bind:pnmtcnt" mask="#,##9"/>
  60. <Cell col="4" text="bind:fstrgstrnm"/>
  61. <Cell col="5" displaytype="text" edittype="text" text="bind:remark1"/>
  62. <Cell col="6" text="bind:instcd"/>
  63. <Cell col="7" text="bind:pnmtyymm"/>
  64. <Cell col="8" text="bind:deptcd"/>
  65. <Cell col="9" text="bind:pnmtdeptcd"/>
  66. <Cell col="10" text="bind:fstrgstrid"/>
  67. <Cell col="11" text="bind:remark2"/>
  68. </Band>
  69. </Format>
  70. </Formats>
  71. </Grid>
  72. <Radio position="absolute 220 5 610 20" id="rdo_gubuncd" enable="false" visible="false" columncount="2" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  73. <Dataset id="innerdataset">
  74. <ColumnInfo>
  75. <Column id="codecolumn"/>
  76. <Column id="datacolumn"/>
  77. </ColumnInfo>
  78. <Rows>
  79. <Row>
  80. <Col id="codecolumn">01</Col>
  81. <Col id="datacolumn">물품마스터</Col>
  82. </Row>
  83. <Row>
  84. <Col id="codecolumn">02</Col>
  85. <Col id="datacolumn">창고마스터</Col>
  86. </Row>
  87. </Rows>
  88. </Dataset>
  89. </Radio>
  90. </Layout>
  91. </Layouts>
  92. </Div>
  93. <Shape position="absolute 0 25 725 60" id="roundrect1" class="roundrect_search" type="roundrectangle"/>
  94. <Static text="년월:" position="absolute 15 35 82 52" id="cap_csrreqdeptcd" class="search_name"/>
  95. <Button position="absolute 545 32 601 54" id="btn_search" class="btn1" taborder="2" text="조회" onclick="btn_search_onclick"/>
  96. <Calendar position="absolute 77 33 145 52" id="ipt_pnmtyymm" class="input_default" mask="yyyy-mm" autoskip="true" autoselect="true" onchanged="ipt_pnmtyymm_onchanged" dateformat="yyyy-MM" value="null" editformat="yyyy-MM"/>
  97. <Shape position="absolute 532 30 538 55" linetype="vertical" id="line2" class="line_4"/>
  98. <Button position="absolute 605 32 661 54" id="button3" class="btn7" text="엑셀" onclick="button3_onclick"/>
  99. <Button position="absolute 665 32 721 54" id="btn_prt" class="btn6" text="출력" onclick="btn_prt_onclick"/>
  100. <TextArea position="absolute 5 533 715 630" id="txt_remark2" wordwrap="word"/>
  101. <Static text="비고" position="absolute 5 515 70 531" id="caption1" class="tit_2"/>
  102. </Layout>
  103. </Layouts>
  104. <Objects>
  105. <Dataset id="ds_main_pnmtinfo_pnmtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_pnmtinfo_pnmtlist_oncolumnchanged">
  106. <ColumnInfo>
  107. <Column id="instcd" type="STRING" size="256"/>
  108. <Column id="deptnm" type="STRING" size="256"/>
  109. <Column id="pnmtcnt" type="STRING" size="256"/>
  110. <Column id="pnmtyymm" type="STRING" size="256"/>
  111. <Column id="deptcd" type="STRING" size="256"/>
  112. <Column id="ioflag" type="STRING" size="256"/>
  113. <Column id="remark1" type="STRING" size="256"/>
  114. <Column id="fstrgstrid" type="STRING" size="256"/>
  115. <Column id="pnmtdeptcd" type="STRING" size="256"/>
  116. <Column id="remark2" type="STRING" size="256"/>
  117. <Column id="fstrgstrnm" type="STRING" size="256"/>
  118. </ColumnInfo>
  119. <Rows>
  120. <Row>
  121. <Col id="instcd"/>
  122. <Col id="deptnm"/>
  123. <Col id="pnmtcnt"/>
  124. <Col id="pnmtyymm"/>
  125. <Col id="deptcd"/>
  126. <Col id="ioflag"/>
  127. <Col id="remark1"/>
  128. <Col id="fstrgstrid"/>
  129. <Col id="pnmtdeptcd"/>
  130. <Col id="remark2"/>
  131. <Col id="fstrgstrnm"/>
  132. </Row>
  133. </Rows>
  134. </Dataset>
  135. <Dataset id="ds_main_pnmtinfo_csrdeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  136. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  137. <ColumnInfo>
  138. <Column id="pnmtyymm" type="STRING" size="256"/>
  139. <Column id="deptcd" type="STRING" size="256"/>
  140. </ColumnInfo>
  141. <Rows>
  142. <Row/>
  143. </Rows>
  144. </Dataset>
  145. <Dataset id="ds_main_csrdeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  146. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  147. <ColumnInfo>
  148. <Column id="pnmtyymm" type="STRING" size="256"/>
  149. <Column id="pnmtdeptcd" type="STRING" size="256"/>
  150. <Column id="gubuncd" type="STRING" size="256"/>
  151. </ColumnInfo>
  152. <Rows>
  153. <Row>
  154. <Col id="gubuncd">01</Col>
  155. </Row>
  156. </Rows>
  157. </Dataset>
  158. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  159. <Dataset id="ds_send_report_pnmtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  160. </Objects>
  161. <Bind>
  162. <BindItem id="item0" compid="grp_biz.rdo_gubuncd" propid="value" datasetid="ds_send" columnid="gubuncd"/>
  163. <BindItem id="item1" compid="ipt_pnmtyymm" propid="value" datasetid="ds_main_cond" columnid="pnmtyymm"/>
  164. <BindItem id="item2" compid="txt_remark2" propid="value" datasetid="ds_main_pnmtinfo_pnmtlist" columnid="remark2"/>
  165. </Bind>
  166. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  167. * System Name :
  168. * Job Name :
  169. * Creator :
  170. * Make Date : 2017-07-11
  171. * Description :
  172. *---------------------------------------------------------------------------------------
  173. * Modify Date Modifier Modify Description
  174. *---------------------------------------------------------------------------------------
  175. * 2017-07-11 Live Converter TF->XP
  176. *
  177. *---------------------------------------------------------------------------------------
  178. ****************************************************************************************/
  179. include "com_commonxp::comm_main.xjs";
  180. function SMMNG02700_oninit(obj:Form, e:InitEventInfo)
  181. {
  182. frmf_initForm(obj);
  183. }
  184. function SMMNG02700_onload(obj:Form, e:LoadEventInfo)
  185. {
  186. grdf_setRowTypeIcon(grp_biz.grd_pnmtlist,0);
  187. fInitialize();
  188. }
  189. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  190. function fInitialize()
  191. {
  192. ds_main_cond.setColumn(0, "pnmtyymm", utlf_getCurrentDate().substr(0,6));
  193. dsf_makeValue(ds_send_reqdata,"instcd" , "string", sysf_getUserInfo("dutplceinstcd"));
  194. dsf_makeValue(ds_send_reqdata,"useyn" , "string", "Y");
  195. var oParam = {};
  196. oParam.id = "TRMNG00402";
  197. oParam.service = "csrapp.CsrMngt";
  198. oParam.method = "getCsrDeptList";
  199. oParam.inds = "req=ds_send_reqdata";
  200. oParam.outds = "ds_main_csrdeptlist=csrdeptlist";
  201. oParam.async = false;
  202. tranf_submit(oParam);
  203. fSearch();
  204. }
  205. function fSearch() {
  206. ds_send.setColumn(0, "pnmtyymm", ds_main_cond.getColumn(0, "pnmtyymm"));
  207. ds_send.setColumn(0, "pnmtdeptcd", "0000000000"); //컬럼삭제하여도됨 소스수정필요
  208. ds_send.setColumn(0, "gubuncd", ds_send.getColumn(0, "gubuncd")); //마스터코드구분 01:물품마스터02:창고마스터
  209. var oParam = {};
  210. oParam.id = "TRMNG02101";
  211. oParam.service = "csrapp.CsrDryMngt";
  212. oParam.method = "reqGetPnmtList";
  213. oParam.inds = "req=ds_send";
  214. oParam.outds = "ds_main_pnmtinfo_pnmtlist=pnmtlist";
  215. oParam.async = false;
  216. tranf_submit(oParam);
  217. var ioflag;
  218. for(var i = 0; i < ds_main_pnmtinfo_pnmtlist.rowcount; i++) {
  219. ioflag = grp_biz.grd_pnmtlist.getCellValue(i, grp_biz.grd_pnmtlist.getBindCellIndex("body","ioflag"));
  220. if(ioflag == "N") {
  221. ds_main_pnmtinfo_pnmtlist.updatecontrol = false;
  222. ds_main_pnmtinfo_pnmtlist.enableevent = false;
  223. ds_main_pnmtinfo_pnmtlist.setRowType(i, "I");
  224. ds_main_pnmtinfo_pnmtlist.enableevent = true;
  225. ds_main_pnmtinfo_pnmtlist.updatecontrol = true;
  226. ds_main_pnmtinfo_pnmtlist.setColumn(i, "fstrgstrid", sysf_getUserInfo("userid"));
  227. ds_main_pnmtinfo_pnmtlist.setColumn(i, "fstrgstrnm", sysf_getUserInfo("usernm"));
  228. }
  229. }
  230. }
  231. function grp_biz_btn_sav_onclick(obj:Button, e:ClickEventInfo)
  232. {
  233. var updtdata = grdf_getGridUpdateData(grp_biz.grd_pnmtlist);
  234. grdf_setStatusColumn(updtdata, "status");
  235. dsf_createDs("ds_send_savedata_pnmtlist");
  236. ds_send_savedata_pnmtlist.copyData(updtdata, true);
  237. var oParam = {};
  238. oParam.id = "TXMNG02701";
  239. oParam.service = "csrapp.CsrDryMngt";
  240. oParam.method = "reqExePnmtList";
  241. oParam.inds = "req=ds_send_savedata_pnmtlist";
  242. oParam.outds = "";
  243. oParam.async = false;
  244. tranf_submit(oParam);
  245. fSearch();
  246. }
  247. function btn_search_onclick(obj:Button, e:ClickEventInfo)
  248. {
  249. fSearch();
  250. }
  251. function ipt_pnmtyymm_onchanged(obj:Calendar, e:ChangeEventInfo)
  252. {
  253. ds_main_cond.setColumn(0, "pnmtyymm", utlf_transNullToEmpty(e.postvalue+"").substr(0, 6));
  254. fSearch();
  255. }
  256. function button3_onclick(obj:Button, e:ClickEventInfo)
  257. {
  258. if (changeSavedataChk() == true) {
  259. grdf_exportExcel(grp_biz.grd_pnmtlist, "세탁물이불보유현황", "sheetname1" , true, "" , "" , true);
  260. }
  261. }
  262. function btn_prt_onclick(obj:Button, e:ClickEventInfo)
  263. {
  264. fPrintRex();
  265. }
  266. function fPrintRex() {
  267. //
  268. if (changeSavedataChk() == true) {
  269. dsf_createDs("ds_send_report_pnmtlist");
  270. ds_send_report_pnmtlist.copyData(ds_main_pnmtinfo_pnmtlist);
  271. //미리보기출력
  272. var objDOM = rptf_createDOM();
  273. rptf_setNodeListToDOM(objDOM, "root/main/pnmtinfo/pnmtlist", ds_send_report_pnmtlist); // 데이터셋 1
  274. var objParam = new Object();
  275. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  276. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  277. rptf_exeReportPreview30(["RPMNG02700"],[objParam], option);
  278. }
  279. }
  280. function changeSavedataChk() {
  281. var updtdata = grdf_getGridUpdateData(grp_biz.grd_pnmtlist);
  282. if (updtdata.rowcount == 0){
  283. return true;
  284. } else {
  285. sysf_messageBox("입력된 정보가 있어서 출력할 수 없습니다.", "E999");
  286. return false;
  287. }
  288. }
  289. function ds_main_pnmtinfo_pnmtlist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  290. {
  291. if(e.columnid =="remark2"){
  292. var remark2 = "";
  293. remark2 = ds_main_pnmtinfo_pnmtlist.getColumn(0, "remark2");
  294. for(var i = 0; i < ds_main_pnmtinfo_pnmtlist.rowcount; i++) {
  295. if (ds_main_pnmtinfo_pnmtlist.getRowType(i) == "2" ) {
  296. ds_main_pnmtinfo_pnmtlist.updatecontrol = false;
  297. ds_main_pnmtinfo_pnmtlist.enableevent = false;
  298. ds_main_pnmtinfo_pnmtlist.setRowType(i, "I");
  299. ds_main_pnmtinfo_pnmtlist.enableevent = true;
  300. ds_main_pnmtinfo_pnmtlist.updatecontrol = true;
  301. } else if (ds_main_pnmtinfo_pnmtlist.getRowType(i) == "1" || ds_main_pnmtinfo_pnmtlist.getRowType(i) == "4") {
  302. ds_main_pnmtinfo_pnmtlist.updatecontrol = false;
  303. ds_main_pnmtinfo_pnmtlist.enableevent = false;
  304. ds_main_pnmtinfo_pnmtlist.setRowType(i, "U");
  305. ds_main_pnmtinfo_pnmtlist.enableevent = true;
  306. ds_main_pnmtinfo_pnmtlist.updatecontrol = true;
  307. }
  308. ds_main_pnmtinfo_pnmtlist.setColumn(i, "remark2", remark2);
  309. }
  310. }
  311. }
  312. ]]></Script>
  313. </Form>
  314. </FDL>