SPMNR10300_FlowSheet기타기록등록.xfdl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMNR10300" position="absolute 0 0 258 137" titletext="면회정보/출생일 기록등록" oninit="model1_oninit" onload="SPMNR10300_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group2" position="absolute 12 5 248 117" anchor="default" positiontype="position">
  8. <Layouts>
  9. <Layout>
  10. <Static id="Static03" class="sta_DA_box" position="absolute 0 20 234 96" anchor="default"/>
  11. <Static id="caption4" class="tit_2" position="absolute 0 0 141 20" anchor="default" text="환자 면회 정보" positiontype="position"/>
  12. <Calendar id="ipt_dayinfo" position="absolute 84 23 230 43" anchor="default" dateformat="yyyy-MM-dd" value="null" positiontype="position"/>
  13. <Static id="caption5" class="cell_1" position="absolute 1 21 81 45" anchor="default" text="면회일자" positiontype="position"/>
  14. <Shape id="line1" class="line_1" position="absolute 0 30 213 30" anchor="default" linetype="horizontal" positiontype="position"/>
  15. <Static id="caption6" class="cell_1" position="absolute 1 46 81 70" anchor="default" text="오전" positiontype="position"/>
  16. <Shape id="line4" class="line_3" position="absolute 0 56 213 56" anchor="default" linetype="horizontal" positiontype="position"/>
  17. <Shape id="line2" class="line_3" position="absolute 0 80 213 80" anchor="default" linetype="horizontal" positiontype="position"/>
  18. <Static id="caption1" class="cell_1" position="absolute 1 71 81 95" anchor="default" text="오후" positiontype="position"/>
  19. <Edit id="ipt_ammemo" position="absolute 84 48 230 68" anchor="default" imemode="hangul" positiontype="position"/>
  20. <Edit id="ipt_pmmemo" position="absolute 84 73 230 93" anchor="default" imemode="hangul" positiontype="position"/>
  21. <Shape id="line3" class="line_3" position="absolute 0 104 213 104" anchor="default" linetype="horizontal" positiontype="position"/>
  22. </Layout>
  23. </Layouts>
  24. </Div>
  25. <Button id="btn_save" class="btn4" position="absolute 131 108 187 128" anchor="default" positiontype="position" text="확인" onclick="btn_save_onclick"/>
  26. <Div id="group1" position="absolute 12 5 248 71" anchor="default" positiontype="position">
  27. <Layouts>
  28. <Layout>
  29. <Static id="Static03" class="sta_DA_box" position="absolute 0 20 234 46" anchor="default"/>
  30. <Static id="caption2" class="tit_2" position="absolute 0 0 141 20" anchor="default" text="출생일 정보" positiontype="position"/>
  31. <Shape id="line5" class="line_1" position="absolute 0 30 213 30" anchor="default" linetype="horizontal" positiontype="position"/>
  32. <Static id="caption3" class="cell_1" position="absolute 1 21 81 45" anchor="default" text="출생일자" positiontype="position"/>
  33. <Calendar id="ipt_brthdd" position="absolute 84 23 230 43" anchor="default" dateformat="yyyy-MM-dd" value="null" positiontype="position"/>
  34. </Layout>
  35. </Layouts>
  36. </Div>
  37. <Static id="stt_titleText" text="면회정보/출생일 기록등록" onclick="caption6_onclick" class="sta_POP_title" position="absolute 252 2 264 17" visible="false"/>
  38. <Button id="Button00" taborder="1" onclick="Button00_onclick" class="btn_POP_cls" position="absolute 471 46 485 60" visible="false"/>
  39. <Button id="btn_close" taborder="2" text="닫기" class="btn4" position="absolute 188 108 244 128" onclick="btn_close_onclick"/>
  40. </Layout>
  41. </Layouts>
  42. <Objects>
  43. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" onvaluechanged="ds_cond_onvaluechanged">
  44. <ColumnInfo>
  45. <Column id="dayinfo" type="STRING"/>
  46. <Column id="pid" type="STRING"/>
  47. <Column id="indd" type="STRING"/>
  48. <Column id="cretno" type="STRING"/>
  49. <Column id="recflag" type="STRING"/>
  50. <Column id="ioflag" type="STRING"/>
  51. </ColumnInfo>
  52. </Dataset>
  53. <Dataset id="ds_data_patdetllist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" onvaluechanged="ds_cond_onvaluechanged">
  54. <ColumnInfo>
  55. <Column id="ammemo" type="STRING"/>
  56. <Column id="pmmemo" type="STRING"/>
  57. <Column id="brthdd" type="STRING"/>
  58. </ColumnInfo>
  59. </Dataset>
  60. <Dataset id="ds_rtnlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  61. <ColumnInfo>
  62. <Column id="rtnmsg" type="STRING"/>
  63. </ColumnInfo>
  64. </Dataset>
  65. <Dataset id="ds_data_saveinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  66. <ColumnInfo>
  67. <Column id="stat" type="STRING"/>
  68. <Column id="pid" type="STRING" size="256"/>
  69. <Column id="applydd" type="STRING" size="256"/>
  70. <Column id="recflag" type="STRING" size="256"/>
  71. <Column id="apflag" type="STRING" size="256"/>
  72. <Column id="memocnts" type="STRING" size="256"/>
  73. </ColumnInfo>
  74. </Dataset>
  75. </Objects>
  76. <Bind>
  77. <BindItem id="item0" compid="group1.ipt_brthdd" propid="value" datasetid="ds_data_patdetllist" columnid="brthdd"/>
  78. <BindItem id="item1" compid="group2.ipt_dayinfo" propid="value" datasetid="ds_cond" columnid="dayinfo"/>
  79. <BindItem id="item2" compid="group2.ipt_ammemo" propid="value" datasetid="ds_data_patdetllist" columnid="ammemo"/>
  80. <BindItem id="item3" compid="group2.ipt_pmmemo" propid="value" datasetid="ds_data_patdetllist" columnid="pmmemo"/>
  81. </Bind>
  82. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  83. * System Name : Himed
  84. * Job Name :
  85. * File Name : SPMNR10300_FlowSheet기타기록등록.xfdl
  86. * Creator :
  87. * Make Date : 2014-08-14
  88. *
  89. * Description :
  90. *---------------------------------------------------------------------------------------
  91. * Modify Date Modifier Modify Description
  92. *---------------------------------------------------------------------------------------
  93. * 2014-08-14 HIT Converting Program(TF->XP)
  94. *
  95. *---------------------------------------------------------------------------------------
  96. ****************************************************************************************/
  97. //=======================================================================================
  98. // xjs Include
  99. //---------------------------------------------------------------------------------------
  100. include "com_commonxp::comm_main.xjs";
  101. include "emr_carecomxp::CareCom.xjs";
  102. include "com_commodulexp::SSZFM00401.xjs"; // Dataset 뷰어용
  103. //=======================================================================================
  104. // Function
  105. //---------------------------------------------------------------------------------------
  106. function finit(){
  107. //초기화
  108. ds_cond.clearData();
  109. ds_cond.addRow();
  110. var sParamMsgInfo = opener.frmf_getParameter("SPMNR10300_Param");
  111. var sRecflag = getArrayData(sParamMsgInfo, 0 ,1);
  112. ds_cond.enableevent = false;
  113. ds_cond.setColumn(0,"dayinfo", getArrayData(sParamMsgInfo, 0 ,0) );
  114. ds_cond.setColumn(0,"recflag", sRecflag );
  115. ds_cond.setColumn(0,"pid", getArrayData(sParamMsgInfo, 0 ,2) );
  116. ds_cond.setColumn(0,"indd", getArrayData(sParamMsgInfo, 0 ,3) );
  117. ds_cond.setColumn(0,"cretno", getArrayData(sParamMsgInfo, 0 ,4) );
  118. ds_cond.setColumn(0,"ioflag", getArrayData(sParamMsgInfo, 0 ,5) );
  119. ds_cond.enableevent = true;
  120. var tmpTitle = stt_titleText.text;
  121. var orgTitle = "면회정보/출생일 기록등록";
  122. if( sRecflag == "01" ){
  123. group1.visible = false;
  124. group2.visible = true;
  125. stt_titleText.text = tmpTitle.replace(orgTitle, "환자 면회 정보 등록");
  126. }else{
  127. group1.visible = true;
  128. group2.visible = false;
  129. stt_titleText.text = tmpTitle.replace(orgTitle, "환자 출생일 정보 등록");
  130. }
  131. lf_valueChanged();
  132. }
  133. function lf_valueChanged(){
  134. var objTrParam = new Object();
  135. objTrParam.id = "TRMNR10102";
  136. objTrParam.service = "flowchartapp.FlowChartRecMngt";
  137. objTrParam.method = "reqGetDayCountList";
  138. objTrParam.inds = "req=ds_cond";
  139. objTrParam.outds = "ds_data_patdetllist=patdetllist";
  140. objTrParam.callback = "cbf_TRMNR10102";
  141. objTrParam.async = true;
  142. tranf_submit(objTrParam);
  143. }
  144. /**********************************************************************************
  145. * 함수명 : cbf_TRMNR10102
  146. * 설 명 : Transaction Callback
  147. * argument : strSvcId (transaction을 구분하기 위한 ID)
  148. * : nErrorCode (에러코드)
  149. * : strErrorMsg (에러메세지)
  150. * return Type :
  151. * 작성자 : 박영우
  152. **********************************************************************************/
  153. function cbf_TRMNR10102(sSvcId, nErrorCode, sErrorMsg)
  154. {
  155. //error 메세지 처리
  156. if(nErrorCode != 0){
  157. sysf_messageBox(sErrorMsg, "E");
  158. }
  159. }
  160. function fSave(){
  161. var sRecFlag = ds_cond.getColumn(0,"recflag");
  162. var sPid = ds_cond.getColumn(0,"pid");
  163. var sDayInfo = ds_cond.getColumn(0,"dayinfo");
  164. var ammemo = "";
  165. var pmmemo = "";
  166. var brthdd = "";
  167. var saveRow = -1;
  168. ds_data_saveinfo.clearData();
  169. ds_data_saveinfo.enableevent = false;
  170. if( sRecFlag == "01" ){
  171. if( sDayInfo.length < 8 ){
  172. sysf_messageBox("면회일자를 정확하게 입력하시기 바랍니다.", "E");
  173. return;
  174. }
  175. ammemo = ds_data_patdetllist.getColumn(0, "ammemo");
  176. if( utlf_isNull(ammemo) ){
  177. saveRow = ds_data_saveinfo.addRow();
  178. ds_data_saveinfo.setColumn(saveRow, "stat", "D");
  179. ds_data_saveinfo.setColumn(saveRow, "pid", sPid);
  180. ds_data_saveinfo.setColumn(saveRow, "applydd", sDayInfo);
  181. ds_data_saveinfo.setColumn(saveRow, "recflag", sRecFlag);
  182. ds_data_saveinfo.setColumn(saveRow, "apflag", "A");
  183. ds_data_saveinfo.setColumn(saveRow, "memocnts", ammemo);
  184. }else{
  185. saveRow = ds_data_saveinfo.addRow();
  186. ds_data_saveinfo.setColumn(saveRow, "stat", "U");
  187. ds_data_saveinfo.setColumn(saveRow, "pid", sPid);
  188. ds_data_saveinfo.setColumn(saveRow, "applydd", sDayInfo);
  189. ds_data_saveinfo.setColumn(saveRow, "recflag", sRecFlag);
  190. ds_data_saveinfo.setColumn(saveRow, "apflag", "A");
  191. ds_data_saveinfo.setColumn(saveRow, "memocnts", ammemo);
  192. }
  193. pmmemo = ds_data_patdetllist.getColumn(0, "pmmemo");
  194. if( utlf_isNull(pmmemo) ){
  195. saveRow = ds_data_saveinfo.addRow();
  196. ds_data_saveinfo.setColumn(saveRow, "stat", "D");
  197. ds_data_saveinfo.setColumn(saveRow, "pid", sPid);
  198. ds_data_saveinfo.setColumn(saveRow, "applydd", sDayInfo);
  199. ds_data_saveinfo.setColumn(saveRow, "recflag", sRecFlag);
  200. ds_data_saveinfo.setColumn(saveRow, "apflag", "P");
  201. ds_data_saveinfo.setColumn(saveRow, "memocnts", pmmemo);
  202. }else{
  203. saveRow = ds_data_saveinfo.addRow();
  204. ds_data_saveinfo.setColumn(saveRow, "stat", "U");
  205. ds_data_saveinfo.setColumn(saveRow, "pid", sPid);
  206. ds_data_saveinfo.setColumn(saveRow, "applydd", sDayInfo);
  207. ds_data_saveinfo.setColumn(saveRow, "recflag", sRecFlag);
  208. ds_data_saveinfo.setColumn(saveRow, "apflag", "P");
  209. ds_data_saveinfo.setColumn(saveRow, "memocnts", pmmemo);
  210. }
  211. }else{
  212. brthdd = ds_data_patdetllist.getColumn(0, "brthdd");
  213. if( utlf_isNull(brthdd) ){
  214. saveRow = ds_data_saveinfo.addRow();
  215. ds_data_saveinfo.setColumn(saveRow, "stat", "D");
  216. ds_data_saveinfo.setColumn(saveRow, "pid", sPid);
  217. ds_data_saveinfo.setColumn(saveRow, "applydd", sDayInfo);
  218. ds_data_saveinfo.setColumn(saveRow, "recflag", sRecFlag);
  219. ds_data_saveinfo.setColumn(saveRow, "apflag", "-");
  220. ds_data_saveinfo.setColumn(saveRow, "memocnts", brthdd);
  221. }else{
  222. saveRow = ds_data_saveinfo.addRow();
  223. ds_data_saveinfo.setColumn(saveRow, "stat", "U");
  224. ds_data_saveinfo.setColumn(saveRow, "pid", sPid);
  225. ds_data_saveinfo.setColumn(saveRow, "applydd", sDayInfo);
  226. ds_data_saveinfo.setColumn(saveRow, "recflag", sRecFlag);
  227. ds_data_saveinfo.setColumn(saveRow, "apflag", "-");
  228. ds_data_saveinfo.setColumn(saveRow, "memocnts", brthdd);
  229. }
  230. }
  231. ds_data_saveinfo.enableevent = true;
  232. if( ds_data_saveinfo.rowcount < 1 ) {
  233. sysf_messageBox("변경된 데이터가", "I004");
  234. return;
  235. }
  236. //초기화
  237. ds_rtnlist.clearData();
  238. //저장
  239. var objTrParam = new Object();
  240. objTrParam.id = "TXMNR10301";
  241. objTrParam.service = "flowchartapp.FlowChartRecMngt";
  242. objTrParam.method = "reqExeFlowSheetEtcRecInfo";
  243. objTrParam.inds = "req=ds_data_saveinfo";
  244. objTrParam.outds = "ds_rtnlist=rtnlist";
  245. objTrParam.typeStr = "stat";
  246. objTrParam.callback = "cbf_TXMNR10301";
  247. objTrParam.async = true;
  248. tranf_submit(objTrParam);
  249. }
  250. /**********************************************************************************
  251. * 함수명 : cbf_TXMNR10301
  252. * 설 명 : Transaction Callback
  253. * argument : strSvcId (transaction을 구분하기 위한 ID)
  254. * : nErrorCode (에러코드)
  255. * : strErrorMsg (에러메세지)
  256. * return Type :
  257. * 작성자 : 박영우
  258. **********************************************************************************/
  259. function cbf_TXMNR10301(sSvcId, nErrorCode, sErrorMsg)
  260. {
  261. if(nErrorCode == 0){
  262. this.close();
  263. }else{
  264. sysf_messageBox(sErrorMsg, "E");
  265. }
  266. }
  267. //=======================================================================================
  268. // Event
  269. //---------------------------------------------------------------------------------------
  270. /****************************************************************************************
  271. * Components :
  272. * Components ID : SPMNR10300
  273. * Event : onload
  274. * Argument : 01.obj : Object Event has occurred
  275. * : 02.e : Event Object
  276. * Description :
  277. ****************************************************************************************/
  278. function SPMNR10300_onload(obj:Form, e:LoadEventInfo)
  279. {
  280. frmf_initForm(obj); // 화면공통
  281. lf_commoduleDataSetShow(); //DataSet 조회;
  282. finit();
  283. }
  284. /****************************************************************************************
  285. * Components :
  286. * Components ID : btn_save
  287. * Event : onclick
  288. * Argument : 01.obj : Object Event has occurred
  289. * : 02.e : Event Object
  290. * Description :
  291. ****************************************************************************************/
  292. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  293. {
  294. fSave();
  295. }
  296. /****************************************************************************************
  297. * Components :
  298. * Components ID : Button00
  299. * Event : onclick
  300. * Argument : 01.obj : Object Event has occurred
  301. * : 02.e : Event Object
  302. * Description :
  303. ****************************************************************************************/
  304. function Button00_onclick(obj:Button, e:ClickEventInfo)
  305. {
  306. this.close();
  307. }
  308. /****************************************************************************************
  309. * Components :
  310. * Components ID : ds_cond
  311. * Event : onvaluechanged
  312. * Argument : 01.obj : Object Event has occurred
  313. * : 02.e : Event Object
  314. * Description : 기준월 변경시 재조회
  315. ****************************************************************************************/
  316. function ds_cond_onvaluechanged(obj:Dataset, e:DSColChangeEventInfo)
  317. {
  318. if( e.columnid == "dayinfo" ) {
  319. var dayinfo = obj.getColumn(0, "dayinfo");
  320. if( shchmm.length == 8 ) {
  321. lf_valueChanged();
  322. }
  323. }
  324. }
  325. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  326. {
  327. this.close();
  328. }
  329. ]]></Script>
  330. </Form>
  331. </FDL>