SMPMC04202_전자카드발급(수납창구외 사용).xfdl 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722
  1. <?xml version="1.0" encoding="utf-8" standalone="no"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml" />
  4. <Form id="SMPMC04202" position="absolute 0 0 634 343" titletext="전자카드발급(수납창구외 사용)" onload="SMPMC04202_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group3" scrollbars="autoboth" position="absolute 0 0 618 316" style="">
  8. <Layouts>
  9. <Layout>
  10. <Div id="group2" position="absolute 0 0 618 35" style="">
  11. <Layouts>
  12. <Layout>
  13. <Shape id="roundrect1" anchor="default" type="roundrectangle" position="absolute 0 0 617 35" style="" />
  14. <Static id="caption2" class="search_name" position="absolute 15 8 101 25" style="" text="검색조건 :" />
  15. <Button id="btn_search" class="btn1_letter2" taborder="6" position="absolute 545 7 601 29" style="" text="조회" onclick="group3_group2_btn_search_onclick" />
  16. <Shape id="line13" class="line_4" linetype="vertical" position="absolute 529 7 532 29" style="border: solid #ffe4bb #ffe4bb;" anchor="default" />
  17. <Edit id="ipt_hngnm" class="input_search" taborder="1" visible="false" position="absolute 224 8 354 27" style="" anchor="default" onkeypress="group3_group2_ipt_hngnm_onkeypress" />
  18. <MaskEdit id="ipt_rrgstno1" class="input_search" taborder="2" visible="false" mask="999999" position="absolute 247 8 332 27" style="" anchor="default" onkeypress="group3_group2_ipt_rrgstno1_onkeypress" />
  19. <Combo innerdataset="ds_init_P0350list_P0350" datacolumn="cdnm" codecolumn="cdid" columncount="-1" rowcount="-1" id="cmb_cond" class="combo_search" taborder="10" position="absolute 106 8 216 27" style="" onitemchanged="group3_group2_cmb_cond_onitemchanged" />
  20. <MaskEdit id="ipt_rrgstno2" class="input_search" taborder="3" visible="false" mask="9999999" position="absolute 285 8 370 27" style="" anchor="default" onkeypress="group3_group2_ipt_rrgstno2_onkeypress" />
  21. <Edit id="ipt_pid" class="input_search" taborder="4" visible="false" position="absolute 325 8 455 27" style="" anchor="default" onkeypress="group3_group2_ipt_pid_onkeypress" />
  22. <Calendar id="ipt_acptdd" class="input_search" taborder="5" visible="false" position="absolute 390 8 520 27" style="" anchor="default" onkeypress="group3_group2_ipt_acptdd_onkeypress" />
  23. </Layout>
  24. </Layouts>
  25. </Div>
  26. <Static id="caption1" class="tit_2" position="absolute 5 45 100 59" style="" text="인적사항" />
  27. <Shape id="line1" class="line_1" linetype="horizontal" position="absolute 0 60 617 63" style="" anchor="default" />
  28. <Grid id="grd_patinfo" binddataset="ds_main_patinfo_patinfolist" taborder="7" position="absolute 0 65 617 315" style="" oncelldblclick="group3_grd_patinfo_oncelldblclick" oncellclick="group3_grd_patinfo_oncellclick" onkeypress="group3_grd_patinfo_onkeypress">
  29. <Formats>
  30. <Format id="default">
  31. <Columns>
  32. <Column size="60" />
  33. <Column size="104" />
  34. <Column size="146" />
  35. <Column size="92" />
  36. <Column size="112" />
  37. <Column size="100" />
  38. </Columns>
  39. <Rows>
  40. <Row size="23" band="head" />
  41. <Row size="23" />
  42. </Rows>
  43. <Band id="head">
  44. <Cell text="등록번호" />
  45. <Cell col="1" text="환자성명" />
  46. <Cell col="2" text="영문이름" />
  47. <Cell col="3" text="주민등록번호" />
  48. <Cell col="4" text="주민등록번호" />
  49. <Cell col="5" text="합본등록번호" />
  50. </Band>
  51. <Band id="body">
  52. <Cell text="bind:pid" />
  53. <Cell col="1" text="bind:hngnm" />
  54. <Cell col="2" text="bind:engnm" />
  55. <Cell col="3" text="bind:rrgstno1" />
  56. <Cell col="4" text="bind:rrgstno2" />
  57. <Cell col="5" text="bind:bindpid" />
  58. </Band>
  59. </Format>
  60. </Formats>
  61. </Grid>
  62. </Layout>
  63. </Layouts>
  64. </Div>
  65. <Div id="group1" scrollbars="autoboth" position="absolute 0 316 618 343" style="">
  66. <Layouts>
  67. <Layout>
  68. <Button id="btn_confirm" class="btn4_letter2" taborder="8" position="absolute 502 5 558 27" style="" text="발급" onclick="group1_btn_confirm_onclick" />
  69. <Button id="btn_cancel" class="btn4_letter2" taborder="9" position="absolute 561 5 617 27" style="" text="취소" onclick="group1_btn_cancel_onclick" />
  70. <Shape id="line32" class="line_6" linetype="horizontal" position="absolute 0 0 618 3" style="" anchor="default" />
  71. <Button id="button1" class="btn4_letter3" position="absolute 430 5 498 27" style="" text="초기화" onclick="group1_button1_onclick" />
  72. </Layout>
  73. </Layouts>
  74. </Div>
  75. </Layout>
  76. </Layouts>
  77. <Objects>
  78. <Dataset id="ds_main_patinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  79. <ColumnInfo>
  80. <Column id="patinfolist" type="STRING" size="256" />
  81. </ColumnInfo>
  82. <Rows>
  83. <Row>
  84. <Col id="patinfolist"></Col>
  85. </Row>
  86. </Rows>
  87. </Dataset>
  88. <Dataset id="ds_hidden_uid" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  89. <ColumnInfo>
  90. <Column id="myself" type="STRING" size="256" />
  91. <Column id="opener" type="STRING" size="256" />
  92. </ColumnInfo>
  93. </Dataset>
  94. <Dataset id="ds_init_P0350list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  95. <ColumnInfo />
  96. </Dataset>
  97. <Dataset id="ds_init_P0350list_P0350" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  98. <ColumnInfo>
  99. <Column id="cdnm" type="STRING" size="256" />
  100. <Column id="cdid" type="STRING" size="256" />
  101. </ColumnInfo>
  102. <Rows>
  103. <Row>
  104. <Col id="cdnm"></Col>
  105. <Col id="cdid"></Col>
  106. </Row>
  107. </Rows>
  108. </Dataset>
  109. <Dataset id="ds_main" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  110. <ColumnInfo />
  111. </Dataset>
  112. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  113. <ColumnInfo />
  114. </Dataset>
  115. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  116. <ColumnInfo>
  117. <Column id="srchcond" type="STRING" size="256" />
  118. <Column id="pid" type="STRING" size="256" />
  119. <Column id="hngnm" type="STRING" size="256" />
  120. <Column id="rrgstno1" type="STRING" size="256" />
  121. <Column id="rrgstno2" type="STRING" size="256" />
  122. <Column id="acptdd" type="STRING" size="256" />
  123. </ColumnInfo>
  124. <Rows>
  125. <Row>
  126. <Col id="srchcond"></Col>
  127. <Col id="pid"></Col>
  128. <Col id="hngnm"></Col>
  129. <Col id="rrgstno1"></Col>
  130. <Col id="rrgstno2"></Col>
  131. <Col id="acptdd"></Col>
  132. </Row>
  133. </Rows>
  134. </Dataset>
  135. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  136. <ColumnInfo>
  137. <Column id="tmp" type="STRING" size="256" />
  138. </ColumnInfo>
  139. </Dataset>
  140. </Objects>
  141. <Bind>
  142. <BindItem id="item0" compid="group3.group2.ipt_hngnm" propid="value" datasetid="ds_send" columnid="hngnm" />
  143. <BindItem id="item1" compid="group3.group2.ipt_rrgstno1" propid="value" datasetid="ds_send" columnid="rrgstno1" />
  144. <BindItem id="item2" compid="group3.group2.cmb_cond" propid="value" datasetid="ds_send" columnid="srchcond" />
  145. <BindItem id="item3" compid="group3.group2.ipt_rrgstno2" propid="value" datasetid="ds_send" columnid="rrgstno2" />
  146. <BindItem id="item4" compid="group3.group2.ipt_pid" propid="value" datasetid="ds_send" columnid="pid" />
  147. <BindItem id="item5" compid="group3.group2.ipt_acptdd" propid="value" datasetid="ds_send" columnid="acptdd" />
  148. </Bind>
  149. <Script type="xscript4.0"><![CDATA[function SMPMC04202_onload(obj:Form, e:LoadEventInfo) {
  150. frmf_initForm(obj);
  151. //grdf_initGrid(grd_XXX);
  152. //grdf_setGridSort(grd_XXX);
  153. //grdf_setRowTypeIcon(grd_XXX, 0_컬럼위치값);
  154. var arrParam = [ {dsNm: "ds_init_P0350list",
  155. cdGrpId: "P0350" } ];
  156. appf_getCodeList(arrParam, );
  157. fGetPCID();
  158. if( ds_send_srchcond.rowcount;> 0 ){
  159. if( ds_send.getColumn(0, "checkfnexam") != "1" ){
  160. //조회조건에서 '예약일시'를 제거한다.
  161. group3.group2.cmb_cond.choices.itemset.attribute("nodeset") = "ds_init_P0350list_P0350[cdid != '5' ]";
  162. }
  163. if( ds_send.getColumn(0, "srchcond") == '' || ds_send.getColumn(0, "srchcond") == '-' ){
  164. ds_send.setColumn( 0, "srchcond", "1");
  165. }
  166. //검색조건 셋팅
  167. fChangeSearchCondition( ds_send.getColumn(0, "srchcond") );
  168. //model.refresh();
  169. /*
  170. //값이 부모창에서 입력되었을 경우 조회한다.
  171. if(ds_send.getColumn(0, "srchcond") != '5' && fInputValueCheckXformsReady() ){alert("cc");
  172. //if( fInputValueCheckXformsReady() ){
  173. // if( submit("TRPMC02500") ){
  174. var oParam = {};
  175. oParam.id = "TRPMC02500";
  176. oParam.service = "patinfomngtapp.PatBaseInfo";
  177. oParam.method = "reqGetPatInfo";
  178. oParam.inds = "req=ds_";
  179. oParam.outds = "ds_=patinfolist";
  180. oParam.async = false;
  181. oParam.callback = "cf_TRPMC02500";
  182. tranf_submit(oParam);
  183. /*
  184. function cf_TRPMC02500(sSvcId, nErrorCode, sErrorMsg) {
  185. if(nErrorCode < 0) return;
  186. }
  187. function cf_TRPMC02500(sSvcId, nErrorCode, sErrorMsg) {
  188. arErrorCode.push(sSvcId, nErrorCode);
  189. }
  190. arErrorCode.pop("TRPMC02500") > -1
  191. arErrorCode.pop("TRPMC02500") < 0
  192. */
  193. if( group3.grd_patinfo.rows == 2 ){
  194. if( ds_send.getColumn(0, "autoflag").toUpperCase() == "Y" ){ //조회 내역이 1건일 경우 자동 화면 닫기
  195. group3.grd_patinfo.setFocus();
  196. group1.btn_confirm.dispatch("DOMActivate");
  197. window.close();
  198. }
  199. }
  200. if( group3.grd_patinfo.rows > 1 ){
  201. group3.grd_patinfo.setFocus();
  202. }else{
  203. if( ds_send.getColumn(0, "autoflag").toUpperCase() == "NON" ){ //조회 내역이 없을 경우 자동 화면 닫기
  204. //group3.grd_patinfo.setFocus();
  205. group1.btn_cancel.dispatch("DOMActivate");
  206. //window.close();
  207. }
  208. fChangeSearchCondition( group3.group2.cmb_cond.value );
  209. }
  210. }
  211. }
  212. */
  213. }else{
  214. //조회조건에서 '예약일시'를 제거한다.
  215. group3.group2.cmb_cond.choices.itemset.attribute("nodeset") = "ds_init_P0350list_P0350[cdid != '5' ]";
  216. dsf_makeValue( ds_send, "srchcond", "string", "" );
  217. dsf_makeValue( ds_send, "pid", "string", "" );
  218. dsf_makeValue( ds_send, "hngnm", "string", "" );
  219. dsf_makeValue( ds_send, "rrgstno1", "string", "" );
  220. dsf_makeValue( ds_send, "rrgstno2", "string", "" );
  221. dsf_makeValue( ds_send, "acptdd", "string", "" );
  222. //model.refresh();
  223. }
  224. //진료일 오늘 날짜 디폴트 세팅
  225. dsf_makeValue( ds_send, "acptdd", "string", "" );
  226. ds_send.setColumn( 0, "acptdd", utlf_getCurrentDate() );
  227. }
  228. include '../../.._com_commonweb_js_common.js'
  229. include '../../.._com_commonweb_js_tfHelper.js'
  230. include '../../.._com_commonweb_js_dateHelper.js'
  231. include '../../.._com_basiccodeweb_js_ZBC001.js'
  232. include '../../.._pam_pamcomnweb_js_PAM.js'
  233. //창 생성시 부모창으로 부터 받은 입력값의 유효범위 체크
  234. function fInputValueCheckXformsReady(){
  235. var cond = ds_send.getColumn(0, "srchcond");
  236. switch(cond){
  237. case '1':
  238. //환자등록번호 체크
  239. if(group3.group2.ipt_pid.text.length >= 1 ){
  240. ds_send.setColumn( 0, "pid", group3.group2.ipt_pid.text);
  241. return (true);
  242. }else{
  243. //sysf_messageBox("환자등록번호를 정확히", "C001");
  244. return (false);
  245. }
  246. break;
  247. case '2':
  248. //환자이름 체크
  249. //if( group3.group2.ipt_hngnm.text.length >= 2 ) return (true);
  250. if(group3.group2.ipt_hngnm.text.length >= 2 ){
  251. ds_send.setColumn( 0, "hngnm", group3.group2.ipt_hngnm.text);
  252. return (true);
  253. }else{
  254. //sysf_messageBox("환자이름을 2자리 이상", "C001");
  255. return (false);
  256. }
  257. break;
  258. case '3':
  259. //환자 주민번호 체크
  260. if( group3.group2.ipt_rrgstno1.text.length >= 1 || group3.group2.ipt_rrgstno2.text.length >= 1){
  261. ds_send.setColumn( 0, "rrgstno1", group3.group2.ipt_rrgstno1.text);
  262. ds_send.setColumn( 0, "rrgstno2", group3.group2.ipt_rrgstno2.text);
  263. return (true);
  264. }else{
  265. //sysf_messageBox("환자 주민번호를", "C001");
  266. return (false);
  267. }
  268. break;
  269. case '4':
  270. //환자이름 유효성 체크. 환자 주민번호 체크
  271. if(group3.group2.ipt_hngnm.text.length >= 2 || group3.group2.ipt_rrgstno1.text.length >= 1 || group3.group2.ipt_rrgstno2.text.length >= 1){
  272. ds_send.setColumn( 0, "hngnm", group3.group2.ipt_hngnm.text);
  273. ds_send.setColumn( 0, "rrgstno1", group3.group2.ipt_rrgstno1.text);
  274. ds_send.setColumn( 0, "rrgstno2", group3.group2.ipt_rrgstno2.text);
  275. }else{
  276. //sysf_messageBox("환자이름을 2자리 이상", "C001");
  277. return (false);
  278. }
  279. return( true );
  280. break;
  281. case '5':
  282. //예약일자 유효성 체크 --
  283. if( utlf_isValidDateTime( ds_send.getColumn(0, "acptdd"), "YYYYMMDD") ){
  284. ds_send.setColumn( 0, "acptdd", ds_send.getColumn(0, "acptdd"));
  285. //ds_send.setColumn( 0, "rrgstno2", group3.group2.ipt_rrgstno2.text);
  286. //alert("aaaa");
  287. return (true);
  288. }else{
  289. //sysf_messageBox("예약일자를 정확히", "C001");
  290. return (false);
  291. }
  292. break;
  293. default :
  294. group3.group2.cmb_cond.setFocus();
  295. return( false );
  296. break;
  297. }
  298. }
  299. //입력값의 유효범위 체크
  300. function fInputValueCheck(){
  301. var cond = ds_send.getColumn(0, "srchcond");
  302. switch(cond){
  303. case '1':
  304. //환자등록번호 체크
  305. if(group3.group2.ipt_pid.text.length >= 1 ){
  306. ds_send.setColumn( 0, "pid", group3.group2.ipt_pid.text);
  307. return (true);
  308. }else{
  309. sysf_messageBox("환자등록번호를 정확히", "C001");
  310. return (false);
  311. }
  312. break;
  313. case '2':
  314. //환자이름 체크
  315. //if( group3.group2.ipt_hngnm.text.length >= 2 ) return (true);
  316. if(group3.group2.ipt_hngnm.text.length >= 2 ){
  317. ds_send.setColumn( 0, "hngnm", group3.group2.ipt_hngnm.text);
  318. return (true);
  319. }else{
  320. sysf_messageBox("환자이름을 2자리 이상", "C001");
  321. return (false);
  322. }
  323. break;
  324. case '3':
  325. //환자 주민번호 체크
  326. if( group3.group2.ipt_rrgstno1.text.length >= 1 || group3.group2.ipt_rrgstno2.text.length >= 1 ){
  327. ds_send.setColumn( 0, "rrgstno1", group3.group2.ipt_rrgstno1.text);
  328. ds_send.setColumn( 0, "rrgstno2", group3.group2.ipt_rrgstno2.text);
  329. return (true);
  330. }else{
  331. sysf_messageBox("환자 주민번호를", "C001");
  332. return (false);
  333. }
  334. break;
  335. case '4':
  336. //환자이름 유효성 체크. 환자 주민번호 체크
  337. if(group3.group2.ipt_hngnm.text.length >= 2 || group3.group2.ipt_rrgstno1.text.length >= 1 || group3.group2.ipt_rrgstno2.text.length >= 1){
  338. ds_send.setColumn( 0, "hngnm", group3.group2.ipt_hngnm.text);
  339. ds_send.setColumn( 0, "rrgstno1", group3.group2.ipt_rrgstno1.text);
  340. ds_send.setColumn( 0, "rrgstno2", group3.group2.ipt_rrgstno2.text);
  341. }else{
  342. sysf_messageBox("환자이름 또는 주민번호를", "C001");
  343. return (false);
  344. }
  345. return( true );
  346. break;
  347. case '5':
  348. //예약일자 유효성 체크 --
  349. //model.refresh();
  350. if( utlf_isValidDateTime( ds_send.getColumn(0, "acptdd"), "YYYYMMDD") ){
  351. //alert(ds_send.getColumn(0, "acptdd"));
  352. return (true);
  353. }else{
  354. sysf_messageBox("예약일자를 정확히", "C001");
  355. return (false);
  356. }
  357. break;
  358. default :
  359. sysf_messageBox("검색조건이 정확히 선택되지 않았습니다. 확인 후 다시 시도해 주십시요.", "E999", "");
  360. group3.group2.cmb_cond.setFocus();
  361. return( false );
  362. break;
  363. }
  364. }
  365. //조회 조건에 맞는 input 컨트롤을 세팅해 준다.
  366. function fChangeSearchCondition( cond){
  367. switch(cond){
  368. case '1':
  369. dsf_makeValue( ds_send, "pid", "string", "" );
  370. group3.group2.ipt_pid.visible = true;
  371. group3.group2.ipt_pid.attribute("left") = "219px";
  372. group3.group2.ipt_pid.attribute("top") = "8px";
  373. group3.group2.ipt_hngnm.visible = "hidden";
  374. group3.group2.ipt_rrgstno1.visible = "hidden";
  375. group3.group2.ipt_rrgstno2.visible = "hidden";
  376. group3.group2.ipt_acptdd.visible = "hidden";
  377. group3.group2.ipt_pid.setFocus();
  378. break;
  379. case '2':
  380. dsf_makeValue( ds_send, "hngnm", "string", "" );
  381. group3.group2.ipt_hngnm.visible = true;
  382. group3.group2.ipt_hngnm.attribute("left") = "219px";
  383. group3.group2.ipt_hngnm.attribute("top") = "8px";
  384. group3.group2.ipt_pid.visible = "hidden";
  385. group3.group2.ipt_rrgstno1.visible = "hidden";
  386. group3.group2.ipt_rrgstno2.visible = "hidden";
  387. group3.group2.ipt_acptdd.visible = "hidden";
  388. group3.group2.ipt_hngnm.setFocus();
  389. break;
  390. case '3':
  391. dsf_makeValue( ds_send, "rrgstno1", "string", "" );
  392. dsf_makeValue( ds_send, "rrgstno2", "string", "" );
  393. group3.group2.ipt_rrgstno1.visible = true;
  394. group3.group2.ipt_rrgstno2.visible = true;
  395. group3.group2.ipt_rrgstno1.attribute("left") = "219px";
  396. group3.group2.ipt_rrgstno1.attribute("top") = "8px";
  397. group3.group2.ipt_rrgstno2.attribute("left") = "307px";
  398. group3.group2.ipt_rrgstno2.attribute("top") = "8px";
  399. group3.group2.ipt_hngnm.visible = "hidden";
  400. group3.group2.ipt_pid.visible = "hidden";
  401. group3.group2.ipt_acptdd.visible = "hidden";
  402. group3.group2.ipt_rrgstno1.setFocus();
  403. break;
  404. case '4':
  405. //dsf_makeValue( ds_send, "pid", "string", "" );
  406. dsf_makeValue( ds_send, "hngnm", "string", "" );
  407. dsf_makeValue( ds_send, "rrgstno1", "string", "" );
  408. dsf_makeValue( ds_send, "rrgstno2", "string", "" );
  409. group3.group2.ipt_hngnm.visible = true;
  410. group3.group2.ipt_hngnm.attribute("left") = "219px";
  411. group3.group2.ipt_hngnm.attribute("top") = "8px";
  412. group3.group2.ipt_pid.visible = "hidden";
  413. group3.group2.ipt_rrgstno1.visible = true;
  414. group3.group2.ipt_rrgstno1.attribute("left") = "352px";
  415. group3.group2.ipt_rrgstno1.attribute("top") = "8px";
  416. group3.group2.ipt_rrgstno2.visible = true;
  417. group3.group2.ipt_rrgstno2.attribute("left") = "440px";
  418. group3.group2.ipt_rrgstno2.attribute("top") = "8px";
  419. group3.group2.ipt_acptdd.visible = "hidden";
  420. group3.group2.ipt_hngnm.setFocus();
  421. break;
  422. case '5':
  423. dsf_makeValue( ds_send, "acptdd", "string", "" );
  424. group3.group2.ipt_acptdd.visible = true;
  425. group3.group2.ipt_acptdd.attribute("left") = "219px";
  426. group3.group2.ipt_acptdd.attribute("top") = "8px";
  427. group3.group2.ipt_hngnm.visible = "hidden";
  428. group3.group2.ipt_pid.visible = "hidden";
  429. group3.group2.ipt_rrgstno1.visible = "hidden";
  430. group3.group2.ipt_rrgstno2.visible = "hidden";
  431. //진료일 오늘 날짜 디폴트 세팅
  432. dsf_makeValue( ds_send, "acptdd", "string", "" );
  433. ds_send.setColumn( 0, "acptdd", utlf_getCurrentDate() );
  434. group3.group2.ipt_acptdd.setFocus();
  435. break;
  436. default :
  437. //sysf_messageBox("검색조건이 정확히 선택되지 않았습니다. 확인 후 다시 시도해 주십시요.", "E999", "");
  438. break;
  439. }
  440. }
  441. function group3_group2_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  442. if( fInputValueCheck() ){
  443. // if( submit("TRPMC02500") ){
  444. var oParam = {};
  445. oParam.id = "TRPMC02500";
  446. oParam.service = "patinfomngtapp.PatBaseInfo";
  447. oParam.method = "reqGetPatInfo";
  448. oParam.inds = "req=ds_";
  449. oParam.outds = "ds_=patinfolist";
  450. oParam.async = false;
  451. oParam.callback = "cf_TRPMC02500";
  452. tranf_submit(oParam);
  453. /*
  454. function cf_TRPMC02500(sSvcId, nErrorCode, sErrorMsg) {
  455. if(nErrorCode < 0) return;
  456. }
  457. function cf_TRPMC02500(sSvcId, nErrorCode, sErrorMsg) {
  458. arErrorCode.push(sSvcId, nErrorCode);
  459. }
  460. arErrorCode.pop("TRPMC02500") > -1
  461. arErrorCode.pop("TRPMC02500") < 0
  462. */
  463. if( group3.grd_patinfo.rows > 1 ){
  464. group3.grd_patinfo.setFocus();
  465. }else{
  466. fChangeSearchCondition( group3.group2.cmb_cond.value );
  467. }
  468. }
  469. }
  470. }
  471. function group3_group2_ipt_hngnm_onkeydown(obj:Edit, e:KeyEventInfo) {
  472. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  473. }
  474. function group3_group2_ipt_rrgstno1_onkeydown(obj:MaskEdit, e:KeyEventInfo) {
  475. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  476. }
  477. function group3_group2_cmb_cond_onitemchanged(obj:Combo, e:ItemChangeEventInfo) {
  478. var cond = ds_send.getColumn(0, "srchcond");
  479. //
  480. //model.refresh();
  481. fChangeSearchCondition( cond );
  482. }
  483. function group3_group2_ipt_rrgstno2_onkeydown(obj:MaskEdit, e:KeyEventInfo) {
  484. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  485. }
  486. function group3_group2_ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo) {
  487. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  488. }
  489. function group3_group2_ipt_acptdd_onkeydown(obj:Calendar, e:KeyEventInfo) {
  490. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  491. }
  492. function group3_grd_patinfo_oncelldblclick(obj:Grid, e:GridClickEventInfo) {
  493. if ( frmf_checkOpener() ) {
  494. // row = group3.grd_patinfo.row;
  495. //
  496. // if( row > 0 ){
  497. // if( ds_main_patinfo_patinfolist.rowcount;> 0 ){
  498. // opener.model.copyNode("ds_main_patinfo_patinfolist", group3.grd_patinfo.getNode( row ));
  499. // opener.dsf_makeValue( ds_main, "popupendflag", "string", "" );
  500. // opener.ds_main.setColumn( 0, "popupendflag", "ok");
  501. //
  502. //
  503. //opener.model.refresh();
  504. // window.close();
  505. // }
  506. // }
  507. // group1.btn_confirm.dispatch("DOMActivate");
  508. } else {
  509. // sysf_messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  510. }
  511. }
  512. function group3_grd_patinfo_oncellclick(obj:Grid, e:GridClickEventInfo) {
  513. /*
  514. if ( frmf_checkOpener() ) {
  515. row = group3.grd_patinfo.row;
  516. if( row > 0 ){
  517. if( ds_main_patinfo_patinfolist.rowcount;> 1 ){
  518. opener.model.copyNode("ds_main_patinfo_patinfolist", group3.grd_patinfo.getNode( row ));
  519. //opener.model.refresh();
  520. }
  521. }
  522. } else {
  523. sysf_messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  524. }
  525. */
  526. }
  527. function group3_grd_patinfo_onkeydown(obj:Grid, e:KeyEventInfo) {
  528. if( event.keyCode == 13 ){
  529. group1.btn_confirm.dispatch("DOMActivate");
  530. }
  531. //alert("aaa");
  532. }
  533. function group1_btn_confirm_onclick(obj:Button, e:ClickEventInfo) {
  534. //데이터 체크
  535. var pid = model.getValue("ds_main_patinfo_patinfolist['" +group3.grd_patinfo.row+ "']_pid");
  536. if( pid == '' || pid == ' ' || pid == '-' ){
  537. sysf_messageBox("등록번호를 찾을 수 없습니다.", "E999", "");
  538. return false;
  539. }
  540. var issno = ds_hidden_patcardissue.getColumn(0, "pcinfo");
  541. if( issno == '' || issno == ' ' || issno == '-' ){
  542. sysf_messageBox("PC 고유번호 정보를 찾을 수 없습니다.", "E999", "");
  543. return false;
  544. }
  545. //노드생성
  546. dsf_makeValue( ds_hidden_patcardissue, "flag", "string", 'R');
  547. dsf_makeValue( ds_hidden_patcardissue, "pid", "string", pid);
  548. dsf_makeValue( ds_hidden_patcardissue, "rrgstno1", "string", model.getValue("ds_main_patinfo_patinfolist['" +group3.grd_patinfo.row+ "']_rrgstno1"));
  549. dsf_makeValue( ds_hidden_patcardissue, "rrgstno2", "string", model.getValue("ds_main_patinfo_patinfolist['" +group3.grd_patinfo.row+ "']_rrgstno2"));
  550. dsf_makeValue( ds_hidden_patcardissue, "issflag", "string", '7');
  551. dsf_makeValue( ds_hidden_patcardissue, "issno", "string", issno);
  552. dsf_makeValue( ds_hidden_patcardissue, "hngnm", "string", model.getValue("ds_main_patinfo_patinfolist['" +group3.grd_patinfo.row+ "']_hngnm"));
  553. dsf_makeValue( ds_hidden_patcardissue, "result", "string", "" );
  554. if( model.getValue("ds_main_patinfo_patinfolist['" +group3.grd_patinfo.row+ "']_bindpid") != ""){
  555. if( model.getValue("ds_main_patinfo_patinfolist['" +group3.grd_patinfo.row+ "']_bindpid") != "-"){
  556. sysf_messageBox("합본처리된 번호는 출력 불가능 합니다..", "I999", ""); return false;
  557. }
  558. }
  559. setForceOn();
  560. // if(submit("TXPAM00201")){
  561. var oParam = {};
  562. oParam.id = "TXPAM00201";
  563. oParam.service = "pamcomnapp.PamComn";
  564. oParam.method = "reqInsPatCardIssue";
  565. oParam.inds = "req=ds_";
  566. oParam.outds = "";
  567. oParam.async = false;
  568. oParam.callback = "cf_TXPAM00201";
  569. tranf_submit(oParam);
  570. /*
  571. function cf_TXPAM00201(sSvcId, nErrorCode, sErrorMsg) {
  572. if(nErrorCode < 0) return;
  573. }
  574. function cf_TXPAM00201(sSvcId, nErrorCode, sErrorMsg) {
  575. arErrorCode.push(sSvcId, nErrorCode);
  576. }
  577. arErrorCode.pop("TXPAM00201") > -1
  578. arErrorCode.pop("TXPAM00201") < 0
  579. */
  580. sysf_messageBox("환자카드 발급신청을 정상적으로 완료했습니다. 카드발급 프린터에서 발급상황을 확인하세요.", "I999", "");
  581. ds_hidden_patcardissue_flag.clearData();
  582. ds_hidden_patcardissue_pid.clearData();
  583. ds_hidden_patcardissue_rrgstno1.clearData();
  584. ds_hidden_patcardissue_rrgstno2.clearData();
  585. ds_hidden_patcardissue_issflag.clearData();
  586. ds_hidden_patcardissue_issno.clearData();
  587. ds_hidden_patcardissue_hngnm.clearData();
  588. ds_hidden_patcardissue_remfact.clearData();
  589. ds_hidden_patcardissue_result.clearData();
  590. ds_main_patinfo.clearData(); ds_main_patinfo.addRow();
  591. //model.refresh();
  592. group3.group2.ipt_pid.setFocus();
  593. }
  594. }
  595. function group1_btn_cancel_onclick(obj:Button, e:ClickEventInfo) {
  596. opener.dsf_makeValue( ds_main, "popupendflag", "string", "" );
  597. opener.ds_main.setColumn( 0, "popupendflag", "cancel");
  598. window.close();
  599. }
  600. function group1_button1_onclick(obj:Button, e:ClickEventInfo) {
  601. window.reload();
  602. }
  603. ]]></Script>
  604. </Form>
  605. </FDL>