SMPIB00800_자동메모생성관리.xfdl 91 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135
  1. <?xml version="1.0" encoding="utf-8" standalone="no"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml" />
  4. <Form id="SMPIB00800" position="absolute 0 0 1280 1024" titletext="JX999 자동생성" onload="SMPIB00800_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group3" scrollbars="autoboth" position="absolute 0 13 1200 730" style="">
  8. <Layouts>
  9. <Layout>
  10. <Div id="group2" scrollbars="autoboth" position="absolute 0 10 1200 55" style="align: top;">
  11. <Layouts>
  12. <Layout>
  13. <Shape id="roundrect1" anchor="default" type="roundrectangle" position="absolute 0 0 1200 40" style="" />
  14. <Static id="caption2" class="search_name" position="absolute 5 10 86 27" style="" text="검색조건 :" />
  15. <Button id="btn_search" class="btn1_letter2" taborder="4" position="absolute 1137 10 1193 32" style="" text="조회" onclick="group3_group2_btn_search_onclick" />
  16. <Shape id="line13" class="line_4" linetype="vertical" position="absolute 1129 9 1132 31" style="" anchor="default" />
  17. <Calendar id="ipt_mdldd" class="input_date" visible="false" position="absolute 167 10 261 29" style="" anchor="default" />
  18. <Edit id="ipt_srch" class="input_search" taborder="2" position="absolute 167 10 261 29" style="" anchor="default" onlbuttonup="group3_group2_ipt_srch_onlbuttonup" onkeyup="group3_group2_ipt_srch_onkeyup" />
  19. <Combo datacolumn="datacolumn" codecolumn="codecolumn" columncount="-1" rowcount="-1" id="cmb_srchkind" class="combo_search" taborder="1" position="absolute 89 10 164 29" style="" onitemclick="group3_group2_cmb_srchkind_onitemclick" onitemchanged="group3_group2_cmb_srchkind_onitemchanged">
  20. <Dataset id="innerdataset">
  21. <ColumnInfo>
  22. <Column id="codecolumn" />
  23. <Column id="datacolumn" />
  24. </ColumnInfo>
  25. <Rows>
  26. <Row>
  27. <Col id="codecolumn">-</Col>
  28. <Col id="datacolumn">전체</Col>
  29. </Row>
  30. <Row>
  31. <Col id="codecolumn">0</Col>
  32. <Col id="datacolumn">수가코드</Col>
  33. </Row>
  34. <Row>
  35. <Col id="codecolumn">1</Col>
  36. <Col id="datacolumn">상병코드</Col>
  37. </Row>
  38. <Row>
  39. <Col id="codecolumn">2</Col>
  40. <Col id="datacolumn">기준일</Col>
  41. </Row>
  42. </Rows>
  43. </Dataset>
  44. </Combo>
  45. <Static id="caption3" class="search_name" position="absolute 521 12 595 29" style="" text="진료과 :" />
  46. <Combo innerdataset="ds_init_orddeptcd_orddeptcdlist" datacolumn="nm" codecolumn="cd" columncount="-1" rowcount="-1" id="cmb_orddepcdt" class="combo_search" taborder="3" position="absolute 595 12 695 31" style="" onkeyup="group3_group2_cmb_orddepcdt_onkeyup" />
  47. <Edit id="opt_nm" position="absolute 267 10 512 29" style="" anchor="default" readonly="true" />
  48. <Static id="caption4" class="search_name" position="absolute 715 13 790 30" style="" text="종료건 :" />
  49. <Radio datacolumn="datacolumn" codecolumn="codecolumn" columncount="-1" rowcount="-1" id="rdo_delinclude" position="absolute 790 14 895 29" style="">
  50. <Dataset id="innerdataset">
  51. <ColumnInfo>
  52. <Column id="codecolumn" />
  53. <Column id="datacolumn" />
  54. </ColumnInfo>
  55. <Rows>
  56. <Row>
  57. <Col id="codecolumn">1</Col>
  58. <Col id="datacolumn">포함</Col>
  59. </Row>
  60. <Row>
  61. <Col id="codecolumn">2</Col>
  62. <Col id="datacolumn">미포함</Col>
  63. </Row>
  64. </Rows>
  65. </Dataset>
  66. </Radio>
  67. <Static id="caption7" class="search_name" position="absolute 916 14 1006 31" style="" text="특정코드 :" />
  68. <Radio datacolumn="datacolumn" codecolumn="codecolumn" columncount="-1" rowcount="-1" id="radio1" position="absolute 1003 15 1123 30" style="" onitemchanged="group3_group2_radio1_onitemchanged">
  69. <Dataset id="innerdataset">
  70. <ColumnInfo>
  71. <Column id="codecolumn" />
  72. <Column id="datacolumn" />
  73. </ColumnInfo>
  74. <Rows>
  75. <Row>
  76. <Col id="codecolumn">JX999</Col>
  77. <Col id="datacolumn">메모</Col>
  78. </Row>
  79. <Row>
  80. <Col id="codecolumn">MT015</Col>
  81. <Col id="datacolumn">소명자료</Col>
  82. </Row>
  83. </Rows>
  84. </Dataset>
  85. </Radio>
  86. </Layout>
  87. </Layouts>
  88. </Div>
  89. <Static id="caption1" class="tit_2" position="absolute 5 65 110 78" style="" text="자동 메모 목록" />
  90. <Shape id="line1" class="line_1" linetype="horizontal" position="absolute 0 80 1200 83" style="" anchor="default" />
  91. <Button id="btn_delrow" class="btn2_letter3" taborder="7" position="absolute 1088 59 1141 78" style="" text="행삭제" onclick="group3_btn_delrow_onclick" />
  92. <Button id="btn_excel" class="btn2_letter4" taborder="5" position="absolute 965 59 1029 78" style="" text="엑셀저장" onclick="group3_btn_excel_onclick" />
  93. <Button id="btn_addrow" class="btn2_letter3" taborder="6" position="absolute 1032 59 1085 78" style="" text="행추가" onclick="group3_btn_addrow_onclick" />
  94. <Button id="btn_copyrow" class="btn2_letter3" taborder="8" position="absolute 1144 59 1197 78" style="" text="행복사" onclick="group3_btn_copyrow_onclick" />
  95. <Grid id="grd_listatsu" binddataset="ds_main_list1_listatsu" taborder="9" position="absolute 0 85 1200 710" style="" onkeydown="group3_grd_listatsu_onkeydown" onlbuttonup="group3_grd_listatsu_onlbuttonup" ontextchanged="group3_grd_listatsu_ontextchanged" onaftersort="group3_grd_listatsu_onaftersort">
  96. <Formats>
  97. <Format id="default">
  98. <Columns>
  99. <Column size="85" />
  100. <Column size="140" />
  101. <Column size="57" />
  102. <Column size="122" />
  103. <Column size="58" />
  104. <Column size="125" />
  105. <Column size="39" />
  106. <Column size="73" />
  107. <Column size="85" />
  108. <Column size="84" />
  109. <Column size="57" />
  110. <Column size="191" />
  111. <Column size="100" />
  112. <Column size="100" />
  113. <Column size="100" />
  114. <Column size="40" />
  115. <Column size="100" />
  116. </Columns>
  117. <Rows>
  118. <Row size="24" band="head" />
  119. <Row size="24" />
  120. </Rows>
  121. <Band id="head">
  122. <Cell text="수가코드" />
  123. <Cell col="1" text="수가명" />
  124. <Cell col="2" text="시작상병" />
  125. <Cell col="3" text="시작상병명" />
  126. <Cell col="4" text="종료상병" />
  127. <Cell col="5" text="종료상병명" />
  128. <Cell col="6" text="내원" />
  129. <Cell col="7" text="진료과" />
  130. <Cell col="8" text="시작일자" />
  131. <Cell col="9" text="종료일자" />
  132. <Cell col="10" text="특정코드" />
  133. <Cell col="11" text="특정내역" />
  134. <Cell col="12" text="수가코드key" />
  135. <Cell col="13" text="종료일자key" />
  136. <Cell col="14" text="순번" />
  137. <Cell col="15" text="기간" />
  138. <Cell col="16" text="상태" />
  139. </Band>
  140. <Band id="body">
  141. <Cell text="bind:calcscorcd" />
  142. <Cell col="1" text="bind:calcscornm" />
  143. <Cell col="2" text="bind:diagcdfrom" />
  144. <Cell col="3" text="bind:diagnmfrom" />
  145. <Cell col="4" text="bind:diagcdto" />
  146. <Cell col="5" text="bind:diagnmto" />
  147. <Cell col="6" text="bind:ioflag" />
  148. <Cell col="7" text="bind:orddeptcd" />
  149. <Cell col="8" text="bind:fromdd" />
  150. <Cell col="9" text="bind:todd" />
  151. <Cell col="10" text="bind:spclcd" />
  152. <Cell col="11" text="bind:spclspec" />
  153. <Cell col="12" text="bind:calcscorcdkey" />
  154. <Cell col="13" text="bind:toddkey" />
  155. <Cell col="14" text="bind:seq" />
  156. <Cell col="15" text="bind:repday" />
  157. <Cell col="16" text="bind:changeflag" />
  158. </Band>
  159. </Format>
  160. </Formats>
  161. </Grid>
  162. <Button id="btn_sel_dept" class="btn2_letter5" taborder="5" position="absolute 886 58 961 77" style="" text="진료과선택" onclick="group3_btn_sel_dept_onclick" />
  163. <Static id="caption14" class="tit_2" position="absolute 125 63 530 76" style="color:#0000ff;" text="동일 수가코드를 과별로 적용시는 진료과선택 기능을 이용하세요" />
  164. <Static id="caption8" class="tit_2" position="absolute 555 62 870 75" style="color:#0000ff;" text="소명자료 입력시 텍스트입력(MT016)은 적용불가" />
  165. </Layout>
  166. </Layouts>
  167. </Div>
  168. <Div id="group1" position="absolute 0 0 701 13" style="">
  169. <Layouts>
  170. <Layout>
  171. <Static id="caption6" class="tit_1" position="absolute 0 0 220 13" style="" text="JX999, MX999, MT015 자동생성" />
  172. </Layout>
  173. </Layouts>
  174. </Div>
  175. <Div id="group4" scrollbars="autoboth" position="absolute 0 737 1200 764" style="">
  176. <Layouts>
  177. <Layout>
  178. <Shape id="line23" class="line_6" linetype="horizontal" position="absolute 0 0 120 3" style="" anchor="default" />
  179. <Button id="bbt_init" class="btn4_letter3" taborder="13" position="absolute 1130 3 1198 25" style="" text="초기화" onclick="group4_bbt_init_onclick" />
  180. <Button id="bbt_save" class="btn4_letter2" taborder="11" position="absolute 1071 3 1127 25" style="" text="저장" onclick="group4_bbt_save_onclick" />
  181. </Layout>
  182. </Layouts>
  183. </Div>
  184. <Div id="grp_spclspec" position="absolute 0 190 435 590" style="border: solid #000000 #000000;">
  185. <Layouts>
  186. <Layout>
  187. <Shape id="line4" class="line_1" linetype="horizontal" position="absolute 0 20 430 23" style="" anchor="default" />
  188. <Static id="caption26" class="tit_2" position="absolute 5 5 118 19" style="" text="특정내역" />
  189. <TextArea id="tar_spclspec" position="absolute 1 25 431 359" style="border: solid #333333 #333333;color:#000000;" />
  190. <Button id="btn_memosave" class="btn4_letter2" position="absolute 310 365 366 387" style="" text="확인" onclick="grp_spclspec_btn_memosave_onclick" />
  191. <Button id="btn_cancel" class="btn4_letter2" position="absolute 370 365 426 387" style="" text="취소" onclick="grp_spclspec_btn_cancel_onclick" />
  192. </Layout>
  193. </Layouts>
  194. </Div>
  195. <Div id="grp_dept_select" position="absolute 445 155 805 605" style="border: solid #333333 #333333;">
  196. <Layouts>
  197. <Layout>
  198. <Grid id="grd_seldeptlist" binddataset="ds_hidden_seldeptlist" position="absolute 14 74 344 404" style="border: solid #333333 #333333;">
  199. <Formats>
  200. <Format id="default">
  201. <Columns>
  202. <Column size="56" />
  203. <Column size="88" />
  204. <Column size="162" />
  205. <Column size="9" />
  206. <Column size="100" />
  207. <Column size="100" />
  208. <Column size="100" />
  209. </Columns>
  210. <Rows>
  211. <Row size="24" band="head" />
  212. <Row size="24" />
  213. </Rows>
  214. <Band id="head">
  215. <Cell text="선택" />
  216. <Cell col="1" text="진료과코드" />
  217. <Cell col="2" text="진료과명" />
  218. <Cell col="3" text="기존선택" />
  219. </Band>
  220. <Band id="body">
  221. <Cell text="bind:selyn" />
  222. <Cell col="1" text="bind:deptcd" />
  223. <Cell col="2" text="bind:deptnm" />
  224. <Cell col="3" text="bind:oldselyn" />
  225. <Cell col="4" text="bind:calcscorcdkey" />
  226. <Cell col="5" text="bind:toddkey" />
  227. <Cell col="6" text="bind:seq" />
  228. </Band>
  229. </Format>
  230. </Formats>
  231. </Grid>
  232. <Static id="caption5" class="tit_2" position="absolute 5 5 349 18" style="" text="자동메모 진료과 선택 (수가코드로 조회후 사용하세요)" />
  233. <Button id="button2" class="btn4_letter2" position="absolute 281 418 337 440" style="" text="취소" onclick="grp_dept_select_button2_onclick" />
  234. <Button id="button4" class="btn4_letter2" position="absolute 216 418 272 440" style="" text="확인" onclick="grp_dept_select_button4_onclick" />
  235. <Shape id="line2" class="line_1" linetype="horizontal" position="absolute 4 20 354 23" style="" anchor="default" />
  236. <Edit id="opt_seldeptcd" class="output_fix" position="absolute 14 29 89 48" style="color:#ff00ff;" anchor="default" readonly="true" />
  237. <Edit id="opt_seldeptnm" class="output_fix" position="absolute 94 29 339 48" style="color:#ff00ff;" anchor="default" readonly="true" />
  238. <Edit id="opt_seldeptkeycalcs" class="output_fix" position="absolute 14 50 49 69" style="color:#ff00ff;" anchor="default" readonly="true" />
  239. <Edit id="opt_seldeptkeytodd" class="output_fix" position="absolute 49 50 79 69" style="color:#ff00ff;" anchor="default" readonly="true" />
  240. <Edit id="opt_seldeptkeyseq" class="output_fix" position="absolute 79 50 114 69" style="color:#ff00ff;" anchor="default" readonly="true" />
  241. <Button id="btn_selall" class="btn2_letter4" taborder="5" position="absolute 214 51 278 70" style="" text="전체선택" onclick="grp_dept_select_btn_selall_onclick" />
  242. <Button id="btn_selno" class="btn2_letter4" taborder="5" position="absolute 279 51 343 70" style="" text="전체취소" onclick="grp_dept_select_btn_selno_onclick" />
  243. <Edit id="opt_seldeptkeydeptcd" class="output_fix" position="absolute 114 50 149 69" style="color:#ff00ff;" anchor="default" readonly="true" />
  244. </Layout>
  245. </Layouts>
  246. </Div>
  247. </Layout>
  248. </Layouts>
  249. <Objects>
  250. <Dataset id="ds_hidden_sppiz00200" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  251. <ColumnInfo>
  252. <Column id="rslt" type="STRING" size="256" />
  253. </ColumnInfo>
  254. </Dataset>
  255. <Dataset id="ds_main_list1_listatsu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  256. <ColumnInfo>
  257. <Column id="calcscorcd" type="STRING" size="256" />
  258. <Column id="calcscornm" type="STRING" size="256" />
  259. <Column id="diagcdfrom" type="STRING" size="256" />
  260. <Column id="diagnmfrom" type="STRING" size="256" />
  261. <Column id="diagcdto" type="STRING" size="256" />
  262. <Column id="diagnmto" type="STRING" size="256" />
  263. <Column id="ioflag" type="STRING" size="256" />
  264. <Column id="orddeptcd" type="STRING" size="256" />
  265. <Column id="fromdd" type="STRING" size="256" />
  266. <Column id="todd" type="STRING" size="256" />
  267. <Column id="spclcd" type="STRING" size="256" />
  268. <Column id="spclspec" type="STRING" size="256" />
  269. <Column id="seq" type="STRING" size="256" />
  270. <Column id="repday" type="STRING" size="256" />
  271. <Column id="changeflag" type="STRING" size="256" />
  272. </ColumnInfo>
  273. <Rows>
  274. <Row>
  275. <Col id="calcscorcd"></Col>
  276. <Col id="calcscornm"></Col>
  277. <Col id="diagcdfrom"></Col>
  278. <Col id="diagnmfrom"></Col>
  279. <Col id="diagcdto"></Col>
  280. <Col id="diagnmto"></Col>
  281. <Col id="ioflag"></Col>
  282. <Col id="orddeptcd"></Col>
  283. <Col id="fromdd"></Col>
  284. <Col id="todd"></Col>
  285. <Col id="spclcd"></Col>
  286. <Col id="spclspec"></Col>
  287. <Col id="seq"></Col>
  288. <Col id="repday"></Col>
  289. <Col id="changeflag"></Col>
  290. </Row>
  291. </Rows>
  292. </Dataset>
  293. <Dataset id="ds_init_spclcdlist_spclcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  294. <ColumnInfo>
  295. <Column id="cdid" type="STRING" size="256" />
  296. <Column id="cdnm" type="STRING" size="256" />
  297. <Column id="cdid" type="STRING" size="256" />
  298. <Column id="cdnm" type="STRING" size="256" />
  299. <Column id="cdid" type="STRING" size="256" />
  300. <Column id="cdnm" type="STRING" size="256" />
  301. </ColumnInfo>
  302. <Rows>
  303. <Row>
  304. <Col id="cdid">JX999</Col>
  305. <Col id="cdnm">JX999</Col>
  306. </Row>
  307. <Row>
  308. <Col id="cdid">MX999</Col>
  309. <Col id="cdnm">MX999</Col>
  310. </Row>
  311. <Row>
  312. <Col id="cdid">MT015</Col>
  313. <Col id="cdnm">MT015</Col>
  314. </Row>
  315. </Rows>
  316. </Dataset>
  317. <Dataset id="ds_main_item1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  318. <ColumnInfo>
  319. <Column id="itematsu" type="STRING" size="256" />
  320. </ColumnInfo>
  321. <Rows>
  322. <Row>
  323. <Col id="itematsu"></Col>
  324. </Row>
  325. </Rows>
  326. </Dataset>
  327. <Dataset id="ds_hidden_sppiz00400_rslt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  328. <ColumnInfo>
  329. <Column id="diagcd" type="STRING" size="256" />
  330. <Column id="diagnm" type="STRING" size="256" />
  331. <Column id="diaghngnm" type="STRING" size="256" />
  332. <Column id="diagengnm" type="STRING" size="256" />
  333. </ColumnInfo>
  334. <Rows>
  335. <Row>
  336. <Col id="diagcd"></Col>
  337. <Col id="diagnm"></Col>
  338. <Col id="diaghngnm"></Col>
  339. <Col id="diagengnm"></Col>
  340. </Row>
  341. </Rows>
  342. </Dataset>
  343. <Dataset id="ds_hidden_sppiz00200_cond_clsp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  344. <ColumnInfo>
  345. <Column id="spclcd" type="STRING" size="256" />
  346. <Column id="seqno" type="STRING" size="256" />
  347. <Column id="spclspec" type="STRING" size="256" />
  348. <Column id="rowstat" type="STRING" size="256" />
  349. </ColumnInfo>
  350. <Rows>
  351. <Row>
  352. <Col id="spclcd">MT015</Col>
  353. <Col id="seqno">0</Col>
  354. <Col id="spclspec"></Col>
  355. <Col id="rowstat">-</Col>
  356. </Row>
  357. </Rows>
  358. </Dataset>
  359. <Dataset id="ds_hidden_listrsltnm_rsltnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  360. <ColumnInfo>
  361. <Column id="hngnm" type="STRING" size="256" />
  362. <Column id="hngcnt" type="STRING" size="256" />
  363. </ColumnInfo>
  364. <Rows>
  365. <Row>
  366. <Col id="hngnm"></Col>
  367. <Col id="hngcnt"></Col>
  368. </Row>
  369. </Rows>
  370. </Dataset>
  371. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  372. <ColumnInfo>
  373. <Column id="grdlistatsu" type="STRING" size="256" />
  374. <Column id="savedata" type="STRING" size="256" />
  375. <Column id="finddata" type="STRING" size="256" />
  376. </ColumnInfo>
  377. <Rows>
  378. <Row>
  379. <Col id="grdlistatsu"></Col>
  380. <Col id="savedata"></Col>
  381. </Row>
  382. </Rows>
  383. </Dataset>
  384. <Dataset id="ds_main_cdnmchk" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  385. <ColumnInfo>
  386. <Column id="optcdnm" type="STRING" size="256" />
  387. <Column id="chkcnt" type="STRING" size="256" />
  388. </ColumnInfo>
  389. <Rows>
  390. <Row>
  391. <Col id="optcdnm"></Col>
  392. <Col id="chkcnt"></Col>
  393. </Row>
  394. </Rows>
  395. </Dataset>
  396. <Dataset id="ds_main" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  397. <ColumnInfo />
  398. </Dataset>
  399. <Dataset id="ds_init_P0149list_P0149" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  400. <ColumnInfo>
  401. <Column id="cdnm" type="STRING" size="256" />
  402. <Column id="cdid" type="STRING" size="256" />
  403. </ColumnInfo>
  404. <Rows>
  405. <Row>
  406. <Col id="cdnm">전체</Col>
  407. <Col id="cdid">-</Col>
  408. </Row>
  409. </Rows>
  410. </Dataset>
  411. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  412. <ColumnInfo />
  413. </Dataset>
  414. <Dataset id="ds_hidden_seldeptbase" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  415. <ColumnInfo>
  416. <Column id="calcscorcd" type="STRING" size="256" />
  417. <Column id="calcscornm" type="STRING" size="256" />
  418. <Column id="calcscorcdkey" type="STRING" size="256" />
  419. <Column id="toddkey" type="STRING" size="256" />
  420. <Column id="seq" type="STRING" size="256" />
  421. <Column id="deptcd" type="STRING" size="256" />
  422. </ColumnInfo>
  423. <Rows>
  424. <Row>
  425. <Col id="calcscorcd"></Col>
  426. <Col id="calcscornm"></Col>
  427. <Col id="calcscorcdkey"></Col>
  428. <Col id="toddkey"></Col>
  429. <Col id="seq"></Col>
  430. <Col id="deptcd"></Col>
  431. </Row>
  432. </Rows>
  433. </Dataset>
  434. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  435. <ColumnInfo>
  436. <Column id="sppiz00500" type="STRING" size="256" />
  437. <Column id="currentdate" type="STRING" size="256" />
  438. <Column id="spclspec" type="STRING" size="256" />
  439. <Column id="oldspclspec" type="STRING" size="256" />
  440. </ColumnInfo>
  441. </Dataset>
  442. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  443. <ColumnInfo>
  444. <Column id="srchkind" type="STRING" size="256" />
  445. <Column id="srch" type="STRING" size="256" />
  446. <Column id="mdldd" type="STRING" size="256" />
  447. <Column id="orddeptcd" type="STRING" size="256" />
  448. <Column id="delinclude" type="STRING" size="256" />
  449. <Column id="spclcd" type="STRING" size="256" />
  450. </ColumnInfo>
  451. <Rows>
  452. <Row>
  453. <Col id="srchkind"></Col>
  454. <Col id="srch"></Col>
  455. <Col id="mdldd"></Col>
  456. <Col id="orddeptcd"></Col>
  457. <Col id="delinclude"></Col>
  458. <Col id="spclcd"></Col>
  459. </Row>
  460. </Rows>
  461. </Dataset>
  462. <Dataset id="ds_temp_clsp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  463. <ColumnInfo>
  464. <Column id="snglcalcscorcd" type="STRING" size="256" />
  465. <Column id="edilnno" type="STRING" size="256" />
  466. <Column id="spclcd" type="STRING" size="256" />
  467. <Column id="spclspec" type="STRING" size="256" />
  468. <Column id="spclformat" type="STRING" size="256" />
  469. </ColumnInfo>
  470. </Dataset>
  471. <Dataset id="ds_send_list1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  472. <ColumnInfo />
  473. </Dataset>
  474. <Dataset id="ds_init_P0149list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  475. <ColumnInfo />
  476. </Dataset>
  477. <Dataset id="ds_hidden_sppiz00400" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  478. <ColumnInfo />
  479. </Dataset>
  480. <Dataset id="ds_send_list1_listatsu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  481. <ColumnInfo>
  482. <Column id="basedd" type="STRING" size="256" />
  483. <Column id="diagcd" type="STRING" size="256" />
  484. <Column id="diagnm" type="STRING" size="256" />
  485. <Column id="selectedrdodiagkind" type="STRING" size="256" />
  486. </ColumnInfo>
  487. <Rows>
  488. <Row>
  489. <Col id="basedd"></Col>
  490. <Col id="diagcd"></Col>
  491. <Col id="diagnm"></Col>
  492. <Col id="selectedrdodiagkind"></Col>
  493. </Row>
  494. </Rows>
  495. </Dataset>
  496. <Dataset id="ds_hidden_seldeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  497. <ColumnInfo>
  498. <Column id="selyn" type="STRING" size="256" />
  499. <Column id="deptcd" type="STRING" size="256" />
  500. <Column id="deptnm" type="STRING" size="256" />
  501. <Column id="oldselyn" type="STRING" size="256" />
  502. <Column id="calcscorcdkey" type="STRING" size="256" />
  503. <Column id="toddkey" type="STRING" size="256" />
  504. <Column id="seq" type="STRING" size="256" />
  505. </ColumnInfo>
  506. <Rows>
  507. <Row>
  508. <Col id="selyn"></Col>
  509. <Col id="deptcd"></Col>
  510. <Col id="deptnm"></Col>
  511. <Col id="oldselyn"></Col>
  512. <Col id="calcscorcdkey"></Col>
  513. <Col id="toddkey"></Col>
  514. <Col id="seq"></Col>
  515. </Row>
  516. </Rows>
  517. </Dataset>
  518. <Dataset id="ds_hidden_sppiz00200_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  519. <ColumnInfo />
  520. </Dataset>
  521. <Dataset id="ds_init_spclcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  522. <ColumnInfo />
  523. </Dataset>
  524. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  525. <ColumnInfo />
  526. </Dataset>
  527. <Dataset id="ds_main_listrsltnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  528. <ColumnInfo />
  529. </Dataset>
  530. <Dataset id="ds_hidden_listrsltnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  531. <ColumnInfo />
  532. </Dataset>
  533. <Dataset id="ds_send_spclcdref" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  534. <ColumnInfo>
  535. <Column id="calcscorcd" type="STRING" size="256" />
  536. <Column id="spclcd" type="STRING" size="256" />
  537. </ColumnInfo>
  538. <Rows>
  539. <Row>
  540. <Col id="calcscorcd"></Col>
  541. <Col id="spclcd"></Col>
  542. </Row>
  543. </Rows>
  544. </Dataset>
  545. <Dataset id="ds_main_listrsltnm_rsltnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  546. <ColumnInfo>
  547. <Column id="hngnm" type="STRING" size="256" />
  548. <Column id="hngcnt" type="STRING" size="256" />
  549. </ColumnInfo>
  550. <Rows>
  551. <Row>
  552. <Col id="hngnm"></Col>
  553. <Col id="hngcnt"></Col>
  554. </Row>
  555. </Rows>
  556. </Dataset>
  557. <Dataset id="ds_main_list1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  558. <ColumnInfo />
  559. </Dataset>
  560. </Objects>
  561. <Bind>
  562. <BindItem id="item0" compid="group3.group2.ipt_mdldd" propid="value" datasetid="ds_send_reqdata" columnid="mdldd" />
  563. <BindItem id="item1" compid="group3.group2.ipt_srch" propid="value" datasetid="ds_send_reqdata" columnid="srch" />
  564. <BindItem id="item2" compid="group3.group2.cmb_srchkind" propid="value" datasetid="ds_send_reqdata" columnid="srchkind" />
  565. <BindItem id="item3" compid="group3.group2.cmb_orddepcdt" propid="value" datasetid="ds_send_reqdata" columnid="orddeptcd" />
  566. <BindItem id="item4" compid="group3.group2.opt_nm" propid="value" datasetid="ds_main_cdnmchk" columnid="optcdnm" />
  567. <BindItem id="item5" compid="group3.group2.rdo_delinclude" propid="value" datasetid="ds_send_reqdata" columnid="delinclude" />
  568. <BindItem id="item6" compid="group3.group2.radio1" propid="value" datasetid="ds_send_reqdata" columnid="spclcd" />
  569. <BindItem id="item7" compid="grp_spclspec.tar_spclspec" propid="value" datasetid="ds_hidden" columnid="spclspec" />
  570. <BindItem id="item8" compid="grp_dept_select.opt_seldeptcd" propid="value" datasetid="ds_hidden_seldeptbase" columnid="calcscorcd" />
  571. <BindItem id="item9" compid="grp_dept_select.opt_seldeptnm" propid="value" datasetid="ds_hidden_seldeptbase" columnid="calcscornm" />
  572. <BindItem id="item10" compid="grp_dept_select.opt_seldeptkeycalcs" propid="value" datasetid="ds_hidden_seldeptbase" columnid="calcscorcdkey" />
  573. <BindItem id="item11" compid="grp_dept_select.opt_seldeptkeytodd" propid="value" datasetid="ds_hidden_seldeptbase" columnid="toddkey" />
  574. <BindItem id="item12" compid="grp_dept_select.opt_seldeptkeyseq" propid="value" datasetid="ds_hidden_seldeptbase" columnid="seq" />
  575. <BindItem id="item13" compid="grp_dept_select.opt_seldeptkeydeptcd" propid="value" datasetid="ds_hidden_seldeptbase" columnid="deptcd" />
  576. </Bind>
  577. <Script type="xscript4.0"><![CDATA[function SMPIB00800_onload(obj:Form, e:LoadEventInfo) {
  578. frmf_initForm(obj);
  579. //grdf_initGrid(grd_XXX);
  580. //grdf_setGridSort(grd_XXX);
  581. //grdf_setRowTypeIcon(grd_XXX, 0_컬럼위치값);
  582. ds_hidden.setColumn( 0, "currentdate", utlf_getCurrentDate()); // 현재 날짜를 얻어옴
  583. fInitialize();
  584. // Default 한줄 자동 생성 요청에 의해 추가 2008.08.28 - 김건기
  585. fAddRow();
  586. }
  587. include '../../.._com_commonweb_js_common.js'
  588. include '../../.._com_commonweb_js_utilHelper.js'
  589. include '../../.._com_commonweb_js_numericHelper.js'
  590. include '../../.._com_commonweb_js_stringHelper.js'
  591. include '../../.._com_commonweb_js_dateHelper.js'
  592. include '../../.._com_commonweb_js_tfHelper.js'
  593. include '../../.._com_basiccodeweb_js_ZBC001.js'
  594. include '../../.._pam_pamcomnweb_js_PAM.js'
  595. // 화면 open시(와 초기화 버튼 클릭시) 화면 초기화 기능을 수행한다.
  596. function fInitialize() {
  597. grp_spclspec.visible = false;
  598. // 그리드 초기화
  599. ds_main_list1_listatsu.clearData();
  600. // 각 인스턴스 초기화
  601. ds_send_reqdata_srchkind.clearData(); ds_send_reqdata_srchkind.addRow();
  602. ds_send_reqdata_srch.clearData(); ds_send_reqdata_srch.addRow();
  603. ds_send_reqdata_mdldd.clearData(); ds_send_reqdata_mdldd.addRow();
  604. ds_send_reqdata_orddeptcd.clearData(); ds_send_reqdata_orddeptcd.addRow();
  605. ds_main_listrsltnm_rsltnm.clearData(); ds_main_listrsltnm_rsltnm.addRow();
  606. ds_main_cdnmchk_optcdnm.clearData(); ds_main_cdnmchk_optcdnm.addRow();
  607. ds_send_reqdata.setColumn( 0, "srchkind","-");
  608. ds_send_reqdata.setColumn( 0, "delinclude","1");
  609. ds_send_reqdata.setColumn( 0, "spclcd","JX999");
  610. ds_send_reqdata.setColumn( 0, "mdldd",ds_hidden.getColumn(0, "currentdate"));
  611. // MT015 일때는 직접수정은 안되도록
  612. if ( ds_send_reqdata.getColumn(0, "spclcd") == "MT015" ) {
  613. group3.grd_listatsu.colAttribute(group3.grd_listatsu.colRef("spclspec"),"editable") = "false";
  614. } else {
  615. group3.grd_listatsu.colAttribute(group3.grd_listatsu.colRef("spclspec"),"editable") = "true";
  616. }
  617. // // 공통코드를 조회한다.
  618. // // (ZBC001.js) com.ZBCMCODE에서 기초코드 값을 가져와서 Combo 컨트롤 item으로 설정하기 위해 사용한다.
  619. // // P0149 : 진료과
  620. // zbcfGetCodeList(
  621. // new Array("P0149"),
  622. // new Array("ds_init_P0149list"));
  623. // 진료과 구하여 그 첫 라인에 '전체' 추가시키는 작업
  624. pamGetDeptCDDrIDList();
  625. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "cd", "string", "-");
  626. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "nm", "string", "전체");
  627. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "deptengabbgr", "string", "-");
  628. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "reqdeptno", "string", "-");
  629. ds_init_orddeptcd.copyData(ds_hidden_orddeptcd);
  630. // 김용민 지저분해서 삭제
  631. ds_init_orddrid.clearData();
  632. ds_init_centcd.clearData();
  633. ds_init_subdeptcd.clearData();
  634. // 김용민 추가 - 과별 선택기능을 위한 진료과 리스트 작업
  635. ds_hidden_seldeptlist.clearData();
  636. for( i = 1; i <= model.getXPathValue( "count(ds_init_orddeptcd_orddeptcdlist)" ) ; i++ ) {
  637. model.makeNode("ds_hidden_seldeptlist[" + i + "]_selyn");
  638. model.makeNode("ds_hidden_seldeptlist[" + i + "]_deptcd");
  639. model.makeNode("ds_hidden_seldeptlist[" + i + "]_deptnm");
  640. model.makeNode("ds_hidden_seldeptlist[" + i + "]_oldselyn");
  641. model.makeNode("ds_hidden_seldeptlist[" + i + "]_calcscorcdkey");
  642. model.makeNode("ds_hidden_seldeptlist[" + i + "]_toddkey");
  643. model.makeNode("ds_hidden_seldeptlist[" + i + "]_seq");
  644. ds_hidden.setColumn( i , "deptcd", ds_init_orddeptcd_orddeptcdlist.getColumn(i, "cd") );
  645. ds_hidden.setColumn( i , "deptnm", ds_init_orddeptcd_orddeptcdlist.getColumn(i, "nm") );
  646. }
  647. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "cd", "string", "");
  648. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "nm", "string", "");
  649. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "deptengabbgr", "string", "-");
  650. dsf_makeValue( ds_hidden_orddeptcd_orddeptcdlist, "reqdeptno", "string", "-");
  651. ds_init_orddeptcd.copyData(ds_hidden_orddeptcd);
  652. //model.refresh();
  653. // 진료과 콤보박스 기본선택
  654. group3.group2.cmb_orddepcdt.select(0);
  655. // grd_listatsu의 정렬하기 위해 그리드 상단의 컬럼명에 sort정렬버튼을 보인다.
  656. group3.grd_listatsu.explorerbar = "sortshow";
  657. }
  658. // 조회버튼 클릭시 검색조건이 알맞은지 검사한다.
  659. function fGetAutMemoCretList() {
  660. var cmb_srchkind = ds_send_reqdata.getColumn(0, "srchkind");
  661. var ipt_srch = ds_send_reqdata.getColumn(0, "srch");
  662. var ipt_mdldd = ds_send_reqdata.getColumn(0, "mdldd");
  663. var cmb_orddeptcd = ds_send_reqdata.getColumn(0, "orddeptcd");
  664. // 검색조건은 수가코드인데 세부코드를 입력하지 않았을 경우 오류메세지 출력
  665. if(cmb_srchkind == "0" && ipt_srch == ""){
  666. sysf_messageBox("수가코드를 입력하지","E007");
  667. return false;
  668. }
  669. // 검색조건은 상병코드인데 세부코드를 입력하지 않았을 경우 오류메세지 출력
  670. if(cmb_srchkind == "1" && ipt_srch == ""){
  671. sysf_messageBox("상병코드를 입력하지","E007");
  672. return false;
  673. }
  674. // 검색조건은 기준일인데 세부조건의 기준일를 입력하지 않았을 경우 오류메세지 출력
  675. if(cmb_srchkind == "2" && ipt_mdldd == ""){
  676. sysf_messageBox("기준일을 입력하지","E007");
  677. return false;
  678. }
  679. return true;
  680. }
  681. // 저장 버튼 클릭시 grid내용 check!!!
  682. function fChkAutMemoCretList() {
  683. if (grp_spclspec.visible == true) {
  684. sysf_messageBox("특정내역 창을 닫고 사용하세요","");
  685. return;
  686. }
  687. if (grp_dept_select.visible == true) {
  688. sysf_messageBox("진료과 선택창을 닫고 사용하세요","");
  689. return;
  690. }
  691. for( i = group3.grd_listatsu.fixedRows; i < group3.grd_listatsu.rows ; i++ ) {
  692. var rowstatus = group3.grd_listatsu.rowStatus(i);
  693. if (rowstatus == 1 || rowstatus == 3) {
  694. var changeflag = ds_main_list1_listatsu.getColumn(i, "changeflag");
  695. if (changeflag == "I") {
  696. group3.grd_listatsu.rowStatus(i) = 0;
  697. }
  698. }
  699. }
  700. var updtdata = getGridUpdateData(group3.grd_listatsu);
  701. // grid의 status의 상태가 변경(insert, update)된것이 있는지 확인한다.
  702. if (updtdata == "") {
  703. for( i = group3.grd_listatsu.fixedRows; i < group3.grd_listatsu.rows ; i++ ) {
  704. var changeflag = ds_main_list1_listatsu.getColumn(i, "changeflag");
  705. if (changeflag == "I") {
  706. group3.grd_listatsu.rowStatus(i) = 3;
  707. }
  708. }
  709. sysf_messageBox("변경된 데이터가","I004");
  710. return;
  711. }
  712. for(var i = 1 ; i < group3.grd_listatsu.rows ; i++) {
  713. // 각 row마다 status를 확인한다.
  714. var status = group3.grd_listatsu.rowStatus(i);
  715. // status의 상태를 확인한다(1:insert, 2:update, 3:insert&new)
  716. if(status == "1" || status == "2" || status =="3" ) {
  717. // 변경사항이 있는 각 row의 cell값을 변수에 저장한다.(calcscorcd:수가코드, diagcdfrom:시작상병코드, diagcdto:종료상병코드,orddeptcd:진료과코드, textcnts:메모)
  718. var calcscorcd = ds_main_list1_listatsu.getColumn(i, "calcscorcd");
  719. var diagcdfrom = ds_main_list1_listatsu.getColumn(i, "diagcdfrom");
  720. var diagcdto = ds_main_list1_listatsu.getColumn(i, "diagcdto");
  721. var orddeptcd = ds_main_list1_listatsu.getColumn(i, "orddeptcd");
  722. var spclcd = ds_main_list1_listatsu.getColumn(i, "spclcd");
  723. var spclspec = ds_main_list1_listatsu.getColumn(i, "spclspec");
  724. var seq = ds_main_list1_listatsu.getColumn(i, "seq");
  725. var repday = ds_main_list1_listatsu.getColumn(i, "repday");
  726. // 수가코드는 insert시 필수 입력, update시 변경불가.
  727. if (calcscorcd == ""){
  728. sysf_messageBox("수가코드는","I003");
  729. return false;
  730. }
  731. /* 필수 제외 요청에 따라 주석 처리 2007.08.28 - 김건기
  732. // 시작상병코드는 insert시 필수 입력.
  733. if(diagcdfrom == "") {
  734. sysf_messageBox("시작상병코드는","I003");
  735. return false;
  736. }
  737. // 종료상병코드를 입력하지 않았을 경우 종료상병코드는 시작상병코드가 된다.
  738. if(diagcdto == "") {
  739. ds_main_list1.setColumn( i , "diagcdto",diagcdfrom);
  740. diagcdto = diagcdfrom;
  741. }
  742. */
  743. // 시작상병코드와 종료상병코드의 길이를 구한다.
  744. var fromlength = diagcdfrom.length;
  745. var tolength = diagcdto.length;
  746. // 시작상병코드와 종료상병코드의 첫번째 자리를 구한다.
  747. var fromsubstring = diagcdfrom.substring(0, 1);
  748. var tosubstring = diagcdto.substring(0, 1);
  749. // 시작상병코드와 종료상병코드의 첫번째 자리를 제외한 나머지 자리를 구한다.
  750. var fromsubstringtwo = diagcdfrom.substring(1, fromlength);
  751. var tosubstringtwo = diagcdto.substring(1, tolength);
  752. // 시작상병코드와 종료상병코드를 정수형으로 변환한다.
  753. var fromparseint = parseInt(fromsubstringtwo, 10);
  754. var toparseint = parseInt(tosubstringtwo, 10);
  755. // 시작상병코드와 종료상병코드의 앞자리가 같을경우
  756. //if(fromsubstring == tosubstring){
  757. // 종료상병코드는 시작상병코드보다 앞설 수 없습니다.
  758. // if (fromparseint > toparseint) {
  759. // sysf_messageBox("종료상병코드가 시작상병코드 보다 앞설 수","I004");
  760. // return false;
  761. // }
  762. //}
  763. // 시작상병코드와 종료상병코드의 앞자리가 다를 경우
  764. //if( fromsubstring != tosubstring){
  765. // sysf_messageBox("시작상병코드와 종료상병코드의 대분류가","E004");
  766. // return false;
  767. //}
  768. /* 필수 제외 요청에 따라 주석 처리 2007.08.28 - 김건기
  769. // 진료과코드는 insert시 필수 입력.
  770. if(orddeptcd == "") {
  771. sysf_messageBox("진료과코드는","I003");
  772. return false;
  773. }
  774. */
  775. // 메모는 insert시 필수 입력
  776. if(spclcd == "") {
  777. sysf_messageBox("특정코드는","I003");
  778. return false;
  779. }
  780. // 메모는 insert시 필수 입력
  781. if(spclspec == "") {
  782. sysf_messageBox("특정내역은","I003");
  783. return false;
  784. }
  785. // 변경사항이 있는 각 row의 cell값을 변수에 저장한다.(fromdd:시작일자,todd:종료일자)
  786. var fromdd = ds_main_list1_listatsu.getColumn(i, "fromdd");
  787. var todd = ds_main_list1_listatsu.getColumn(i, "todd");
  788. // 현재 서버의 날짜를 yyyymmdd형태로 가지고 온다.
  789. var currentdate = ds_hidden.getColumn(0, "currentdate");
  790. //시작일자가 입력되지 않았을 경우 현재 일자가 시작일자가 된다.
  791. if (fromdd == "") {
  792. ds_main_list1.setColumn( i , "fromdd",currentdate)
  793. fromdd = currentdate;
  794. }
  795. /*
  796. if(status == "1" || status =="3" ) {
  797. // 시작일은 현재일 이전이 될 수 없습니다.
  798. if(fromdd < currentdate){
  799. sysf_messageBox("시작일은 현재일보다 앞설 수","I004");
  800. return false;
  801. }
  802. }
  803. */
  804. // insert시 종료일자가 입력되지 않았을 경우 '99991231'로 맞춘다.
  805. if ( todd == "" ){
  806. ds_main_list1.setColumn( i , "todd","99991231");
  807. todd = "99991231";
  808. }
  809. // 종료일자는 시작일자를 앞설 수 없다.
  810. if (fromdd > todd) {
  811. sysf_messageBox("종료일이 시작일보다 앞설 수","I004");
  812. return false;
  813. }
  814. // 종료일자는 시작일자를 앞설 수 없다.
  815. if (repday == "") {
  816. sysf_messageBox("기간은","I003");
  817. return false;
  818. }
  819. }
  820. }
  821. // updatedata를 savedata instance에 엎는다.
  822. ds_send.setColumn( 0, "savedata",updtdata);
  823. return true;
  824. }
  825. function fIpt_mchrgcode() {
  826. if (ds_send.getColumn(0, "data1") != "") {
  827. if (ipt_mchrgcode.text.length > 1) {
  828. }else {
  829. sysf_messageBox("검색할 수가코드를 2글자 이상", "C001"); //검색할 수가코드를 2글자 이상 입력하십시오.
  830. }
  831. }else {
  832. sysf_messageBox("수가코드 검색 조건을", "C002"); //수가코드 검색 조건을 선택하십시오.
  833. }
  834. }
  835. // 데이터 삭제시 이루어지는 함수
  836. function fLineDel() {
  837. var del = sysf_messageBox("해당 데이터를 ", "Q001");
  838. // 데이터 삭제 확인시(위의 메세지 박스에서 예를 누르면 6 반환)
  839. if(del == 6){
  840. ds_send.setColumn( 0, "savedata",group3.grd_listatsu.getUpdateData());
  841. var rows = group3.grd_listatsu.selectedRows;
  842. if (rows > 1) {
  843. // submit("TXPIB00801");
  844. var oParam = {};
  845. oParam.id = "TXPIB00801";
  846. oParam.service = "insubasecdmngtapp.AutMemoCret";
  847. oParam.method = "reqExeSaveAutMemoCretList";
  848. oParam.inds = "req=ds_";
  849. oParam.outds = "ds_=savedata";
  850. oParam.async = false;
  851. oParam.callback = "cf_TXPIB00801";
  852. tranf_submit(oParam);
  853. /*
  854. function cf_TXPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  855. if(nErrorCode < 0) return;
  856. }
  857. function cf_TXPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  858. arErrorCode.push(sSvcId, nErrorCode);
  859. }
  860. arErrorCode.pop("TXPIB00801") > -1
  861. arErrorCode.pop("TXPIB00801") < 0
  862. */
  863. var controlSnw = document.controls("group3.group2.btn_search");
  864. controlSnw.dispatch("DOMActivate");
  865. } else {
  866. for(var i = 0; i<rows;i++){
  867. group3.grd_listatsu.deleteitem(group3.grd_listatsu.selectedrow(i));
  868. }
  869. // submit("TXPIB00801");
  870. var oParam = {};
  871. oParam.id = "TXPIB00801";
  872. oParam.service = "insubasecdmngtapp.AutMemoCret";
  873. oParam.method = "reqExeSaveAutMemoCretList";
  874. oParam.inds = "req=ds_";
  875. oParam.outds = "ds_=savedata";
  876. oParam.async = false;
  877. oParam.callback = "cf_TXPIB00801";
  878. tranf_submit(oParam);
  879. /*
  880. function cf_TXPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  881. if(nErrorCode < 0) return;
  882. }
  883. function cf_TXPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  884. arErrorCode.push(sSvcId, nErrorCode);
  885. }
  886. arErrorCode.pop("TXPIB00801") > -1
  887. arErrorCode.pop("TXPIB00801") < 0
  888. */
  889. }
  890. sysf_messageBox("선택하신 데이터가 삭제","I001");
  891. //group3.grd_listatsu.deleteitem(group3.grd_listatsu.row);
  892. //sysf_messageBox("선택하신 데이터가 삭제","I001");
  893. }
  894. // 데이터 삭제 확인시(위의 메세지 박스에서 아니오를 누르면 7 반환)
  895. if(del == 7){
  896. for(var i = 0; i<group3.grd_listatsu.selectedRows;i++){
  897. group3.grd_listatsu.removeStatus(group3.grd_listatsu.selectedrow(i), "delete");
  898. }
  899. }
  900. return true;
  901. }
  902. function fDiag() {
  903. var row = group3.grd_listatsu.row;
  904. var col = group3.grd_listatsu.col;
  905. // '-' 기호 null 로 처리
  906. if ( ds_main_list1_listatsu.getColumn(row, "diagcdfrom")) == '-' ) {
  907. ds_main_list1.setColumn( row , "diagcdfrom","");
  908. }
  909. ds_send_reqdata.setColumn( 0, "srch",ds_main_list1_listatsu.getColumn(row, "diagcdfrom")));
  910. // submit("TRPIB00803");
  911. var oParam = {};
  912. oParam.id = "TRPIB00803";
  913. oParam.service = "insubasecdmngtapp.AutMemoCret";
  914. oParam.method = "reqGetAutMemoCretDiagnmfrom";
  915. oParam.inds = "req=ds_";
  916. oParam.outds = "ds_=rsltnm";
  917. oParam.async = false;
  918. oParam.callback = "cf_TRPIB00803";
  919. tranf_submit(oParam);
  920. /*
  921. function cf_TRPIB00803(sSvcId, nErrorCode, sErrorMsg) {
  922. if(nErrorCode < 0) return;
  923. }
  924. function cf_TRPIB00803(sSvcId, nErrorCode, sErrorMsg) {
  925. arErrorCode.push(sSvcId, nErrorCode);
  926. }
  927. arErrorCode.pop("TRPIB00803") > -1
  928. arErrorCode.pop("TRPIB00803") < 0
  929. */
  930. var hngnm = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngnm");
  931. var hngcnt = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngcnt");
  932. // 쿼리된 결과가 한개일 경우 수행
  933. if(hngnm != ""){
  934. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("diagnmfrom") ) = hngnm;
  935. var rowstatus = group3.grd_listatsu.rowStatus(row);
  936. if (rowstatus == 1 || rowstatus == 3) {
  937. ds_main_list1.setColumn( row , "changeflag","U");
  938. }
  939. }
  940. // 쿼리된 결과가 한개가 아니거나 없는경우.
  941. if(hngnm == ""){
  942. ds_send_list1_listatsu.setColumn( 0, "diagcd",ds_main_list1_listatsu.getColumn(row, "diagcdfrom")));
  943. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("diagcdfrom")) = "-";
  944. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("diagnmfrom") ) = "";
  945. fSearchDiag(); // 상병조회 팝업을 통하여 상병 조회
  946. // 서브밋을 위해 사용하엿던 컨트롤을 정리
  947. group3.group2.ipt_srch.value = "";
  948. }
  949. }
  950. function fDiagTwo() {
  951. var row = group3.grd_listatsu.row;
  952. var col = group3.grd_listatsu.col;
  953. // '-' 기호 null 로 처리
  954. if ( ds_main_list1_listatsu.getColumn(row, "diagcdto")) == '-' ) {
  955. ds_main_list1.setColumn( row , "diagcdto","");
  956. }
  957. ds_send_reqdata.setColumn( 0, "srch",ds_main_list1_listatsu.getColumn(row, "diagcdto")));
  958. // submit("TRPIB00803");
  959. var oParam = {};
  960. oParam.id = "TRPIB00803";
  961. oParam.service = "insubasecdmngtapp.AutMemoCret";
  962. oParam.method = "reqGetAutMemoCretDiagnmfrom";
  963. oParam.inds = "req=ds_";
  964. oParam.outds = "ds_=rsltnm";
  965. oParam.async = false;
  966. oParam.callback = "cf_TRPIB00803";
  967. tranf_submit(oParam);
  968. /*
  969. function cf_TRPIB00803(sSvcId, nErrorCode, sErrorMsg) {
  970. if(nErrorCode < 0) return;
  971. }
  972. function cf_TRPIB00803(sSvcId, nErrorCode, sErrorMsg) {
  973. arErrorCode.push(sSvcId, nErrorCode);
  974. }
  975. arErrorCode.pop("TRPIB00803") > -1
  976. arErrorCode.pop("TRPIB00803") < 0
  977. */
  978. var hngnm = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngnm");
  979. var hngcnt = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngcnt");
  980. // 쿼리된 결과가 1개인 경우
  981. if(hngnm != ""){
  982. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("diagnmto") ) = hngnm;
  983. var rowstatus = group3.grd_listatsu.rowStatus(row);
  984. if (rowstatus == 1 || rowstatus == 3) {
  985. ds_main_list1.setColumn( row , "changeflag","U");
  986. }
  987. }
  988. if(hngnm == ""){
  989. ds_send_list1_listatsu.setColumn( 0, "diagcd",ds_main_list1_listatsu.getColumn(row, "diagcdto")));
  990. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("diagcdto") ) = "-";
  991. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("diagnmto") ) = "";
  992. fSearchDiag(); // 상병조회 팝업을 통하여 상병 조회
  993. // 서브밋을 위해 사용하엿던 컨트롤을 정리
  994. group3.group2.ipt_srch.value = "";
  995. }
  996. }
  997. // 상병명 조회시 데이터가 1개 이상일경우 및 없을시 상병조회 창을 띄운다.
  998. function fSearchDiag() {
  999. // 여기부터는 상병코드 조회 프로그램 사용자와 상의 후 작성
  1000. var trgtManWindow = getChildWindow("SPPIZ00400"); // 상병 조회
  1001. if (trgtManWindow == null) {
  1002. var today = new Date();
  1003. var syear = today.getDateFormat("YYYY"); // (dateHelper.js)에서 제공하는 함수를 사용하여 해당 년를 구한다.
  1004. var smonth = today.getDateFormat("MM");
  1005. var sday = today.getDateFormat("DD");
  1006. ds_send_list1_listatsu.setColumn( 0, "basedd", syear + smonth + sday);
  1007. ds_send_list1_listatsu.setColumn( 0, "selectedrdodiagkind","1"); // ICD10으로 고정
  1008. frmf_modal("SPPIZ00400", "SPPIZ00400", "ds_send_list1_listatsu""-"ds_init"", "", "", "10", "10", "", "", "", "", "", "M");
  1009. } else {
  1010. trgtManWindow.javascript.fSearchDiag();
  1011. activateChild("SPPIZ00400");
  1012. }
  1013. //model.refresh();
  1014. }
  1015. // 상병조회 팝업에서 상병을 더블클릭 했을경우 상병 그리드에 반영
  1016. function fSetDiagCdNm() {
  1017. // 검색창에서 상병코드를 검색했을 경우에 검색창부분에 반영
  1018. //if(group3.grd_listatsu.col == -1){
  1019. if(group3.group2.cmb_srchkind.value == "1"){
  1020. var diagcd = ds_hidden_sppiz00400_rslt.getColumn(0, "diagcd");
  1021. var diaghngnm = ds_hidden_sppiz00400_rslt.getColumn(0, "diaghngnm");
  1022. //model.refresh();
  1023. ds_send_reqdata.setColumn( 0, "srch", diagcd);
  1024. ds_main_cdnmchk.setColumn( 0, "optcdnm", diaghngnm);
  1025. //group3.group2.opt_nm.value= ds_hidden_sppiz00400_rslt.getColumn(0, "diaghngnm");
  1026. }
  1027. //}
  1028. // 시작상병코드와 명을 반영
  1029. if(group3.grd_listatsu.col == group3.grd_listatsu.colRef("diagcdfrom")){
  1030. var diagcd = ds_hidden_sppiz00400_rslt.getColumn(0, "diagcd");
  1031. var diaghngnm = ds_hidden_sppiz00400_rslt.getColumn(0, "diaghngnm");
  1032. //model.refresh();
  1033. ds_main_list1.setColumn( 0, "listatsu["+group3.grd_listatsu.row+"]_diagcdfrom", diagcd);
  1034. ds_main_list1.setColumn( 0, "listatsu["+group3.grd_listatsu.row+"]_diagnmfrom", diaghngnm);
  1035. if (diagcd != "") {
  1036. var rowstatus = group3.grd_listatsu.rowStatus(group3.grd_listatsu.row);
  1037. if (rowstatus == 1 || rowstatus == 3) {
  1038. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_changeflag","U");
  1039. }
  1040. }
  1041. }
  1042. // 종료상병코드와 명을 반영
  1043. if(group3.grd_listatsu.col == group3.grd_listatsu.colRef("diagcdto")){
  1044. var diagcd = ds_hidden_sppiz00400_rslt.getColumn(0, "diagcd");
  1045. var diaghngnm = ds_hidden_sppiz00400_rslt.getColumn(0, "diaghngnm");
  1046. //model.refresh();
  1047. ds_main_list1.setColumn( 0, "listatsu["+group3.grd_listatsu.row+"]_diagcdto", diagcd);
  1048. ds_main_list1.setColumn( 0, "listatsu["+group3.grd_listatsu.row+"]_diagnmto", diaghngnm);
  1049. if (diagcd != "") {
  1050. var rowstatus = group3.grd_listatsu.rowStatus(group3.grd_listatsu.row);
  1051. if (rowstatus == 1 || rowstatus == 3) {
  1052. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_changeflag","U");
  1053. }
  1054. }
  1055. }
  1056. //model.refresh();
  1057. }
  1058. // 특정코드 팝업창 띄우기
  1059. function fSearchSpcl() {
  1060. // *특정코드과 특정내역을 입력하기 위한 특정내역관리 창을 연다.*
  1061. // grid의 특정코드컬럼 부분인 10번째 컬럼일 경우...
  1062. if(group3.grd_listatsu.col == group3.grd_listatsu.colRef("spclcd") || group3.grd_listatsu.col == group3.grd_listatsu.colRef("spclspec") ){
  1063. var spclcd = ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "spclcd");
  1064. var spclspec = ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "spclspec");
  1065. // 특정코드와 특정내역의 값이 없을경우(첫입력일경우)
  1066. if(spclcd == "" && spclspec == ""){
  1067. // 그냥 팝업창을 띄운다.
  1068. frmf_modal("SPPIZ00500", "SPPIZ00500", ""-"", "", "", "10", "10", "", "", "", "", "", "M");
  1069. // 팝업창에서 입력된 내용을 grid에 넣어준다.
  1070. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_spclcd", ds_hidden_sppiz00500_rslt.getColumn(0, "spclcd"));
  1071. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_spclspec", ds_hidden_sppiz00500_rslt.getColumn(0, "spclspec"));
  1072. }
  1073. // 특정코드와 특정내역의 값이 있을경우(수정일경우)
  1074. if(spclcd != "" && spclspec != ""){
  1075. // 임의의 인스턴스를 만들어 해당 특정코드와 특정내역을 넣어놓는다.
  1076. ds_temp_clsp.setColumn( 0, "spclcd", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "spclcd"));
  1077. ds_temp_clsp.setColumn( 0, "spclspec", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "spclspec"));
  1078. // 팝업창을 열고 임의의 인스턴스의 값을 팝업창 내부의 해당 인스턴스와 매칭시킨다.
  1079. frmf_modal("SPPIZ00500", "SPPIZ00500", "ds_temp_clsp""-"ds_hidden_clsp_cond"", "", "", "10", "10", "", "", "", "", "", "M");
  1080. // 팝업창에서 입력된 내용을 grid에 넣어준다.
  1081. var scd = ds_hidden_sppiz00500_rslt.getColumn(0, "spclcd");
  1082. var smemo = ds_hidden_sppiz00500_rslt.getColumn(0, "spclspec");
  1083. if(scd != "" && smemo != ""){
  1084. var spclcd = ds_hidden_sppiz00500_rslt.getColumn(0, "spclcd");
  1085. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_spclcd", spclcd);
  1086. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_spclspec", ds_hidden_sppiz00500_rslt.getColumn(0, "spclspec"));
  1087. if (spclcd !="") {
  1088. var rowstatus = group3.grd_listatsu.rowStatus(group3.grd_listatsu.row);
  1089. if (rowstatus == 1 || rowstatus == 3) {
  1090. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_changeflag","U");
  1091. }
  1092. }
  1093. }
  1094. }
  1095. }
  1096. }
  1097. function fCalcscorcd() {
  1098. var row = group3.grd_listatsu.row;
  1099. var col = group3.grd_listatsu.col;
  1100. var tmpcalcscorcd = ds_send_reqdata.getColumn(0, "srch"); // 잠시백업
  1101. ds_send_reqdata.setColumn( 0, "srch",ds_main_list1_listatsu.getColumn(row, "calcscorcd")));
  1102. // submit("TRPIB00802");
  1103. var oParam = {};
  1104. oParam.id = "TRPIB00802";
  1105. oParam.service = "insubasecdmngtapp.AutMemoCret";
  1106. oParam.method = "reqGetAutMemoCretCalcscorcdNm";
  1107. oParam.inds = "req=ds_";
  1108. oParam.outds = "ds_=rsltnm";
  1109. oParam.async = false;
  1110. oParam.callback = "cf_TRPIB00802";
  1111. tranf_submit(oParam);
  1112. /*
  1113. function cf_TRPIB00802(sSvcId, nErrorCode, sErrorMsg) {
  1114. if(nErrorCode < 0) return;
  1115. }
  1116. function cf_TRPIB00802(sSvcId, nErrorCode, sErrorMsg) {
  1117. arErrorCode.push(sSvcId, nErrorCode);
  1118. }
  1119. arErrorCode.pop("TRPIB00802") > -1
  1120. arErrorCode.pop("TRPIB00802") < 0
  1121. */
  1122. var hngnm = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngnm");
  1123. var hngcnt = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngcnt");
  1124. // 조회된 쿼리가 한개인경우
  1125. if(hngnm != ""){
  1126. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("calcscornm") ) = hngnm;
  1127. }
  1128. // 조회된 쿼리가 한개가 아니거나 없는경우.
  1129. if(hngnm == ""){
  1130. group3.grd_listatsu.valueMatrix(row, group3.grd_listatsu.colRef("calcscornm") ) = "";
  1131. fSearchCalcscorcd("grid"); // 수가조회 팝업을 통하여 수가명 조회
  1132. // 서브밋을 위해 사용하엿던 컨트롤을 정리
  1133. //ds_send_reqdata.setColumn( 0, "srch","");
  1134. //group3.group2.ipt_srch.value = "";
  1135. ds_send_reqdata.setColumn( 0, "srch",tmpcalcscorcd); // 원상복구
  1136. //model.refresh();
  1137. }
  1138. }
  1139. // 수가조회 팝업에서 수가코드를 더블클릭 했을경우 수가 그리드에 반영
  1140. function fSearchCalcscorcd(inputFlag) {
  1141. // 수가조회 팝업.. 팝업창의 ds_temp에 ds_send_reqdata_srch값을 넣어준다.
  1142. frmf_modal("SMPIC00200", "SMPIC00200", "ds_send_reqdata_srch""-"ds_temp"", "", "", "10", "10", "", "", "", "", "", "M");
  1143. // grid에서 검색한것이 아니라 ipt에서 검색했을때..
  1144. //if(group3.group2.cmb_srchkind.value == "0") {
  1145. if ( inputFlag == "ipt" ) {
  1146. var calcscorcd = ds_temp_picmmech.getColumn(0, "picmmech_calcscorcd");
  1147. var hngnm = ds_temp_picmmech.getColumn(0, "picmmech_hngnm");
  1148. //model.refresh();
  1149. ds_send_reqdata.setColumn( 0, "srch", calcscorcd);
  1150. ds_main_cdnmchk.setColumn( 0, "optcdnm", hngnm);
  1151. }
  1152. // 그리드에서 수가코드인 col이 '1'일때.
  1153. //if(group3.grd_listatsu.col == 1){
  1154. if ( inputFlag == "grid" ) {
  1155. var calcscorcd = ds_temp_picmmech.getColumn(0, "picmmech_calcscorcd");
  1156. var calcscornm = ds_temp_picmmech.getColumn(0, "picmmech_hngnm");
  1157. //model.refresh();
  1158. ds_main_list1.setColumn( 0, "listatsu["+ group3.grd_listatsu.row +"]_calcscorcd", calcscorcd);
  1159. ds_main_list1.setColumn( 0, "listatsu["+ group3.grd_listatsu.row +"]_calcscornm", calcscornm);
  1160. if (calcscorcd != "") {
  1161. var rowstatus = group3.grd_listatsu.rowStatus(group3.grd_listatsu.row);
  1162. if (rowstatus == 1 || rowstatus == 3) {
  1163. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_changeflag","U");
  1164. }
  1165. }
  1166. }
  1167. //model.refresh();
  1168. }
  1169. function fGetCodeNm() {
  1170. // 검색조건을 선택하지 않고 inputbutton을 클릭하였을 경우..
  1171. if(group3.group2.cmb_srchkind.value == '-'){
  1172. sysf_messageBox("검색조건을","C002");
  1173. }
  1174. // 수가코드 선택
  1175. if (group3.group2.cmb_srchkind.value == '0'){
  1176. // 수가명을 가져오는 submission을 수행한다.
  1177. var srch = ds_send_reqdata.getColumn(0, "srch");
  1178. // submit("TRPIB00802");
  1179. var oParam = {};
  1180. oParam.id = "TRPIB00802";
  1181. oParam.service = "insubasecdmngtapp.AutMemoCret";
  1182. oParam.method = "reqGetAutMemoCretCalcscorcdNm";
  1183. oParam.inds = "req=ds_";
  1184. oParam.outds = "ds_=rsltnm";
  1185. oParam.async = false;
  1186. oParam.callback = "cf_TRPIB00802";
  1187. tranf_submit(oParam);
  1188. /*
  1189. function cf_TRPIB00802(sSvcId, nErrorCode, sErrorMsg) {
  1190. if(nErrorCode < 0) return;
  1191. }
  1192. function cf_TRPIB00802(sSvcId, nErrorCode, sErrorMsg) {
  1193. arErrorCode.push(sSvcId, nErrorCode);
  1194. }
  1195. arErrorCode.pop("TRPIB00802") > -1
  1196. arErrorCode.pop("TRPIB00802") < 0
  1197. */
  1198. ds_send_reqdata.setColumn( 0, "srch", srch);
  1199. }
  1200. // 상병코드 선택
  1201. if (group3.group2.cmb_srchkind.value == '1'){
  1202. // 상병명을 가져오는 sumission을 수행한다.
  1203. var srch = ds_send_reqdata.getColumn(0, "srch");
  1204. // submit("TRPIB00803");
  1205. var oParam = {};
  1206. oParam.id = "TRPIB00803";
  1207. oParam.service = "insubasecdmngtapp.AutMemoCret";
  1208. oParam.method = "reqGetAutMemoCretDiagnmfrom";
  1209. oParam.inds = "req=ds_";
  1210. oParam.outds = "ds_=rsltnm";
  1211. oParam.async = false;
  1212. oParam.callback = "cf_TRPIB00803";
  1213. tranf_submit(oParam);
  1214. /*
  1215. function cf_TRPIB00803(sSvcId, nErrorCode, sErrorMsg) {
  1216. if(nErrorCode < 0) return;
  1217. }
  1218. function cf_TRPIB00803(sSvcId, nErrorCode, sErrorMsg) {
  1219. arErrorCode.push(sSvcId, nErrorCode);
  1220. }
  1221. arErrorCode.pop("TRPIB00803") > -1
  1222. arErrorCode.pop("TRPIB00803") < 0
  1223. */
  1224. ds_send_reqdata.setColumn( 0, "srch", srch);
  1225. }
  1226. var hngnm = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngnm");
  1227. var hngcnt = ds_hidden_listrsltnm_rsltnm.getColumn(0, "hngcnt");
  1228. // 쿼리갯수가 1개일 경우
  1229. if(hngcnt == '1'){
  1230. group3.group2.opt_nm.value= hngnm;
  1231. }
  1232. // 쿼리값이 한개가 아닌경우(한개도 없거나, 1개이상이거나)
  1233. if(hngcnt !== '1'){
  1234. // 조건분류가 수가코드이면...
  1235. if(group3.group2.cmb_srchkind.value == '0'){
  1236. fSearchCalcscorcd("ipt"); // 수가코드 조회 창을 띄운다.
  1237. }
  1238. // 조건분류가 상병코드이면...
  1239. if(group3.group2.cmb_srchkind.value == '1'){
  1240. ds_send_list1_listatsu.setColumn( 0, "diagcd",group3.group2.ipt_srch.value);
  1241. fSearchDiag(); // 상병코드 조회창을 띄운다.
  1242. }
  1243. }
  1244. }
  1245. function fMovCol() {
  1246. var col = group3.grd_listatsu.col;
  1247. if(col == group3.grd_listatsu.colRef("calcscorcd")){
  1248. group3.grd_listatsu.col = group3.grd_listatsu.colRef("diagcdfrom");
  1249. //group3.grd_listatsu.editCell();
  1250. } else if(col == group3.grd_listatsu.colRef("diagcdfrom")) {
  1251. group3.grd_listatsu.col = group3.grd_listatsu.colRef("diagcdto");
  1252. //group3.grd_listatsu.editCell();
  1253. } else if(col==group3.grd_listatsu.colRef("diagcdto")) {
  1254. group3.grd_listatsu.col = group3.grd_listatsu.colRef("spclspec");
  1255. }
  1256. }
  1257. function fDelRow() {
  1258. var rows = group3.grd_listatsu.rows;
  1259. for(var i = 1; i <= rows; i++){
  1260. var todd = ds_main_list1_listatsu.getColumn(i, "todd");
  1261. var currentdate = ds_hidden.getColumn(0, "currentdate");
  1262. if(todd <= currentdate){
  1263. group3.grd_listatsu.rowStyle(i,"all","color") = "#FF0000";
  1264. group3.grd_listatsu.isReadOnly(i, 1, i, 13) = true;
  1265. } else {
  1266. group3.grd_listatsu.rowStyle(i,"all","color") = "#000000";
  1267. group3.grd_listatsu.isReadOnly(i, 1, i, 13) = false;
  1268. }
  1269. }
  1270. }
  1271. function fAddRow() {
  1272. group3.grd_listatsu.AddRow(true, true);
  1273. /*
  1274. var today = utlf_getCurrentDate(); // 현재 날짜를 얻어옴
  1275. */
  1276. var today = ds_hidden.getColumn(0, "currentdate");
  1277. // 행추가후 기본적인 data를 넣어준다(default 값)
  1278. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_diagcdfrom", "-");
  1279. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_diagcdto", "-");
  1280. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_fromdd", today);
  1281. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_todd", "99991231");
  1282. //ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_spclcd", "JX999");
  1283. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_spclcd", ds_send_reqdata.getColumn(0, "spclcd"));
  1284. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_spclspec", "");
  1285. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_ioflag", "A");
  1286. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_orddeptcd", "-");
  1287. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_repday", "0");
  1288. model.makeNode("ds_main_list1_listatsu[" + group3.grd_listatsu.row+ "]_changeflag");
  1289. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+ "]_changeflag","I");
  1290. group3.grd_listatsu.select(group3.grd_listatsu.row, group3.grd_listatsu.colRef("calcscorcd"), group3.grd_listatsu.row, group3.grd_listatsu.colRef("seq")) = true;
  1291. }
  1292. // 김용민 ... 진료과 선택창 띄위기전에 초기작업을 한다.
  1293. function fSelectDeptInit() {
  1294. ds_hidden_seldeptbase.setColumn( 0, "calcscorcd", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "calcscorcd") );
  1295. ds_hidden_seldeptbase.setColumn( 0, "calcscornm", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "calcscornm") );
  1296. ds_hidden_seldeptbase.setColumn( 0, "calcscorcdkey",ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "calcscorcdkey") );
  1297. ds_hidden_seldeptbase.setColumn( 0, "toddkey", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "toddkey") );
  1298. ds_hidden_seldeptbase.setColumn( 0, "seq", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "seq") );
  1299. ds_hidden_seldeptbase.setColumn( 0, "deptcd", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.row, "orddeptcd") );
  1300. // 일단 기존꺼 지우고
  1301. //for( i = 1; i <= model.getXPathValue( "count(ds_init_orddeptcd_orddeptcdlist)" ) ; i++ ) {
  1302. for( i = 1; i <= model.getXPathValue( "count(ds_hidden_seldeptlist)" ) ; i++ ) {
  1303. ds_hidden.setColumn( i , "selyn", "false" );
  1304. ds_hidden.setColumn( i , "oldselyn", "false" );
  1305. ds_hidden.setColumn( i , "calcscorcdkey", "" );
  1306. ds_hidden.setColumn( i , "toddkey", "" );
  1307. ds_hidden.setColumn( i , "seq", "" );
  1308. grp_dept_select.grd_seldeptlist.clearStatus();
  1309. }
  1310. for( i = group3.grd_listatsu.fixedRows; i < group3.grd_listatsu.rows ; i++ ) {
  1311. if ( ds_hidden_seldeptbase.getColumn(0, "calcscorcdkey") == ds_main_list1_listatsu.getColumn(i, "calcscorcdkey") ) {
  1312. var tmpDeptcd = ds_main_list1_listatsu.getColumn(i, "orddeptcd");
  1313. for( j = grp_dept_select.grd_seldeptlist.fixedRows; j < grp_dept_select.grd_seldeptlist.rows ; j++ ) {
  1314. if ( tmpDeptcd == grp_dept_select.grd_seldeptlist.valueMatrix(j,1) ) {
  1315. ds_hidden.setColumn( j , "selyn","true");
  1316. ds_hidden.setColumn( j , "oldselyn","true");
  1317. ds_hidden.setColumn( j , "calcscorcdkey",ds_main_list1_listatsu.getColumn(i, "calcscorcdkey") );
  1318. ds_hidden.setColumn( j , "toddkey",ds_main_list1_listatsu.getColumn(i, "toddkey") );
  1319. ds_hidden.setColumn( j , "seq",ds_main_list1_listatsu.getColumn(i, "seq") );
  1320. }
  1321. }
  1322. }
  1323. }
  1324. //model.refresh();
  1325. }
  1326. // 김용민 ... 진료과 선택창 완료시 체크
  1327. function fSelectDeptChk() {
  1328. var changecnt = 0;
  1329. var alldept = 0;
  1330. var etcdept = 0;
  1331. for( i = grp_dept_select.grd_seldeptlist.fixedRows; i < grp_dept_select.grd_seldeptlist.rows ; i++ ) {
  1332. if ( ds_hidden_seldeptlist.getColumn(i, "selyn") != ds_hidden_seldeptlist.getColumn(i, "oldselyn") )
  1333. {
  1334. changecnt++;
  1335. }
  1336. if ( ds_hidden_seldeptlist.getColumn(i, "selyn") == "true" ) {
  1337. if ( ds_hidden_seldeptlist.getColumn(i, "deptcd") == "-" ) {
  1338. alldept++;
  1339. } else {
  1340. etcdept++;
  1341. }
  1342. }
  1343. }
  1344. if ( changecnt == 0 ) {
  1345. sysf_messageBox("변경된 데이터가","I004");
  1346. return false;
  1347. }
  1348. if ( alldept != 0 && etcdept != 0 ) {
  1349. sysf_messageBox("전체과와 타과를 같이 선택할수","I004");
  1350. return false;
  1351. }
  1352. if ( alldept == 0 && etcdept == 0 ) {
  1353. sysf_messageBox("선택된 진료과가 하나도","I004");
  1354. return false;
  1355. }
  1356. return true;
  1357. }
  1358. // 김용민 - 선택된 진료과를 입력한다.
  1359. function fSelectDeptInput() {
  1360. // 빈 신규입력 줄 삭제
  1361. for( i = grp_dept_select.grd_seldeptlist.fixedRows; i < grp_dept_select.grd_seldeptlist.rows ; i++ ) {
  1362. if ( ds_main_list1_listatsu.getColumn(i, "calcscorcd") == ""
  1363. && ds_main_list1_listatsu.getColumn(i, "calcscorcdkey") == ""
  1364. && ds_main_list1_listatsu.getColumn(i, "toddkey") == ""
  1365. && ds_main_list1_listatsu.getColumn(i, "seq") == ""
  1366. ) {
  1367. var rowstatus = group3.grd_listatsu.rowStatus(i);
  1368. if (rowstatus == 1 || rowstatus == 3) {
  1369. var changeflag = ds_main_list1_listatsu.getColumn(i, "changeflag");
  1370. if (changeflag == "I") {
  1371. group3.grd_listatsu.rowStatus(i) = 0;
  1372. }
  1373. }
  1374. //group3.grd_listatsu.deleteItem(i);
  1375. group3.grd_listatsu.deleteRow(i,false);
  1376. }
  1377. }
  1378. // 신규입력 먼저 체크
  1379. for( i = grp_dept_select.grd_seldeptlist.fixedRows; i < grp_dept_select.grd_seldeptlist.rows ; i++ ) {
  1380. if ( ds_hidden_seldeptlist.getColumn(i, "selyn") == "true"
  1381. && ds_hidden_seldeptlist.getColumn(i, "oldselyn") == "false"
  1382. ) {
  1383. var jobrow = 0;
  1384. for ( j = group3.grd_listatsu.fixedRows; j < group3.grd_listatsu.rows; j++) {
  1385. if ( ds_main_list1_listatsu.getColumn(j, "calcscorcd") == ds_hidden_seldeptbase.getColumn(0, "calcscorcd")
  1386. && ds_main_list1_listatsu.getColumn(j, "orddeptcd") == ds_hidden_seldeptbase.getColumn(0, "deptcd")
  1387. && ds_main_list1_listatsu.getColumn(j, "calcscorcdkey") == ds_hidden_seldeptbase.getColumn(0, "calcscorcdkey")
  1388. && ds_main_list1_listatsu.getColumn(j, "toddkey") == ds_hidden_seldeptbase.getColumn(0, "toddkey")
  1389. && ds_main_list1_listatsu.getColumn(j, "seq") == ds_hidden_seldeptbase.getColumn(0, "seq")
  1390. && jobrow == 0 // 처음한번만 조회
  1391. ) {
  1392. jobrow = j;
  1393. break;
  1394. }
  1395. }
  1396. if ( jobrow > 0 && jobrow < group3.grd_listatsu.rows ) { // 신규입력
  1397. group3.grd_listatsu.AddRow(false,false);
  1398. model.copyNode("ds_main_list1_listatsu[" + group3.grd_listatsu.row + "]","ds_main_list1_listatsu[" + jobrow +"]");
  1399. model.makeNode("ds_main_list1_listatsu[" + group3.grd_listatsu.row + "]_changeflag");
  1400. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_changeflag","U");
  1401. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row + "]_orddeptcd",ds_hidden_seldeptlist.getColumn(i, "deptcd"));
  1402. }
  1403. }
  1404. }
  1405. // 삭제 체크
  1406. for( i = grp_dept_select.grd_seldeptlist.fixedRows; i < grp_dept_select.grd_seldeptlist.rows ; i++ ) {
  1407. if ( ds_hidden_seldeptlist.getColumn(i, "selyn") == "false"
  1408. && ds_hidden_seldeptlist.getColumn(i, "oldselyn") == "true"
  1409. ) {
  1410. var jobrow = 0;
  1411. for ( j = group3.grd_listatsu.fixedRows; j < group3.grd_listatsu.rows; j++) {
  1412. if ( ds_main_list1_listatsu.getColumn(j, "calcscorcd") == ds_hidden_seldeptbase.getColumn(0, "calcscorcd")
  1413. && ds_main_list1_listatsu.getColumn(j, "orddeptcd") == ds_hidden_seldeptlist.getColumn(i, "deptcd")
  1414. && ds_main_list1_listatsu.getColumn(j, "calcscorcdkey") == ds_hidden_seldeptlist.getColumn(i, "calcscorcdkey")
  1415. && ds_main_list1_listatsu.getColumn(j, "toddkey") == ds_hidden_seldeptlist.getColumn(i, "toddkey")
  1416. && ds_main_list1_listatsu.getColumn(j, "seq") == ds_hidden_seldeptlist.getColumn(i, "seq")
  1417. ) {
  1418. jobrow = j;
  1419. break;
  1420. }
  1421. }
  1422. if ( jobrow > 0 && jobrow < group3.grd_listatsu.rows ) { // 삭제
  1423. var rowstatus = group3.grd_listatsu.rowStatus(jobrow);
  1424. if (rowstatus == 1 || rowstatus == 3) {
  1425. var changeflag = ds_main_list1_listatsu.getColumn(jobrow, "changeflag"));
  1426. if (changeflag == "I") {
  1427. group3.grd_listatsu.rowStatus(jobrow) = 0;
  1428. }
  1429. }
  1430. //group3.grd_listatsu.deleteItem(jobrow);
  1431. group3.grd_listatsu.deleteRow(jobrow,false);
  1432. }
  1433. }
  1434. }
  1435. //model.refresh();
  1436. // 작업완료 refresh
  1437. }
  1438. // 김용민 - 화면 display 버튼 사용여부 제어
  1439. function fSetDisplayDisable(iFlag) {
  1440. if ( iFlag == true ) {
  1441. group3.grd_listatsu.enable = false;
  1442. group3.group2.btn_search.enable = false;
  1443. group4.bbt_save.enable = false;
  1444. group4.bbt_init.enable = false;
  1445. group3.btn_sel_dept.enable = false;
  1446. group3.btn_excel.enable = false;
  1447. group3.btn_addrow.enable = false;
  1448. group3.btn_delrow.enable = false;
  1449. group3.btn_copyrow.enable = false;
  1450. } else {
  1451. group3.grd_listatsu.enable = true;
  1452. group3.group2.btn_search.enable = true;
  1453. group4.bbt_save.enable = true;
  1454. group4.bbt_init.enable = true;
  1455. group3.btn_sel_dept.enable = true;
  1456. group3.btn_excel.enable = true;
  1457. group3.btn_addrow.enable = true;
  1458. group3.btn_delrow.enable = true;
  1459. group3.btn_copyrow.enable = true;
  1460. }
  1461. }
  1462. // 김용민 - 화면 display 버튼 사용여부 제어
  1463. function fSelectList() {
  1464. var srchcond = ds_send_reqdata.getColumn(0, "srchkind")
  1465. var srch = ds_send_reqdata.getColumn(0, "srch")
  1466. // 그리드 초기화
  1467. ds_main_list1_listatsu.clearData();
  1468. //group3.grd_listatsu.refresh();
  1469. // 모든 내역을 확인하고 싶을때..(검색조건이 전체일때)
  1470. if(srchcond == "-" ){
  1471. // submit("TRPIB00801");
  1472. var oParam = {};
  1473. oParam.id = "TRPIB00801";
  1474. oParam.service = "insubasecdmngtapp.AutMemoCret";
  1475. oParam.method = "reqGetAutMemoCretList";
  1476. oParam.inds = "req=ds_";
  1477. oParam.outds = "ds_=listatsu";
  1478. oParam.async = false;
  1479. oParam.callback = "cf_TRPIB00801";
  1480. tranf_submit(oParam);
  1481. /*
  1482. function cf_TRPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  1483. if(nErrorCode < 0) return;
  1484. }
  1485. function cf_TRPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  1486. arErrorCode.push(sSvcId, nErrorCode);
  1487. }
  1488. arErrorCode.pop("TRPIB00801") > -1
  1489. arErrorCode.pop("TRPIB00801") < 0
  1490. */
  1491. fAddRow();
  1492. }
  1493. // 각 조건별로 검색하고 싶을때..(검색조건이 전체가 아닌 다른경우)
  1494. if(srchcond != "-"){
  1495. // 검색조건의 입력여부를 확인 후 submit한다.
  1496. if(fGetAutMemoCretList()) {
  1497. // submit("TRPIB00801");
  1498. var oParam = {};
  1499. oParam.id = "TRPIB00801";
  1500. oParam.service = "insubasecdmngtapp.AutMemoCret";
  1501. oParam.method = "reqGetAutMemoCretList";
  1502. oParam.inds = "req=ds_";
  1503. oParam.outds = "ds_=listatsu";
  1504. oParam.async = false;
  1505. oParam.callback = "cf_TRPIB00801";
  1506. tranf_submit(oParam);
  1507. /*
  1508. function cf_TRPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  1509. if(nErrorCode < 0) return;
  1510. }
  1511. function cf_TRPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  1512. arErrorCode.push(sSvcId, nErrorCode);
  1513. }
  1514. arErrorCode.pop("TRPIB00801") > -1
  1515. arErrorCode.pop("TRPIB00801") < 0
  1516. */
  1517. fAddRow();
  1518. }
  1519. }
  1520. }
  1521. function group3_group2_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  1522. fSelectList();
  1523. }
  1524. function group3_group2_ipt_srch_onlbuttonup(obj:Edit, e:MouseEventInfo) {
  1525. fGetCodeNm();
  1526. }
  1527. function group3_group2_ipt_srch_onkeyup(obj:Edit, e:KeyEventInfo) {
  1528. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  1529. }
  1530. function group3_group2_cmb_srchkind_onitemclick(obj:Combo, e:ListBoxClickEventInfo) {
  1531. // 검색분류에 따라 수가 및 상병코드일때는 ipt_srch가 보이고, 기준일이면, ipt_mdldd가 보인다.
  1532. if (ds_send_reqdata.getColumn(0, "srchkind") == '2'){
  1533. group3.group2.ipt_mdldd.visible = true;
  1534. group3.group2.ipt_srch.visible = false;
  1535. } else if (ds_send_reqdata.getColumn(0, "srchkind") == '0' || ds_send_reqdata.getColumn(0, "srchkind") == '1' ) {
  1536. group3.group2.ipt_mdldd.visible = false;
  1537. group3.group2.ipt_srch.visible = true;
  1538. } else {
  1539. // 전체 선택되면 우측 입력필드 내용 지움
  1540. ds_send_reqdata.setColumn( 0, "srch", "");
  1541. //model.refresh();
  1542. }
  1543. }
  1544. function group3_group2_cmb_srchkind_onitemchanged(obj:Combo, e:ItemChangeEventInfo) {
  1545. // 검색조건이 변화가 발생했을 경우 코드창과 코드명창을 초기화한다.
  1546. // group3.group2.opt_nm.value="";
  1547. // group3.group2.ipt_srch.value = "";
  1548. // ds_send_reqdata_srch.clearData(); ds_send_reqdata_srch.addRow();
  1549. // ds_main_cdnmchk_optcdnm.clearData(); ds_main_cdnmchk_optcdnm.addRow();
  1550. ds_temp_picmmech.clearData(); ds_temp_picmmech.addRow();
  1551. }
  1552. function group3_group2_cmb_orddepcdt_onkeyup(obj:Combo, e:KeyEventInfo) {
  1553. inputEnterKey("group3.group2.btn_search", "DOMActivate");
  1554. }
  1555. function group3_group2_radio1_onitemchanged(obj:Radio, e:ItemChangeEventInfo) {
  1556. if ( ds_send_reqdata.getColumn(0, "spclcd") == "MT015" ) {
  1557. group3.grd_listatsu.colAttribute(group3.grd_listatsu.colRef("spclspec"),"editable") = "false";
  1558. } else {
  1559. group3.grd_listatsu.colAttribute(group3.grd_listatsu.colRef("spclspec"),"editable") = "true";
  1560. }
  1561. fSelectList();
  1562. }
  1563. function group3_btn_delrow_onclick(obj:Button, e:ClickEventInfo) {
  1564. if(group3.grd_listatsu.row <= 0){
  1565. sysf_messageBox("삭제할 행을","C002");
  1566. } else {
  1567. for( i = group3.grd_listatsu.fixedRows; i < group3.grd_listatsu.rows ; i++ ) {
  1568. var rowstatus = group3.grd_listatsu.rowStatus(i);
  1569. if (rowstatus == 1 || rowstatus == 3) {
  1570. var changeflag = ds_main_list1_listatsu.getColumn(i, "changeflag");
  1571. if (changeflag == "I") {
  1572. group3.grd_listatsu.rowStatus(i) = 0;
  1573. }
  1574. }
  1575. }
  1576. group3.grd_listatsu.deleteItem(group3.grd_listatsu.row);
  1577. /*
  1578. var rows = group3.grd_listatsu.selectedRows;
  1579. for(var i = 0; i<rows; i++){
  1580. group3.grd_listatsu.addstatus(group3.grd_listatsu.selectedrow(i),"delete");
  1581. }
  1582. */
  1583. //fLineDel();
  1584. }
  1585. // var line = group3.grd_listatsu.row;
  1586. // // grid의 메뉴가 '0'이므로 선택되어진 row가 1보다 같거나 클것이다.
  1587. // if(line >= 1){
  1588. // // 해당 row의 status를 delete로 바꾼다.(grid의 status바의 상태가 'O'에서 'D'로 변한다
  1589. // group3.grd_listatsu.addstatus(group3.grd_listatsu.row, "delete");
  1590. // // row를 지우기 위한 함수를 실행한다.
  1591. // fLineDel();
  1592. // }
  1593. // // 삭제할 행을 선택하지 않고 행삭제를 클릭할 경우 알림메세지를 뿌려준다.
  1594. // if(line <= 0) {
  1595. // sysf_messageBox("삭제할 행을","C002");
  1596. // }
  1597. }
  1598. function group3_btn_excel_onclick(obj:Button, e:ClickEventInfo) {
  1599. if (group3.grd_listatsu.rows == 1) {
  1600. return;
  1601. }
  1602. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  1603. if (fileName != "")
  1604. {
  1605. grdf_exportExcel(group3.grd_listatsu, "Sheet1", fileName, false, "" , 'user' , true);
  1606. }
  1607. }
  1608. function group3_btn_addrow_onclick(obj:Button, e:ClickEventInfo) {
  1609. // 행추가
  1610. fAddRow();
  1611. group3.grd_listatsu.col = 1; // 행추가된 row 로 이동한다.
  1612. }
  1613. function group3_btn_copyrow_onclick(obj:Button, e:ClickEventInfo) {
  1614. /*
  1615. group3.grd_listatsu.insertitem(group3.grd_listatsu.row);
  1616. var today = utlf_getCurrentDate(); // 현재 날짜를 얻어옴
  1617. // 행추가후 기본적인 data를 넣어준다(default 값)
  1618. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_fromdd", today);
  1619. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+" ]_todd", "99991231");
  1620. */
  1621. var row = group3.grd_listatsu.row;
  1622. if(row <= 0){
  1623. sysf_messageBox("복사할 행을","C002");
  1624. }
  1625. group3.grd_listatsu.AddRow(false);
  1626. model.copyNode("ds_main_list1_listatsu[" + group3.grd_listatsu.row+ "]","ds_main_list1_listatsu[" + row + "]");
  1627. model.makeNode("ds_main_list1_listatsu[" + group3.grd_listatsu.row+ "]_changeflag");
  1628. ds_main_list1.setColumn( 0, "listatsu[" + group3.grd_listatsu.row+ "]_changeflag","U");
  1629. //model.refresh();
  1630. group3.grd_listatsu.col = 1; // 행추가된 row 로 이동한다.
  1631. }
  1632. function group3_grd_listatsu_onkeydown(obj:Grid, e:KeyEventInfo) {
  1633. var row = group3.grd_listatsu.row;
  1634. var col = group3.grd_listatsu.col;
  1635. // 해당 row의 status(상태:O,I,U,D)를 가져온다.
  1636. var status = group3.grd_listatsu.rowStatus(row);
  1637. if(event.keyCode == 13){
  1638. //if( col == 1 ) {
  1639. if ( col == group3.grd_listatsu.colRef("calcscorcd") ) {
  1640. group3.grd_listatsu.endEditCell();
  1641. var cal = group3.grd_listatsu.valueMatrix(row, col);
  1642. if(cal == ""){ }//alert("수가조회 안한다잉~~");
  1643. if(cal != ""){
  1644. fCalcscorcd();
  1645. fMovCol();
  1646. }
  1647. //} else if( col == 3 ) {
  1648. } else if( col == group3.grd_listatsu.colRef("diagcdfrom") ) {
  1649. group3.grd_listatsu.endEditCell();
  1650. var cal = group3.grd_listatsu.valueMatrix(row, col);
  1651. if(cal == "") { }//alert("시작상병조회 안한다~아찌?");
  1652. if(cal != "") {
  1653. fDiag();
  1654. fMovCol();
  1655. }
  1656. //} else if( col == 5) {
  1657. } else if( col == group3.grd_listatsu.colRef("diagcdto") ) {
  1658. group3.grd_listatsu.endEditCell();
  1659. var cal = group3.grd_listatsu.valueMatrix(row, col);
  1660. if(cal == ""){ }//alert("종료상병조회 안한다잉.. 아그야~");
  1661. if(cal != ""){
  1662. fDiagTwo();
  1663. fMovCol();
  1664. }
  1665. }
  1666. }
  1667. }
  1668. function group3_grd_listatsu_onlbuttonup(obj:Grid, e:MouseEventInfo) {
  1669. var row = group3.grd_listatsu.row;
  1670. var col = group3.grd_listatsu.col;
  1671. // 해당 row의 status(상태:O,I,U,D)를 가져온다.
  1672. var status = group3.grd_listatsu.rowStatus(row);
  1673. if ( col == group3.grd_listatsu.colRef("calcscorcd") ) {
  1674. fCalcscorcd();
  1675. } else if ( col == group3.grd_listatsu.colRef("diagcdfrom") ) {
  1676. var oldvalue = group3.grd_listatsu.valueMatrix(row,col);
  1677. fDiag();
  1678. var newvalue = group3.grd_listatsu.valueMatrix(row,col);
  1679. if ( oldvalue == "-" ) { oldvalue = ""; }
  1680. if ( newvalue == "-" ) { newvalue = ""; }
  1681. if ( oldvalue != newvalue ) {
  1682. if (status == 0) { group3.grd_listatsu.rowstatus(row) = 2; }
  1683. }
  1684. } else if( col == group3.grd_listatsu.colRef("diagcdto") ) {
  1685. var oldvalue = group3.grd_listatsu.valueMatrix(row,col);
  1686. fDiagTwo();
  1687. var newvalue = group3.grd_listatsu.valueMatrix(row,col);
  1688. if ( oldvalue == "-" ) { oldvalue = ""; }
  1689. if ( newvalue == "-" ) { newvalue = ""; }
  1690. if ( oldvalue != newvalue ) {
  1691. if (status == 0) { group3.grd_listatsu.rowstatus(row) = 2; }
  1692. }
  1693. /*
  1694. } else if( col == group3.grd_listatsu.colRef("spclcd") ) {
  1695. // *** 특정코드 및 특정내역의 변경이 발생하였을때 이전의 값과 비교하여 변경이 되었으면 grid의 status의 상태를 'U'로 바꿔준다. *****
  1696. var spclcd = group3.grd_listatsu.valueMatrix(row, col);
  1697. var spclspec = group3.grd_listatsu.valueMatrix(row, col+1);
  1698. fSearchSpcl();
  1699. var spclcdtwo = group3.grd_listatsu.valueMatrix(row, col);
  1700. var spclspectwo = group3.grd_listatsu.valueMatrix(row, col+1);
  1701. if(status == 0){
  1702. if(spclcd != spclcdtwo){
  1703. group3.grd_listatsu.rowStatus(row) = 2;
  1704. }
  1705. if(spclspec != spclspectwo){
  1706. group3.grd_listatsu.rowStatus(row) = 2;
  1707. }
  1708. }
  1709. */
  1710. } else if( col == group3.grd_listatsu.colRef("spclspec") ) {
  1711. if (grp_spclspec.visible == true) {
  1712. grp_spclspec.visible = false;
  1713. return;
  1714. }
  1715. if ( group3.grd_listatsu.valueMatrix(group3.grd_listatsu.row,group3.grd_listatsu.colRef("calcscorcd")) == "" ) {
  1716. return;
  1717. }
  1718. if ( ds_send_reqdata.getColumn(0, "spclcd") == "MT015" ) {
  1719. var nowrow = group3.grd_listatsu.mouseRow;
  1720. var rsltrow = 0;
  1721. ds_hidden_sppsiz00200_rslt_clsp.clearData(); ds_hidden_sppsiz00200_rslt_clsp.addRow();
  1722. ds_hidden_sppiz00200_cond_clsp.setColumn( 0, "spclspec",ds_main_list1_listatsu.getColumn(nowrow, "spclspec")));
  1723. frmf_modal("SPPIZ00200", "SPPIZ00200", ""-"", "", "1", "10", "10", "", "", "", "", "", "M"); // SPPIZ00200_첨부물자료관리.xrw
  1724. //ds_main_list1.setColumn( nowrow , "spclspec",model.getValue("ds_hidden_sppiz00200_rslt_clsp_spclspec[spclcd=MT015]"));
  1725. for (var i = 1; i <= model.getXPathValue( "count(ds_hidden_sppiz00200_rslt_clsp)" ); i++) {
  1726. if ( ds_hidden_sppiz00200_rslt_clsp.getColumn(i, "spclcd") == "MT015" ) {
  1727. rsltrow = i;
  1728. break;
  1729. }
  1730. }
  1731. if ( rsltrow > 0 ) {
  1732. //sysf_messageBox(rsltrow,"");
  1733. if ( ds_hidden_sppiz00200_rslt_clsp.getColumn(rsltrow, "rowstat")) == "D" ) {
  1734. ds_main_list1.setColumn( nowrow , "spclspec","");
  1735. } else {
  1736. ds_main_list1.setColumn( nowrow , "spclspec",ds_hidden_sppiz00200_rslt_clsp.getColumn(rsltrow, "spclspec")));
  1737. }
  1738. }
  1739. } else {
  1740. ds_hidden.setColumn( 0, "spclspec", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.mouseRow, "spclspec"));
  1741. ds_hidden.setColumn( 0, "oldspclspec", ds_main_list1_listatsu.getColumn(group3.grd_listatsu.mouseRow, "spclspec"));
  1742. grp_spclspec.attribute("top") = 125;
  1743. grp_spclspec.attribute("left") = 380;
  1744. grp_spclspec.visible = true;
  1745. grp_spclspec.tar_spclspec.setFocus();
  1746. //grp_spclspec.tar_spclspec.refresh();
  1747. fSetDisplayDisable(true); // 화면 사용여부 제어
  1748. }
  1749. }
  1750. }
  1751. function group3_grd_listatsu_ontextchanged(obj:Grid, e:GridEditTextChangedEventInfo) {
  1752. var row = group3.grd_listatsu.row;
  1753. var rowstatus = group3.grd_listatsu.rowStatus(row);
  1754. if (rowstatus == 1 || rowstatus == 3) {
  1755. ds_main_list1.setColumn( row , "changeflag","U");
  1756. //model.refresh();
  1757. }
  1758. }
  1759. function group3_grd_listatsu_onaftersort {
  1760. group3.grd_listatsu.gridToInstance();
  1761. }
  1762. function group3_btn_sel_dept_onclick(obj:Button, e:ClickEventInfo) {
  1763. if ( group3.grd_listatsu.valueMatrix(group3.grd_listatsu.row,group3.grd_listatsu.colRef("calcscorcd")) == "" ) {
  1764. sysf_messageBox("선택된 수가가", "I004");
  1765. return;
  1766. }
  1767. fSelectDeptInit();
  1768. grp_dept_select.attribute("top") = 125;
  1769. grp_dept_select.attribute("left") = 380;
  1770. grp_dept_select.grd_seldeptlist.row = 1;
  1771. grp_dept_select.visible = true;
  1772. fSetDisplayDisable(true); // 화면 사용여부 제어
  1773. }
  1774. function group4_bbt_init_onclick(obj:Button, e:ClickEventInfo) {
  1775. fInitialize();
  1776. // 행추가
  1777. fAddRow();
  1778. }
  1779. function group4_bbt_save_onclick(obj:Button, e:ClickEventInfo) {
  1780. if (fChkAutMemoCretList()) {
  1781. // 그리드 초기화
  1782. ds_main_list1_listatsu.clearData();
  1783. // if ( submit("TXPIB00801") ) {
  1784. var oParam = {};
  1785. oParam.id = "TXPIB00801";
  1786. oParam.service = "insubasecdmngtapp.AutMemoCret";
  1787. oParam.method = "reqExeSaveAutMemoCretList";
  1788. oParam.inds = "req=ds_";
  1789. oParam.outds = "ds_=savedata";
  1790. oParam.async = false;
  1791. oParam.callback = "cf_TXPIB00801";
  1792. tranf_submit(oParam);
  1793. /*
  1794. function cf_TXPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  1795. if(nErrorCode < 0) return;
  1796. }
  1797. function cf_TXPIB00801(sSvcId, nErrorCode, sErrorMsg) {
  1798. arErrorCode.push(sSvcId, nErrorCode);
  1799. }
  1800. arErrorCode.pop("TXPIB00801") > -1
  1801. arErrorCode.pop("TXPIB00801") < 0
  1802. */
  1803. var controlSnw = document.controls("group3.group2.btn_search");
  1804. controlSnw.dispatch("DOMActivate");
  1805. sysf_messageBox("정상적으로 저장되었습니다.", "I999");
  1806. }
  1807. }
  1808. }
  1809. function grp_spclspec_btn_memosave_onclick(obj:Button, e:ClickEventInfo) {
  1810. ds_main_list1.setColumn( 0, "listatsu["+group3.grd_listatsu.row+"]_spclspec", ds_hidden.getColumn(0, "spclspec"));
  1811. grp_spclspec.visible = false;
  1812. fSetDisplayDisable(false); // 화면 사용여부 제어
  1813. // 내용이 변경되면 update 상태 처리
  1814. var oldspclspec = ds_hidden.getColumn(0, "oldspclspec");
  1815. var spclspec = ds_hidden.getColumn(0, "spclspec");
  1816. if (oldspclspec != spclspec) {
  1817. var status = group3.grd_listatsu.rowstatus(group3.grd_listatsu.row);
  1818. if (status == 0) {
  1819. group3.grd_listatsu.rowstatus(group3.grd_listatsu.row) = 2;
  1820. }
  1821. }
  1822. }
  1823. function grp_spclspec_btn_cancel_onclick(obj:Button, e:ClickEventInfo) {
  1824. grp_spclspec.visible = false;
  1825. fSetDisplayDisable(false); // 화면 사용여부 제어
  1826. }
  1827. function grp_dept_select_button2_onclick(obj:Button, e:ClickEventInfo) {
  1828. grp_dept_select.visible = false;
  1829. fSetDisplayDisable(false); // 화면 사용여부 제어
  1830. }
  1831. function grp_dept_select_button4_onclick(obj:Button, e:ClickEventInfo) {
  1832. if ( fSelectDeptChk() == false ) return;
  1833. fSelectDeptInput();
  1834. grp_dept_select.visible = false;
  1835. fSetDisplayDisable(false); // 화면 사용여부 제어
  1836. group3.grd_listatsu.col = 1; // 마지막 row 로 이동
  1837. }
  1838. function grp_dept_select_btn_selall_onclick(obj:Button, e:ClickEventInfo) {
  1839. for( i = grp_dept_select.grd_seldeptlist.fixedRows; i < grp_dept_select.grd_seldeptlist.rows ; i++ ) {
  1840. ds_hidden.setColumn( i , "selyn","true");
  1841. }
  1842. //model.refresh();
  1843. }
  1844. function grp_dept_select_btn_selno_onclick(obj:Button, e:ClickEventInfo) {
  1845. for( i = grp_dept_select.grd_seldeptlist.fixedRows; i < grp_dept_select.grd_seldeptlist.rows ; i++ ) {
  1846. ds_hidden.setColumn( i , "selyn","false");
  1847. }
  1848. //model.refresh();
  1849. }
  1850. ]]></Script>
  1851. </Form>
  1852. </FDL>