SPAHA00400_건진환자선택.xfdl 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPAHA00400" position="absolute 0 0 577 348" titletext="건진환자선택" onload="SPAHA00400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 576 316" id="group3" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Div position="absolute 0 0 576 40" align="align:center top;" id="group2" class="div_SA2">
  11. <Layouts>
  12. <Layout>
  13. <Static text="검색조건 :" position="absolute 12 12 98 29" id="caption2" class="search_name" anchor="default"/>
  14. <Button position="absolute 506 10 562 32" id="btn_search" class="btn1" taborder="4" text="조회" anchor="default" onclick="group3_group2_btn_search_onclick"/>
  15. <Shape position="absolute 487 10 493 32" linetype="vertical" id="line13" class="line_4" anchor="default"/>
  16. <Combo position="absolute 98 11 210 30" id="cmb_cond" class="combo_search" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default" onitemchanged="group3_group2_cmb_cond_onitemchanged">
  17. <Dataset id="innerdataset">
  18. <ColumnInfo>
  19. <Column id="codecolumn" size="256"/>
  20. <Column id="datacolumn" size="256"/>
  21. </ColumnInfo>
  22. <Rows>
  23. <Row>
  24. <Col id="codecolumn">rgstno</Col>
  25. <Col id="datacolumn">주민번호</Col>
  26. </Row>
  27. <Row>
  28. <Col id="codecolumn">pid</Col>
  29. <Col id="datacolumn">등록번호</Col>
  30. </Row>
  31. <Row>
  32. <Col id="codecolumn">pnm</Col>
  33. <Col id="datacolumn">성명(한글)</Col>
  34. </Row>
  35. <Row>
  36. <Col id="codecolumn">engnm</Col>
  37. <Col id="datacolumn">성명(영문))</Col>
  38. </Row>
  39. <Row>
  40. <Col id="codecolumn">rowid</Col>
  41. <Col id="datacolumn">ROWID</Col>
  42. </Row>
  43. <Row>
  44. <Col id="codecolumn">rgstno</Col>
  45. <Col id="datacolumn">성명+주민번호</Col>
  46. </Row>
  47. </Rows>
  48. </Dataset>
  49. </Combo>
  50. <Edit position="absolute 213 11 313 30" id="ipt_pid" class="input_search" taborder="1" anchor="default" onkeyup="group3_group2_ipt_pid_onkeyup" autoselect="true"/>
  51. <MaskEdit position="absolute 316 11 376 30" id="ipt_rgstno1" class="input_search" taborder="2" mask="999999" anchor="default" onkeyup="group3_group2_ipt_rgstno1_onkeyup" autoselect="true"/>
  52. <MaskEdit position="absolute 379 11 439 30" id="ipt_rgstno2" class="input_search" taborder="3" mask="9999999" anchor="default" onkeyup="group3_group2_ipt_rgstno2_onkeyup" autoselect="true"/>
  53. </Layout>
  54. </Layouts>
  55. </Div>
  56. <Static text="건진자리스트" position="absolute 0 53 111 67" id="caption1" class="tit_2"/>
  57. <Shape position="absolute 0 67 576 73" linetype="horizontal" id="line1" class="line_10"/>
  58. <Grid position="absolute 0 72 576 316" id="grd_patlst" binddataset="ds_main_patinfo_item" oncelldblclick="group3_grd_patlst_oncelldblclick">
  59. <Formats>
  60. <Format id="default">
  61. <Columns>
  62. <Column size="25" band="left"/>
  63. <Column size="80"/>
  64. <Column size="74"/>
  65. <Column size="62"/>
  66. <Column size="74"/>
  67. <Column size="100"/>
  68. <Column size="100"/>
  69. <Column size="37"/>
  70. <Column size="38"/>
  71. <Column size="195"/>
  72. <Column size="0"/>
  73. <Column size="0"/>
  74. <Column size="0"/>
  75. <Column size="0"/>
  76. <Column size="0"/>
  77. <Column size="0"/>
  78. <Column size="0"/>
  79. <Column size="0"/>
  80. <Column size="0"/>
  81. <Column size="0"/>
  82. <Column size="0"/>
  83. <Column size="0"/>
  84. <Column size="0"/>
  85. <Column size="0"/>
  86. <Column size="0"/>
  87. <Column size="0"/>
  88. <Column size="0"/>
  89. <Column size="0"/>
  90. <Column size="0"/>
  91. <Column size="0"/>
  92. <Column size="0"/>
  93. <Column size="0"/>
  94. <Column size="0"/>
  95. <Column size="0"/>
  96. <Column size="0"/>
  97. <Column size="0"/>
  98. <Column size="0"/>
  99. <Column size="0"/>
  100. <Column size="0"/>
  101. <Column size="0"/>
  102. <Column size="0"/>
  103. <Column size="0"/>
  104. <Column size="0"/>
  105. <Column size="0"/>
  106. <Column size="0"/>
  107. <Column size="0"/>
  108. <Column size="0"/>
  109. <Column size="0"/>
  110. <Column size="0"/>
  111. <Column size="0"/>
  112. <Column size="0"/>
  113. <Column size="0"/>
  114. <Column size="0"/>
  115. <Column size="0"/>
  116. <Column size="0"/>
  117. <Column size="0"/>
  118. <Column size="0"/>
  119. <Column size="0"/>
  120. </Columns>
  121. <Rows>
  122. <Row size="24" band="head"/>
  123. <Row size="24"/>
  124. </Rows>
  125. <Band id="head">
  126. <Cell/>
  127. <Cell col="1" text="등록번호"/>
  128. <Cell col="2" text="환자성명"/>
  129. <Cell col="3" colspan="2" text="주민등록번호" taborder="undefined"/>
  130. <Cell col="5" text="건진일자"/>
  131. <Cell col="6" text="건진구분"/>
  132. <Cell col="7" text="성별"/>
  133. <Cell col="8" text="나이"/>
  134. <Cell col="9" text="전화번호(집)"/>
  135. <Cell col="10" text="emailid"/>
  136. <Cell col="11" text="emailtype"/>
  137. <Cell col="12" text="healexampid"/>
  138. <Cell col="13" text="emailkind"/>
  139. <Cell col="14" text="zipcd11"/>
  140. <Cell col="15" text="zipcd12"/>
  141. <Cell col="16" text="zipcdseq1"/>
  142. <Cell col="17" text="addr"/>
  143. <Cell col="18" text="detladdr"/>
  144. <Cell col="19" text="zipcd21"/>
  145. <Cell col="20" text="zipcd22"/>
  146. <Cell col="21" text="zipcdseq2"/>
  147. <Cell col="22" text="addr2"/>
  148. <Cell col="23" text="detladdr2"/>
  149. <Cell col="24" text="zipcd31"/>
  150. <Cell col="25" text="zipcd32"/>
  151. <Cell col="26" text="zipcdseq3"/>
  152. <Cell col="27" text="addr3"/>
  153. <Cell col="28" text="detladdr3"/>
  154. <Cell col="29" text="psptno"/>
  155. <Cell col="30" text="brthareacnts"/>
  156. <Cell col="31" text="pidcretfg"/>
  157. <Cell col="32" text="engnm"/>
  158. <Cell col="33" text="forgneryn"/>
  159. <Cell col="34" text="caption1"/>
  160. <Cell col="35" text="caption2"/>
  161. <Cell col="36" text="caption3"/>
  162. <Cell col="37" text="caption4"/>
  163. <Cell col="38" text="caption5"/>
  164. <Cell col="39" text="caption6"/>
  165. <Cell col="40" text="caption7"/>
  166. <Cell col="41" text="caption8"/>
  167. <Cell col="42" text="caption9"/>
  168. <Cell col="43" text="caption10"/>
  169. <Cell col="44" text="caption11"/>
  170. <Cell col="45" text="caption12"/>
  171. <Cell col="46" text="caption13"/>
  172. <Cell col="47" text="caption14"/>
  173. <Cell col="48" text="caption15"/>
  174. <Cell col="49" text="caption16"/>
  175. <Cell col="50" text="caption17"/>
  176. <Cell col="51" text="caption18"/>
  177. <Cell col="52" text="caption19"/>
  178. <Cell col="53" text="caption20"/>
  179. <Cell col="54" text="caption21"/>
  180. <Cell col="55" text="caption22"/>
  181. <Cell col="56" text="caption23"/>
  182. <Cell col="57" text="pat_rowid"/>
  183. </Band>
  184. <Band id="body">
  185. <Cell celltype="head" text="expr:currow+1"/>
  186. <Cell col="1" displaytype="text" text="bind:pid"/>
  187. <Cell col="2" displaytype="text" text="bind:hngnm"/>
  188. <Cell col="3" text="bind:rgstno1"/>
  189. <Cell col="4" text="bind:rgstno2"/>
  190. <Cell col="5" text="bind:healexamdd" mask="expr:utlf_isNull(healexamdd) ? '' : '####/##/##'"/>
  191. <Cell col="6" displaytype="text" text="bind:healexamdetlnm"/>
  192. <Cell col="7" text="bind:sex"/>
  193. <Cell col="8" text="bind:age"/>
  194. <Cell col="9" displaytype="text" text="bind:telno"/>
  195. <Cell col="10" text="bind:emailid"/>
  196. <Cell col="11" text="bind:emailtype"/>
  197. <Cell col="12" text="bind:healexampid"/>
  198. <Cell col="13" text="bind:emailkind"/>
  199. <Cell col="14" text="bind:zipcd11"/>
  200. <Cell col="15" text="bind:zipcd12"/>
  201. <Cell col="16" text="bind:zipcdseq1"/>
  202. <Cell col="17" text="bind:addr1"/>
  203. <Cell col="18" text="bind:detladdr1"/>
  204. <Cell col="19" text="bind:zipcd21"/>
  205. <Cell col="20" text="bind:zipcd22"/>
  206. <Cell col="21" text="bind:zipcdseq2"/>
  207. <Cell col="22" text="bind:addr2"/>
  208. <Cell col="23" text="bind:detladdr2"/>
  209. <Cell col="24" text="bind:zipcd31"/>
  210. <Cell col="25" text="bind:zipcd32"/>
  211. <Cell col="26" text="bind:zipcdseq3"/>
  212. <Cell col="27" text="bind:addr3"/>
  213. <Cell col="28" text="bind:detladdr3"/>
  214. <Cell col="29" text="bind:psptno"/>
  215. <Cell col="30" text="bind:brthareacnts"/>
  216. <Cell col="31" text="bind:pidcretfg"/>
  217. <Cell col="32" text="bind:engnm"/>
  218. <Cell col="33" text="bind:forgneryn"/>
  219. <Cell col="34" text="bind:mpphon"/>
  220. <Cell col="35" text="bind:brthdd"/>
  221. <Cell col="36" text="bind:patm_insucd"/>
  222. <Cell col="37" text="bind:patm_insuid"/>
  223. <Cell col="38" text="bind:patm_insukind"/>
  224. <Cell col="39" text="bind:clntgrde"/>
  225. <Cell col="40" text="bind:patremcnts"/>
  226. <Cell col="41" text="bind:pkgcd"/>
  227. <Cell col="42" text="bind:conseq"/>
  228. <Cell col="43" text="bind:conhistseq"/>
  229. <Cell col="44" text="bind:cmpycd"/>
  230. <Cell col="45" text="bind:choiflag"/>
  231. <Cell col="46" text="bind:clntcmpynm"/>
  232. <Cell col="47" text="bind:clntdeptnm"/>
  233. <Cell col="48" text="bind:cmpynm"/>
  234. <Cell col="49" text="bind:jobposcd"/>
  235. <Cell col="50" text="bind:clntempid"/>
  236. <Cell col="51" text="bind:deptcd"/>
  237. <Cell col="52" text="bind:clntpos"/>
  238. <Cell col="53" text="bind:condd"/>
  239. <Cell col="54" text="bind:confromdd"/>
  240. <Cell col="55" text="bind:contodd"/>
  241. <Cell col="56" text="bind:contype"/>
  242. <Cell col="57" text="bind:pat_rowid"/>
  243. </Band>
  244. </Format>
  245. </Formats>
  246. </Grid>
  247. </Layout>
  248. </Layouts>
  249. </Div>
  250. <Div position="absolute 0 316 576 343" id="group1" scrollbars="autoboth">
  251. <Layouts>
  252. <Layout>
  253. <Button position="absolute 457 5 513 27" id="btn_confirm" class="btn4" text="확인" onclick="group1_btn_confirm_onclick"/>
  254. <Button position="absolute 516 5 572 27" id="btn_cancel" class="btn4" text="취소" onclick="group1_btn_cancel_onclick"/>
  255. <Shape position="absolute 0 0 576 6" id="line32" class="line_6"/>
  256. </Layout>
  257. </Layouts>
  258. </Div>
  259. </Layout>
  260. </Layouts>
  261. <Objects>
  262. <Dataset id="ds_main_patinfo_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  263. <ColumnInfo>
  264. <Column id="pid" type="STRING" size="256"/>
  265. <Column id="hngnm" type="STRING" size="256"/>
  266. <Column id="rgstno1" type="STRING" size="256"/>
  267. <Column id="rgstno2" type="STRING" size="256"/>
  268. <Column id="healexamdd" type="STRING" size="256"/>
  269. <Column id="sex" type="STRING" size="256"/>
  270. <Column id="age" type="STRING" size="256"/>
  271. <Column id="telno" type="STRING" size="256"/>
  272. <Column id="emailid" type="STRING" size="256"/>
  273. <Column id="emailtype" type="STRING" size="256"/>
  274. <Column id="healexampid" type="STRING" size="256"/>
  275. <Column id="emailkind" type="STRING" size="256"/>
  276. <Column id="zipcd11" type="STRING" size="256"/>
  277. <Column id="zipcd12" type="STRING" size="256"/>
  278. <Column id="zipcdseq1" type="STRING" size="256"/>
  279. <Column id="addr1" type="STRING" size="256"/>
  280. <Column id="detladdr1" type="STRING" size="256"/>
  281. <Column id="zipcd21" type="STRING" size="256"/>
  282. <Column id="zipcd22" type="STRING" size="256"/>
  283. <Column id="zipcdseq2" type="STRING" size="256"/>
  284. <Column id="addr2" type="STRING" size="256"/>
  285. <Column id="detladdr2" type="STRING" size="256"/>
  286. <Column id="zipcd31" type="STRING" size="256"/>
  287. <Column id="zipcd32" type="STRING" size="256"/>
  288. <Column id="zipcdseq3" type="STRING" size="256"/>
  289. <Column id="addr3" type="STRING" size="256"/>
  290. <Column id="detladdr3" type="STRING" size="256"/>
  291. <Column id="psptno" type="STRING" size="256"/>
  292. <Column id="brthareacnts" type="STRING" size="256"/>
  293. <Column id="pidcretfg" type="STRING" size="256"/>
  294. <Column id="engnm" type="STRING" size="256"/>
  295. <Column id="mpphon" type="STRING" size="256"/>
  296. <Column id="forgneryn" type="STRING" size="256"/>
  297. <Column id="healexamdetlnm" type="STRING" size="256"/>
  298. <Column id="builno1" type="STRING" size="256"/>
  299. <Column id="builno2" type="STRING" size="256"/>
  300. <Column id="builno3" type="STRING" size="256"/>
  301. <Column id="pat_rowid" type="STRING" size="256"/>
  302. </ColumnInfo>
  303. <Rows>
  304. <Row>
  305. <Col id="pid"/>
  306. <Col id="hngnm"/>
  307. <Col id="rgstno1"/>
  308. <Col id="rgstno2"/>
  309. <Col id="healexamdd"/>
  310. <Col id="sex"/>
  311. <Col id="age"/>
  312. <Col id="telno"/>
  313. <Col id="emailid"/>
  314. <Col id="emailtype"/>
  315. <Col id="healexampid"/>
  316. <Col id="emailkind"/>
  317. <Col id="zipcd11"/>
  318. <Col id="zipcd12"/>
  319. <Col id="zipcdseq1"/>
  320. <Col id="addr1"/>
  321. <Col id="detladdr1"/>
  322. <Col id="zipcd21"/>
  323. <Col id="zipcd22"/>
  324. <Col id="zipcdseq2"/>
  325. <Col id="addr2"/>
  326. <Col id="detladdr2"/>
  327. <Col id="zipcd31"/>
  328. <Col id="zipcd32"/>
  329. <Col id="zipcdseq3"/>
  330. <Col id="addr3"/>
  331. <Col id="detladdr3"/>
  332. <Col id="psptno"/>
  333. <Col id="brthareacnts"/>
  334. <Col id="pidcretfg"/>
  335. <Col id="engnm"/>
  336. <Col id="mpphon"/>
  337. <Col id="forgneryn"/>
  338. <Col id="healexamdetlnm"/>
  339. <Col id="builno1"/>
  340. <Col id="builno2"/>
  341. <Col id="builno3"/>
  342. <Col id="pat_rowid"/>
  343. </Row>
  344. </Rows>
  345. </Dataset>
  346. <Dataset id="ds_target" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  347. <ColumnInfo>
  348. <Column id="srchcond" type="STRING" size="256"/>
  349. <Column id="srchpnm" type="STRING" size="256"/>
  350. <Column id="srchpid" type="STRING" size="256"/>
  351. <Column id="setflag" type="STRING" size="256"/>
  352. <Column id="desxpath" type="STRING" size="256"/>
  353. <Column id="setyn" type="STRING" size="256"/>
  354. </ColumnInfo>
  355. </Dataset>
  356. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  357. <ColumnInfo>
  358. <Column id="srchcond" type="STRING" size="256"/>
  359. <Column id="srchpid" type="STRING" size="256"/>
  360. <Column id="srchpnm" type="STRING" size="256"/>
  361. <Column id="srchrgstno1" type="STRING" size="256"/>
  362. <Column id="srchrgstno2" type="STRING" size="256"/>
  363. <Column id="srchinstcd" type="STRING" size="256"/>
  364. <Column id="srchengnm" type="STRING" size="256"/>
  365. </ColumnInfo>
  366. <Rows>
  367. <Row>
  368. <Col id="srchcond">pid</Col>
  369. <Col id="srchpid"/>
  370. <Col id="srchpnm"/>
  371. <Col id="srchrgstno1"/>
  372. <Col id="srchrgstno2"/>
  373. <Col id="srchinstcd"/>
  374. <Col id="srchengnm"/>
  375. </Row>
  376. </Rows>
  377. </Dataset>
  378. <Dataset id="ds_hidden_patinfo_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep"/>
  379. </Objects>
  380. <Bind>
  381. <BindItem id="item0" compid="group3.group2.cmb_cond" propid="value" datasetid="ds_send" columnid="srchcond"/>
  382. <BindItem id="item1" compid="group3.group2.ipt_pid" propid="value" datasetid="ds_send" columnid="srchpid"/>
  383. <BindItem id="item2" compid="group3.group2.ipt_rgstno1" propid="value" datasetid="ds_send" columnid="srchrgstno1"/>
  384. <BindItem id="item3" compid="group3.group2.ipt_rgstno2" propid="value" datasetid="ds_send" columnid="srchrgstno2"/>
  385. </Bind>
  386. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  387. * System Name :
  388. * Job Name :
  389. * Creator :
  390. * Make Date : 2017-06-19
  391. * Description :
  392. *---------------------------------------------------------------------------------------
  393. * Modify Date Modifier Modify Description
  394. *---------------------------------------------------------------------------------------
  395. * 2017-06-19 Live Converter TF->XP
  396. *
  397. *---------------------------------------------------------------------------------------
  398. ****************************************************************************************/
  399. //=======================================================================================
  400. // Lib Include
  401. //---------------------------------------------------------------------------------------
  402. include "com_commonxp::comm_main.xjs";
  403. //include "ast_healexamxp::healexam.xjs";
  404. //=======================================================================================
  405. // Global Form Variable
  406. //---------------------------------------------------------------------------------------
  407. var arErrorCode = new HashArray();
  408. //=======================================================================================
  409. // Function
  410. //---------------------------------------------------------------------------------------
  411. function fInit(){
  412. ds_main_patinfo_item.clearData();
  413. }
  414. /**========================================================================================================================
  415. ** 환자리스트 조회
  416. *========================================================================================================================*/
  417. function fGetPatList(bInit){
  418. if( bInit == true ) {
  419. fInit();
  420. }
  421. var vCond = ds_send.getColumn(0, "srchcond");
  422. if( utlf_isNull(vCond) ) {
  423. vCond = "pid";
  424. }
  425. /**
  426. * 환자명으로 조회시 두자이상 입력 체크
  427. */
  428. var vPatuser = opener.frmf_getParameter("SPAHA00400_PARAM14");
  429. var vPnm = utlf_transNullToEmpty(ds_send.getColumn(0, "srchpid"));
  430. if(vCond == "pnm"){
  431. if(vPnm.length < 2){
  432. sysf_messageBox("환자성명을 두자이상 입력하세요!", "E999");
  433. return;
  434. }
  435. }else if(vCond == "rgstno"){
  436. var vRgstno1 = ds_send.getColumn(0, "srchrgstno1");
  437. var vRgstno2 = ds_send.getColumn(0, "srchrgstno2");
  438. if(vPatuser == "Y" || vPatuser == "E") {
  439. if(vRgstno1.length != 6 || vRgstno2.length != 7) {
  440. sysf_messageBox("주민번호 전체를 정확히 입력하세요!", "E999");
  441. return;
  442. }
  443. if(vPnm.length < 2){
  444. sysf_messageBox("환자성명을 두자이상 입력하세요!", "E999");
  445. return;
  446. }
  447. } else {
  448. //vPnm = ds_send.getColumn(0, "srchrgstno1");
  449. if(vRgstno1.length < 1){
  450. sysf_messageBox("주민번호를 입력하세요!", "E999");
  451. return;
  452. }
  453. }
  454. }else if(vCond == "engnm"){
  455. if(vPnm.length < 2){
  456. sysf_messageBox("영문이름을 두자이상 입력하세요!", "E999");
  457. return;
  458. }
  459. }else{
  460. if(vPnm.length < 1){
  461. sysf_messageBox("등록번호를 입력하세요!", "E999");
  462. return;
  463. }
  464. }
  465. /**
  466. * 이외에는...null일경우 조회되지 않도록
  467. */
  468. ds_send.setColumn( 0, "srchcond" , vCond);
  469. ds_send.setColumn( 0, "srchpnm" , ds_send.getColumn(0, "srchpid") );
  470. ds_send.setColumn( 0, "srchengnm" , ds_send.getColumn(0, "srchpid") );
  471. ds_send.setColumn( 0, "srchinstcd" , sysf_getUserInfo("dutplceinstcd"));
  472. if(vPatuser == "E") {
  473. dsf_createDs("ds_send_temp");
  474. dsf_makeValue(ds_send_temp, "srchcond", "string", "4");
  475. dsf_makeValue(ds_send_temp, "rrgstno1", "string", ds_send.getColumn(0, "srchrgstno1"));
  476. dsf_makeValue(ds_send_temp, "rrgstno2", "string", ds_send.getColumn(0, "srchrgstno2"));
  477. dsf_makeValue(ds_send_temp, "hngnm", "string", ds_send.getColumn(0, "srchpnm"));
  478. dsf_makeValue(ds_send_temp, "instcd", "string", ds_send.getColumn(0, "instcd"));
  479. var oParam = {};
  480. oParam.id = "TRPMC02500";
  481. oParam.service = "patinfomngtapp.PatBaseInfo";
  482. oParam.method = "reqGetPatInfo";
  483. oParam.inds = "req=ds_send_temp";
  484. oParam.outds = "ds_hidden_patinfo_item=patinfolist";
  485. oParam.async = false;
  486. //oParam.callback = "cf_TRAHA00101";
  487. tranf_submit(oParam);
  488. ds_hidden_patinfo_item.updateColID("rrgstno1","rgstno1");
  489. ds_hidden_patinfo_item.updateColID("rrgstno2","rgstno2");
  490. if(ds_hidden_patinfo_item.rowcount > 0){
  491. ds_main_patinfo_item.copyData(ds_hidden_patinfo_item);
  492. }
  493. } else {
  494. var oParam = {};
  495. oParam.id = "TRAHA00101";
  496. oParam.service = "healexambaseapp.ComCode";
  497. oParam.method = "reqGetPatInfo";
  498. oParam.inds = "req=ds_send";
  499. oParam.outds = "ds_hidden_patinfo_item=item";
  500. oParam.async = false;
  501. oParam.callback = "cf_TRAHA00101";
  502. tranf_submit(oParam);
  503. if(ds_hidden_patinfo_item.rowcount > 0){
  504. ds_main_patinfo_item.copyData(ds_hidden_patinfo_item);
  505. if(vPatuser == "Y") {
  506. ds_main_patinfo_item.filter("healexamdd == "+utlf_getCurrentDate());
  507. }
  508. }
  509. }
  510. }
  511. function cf_TRAHA00101(sSvcId, nErrorCode, sErrorMsg) {
  512. if(nErrorCode < 0) return;
  513. ds_hidden_patinfo_item.updateColID("rrgstno1","rgstno1");
  514. ds_hidden_patinfo_item.updateColID("rrgstno2","rgstno2");
  515. if( !utlf_isNull(ds_hidden_patinfo_item.getColumnInfo("insukind")) ){
  516. ds_hidden_patinfo_item.updateColID("insukind","patm_insukind");
  517. }else{
  518. ds_hidden_patinfo_item.addColumn("patm_insukind", "string");
  519. }
  520. if( !utlf_isNull(ds_hidden_patinfo_item.getColumnInfo("instcd")) ){
  521. ds_hidden_patinfo_item.updateColID("instcd","patm_insucd");
  522. }else{
  523. ds_hidden_patinfo_item.addColumn("patm_insucd", "string");
  524. }
  525. ds_hidden_patinfo_item.updateColID("insuid","patm_insuid");
  526. dsf_setTypeFormat(ds_hidden_patinfo_item, "healexampid:INT^zipcdseq1:INT^zipcdseq2:INT^zipcdseq3:INT");
  527. }
  528. /**=====================================================================================
  529. * SMAHA00400_PARAM1 : 현재화면ID
  530. * SPAHA00400_PARAM2 : 검색조건 pnm/pid/rgstno
  531. * SPAHA00400_PARAM3 : 검색어
  532. * SPAHA00400_PARAM4 : nodeset전체 copy여부 (N일경우 원무등록번호와 환자 한글명만 copy)
  533. * SPAHA00400_PARAM5 : nodeset전체 copy여부 Y 일경우 대상노드
  534. * SPAHA00400_PARAM6 : nodeset전체 copy여부 N 일경우 원무등록번호 대상노드
  535. * SPAHA00400_PARAM7 : nodeset전체 copy여부 N 일경우 환자 한글명 대상노드
  536. * =====================================================================================
  537. */
  538. function fSetPatinfo(){
  539. var idx = ds_main_patinfo_item.rowposition;
  540. if(idx < 0){
  541. return;
  542. }
  543. if(frmf_checkOpener()){
  544. //var vFg = ds_target.getColumn(0, "setflag");
  545. var vOpener = opener.frmf_getParameter("SPAHA00400_PARAM1");
  546. var bSetYN = opener.frmf_getParameter("SPAHA00400_PARAM4");
  547. var vDestXPath = opener.frmf_getParameter("SPAHA00400_PARAM5");
  548. var vDestPid = opener.frmf_getParameter("SPAHA00400_PARAM6");
  549. var vDestPnm = opener.frmf_getParameter("SPAHA00400_PARAM7");
  550. var vHometel = opener.frmf_getParameter("SPAHA00400_PARAM10");
  551. var vMpphontel = opener.frmf_getParameter("SPAHA00400_PARAM11");
  552. var vSex = opener.frmf_getParameter("SPAHA00400_PARAM12");
  553. var vAge = opener.frmf_getParameter("SPAHA00400_PARAM13");
  554. //종합건진 접수화면
  555. if(bSetYN == "N"){
  556. if(utlf_isNull(vDestPid)){
  557. opener.objects[vDestXPath].setColumn(0,"pid" , ds_main_patinfo_item.getColumn(idx, "pid"));
  558. opener.objects[vDestXPath].setColumn(0,"hngnm" , ds_main_patinfo_item.getColumn(idx, "hngnm"));
  559. }else{
  560. opener.objects[vDestXPath].setColumn(0, vDestPid, ds_main_patinfo_item.getColumn(idx, "pid"));
  561. opener.objects[vDestXPath].setColumn(0, vDestPnm, ds_main_patinfo_item.getColumn(idx, "hngnm"));
  562. if(!utlf_isNull(vHometel)){
  563. opener.objects[vDestXPath].setColumn(0, vHometel, ds_main_patinfo_item.getColumn(idx, "telno"));
  564. }
  565. if(!utlf_isNull(vMpphontel)){
  566. opener.objects[vDestXPath].setColumn(0, vMpphontel, ds_main_patinfo_item.getColumn(idx, "mpphon"));
  567. }
  568. if(!utlf_isNull(vSex)){
  569. opener.objects[vDestXPath].setColumn(0, vSex, ds_main_patinfo_item.getColumn(idx, "sex"));
  570. }
  571. if(!utlf_isNull(vAge)){
  572. opener.objects[vDestXPath].setColumn(0, vAge, ds_main_patinfo_item.getColumn(idx, "age"));
  573. }
  574. }
  575. }else{
  576. dsf_makeValue(ds_main_patinfo_item, "rrgstno1", "string", ds_main_patinfo_item.getColumn(idx, "rgstno1"));
  577. dsf_makeValue(ds_main_patinfo_item, "rrgstno2", "string", ds_main_patinfo_item.getColumn(idx, "rgstno2"));
  578. dsf_copyColInfo(opener.objects[vDestXPath], ds_main_patinfo_item);
  579. opener.objects[vDestXPath].copyRow(opener.objects[vDestXPath].addRow(), ds_main_patinfo_item, idx);
  580. }
  581. opener.ds_temp.setColumn( 0, "okflag", "ok");
  582. this.close();
  583. }
  584. }
  585. /****************************************************************************************
  586. * Argument : N/A
  587. * Description : 초기화
  588. ****************************************************************************************/
  589. //=======================================================================================
  590. // Event
  591. //---------------------------------------------------------------------------------------
  592. /****************************************************************************************
  593. * Components : Form
  594. * Description : 화면 처음 초기화시 폼초기화
  595. ****************************************************************************************/
  596. function SPAHA00400_onload(obj:Form, e:LoadEventInfo) {
  597. frmf_initForm(obj);
  598. //grdf_initGrid(grd_XXX);
  599. grdf_setGridSort(group3.grd_patlst);
  600. //grdf_setRowTypeIcon(grd_XXX, 0_컬럼위치값);
  601. fInit();
  602. /**=====================================================================================
  603. * SMAHA00400_PARAM1 : 현재화면ID
  604. * SPAHA00400_PARAM2 : 검색조건 pnm/pid/rgstno
  605. * SPAHA00400_PARAM3 : 검색어
  606. * SPAHA00400_PARAM4 : nodeset전체 copy여부 (N일경우 원무등록번호와 환자 한글명만 copy)
  607. * SPAHA00400_PARAM5 : nodeset전체 copy여부 Y 일경우 대상노드
  608. * SPAHA00400_PARAM6 : nodeset전체 copy여부 N 일경우 원무등록번호 대상노드
  609. * SPAHA00400_PARAM7 : nodeset전체 copy여부 N 일경우 환자 한글명 대상노드
  610. * SPAHA00400_PARAM8 : 검색어 주민번호1
  611. * SPAHA00400_PARAM9 : 검색어 주민번호2
  612. * =====================================================================================
  613. */
  614. if( frmf_checkOpener() ){
  615. if(utlf_isNull(opener.objects["ds_temp"])) opener.dsf_createDs("ds_temp");
  616. dsf_makeValue( opener.ds_temp, "okflag", "string", "" );
  617. ds_send.setColumn( 0, "srchcond" , opener.frmf_getParameter("SPAHA00400_PARAM2"));
  618. ds_send.setColumn( 0, "srchpid" , opener.frmf_getParameter("SPAHA00400_PARAM3"));
  619. group3.group2.cmb_cond.enable = false;
  620. if( ds_send.getColumn(0, "srchcond") == "rgstno" ){
  621. group3.group2.cmb_cond.index = 0;
  622. group3.group2.ipt_rgstno1.value = opener.frmf_getParameter("SPAHA00400_PARAM8") ;
  623. group3.group2.ipt_rgstno2.value = opener.frmf_getParameter("SPAHA00400_PARAM9") ;
  624. } else if( ds_send.getColumn(0, "srchcond") == "pid" ){
  625. group3.group2.cmb_cond.index = 1;
  626. } else if( ds_send.getColumn(0, "srchcond") == "pnm" ){
  627. group3.group2.cmb_cond.index = 2;
  628. }
  629. group3.group2.cmb_cond.enable = true;
  630. var vPatuser = opener.frmf_getParameter("SPAHA00400_PARAM14");
  631. if(vPatuser == "Y" || vPatuser == "E") {
  632. ds_send.setColumn(0, "srchpid", "");
  633. group3.group2.cmb_cond.index = 5;
  634. group3.group2.cmb_cond.enable = false;
  635. // group3.group2.ipt_pid.visible = false;
  636. // var wid1 = group3.group2.ipt_rgstno1.position.width;
  637. // var wid2 = group3.group2.ipt_rgstno2.position.width;
  638. // group3.group2.ipt_rgstno1.position.left = group3.group2.ipt_pid.position.left;
  639. // group3.group2.ipt_rgstno1.position.width = wid1;
  640. // group3.group2.ipt_rgstno2.position.left = group3.group2.ipt_rgstno1.position.right + 3;
  641. // group3.group2.ipt_rgstno2.position.width = wid2;
  642. // group3.group2.ipt_rgstno1.setFocus();
  643. }
  644. if(utlf_isNull(ds_send.getColumn(0, "srchpid")))
  645. {
  646. return;
  647. }
  648. fGetPatList(false);
  649. }
  650. }
  651. /****************************************************************************************
  652. * Components : Button
  653. * Description : 조회
  654. ****************************************************************************************/
  655. function group3_group2_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  656. fGetPatList(true);
  657. }
  658. /****************************************************************************************
  659. * Components : Edit
  660. * Description : 조회조건 입력후 엔터
  661. ****************************************************************************************/
  662. function group3_group2_ipt_pid_onkeyup(obj:Edit, e:KeyEventInfo) {
  663. if(e.keycode == 13) {
  664. obj.updateToDataset();
  665. group3.group2.btn_search.click();
  666. }
  667. }
  668. function group3_group2_ipt_rgstno2_onkeyup(obj:MaskEdit, e:KeyEventInfo) {
  669. if(e.keycode == 13) {
  670. obj.updateToDataset();
  671. group3.group2.btn_search.click();
  672. }
  673. }
  674. /****************************************************************************************
  675. * Components : Grid
  676. * Description : 리스트 선택
  677. ****************************************************************************************/
  678. function group3_grd_patlst_oncelldblclick(obj:Grid, e:GridClickEventInfo) {
  679. if(e.row > -1){
  680. //2016_01_19 이정택 수정(마스킹 처리 후 환자번호가 확인됐을시 주민번호가 보이도록 수정)
  681. //2016_03_21 환자번호가 없는 가예약 환자일 경우는 rowid로 조회되도록 수정
  682. if(ds_main_patinfo_item.getColumn(e.row, "pid")=="0"){
  683. dsf_makeValue( ds_send, "srchcond", "string", "rowid");
  684. dsf_makeValue( ds_send, "srchrowid", "string", ds_main_patinfo_item.getColumn(e.row, "pat_rowid"));
  685. }else{
  686. dsf_makeValue( ds_send, "srchcond", "string", "pid");
  687. dsf_makeValue( ds_send, "srchpid", "string", ds_main_patinfo_item.getColumn(e.row, "pid"));
  688. }
  689. if(opener.frmf_getParameter("SPAHA00400_PARAM1") != "SMAHR02406") {
  690. fGetPatList();
  691. ds_main_patinfo_item.rowposition = 0;
  692. }
  693. //2016_01_19 이정택 수정
  694. fSetPatinfo();
  695. }
  696. }
  697. /****************************************************************************************
  698. * Components : Button
  699. * Description : 확인
  700. ****************************************************************************************/
  701. function group1_btn_confirm_onclick(obj:Button, e:ClickEventInfo) {
  702. if(ds_main_patinfo_item.rowposition > -1) {
  703. //2016_01_19 이정택 수정(마스킹 처리 후 환자번호가 확인됐을시 주민번호가 보이도록 수정)
  704. dsf_makeValue( ds_send, "srchcond", "string", "pid");
  705. dsf_makeValue( ds_send, "srchpid", "string", ds_main_patinfo_item.getColumn(ds_main_patinfo_item.rowposition, "pid"));
  706. fGetPatList();
  707. ds_main_patinfo_item.rowposition = 0;
  708. //2016_01_19 이정택 수정
  709. fSetPatinfo();
  710. }
  711. this.close();
  712. }
  713. /****************************************************************************************
  714. * Components : Button
  715. * Description : 닫기
  716. ****************************************************************************************/
  717. function group1_btn_cancel_onclick(obj:Button, e:ClickEventInfo) {
  718. if( frmf_checkOpener() ){
  719. opener.ds_temp.setColumn( 0, "okflag", "") ;
  720. }
  721. this.close();
  722. }
  723. /****************************************************************************************
  724. * Components : Combo
  725. * Description : 검색조건 변경
  726. ****************************************************************************************/
  727. function group3_group2_cmb_cond_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  728. {
  729. var vCond = e.postvalue;
  730. // ds_send.setColumn(0,"srchpid","");
  731. // ds_send.setColumn(0,"srchpnm","");
  732. // ds_send.setColumn(0,"srchengnm","");
  733. // ds_send.setColumn(0,"srchrgstno1","");
  734. // ds_send.setColumn(0,"srchrgstno2","");
  735. if(vCond == "rgstno" && e.postindex == 0){
  736. group3.group2.ipt_rgstno1.setFocus();
  737. } else if(vCond != "rowid"){
  738. group3.group2.ipt_pid.setFocus();
  739. }
  740. }
  741. function group3_group2_ipt_rgstno1_onkeyup(obj:MaskEdit, e:KeyEventInfo)
  742. {
  743. if( obj.text.length == 6 ){
  744. group3.group2.ipt_rgstno2.setFocus();
  745. }
  746. }
  747. ]]></Script>
  748. </Form>
  749. </FDL>