SMRSM01400_물류기준코드관리.xfdl 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRAD09900" position="absolute 0 0 875 572" titletext="기준코드관리" oninit="SMRAD09900_oninit" onload="SMRAD09900_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="Div00" taborder="1" position="absolute 0 25 867 60" class="div_SA"/>
  8. <Button position="absolute 797 31 853 53" id="btn_sea" class="btn1" text="조회" onclick="btn_sea_onclick"/>
  9. <Shape position="absolute 684 31 690 53" linetype="vertical" id="line6"/>
  10. <Shape position="absolute 3 87 868 93" linetype="horizontal" id="line7" class="line_10"/>
  11. <Grid position="absolute 3 92 870 542" id="datagrid1" binddataset="ds_main_codeinfo_codelist" autoenter="select" autosizingtype="row" extendsizetype="row">
  12. <Formats>
  13. <Format id="default">
  14. <Columns>
  15. <Column size="24" band="left"/>
  16. <Column size="0"/>
  17. <Column size="50"/>
  18. <Column size="80"/>
  19. <Column size="80"/>
  20. <Column size="425"/>
  21. <Column size="56"/>
  22. <Column size="58"/>
  23. <Column size="65"/>
  24. <Column size="0"/>
  25. <Column size="86"/>
  26. </Columns>
  27. <Rows>
  28. <Row size="24" band="head"/>
  29. <Row size="24"/>
  30. </Rows>
  31. <Band id="head">
  32. <Cell/>
  33. <Cell col="1" text="비고"/>
  34. <Cell col="2" text="코드"/>
  35. <Cell col="3" text="기간(FROM)"/>
  36. <Cell col="4" text="기간(TO)"/>
  37. <Cell col="5" text="내용"/>
  38. <Cell col="6" text="사용여부"/>
  39. <Cell col="7" text="출력순서"/>
  40. <Cell col="8" text="그룹ID"/>
  41. <Cell col="9" text="구분"/>
  42. <Cell col="10" text="비고"/>
  43. </Band>
  44. <Band id="body">
  45. <Cell celltype="head"/>
  46. <Cell col="1" text="bind:cmt1"/>
  47. <Cell col="2" displaytype="text" edittype="none" style="align:center;" text="bind:cdid" editautoselect="true" enable="false"/>
  48. <Cell col="3" displaytype="date" edittype="date" style="align:center;" text="bind:valifromdd" wordwrap="word" editautoselect="true" calendardisplaynulltype="none"/>
  49. <Cell col="4" displaytype="date" edittype="date" text="bind:valitodd" wordwrap="word" editautoselect="true" calendardisplaynulltype="none" autosizerow="limitmin"/>
  50. <Cell col="5" displaytype="text" edittype="textarea" text="bind:detldesc"/>
  51. <Cell col="6" displaytype="combo" edittype="combo" style="align:center middle;padding:1 2 1 2;" text="bind:useyn" combodataset="ds_cbo_useyn" combocodecol="value" combodatacol="label"/>
  52. <Cell col="7" displaytype="number" edittype="masknumber" style="align:center;" text="bind:dispseq" mask="#" maskchar=" " editautoselect="true"/>
  53. <Cell col="8" text="bind:cdgrupid"/>
  54. <Cell col="9" text="bind:cdnm"/>
  55. <Cell col="10" displaytype="text" edittype="text" style="align:center middle;" text="bind:cmt2"/>
  56. </Band>
  57. </Format>
  58. </Formats>
  59. </Grid>
  60. <Static text="코드별 상세정보" position="absolute 3 71 119 87" id="caption4" class="tit_2"/>
  61. <Button position="absolute 759 68 812 87" id="btn_grdadd" class="btn2" text="행추가" onclick="btn_grdadd_onclick"/>
  62. <Button position="absolute 814 68 867 87" id="btn_grddel" class="btn2" text="행삭제" onclick="btn_grddel_onclick"/>
  63. <Button position="absolute 704 68 757 87" id="button27" class="btn2" visible="false" text="행복사" onclick="button27_onclick"/>
  64. <Button position="absolute 816 547 872 569" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
  65. <Static text="구분 :" position="absolute 24 33 77 50" id="caption2" class="search_name"/>
  66. <Combo position="absolute 76 32 385 51" id="cmb_gubun" codecolumn="cdgrupid" datacolumn="cdnm" innerdataset="@ds_resultcdnm"/>
  67. <Static id="caption1" text="물류팀 기준코드관리" class="tit_1" position="absolute 0 0 170 25"/>
  68. </Layout>
  69. </Layouts>
  70. <Objects>
  71. <Dataset id="ds_cbo_useyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  72. <ColumnInfo>
  73. <Column id="label" type="STRING" size="256"/>
  74. <Column id="value" type="STRING" size="256"/>
  75. </ColumnInfo>
  76. <Rows>
  77. <Row>
  78. <Col id="label">사용</Col>
  79. <Col id="value">Y</Col>
  80. </Row>
  81. <Row>
  82. <Col id="label">사용안함</Col>
  83. <Col id="value">N</Col>
  84. </Row>
  85. </Rows>
  86. </Dataset>
  87. <Dataset id="ds_main_codeinfo_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  88. <ColumnInfo>
  89. <Column id="cmt1" type="STRING" size="256"/>
  90. <Column id="cdid" type="STRING" size="256"/>
  91. <Column id="valifromdd" type="STRING" size="256"/>
  92. <Column id="valitodd" type="STRING" size="256"/>
  93. <Column id="detldesc" type="STRING" size="256"/>
  94. <Column id="useyn" type="STRING" size="256"/>
  95. <Column id="dispseq" type="STRING" size="256"/>
  96. <Column id="cdgrupid" type="STRING" size="256"/>
  97. <Column id="instcd" type="STRING" size="256"/>
  98. <Column id="cdnm" type="STRING" size="256"/>
  99. <Column id="cmt2" type="STRING" size="256"/>
  100. </ColumnInfo>
  101. <Rows>
  102. <Row>
  103. <Col id="cmt1"/>
  104. <Col id="cdid"/>
  105. <Col id="valifromdd"/>
  106. <Col id="valitodd"/>
  107. <Col id="detldesc"/>
  108. <Col id="useyn"/>
  109. <Col id="dispseq"/>
  110. <Col id="cdgrupid"/>
  111. </Row>
  112. </Rows>
  113. </Dataset>
  114. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_reqdata_oncolumnchanged">
  115. <ColumnInfo>
  116. <Column id="instcd" type="STRING" size="256"/>
  117. <Column id="cdgrupid" type="STRING" size="256"/>
  118. <Column id="cdnm" type="STRING" size="256"/>
  119. <Column id="scrnid" type="STRING" size="256"/>
  120. </ColumnInfo>
  121. <Rows>
  122. <Row>
  123. <Col id="instcd"/>
  124. </Row>
  125. </Rows>
  126. </Dataset>
  127. <Dataset id="ds_senddata_execdata_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  128. <Dataset id="ds_popdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  129. <ColumnInfo>
  130. <Column id="cdgrupid" type="STRING" size="256"/>
  131. </ColumnInfo>
  132. <Rows>
  133. <Row>
  134. <Col id="cdgrupid"/>
  135. </Row>
  136. </Rows>
  137. </Dataset>
  138. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  139. <Dataset id="ds_resultcdnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  140. <ColumnInfo>
  141. <Column id="cdgrupid" type="STRING" size="256"/>
  142. <Column id="cdnm" type="STRING" size="256"/>
  143. </ColumnInfo>
  144. </Dataset>
  145. <Dataset id="ds_send_save_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  146. </Objects>
  147. <Bind>
  148. <BindItem id="item0" compid="cmb_gubun" propid="value" datasetid="ds_send_reqdata" columnid="cdgrupid"/>
  149. <BindItem id="item1" compid="cmb_gubun" propid="text" datasetid="ds_send_reqdata" columnid="cdnm"/>
  150. </Bind>
  151. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  152. * System Name :
  153. * Job Name :
  154. * Creator : 김금련
  155. * Make Date : 2019-05-02
  156. * Description :
  157. ****************************************************************************************/
  158. include "com_commonxp::comm_main.xjs";
  159. include "mis_miscommonxp::MIS.xjs";
  160. var arErrorCode = new HashArray();
  161. function SMRAD09900_oninit(obj:Form, e:InitEventInfo)
  162. {
  163. grdf_setRowTypeIcon(datagrid1, 0);
  164. frmf_initForm(obj); //폼 초기화
  165. }
  166. function btn_sea_onclick(obj:Button, e:ClickEventInfo)
  167. {
  168. readfunc();
  169. }
  170. function readfunc(){ // 해당 조건에 대한 사용자 권한내역을 조회한다. cdgrupid
  171. // if (utlf_isNull(ds_send_reqdata.getColumn(0, "cdgrupid"))){
  172. //
  173. // sysf_messageBox("구분을 선택한 후 조회하시기 바랍니다.", "E999", "");
  174. // return;
  175. // }
  176. ds_main_codeinfo_codelist.clearData();
  177. btn_save.enable = true;
  178. ds_send_reqdata.setColumn(0,"scrnid","SMRSM01400");//화면id 넘겨주기 2019.11.29 by 김금련
  179. var oParam = {};
  180. oParam.id = "TRRWC01401";
  181. oParam.service = "purcbaseapp.PurcBaseMngt";
  182. oParam.method = "reqGetPurRscmList";
  183. oParam.inds = "req=ds_send_reqdata";
  184. oParam.outds = "ds_main_codeinfo_codelist=purrscmlist";
  185. oParam.async = false;
  186. tranf_submit(oParam);
  187. }
  188. function btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  189. {
  190. if (utlf_isNull(ds_send_reqdata.getColumn(0, "cdgrupid"))){
  191. sysf_messageBox("구분코드를 선택한 후 작업하시기 바랍니다.", "E999", "");
  192. return;
  193. }
  194. ds_main_codeinfo_codelist.addRow();
  195. var irow = ds_main_codeinfo_codelist.rowposition;
  196. ds_main_codeinfo_codelist.setColumn(irow, "cdgrupid", ds_send_reqdata.getColumn(0, "cdgrupid"));
  197. ds_main_codeinfo_codelist.setColumn(irow, "valifromdd", utlf_getCurrentDate());
  198. ds_main_codeinfo_codelist.setColumn(irow, "valitodd", '99991231');
  199. ds_main_codeinfo_codelist.setColumn(irow, "cmt1", "물류팀기준정보");
  200. ds_main_codeinfo_codelist.setColumn(irow, "useyn", "Y");
  201. ds_main_codeinfo_codelist.setColumn(irow, "cdnm", cmb_gubun.text);
  202. ds_main_codeinfo_codelist.setColumn(irow, "instcd", sysf_getUserInfo("dutplceinstcd"));
  203. if( ds_main_codeinfo_codelist.rowposition == 0 ){
  204. ds_main_codeinfo_codelist.setColumn(irow, "cdid", "0001");
  205. }else{
  206. var tmpcdid = Number(ds_main_codeinfo_codelist.getColumn(irow-1,"cdid")) + 1;
  207. ds_main_codeinfo_codelist.setColumn(irow, "cdid", tmpcdid.toString().getLeftPad(4,"0"));
  208. }
  209. ds_main_codeinfo_codelist.rowposition = irow;
  210. datagrid1.setCellPos(1);
  211. datagrid1.showEditor(true);
  212. }
  213. function btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  214. {
  215. if(ds_main_codeinfo_codelist.getRowType(ds_main_codeinfo_codelist.rowposition) == "2")
  216. {
  217. ds_main_codeinfo_codelist.deleteRow(ds_main_codeinfo_codelist.rowposition);
  218. }
  219. else
  220. {
  221. ds_main_codeinfo_codelist.enableevent = false;
  222. ds_main_codeinfo_codelist.updatecontrol = false;
  223. ds_main_codeinfo_codelist.setRowType(ds_main_codeinfo_codelist.rowposition, 8);
  224. ds_main_codeinfo_codelist.updatecontrol = true;
  225. ds_main_codeinfo_codelist.enableevent = true;
  226. }
  227. }
  228. function button27_onclick(obj:Button, e:ClickEventInfo)
  229. {
  230. }
  231. function datacheck(){
  232. var scdid1 = "";
  233. var scdid2 = "";
  234. for (var i = 0; i < ds_main_codeinfo_codelist.rowcount; i ++){
  235. if (utlf_isNull(ds_main_codeinfo_codelist.getColumn(i, "cdid"))){
  236. sysf_messageBox("코드는 필수 입력항목입니다.", "E999", "");
  237. return false;
  238. }
  239. scdid1 = ds_main_codeinfo_codelist.getColumn(i, "cdid");
  240. var k = i + 1;
  241. for (var j = k; j < ds_main_codeinfo_codelist.rowcount; j++){
  242. scdid2 = ds_main_codeinfo_codelist.getColumn(j, "cdid");
  243. if (i != j){
  244. if (scdid1 == scdid2){
  245. sysf_messageBox(j + "번째에서 중복된 자료가 존재합니다", "E999", "");
  246. return false;
  247. }
  248. }
  249. }
  250. }
  251. return true;
  252. }
  253. function ExecData(){
  254. //grdf_setStatusColumn(ds_main_codeinfo_codelist, "status");
  255. var updateData = grdf_getGridUpdateData(datagrid1);
  256. grdf_setStatusColumn(updateData, "status");
  257. ds_send_save_codelist.copyData(updateData, true);
  258. var oParam = {};
  259. oParam.id = "TXRWC02201";
  260. oParam.service = "purcbaseapp.PurcBaseMngt";
  261. oParam.method = "reqExePurRscm";
  262. oParam.inds = "req=ds_send_save_codelist";
  263. oParam.outds = "";
  264. oParam.async = false;
  265. //oParam.typeStr = "status";
  266. oParam.callback = "cf_TXRWC02201";
  267. tranf_submit(oParam);
  268. if (arErrorCode.pop("TXRWC02201") > -1){
  269. readfunc();
  270. }
  271. }
  272. function cf_TXRWC02201(sSvcId, nErrorCode, sErrorMsg) {
  273. arErrorCode.push(sSvcId, nErrorCode);
  274. }
  275. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  276. {
  277. if (datacheck() == false){
  278. return;
  279. }
  280. ExecData();
  281. }
  282. function ds_send_reqdata_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  283. {
  284. btn_grdadd.enable = true;
  285. btn_grddel.enable = true;
  286. btn_save.enable = true;
  287. readfunc();
  288. }
  289. function SMRAD09900_onload(obj:Form, e:LoadEventInfo)
  290. {
  291. grdf_initGrid(datagrid1);
  292. ds_send_reqdata.setColumn(0, "instcd",sysf_getUserInfo("dutplceinstcd"));
  293. // 구분 조회
  294. var oParam = {};
  295. oParam.id = "TRRWC01402";
  296. oParam.service = "purcbaseapp.PurcBaseMngt";
  297. oParam.method = "reqGetPurRscmCdnm";
  298. oParam.inds = "req=ds_send_reqdata";
  299. oParam.outds = "ds_resultcdnm=purrscmcdnm";
  300. oParam.async = false;
  301. tranf_submit(oParam);
  302. ds_send_reqdata.setColumn(0,"cdgrupid","030R0010");
  303. }
  304. ]]></Script>
  305. </Form>
  306. </FDL>