SMMNG02100_세탁물보유량관리.xfdl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMNG02100" position="absolute 0 0 780 480" titletext="보유량관리" oninit="SMMNG02100_oninit" onload="SMMNG02100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 775 25" id="grp_tle">
  8. <Layouts>
  9. <Layout>
  10. <Static text="보유량 관리" position="absolute 0 0 103 25" id="caption6" class="tit_1"/>
  11. </Layout>
  12. </Layouts>
  13. </Div>
  14. <Div position="absolute 0 60 775 480" id="grp_biz" scrollbars="autoboth">
  15. <Layouts>
  16. <Layout>
  17. <Static text="보유량관리" position="absolute 0 10 121 26" id="caption12" class="tit_2"/>
  18. <Button position="absolute 731 3 773 22" id="btn_sav" class="btn5" text="저장" onclick="grp_biz_btn_sav_onclick"/>
  19. <Grid position="absolute 0 30 775 415" id="grd_posslist" binddataset="ds_main_possinfo_posslist" onkeydown="grp_biz_grd_posslist_onkeydown" onenterdown="grp_biz_grd_posslist_onenterdown" autoenter="select" cellsizingtype="both" extendsizetype="row">
  20. <Formats>
  21. <Format id="default">
  22. <Columns>
  23. <Column size="25" band="left"/>
  24. <Column size="0"/>
  25. <Column size="226"/>
  26. <Column size="74"/>
  27. <Column size="100"/>
  28. <Column size="337"/>
  29. <Column size="0"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. </Columns>
  35. <Rows>
  36. <Row size="24" band="head"/>
  37. <Row size="24"/>
  38. </Rows>
  39. <Band id="head">
  40. <Cell/>
  41. <Cell col="1" text="물품코드"/>
  42. <Cell col="2" text="품목명"/>
  43. <Cell col="3" text="보유량"/>
  44. <Cell col="4" text="관리자"/>
  45. <Cell col="5" text="비고"/>
  46. <Cell col="6" text="기관번호"/>
  47. <Cell col="7" text="년월"/>
  48. <Cell col="8" text="품목코드"/>
  49. <Cell col="9" text="부서코드"/>
  50. <Cell col="10" text="caption1"/>
  51. </Band>
  52. <Band id="body">
  53. <Cell celltype="head"/>
  54. <Cell col="1" text="bind:ioflag"/>
  55. <Cell col="2" style="align:left middle;" text="bind:goodnm"/>
  56. <Cell col="3" displaytype="number" edittype="masknumber" style="align:left middle;" text="bind:posscnt" mask="#,##9" maskchar="_" editautoselect="true"/>
  57. <Cell col="4" style="align:left middle;" text="bind:fstrgstrnm"/>
  58. <Cell col="5" displaytype="text" edittype="textarea" style="background:white;background2:white;" text="bind:remark1" wordwrap="word" editautoselect="true" suppress="1" suppressalign="middle,over" suppressedit="false"/>
  59. <Cell col="6" text="bind:instcd"/>
  60. <Cell col="7" text="bind:possyymm"/>
  61. <Cell col="8" text="bind:goodcd"/>
  62. <Cell col="9" text="bind:deptcd"/>
  63. <Cell col="10" text="bind:fstrgstrid"/>
  64. </Band>
  65. </Format>
  66. </Formats>
  67. </Grid>
  68. <Shape position="absolute 1 26 775 32" linetype="horizontal" id="line5" class="line_10"/>
  69. <Radio position="absolute 220 5 610 20" id="rdo_gubuncd" enable="false" visible="false" columncount="2" codecolumn="codecolumn" datacolumn="datacolumn">
  70. <Dataset id="innerdataset">
  71. <ColumnInfo>
  72. <Column id="codecolumn"/>
  73. <Column id="datacolumn"/>
  74. </ColumnInfo>
  75. <Rows>
  76. <Row>
  77. <Col id="codecolumn">01</Col>
  78. <Col id="datacolumn">물품마스터</Col>
  79. </Row>
  80. <Row>
  81. <Col id="codecolumn">02</Col>
  82. <Col id="datacolumn">창고마스터</Col>
  83. </Row>
  84. </Rows>
  85. </Dataset>
  86. </Radio>
  87. </Layout>
  88. </Layouts>
  89. </Div>
  90. <Shape position="absolute 0 26 775 61" id="roundrect1" class="roundrect_search" type="roundrectangle"/>
  91. <Static text="부 서 명 :" position="absolute 435 34 523 51" id="caption2" class="search_name"/>
  92. <Static text="년월:" position="absolute 290 34 357 51" id="cap_csrreqdeptcd" class="search_name"/>
  93. <Button position="absolute 714 33 770 55" id="btn_search" class="btn1" taborder="2" text="조회" onclick="btn_search_onclick"/>
  94. <Calendar position="absolute 350 34 418 53" id="ipt_possyymm" class="input_default" mask="yyyy-mm" autoskip="true" autoselect="true" onchanged="ipt_possyymm_onchanged" dateformat="yyyy-MM" value="null" editformat="yyyy-MM"/>
  95. <Combo position="absolute 520 34 620 53" id="cmb_deptcd" enable="false" innerdataset="@ds_main_csrdeptlist" datacolumn="deptnm" codecolumn="deptcd" onitemchanged="cmb_deptcd_onitemchanged"/>
  96. <Shape position="absolute 702 31 708 56" linetype="vertical" id="line2" class="line_4"/>
  97. <Static text="기관코드 :" position="absolute 10 34 96 51" id="cap_instcd" class="search_name"/>
  98. <Edit readonly="true" position="absolute 100 34 275 53" align="align:center middle;" id="opt_instcdnm" class="output" style="align:center middle;"/>
  99. </Layout>
  100. </Layouts>
  101. <Objects>
  102. <Dataset id="ds_main_possinfo_posslist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_possinfo_posslist_oncolumnchanged">
  103. <ColumnInfo>
  104. <Column id="instcd" type="STRING" size="256"/>
  105. <Column id="goodcd" type="STRING" size="256"/>
  106. <Column id="goodnm" type="STRING" size="256"/>
  107. <Column id="posscnt" type="STRING" size="256"/>
  108. <Column id="possyymm" type="STRING" size="256"/>
  109. <Column id="deptcd" type="STRING" size="256"/>
  110. <Column id="ioflag" type="STRING" size="256"/>
  111. <Column id="remark1" type="STRING" size="256"/>
  112. <Column id="fstrgstrid" type="STRING" size="256"/>
  113. <Column id="fstrgstrnm" type="STRING" size="256"/>
  114. </ColumnInfo>
  115. <Rows>
  116. <Row>
  117. <Col id="instcd"/>
  118. <Col id="goodcd"/>
  119. <Col id="goodnm"/>
  120. <Col id="posscnt"/>
  121. <Col id="possyymm"/>
  122. <Col id="deptcd"/>
  123. <Col id="ioflag"/>
  124. <Col id="remark1"/>
  125. <Col id="fstrgstrid"/>
  126. <Col id="fstrgstrnm"/>
  127. </Row>
  128. </Rows>
  129. </Dataset>
  130. <Dataset id="ds_main_possinfo_csrdeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  131. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  132. <ColumnInfo>
  133. <Column id="possyymm" type="STRING" size="256"/>
  134. <Column id="deptcd" type="STRING" size="256"/>
  135. </ColumnInfo>
  136. <Rows>
  137. <Row/>
  138. </Rows>
  139. </Dataset>
  140. <Dataset id="ds_main_csrdeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  141. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  142. <ColumnInfo>
  143. <Column id="possyymm" type="STRING" size="256"/>
  144. <Column id="deptcd" type="STRING" size="256"/>
  145. <Column id="instcdnm" type="STRING" size="256"/>
  146. <Column id="gubuncd" type="STRING" size="256"/>
  147. </ColumnInfo>
  148. <Rows>
  149. <Row>
  150. <Col id="possyymm"/>
  151. <Col id="deptcd"/>
  152. <Col id="instcdnm"/>
  153. <Col id="gubuncd">01</Col>
  154. </Row>
  155. </Rows>
  156. </Dataset>
  157. <Dataset id="ds_init_csrdeptinfo_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  158. <Dataset id="ds_send_cdgrupid" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  159. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  160. <Dataset id="ds_send_savedata_posslist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  161. </Objects>
  162. <Bind>
  163. <BindItem id="item0" compid="grp_biz.rdo_gubuncd" propid="value" datasetid="ds_send" columnid="gubuncd"/>
  164. <BindItem id="item1" compid="ipt_possyymm" propid="value" datasetid="ds_main_cond" columnid="possyymm"/>
  165. <BindItem id="item2" compid="cmb_deptcd" propid="value" datasetid="ds_main_cond" columnid="deptcd"/>
  166. <BindItem id="item3" compid="opt_instcdnm" propid="value" datasetid="ds_send" columnid="instcdnm"/>
  167. </Bind>
  168. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  169. * System Name :
  170. * Job Name :
  171. * Creator :
  172. * Make Date : 2017-07-11
  173. * Description :
  174. *---------------------------------------------------------------------------------------
  175. * Modify Date Modifier Modify Description
  176. *---------------------------------------------------------------------------------------
  177. * 2017-07-11 Live Converter TF->XP
  178. *
  179. *---------------------------------------------------------------------------------------
  180. ****************************************************************************************/
  181. include "com_commonxp::comm_main.xjs";
  182. include "emr_carecomxp::CareCom.xjs";
  183. function SMMNG02100_oninit(obj:Form, e:InitEventInfo)
  184. {
  185. frmf_initForm(obj);
  186. }
  187. function SMMNG02100_onload(obj:Form, e:LoadEventInfo)
  188. {
  189. grdf_setRowTypeIcon(grp_biz.grd_posslist,0);
  190. fInitialize();
  191. }
  192. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  193. function fInitialize()
  194. {
  195. ds_main_cond.setColumn(0, "possyymm", utlf_getCurrentDate().substr(0,6) );
  196. ds_main_cond.setColumn(0, "deptcd" , sysf_getUserInfo("dutplcecd"));
  197. ds_send.setColumn(0, "instcdnm" , sysf_getUserInfo("dutplceinstnm")); //기관코드
  198. fGetHardCodeInfo("ds_send_cdgrupid", "ds_init_csrdeptinfo_codelist", "160", ""); // 중앙공급실 부서코드 조회
  199. var userdutplcecd = ds_init_csrdeptinfo_codelist.lookup("cdid", sysf_getUserInfo("dutplcecd"), "cdid");
  200. if (!utlf_isNull(userdutplcecd)) {
  201. cmb_deptcd.enable = true;
  202. } else {
  203. ds_main_cond.setColumn(0, "deptcd", sysf_getUserInfo("dutplcecd"));
  204. cmb_deptcd.enable = false; //중앙공급실이 아닐 경우 부서선택 숨김
  205. }
  206. dsf_makeValue(ds_send_reqdata,"instcd", "string", sysf_getUserInfo("dutplceinstcd"));
  207. dsf_makeValue(ds_send_reqdata,"useyn", "string", "Y");
  208. var oParam = {};
  209. oParam.id = "TRMNG00402";
  210. oParam.service = "csrapp.CsrMngt";
  211. oParam.method = "getCsrDeptList";
  212. oParam.inds = "req=ds_send_reqdata";
  213. oParam.outds = "ds_main_csrdeptlist=csrdeptlist";
  214. oParam.async = false;
  215. tranf_submit(oParam);
  216. fSearch();
  217. }
  218. function fSearch() {
  219. ds_send.setColumn(0, "possyymm" , ds_main_cond.getColumn(0, "possyymm"));
  220. ds_send.setColumn(0, "deptcd" , ds_main_cond.getColumn(0, "deptcd"));
  221. ds_send.setColumn(0, "gubuncd" , ds_send.getColumn(0, "gubuncd")); //마스터코드구분 01:물품마스터02:창고마스터
  222. var oParam = {};
  223. oParam.id = "TRMNG02101";
  224. oParam.service = "csrapp.CsrDryMngt";
  225. oParam.method = "reqGetPossList";
  226. oParam.inds = "req=ds_send";
  227. oParam.outds = "ds_main_possinfo_posslist=posslist";
  228. oParam.async = false;
  229. tranf_submit(oParam);
  230. var ioflag;
  231. for(var i = 0; i < ds_main_possinfo_posslist.rowcount; i++) {
  232. ioflag = grp_biz.grd_posslist.getCellValue(i, grp_biz.grd_posslist.getBindCellIndex("body","ioflag"));
  233. if(ioflag == "N") {
  234. ds_main_possinfo_posslist.updatecontrol =false;
  235. ds_main_possinfo_posslist.setRowType(i, "I");
  236. ds_main_possinfo_posslist.updatecontrol =true;
  237. }
  238. }
  239. /*
  240. grd_posslist.mergecol(1)=false;
  241. grd_posslist.mergecol(2)=false;
  242. grd_posslist.mergecol(3)=false;
  243. grd_posslist.mergecol(4)=false;
  244. grd_posslist.mergecells="bycol";
  245. */
  246. }
  247. function grp_biz_btn_sav_onclick(obj:Button, e:ClickEventInfo)
  248. {
  249. var updtdata = grdf_getGridUpdateData(grp_biz.grd_posslist);
  250. grdf_setStatusColumn(updtdata, "status");
  251. dsf_createDs("ds_send_savedata_posslist");
  252. ds_send_savedata_posslist.copyData(updtdata, true);
  253. var oParam = {};
  254. oParam.id = "TXMNG02101";
  255. oParam.service = "csrapp.CsrDryMngt";
  256. oParam.method = "reqExePossList";
  257. oParam.inds = "req=ds_send_savedata_posslist";
  258. oParam.outds = "";
  259. oParam.async = false;
  260. tranf_submit(oParam);
  261. fSearch();
  262. }
  263. function ds_main_possinfo_posslist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  264. {
  265. var remark1 = "";
  266. if(e.columnid == "remark1" || e.columnid == "posscnt") {
  267. remark1 = grp_biz.grd_posslist.getCellValue(ds_main_possinfo_posslist.rowposition, grp_biz.grd_posslist.getBindCellIndex("body","remark1"));
  268. for(var i = 0; i < ds_main_possinfo_posslist.rowcount; i++) {
  269. if ( ds_main_possinfo_posslist.getRowType(i) == 2 ) {
  270. ds_main_possinfo_posslist.updatecontrol =false;
  271. ds_main_possinfo_posslist.setRowType(i, "I");
  272. ds_main_possinfo_posslist.updatecontrol =true;
  273. } else if ( ds_main_possinfo_posslist.getRowType(i) == 4 || ds_main_possinfo_posslist.getRowType(i) == 1) {
  274. ds_main_possinfo_posslist.updatecontrol =false;
  275. ds_main_possinfo_posslist.setRowType(i, "U");
  276. ds_main_possinfo_posslist.updatecontrol =true;
  277. }
  278. ds_main_possinfo_posslist.setColumn(i, "remark1", remark1);
  279. }
  280. }
  281. }
  282. function grp_biz_grd_posslist_onkeydown(obj:Grid, e:KeyEventInfo)
  283. {
  284. }
  285. function grp_biz_grd_posslist_onenterdown(obj:Grid, e:GridEditEventInfo)
  286. {
  287. var row = ds_main_possinfo_posslist.rowposition;
  288. if(e.col == grp_biz.grd_posslist.getBindCellIndex("body","posscnt")) { //불출수량이나 미불출수량 엔터시
  289. if(ds_main_possinfo_posslist.rowposition + 1 < ds_main_possinfo_posslist.rowcount) {
  290. ds_main_possinfo_posslist.rowposition = row + 1;
  291. }
  292. }
  293. }
  294. function btn_search_onclick(obj:Button, e:ClickEventInfo)
  295. {
  296. fSearch();
  297. }
  298. function ipt_possyymm_onchanged(obj:Calendar, e:ChangeEventInfo)
  299. {
  300. ds_main_cond.setColumn(0, "possyymm", String(ipt_possyymm.value).substring(0, 6));
  301. fSearch();
  302. }
  303. function cmb_deptcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  304. {
  305. fSearch();
  306. }
  307. ]]></Script>
  308. </Form>
  309. </FDL>