SPPAO00400_신용카드승인.xfdl 187 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPPAO00400" position="absolute 0 0 950 659" titletext="신용카드승인" onload="SPPAO00400_onload" onclose="SPPAO00400_onclose">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 631 950 658" id="grp_btn" scrollbars="autoboth" taborder="0" visible="true">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 894 1 950 23" id="btn_cancel" class="btn4" text="취소" onclick="grp_btn_btn_cancel_onclick"/>
  11. <Button position="absolute 836 1 892 23" id="btn_confirm" class="btn4" text="확인" onclick="grp_btn_btn_confirm_onclick"/>
  12. <Button position="absolute 0 1 104 23" id="button3" class="btn4" text="카드전표출력" onclick="grp_btn_button3_onclick"/>
  13. </Layout>
  14. </Layouts>
  15. </Div>
  16. <Div position="absolute 0 0 950 630" id="group3" scrollbars="autoboth" taborder="2">
  17. <Layouts>
  18. <Layout>
  19. <Div position="absolute 0 0 225 110" id="group1">
  20. <Layouts>
  21. <Layout>
  22. <Shape position="absolute 2 33 222 110" id="rec_keyinptflag" class="roundrect_example" type="roundrectangle"/>
  23. <Static text="입력구분" position="absolute 0 11 111 28" id="caption5" class="tit_2"/>
  24. <Radio position="absolute 7 40 76 105" id="rdo_keyinptflag" codecolumn="cd" datacolumn="nm" innerdataset="@ds_hidden_keyinptflag" onitemchanged="group3_group1_rdo_keyinptflag_onitemchanged"/>
  25. <CheckBox position="absolute 81 86 181 101" id="chk_onlycard" text="강제카드결제" truevalue="Y" falsevalue="N" value="N" onclick="group3_group1_chk_onlycard_onclick"/>
  26. <Combo id="cmb_aprv_vanflag" taborder="1" position="absolute 126 41 216 61" innerdataset="@ds_init_pam_init_P6601list" codecolumn="cdid" datacolumn="cdnm" index="-1" visible="false"/>
  27. <Combo id="cmb_cncl_vanflag" taborder="2" position="absolute 126 62 216 82" index="-1" innerdataset="@ds_init_pam_init_P6602list" codecolumn="cdid" datacolumn="cdnm" visible="false"/>
  28. <Static id="cap_aprv_vanflag" text="로직밴" class="cell_1" position="absolute 80 41 125 61" style="padding:0 0 0 3;" onclick="group3_group1_caption12_onclick" visible="false"/>
  29. <Static id="cap_cncl_vanflag" text="승인밴" class="cell_1" position="absolute 80 63 125 83" style="padding:0 0 0 3;" visible="false"/>
  30. </Layout>
  31. </Layouts>
  32. </Div>
  33. <Div position="absolute 225 1 950 110" id="group2">
  34. <Layouts>
  35. <Layout>
  36. <Edit id="input00" taborder="19" position="absolute 599 85 723 104" autoskip="true" autoselect="true"/>
  37. <Button position="absolute 593 8 701 27" id="btn_makecardaprv" class="btn2" text="카드승인내역생성" onclick="group3_group2_btn_makecardaprv_onclick" taborder="12"/>
  38. <Static text="승인일시/번호/일련번호" position="absolute 256 83 400 106" align="align:center middle;" id="caption10" class="cell_1" onclick="group3_group2_caption10_onclick"/>
  39. <Static text="승인내역" position="absolute 0 10 111 26" id="caption1" class="tit_2"/>
  40. <Shape position="absolute 0 55 725 61" linetype="horizontal" id="line3" class="line_2"/>
  41. <Shape position="absolute 0 29 724 35" linetype="horizontal" id="line12" class="line_1" style="strokepen:3 solid #33bbbbff;"/>
  42. <Shape position="absolute 0 79 725 85" linetype="horizontal" id="line1" class="line_2"/>
  43. <Shape position="absolute 0 103 725 109" linetype="horizontal" id="line2" class="line_3"/>
  44. <Static text="카드번호" position="absolute 0 35 125 58" align="align:center middle;" id="caption2" class="cell_1"/>
  45. <Static text="할부개월" position="absolute 0 83 125 106" align="align:center middle;" id="caption3" class="cell_1"/>
  46. <Static text="유효기간" position="absolute 0 59 125 82" align="align:center middle;" id="caption6" class="cell_1"/>
  47. <Static text="결제금액" position="absolute 328 59 453 82" align="align:center middle;" id="caption7" class="cell_1"/>
  48. <Static text="(YYMM)" position="absolute 198 59 258 82" align="align:center middle;" id="caption4"/>
  49. <Edit position="absolute 128 36 323 55" id="ipt_cardno" onkeydown="group3_group2_ipt_cardno_onkeydown" maxlength="40" class="input_default" autoselect="true" onkillfocus="group3_group2_ipt_cardno_onkillfocus" autoskip="true" taborder="9"/>
  50. <Edit position="absolute 128 60 195 79" id="ipt_valiterm" onkillfocus="group3_group2_ipt_valiterm_onkillfocus" maxlength="4" autoskip="true" class="input_default" taborder="10" autoselect="true"/>
  51. <Combo position="absolute 128 85 195 104" id="cmb_allotmm" class="combo_default" innerdataset="@ds_init_com_init_P0078list" datacolumn="cdnm" codecolumn="cdid" onsetfocus="group3_group2_cmb_allotmm_onsetfocus" taborder="11" autoskip="true"/>
  52. <Edit position="absolute 196 85 251 104" id="ipt_allotmm" class="input_default" autoselect="true" maxlength="2" onkillfocus="group3_group2_ipt_allotmm_onkillfocus" autoskip="true" taborder="13"/>
  53. <MaskEdit position="absolute 457 60 588 79" align="align:right middle;" id="ipt_cardamt" class="input_default" onkeydown="group3_group2_ipt_cardamt_onkeydown" ontextchanged="group3_group2_ipt_cardamt_ontextchanged" autoselect="true" taborder="14" autoskip="true" mask="9,999,999,999,999,999"/>
  54. <Button position="absolute 548 8 590 27" id="btn_clear" class="btn2" text="입력" onclick="group3_group2_btn_clear_onclick" taborder="8"/>
  55. <Button position="absolute 593 8 657 27" id="btn_cardaprv" class="btn2" text="카드승인" onclick="group3_group2_btn_cardaprv_onclick" taborder="7"/>
  56. <Button position="absolute 660 8 724 27" id="btn_cardcncl" class="btn2" text="승인취소" onclick="group3_group2_btn_cardcncl_onclick" taborder="6"/>
  57. <Edit position="absolute 79 8 229 27" id="input1" visible="false" taborder="5"/>
  58. <Static text="카드회사" position="absolute 328 35 453 58" align="align:center middle;" id="caption11" class="cell_1"/>
  59. <Combo position="absolute 457 36 588 55" id="combo1" innerdataset="@ds_init_com_init_P0076list" datacolumn="cdnm" codecolumn="cdid" taborder="4"/>
  60. <MaskEdit position="absolute 401 85 470 104" id="input2" mask="####-##-##" type="string" taborder="15" autoskip="true" autoselect="true"/>
  61. <MaskEdit position="absolute 473 85 532 104" id="input3" mask="##:##:##" type="string" taborder="16" autoskip="true" autoselect="true"/>
  62. <Edit position="absolute 535 85 596 104" id="input4" taborder="18" autoskip="true" autoselect="true"/>
  63. <MaskEdit readonly="true" position="absolute 591 60 724 79" align="align:right middle;" id="input5" mask="(-)#,###" taborder="0"/>
  64. <Static text="전표출력" position="absolute 479 12 535 26" id="caption16"/>
  65. <CheckBox position="absolute 457 10 474 27" id="bl_receiptyn" falsevalue="N" truevalue="Y" taborder="3"/>
  66. <CheckBox position="absolute 240 8 400 28" id="checkbox4" text="승인취소시 안내문자 발송" taborder="2"/>
  67. <ImageViewer position="absolute 406 10 420 26" id="img1" image="URL('theme://images\icon_List_N.png')" onclick="group3_group2_img1_onclick" style="border:1 solid brown ;" taborder="1"/>
  68. <TextArea id="tar_sms" taborder="17" enable="false" visible="false" position="absolute -267 34 220 111" style="background:#ffffdcff stretch 5,5;border:1 solid #c0c0c0ff ;"/>
  69. <Static id="caption00" text="카드구분" class="cell_1" position="absolute 592 35 652 58"/>
  70. <Combo id="cmb_cardtype" taborder="20" position="absolute 655 35 723 55" innerdataset="@ds_init_cvan_cardtype" index="0" codecolumn="value" datacolumn="label"/>
  71. </Layout>
  72. </Layouts>
  73. </Div>
  74. <Static text="카드결제금액" position="absolute 747 606 847 629" align="align:center middle;" id="caption12" class="cell_1" style="padding:0 0 0 3;"/>
  75. <Static text="수납대상금액" position="absolute 541 606 641 629" align="align:center middle;" id="caption8" class="cell_1" style="padding:0 0 0 3;"/>
  76. <Tab position="absolute 2 116 950 601" id="swt_cardlist" tabindex="1">
  77. <Tabpages>
  78. <Tabpage text="VAN정보" position="absolute 0 0 950 465" id="case_cvan">
  79. <Layouts>
  80. <Layout>
  81. <Shape position="absolute 5 0 945 29" id="roundrect1" class="roundrect_example" type="roundrectangle"/>
  82. <Grid position="absolute 0 31 948 458" id="grd_cvan" binddataset="ds_main_h_cvan_cvan" oncellclick="group3_swt_cardlist_case_cvan_grd_cvan_oncellclick">
  83. <Formats>
  84. <Format id="default">
  85. <Columns>
  86. <Column size="25" band="left"/>
  87. <Column size="65"/>
  88. <Column size="59"/>
  89. <Column size="60"/>
  90. <Column size="118"/>
  91. <Column size="40"/>
  92. <Column size="54"/>
  93. <Column size="30"/>
  94. <Column size="71"/>
  95. <Column size="89"/>
  96. <Column size="67"/>
  97. <Column size="70"/>
  98. <Column size="60"/>
  99. <Column size="61"/>
  100. <Column size="120"/>
  101. <Column size="58"/>
  102. <Column size="70"/>
  103. </Columns>
  104. <Rows>
  105. <Row size="24" band="head"/>
  106. <Row size="24"/>
  107. </Rows>
  108. <Band id="head">
  109. <Cell/>
  110. <Cell col="1" text="승인구분"/>
  111. <Cell col="2" text="진료구분"/>
  112. <Cell col="3" text="카드회사"/>
  113. <Cell col="4" text="카드번호"/>
  114. <Cell col="5" text="구분"/>
  115. <Cell col="6" text="유효기간"/>
  116. <Cell col="7" text="할부"/>
  117. <Cell col="8" text="결제금액"/>
  118. <Cell col="9" text="거래일련번호"/>
  119. <Cell col="10" text="승인번호"/>
  120. <Cell col="11" text="승인일자"/>
  121. <Cell col="12" text="시간"/>
  122. <Cell col="13" text="승인자"/>
  123. <Cell col="14" text="최종작업시간"/>
  124. <Cell col="15" text="입력구분"/>
  125. <Cell col="16" text="기타"/>
  126. </Band>
  127. <Band id="body">
  128. <Cell celltype="head" expr="expr:currow + 1"/>
  129. <Cell col="1" displaytype="combo" style="align:center middle;" text="bind:cvan_aprvflag" combodataset="ds_init_com_init_P0390list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  130. <Cell col="2" displaytype="combo" style="align:center middle;" text="bind:cvan_ordtype" combodataset="ds_init_com_init_P0001list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  131. <Cell col="3" displaytype="combo" style="align:center middle;" text="bind:cvan_cardcmpycd" combodataset="ds_init_com_init_P0076list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  132. <Cell col="4" style="align:center middle;" text="bind:cvan_cardno"/>
  133. <Cell col="5" displaytype="combo" edittype="combo" style="align:center middle;" text="bind:cvan_cardtype" combodataset="ds_init_cvan_cardtype" combocodecol="value" combodatacol="label"/>
  134. <Cell col="6" style="align:center middle;" text="bind:cvan_valiterm"/>
  135. <Cell col="7" style="align:center middle;" text="bind:cvan_allotmm"/>
  136. <Cell col="8" displaytype="number" style="align:right middle;" text="bind:cvan_cardamt" mask="9,999"/>
  137. <Cell col="9" text="bind:cvan_aprvunino"/>
  138. <Cell col="10" style="align:center middle;" text="bind:cvan_aprvno"/>
  139. <Cell col="11" displaytype="date" style="align:center middle;" text="bind:cvan_aprvdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  140. <Cell col="12" displaytype="date" style="align:center middle;" text="bind:cvan_aprvtm" mask="HH:mm:ss" calendardisplaynulltype="nulltext"/>
  141. <Cell col="13" style="align:center middle;" text="bind:cvan_fstrgstrid"/>
  142. <Cell col="14" displaytype="date" style="align:center middle;" text="bind:cvan_lastupdtdt" mask="yyyy-MM-dd HH:mm:ss" calendardisplaynulltype="nulltext"/>
  143. <Cell col="15" displaytype="combo" style="align:center;" text="bind:cvan_keyinptflag" combodataset="ds_hidden_keyinptflag" combocodecol="cd" combodatacol="nm"/>
  144. <Cell col="16" displaytype="combo" style="align:center middle;" text="bind:cvan_etcflag" combodataset="ds_init_cvan_etcflag" combocodecol="value" combodatacol="label" enable="false"/>
  145. </Band>
  146. </Format>
  147. </Formats>
  148. </Grid>
  149. <Button position="absolute 468 5 557 24" id="button1" class="btn2" text="승인내역조회" onclick="group3_swt_cardlist_case_cvan_button1_onclick"/>
  150. <Static text="승인일자" position="absolute 10 3 70 26" align="align:center middle;" id="caption9" class="cell_1" style="padding:0 0 0 3;"/>
  151. <Calendar position="absolute 73 5 163 24" id="input6" class="input_default" autoselect="true" autoskip="true" dateformat="yyyy-MM-dd" value="null"/>
  152. <CheckBox position="absolute 690 7 785 22" id="checkbox1" text="카드내역생성" onchanged="group3_swt_cardlist_case_cvan_checkbox1_onchanged" truevalue="Y" falsevalue="N"/>
  153. <CheckBox position="absolute 565 7 660 22" id="checkbox2" visible="false" text="승인내역취소" onchanged="group3_swt_cardlist_case_cvan_checkbox2_onchanged" truevalue="Y" falsevalue="N"/>
  154. <Combo position="absolute 382 5 466 24" id="combo2" class="combo_default" codecolumn="codecolumn" datacolumn="datacolumn">
  155. <Dataset id="innerdataset">
  156. <ColumnInfo>
  157. <Column id="codecolumn"/>
  158. <Column id="datacolumn"/>
  159. </ColumnInfo>
  160. <Rows>
  161. <Row>
  162. <Col id="codecolumn">-</Col>
  163. <Col id="datacolumn">전체</Col>
  164. </Row>
  165. <Row>
  166. <Col id="codecolumn">12</Col>
  167. <Col id="datacolumn">승인내역</Col>
  168. </Row>
  169. <Row>
  170. <Col id="codecolumn">22</Col>
  171. <Col id="datacolumn">취소내역</Col>
  172. </Row>
  173. </Rows>
  174. </Dataset>
  175. </Combo>
  176. <Static text="승인/취소" position="absolute 314 3 380 26" align="align:center middle;" id="caption14" class="cell_1" style="padding:0 0 0 3;"/>
  177. <Radio position="absolute 166 3 305 25" id="radio1" columncount="3" codecolumn="codecolumn" datacolumn="datacolumn">
  178. <Dataset id="innerdataset">
  179. <ColumnInfo>
  180. <Column id="codecolumn"/>
  181. <Column id="datacolumn"/>
  182. </ColumnInfo>
  183. <Rows>
  184. <Row>
  185. <Col id="codecolumn">O</Col>
  186. <Col id="datacolumn">외래</Col>
  187. </Row>
  188. <Row>
  189. <Col id="codecolumn">I</Col>
  190. <Col id="datacolumn">입원</Col>
  191. </Row>
  192. <Row>
  193. <Col id="codecolumn">H</Col>
  194. <Col id="datacolumn">건진</Col>
  195. </Row>
  196. </Rows>
  197. </Dataset>
  198. </Radio>
  199. </Layout>
  200. </Layouts>
  201. </Tabpage>
  202. <Tabpage text="카드내역" id="case_card">
  203. <Layouts>
  204. <Layout>
  205. <Grid position="absolute 0 0 948 456" id="grd_card" class="datagrid2" binddataset="ds_main_h_card_card" oncellclick="group3_swt_cardlist_case_card_grd_card_oncellclick" autofittype="col">
  206. <Formats>
  207. <Format id="default">
  208. <Columns>
  209. <Column size="25"/>
  210. <Column size="71"/>
  211. <Column size="105"/>
  212. <Column size="144"/>
  213. <Column size="44"/>
  214. <Column size="98"/>
  215. <Column size="60"/>
  216. <Column size="110"/>
  217. <Column size="42"/>
  218. <Column size="98"/>
  219. <Column size="99"/>
  220. <Column size="48"/>
  221. <Column size="0"/>
  222. <Column size="0"/>
  223. <Column size="0"/>
  224. <Column size="0"/>
  225. <Column size="0"/>
  226. <Column size="0"/>
  227. <Column size="60"/>
  228. <Column size="0"/>
  229. <Column size="0"/>
  230. <Column size="0"/>
  231. <Column size="0"/>
  232. <Column size="0"/>
  233. <Column size="0"/>
  234. <Column size="0"/>
  235. <Column size="95"/>
  236. </Columns>
  237. <Rows>
  238. <Row size="29" band="head"/>
  239. <Row size="24"/>
  240. </Rows>
  241. <Band id="head">
  242. <Cell/>
  243. <Cell col="1" text="승인상태"/>
  244. <Cell col="2" text="카드회사"/>
  245. <Cell col="3" text="카드번호"/>
  246. <Cell col="4" text="유효&#10;기간"/>
  247. <Cell col="5" text="승인일자"/>
  248. <Cell col="6" text="시간"/>
  249. <Cell col="7" text="승인번호"/>
  250. <Cell col="8" text="할부"/>
  251. <Cell col="9" text="결제금액"/>
  252. <Cell col="10" text="영수일자"/>
  253. <Cell col="11" text="영수&#10;번호"/>
  254. <Cell col="12" text="caption20"/>
  255. <Cell col="13" text="caption21"/>
  256. <Cell col="14" text="caption22"/>
  257. <Cell col="15" text="caption23"/>
  258. <Cell col="16" text="caption24"/>
  259. <Cell col="17" text="caption25"/>
  260. <Cell col="18" text="입력구분"/>
  261. <Cell col="19" text="caption27"/>
  262. <Cell col="20" text="caption28"/>
  263. <Cell col="21" text="caption29"/>
  264. <Cell col="22" text="caption30"/>
  265. <Cell col="23" text="caption31"/>
  266. <Cell col="24" text="caption32"/>
  267. <Cell col="25" text="caption33"/>
  268. <Cell col="26" text="거래일련번호"/>
  269. </Band>
  270. <Band id="body">
  271. <Cell celltype="head" expr="expr:currow + 1"/>
  272. <Cell col="1" displaytype="combo" text="bind:card_rcptstat" combodataset="ds_init_com_init_P0049list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  273. <Cell col="2" displaytype="combo" text="bind:card_cardcmpycd" combodataset="ds_init_com_init_P0076list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  274. <Cell col="3" text="bind:card_cardno"/>
  275. <Cell col="4" text="bind:card_valiterm"/>
  276. <Cell col="5" displaytype="date" text="bind:card_aprvdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  277. <Cell col="6" displaytype="normal" text="bind:card_aprvtm" mask="##:##:##" calendardisplaynulltype="nulltext"/>
  278. <Cell col="7" text="bind:card_aprvno"/>
  279. <Cell col="8" text="bind:card_allotmm"/>
  280. <Cell col="9" displaytype="number" text="bind:card_cardamt" mask="9,999"/>
  281. <Cell col="10" displaytype="date" text="bind:card_rcptdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  282. <Cell col="11" text="bind:card_rcptno"/>
  283. <Cell col="12" text="bind:card_pid"/>
  284. <Cell col="13" text="bind:card_rcptseqno"/>
  285. <Cell col="14" text="bind:card_seqno"/>
  286. <Cell col="15" text="bind:card_instcd"/>
  287. <Cell col="16" text="bind:card_rcptstat"/>
  288. <Cell col="17" displaytype="normal" text="bind:card_ordtype"/>
  289. <Cell col="18" displaytype="combo" text="bind:card_keyinptflag" combodataset="ds_hidden_keyinptflag" combocodecol="cd" combodatacol="nm"/>
  290. <Cell col="19" text="bind:card_vancd"/>
  291. <Cell col="20" text="bind:card_rcptexecdd"/>
  292. <Cell col="21" text="bind:card_rcpttm"/>
  293. <Cell col="22" text="bind:card_rcptrid"/>
  294. <Cell col="23" text="bind:card_innrtretyn"/>
  295. <Cell col="24" text="bind:card_preamtyn"/>
  296. <Cell col="25" text="bind:card_remfact"/>
  297. <Cell col="26" text="bind:card_aprvunino"/>
  298. </Band>
  299. </Format>
  300. </Formats>
  301. </Grid>
  302. </Layout>
  303. </Layouts>
  304. </Tabpage>
  305. <Tabpage text="카드내역II" id="case_card2">
  306. <Layouts>
  307. <Layout>
  308. <Shape position="absolute 5 1 79 24" id="roundrect2" class="roundrect_example" type="roundrectangle"/>
  309. <Grid position="absolute 0 26 948 458" id="grd_card2" class="datagrid2" binddataset="ds_main_c_card_card" autofittype="col">
  310. <Formats>
  311. <Format id="default">
  312. <Columns>
  313. <Column size="25"/>
  314. <Column size="76"/>
  315. <Column size="96"/>
  316. <Column size="181"/>
  317. <Column size="47"/>
  318. <Column size="99"/>
  319. <Column size="53"/>
  320. <Column size="101"/>
  321. <Column size="57"/>
  322. <Column size="66"/>
  323. <Column size="104"/>
  324. <Column size="68"/>
  325. <Column size="0"/>
  326. <Column size="0"/>
  327. <Column size="0"/>
  328. <Column size="0"/>
  329. <Column size="0"/>
  330. <Column size="0"/>
  331. <Column size="0"/>
  332. <Column size="0"/>
  333. <Column size="0"/>
  334. <Column size="0"/>
  335. <Column size="0"/>
  336. <Column size="0"/>
  337. <Column size="0"/>
  338. <Column size="0"/>
  339. </Columns>
  340. <Rows>
  341. <Row size="30" band="head"/>
  342. <Row size="24"/>
  343. </Rows>
  344. <Band id="head">
  345. <Cell/>
  346. <Cell col="1" text="승인상태"/>
  347. <Cell col="2" text="카드회사"/>
  348. <Cell col="3" text="카드번호"/>
  349. <Cell col="4" text="유효&#10;기간"/>
  350. <Cell col="5" text="승인일자"/>
  351. <Cell col="6" text="시간"/>
  352. <Cell col="7" text="승인번호"/>
  353. <Cell col="8" text="할부"/>
  354. <Cell col="9" text="결제금액"/>
  355. <Cell col="10" text="영수일자"/>
  356. <Cell col="11" text="영수&#10;번호"/>
  357. <Cell col="12" text="caption20"/>
  358. <Cell col="13" text="caption21"/>
  359. <Cell col="14" text="caption22"/>
  360. <Cell col="15" text="caption23"/>
  361. <Cell col="16" text="caption24"/>
  362. <Cell col="17" text="caption25"/>
  363. <Cell col="18" text="caption26"/>
  364. <Cell col="19" text="caption27"/>
  365. <Cell col="20" text="caption28"/>
  366. <Cell col="21" text="caption29"/>
  367. <Cell col="22" text="caption30"/>
  368. <Cell col="23" text="caption31"/>
  369. <Cell col="24" text="caption32"/>
  370. <Cell col="25" text="caption33"/>
  371. </Band>
  372. <Band id="body">
  373. <Cell celltype="head" expr="expr:currow + 1"/>
  374. <Cell col="1" displaytype="combo" text="bind:card_rcptstat" combodataset="ds_init_com_init_P0049list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  375. <Cell col="2" displaytype="combo" text="bind:card_cardcmpycd" combodataset="ds_init_com_init_P0076list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  376. <Cell col="3" text="bind:card_cardno"/>
  377. <Cell col="4" text="bind:card_valiterm"/>
  378. <Cell col="5" displaytype="date" text="bind:card_aprvdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  379. <Cell col="6" displaytype="normal" text="bind:card_aprvtm" mask="##:##:##" calendardisplaynulltype="nulltext"/>
  380. <Cell col="7" text="bind:card_aprvno"/>
  381. <Cell col="8" text="bind:card_allotmm"/>
  382. <Cell col="9" displaytype="number" text="bind:card_cardamt" mask="9,999"/>
  383. <Cell col="10" displaytype="date" text="bind:card_rcptdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  384. <Cell col="11" text="bind:card_rcptno"/>
  385. <Cell col="12" text="bind:card_pid"/>
  386. <Cell col="13" text="bind:card_rcptseqno"/>
  387. <Cell col="14" text="bind:card_seqno"/>
  388. <Cell col="15" text="bind:card_instcd"/>
  389. <Cell col="16" text="bind:card_rcptstat"/>
  390. <Cell col="17" text="bind:card_ordtype"/>
  391. <Cell col="18" text="bind:card_keyinptflag"/>
  392. <Cell col="19" text="bind:card_vancd"/>
  393. <Cell col="20" text="bind:card_rcptexecdd"/>
  394. <Cell col="21" text="bind:card_rcpttm"/>
  395. <Cell col="22" text="bind:card_rcptrid"/>
  396. <Cell col="23" text="bind:card_innrtretyn"/>
  397. <Cell col="24" text="bind:card_preamtyn"/>
  398. <Cell col="25" text="bind:card_remfact"/>
  399. </Band>
  400. </Format>
  401. </Formats>
  402. </Grid>
  403. <CheckBox position="absolute 15 5 75 20" id="checkbox3" enable="false" text="재승인" onchanged="group3_swt_cardlist_case_card2_checkbox3_onchanged"/>
  404. <Static text="멀티접수내역을 변경/반환 하실 경우에는 변경/반환 하지 않을 내역에 대한 재승인을 먼저 하셔야합니다!!!" position="absolute 129 5 700 25" id="caption13"/>
  405. <Button position="absolute 83 4 125 23" id="button2" class="btn5" text="저장" onclick="group3_swt_cardlist_case_card2_button2_onclick"/>
  406. </Layout>
  407. </Layouts>
  408. </Tabpage>
  409. </Tabpages>
  410. </Tab>
  411. <MaskEdit readonly="true" position="absolute 644 607 744 626" align="align:right middle;" id="opt_rcptamt" mask="(-)#,###"/>
  412. <MaskEdit readonly="true" position="absolute 850 607 950 626" align="align:right middle;" id="opt_cardamt" mask="(-)#,###"/>
  413. <Static text="산전지원금만 승인하세요! 일반 수납금액은 승인하지 마세요!" position="absolute 211 116 711 139" id="caption15" visible="false" style="color:red;font:arial,13,bold;"/>
  414. </Layout>
  415. </Layouts>
  416. </Div>
  417. <Div position="absolute 171 561 641 653" id="group4" visible="false" style="background:#ffff99ff;" taborder="1">
  418. <Layouts>
  419. <Layout>
  420. <ActiveX position="absolute 5 5 20 20" id="KocesICAx" progid="{1b854c3d-3e2c-442b-ad0a-9bc9cb77af9f}" anchor="default" visible="false"/>
  421. <Edit position="absolute 40 3 460 22" id="input7" anchor="default"/>
  422. <ImageViewer position="absolute 105 25 233 89" id="Sign_img_esign" anchor="default"/>
  423. <ActiveX position="absolute 20 5 35 20" id="KocesImage" progid="{ae0ab861-ee02-428f-b8c2-2050407d6e6f}" anchor="default" visible="false"/>
  424. <ImageViewer position="absolute 330 25 458 89" id="Sign_img_output" anchor="default"/>
  425. <Static text="전자서명&#13;&#10;img to hex&#13;&#10;변환용" position="absolute 29 38 104 80" id="caption17" anchor="default"/>
  426. <Static text="전자서명&#13;&#10;hex to img&#13;&#10;검증용" position="absolute 254 38 329 80" id="caption18" anchor="default"/>
  427. </Layout>
  428. </Layouts>
  429. </Div>
  430. <ActiveX id="KNUH_IC_OCX" position="absolute 4 603 109 626" useautobitmapcache="1" anchor="default" taborder="3" progid="{8275D00B-060E-435C-A956-407708677CE3}" visible="false"/>
  431. </Layout>
  432. </Layouts>
  433. <Objects>
  434. <Dataset id="ds_init_cmb_allotmm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  435. <ColumnInfo>
  436. <Column id="cdnm" type="STRING"/>
  437. <Column id="cdid" type="STRING"/>
  438. </ColumnInfo>
  439. </Dataset>
  440. <Dataset id="ds_init_combo1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  441. <ColumnInfo>
  442. <Column id="cdnm" type="STRING"/>
  443. <Column id="cdid" type="STRING"/>
  444. </ColumnInfo>
  445. </Dataset>
  446. <Dataset id="ds_grd_cvan" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  447. <ColumnInfo>
  448. <Column id="cvan_aprvflag" type="STRING"/>
  449. <Column id="cvan_ordtype" type="STRING"/>
  450. <Column id="cvan_cardcmpycd" type="STRING"/>
  451. <Column id="cvan_cardno" type="STRING"/>
  452. <Column id="cvan_cardtype" type="STRING"/>
  453. <Column id="cvan_valiterm" type="STRING"/>
  454. <Column id="cvan_allotmm" type="STRING"/>
  455. <Column id="cvan_cardamt" type="STRING"/>
  456. <Column id="cvan_aprvno" type="STRING"/>
  457. <Column id="cvan_aprvdd" type="STRING"/>
  458. <Column id="cvan_aprvtm" type="STRING"/>
  459. <Column id="cvan_fstrgstrid" type="STRING"/>
  460. <Column id="cvan_lastupdtdt" type="STRING"/>
  461. <Column id="cvan_etcflag" type="STRING"/>
  462. </ColumnInfo>
  463. </Dataset>
  464. <Dataset id="ds_grd_card" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  465. <ColumnInfo>
  466. <Column id="card_rcptstat" type="STRING"/>
  467. <Column id="card_cardcmpycd" type="STRING"/>
  468. <Column id="card_cardno" type="STRING"/>
  469. <Column id="card_valiterm" type="STRING"/>
  470. <Column id="card_aprvdd" type="STRING"/>
  471. <Column id="card_aprvtm" type="STRING"/>
  472. <Column id="card_aprvno" type="STRING"/>
  473. <Column id="card_allotmm" type="STRING"/>
  474. <Column id="card_cardamt" type="STRING"/>
  475. <Column id="card_rcptdd" type="STRING"/>
  476. <Column id="card_rcptno" type="STRING"/>
  477. <Column id="card_pid" type="STRING"/>
  478. <Column id="card_rcptseqno" type="STRING"/>
  479. <Column id="card_seqno" type="STRING"/>
  480. <Column id="card_instcd" type="STRING"/>
  481. <Column id="card_rcptstat" type="STRING"/>
  482. <Column id="card_ordtype" type="STRING"/>
  483. <Column id="card_keyinptflag" type="STRING"/>
  484. <Column id="card_vancd" type="STRING"/>
  485. <Column id="card_rcptexecdd" type="STRING"/>
  486. <Column id="card_rcpttm" type="STRING"/>
  487. <Column id="card_rcptrid" type="STRING"/>
  488. <Column id="card_innrtretyn" type="STRING"/>
  489. <Column id="card_preamtyn" type="STRING"/>
  490. <Column id="card_remfact" type="STRING"/>
  491. </ColumnInfo>
  492. </Dataset>
  493. <Dataset id="ds_grd_card2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  494. <ColumnInfo>
  495. <Column id="card_rcptstat" type="STRING"/>
  496. <Column id="card_cardcmpycd" type="STRING"/>
  497. <Column id="card_cardno" type="STRING"/>
  498. <Column id="card_valiterm" type="STRING"/>
  499. <Column id="card_aprvdd" type="STRING"/>
  500. <Column id="card_aprvtm" type="STRING"/>
  501. <Column id="card_aprvno" type="STRING"/>
  502. <Column id="card_allotmm" type="STRING"/>
  503. <Column id="card_cardamt" type="STRING"/>
  504. <Column id="card_rcptdd" type="STRING"/>
  505. <Column id="card_rcptno" type="STRING"/>
  506. <Column id="card_pid" type="STRING"/>
  507. <Column id="card_rcptseqno" type="STRING"/>
  508. <Column id="card_seqno" type="STRING"/>
  509. <Column id="card_instcd" type="STRING"/>
  510. <Column id="card_rcptstat" type="STRING"/>
  511. <Column id="card_ordtype" type="STRING"/>
  512. <Column id="card_keyinptflag" type="STRING"/>
  513. <Column id="card_vancd" type="STRING"/>
  514. <Column id="card_rcptexecdd" type="STRING"/>
  515. <Column id="card_rcpttm" type="STRING"/>
  516. <Column id="card_rcptrid" type="STRING"/>
  517. <Column id="card_innrtretyn" type="STRING"/>
  518. <Column id="card_preamtyn" type="STRING"/>
  519. <Column id="card_remfact" type="STRING"/>
  520. </ColumnInfo>
  521. </Dataset>
  522. <Dataset id="ds_main_iptflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  523. <ColumnInfo>
  524. <Column id="cardedit" type="STRING" size="256"/>
  525. <Column id="cardallinfo" type="STRING" size="256"/>
  526. <Column id="aprvdd" type="STRING" size="256"/>
  527. <Column id="cvancncl" type="STRING" size="256"/>
  528. <Column id="cardaprv" type="STRING" size="256"/>
  529. <Column id="recardaprv" type="STRING" size="256"/>
  530. <Column id="aprvsrchflag" type="STRING" size="256"/>
  531. <Column id="ioflag" type="STRING" size="256"/>
  532. <Column id="receiptyn" type="STRING" size="256"/>
  533. <Column id="vanflag" type="STRING" size="256"/>
  534. <Column id="cnclvanflag" type="STRING" size="256"/>
  535. </ColumnInfo>
  536. <Rows>
  537. <Row>
  538. <Col id="cardedit"/>
  539. <Col id="cardallinfo"/>
  540. <Col id="aprvdd"/>
  541. <Col id="cvancncl"/>
  542. <Col id="cardaprv"/>
  543. <Col id="recardaprv"/>
  544. <Col id="aprvsrchflag">-</Col>
  545. <Col id="ioflag"/>
  546. <Col id="receiptyn"/>
  547. <Col id="vanflag"/>
  548. </Row>
  549. </Rows>
  550. </Dataset>
  551. <Dataset id="ds_main_card" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  552. <ColumnInfo>
  553. <Column id="totrcptamt" type="STRING" size="256"/>
  554. <Column id="totcardamt" type="STRING" size="256"/>
  555. <Column id="subtotalamt" type="STRING" size="256"/>
  556. <Column id="swipedata" type="STRING" size="256"/>
  557. <Column id="aprvcardamt" type="STRING" size="256"/>
  558. </ColumnInfo>
  559. <Rows>
  560. <Row>
  561. <Col id="totrcptamt"/>
  562. <Col id="totcardamt"/>
  563. <Col id="subtotalamt"/>
  564. <Col id="swipedata"/>
  565. <Col id="aprvcardamt"/>
  566. </Row>
  567. </Rows>
  568. </Dataset>
  569. <Dataset id="ds_main_card2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_card2_oncolumnchanged">
  570. <ColumnInfo>
  571. <Column id="card_pid" type="STRING" size="256"/>
  572. <Column id="card_rcptdd" type="STRING" size="256"/>
  573. <Column id="card_rcptno" type="STRING" size="256"/>
  574. <Column id="card_rcptseqno" type="STRING" size="256"/>
  575. <Column id="card_seqno" type="STRING" size="256"/>
  576. <Column id="card_instcd" type="STRING" size="256"/>
  577. <Column id="card_rcptstat" type="STRING" size="256"/>
  578. <Column id="card_ordtype" type="STRING" size="256"/>
  579. <Column id="card_keyinptflag" type="STRING" size="256"/>
  580. <Column id="card_cardcmpycd" type="STRING" size="256"/>
  581. <Column id="card_cardno" type="STRING" size="256"/>
  582. <Column id="card_aprvflag" type="STRING" size="256"/>
  583. <Column id="card_aprvdd" type="STRING" size="256"/>
  584. <Column id="card_aprvtm" type="STRING" size="256"/>
  585. <Column id="card_aprvno" type="STRING" size="256"/>
  586. <Column id="card_vancd" type="STRING" size="256"/>
  587. <Column id="card_allotmm" type="STRING" size="256"/>
  588. <Column id="card_cardamt" type="STRING" size="256"/>
  589. <Column id="card_valiterm" type="STRING" size="256"/>
  590. <Column id="card_rcptexecdd" type="STRING" size="256"/>
  591. <Column id="card_rcpttm" type="STRING" size="256"/>
  592. <Column id="card_rcptrid" type="STRING" size="256"/>
  593. <Column id="card_innrtretyn" type="STRING" size="256"/>
  594. <Column id="card_preamtyn" type="STRING" size="256"/>
  595. <Column id="card_remfact" type="STRING" size="256"/>
  596. <Column id="card_fstrgstrid" type="STRING" size="256"/>
  597. <Column id="card_fstrgstdt" type="STRING" size="256"/>
  598. <Column id="card_lastupdtrid" type="STRING" size="256"/>
  599. <Column id="card_lastupdtdt" type="STRING" size="256"/>
  600. <Column id="card_aprvunino" type="STRING" size="256"/>
  601. <Column id="card_cardtype" type="STRING" size="256"/>
  602. </ColumnInfo>
  603. <Rows>
  604. <Row>
  605. <Col id="card_pid"/>
  606. <Col id="card_rcptdd"/>
  607. <Col id="card_rcptno"/>
  608. <Col id="card_rcptseqno"/>
  609. <Col id="card_seqno"/>
  610. <Col id="card_instcd"/>
  611. <Col id="card_rcptstat"/>
  612. <Col id="card_ordtype"/>
  613. <Col id="card_keyinptflag"/>
  614. <Col id="card_cardcmpycd"/>
  615. <Col id="card_cardno"/>
  616. <Col id="card_aprvflag"/>
  617. <Col id="card_aprvdd"/>
  618. <Col id="card_aprvtm"/>
  619. <Col id="card_aprvno"/>
  620. <Col id="card_vancd"/>
  621. <Col id="card_allotmm"/>
  622. <Col id="card_cardamt"/>
  623. <Col id="card_valiterm"/>
  624. <Col id="card_rcptexecdd"/>
  625. <Col id="card_rcpttm"/>
  626. <Col id="card_rcptrid"/>
  627. <Col id="card_innrtretyn"/>
  628. <Col id="card_preamtyn"/>
  629. <Col id="card_remfact"/>
  630. <Col id="card_fstrgstrid"/>
  631. <Col id="card_fstrgstdt"/>
  632. <Col id="card_lastupdtrid"/>
  633. <Col id="card_lastupdtdt"/>
  634. </Row>
  635. </Rows>
  636. </Dataset>
  637. <Dataset id="ds_main_h_cvan_cvan" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  638. <ColumnInfo>
  639. <Column id="cvan_pid" type="STRING" size="256"/>
  640. <Column id="cvan_aprvflag" type="STRING" size="256"/>
  641. <Column id="cvan_aprvdd" type="STRING" size="256"/>
  642. <Column id="cvan_aprvtm" type="STRING" size="256"/>
  643. <Column id="cvan_aprvno" type="STRING" size="256"/>
  644. <Column id="cvan_instcd" type="STRING" size="256"/>
  645. <Column id="cvan_keyinptflag" type="STRING" size="256"/>
  646. <Column id="cvan_cardcmpycd" type="STRING" size="256"/>
  647. <Column id="cvan_cardno" type="STRING" size="256"/>
  648. <Column id="cvan_vancd" type="STRING" size="256"/>
  649. <Column id="cvan_allotmm" type="STRING" size="256"/>
  650. <Column id="cvan_valiterm" type="STRING" size="256"/>
  651. <Column id="cvan_cardamt" type="STRING" size="256"/>
  652. <Column id="cvan_trmnno" type="STRING" size="256"/>
  653. <Column id="cvan_rcptexecdd" type="STRING" size="256"/>
  654. <Column id="cvan_rcpttm" type="STRING" size="256"/>
  655. <Column id="cvan_rcptrid" type="STRING" size="256"/>
  656. <Column id="cvan_remfact" type="STRING" size="256"/>
  657. <Column id="cvan_fstrgstrid" type="STRING" size="256"/>
  658. <Column id="cvan_fstrgstdt" type="STRING" size="256"/>
  659. <Column id="cvan_lastupdtrid" type="STRING" size="256"/>
  660. <Column id="cvan_lastupdtdt" type="STRING" size="256"/>
  661. <Column id="cvan_aprvunino" type="STRING" size="256"/>
  662. </ColumnInfo>
  663. <Rows>
  664. <Row>
  665. <Col id="cvan_pid"/>
  666. <Col id="cvan_aprvflag"/>
  667. <Col id="cvan_aprvdd"/>
  668. <Col id="cvan_aprvtm"/>
  669. <Col id="cvan_aprvno"/>
  670. <Col id="cvan_instcd"/>
  671. <Col id="cvan_keyinptflag"/>
  672. <Col id="cvan_cardcmpycd"/>
  673. <Col id="cvan_cardno"/>
  674. <Col id="cvan_vancd"/>
  675. <Col id="cvan_allotmm"/>
  676. <Col id="cvan_valiterm"/>
  677. <Col id="cvan_cardamt"/>
  678. <Col id="cvan_trmnno"/>
  679. <Col id="cvan_rcptexecdd"/>
  680. <Col id="cvan_rcpttm"/>
  681. <Col id="cvan_rcptrid"/>
  682. <Col id="cvan_remfact"/>
  683. <Col id="cvan_fstrgstrid"/>
  684. <Col id="cvan_fstrgstdt"/>
  685. <Col id="cvan_lastupdtrid"/>
  686. <Col id="cvan_lastupdtdt"/>
  687. </Row>
  688. </Rows>
  689. </Dataset>
  690. <Dataset id="ds_main_h_card_card" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  691. <ColumnInfo>
  692. <Column id="card_pid" type="STRING" size="256"/>
  693. <Column id="card_rcptdd" type="STRING" size="256"/>
  694. <Column id="card_rcptno" type="STRING" size="256"/>
  695. <Column id="card_rcptseqno" type="STRING" size="256"/>
  696. <Column id="card_seqno" type="STRING" size="256"/>
  697. <Column id="card_instcd" type="STRING" size="256"/>
  698. <Column id="card_rcptstat" type="STRING" size="256"/>
  699. <Column id="card_ordtype" type="STRING" size="256"/>
  700. <Column id="card_keyinptflag" type="STRING" size="256"/>
  701. <Column id="card_cardcmpycd" type="STRING" size="256"/>
  702. <Column id="card_cardno" type="STRING" size="256"/>
  703. <Column id="card_aprvflag" type="STRING" size="256"/>
  704. <Column id="card_aprvdd" type="STRING" size="256"/>
  705. <Column id="card_aprvtm" type="STRING" size="256"/>
  706. <Column id="card_aprvno" type="STRING" size="256"/>
  707. <Column id="card_vancd" type="STRING" size="256"/>
  708. <Column id="card_allotmm" type="STRING" size="256"/>
  709. <Column id="card_cardamt" type="STRING" size="256"/>
  710. <Column id="card_valiterm" type="STRING" size="256"/>
  711. <Column id="card_rcptexecdd" type="STRING" size="256"/>
  712. <Column id="card_rcpttm" type="STRING" size="256"/>
  713. <Column id="card_rcptrid" type="STRING" size="256"/>
  714. <Column id="card_innrtretyn" type="STRING" size="256"/>
  715. <Column id="card_preamtyn" type="STRING" size="256"/>
  716. <Column id="card_remfact" type="STRING" size="256"/>
  717. <Column id="card_fstrgstrid" type="STRING" size="256"/>
  718. <Column id="card_fstrgstdt" type="STRING" size="256"/>
  719. <Column id="card_lastupdtrid" type="STRING" size="256"/>
  720. <Column id="card_lastupdtdt" type="STRING" size="256"/>
  721. <Column id="card_swipedata" type="STRING" size="256"/>
  722. <Column id="card_mseqno" type="STRING" size="256"/>
  723. <Column id="card_aprvunino" type="STRING" size="256"/>
  724. </ColumnInfo>
  725. <Rows>
  726. <Row/>
  727. </Rows>
  728. </Dataset>
  729. <Dataset id="ds_main_c_card_card" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  730. <ColumnInfo>
  731. <Column id="card_pid" type="STRING" size="256"/>
  732. <Column id="card_rcptdd" type="STRING" size="256"/>
  733. <Column id="card_rcptno" type="STRING" size="256"/>
  734. <Column id="card_rcptseqno" type="STRING" size="256"/>
  735. <Column id="card_seqno" type="STRING" size="256"/>
  736. <Column id="card_instcd" type="STRING" size="256"/>
  737. <Column id="card_rcptstat" type="STRING" size="256"/>
  738. <Column id="card_ordtype" type="STRING" size="256"/>
  739. <Column id="card_keyinptflag" type="STRING" size="256"/>
  740. <Column id="card_cardcmpycd" type="STRING" size="256"/>
  741. <Column id="card_cardno" type="STRING" size="256"/>
  742. <Column id="card_aprvflag" type="STRING" size="256"/>
  743. <Column id="card_aprvdd" type="STRING" size="256"/>
  744. <Column id="card_aprvtm" type="STRING" size="256"/>
  745. <Column id="card_aprvno" type="STRING" size="256"/>
  746. <Column id="card_vancd" type="STRING" size="256"/>
  747. <Column id="card_allotmm" type="STRING" size="256"/>
  748. <Column id="card_cardamt" type="STRING" size="256"/>
  749. <Column id="card_valiterm" type="STRING" size="256"/>
  750. <Column id="card_rcptexecdd" type="STRING" size="256"/>
  751. <Column id="card_rcpttm" type="STRING" size="256"/>
  752. <Column id="card_rcptrid" type="STRING" size="256"/>
  753. <Column id="card_innrtretyn" type="STRING" size="256"/>
  754. <Column id="card_preamtyn" type="STRING" size="256"/>
  755. <Column id="card_remfact" type="STRING" size="256"/>
  756. <Column id="card_fstrgstrid" type="STRING" size="256"/>
  757. <Column id="card_fstrgstdt" type="STRING" size="256"/>
  758. <Column id="card_lastupdtrid" type="STRING" size="256"/>
  759. <Column id="card_lastupdtdt" type="STRING" size="256"/>
  760. <Column id="card_swipedata" type="STRING" size="256"/>
  761. </ColumnInfo>
  762. <Rows>
  763. <Row>
  764. <Col id="card_pid"/>
  765. <Col id="card_rcptdd"/>
  766. <Col id="card_rcptno"/>
  767. <Col id="card_rcptseqno"/>
  768. <Col id="card_seqno"/>
  769. <Col id="card_instcd"/>
  770. <Col id="card_rcptstat"/>
  771. <Col id="card_ordtype"/>
  772. <Col id="card_keyinptflag"/>
  773. <Col id="card_cardcmpycd"/>
  774. <Col id="card_cardno"/>
  775. <Col id="card_aprvflag"/>
  776. <Col id="card_aprvdd"/>
  777. <Col id="card_aprvtm"/>
  778. <Col id="card_aprvno"/>
  779. <Col id="card_vancd"/>
  780. <Col id="card_allotmm"/>
  781. <Col id="card_cardamt"/>
  782. <Col id="card_valiterm"/>
  783. <Col id="card_rcptexecdd"/>
  784. <Col id="card_rcpttm"/>
  785. <Col id="card_rcptrid"/>
  786. <Col id="card_innrtretyn"/>
  787. <Col id="card_preamtyn"/>
  788. <Col id="card_remfact"/>
  789. <Col id="card_fstrgstrid"/>
  790. <Col id="card_fstrgstdt"/>
  791. <Col id="card_lastupdtrid"/>
  792. <Col id="card_lastupdtdt"/>
  793. <Col id="card_swipedata"/>
  794. </Row>
  795. </Rows>
  796. </Dataset>
  797. <Dataset id="ds_main_h_cvan2_cvan" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  798. <ColumnInfo>
  799. <Column id="cvan_pid" type="STRING" size="256"/>
  800. <Column id="cvan_aprvflag" type="STRING" size="256"/>
  801. <Column id="cvan_aprvdd" type="STRING" size="256"/>
  802. <Column id="cvan_aprvtm" type="STRING" size="256"/>
  803. <Column id="cvan_aprvno" type="STRING" size="256"/>
  804. <Column id="cvan_instcd" type="STRING" size="256"/>
  805. <Column id="cvan_keyinptflag" type="STRING" size="256"/>
  806. <Column id="cvan_cardcmpycd" type="STRING" size="256"/>
  807. <Column id="cvan_cardno" type="STRING" size="256"/>
  808. <Column id="cvan_vancd" type="STRING" size="256"/>
  809. <Column id="cvan_allotmm" type="STRING" size="256"/>
  810. <Column id="cvan_cardamt" type="STRING" size="256"/>
  811. <Column id="cvan_valiterm" type="STRING" size="256"/>
  812. <Column id="cvan_trmnno" type="STRING" size="256"/>
  813. <Column id="cvan_rcptexecdd" type="STRING" size="256"/>
  814. <Column id="cvan_rcpttm" type="STRING" size="256"/>
  815. <Column id="cvan_rcptrid" type="STRING" size="256"/>
  816. <Column id="cvan_remfact" type="STRING" size="256"/>
  817. <Column id="cvan_fstrgstrid" type="STRING" size="256"/>
  818. <Column id="cvan_fstrgstdt" type="STRING" size="256"/>
  819. <Column id="cvan_lastupdtrid" type="STRING" size="256"/>
  820. <Column id="cvan_lastupdtdt" type="STRING" size="256"/>
  821. </ColumnInfo>
  822. <Rows>
  823. <Row>
  824. <Col id="cvan_pid"/>
  825. <Col id="cvan_aprvflag"/>
  826. <Col id="cvan_aprvdd"/>
  827. <Col id="cvan_aprvtm"/>
  828. <Col id="cvan_aprvno"/>
  829. <Col id="cvan_instcd"/>
  830. <Col id="cvan_keyinptflag"/>
  831. <Col id="cvan_cardcmpycd"/>
  832. <Col id="cvan_cardno"/>
  833. <Col id="cvan_vancd"/>
  834. <Col id="cvan_allotmm"/>
  835. <Col id="cvan_cardamt"/>
  836. <Col id="cvan_valiterm"/>
  837. <Col id="cvan_trmnno"/>
  838. <Col id="cvan_rcptexecdd"/>
  839. <Col id="cvan_rcpttm"/>
  840. <Col id="cvan_rcptrid"/>
  841. <Col id="cvan_remfact"/>
  842. <Col id="cvan_fstrgstrid"/>
  843. <Col id="cvan_fstrgstdt"/>
  844. <Col id="cvan_lastupdtrid"/>
  845. <Col id="cvan_lastupdtdt"/>
  846. </Row>
  847. </Rows>
  848. </Dataset>
  849. <Dataset id="ds_main_m_opmi_opmi" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  850. <Dataset id="ds_main_c_otpt_otpt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  851. <Dataset id="ds_main_n_cvan_cvan" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  852. <Dataset id="ds_main_c_cvan_cvan" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  853. <Dataset id="ds_send_data01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  854. <Dataset id="ds_send_data02" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  855. <Dataset id="ds_send_data03" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  856. <Dataset id="ds_send_data04" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  857. <Dataset id="ds_send_data05" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  858. <Dataset id="ds_send_data06" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  859. <Dataset id="ds_send_data07" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  860. <Dataset id="ds_send_data08" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  861. <Dataset id="ds_send_data09" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  862. <Dataset id="ds_send_data10" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  863. <Dataset id="ds_send_data11" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  864. <Dataset id="ds_send_data12" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  865. <Dataset id="ds_send_data13" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  866. <Dataset id="ds_send_sms" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  867. <ColumnInfo>
  868. <Column id="pid" type="STRING" size="256"/>
  869. <Column id="cardamt" type="STRING" size="256"/>
  870. </ColumnInfo>
  871. <Rows>
  872. <Row>
  873. <Col id="pid"/>
  874. <Col id="cardamt"/>
  875. </Row>
  876. </Rows>
  877. </Dataset>
  878. <Dataset id="ds_init_com_init_P0076list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  879. <ColumnInfo>
  880. <Column id="cdid" type="STRING" size="256"/>
  881. <Column id="cdnm" type="STRING" size="256"/>
  882. </ColumnInfo>
  883. <Rows>
  884. <Row/>
  885. </Rows>
  886. </Dataset>
  887. <Dataset id="ds_init_com_init_P0078list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  888. <ColumnInfo>
  889. <Column id="cdid" type="STRING" size="256"/>
  890. <Column id="cdnm" type="STRING" size="256"/>
  891. </ColumnInfo>
  892. <Rows>
  893. <Row/>
  894. </Rows>
  895. </Dataset>
  896. <Dataset id="ds_init_com_init_P0390list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  897. <ColumnInfo>
  898. <Column id="cdid" type="STRING" size="256"/>
  899. <Column id="cdnm" type="STRING" size="256"/>
  900. </ColumnInfo>
  901. <Rows>
  902. <Row/>
  903. </Rows>
  904. </Dataset>
  905. <Dataset id="ds_init_com_init_P0049list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  906. <ColumnInfo>
  907. <Column id="cdid" type="STRING" size="256"/>
  908. <Column id="cdnm" type="STRING" size="256"/>
  909. </ColumnInfo>
  910. <Rows>
  911. <Row/>
  912. </Rows>
  913. </Dataset>
  914. <Dataset id="ds_init_com_init_P0001list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  915. <ColumnInfo>
  916. <Column id="cdid" type="STRING" size="256"/>
  917. <Column id="cdnm" type="STRING" size="256"/>
  918. </ColumnInfo>
  919. <Rows>
  920. <Row/>
  921. </Rows>
  922. </Dataset>
  923. <Dataset id="ds_init_pam_init_P0022list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  924. <Dataset id="ds_init_pam_init_P0032list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  925. <Dataset id="ds_hidden_session" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  926. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  927. <ColumnInfo>
  928. <Column id="smsflag" type="STRING" size="256"/>
  929. <Column id="cardaprvresult" type="STRING" size="256"/>
  930. </ColumnInfo>
  931. <Rows>
  932. <Row/>
  933. </Rows>
  934. </Dataset>
  935. <Dataset id="ds_hidden_smsinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  936. <ColumnInfo>
  937. <Column id="recvrnm" type="STRING" size="256"/>
  938. <Column id="recvrtelno" type="STRING" size="256"/>
  939. <Column id="replytelno" type="STRING" size="256"/>
  940. <Column id="bizabbr" type="STRING" size="256"/>
  941. <Column id="msgfrmtid" type="STRING" size="256"/>
  942. <Column id="msgparam" type="STRING" size="256"/>
  943. <Column id="msgfrmtcnts" type="STRING" size="256"/>
  944. <Column id="rsrvyn" type="STRING" size="256"/>
  945. <Column id="emergencyyn" type="STRING" size="256"/>
  946. <Column id="infoStr" type="STRING" size="256"/>
  947. </ColumnInfo>
  948. <Rows>
  949. <Row>
  950. <Col id="recvrnm"/>
  951. <Col id="recvrtelno"/>
  952. <Col id="replytelno"/>
  953. <Col id="bizabbr"/>
  954. <Col id="msgfrmtid"/>
  955. <Col id="msgparam"/>
  956. <Col id="msgfrmtcnts"/>
  957. <Col id="rsrvyn"/>
  958. <Col id="emergencyyn"/>
  959. <Col id="infoStr"/>
  960. </Row>
  961. </Rows>
  962. </Dataset>
  963. <Dataset id="ds_init_cvan_cardtype" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  964. <ColumnInfo>
  965. <Column id="label" type="STRING" size="256"/>
  966. <Column id="value" type="STRING" size="256"/>
  967. </ColumnInfo>
  968. <Rows>
  969. <Row>
  970. <Col id="label">신용</Col>
  971. <Col id="value">1</Col>
  972. </Row>
  973. <Row>
  974. <Col id="label">체크</Col>
  975. <Col id="value">2</Col>
  976. </Row>
  977. <Row>
  978. <Col id="label">해외</Col>
  979. <Col id="value">3</Col>
  980. </Row>
  981. <Row>
  982. <Col id="label">기프트</Col>
  983. <Col id="value">4</Col>
  984. </Row>
  985. </Rows>
  986. </Dataset>
  987. <Dataset id="ds_init_cvan_etcflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  988. <ColumnInfo>
  989. <Column id="label" type="STRING" size="256"/>
  990. <Column id="value" type="STRING" size="256"/>
  991. </ColumnInfo>
  992. <Rows>
  993. <Row>
  994. <Col id="label">산전지원금</Col>
  995. <Col id="value">Y</Col>
  996. </Row>
  997. </Rows>
  998. </Dataset>
  999. <Dataset id="ds_main_h_card2_card" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1000. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1001. <Dataset id="ds_send_data00" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1002. <Dataset id="ds_hidden_rcv" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1003. <Dataset id="ds_send_data14" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1004. <Dataset id="ds_send_data15" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1005. <Dataset id="ds_send_data16" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1006. <Dataset id="ds_send_data17" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1007. <Dataset id="ds_send_data18" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1008. <Dataset id="ds_send_data19" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1009. <Dataset id="ds_send_data20" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1010. <Dataset id="ds_send_data21" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1011. <Dataset id="ds_send_data22" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1012. <Dataset id="ds_send_data23" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1013. <Dataset id="ds_send_data24" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1014. <Dataset id="ds_send_data25" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1015. <Dataset id="ds_send_data26" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1016. <Dataset id="ds_send_data27" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1017. <Dataset id="ds_send_data28" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1018. <Dataset id="ds_send_data29" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1019. <Dataset id="ds_send_data30" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1020. <Dataset id="ds_send_data31" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1021. <Dataset id="ds_send_data32" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1022. <Dataset id="ds_send_data33" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1023. <Dataset id="ds_send_data34" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1024. <Dataset id="ds_send_data35" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1025. <Dataset id="ds_send_data36" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1026. <Dataset id="ds_main_b_card_card" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1027. <Dataset id="ds_temp_receipt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1028. <Dataset id="ds_temp_SPPAO01900" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1029. <Dataset id="ds_tmp_appvanif" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1030. <ColumnInfo>
  1031. <Column id="vangb" type="STRING" size="256"/>
  1032. <Column id="ordergb" type="STRING" size="256"/>
  1033. <Column id="mdate" type="STRING" size="256"/>
  1034. <Column id="seqno" type="STRING" size="256"/>
  1035. <Column id="pano" type="STRING" size="256"/>
  1036. <Column id="clientid" type="STRING" size="256"/>
  1037. <Column id="replystat" type="STRING" size="256"/>
  1038. <Column id="approvaldate" type="STRING" size="256"/>
  1039. <Column id="approvaltime" type="STRING" size="256"/>
  1040. <Column id="approvalno" type="STRING" size="256"/>
  1041. <Column id="bankid" type="STRING" size="256"/>
  1042. <Column id="bankseqno" type="STRING" size="256"/>
  1043. <Column id="bankname" type="STRING" size="256"/>
  1044. <Column id="memberno" type="STRING" size="256"/>
  1045. <Column id="publishbank" type="STRING" size="256"/>
  1046. <Column id="vanseqno" type="STRING" size="256"/>
  1047. <Column id="cardname" type="STRING" size="256"/>
  1048. </ColumnInfo>
  1049. <Rows>
  1050. <Row>
  1051. <Col id="vangb"/>
  1052. <Col id="ordergb"/>
  1053. <Col id="mdate"/>
  1054. <Col id="seqno"/>
  1055. <Col id="pano"/>
  1056. <Col id="clientid"/>
  1057. <Col id="replystat"/>
  1058. <Col id="approvaldate"/>
  1059. <Col id="approvaltime"/>
  1060. <Col id="approvalno"/>
  1061. <Col id="bankid"/>
  1062. <Col id="bankseqno"/>
  1063. <Col id="bankname"/>
  1064. <Col id="memberno"/>
  1065. <Col id="publishbank"/>
  1066. <Col id="vanseqno"/>
  1067. <Col id="cardname"/>
  1068. </Row>
  1069. </Rows>
  1070. </Dataset>
  1071. <Dataset id="ds_tmp_h_passyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1072. <Dataset id="ds_temp_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1073. <Dataset id="ds_init_pam_init_P6601list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1074. <Dataset id="ds_init_pam_init_P6602list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1075. <Dataset id="ds_init_pam_init_P6603list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1076. <Dataset id="ds_hidden_keyinptflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1077. <ColumnInfo>
  1078. <Column id="cd" type="STRING" size="256"/>
  1079. <Column id="nm" type="STRING" size="256"/>
  1080. </ColumnInfo>
  1081. <Rows>
  1082. <Row>
  1083. <Col id="cd">S</Col>
  1084. <Col id="nm">Swipe</Col>
  1085. </Row>
  1086. <Row>
  1087. <Col id="cd">K</Col>
  1088. <Col id="nm">Key-in</Col>
  1089. </Row>
  1090. <Row>
  1091. <Col id="cd">E</Col>
  1092. <Col id="nm">비대면</Col>
  1093. </Row>
  1094. </Rows>
  1095. </Dataset>
  1096. <Dataset id="ds_ezpass_info" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1097. <ColumnInfo>
  1098. <Column id="allotmm" type="STRING" size="256"/>
  1099. <Column id="virtualcardno" type="STRING" size="256"/>
  1100. </ColumnInfo>
  1101. </Dataset>
  1102. <Dataset id="ds_send_ezpass" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1103. <ColumnInfo>
  1104. <Column id="unco_pid" type="STRING" size="256"/>
  1105. <Column id="unco_uncoamt" type="STRING" size="256"/>
  1106. </ColumnInfo>
  1107. <Rows>
  1108. <Row/>
  1109. </Rows>
  1110. </Dataset>
  1111. </Objects>
  1112. <Bind>
  1113. <BindItem id="item16" compid="group3.group2.tar_sms" propid="value" datasetid="ds_hidden_smsinfo" columnid="infoStr"/>
  1114. <BindItem id="item0" compid="group3.group1.rdo_keyinptflag" propid="value" datasetid="ds_main_card2" columnid="card_keyinptflag"/>
  1115. <BindItem id="item2" compid="group3.group1.chk_onlycard" propid="value" datasetid="ds_main_iptflag" columnid="cardaprv"/>
  1116. <BindItem id="item3" compid="group3.group2.input1" propid="value" datasetid="ds_main_card" columnid="swipedata"/>
  1117. <BindItem id="item4" compid="group3.group2.checkbox4" propid="value" datasetid="ds_hidden" columnid="smsflag"/>
  1118. <BindItem id="item5" compid="group3.group2.bl_receiptyn" propid="value" datasetid="ds_main_iptflag" columnid="receiptyn"/>
  1119. <BindItem id="item6" compid="group3.group2.ipt_cardno" propid="value" datasetid="ds_main_card2" columnid="card_cardno"/>
  1120. <BindItem id="item7" compid="group3.group2.combo1" propid="value" datasetid="ds_main_card2" columnid="card_cardcmpycd"/>
  1121. <BindItem id="item8" compid="group3.group2.ipt_valiterm" propid="value" datasetid="ds_main_card2" columnid="card_valiterm"/>
  1122. <BindItem id="item9" compid="group3.group2.ipt_cardamt" propid="value" datasetid="ds_main_card2" columnid="card_cardamt"/>
  1123. <BindItem id="item10" compid="group3.group2.input5" propid="value" datasetid="ds_main_card" columnid="subtotalamt"/>
  1124. <BindItem id="item11" compid="group3.group2.cmb_allotmm" propid="value" datasetid="ds_main_card2" columnid="card_allotmm"/>
  1125. <BindItem id="item12" compid="group3.group2.ipt_allotmm" propid="value" datasetid="ds_main_card2" columnid="card_allotmm"/>
  1126. <BindItem id="item13" compid="group3.group2.input2" propid="value" datasetid="ds_main_card2" columnid="card_aprvdd"/>
  1127. <BindItem id="item14" compid="group3.group2.input3" propid="value" datasetid="ds_main_card2" columnid="card_aprvtm"/>
  1128. <BindItem id="item15" compid="group3.group2.input4" propid="value" datasetid="ds_main_card2" columnid="card_aprvno"/>
  1129. <BindItem id="item17" compid="group3.swt_cardlist.case_cvan.input6" propid="value" datasetid="ds_main_iptflag" columnid="aprvdd"/>
  1130. <BindItem id="item18" compid="group3.swt_cardlist.case_cvan.radio1" propid="value" datasetid="ds_main_iptflag" columnid="ioflag"/>
  1131. <BindItem id="item19" compid="group3.swt_cardlist.case_cvan.combo2" propid="value" datasetid="ds_main_iptflag" columnid="aprvsrchflag"/>
  1132. <BindItem id="item20" compid="group3.swt_cardlist.case_cvan.checkbox2" propid="value" datasetid="ds_main_iptflag" columnid="cvancncl"/>
  1133. <BindItem id="item21" compid="group3.swt_cardlist.case_cvan.checkbox1" propid="value" datasetid="ds_main_iptflag" columnid="cardedit"/>
  1134. <BindItem id="item22" compid="group3.opt_rcptamt" propid="value" datasetid="ds_main_card" columnid="totrcptamt"/>
  1135. <BindItem id="item23" compid="group3.opt_cardamt" propid="value" datasetid="ds_main_card" columnid="totcardamt"/>
  1136. <BindItem id="item24" compid="group4.input7" propid="value" datasetid="ds_hidden" columnid="cardaprvresult"/>
  1137. <BindItem id="item25" compid="group3.group2.input00" propid="value" datasetid="ds_main_card2" columnid="card_aprvunino"/>
  1138. <BindItem id="item26" compid="group3.group1.cmb_aprv_vanflag" propid="value" datasetid="ds_main_iptflag" columnid="vanflag"/>
  1139. <BindItem id="item1" compid="group3.group1.cmb_cncl_vanflag" propid="value" datasetid="ds_main_iptflag" columnid="cnclvanflag"/>
  1140. <BindItem id="item27" compid="group3.group2.cmb_cardtype" propid="value" datasetid="ds_main_card2" columnid="card_cardtype"/>
  1141. </Bind>
  1142. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  1143. * System Name :
  1144. * Job Name :
  1145. * Creator :
  1146. * Make Date : 2016-05-24
  1147. * Description :
  1148. *---------------------------------------------------------------------------------------
  1149. * Modify Date Modifier Modify Description
  1150. *---------------------------------------------------------------------------------------
  1151. * 2016-05-24 Live Converter TF->XP
  1152. *
  1153. *---------------------------------------------------------------------------------------
  1154. ****************************************************************************************/
  1155. include "com_commonxp::comm_main.xjs";
  1156. include "pam_opatmngtxp::PMOCOM.xjs";
  1157. include "pam_pamcomnxp::PAM.xjs";
  1158. include "pam_pamcomnxp::PAM001.xjs";
  1159. include "com_commodulexp::SSZFM00701.xjs"; //lf_setTabPageVisble 을 위해
  1160. var gMulticnt, gMultiSend, gRcptdd, gRcptno, gRcptseqno, gTotrcptamt,
  1161. strSend, strRcv, gPid, gOrddd, gCretno, strRcvVan, gOrdtype, gOrddeptcd,
  1162. gCardno, gValiterm, gAllotmm, gKeyInptFlag, gSwipeData, gFLAG, gCOTPT, gRtnType, gPregDmndYN, gMyCard,
  1163. gPreCashAmt, gPreCardAmt, gRtnType, gPregDmndYN, gRtn;
  1164. var ExistCardCount;
  1165. var gAutoPrintPid, gAutoPrintCardno, gAutoPrintAprvno, gAutoPrintOrdtype; // 2009.07.12 - 승인취소 시 카드전표 자동출력을 위한 키값
  1166. // Opener에게 보내기 위한 파라미터 객체
  1167. var retValPam = new Object();
  1168. var m_opener;
  1169. function fForceCardAprv(flag) {
  1170. // 카드번호,카드회사,유효기간,결제금액,할부개월
  1171. var cardno = ds_main_card2.getColumn(0, "card_cardno");
  1172. if (utlf_isNull(cardno) || cardno == " " || cardno == "-") {
  1173. sysf_messageBox("카드번호가 미입력되었습니다!", "E999", "");
  1174. return false;
  1175. }
  1176. var card_cardcmpycd = ds_main_card2.getColumn(0, "card_cardcmpycd");
  1177. if (utlf_isNull(card_cardcmpycd) || card_cardcmpycd == " " || card_cardcmpycd == "-") {
  1178. sysf_messageBox("카드회사가 미입력되었습니다!", "E999", "");
  1179. return false;
  1180. }
  1181. var card_valiterm = ds_main_card2.getColumn(0, "card_valiterm");
  1182. if (utlf_isNull(card_valiterm) || card_valiterm == " " || card_valiterm == "-") {
  1183. sysf_messageBox("유효기간이 미입력되었습니다!","E999","");
  1184. return false;
  1185. }
  1186. var card_cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  1187. if (utlf_isNull(card_cardamt) || card_cardamt == " " || card_cardamt == "-") {
  1188. sysf_messageBox("카드금액이 미입력되었습니다!","E999","");
  1189. return false;
  1190. }
  1191. var card_allotmm = ds_main_card2.getColumn(0, "card_allotmm");
  1192. if (utlf_isNull(card_allotmm) || card_allotmm == " " || card_allotmm == "-") {
  1193. sysf_messageBox("할부개월이 미입력되었습니다!","E999","");
  1194. ds_main_card2.setColumn( 0, "card_allotmm", '00')
  1195. return false;
  1196. }
  1197. var card_aprvdd = ds_main_card2.getColumn(0, "card_aprvdd");
  1198. if (utlf_isNull(card_aprvdd) || card_aprvdd == " " || card_aprvdd == "-") {
  1199. sysf_messageBox("승인일자가 미입력되었습니다!","E999","");
  1200. ds_main_card2.setColumn( 0, "card_aprvdd", '')
  1201. return false;
  1202. }
  1203. var card_aprvtm = ds_main_card2.getColumn(0, "card_aprvtm");
  1204. if (utlf_isNull(card_aprvtm) || card_aprvtm == " " || card_aprvtm == "-") {
  1205. sysf_messageBox("승인시간이 미입력되었습니다!","E999","");
  1206. ds_main_card2.setColumn( 0, "card_aprvtm", '')
  1207. return false;
  1208. }
  1209. var card_aprvno = ds_main_card2.getColumn(0, "card_aprvno");
  1210. if (utlf_isNull(card_aprvno) || card_aprvno == " " || card_aprvno == "-") {
  1211. sysf_messageBox("승인번호가 미입력되었습니다!","E999","");
  1212. ds_main_card2.setColumn( 0, "card_aprvno", '')
  1213. return false;
  1214. }
  1215. //2018/08/03 이정택 제어추가
  1216. var card_cardtype = ds_main_card2.getColumn(0, "card_cardtype");
  1217. if (utlf_isNull(card_cardtype) || card_cardtype == " " || card_cardtype == "-") {
  1218. sysf_messageBox("카드구분이 미입력되었습니다!","E999","");
  1219. ds_main_card2.setColumn( 0, "card_cardtype", '')
  1220. return false;
  1221. }
  1222. var card_aprvunino = ds_main_card2.getColumn(0, "card_aprvunino");
  1223. if (utlf_isNull(card_aprvunino) || card_aprvunino == " " || card_aprvunino == "-") {
  1224. sysf_messageBox("거래일련번호가 미입력되었습니다!","E999","");
  1225. ds_main_card2.setColumn( 0, "card_aprvunino", '')
  1226. return false;
  1227. }
  1228. //2018/08/03 이정택 제어추가
  1229. var card_keyinptflag = ds_main_card2.getColumn(0, "card_keyinptflag");
  1230. if (utlf_isNull(card_keyinptflag) || card_keyinptflag == " " || card_keyinptflag == "-") {
  1231. ds_main_card2.setColumn( 0, "card_keyinptflag","K");
  1232. }
  1233. if (flag == "I") {
  1234. //카드결제액 체크
  1235. var recardaprv = ds_main_iptflag.getColumn(0, "recardaprv");
  1236. var totrcptamt = ds_main_card.getColumn(0, "totrcptamt");
  1237. var totcardamt = ds_main_card.getColumn(0, "totcardamt");
  1238. var card_cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  1239. if (recardaprv != "Y") {
  1240. if (parseInt(ds_main_card2.getColumn(0, "card_cardamt")) == 0) {
  1241. sysf_messageBox("결제금액이 0원입니다. 확인하시고 다시 카드승인하세요!", "E999", "");
  1242. return false;
  1243. }
  1244. } else if (recardaprv == "Y") {
  1245. var cardAmt = 0;
  1246. var cnt = ds_main_c_card_card.rowcount;
  1247. for (var i = 0; i < cnt; i++) {
  1248. cardAmt += parseInt(ds_main_c_card_card.getColumn(i, "card_cardamt"));
  1249. }
  1250. if (cardAmt != card_cardamt) {
  1251. sysf_messageBox("멀티카드수납내역을 변경_취소하기 위한 재승인인 경우에는 재승인할 카드승인금액 합과 결제 금액이 같아야 합니다.", "E999", "");
  1252. return false;
  1253. }
  1254. }
  1255. }
  1256. ds_main_n_cvan_cvan.clear();
  1257. if (flag == "I") {
  1258. dsf_makeValue(ds_main_n_cvan_cvan, "aprvflag", "string", "12");
  1259. dsf_makeValue(ds_main_n_cvan_cvan, "remfact", "string", "강제카드결제(승인)");
  1260. ds_main_card2.setColumn(0, "card_aprvflag", "12");
  1261. ds_main_card2.setColumn(0, "card_rcptstat", "Y");
  1262. ds_main_card2.setColumn(0, "card_remfact", "강제카드결제(승인)");
  1263. } else if (flag == "D") {
  1264. dsf_makeValue(ds_main_n_cvan_cvan, "aprvflag", "string", "22");
  1265. dsf_makeValue(ds_main_n_cvan_cvan, "remfact", "string", "강제카드결제(취소)");
  1266. ds_main_card2.setColumn(0, "card_aprvflag", "22");
  1267. ds_main_card2.setColumn(0, "card_rcptstat", "D");
  1268. ds_main_card2.setColumn(0, "card_remfact", "강제카드결제(취소)");
  1269. }
  1270. dsf_makeValue(ds_main_n_cvan_cvan, "pid", "string", gPid);
  1271. dsf_makeValue(ds_main_n_cvan_cvan, "aprvdd", "string", ds_main_card2.getColumn(0, "card_aprvdd"));
  1272. dsf_makeValue(ds_main_n_cvan_cvan, "aprvtm", "string", ds_main_card2.getColumn(0, "card_aprvtm"));
  1273. dsf_makeValue(ds_main_n_cvan_cvan, "aprvno", "string", ds_main_card2.getColumn(0, "card_aprvno"));
  1274. dsf_makeValue(ds_main_n_cvan_cvan, "ordtype", "string", gOrdtype);
  1275. dsf_makeValue(ds_main_n_cvan_cvan, "instcd", "string", sysf_getUserInfo("dutplceinstcd"));
  1276. dsf_makeValue(ds_main_n_cvan_cvan, "keyinptflag", "string", ds_main_card2.getColumn(0, "card_keyinptflag"));
  1277. dsf_makeValue(ds_main_n_cvan_cvan, "cardcmpycd", "string", ds_main_card2.getColumn(0, "card_cardcmpycd"));
  1278. dsf_makeValue(ds_main_n_cvan_cvan, "cardno", "string", ds_main_card2.getColumn(0, "card_cardno"));
  1279. //dsf_makeValue(ds_main_n_cvan_cvan, "vancd", "string", "-");
  1280. dsf_makeValue(ds_main_n_cvan_cvan, "vancd", "string", ds_init_pam_init_P0032list.lookup("cdid", "200", "remark"));
  1281. dsf_makeValue(ds_main_n_cvan_cvan, "allotmm", "string", ds_main_card2.getColumn(0, "card_allotmm"));
  1282. dsf_makeValue(ds_main_n_cvan_cvan, "cardamt", "string", ds_main_card2.getColumn(0, "card_cardamt"));
  1283. dsf_makeValue(ds_main_n_cvan_cvan, "valiterm", "string", ds_main_card2.getColumn(0, "card_valiterm"));
  1284. dsf_makeValue(ds_main_n_cvan_cvan, "trmnno", "string", "");
  1285. dsf_makeValue(ds_main_n_cvan_cvan, "rcptexecdd", "string", "-");
  1286. dsf_makeValue(ds_main_n_cvan_cvan, "rcpttm", "string", "-");
  1287. dsf_makeValue(ds_main_n_cvan_cvan, "rcptrid", "string", "");
  1288. dsf_makeValue(ds_main_n_cvan_cvan, "fstrgstrid", "string", "");
  1289. dsf_makeValue(ds_main_n_cvan_cvan, "fstrgstdt", "string", "");
  1290. dsf_makeValue(ds_main_n_cvan_cvan, "lastupdtrid", "string", "");
  1291. dsf_makeValue(ds_main_n_cvan_cvan, "lastupdtdt", "string", "");
  1292. dsf_makeValue(ds_main_n_cvan_cvan, "elctsignkey", "string", "");
  1293. dsf_makeValue(ds_main_n_cvan_cvan, "elctsigncnts", "string", "");
  1294. dsf_makeValue(ds_main_n_cvan_cvan, "carddepoamt", "string", "0");
  1295. dsf_makeValue(ds_main_n_cvan_cvan, "coms", "string", "0");
  1296. dsf_makeValue(ds_main_n_cvan_cvan, "etcflag", "string", gPregDmndYN);
  1297. dsf_makeValue(ds_main_n_cvan_cvan, "aprvunino", "string", ds_main_card2.getColumn(0, "card_aprvunino"));
  1298. dsf_makeValue(ds_main_n_cvan_cvan, "cardtype", "string", ds_main_card2.getColumn(0, "card_cardtype"));
  1299. ds_main_card2.setColumn(0, "card_ordtype", gOrdtype);
  1300. ds_main_card2.setColumn(0, "card_vancd", "");
  1301. var oParam = {};
  1302. oParam.id = "TXPAO00455";
  1303. oParam.service = "pamcomnapp.PamComn";
  1304. oParam.method = "reqInsCVan";
  1305. oParam.inds = "req=ds_main_n_cvan_cvan";
  1306. oParam.outds = "ds_main_h_cvan_cvan=h_cvan";
  1307. oParam.async = false;
  1308. oParam.callback = "cf_TXPAO00455";
  1309. tranf_submit(oParam);
  1310. if (arErrorCode.pop("TXPAO00455") < 0) {
  1311. sysf_messageBox("VAN정보를 정상적으로 저장하지 못했습니다.", "E999","");
  1312. return false;
  1313. } else {
  1314. var aprvCardAmt = ds_main_card.getColumn(0, "totcardamt");
  1315. var newCardAmt = ds_main_card2.getColumn(0, "card_cardamt");
  1316. if (flag == "D") {
  1317. newCardAmt = parseInt(newCardAmt) * -1;
  1318. }
  1319. if (utlf_isNull(aprvCardAmt) || isNaN(aprvCardAmt)) {
  1320. aprvCardAmt = 0;
  1321. }
  1322. ds_main_card.setColumn(0, "totcardamt", parseInt(aprvCardAmt) + parseInt(newCardAmt));
  1323. ds_send.clear();
  1324. dsf_createDsRow("ds_send", [{col:"cvan_pid", type:"STRING", size:256, val: gPid}
  1325. , {col:"cvan_aprvdd", type:"STRING", size:256, val: ""}
  1326. , {col:"cvan_aprvsrchflag", type:"STRING", size:256, val: "-"}
  1327. , {col:"cvan_ioflag", type:"STRING", size:256, val: ds_main_iptflag.getColumn(0, "ioflag")}
  1328. , {col:"cvan_pregdmndyn", type:"STRING", size:256, val: gPregDmndYN}]);
  1329. var oParam = {};
  1330. oParam.id = "TRPAO00453";
  1331. oParam.service = "pamcomnapp.PamComn";
  1332. oParam.method = "reqGetCardVanNew";
  1333. oParam.inds = "req=ds_send";
  1334. oParam.outds = "ds_main_h_cvan_cvan=h_cvan";
  1335. oParam.async = false;
  1336. oParam.callback = "cf_TRPAO00453";
  1337. tranf_submit(oParam);
  1338. if (arErrorCode.pop("TRPAO00453") < 0) {
  1339. sysf_messageBox("VAN정보를 가져오지 못했습니다. 강제승인한 결과를 확인하실려면 [승인내역조회] 버튼을 눌러 VAN정보를 재조회하세요", "E999","");
  1340. return false;
  1341. } else {
  1342. var cnt = ds_main_h_cvan_cvan.rowcount;
  1343. var aprvflag = "";
  1344. var check = true;
  1345. if (flag == "I") {
  1346. aprvflag = "12";
  1347. } else {
  1348. aprvflag = "22";
  1349. }
  1350. for (var i = 0; i < cnt; i ++) {
  1351. if (ds_main_h_cvan_cvan.getColumn(i, "cvan_aprvno") == ds_main_card2.getColumn(0, "card_aprvno") && ds_main_h_cvan_cvan.getColumn(i, "cvan_aprvflag") == aprvflag) {
  1352. ds_main_h_cvan_cvan.rowposition = i;
  1353. check = true;
  1354. ds_main_iptflag.setColumn(0, "cardedit", "Y");
  1355. group3_swt_cardlist_case_cvan_checkbox1_onchanged(null, null);
  1356. break;
  1357. }
  1358. check = false;
  1359. }
  1360. if (check) {
  1361. // 카드내역 생성
  1362. if (fMakeCardAprvSpec()) {
  1363. return true;
  1364. } else {
  1365. return false;
  1366. }
  1367. } else {
  1368. //VAN정보 탭으로 이동
  1369. group3.swt_cardlist.tabindex = 0;
  1370. group3.group2.ipt_cardno.setFocus();
  1371. return false;
  1372. }
  1373. }
  1374. }
  1375. }
  1376. function cf_TXPAO00455(sSvcId, nErrorCode, sErrorMsg) {
  1377. arErrorCode.push(sSvcId, nErrorCode);
  1378. }
  1379. function cf_TRPAO00453(sSvcId, nErrorCode, sErrorMsg) {
  1380. arErrorCode.push(sSvcId, nErrorCode);
  1381. }
  1382. function fInit() {
  1383. var arrParam1 = [{dsNm: "ds_init_com_init_P0076list", cdGrpId: "P0076"}
  1384. , {dsNm: "ds_init_com_init_P0078list", cdGrpId: "P0078"}
  1385. , {dsNm: "ds_init_com_init_P0390list", cdGrpId: "P0390"}
  1386. , {dsNm: "ds_init_com_init_P0049list", cdGrpId: "P0049"}
  1387. , {dsNm: "ds_init_com_init_P0001list", cdGrpId: "P0001"}];
  1388. appf_getCodeList(arrParam1);
  1389. // 승인취소 시 전표자동출력여부 (cdid : 300)
  1390. var arrParam2 = [{dsNm: "ds_init_pam_init_P0022list", cdGrpId: "P0022"}
  1391. ,{dsNm: "ds_init_pam_init_P0032list", cdGrpId: "P0032"}
  1392. ,{dsNm: "ds_init_pam_init_P6601list", cdGrpId: "P6601"} // 로직밴
  1393. ,{dsNm: "ds_init_pam_init_P6602list", cdGrpId: "P6602"} // 승인밴
  1394. ,{dsNm: "ds_init_pam_init_P6603list", cdGrpId: "P6603"}]; // IC결제시범사용자
  1395. pamfGetCodeList(arrParam2, false);
  1396. ds_main_iptflag.clearData(); ds_main_iptflag.addRow();
  1397. ds_main_card.clearData(); ds_main_card.addRow();
  1398. ds_main_card2.clearData(); ds_main_card2.addRow();
  1399. ds_main_h_cvan_cvan.clearData();
  1400. ds_main_h_cvan2_cvan.clearData();
  1401. ds_main_h_card_card.clearData();
  1402. ds_main_c_card_card.clearData();
  1403. ds_main_c_otpt_otpt.clearData();
  1404. ds_main_m_opmi_opmi.clearData();
  1405. ds_main_iptflag.setColumn(0, "cardedit", "");
  1406. group3_swt_cardlist_case_cvan_checkbox1_onchanged(null, null);
  1407. ds_main_card.setColumn(0, "totrcptamt","0");
  1408. ds_main_card.setColumn(0, "totcardamt","0");
  1409. ds_main_card.setColumn(0, "subtotalamt","0");
  1410. ds_main_card2.setColumn(0, "card_keyinptflag", "S"); //swipe
  1411. ds_main_card2.setColumn(0, "card_cardamt", "0");
  1412. ds_main_card2.setColumn(0, "card_valiterm", "");
  1413. ds_main_card2.setColumn(0, "card_cardcmpycd", "");
  1414. //2018/05/11 이정택 추가
  1415. ds_main_card2.setColumn(0, "card_aprvunino", "");
  1416. //2018/05/11 이정택 추가
  1417. //카드내역 탭을 기본으로 선택
  1418. group3.swt_cardlist.tabindex = 0;
  1419. group3.group2.ipt_cardno.setFocus();
  1420. group3.group2.btn_makecardaprv.visible = false;
  1421. group3.group2.btn_cardaprv.visible = true;
  1422. group3.group2.btn_cardcncl.visible = true;
  1423. group3.swt_cardlist.case_cvan.checkbox1.visible = false;
  1424. // KOVAN - KOCES 이관작업 관련 : PAM로긴한 경우에만 보임
  1425. if (sysf_getUserInfo("userid") == "PAM") {
  1426. //group3.group1.rdo_valflag.visible = true;
  1427. group3.group1.cap_aprv_vanflag.visible = true;
  1428. group3.group1.cmb_aprv_vanflag.visible = true;
  1429. group3.group1.cap_cncl_vanflag.visible = true;
  1430. group3.group1.cmb_cncl_vanflag.visible = true;
  1431. }
  1432. // ICPos 적용 관연 vanflag는 필수처리
  1433. ds_main_iptflag.setColumn(0, "vanflag", ds_init_pam_init_P0032list.lookup("cdid", "200", "cdnm"));
  1434. // 자동취소시 밴플래그 세팅처리
  1435. ds_main_iptflag.setColumn(0, "cnclvanflag", ds_init_pam_init_P6602list.lookup("remark", ds_init_pam_init_P0032list.lookup("cdid", "200", "remark"), "cdnm"));
  1436. // IC 시범결제를 위한 소스 추가(2018/06/04 이정택)
  1437. if(ds_init_pam_init_P6603list.findRow("cdid", sysf_getUserInfo("userid"))!='-1'){
  1438. ds_main_iptflag.setColumn(0, "vanflag", ds_init_pam_init_P0032list.lookup("cdid", "400", "cdnm"));
  1439. ds_main_iptflag.setColumn(0, "cnclvanflag", ds_init_pam_init_P6602list.lookup("remark", ds_init_pam_init_P0032list.lookup("cdid", "200", "remark"), "cdnm"));
  1440. }
  1441. // IC 시범결제를 위한 소스 추가(2018/06/04 이정택)
  1442. gFLAG = m_opener.frmf_getParameter("SPPAO00400_FLAG");
  1443. // ds_main_iptflag.setColumn(0, "vanflag", ds_init_pam_init_P0032list.lookup("cdid", "200", "remark"));
  1444. gFlag = objPam.flag;
  1445. gMulticnt = objPam.multiCnt; // 외래등록의 멀티접수인 경우만 해당멀티건수 나머지는 default '0'으로 세팅
  1446. gMultiSend = objPam.dsMultiSend; // 외래등록 멀티접수인 경우만 각각의 본인부담액을 보낸다. 나머지는 '-'
  1447. gPid = utlf_trim(objPam.pid); // 등록번호
  1448. gOrddd = objPam.orddd; // 진료일자
  1449. gCretno = objPam.cretNo; // 진료생성번호
  1450. gOrdtype = objPam.ordType; // 진료구분
  1451. gFromDD = objPam.fromdd; // 시작일자
  1452. gToDD = objPam.todd; // 종료일자
  1453. gOrddeptcd = objPam.ordDeptCd; // 진료과
  1454. gCardno = utlf_trim(objPam.cardNo); // 카드번호
  1455. gValiterm = utlf_trim(objPam.valiterm); // 유효기간
  1456. gAllotmm = utlf_trim(objPam.allotmm); // 할부
  1457. gKeyInptFlag= utlf_trim(objPam.keyInptFlag);// 키입력구분
  1458. gSwipeData = utlf_trim(objPam.swipeData); // 단말기로부터 넘어온 카드정보
  1459. gTotrcptamt = utlf_trim(objPam.totRcptAmt); // 수납대상금액
  1460. gRcptdd = objPam.rcptdd; // 영수일자
  1461. gRcptno = objPam.rcptNo; // 영수번호
  1462. gRcptseqno = objPam.rcptSeqNo; // 영수일련번호
  1463. gCOTPT = objPam.COTPT; // 멀티접수 개별 변경/취소 위해 필요 - 외래등록/수납
  1464. gRtnType = objPam.rtnType; // 리턴시 노드 전체 리턴 OR 일부만 리턴여부판별
  1465. gPregDmndYN = objPam.pregDmndYN; // 산전진료비지원 카드승인여부
  1466. gRtn = objPam.rtn;
  1467. strSend = objPam.dsStrSend; // Opener가 가지고 있던 카드내역
  1468. strRcv = objPam.dsStrRcv; // Opener에 보내기 위한 카드내역(Opener에서 카드내역을 받기 위한 데이터셋)
  1469. strRcvVan = objPam.dsStrRcvVan;
  1470. gPreCashAmt = objPam.preCashAmt; //기현금액
  1471. gPreCardAmt = objPam.preCardAmt; //기현금액
  1472. if (gPregDmndYN == "Y") {
  1473. //산전지원금 승인일때
  1474. group3.swt_cardlist.tabindex = 0;
  1475. lf_setTabPageVisble(group3.swt_cardlist, "case_card", false);
  1476. group3.swt_cardlist.case_cvan.checkbox1.visible = false;
  1477. group3.caption15.visible = true;
  1478. group3.group2.ipt_cardno.setFocus();
  1479. } else {
  1480. group3.caption15.visible = false;
  1481. gPregDmndYN = "-";
  1482. }
  1483. if (utlf_isNull(gPid) || gPid == " ") {
  1484. sysf_messageBox("등록번호가 정확히 전달되지 않았습니다. 환자정보를 다시 조회하신 후에 계속 진행하세요!","E999","");
  1485. return false;
  1486. }
  1487. if (isNaN(gTotrcptamt)) {
  1488. gTotrcptamt = 0;
  1489. ds_main_card.setColumn(0, "totrcptamt", gTotrcptamt);
  1490. fCardamtCalc();
  1491. } else {
  1492. ds_main_card.setColumn(0, "totrcptamt", gTotrcptamt);
  1493. fCardamtCalc();
  1494. }
  1495. if (!utlf_isNull(strSend) && strSend != " " && strSend != "-") {
  1496. ds_main_h_card_card.copyData(strSend);
  1497. ExistCardCount = ds_main_h_card_card.rowcount;
  1498. fCardamtCalc();
  1499. } else {
  1500. ExistCardCount = 0;
  1501. }
  1502. if (!utlf_isNull(gMultiSend) && gMultiSend != " " && gMultiSend != "-") {
  1503. ds_main_m_opmi_opmi.copyData(gMultiSend);
  1504. }
  1505. // 밴정보 조회
  1506. ds_main_iptflag.setColumn(0, "aprvdd", utlf_getCurrentDate());
  1507. // 입원_외래구분
  1508. if (String(gOrdtype).toUpperCase() == "O") {
  1509. ds_main_iptflag.setColumn(0, "ioflag", "O");
  1510. } else if (String(gOrdtype).toUpperCase() == "H") {
  1511. ds_main_iptflag.setColumn(0, "ioflag", "H");
  1512. } else {
  1513. ds_main_iptflag.setColumn(0, "ioflag", "I");
  1514. }
  1515. ds_main_iptflag.setColumn(0, "aprvsrchflag", "-"); //전체
  1516. ds_main_iptflag.setColumn(0, "receiptyn", "Y"); //전표출력여부
  1517. //외래_입원_건진 카드밴 정보 조회
  1518. if (gFLAG != "I" && gFLAG != "D") {
  1519. ds_send.clearData(); ds_send.addRow();
  1520. dsf_createDsRow("ds_send", [{col:"cvan_pid", type:"STRING", size:256, val: gPid}
  1521. , {col:"cvan_aprvdd", type:"STRING", size:256, val: ""}
  1522. , {col:"cvan_aprvsrchflag", type:"STRING", size:256, val: ds_main_iptflag.getColumn(0, "aprvsrchflag")}
  1523. , {col:"cvan_ioflag", type:"STRING", size:256, val: ds_main_iptflag.getColumn(0, "ioflag")}
  1524. , {col:"cvan_pregdmndyn", type:"STRING", size:256, val: gPregDmndYN}]);
  1525. var oParam = {};
  1526. oParam.id = "TRPAO00453";
  1527. oParam.service = "pamcomnapp.PamComn";
  1528. oParam.method = "reqGetCardVanNew";
  1529. oParam.inds = "req=ds_send";
  1530. oParam.outds = "ds_main_h_cvan_cvan=h_cvan";
  1531. oParam.async = false;
  1532. oParam.callback = "cf_TRPAO00453";
  1533. tranf_submit(oParam);
  1534. if (arErrorCode.pop("TRPAO00453") > -1) {
  1535. }
  1536. }
  1537. // 입원 카드수납내역 조회
  1538. if (String(gOrdtype).toUpperCase() != "O" && gFLAG != "I" && gFLAG != "D" && gFLAG != "M" && gFLAG != "H" && gPregDmndYN != "Y") {
  1539. ds_send.clear();
  1540. dsf_createDsRow("ds_send", [{col:"cvan_pid", type:"STRING", size:256, val: gPid}
  1541. , {col:"cvan_aprvdd", type:"STRING", size:256, val: ""}
  1542. , {col:"cvan_aprvtm", type:"STRING", size:256, val: ""}
  1543. , {col:"cvan_aprvno", type:"STRING", size:256, val: ""}
  1544. , {col:"cvan_ordtype", type:"STRING", size:256, val: gOrdtype}
  1545. , {col:"cvan_fromdd", type:"STRING", size:256, val: gFromDD}
  1546. , {col:"cvan_todd", type:"STRING", size:256, val: gToDD}
  1547. , {col:"cvan_orddd", type:"STRING", size:256, val: gOrddd}
  1548. , {col:"cvan_cretno", type:"STRING", size:256, val: gCretno}
  1549. , {col:"sess_posinstcd", type:"STRING", size:256, val: sysf_getUserInfo("dutplceinstcd")}]);
  1550. var oParam = {};
  1551. oParam.id = "TRPAO00452";
  1552. oParam.service = "pamcomnapp.PamComn";
  1553. oParam.method = "reqGetCardofVan";
  1554. oParam.inds = "req=ds_send";
  1555. oParam.outds = "ds_main_h_card_card=card";
  1556. oParam.async = false;
  1557. tranf_submit(oParam);
  1558. // mseq 칼럼 추가
  1559. dsf_setDefaultVal(ds_main_h_card_card, "card_mseqno:");
  1560. ExistCardCount = ds_main_h_card_card.rowcount;
  1561. fCardamtCalc();
  1562. }
  1563. // ICPos의 경우 할부개월수만 전달
  1564. if (ds_main_iptflag.getColumn(0, "vanflag") == "KOCES_IC") {
  1565. ds_main_card2.setColumn(0, "card_allotmm", gAllotmm);
  1566. } else {
  1567. if (!utlf_isNull(gCardno) && gCardno != " " && gCardno != "-" &&
  1568. !utlf_isNull(gValiterm) && gValiterm != " " && gValiterm != "-" &&
  1569. !utlf_isNull(gTotrcptamt) && gTotrcptamt != " " && gTotrcptamt != "-" &&
  1570. !utlf_isNull(gAllotmm) && gAllotmm != " " && gAllotmm != "-") {
  1571. ds_main_card2.enableevent = false;
  1572. ds_main_card2.setColumn(0, "card_cardno", gCardno);
  1573. ds_main_card2.enableevent = true;
  1574. ds_main_card2.setColumn(0, "card_valiterm", gValiterm);
  1575. ds_main_card2.setColumn(0, "card_allotmm", gAllotmm);
  1576. if (!utlf_isNull(gKeyInptFlag) && gKeyInptFlag != " " && gKeyInptFlag != "-") {
  1577. ds_main_card2.setColumn(0, "card_keyinptflag", gKeyInptFlag);
  1578. ds_main_card.setColumn(0, "swipedata", gSwipeData);
  1579. } else {
  1580. ds_main_card2.setColumn(0, "card_keyinptflag", "K");
  1581. }
  1582. }
  1583. }
  1584. ds_send_sms.setColumn(0, "pid", gPid);
  1585. }
  1586. function fInit2() {
  1587. ds_main_card2.clearData(); ds_main_card2.addRow();
  1588. ds_main_card.setColumn(0, "swipedata", "");
  1589. var subtotalamt = parseInt(ds_main_card.getColumn(0, "totrcptamt")) - parseInt(ds_main_card.getColumn(0, "totcardamt"));
  1590. ds_main_card.setColumn(0, "subtotalamt", subtotalamt);
  1591. ds_main_card2.setColumn(0, "card_cardamt", subtotalamt);
  1592. ds_main_iptflag.setColumn(0, "cardedit", "");
  1593. group3_swt_cardlist_case_cvan_checkbox1_onchanged(null, null);
  1594. ds_main_card2.setColumn(0, "card_keyinptflag", "S");
  1595. ds_main_card2.setColumn(0, "card_valiterm", "");
  1596. ds_main_card2.setColumn(0, "card_cardcmpycd", "");
  1597. ds_main_iptflag.setColumn(0, "aprvdd", utlf_getCurrentDate());
  1598. group3.group2.ipt_cardno.setFocus();
  1599. }
  1600. function fCardamtCalc() {
  1601. ds_main_card2.setColumn(0, "card_cardamt", parseInt(ds_main_card.getColumn(0, "totrcptamt")));
  1602. }
  1603. //2007-10-10 이동식 추가 - 카드승인
  1604. function fGetCardAprv() {
  1605. //카드 승인금액이 있을 경우에 승인
  1606. var vCardamt = parseInt(ds_main_card2.getColumn(0, "card_cardamt"));
  1607. var elctsignkey = "";
  1608. var elctsigncnts = "";
  1609. // VAN사 구분
  1610. var vanFlag = ds_main_iptflag.getColumn(0, "vanflag");
  1611. // KOCES_ICPOS의 경우 스킵 by 조중래 20160429
  1612. // KICC IC의 경우 서명데이터를 전달해야함 2018/05/14(이정택)
  1613. // if (vanFlag != "KOCES_IC") {
  1614. // 서명 후 카드 승인, 서명데이터 승인시 전송해야함
  1615. // 전자서명 처리
  1616. var parm = gPid + "▦" // PID
  1617. + vCardamt + "▦" // 수납대상금액
  1618. + "11" + "▦" // 승인구분
  1619. + "" + "▦" // 승인일자
  1620. + "" + "▦" // 승인시간
  1621. + "" + "▦" // 승인번호
  1622. + sysf_getUserInfo("dutplceinstcd") + "▦"; // 기관코드
  1623. frmf_setParameter("SPPAO02101_PARM", parm);
  1624. // 5만원 이하 승인안함 SPPAO00100_공통코드호출.xrw
  1625. var aprv_Min_Amt = sysf_getGlobalVariable("SPPAO00100_P0082_00_nm", "p");
  1626. if (utlf_isNull(aprv_Min_Amt)) {
  1627. aprv_Min_Amt = 0;
  1628. }
  1629. if (vCardamt > parseInt(aprv_Min_Amt)) {
  1630. var tempKeyInptFlag = ds_main_card2.getColumn(0, "card_keyinptflag");
  1631. var tempAllotmm = ds_main_card2.getColumn(0, "card_allotmm");
  1632. //var signData = frmf_modal("SPPAO02101", "SPPAO02101", "", "", 2, 400, 400, "", "", "", "", "", "M");
  1633. group3.group2.ipt_cardno.enableevent = false;
  1634. var signData = frmf_modal("SPPAO02101", "SPPAO02101", '', false, 1, '', '', 311, 256, "", "", "", "M");
  1635. group3.group2.ipt_cardno.enableevent = true;
  1636. ds_main_card2.setColumn(0, 'card_keyinptflag', tempKeyInptFlag);
  1637. ds_main_card2.setColumn(0, 'card_allotmm', tempAllotmm);
  1638. if (!utlf_isNull(signData)) {
  1639. elctsignkey = signData.key;
  1640. elctsigncnts = signData.img;
  1641. } else {
  1642. sysf_messageBox("카드 서명 데이터가 올바르게 전달 되지 않았습니다. 다시 한번 시도해주세요", "E999", "");
  1643. return false;
  1644. }
  1645. }
  1646. // }
  1647. if (vCardamt > 0) {
  1648. // 카드 승인
  1649. // swipe 데이타 읽어 입력구분 세팅
  1650. fAppCardVanData(ds_init_pam_init_P6601list.lookup("cdnm", ds_main_iptflag.getColumn(0, "vanflag"), "remark") // data1 vangb van사구분
  1651. , "11" // data2 ordergb 거래구분
  1652. , utlf_getCurrentDate() // data3 mdate 회계일자
  1653. , gPid // data4 pano 등록번호
  1654. , gOrdtype // data5 iogb 입외구분
  1655. , gOrddeptcd // data6 deptcode 진료과코드
  1656. , gOrddd // data7 diagdate 진료일자
  1657. , sysf_getUserInfo("userid") // data8 clientid 수납자
  1658. , ds_main_card2.getColumn(0, "card_keyinptflag") // data9 entrymode 입력구분
  1659. , ds_main_card.getColumn(0, "swipedata") // data10 track2data 트랙data
  1660. , ds_main_card2.getColumn(0, "card_cardno") // data11 cardnumber 카드번호
  1661. , ds_main_card2.getColumn(0, "card_valiterm") // data12 cardperiod 유효기간
  1662. , ds_main_card2.getColumn(0, "card_allotmm") // data13 carddivide 할부개월수
  1663. , vCardamt // data14 netamt 금액
  1664. , "" // data15 oldappdate 원거래승인일자(취소시)
  1665. , "" // data16 oldapptime 원거래승인시간(취소시)
  1666. , "" // data17 oldappno 원거래승인번호(취소시)
  1667. , gPregDmndYN // data18 gPregDmndYN 산전진료비여부
  1668. , elctsignkey // data19 카드 서명
  1669. , elctsigncnts // data20 카드 서명
  1670. , vanFlag // data21 VAN구분
  1671. , "-" // data22 거래일련번호
  1672. , "-"); // data23 원승인단말기번호
  1673. if (ds_tmp_appvanif.getColumn(0, "replystat") != "0000") {
  1674. // 비대면 승인 실패 시
  1675. if (ds_main_card2.getColumn(0, "card_keyinptflag") == "E") {
  1676. sysf_messageBox("승인실패 : " + KNUH_IC_OCX.gaon_rsmsg(), "E999", "");
  1677. }
  1678. // 승인에러시 정지
  1679. return false;
  1680. }
  1681. // 승인완료 후 전표 출력 start
  1682. // 강제카드결제 제외
  1683. if (ds_main_iptflag.getColumn(0, "cardaprv") != "Y" && ds_main_iptflag.getColumn(0, "receiptyn") == "Y" && gMyCard =="Y") {
  1684. ds_temp_receipt.clearData();
  1685. dsf_makeValue(ds_temp_receipt, "pid", "string", gPid);
  1686. dsf_makeValue(ds_temp_receipt, "aprvflag", "string", "12");
  1687. dsf_makeValue(ds_temp_receipt, "aprvdd", "string", ds_tmp_appvanif.getColumn(0, "approvaldate"));
  1688. dsf_makeValue(ds_temp_receipt, "aprvtm", "string", ds_tmp_appvanif.getColumn(0, "approvaltime"));
  1689. dsf_makeValue(ds_temp_receipt, "aprvno", "string", ds_tmp_appvanif.getColumn(0, "approvalno"));
  1690. dsf_makeValue(ds_temp_receipt, "ordtype", "string", gOrdtype);
  1691. dsf_makeValue(ds_temp_receipt, "instcd", "string", sysf_getUserInfo("dutplceinstcd"));
  1692. dsf_makeValue(ds_temp_receipt, "ordtype", "string", "카드전표재출력");
  1693. var objArg = new Object();
  1694. objArg.ds_temp_SPPAO01900 = ds_temp_receipt;
  1695. frmf_modal("SPPAO01900", "SPPAO01900", objArg, "", 1, 200, 200, "", "", "", "", "", "M");
  1696. gMyCard ="N"
  1697. }
  1698. var aprvCardAmt = ds_main_card.getColumn(0, "totcardamt");
  1699. if (utlf_isNull(aprvCardAmt) || isNaN(aprvCardAmt)) {
  1700. aprvCardAmt = 0;
  1701. }
  1702. ds_main_card.setColumn(0, "totcardamt", parseInt(aprvCardAmt) + parseInt(vCardamt));
  1703. //수납내역 별로 카드내역을 쪼갬
  1704. var m_otpt = parseInt(ds_main_m_opmi_opmi.rowcount); // 멀티수납시 카드내역 생성을 위해서
  1705. var c_card = parseInt(ds_main_c_card_card.rowcount); // 재승인대상 카드내역
  1706. var recardaprv = ds_main_iptflag.getColumn(0, "recardaprv"); // 재승인 플래그
  1707. // 멀티수납 카드내역 생성
  1708. if (m_otpt > 0 && recardaprv != "Y") {
  1709. if(utlf_isNull(this.objects["ds_main_h_card_card"]) || ds_main_h_card_card.rowcount == 0) {
  1710. dsf_createDs("ds_main_h_card_card", [
  1711. {col:"card_mseqno", type:"STRING", size:256}
  1712. , {col:"card_pid", type:"STRING", size:256}
  1713. , {col:"card_rcptdd", type:"STRING", size:256}
  1714. , {col:"card_rcptno", type:"STRING", size:256}
  1715. , {col:"card_rcptseqno", type:"STRING", size:256}
  1716. , {col:"card_seqno", type:"STRING", size:256}
  1717. , {col:"card_instcd", type:"STRING", size:256}
  1718. , {col:"card_rcptstat", type:"STRING", size:256}
  1719. , {col:"card_ordtype", type:"STRING", size:256}
  1720. , {col:"card_keyinptflag", type:"STRING", size:256}
  1721. , {col:"card_cardcmpycd", type:"STRING", size:256}
  1722. , {col:"card_cardno", type:"STRING", size:256}
  1723. , {col:"card_aprvflag", type:"STRING", size:256}
  1724. , {col:"card_aprvdd", type:"STRING", size:256}
  1725. , {col:"card_aprvtm", type:"STRING", size:256}
  1726. , {col:"card_aprvno", type:"STRING", size:256}
  1727. , {col:"card_vancd", type:"STRING", size:256}
  1728. , {col:"card_allotmm", type:"STRING", size:256}
  1729. , {col:"card_cardamt", type:"STRING", size:256}
  1730. , {col:"card_valiterm", type:"STRING", size:256}
  1731. , {col:"card_rcptexecdd", type:"STRING", size:256}
  1732. , {col:"card_rcpttm", type:"STRING", size:256}
  1733. , {col:"card_rcptrid", type:"STRING", size:256}
  1734. , {col:"card_innrtretyn", type:"STRING", size:256}
  1735. , {col:"card_preamtyn", type:"STRING", size:256}
  1736. , {col:"card_remfact", type:"STRING", size:256}
  1737. , {col:"card_fstrgstrid", type:"STRING", size:256}
  1738. , {col:"card_fstrgstdt", type:"STRING", size:256}
  1739. , {col:"card_lastupdtrid", type:"STRING", size:256}
  1740. , {col:"card_lastupdtdt", type:"STRING", size:256}
  1741. ]);
  1742. }
  1743. for (var i = 0; i < m_otpt; i++) {
  1744. if (ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt") != 0) {
  1745. currow = ds_main_h_card_card.addRow(); //parseInt(ds_main_h_card_card.rowcount) + 1;
  1746. //카드승인정보는 추후 받아온 데이터 로 처리
  1747. ds_main_h_card_card.setColumn(currow, "card_mseqno", ds_main_m_opmi_opmi.getColumn(i, "opmi_mseqno"));
  1748. ds_main_h_card_card.setColumn(currow, "card_pid", gPid);
  1749. ds_main_h_card_card.setColumn(currow, "card_rcptdd", "");
  1750. ds_main_h_card_card.setColumn(currow, "card_rcptno", "0");
  1751. ds_main_h_card_card.setColumn(currow, "card_rcptseqno", "0");
  1752. ds_main_h_card_card.setColumn(currow, "card_seqno", "0");
  1753. ds_main_h_card_card.setColumn(currow, "card_instcd", sysf_getUserInfo("dutplceinstcd"));
  1754. ds_main_h_card_card.setColumn(currow, "card_rcptstat", "Y");
  1755. ds_main_h_card_card.setColumn(currow, "card_ordtype", gOrdtype);
  1756. ds_main_h_card_card.setColumn(currow, "card_keyinptflag", ds_main_card2.getColumn(0, "card_keyinptflag")); // 키입력구분
  1757. ds_main_h_card_card.setColumn(currow, "card_cardcmpycd", ds_tmp_appvanif.getColumn(0, "bankid")); // 매입처코드
  1758. ds_main_h_card_card.setColumn(currow, "card_cardno", ds_main_card2.getColumn(0, "card_cardno")); // 카드번호
  1759. ds_main_h_card_card.setColumn(currow, "card_aprvflag", "12"); // 12: 카드승인응답
  1760. ds_main_h_card_card.setColumn(currow, "card_aprvdd", ds_tmp_appvanif.getColumn(0, "approvaldate")); // 승인일자
  1761. ds_main_h_card_card.setColumn(currow, "card_aprvtm", ds_tmp_appvanif.getColumn(0, "approvaltime")); // 승인시간
  1762. ds_main_h_card_card.setColumn(currow, "card_aprvno", ds_tmp_appvanif.getColumn(0, "approvalno")); // 승인번호
  1763. ds_main_h_card_card.setColumn(currow, "card_vancd", ds_tmp_appvanif.getColumn(0, "vangb")); // VAN사구분
  1764. ds_main_h_card_card.setColumn(currow, "card_allotmm", ds_main_card2.getColumn(0, "card_allotmm")); // 할부
  1765. // 카드 금액
  1766. if (m_otpt == 1) {
  1767. ds_main_h_card_card.setColumn(currow, "card_cardamt", vCardamt);
  1768. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", parseInt(ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt")) - vCardamt);
  1769. } else {
  1770. ds_main_h_card_card.setColumn(currow, "card_cardamt", ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt"));
  1771. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", "0");
  1772. }
  1773. ds_main_h_card_card.setColumn(currow, "card_valiterm", ds_main_card2.getColumn(0, "card_valiterm") ); // 유효일자
  1774. ds_main_h_card_card.setColumn(currow, "card_rcptexecdd", "");
  1775. ds_main_h_card_card.setColumn(currow, "card_rcpttm", "");
  1776. ds_main_h_card_card.setColumn(currow, "card_rcptrid", "");
  1777. ds_main_h_card_card.setColumn(currow, "card_innrtretyn", "N");
  1778. ds_main_h_card_card.setColumn(currow, "card_preamtyn", "N");
  1779. ds_main_h_card_card.setColumn(currow, "card_remfact", "");
  1780. ds_main_h_card_card.setColumn(currow, "card_fstrgstrid", "");
  1781. ds_main_h_card_card.setColumn(currow, "card_fstrgstdt", "");
  1782. ds_main_h_card_card.setColumn(currow, "card_lastupdtrid", "");
  1783. ds_main_h_card_card.setColumn(currow, "card_lastupdtdt", "");
  1784. }
  1785. }
  1786. // 재승인 카드내역 생성
  1787. } else if (recardaprv == "Y" && c_card > 0) {
  1788. var card_rcptdd = "";
  1789. var card_rcptno = 0;
  1790. var card_rcptseqno = 0;
  1791. var card_cardamt = 0;
  1792. for (var i = 0; i < c_card ; i++) {
  1793. card_rcptdd = ds_main_c_card_card.getColumn(i, "card_rcptdd");
  1794. card_rcptno = ds_main_c_card_card.getColumn(i, "card_rcptno");
  1795. card_rcptseqno = ds_main_c_card_card.getColumn(i, "card_rcptseqno");
  1796. card_cardamt = ds_main_c_card_card.getColumn(i, "card_cardamt");
  1797. //기존승인내역 취소처리
  1798. ds_main_c_card_card.setColumn(i, "card_rcptstat", "C");
  1799. // 신규승인노드 추가
  1800. currow = ds_main_c_card_card.addRow();
  1801. // 카드승인정보는 추후 받아온 데이터 로 처리
  1802. ds_main_c_card_card.setColumn(currow, "card_pid", gPid);
  1803. ds_main_c_card_card.setColumn(currow, "card_rcptdd", card_rcptdd);
  1804. ds_main_c_card_card.setColumn(currow, "card_rcptno", card_rcptno);
  1805. ds_main_c_card_card.setColumn(currow, "card_rcptseqno", card_rcptseqno);
  1806. ds_main_c_card_card.setColumn(currow, "card_seqno", "0");
  1807. ds_main_c_card_card.setColumn(currow, "card_instcd", sysf_getUserInfo("dutplceinstcd"));
  1808. ds_main_c_card_card.setColumn(currow, "card_rcptstat", "Y");
  1809. ds_main_c_card_card.setColumn(currow, "card_ordtype", gOrdtype);
  1810. ds_main_c_card_card.setColumn(currow, "card_keyinptflag", ds_main_card2.getColumn(0, "card_keyinptflag")); // 키입력구분
  1811. ds_main_c_card_card.setColumn(currow, "card_cardcmpycd", ds_tmp_appvanif.getColumn(0, "bankid")); // 매입처코드
  1812. ds_main_card2.enableevent = false;
  1813. ds_main_c_card_card.setColumn(currow, "card_cardno", ds_main_card2.getColumn(0, "card_cardno")); // 카드번호
  1814. ds_main_card2.enableevent = true;
  1815. ds_main_c_card_card.setColumn(currow, "card_aprvflag", "12"); // 12: 카드승인응답
  1816. ds_main_c_card_card.setColumn(currow, "card_aprvdd", ds_tmp_appvanif.getColumn(0, "approvaldate")); // 승인일자
  1817. ds_main_c_card_card.setColumn(currow, "card_aprvtm", ds_tmp_appvanif.getColumn(0, "approvaltime")); // 승인시간
  1818. ds_main_c_card_card.setColumn(currow, "card_aprvno", ds_tmp_appvanif.getColumn(0, "approvalno")); // 승인번호
  1819. ds_main_c_card_card.setColumn(currow, "card_vancd", ds_tmp_appvanif.getColumn(0, "vangb")); // VAN사구분
  1820. ds_main_c_card_card.setColumn(currow, "card_allotmm", ds_main_card2.getColumn(0, "card_allotmm")); // 할부
  1821. ds_main_c_card_card.setColumn(currow, "card_cardamt", card_cardamt ); // 카드금액
  1822. ds_main_c_card_card.setColumn(currow, "card_valiterm", ds_main_card2.getColumn(0, "card_valiterm")); // 유효일자
  1823. ds_main_c_card_card.setColumn(currow, "card_rcptexecdd", "");
  1824. ds_main_c_card_card.setColumn(currow, "card_rcpttm", "");
  1825. ds_main_c_card_card.setColumn(currow, "card_rcptrid", "");
  1826. ds_main_c_card_card.setColumn(currow, "card_innrtretyn", "N");
  1827. ds_main_c_card_card.setColumn(currow, "card_preamtyn", "N");
  1828. ds_main_c_card_card.setColumn(currow, "card_remfact", "");
  1829. ds_main_c_card_card.setColumn(currow, "card_fstrgstrid", "");
  1830. ds_main_c_card_card.setColumn(currow, "card_fstrgstdt", "");
  1831. ds_main_c_card_card.setColumn(currow, "card_lastupdtrid", "");
  1832. ds_main_c_card_card.setColumn(currow, "card_lastupdtdt", "");
  1833. // 새로 추가된 노드인지 체크값
  1834. ds_main_c_card_card.setColumn(currow, "card_newcardnode", "Y");
  1835. }
  1836. // 승인완료 후 재승인 플래그 삭제
  1837. var oParam = {};
  1838. oParam.id = "TXPAO00454";
  1839. oParam.service = "opatmngtapp.OPatMngt";
  1840. oParam.method = "reqSetMultiCard";
  1841. oParam.inds = "req=ds_main_c_card_card";
  1842. oParam.outds = "";
  1843. oParam.async = false;
  1844. oParam.callback = "cf_TXPAO00454";
  1845. tranf_submit(oParam);
  1846. if (arErrorCode.pop("TXPAO00454") > -1) {
  1847. sysf_messageBox("카드내역 저장 완료하였습니다. '카드내역' 탭으로 가셔서 작업을 계속 하십시오.", "I999", "");
  1848. ds_main_iptflag.setColumn(0, "recardaprv", "");
  1849. group3.swt_cardlist.case_card2.button2.visible = false; // 저장버튼
  1850. } else {
  1851. group3.swt_cardlist.case_card2.button2.visible = true;
  1852. sysf_messageBox("카드승인 정보를 서버에 저장하는데 실패했습니다. '카드내역II' 탭의 '저장' 버튼을 눌러 승인정보를 저장해 주세요!", "E999", "");
  1853. return false;
  1854. }
  1855. // 단일 승인 카드내역 생성
  1856. } else if (recardaprv != "Y") {
  1857. if(utlf_isNull(this.objects["ds_main_h_card_card"]) || ds_main_h_card_card.rowcount == 0) {
  1858. dsf_createDs("ds_main_h_card_card", [
  1859. {col:"card_pid", type:"STRING", size:256}
  1860. , {col:"card_rcptdd", type:"STRING", size:256}
  1861. , {col:"card_rcptno", type:"STRING", size:256}
  1862. , {col:"card_rcptseqno", type:"STRING", size:256}
  1863. , {col:"card_seqno", type:"STRING", size:256}
  1864. , {col:"card_instcd", type:"STRING", size:256}
  1865. , {col:"card_rcptstat", type:"STRING", size:256}
  1866. , {col:"card_ordtype", type:"STRING", size:256}
  1867. , {col:"card_keyinptflag", type:"STRING", size:256}
  1868. , {col:"card_cardcmpycd", type:"STRING", size:256}
  1869. , {col:"card_cardno", type:"STRING", size:256}
  1870. , {col:"card_aprvflag", type:"STRING", size:256}
  1871. , {col:"card_aprvdd", type:"STRING", size:256}
  1872. , {col:"card_aprvtm", type:"STRING", size:256}
  1873. , {col:"card_aprvno", type:"STRING", size:256}
  1874. , {col:"card_vancd", type:"STRING", size:256}
  1875. , {col:"card_allotmm", type:"STRING", size:256}
  1876. , {col:"card_cardamt", type:"STRING", size:256}
  1877. , {col:"card_valiterm", type:"STRING", size:256}
  1878. , {col:"card_rcptexecdd", type:"STRING", size:256}
  1879. , {col:"card_rcpttm", type:"STRING", size:256}
  1880. , {col:"card_rcptrid", type:"STRING", size:256}
  1881. , {col:"card_innrtretyn", type:"STRING", size:256}
  1882. , {col:"card_preamtyn", type:"STRING", size:256}
  1883. , {col:"card_remfact", type:"STRING", size:256}
  1884. , {col:"card_fstrgstrid", type:"STRING", size:256}
  1885. , {col:"card_fstrgstdt", type:"STRING", size:256}
  1886. , {col:"card_lastupdtrid", type:"STRING", size:256}
  1887. , {col:"card_lastupdtdt", type:"STRING", size:256}
  1888. ]);
  1889. }
  1890. currow = ds_main_h_card_card.addRow();
  1891. ds_main_h_card_card.setColumn(currow, "card_pid", gPid);
  1892. ds_main_h_card_card.setColumn(currow, "card_rcptdd", "");
  1893. ds_main_h_card_card.setColumn(currow, "card_rcptno", "0");
  1894. ds_main_h_card_card.setColumn(currow, "card_rcptseqno", "0");
  1895. ds_main_h_card_card.setColumn(currow, "card_seqno", "0");
  1896. ds_main_h_card_card.setColumn(currow, "card_instcd", sysf_getUserInfo("dutplceinstcd"));
  1897. ds_main_h_card_card.setColumn(currow, "card_rcptstat", "Y");
  1898. ds_main_h_card_card.setColumn(currow, "card_ordtype", gOrdtype);
  1899. ds_main_h_card_card.setColumn(currow, "card_keyinptflag", ds_main_card2.getColumn(0, "card_keyinptflag")); // 키입력구분
  1900. ds_main_h_card_card.setColumn(currow, "card_cardcmpycd", ds_tmp_appvanif.getColumn(0, "bankid")); // 매입처코드
  1901. ds_main_h_card_card.setColumn(currow, "card_cardno", ds_main_card2.getColumn(0, "card_cardno")); // 카드번호
  1902. ds_main_h_card_card.setColumn(currow, "card_aprvflag", "12"); // 12: 카드승인응답
  1903. ds_main_h_card_card.setColumn(currow, "card_aprvdd", ds_tmp_appvanif.getColumn(0, "approvaldate")); // 승인일자
  1904. ds_main_h_card_card.setColumn(currow, "card_aprvtm", ds_tmp_appvanif.getColumn(0, "approvaltime")); // 승인시간
  1905. ds_main_h_card_card.setColumn(currow, "card_aprvno", ds_tmp_appvanif.getColumn(0, "approvalno")); // 승인번호
  1906. ds_main_h_card_card.setColumn(currow, "card_vancd", ds_tmp_appvanif.getColumn(0, "vangb")); // VAN사구분
  1907. ds_main_h_card_card.setColumn(currow, "card_allotmm", ds_main_card2.getColumn(0, "card_allotmm")); // 할부
  1908. ds_main_h_card_card.setColumn(currow, "card_cardamt", vCardamt);
  1909. ds_main_h_card_card.setColumn(currow, "card_valiterm", ds_main_card2.getColumn(0, "card_valiterm")); // 유효일자
  1910. ds_main_h_card_card.setColumn(currow, "card_rcptexecdd", "");
  1911. ds_main_h_card_card.setColumn(currow, "card_rcpttm", "");
  1912. ds_main_h_card_card.setColumn(currow, "card_rcptrid", "");
  1913. ds_main_h_card_card.setColumn(currow, "card_innrtretyn", "N");
  1914. ds_main_h_card_card.setColumn(currow, "card_preamtyn", "N");
  1915. ds_main_h_card_card.setColumn(currow, "card_remfact", "");
  1916. ds_main_h_card_card.setColumn(currow, "card_fstrgstrid", "");
  1917. ds_main_h_card_card.setColumn(currow, "card_fstrgstdt", "");
  1918. ds_main_h_card_card.setColumn(currow, "card_lastupdtrid", "");
  1919. ds_main_h_card_card.setColumn(currow, "card_lastupdtdt", "");
  1920. // 건진 신용카드 처리
  1921. if (gOrdtype == "H") {
  1922. dsf_makeValue(ds_main_h_card_card, "card_seqno", "string", ds_tmp_appvanif.getColumn(0, "seqno"), currow);
  1923. dsf_makeValue(ds_main_h_card_card, "card_clientid", "string", ds_tmp_appvanif.getColumn(0, "clientid"), currow);
  1924. dsf_makeValue(ds_main_h_card_card, "card_replystat", "string", ds_tmp_appvanif.getColumn(0, "replystat"), currow);
  1925. dsf_makeValue(ds_main_h_card_card, "card_bankid", "string", ds_tmp_appvanif.getColumn(0, "bankid"), currow);
  1926. dsf_makeValue(ds_main_h_card_card, "card_bankseqno", "string", ds_tmp_appvanif.getColumn(0, "bankseqno"), currow);
  1927. dsf_makeValue(ds_main_h_card_card, "card_bankname", "string", ds_tmp_appvanif.getColumn(0, "bankname"), currow);
  1928. dsf_makeValue(ds_main_h_card_card, "card_memberno", "string", ds_tmp_appvanif.getColumn(0, "memberno"), currow);
  1929. dsf_makeValue(ds_main_h_card_card, "card_publishbank", "string", ds_tmp_appvanif.getColumn(0, "publishbank"), currow);
  1930. dsf_makeValue(ds_main_h_card_card, "card_vanseqno", "string", ds_tmp_appvanif.getColumn(0, "vanseqno"), currow);
  1931. dsf_makeValue(ds_main_h_card_card, "card_aprvunino", "string", ds_tmp_appvanif.getColumn(0, "aprvunino"), currow);
  1932. }
  1933. }
  1934. } else {
  1935. sysf_messageBox("카드승인금액이 잘못 입력되었습니다. 카드 승인금액을 확인하세요.", "E999", "");
  1936. return false;
  1937. }
  1938. return true;
  1939. }
  1940. function cf_TXPAO00454(sSvcId, nErrorCode, sErrorMsg) {
  1941. arErrorCode.push(sSvcId, nErrorCode);
  1942. }
  1943. // 카드 취소
  1944. function fCnclCardAprv() {
  1945. var cardAmt = 0;
  1946. var currow = ds_main_h_card_card.rowposition; //group3.swt_cardlist.case_card.grd_card.currentrow; //grd_card.currentrow;
  1947. var aprvno = ds_main_card2.getColumn(0, "card_aprvno");
  1948. var cVanCncl = ds_main_iptflag.getColumn(0, "cvancncl");
  1949. cardAmt = ds_main_card.getColumn(0, "aprvcardamt");
  1950. if (cardAmt != ds_main_card2.getColumn(0, "card_cardamt")) {
  1951. if (sysf_messageBox("멀티승인 취소: 총 승인취소 금액은 [" + cardAmt + "원] 입니다. 계속 진행하시겠습니까?", "Q999", "") != 6) {
  1952. return false;
  1953. }
  1954. }
  1955. var elctsignkey = "";
  1956. var elctsigncnts = "";
  1957. // VAN사 구분
  1958. var vanFlag = ds_main_iptflag.getColumn(0, "vanflag");
  1959. // KOCES_ICPOS의 경우 스킵 by 조중래 20160429
  1960. // KICC_IC의 경우 싸인데이터 필요함
  1961. //if (vanFlag != "KOCES_IC") {
  1962. // 전자서명 처리
  1963. var parm = gPid + "▦"
  1964. + cardAmt + "▦" // 수납대상금액
  1965. + "22" + "▦" // 승인구분
  1966. + ds_tmp_appvanif.getColumn(0, "approvaldate") + "▦" // 승인일자
  1967. + ds_tmp_appvanif.getColumn(0, "approvaltime") + "▦" // 승인시간
  1968. + ds_tmp_appvanif.getColumn(0, "approvalno") + "▦" // 승인번호
  1969. + sysf_getUserInfo("dutplceinstcd") + "▦"; // 기관코드
  1970. frmf_setParameter("SPPAO02101_PARM", parm);
  1971. // 5만원 이하 승인안함 SPPAO00100_공통코드호출.xrw
  1972. var aprv_Min_Amt = sysf_getGlobalVariable("SPPAO00100_P0082_00_nm", "p");
  1973. if (utlf_isNull(aprv_Min_Amt)) aprv_Min_Amt = 0;
  1974. if (cardAmt > parseInt(aprv_Min_Amt)) {
  1975. //2018/04/27 이정택 수정
  1976. //var signData = frmf_modal("SPPAO02101", "SPPAO02101", "", "", 2, 400, 400, "", "", "", "", "", "M");
  1977. group3.group2.ipt_cardno.enableevent = false;
  1978. var signData = frmf_modal("SPPAO02101", "SPPAO02101", '', false, 1, '', '', 311, 256, "", "", "", "M");
  1979. group3.group2.ipt_cardno.enableevent = true;
  1980. //2018/04/27 이정택 수정
  1981. if (!utlf_isNull(signData)) {
  1982. elctsignkey = signData.key;
  1983. elctsigncnts = signData.img;
  1984. }
  1985. }
  1986. //}
  1987. // 카드승인 취소 처리
  1988. //ds_init_pam_init_P0032list.lookup("cdid", "200", "remark")
  1989. fAppCardVanData(ds_init_pam_init_P6602list.lookup("cdnm", ds_main_iptflag.getColumn(0, "cnclvanflag"), "remark") // data1 vangb van사 구분
  1990. , "21" // data2 ordergb 거래구분 - 카드취소요청
  1991. , utlf_getCurrentDate() // data3 mdate 회계일자
  1992. , gPid // data4 pid 등록번호
  1993. , gOrdtype // data5 iogb 입외구분
  1994. , gOrddeptcd // data6 deptcode 진료과코드
  1995. , gOrddd // data7 diagdate 진료일자
  1996. , sysf_getUserInfo("userid") // data8 clientid 수납자
  1997. , ds_main_card2.getColumn(0, "card_keyinptflag") // data9 entrymode 입력구분
  1998. , ds_main_card.getColumn(0, "swipedata") // data10 track2data 트랙data
  1999. , ds_main_card2.getColumn(0, "card_cardno") // data11 cardnumber 카드번호
  2000. , ds_main_card2.getColumn(0, "card_valiterm") // data12 cardperiod 유효기간
  2001. , ds_main_card2.getColumn(0, "card_allotmm") // data13 carddivide 할부개월수
  2002. , cardAmt // data14 netamt 금액
  2003. , ds_main_card2.getColumn(0, "card_aprvdd") // data15 oldappdate 원거래승인일자(취소시)
  2004. , ds_main_card2.getColumn(0, "card_aprvtm") // data16 oldapptime 원거래승인시간(취소시)
  2005. , ds_main_card2.getColumn(0, "card_aprvno") // data17 oldappno 원거래승인번호(취소시)
  2006. , gPregDmndYN // data18 gPregDmndYN 산전진료비여부
  2007. , elctsignkey // data19 카드 서명
  2008. , elctsigncnts // data20 카드 서명
  2009. , vanFlag // data21 VAN구분
  2010. , ds_main_card2.getColumn(0, "card_aprvunino") // data22 거래일련번호
  2011. , ds_main_card2.getColumn(0, "card_trmnno")); // data23 원승인단말기번호
  2012. if (ds_tmp_appvanif.getColumn(0, "replystat") != "0000") {
  2013. return false;
  2014. }
  2015. // 승인완료 후 전표 출력
  2016. // 강제 카드 결제 제외
  2017. if (ds_main_iptflag.getColumn(0, "cardaprv") != "Y" && ds_main_iptflag.getColumn(0, "receiptyn") == "Y" && gMyCard =="Y") {
  2018. ds_temp_receipt.clear();
  2019. dsf_makeValue(ds_temp_receipt, "pid", "string", gPid);
  2020. dsf_makeValue(ds_temp_receipt, "aprvflag", "string", "22");
  2021. dsf_makeValue(ds_temp_receipt, "aprvdd", "string", ds_tmp_appvanif.getColumn(0, "approvaldate"));
  2022. dsf_makeValue(ds_temp_receipt, "aprvtm", "string", ds_tmp_appvanif.getColumn(0, "approvaltime"));
  2023. dsf_makeValue(ds_temp_receipt, "aprvno", "string", ds_tmp_appvanif.getColumn(0, "approvalno"));
  2024. dsf_makeValue(ds_temp_receipt, "ordtype", "string", gOrdtype);
  2025. dsf_makeValue(ds_temp_receipt, "instcd", "string", sysf_getUserInfo("dutplceinstcd"));
  2026. dsf_makeValue(ds_temp_receipt, "ordtype", "string", "카드전표재출력");
  2027. var objArg = new Object();
  2028. objArg.ds_temp_SPPAO01900 = ds_temp_receipt;
  2029. frmf_modal("SPPAO01900", "SPPAO01900", objArg, "", 1, 200, 200, "", "", "", "", "", "M");
  2030. gMyCard = "N";
  2031. }
  2032. var aprvCardAmt = ds_main_card.getColumn(0, "totcardamt");
  2033. var newCardAmt = cardAmt;
  2034. newCardAmt = parseInt(newCardAmt) * -1;
  2035. if (utlf_isNull(aprvCardAmt) || isNaN(aprvCardAmt)) {
  2036. aprvCardAmt = 0;
  2037. }
  2038. ds_main_card.setColumn(0, "totcardamt", parseInt(aprvCardAmt) + parseInt(newCardAmt));
  2039. // 승인 내역 취소일 경우
  2040. if (cVanCncl == "Y") {
  2041. return true;
  2042. }
  2043. var m_otpt = ds_main_m_opmi_opmi.rowcount;
  2044. var c_card = ds_main_c_card_card.rowcount;
  2045. var aprvno = ds_main_card2.getColumn(0, "card_aprvno");
  2046. var nodeCnt = ds_main_h_card_card.rowcount;
  2047. if (m_otpt > 0) {
  2048. for (var i = 0; i < m_otpt ; i++) {
  2049. for (var inner = 0; inner < nodeCnt; inner++) {
  2050. if (ds_main_m_opmi_opmi.getColumn(i, "opmi_mseqno") == ds_main_h_card_card.getColumn(inner, "card_mseqno")
  2051. && aprvno == ds_main_h_card_card.getColumn(inner, "card_aprvno")
  2052. && ds_main_h_card_card.getColumn(inner, "card_rcptstat") == "Y") {
  2053. // 기존 카드노드 취소 처리
  2054. ds_main_h_card_card.setColumn(inner , "card_rcptstat", "C");
  2055. // 승인취소 노드 생성
  2056. currow2 = ds_main_h_card_card.addRow();
  2057. // 카드승인정보는 추후 받아온 데이터 로 처리
  2058. ds_main_h_card_card.setColumn(currow2, "card_mseqno", ds_main_m_opmi_opmi.getColumn(i , "opmi_mseqno"));
  2059. ds_main_h_card_card.setColumn(currow2, "card_pid", gPid);
  2060. ds_main_h_card_card.setColumn(currow2, "card_rcptdd", "");
  2061. ds_main_h_card_card.setColumn(currow2, "card_rcptno", "0");
  2062. ds_main_h_card_card.setColumn(currow2, "card_rcptseqno", "0");
  2063. ds_main_h_card_card.setColumn(currow2, "card_seqno", "0");
  2064. ds_main_h_card_card.setColumn(currow2, "card_instcd", sysf_getUserInfo("dutplceinstcd"));
  2065. ds_main_h_card_card.setColumn(currow2, "card_rcptstat", "D");
  2066. ds_main_h_card_card.setColumn(currow2, "card_ordtype", gOrdtype );
  2067. ds_main_h_card_card.setColumn(currow2, "card_keyinptflag", ds_main_card2.getColumn(0, "card_keyinptflag")); // 키입력구분
  2068. ds_main_h_card_card.setColumn(currow2, "card_cardcmpycd", ds_tmp_appvanif.getColumn(0, "bankid")); // 매입처코드
  2069. ds_main_h_card_card.setColumn(currow2, "card_cardno", ds_main_card2.getColumn(0, "card_cardno")); // 카드번호
  2070. ds_main_h_card_card.setColumn(currow2, "card_aprvflag", "22"); // 12: 카드승인응답
  2071. ds_main_h_card_card.setColumn(currow2, "card_aprvdd", ds_tmp_appvanif.getColumn(0, "approvaldate")); // 승인일자
  2072. ds_main_h_card_card.setColumn(currow2, "card_aprvtm", ds_tmp_appvanif.getColumn(0, "approvaltime")); // 승인시간
  2073. ds_main_h_card_card.setColumn(currow2, "card_aprvno", ds_tmp_appvanif.getColumn(0, "approvalno")); // 승인번호
  2074. ds_main_h_card_card.setColumn(currow2, "card_vancd", ds_tmp_appvanif.getColumn(0, "vangb")); // VAN사구분
  2075. ds_main_h_card_card.setColumn(currow2, "card_allotmm", ds_main_card2.getColumn(0, "card_allotmm")); // 할부
  2076. if (m_otpt == 1) {
  2077. ds_main_h_card_card.setColumn(currow2, "card_cardamt", parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")) * -1);
  2078. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", parseInt(ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt")) + parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")));
  2079. } else {
  2080. ds_main_h_card_card.setColumn(currow2, "card_cardamt", parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")) * -1);
  2081. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", parseInt(ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt")) + parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")));
  2082. }
  2083. ds_main_h_card_card.setColumn(currow2, "card_valiterm", ds_main_card2.getColumn(0, "card_valiterm")); // 유효일자
  2084. ds_main_h_card_card.setColumn(currow2, "card_rcptexecdd", "");
  2085. ds_main_h_card_card.setColumn(currow2, "card_rcpttm", "");
  2086. ds_main_h_card_card.setColumn(currow2, "card_rcptrid", "");
  2087. ds_main_h_card_card.setColumn(currow2, "card_innrtretyn", "N");
  2088. ds_main_h_card_card.setColumn(currow2, "card_preamtyn", "N");
  2089. ds_main_h_card_card.setColumn(currow2, "card_remfact", "");
  2090. ds_main_h_card_card.setColumn(currow2, "card_fstrgstrid", "");
  2091. ds_main_h_card_card.setColumn(currow2, "card_fstrgstdt", "");
  2092. ds_main_h_card_card.setColumn(currow2, "card_lastupdtrid", "");
  2093. ds_main_h_card_card.setColumn(currow2, "card_lastupdtdt", "");
  2094. break;
  2095. }
  2096. }
  2097. }
  2098. } else {
  2099. currow2 = ds_main_h_card_card.addRow();
  2100. ds_main_h_card_card.setColumn(currow2, "card_pid", gPid);
  2101. ds_main_h_card_card.setColumn(currow2, "card_rcptdd", "");
  2102. ds_main_h_card_card.setColumn(currow2, "card_rcptno", "0");
  2103. ds_main_h_card_card.setColumn(currow2, "card_rcptseqno", "0");
  2104. ds_main_h_card_card.setColumn(currow2, "card_seqno", "0");
  2105. ds_main_h_card_card.setColumn(currow2, "card_instcd", sysf_getUserInfo("dutplceinstcd"));
  2106. ds_main_h_card_card.setColumn(currow2, "card_rcptstat", "D");
  2107. ds_main_h_card_card.setColumn(currow2, "card_ordtype", gOrdtype );
  2108. ds_main_h_card_card.setColumn(currow2, "card_keyinptflag", ds_main_card2.getColumn(0, "card_keyinptflag")); // 키입력구분
  2109. ds_main_h_card_card.setColumn(currow2, "card_cardcmpycd", ds_tmp_appvanif.getColumn(0, "bankid")); // 매입처코드
  2110. ds_main_h_card_card.setColumn(currow2, "card_cardno", ds_main_card2.getColumn(0, "card_cardno")); // 카드번호
  2111. ds_main_h_card_card.setColumn(currow2, "card_aprvflag", "22"); // 12: 카드승인응답
  2112. ds_main_h_card_card.setColumn(currow2, "card_aprvdd", ds_tmp_appvanif.getColumn(0, "approvaldate")); // 승인일자
  2113. ds_main_h_card_card.setColumn(currow2, "card_aprvtm", ds_tmp_appvanif.getColumn(0, "approvaltime")); // 승인시간
  2114. ds_main_h_card_card.setColumn(currow2, "card_aprvno", ds_tmp_appvanif.getColumn(0, "approvalno")); // 승인번호
  2115. ds_main_h_card_card.setColumn(currow2, "card_vancd", ds_tmp_appvanif.getColumn(0, "vangb")); // VAN사구분
  2116. ds_main_h_card_card.setColumn(currow2, "card_allotmm", ds_main_card2.getColumn(0, "card_allotmm")); // 할부
  2117. ds_main_h_card_card.setColumn(currow2, "card_cardamt", parseInt(cardAmt) * -1);
  2118. ds_main_h_card_card.setColumn(currow2, "card_valiterm", ds_main_card2.getColumn(0, "card_valiterm")); // 유효일자
  2119. ds_main_h_card_card.setColumn(currow2, "card_rcptexecdd", "");
  2120. ds_main_h_card_card.setColumn(currow2, "card_rcpttm", "");
  2121. ds_main_h_card_card.setColumn(currow2, "card_rcptrid", "");
  2122. ds_main_h_card_card.setColumn(currow2, "card_innrtretyn", "N");
  2123. ds_main_h_card_card.setColumn(currow2, "card_preamtyn", "N");
  2124. ds_main_h_card_card.setColumn(currow2, "card_remfact", "");
  2125. ds_main_h_card_card.setColumn(currow2, "card_fstrgstrid", "");
  2126. ds_main_h_card_card.setColumn(currow2, "card_fstrgstdt", "");
  2127. ds_main_h_card_card.setColumn(currow2, "card_lastupdtrid", "");
  2128. ds_main_h_card_card.setColumn(currow2, "card_lastupdtdt", "");
  2129. // 건진 신용카드 처리
  2130. if (gOrdtype == "H") {
  2131. dsf_makeValue(ds_main_h_card_card, "card_seqno", "string", ds_tmp_appvanif.getColumn(0, "seqno"), currow2);
  2132. dsf_makeValue(ds_main_h_card_card, "card_clientid", "string", ds_tmp_appvanif.getColumn(0, "clientid"), currow2);
  2133. dsf_makeValue(ds_main_h_card_card, "card_replystat", "string", ds_tmp_appvanif.getColumn(0, "replystat"), currow2);
  2134. dsf_makeValue(ds_main_h_card_card, "card_bankid", "string", ds_tmp_appvanif.getColumn(0, "bankid"), currow2);
  2135. dsf_makeValue(ds_main_h_card_card, "card_bankseqno", "string", ds_tmp_appvanif.getColumn(0, "bankseqno"), currow2);
  2136. dsf_makeValue(ds_main_h_card_card, "card_bankname", "string", ds_tmp_appvanif.getColumn(0, "bankname"), currow2);
  2137. dsf_makeValue(ds_main_h_card_card, "card_memberno", "string", ds_tmp_appvanif.getColumn(0, "memberno"), currow2);
  2138. dsf_makeValue(ds_main_h_card_card, "card_publishbank", "string", ds_tmp_appvanif.getColumn(0, "publishbank"), currow2);
  2139. dsf_makeValue(ds_main_h_card_card, "card_vanseqno", "string", ds_tmp_appvanif.getColumn(0, "vanseqno"), currow2);
  2140. }
  2141. var nodeCount = ds_main_h_card_card.rowcount;
  2142. for (var i = 0; i < nodeCount; i++) {
  2143. if (aprvno == ds_main_h_card_card.getColumn(i, "card_aprvno") && ds_main_h_card_card.getColumn(i, "card_rcptstat") == 'Y') {
  2144. ds_main_h_card_card.setColumn(i , "card_rcptstat", "C");
  2145. ds_main_h_card_card.setColumn(currow2, "card_cardamt", parseInt(ds_main_h_card_card.getColumn(i, "card_cardamt")) * -1);
  2146. }
  2147. }
  2148. }
  2149. return true;
  2150. }
  2151. // 카드 내역 생성
  2152. function fMakeCardAprvSpec() {
  2153. // 카드 내역 생성
  2154. if (ds_main_iptflag.getColumn(0, "cardedit") == "Y") {
  2155. var row = ds_main_h_cvan_cvan.rowposition;
  2156. // 강제 승인할 van 정보가 선택되었는지 확인
  2157. if (ds_main_h_cvan_cvan.getColumn(row, "cvan_aprvno") != ds_main_card2.getColumn(0, "card_aprvno")) {
  2158. sysf_messageBox("van정보를 선택하지 않으셨습니다. 선택 후 다시 시도하세요!", "E999", "");
  2159. ds_main_card2.clearData(); ds_main_card2.addRow();
  2160. return false;
  2161. }
  2162. // 카드 승인 내역일 경우
  2163. if (ds_main_h_cvan_cvan.getColumn(row, "cvan_aprvflag") == "12") { // 신용 카드 승인
  2164. ds_main_card2.setColumn(0, "card_rcptstat", "Y");
  2165. // 재승인 노드 생성
  2166. if (ds_main_iptflag.getColumn(0, "recardaprv") == "Y") {
  2167. // 이하 로직은 실행시 무한 루프 오류를 발생 시킴
  2168. // 기존 프로그램에서 문제가 되지 않았던 것으로 보아
  2169. // 해당 조건은 발생하지 않은 것으로 판단하여 주석 처리함
  2170. /*
  2171. nodeCnt = ds_main_c_card_card.rowcount;
  2172. // 승인할 금액 계산
  2173. var cardAmt = 0;
  2174. for (var i = 0; i < nodeCnt; i++) {
  2175. cardAmt += parseInt(ds_main_c_card_card.getColumn(i, "card_cardamt"));
  2176. }
  2177. // 에러 체크 - 금액이 다를 경우 리턴
  2178. if (cardAmt != ds_main_card2.getColumn(0, "card_cardamt")) {
  2179. sysf_messageBox("선택하신 VAN정보의 금액과 승인해야할 금액 이 다릅니다.", "E999", "");
  2180. return false;
  2181. }
  2182. // 카드 노드 생성
  2183. for (var i = 0; i < nodeCnt; i++) {
  2184. nodeCnt = ds_main_c_card_card.addRow();
  2185. ds_main_c_card_card.copyRow(nodeCnt, ds_main_card2_card, 0);
  2186. ds_main_c_card_card.setColumn(nodeCnt, "card_cardamt", ds_main_c_card_card.getColumn(i, "card_cardamt"));
  2187. ds_main_c_card_card.setColumn(nodeCnt, "card_pid", gPid);
  2188. ds_main_c_card_card.setColumn(nodeCnt, "card_innrtretyn", "N");
  2189. ds_main_c_card_card.setColumn(nodeCnt, "card_preamtyn", "N");
  2190. ds_main_c_card_card.setColumn(nodeCnt, "card_rcptdd", ds_main_c_card_card.getColumn(i, "card_rcptdd"));
  2191. ds_main_c_card_card.setColumn(nodeCnt, "card_rcptno", ds_main_c_card_card.getColumn(i, "card_rcptno"));
  2192. ds_main_c_card_card.setColumn(nodeCnt, "card_rcptseqno", ds_main_c_card_card.getColumn(i, "card_rcptseqno"));
  2193. // 카드승인상태 취소('C')로 세팅한다.
  2194. ds_main_c_card_card.setColumn(i, "card_rcptstat", "C");
  2195. }
  2196. var oParam = {};
  2197. oParam.id = "TXPAO00454";
  2198. oParam.service = "opatmngtapp.OPatMngt";
  2199. oParam.method = "reqSetMultiCard";
  2200. oParam.inds = "req=ds_main_c_card_card";
  2201. oParam.outds = "";
  2202. oParam.async = false;
  2203. oParam.callback = "cf_TXPAO00454";
  2204. tranf_submit(oParam);
  2205. if (arErrorCode.pop("TXPAO00454") > -1) {
  2206. ds_main_iptflag.setColumn(0, "recardaprv", "");
  2207. } else {
  2208. button2.visible = true;
  2209. sysf_messageBox("카드승인 정보를 서버에 저장하는데 실패했습니다. '카드내역II' 탭의 '저장' 버튼을 눌러 승인정보를 저장해 주세요!", "E999", "");
  2210. return false;
  2211. }
  2212. */
  2213. } else { // 정상 카드 노드 생성
  2214. var multiCnt = 0;
  2215. var nodeCnt = ds_main_h_card_card.rowcount;
  2216. if (eval(gMulticnt) > 0) {
  2217. // 멀티 수납시 아래의 로직이 적용되지만
  2218. // 기존 TF 에서 copyNodeType 의 잘못된 사용으로 데이터가 잘못 생성될 수 있음
  2219. // 현재는 업무상 아래의 로직을 타는 경우는 없음
  2220. // 일반 멀티 내역 카드 노드 생성
  2221. multiCnt = ds_main_m_opmi_opmi.rowcount;
  2222. var check = "N";
  2223. for (var i = 0; i < multiCnt; i++) {
  2224. if (ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt") != 0) {
  2225. for (var inner = 0; inner < multiCnt; inner++) {
  2226. if (ds_main_h_card_card.getColumn(inner, "card_mseqno") == ds_main_m_opmi_opmi.getColumn(i, "opmi_mseqno")
  2227. && ds_main_h_card_card.getColumn(inner, "card_aprvno") == ds_main_card2.getColumn(0, "card_aprvno")) {
  2228. check = "Y";
  2229. break;
  2230. } else {
  2231. check = "N";
  2232. }
  2233. }
  2234. if (check != "N") {
  2235. continue;
  2236. }
  2237. // 카드 승인 노드 생성
  2238. nodeCnt = ds_main_h_card_card.addRow();
  2239. ds_main_h_card_card.setColumn(nodeCnt, "card_mseqno", ds_main_m_opmi_opmi.getColumn(i, "opmi_mseqno"));
  2240. ds_main_h_card_card.copyRow(nodeCnt, ds_main_card2, 0);
  2241. ds_main_h_card_card.setColumn(nodeCnt, "card_pid", gPid);
  2242. ds_main_h_card_card.setColumn(nodeCnt, "card_innrtretyn", "N");
  2243. ds_main_h_card_card.setColumn(nodeCnt, "card_preamtyn", "N");
  2244. ds_main_h_card_card.setColumn(nodeCnt, "card_rcptdd", "");
  2245. ds_main_h_card_card.setColumn(nodeCnt, "card_rcptno", "");
  2246. if (eval(gMulticnt) > 1) {
  2247. ds_main_h_card_card.setColumn(nodeCnt, "card_cardamt", ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt"));
  2248. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", "0");
  2249. } else {
  2250. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", parseInt(ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt"))
  2251. - parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")));
  2252. }
  2253. }
  2254. }
  2255. } else {
  2256. nodeCnt = ds_main_h_card_card.addRow();
  2257. ds_main_h_card_card.copyRow(nodeCnt, ds_main_card2, 0);
  2258. ds_main_h_card_card.setColumn(nodeCnt, "card_pid", gPid);
  2259. ds_main_h_card_card.setColumn(nodeCnt, "card_innrtretyn", "N");
  2260. ds_main_h_card_card.setColumn(nodeCnt, "card_preamtyn", "N");
  2261. ds_main_h_card_card.setColumn(nodeCnt, "card_rcptdd", "");
  2262. ds_main_h_card_card.setColumn(nodeCnt, "card_rcptno", "");
  2263. }
  2264. }
  2265. } else if (ds_main_h_cvan_cvan.getColumn(row, "cvan_aprvflag") == "22") { // 신용카드취소
  2266. ds_main_card2.setColumn(0, "card_rcptstat", "D");
  2267. var aprvno = ds_main_card2.getColumn(0, "card_aprvno");
  2268. var multiCnt = 0;
  2269. var nodeCnt = ds_main_h_card_card.rowcount;
  2270. var nodeCnt2 = ds_main_h_card_card.rowcount;
  2271. if (eval(gMulticnt) > 0) {
  2272. multiCnt = ds_main_m_opmi_opmi.rowcount;
  2273. for (var i = 0; i < multiCnt; i++) {
  2274. for (var inner = 0; inner < nodeCnt2; inner++) {
  2275. if (ds_main_m_opmi_opmi.getColumn(i, "opmi_mseqno") == ds_main_h_card_card.getColumn(inner, "card_mseqno")
  2276. && aprvno == ds_main_h_card_card.getColumn(inner, "card_aprvno")
  2277. && ds_main_h_card_card.getColumn(inner, "card_rcptstat") == "Y") {
  2278. // 기존 카드노드 취소 처리
  2279. ds_main_h_card_card.setColumn(inner , "card_rcptstat", "C");
  2280. // 승인취소 노드 생성
  2281. nodeCnt = ds_main_h_card_card.addRow();
  2282. ds_main_h_card_card.copyRow(nodeCnt, ds_main_card2, 0);
  2283. ds_main_h_card_card.setColumn(nodeCnt, "card_mseqno", ds_main_m_opmi_opmi.getColumn(i, "opmi_mseqno"));
  2284. ds_main_h_card_card.setColumn(nodeCnt , "card_pid", gPid);
  2285. ds_main_h_card_card.setColumn(nodeCnt , "card_innrtretyn", "N");
  2286. ds_main_h_card_card.setColumn(nodeCnt , "card_preamtyn", "N");
  2287. ds_main_h_card_card.setColumn(nodeCnt , "card_rcptdd", "");
  2288. ds_main_h_card_card.setColumn(nodeCnt , "card_rcptno", "");
  2289. if (eval(gMulticnt) == 1) {
  2290. ds_main_h_card_card.setColumn(nodeCnt, "card_cardamt", parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")) * -1);
  2291. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", parseInt(ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt"))
  2292. - parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")));
  2293. } else {
  2294. ds_main_h_card_card.setColumn(nodeCnt, "card_cardamt", parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")) * -1);
  2295. ds_main_m_opmi_opmi.setColumn(i, "opmi_cashamt", parseInt(ds_main_m_opmi_opmi.getColumn(i, "opmi_cashamt"))
  2296. - parseInt(ds_main_h_card_card.getColumn(inner, "card_cardamt")));
  2297. }
  2298. break;
  2299. }
  2300. }
  2301. }
  2302. } else {
  2303. nodeCnt = ds_main_h_card_card.addRow();
  2304. ds_main_h_card_card.copyRow(nodeCnt, ds_main_card2, 0);
  2305. ds_main_h_card_card.setColumn(nodeCnt, "card_pid", gPid);
  2306. ds_main_h_card_card.setColumn(nodeCnt, "card_innrtretyn", "N");
  2307. ds_main_h_card_card.setColumn(nodeCnt, "card_preamtyn", "N");
  2308. ds_main_h_card_card.setColumn(nodeCnt, "card_rcptdd", "");
  2309. ds_main_h_card_card.setColumn(nodeCnt, "card_rcptno", "");
  2310. for (var i = 0; i < nodeCnt; i++) {
  2311. if (aprvno == ds_main_h_card_card.getColumn(i, "card_aprvno") && parseInt(ds_main_h_card_card.getColumn(i, "card_cardamt")) > 0) {
  2312. ds_main_h_card_card.setColumn(i, "card_rcptstat", "C");
  2313. ds_main_h_card_card.setColumn(nodeCnt, "card_cardamt", parseInt(ds_main_h_card_card.getColumn(i, "card_cardamt")) * -1);
  2314. }
  2315. }
  2316. }
  2317. }
  2318. }
  2319. fCardamtCalc();
  2320. fInit2();
  2321. return true;
  2322. }
  2323. function fAfterChangeCardNo() {
  2324. var val = group3.group2.ipt_cardno.text;
  2325. if (val.length > 16) {
  2326. // 16자리보다 크고 "="이 있으면 swipe
  2327. if (val.indexOf("=") > 0) {
  2328. var vSwipeData = "";
  2329. var vCardno_array = "";
  2330. var vCardno = "";
  2331. vSwipeData = val;
  2332. // swipe 시 첫글자에 ?
  2333. if (vSwipeData.indexOf("?") >= 0) {
  2334. vSwipeData = vSwipeData.substr(1, 37);
  2335. }
  2336. if (vSwipeData.indexOf("/") >= 0) {
  2337. vSwipeData = vSwipeData.substr(1, 37);
  2338. }
  2339. ds_main_card.setColumn(0, "swipedata", vSwipeData);
  2340. vCardno_array = vSwipeData.split("=");
  2341. vCardno = vCardno_array[0];
  2342. // swipe 시 첫글자에 ?
  2343. if (vCardno.indexOf("?") >= 0) {
  2344. vCardno = vCardno.substr(1, 16);
  2345. }
  2346. if (vCardno.indexOf("/") >= 0) {
  2347. vCardno = vCardno.substr(1, 16);
  2348. }
  2349. // 유효일자
  2350. var vValiterm = vCardno_array[1].substr(0, 4);
  2351. //ds_main_card2.enableevent = false;
  2352. ds_main_card2.setColumn(0, "card_cardno", vCardno);
  2353. //ds_main_card2.enableevent = true;
  2354. ds_main_card2.setColumn(0, "card_keyinptflag", "S");
  2355. ds_main_card2.setColumn(0, "card_valiterm", vValiterm);
  2356. ds_main_card2.setColumn(0, "card_allotmm", "00");
  2357. group3.group2.ipt_cardno.enableevent = false;
  2358. group3.group2.ipt_allotmm.setFocus();
  2359. group3.group2.ipt_cardno.enableevent = true;
  2360. }
  2361. } else if (val.length == 16) {
  2362. ds_main_card2.enableevent = false;
  2363. ds_main_card2.setColumn(0, "card_cardno", val);
  2364. ds_main_card2.enableevent = true;
  2365. ds_main_card2.setColumn(0, "card_keyinptflag", "K");
  2366. ds_main_card2.setColumn(0, "card_allotmm", "00");
  2367. group3.group2.ipt_valiterm.setFocus();
  2368. }
  2369. }
  2370. // 자동승인 IF용
  2371. function fAutoGetCardAprv() {
  2372. if (utlf_isNull(gPid) || gPid == " ") {
  2373. sysf_messageBox("등록번호가 정확히 전달되지 않았습니다. 환자정보를 다시 조회하신 후에 계속 진행하세요!", "E999", "");
  2374. return false;
  2375. }
  2376. if (!fApproveCard()) {
  2377. return false;
  2378. }
  2379. var totcardamt = parseInt(ds_main_card.getColumn(0, "totcardamt"));
  2380. m_opener.frmf_setParameter("SPPAO00400_RTN","Y");
  2381. m_opener.frmf_setParameter("SPPAO00400_TotCardAmt", totcardamt);
  2382. retValPam.rtn = "Y";
  2383. retValPam.TotCardAmt = totcardamt;
  2384. // 노드복사
  2385. fCopyCardNodes();
  2386. return true;
  2387. }
  2388. // 메인창에 카드 노드 복사
  2389. function fCopyCardNodes() {
  2390. if (!utlf_isNull(strRcv) && strRcv != " " && strRcv != "-") {
  2391. // 이동식 추가
  2392. // 2018/05/30 이정택 추가(건진관련추가)
  2393. if (String(gOrdtype).toUpperCase() == "O" || String(gOrdtype).toUpperCase() == "H") {
  2394. //외래의 경우 rcptstat = 'Y' 인 경우만 리턴
  2395. if (gRtnType == "A") {
  2396. strRcv.copyData(ds_main_h_card_card);
  2397. } else {
  2398. ds_main_h_card2_card.copyData(ds_main_h_card_card);
  2399. ds_main_h_card2_card.clearData();
  2400. var card2Cnt = 0;
  2401. for (var i = 0; i < ds_main_h_card_card.rowcount; i++) {
  2402. if (ds_main_h_card_card.getColumn(i, "card_rcptstat") == "Y") {
  2403. card2Cnt = ds_main_h_card2_card.addRow();
  2404. ds_main_h_card2_card.copyRow(card2Cnt, ds_main_h_card_card, i);
  2405. }
  2406. }
  2407. strRcv.copyData(ds_main_h_card2_card);
  2408. }
  2409. } else {
  2410. // 입원의 경우 새로 승인딴 노드만 리턴
  2411. ds_main_h_card2_card.copyData(ds_main_h_card_card);
  2412. ds_main_h_card2_card.clearData();
  2413. var card2Cnt = 0;
  2414. var rcptdd = "";
  2415. for (var i = 0; i < ds_main_h_card_card.rowcount; i++) {
  2416. var rcptdd = ds_main_h_card_card.getColumn(i, "card_rcptdd");
  2417. if (utlf_isNull(rcptdd) || rcptdd == " " || rcptdd == "-") {
  2418. card2Cnt = ds_main_h_card2_card.addRow();
  2419. ds_main_h_card2_card.copyRow(card2Cnt, ds_main_h_card_card, i);
  2420. }
  2421. }
  2422. strRcv.copyData(ds_main_h_card2_card);
  2423. }
  2424. }
  2425. }
  2426. // 취소
  2427. function fAutoCnclCardAprv() {
  2428. if (utlf_isNull(gPid) || gPid == " ") {
  2429. sysf_messageBox("등록번호가 정확히 전달되지 않았습니다. 환자정보를 다시 조회하신 후에 계속 진행하세요!", "E999", "");
  2430. return false;
  2431. }
  2432. rowCnt = ds_main_h_card_card.rowcount;
  2433. for (var i = 0; i < rowCnt; i++) {
  2434. ds_main_card2.enableevent = false;
  2435. ds_main_card2.clearData();
  2436. ds_main_card2.addRow();
  2437. ds_main_card2.copyRow(0, ds_main_h_card_card, i);
  2438. ds_main_card2.enableevent = true;
  2439. //멀티승인내역 체크
  2440. if (fIsMultiCardArpv(i)) {
  2441. sysf_messageBox("카드팝업창에서 수동으로 작업을 진행해 주세요.", "E999", "")
  2442. return false;
  2443. }
  2444. ds_main_h_card_card.rowposition = i;
  2445. // 카드취소로직 호출
  2446. if (!fCancelCard()) {
  2447. if (i == 0) {
  2448. return false;
  2449. } else {
  2450. sysf_messageBox("카드승인취소 도중 오류가 발생했습니다. 카드팝업창에서 수동으로 작업을 진행해 주세요.", "E999", "");
  2451. return "cnclError";
  2452. }
  2453. } else {
  2454. if (eval(gMulticnt) > 0) {
  2455. break;
  2456. }
  2457. }
  2458. }
  2459. var totcardamt = parseInt(ds_main_card.getColumn(0, "totcardamt"));
  2460. m_opener.frmf_setParameter("SPPAO00400_RTN", "Y");
  2461. m_opener.frmf_setParameter("SPPAO00400_TotCardAmt", totcardamt);
  2462. retValPam.rtn = "Y";
  2463. retValPam.TotCardAmt = totcardamt;
  2464. // 노드 복사
  2465. fCopyCardNodes();
  2466. return true;
  2467. }
  2468. // 카드취소 로직 함수 처리
  2469. function fCancelCard() {
  2470. if (ds_main_iptflag.getColumn(0, "cvancncl") != "Y") {
  2471. var currow = ds_main_h_card_card.rowposition;
  2472. if (parseInt(currow) < 0) {
  2473. sysf_messageBox("승인취소할 카드내역을 선택하십시요!", "E999", "");
  2474. return false;
  2475. }
  2476. // 마이너스 금액인 경우 이미 취소된 내역이므로 리턴
  2477. var card_cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  2478. card_cardamt = eval(card_cardamt);
  2479. if (ds_main_h_card_card.getColumn(currow, "card_rcptstat") == "D" || ds_main_h_card_card.getColumn(currow, "card_rcptstat") == "C") {
  2480. sysf_messageBox("이미 승인취소된 내역입니다!", "E999", "");
  2481. return false;
  2482. }
  2483. }
  2484. // 카드번호,카드회사,유효기간,결제금액,할부개월
  2485. var card_cardno = ds_main_card2.getColumn(0, "card_cardno");
  2486. if (utlf_isNull(card_cardno) || card_cardno == " " || card_cardno == "-") {
  2487. sysf_messageBox("카드번호가 미입력되었습니다!", "E999", "");
  2488. return false;
  2489. }
  2490. // KOCES_ICPOS의 경우 유효기간은 '-'값임 by 조중래 20160429
  2491. if (ds_main_iptflag.getColumn(0, "vanflag") != "KOCES_IC") {
  2492. var card_valiterm = ds_main_card2.getColumn(0, "card_valiterm");
  2493. if (utlf_isNull(card_valiterm) || card_valiterm == " " || card_valiterm == "-") {
  2494. sysf_messageBox("유효기간이 미입력되었습니다!", "E999", "");
  2495. return false;
  2496. }
  2497. }
  2498. var card_aprvdd = ds_main_card2.getColumn(0, "card_aprvdd");
  2499. if (utlf_isNull(card_aprvdd) || card_aprvdd == " " || card_aprvdd == "-") {
  2500. sysf_messageBox("승인일자가 미입력되었습니다!", "E999", "");
  2501. return false;
  2502. } else if (card_aprvdd < "20081003") {
  2503. sysf_messageBox("nU 이전 카드 승인내역은 취소할 수 없습니다. 현금반환하세요!!", "E999", "");
  2504. return false;
  2505. }
  2506. var card_aprvtm = ds_main_card2.getColumn(0, "card_aprvtm");
  2507. if (utlf_isNull(card_aprvtm) || card_aprvtm == " " || card_aprvtm == "-") {
  2508. sysf_messageBox("승인시간이 미입력되었습니다!", "E999", "");
  2509. return false;
  2510. }
  2511. var card_aprvno = ds_main_card2.getColumn(0, "card_aprvno");
  2512. if (utlf_isNull(card_aprvno) || card_aprvno == " " || card_aprvno == "-") {
  2513. sysf_messageBox("승인번호가 미입력되었습니다!", "E999", "");
  2514. return false;
  2515. }
  2516. var card_cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  2517. if (utlf_isNull(card_cardamt) || card_cardamt == " " || card_cardamt == "-") {
  2518. sysf_messageBox("카드금액이 미입력되었습니다!", "E999", "");
  2519. return false;
  2520. } else if (parseInt(card_cardamt) < 0) {
  2521. ds_main_card2.setColumn(0, "card_cardamt", parseInt(card_cardamt) * -1);
  2522. }
  2523. var card_allotmm = ds_main_card2.getColumn(0, "card_allotmm");
  2524. if (utlf_isNull(card_allotmm) || card_allotmm == " " || card_allotmm == "-") {
  2525. sysf_messageBox("할부개월이 미입력되었습니다!", "E999", "");
  2526. ds_main_card2.setColumn(0, "card_allotmm", "00");
  2527. return false;
  2528. }
  2529. // 실제 승인 취소
  2530. if (!fCnclCardAprv()) {
  2531. return false;
  2532. }
  2533. return true;
  2534. }
  2535. // 카드승인 로직 함수 처리
  2536. function fApproveCard() {
  2537. if (ds_main_iptflag.getColumn(0, "vanflag") != "KOCES_IC"
  2538. && ds_main_card2.getColumn(0, "card_keyinptflag") != "E") {
  2539. //카드번호,카드회사,유효기간,결제금액,할부개월
  2540. var cardno = ds_main_card2.getColumn(0, "card_cardno");
  2541. if (utlf_isNull(cardno) || cardno == " " || cardno == "-") {
  2542. sysf_messageBox("카드번호가 미입력되었습니다!", "E999", "");
  2543. return false;
  2544. }
  2545. var card_valiterm = ds_main_card2.getColumn(0, "card_valiterm");
  2546. if (utlf_isNull(card_valiterm) || card_valiterm == " " || card_valiterm == "-") {
  2547. sysf_messageBox("유효기간이 미입력되었습니다!", "E999", "");
  2548. return false;
  2549. }
  2550. }
  2551. var card_cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  2552. if (utlf_isNull(card_cardamt) || card_cardamt == " " || card_cardamt == "-") {
  2553. sysf_messageBox("카드금액이 미입력되었습니다!", "E999", "");
  2554. return false;
  2555. }
  2556. var card_allotmm = ds_main_card2.getColumn(0, "card_allotmm");
  2557. if (utlf_isNull(card_allotmm) || card_allotmm == " " || card_allotmm == "-") {
  2558. sysf_messageBox("할부개월이 미입력되었습니다!", "E999", "");
  2559. ds_main_card2.setColumn(0, "card_allotmm", "00");
  2560. return false;
  2561. }
  2562. // 할부개월 유효성 체크 추가 by 조중래 20130417
  2563. if (!(card_allotmm >= 0 && card_allotmm < 100)) {
  2564. sysf_messageBox("할부개월은 숫자만 입력가능합니다!", "E999", "");
  2565. return false;
  2566. }
  2567. // 승인 금액 체크
  2568. var recardaprv = ds_main_iptflag.getColumn(0, "recardaprv");
  2569. var card_cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  2570. if (recardaprv != "Y") {
  2571. if (parseInt(ds_main_card2.getColumn(0, "card_cardamt")) == 0) {
  2572. sysf_messageBox("결제금액이 0원입니다. 확인하시고 다시 카드승인하세요!", "E999", "");
  2573. return false;
  2574. }
  2575. } else if (recardaprv == "Y") {
  2576. var cardAmt = 0;
  2577. var cnt = ds_main_c_card_card.rowcount;
  2578. for (var i = 0; i < cnt; i++) {
  2579. cardAmt += parseInt(ds_main_c_card_card.getColumn(i, "card_cardamt"));
  2580. }
  2581. if (cardAmt != card_cardamt) {
  2582. sysf_messageBox("멀티카드수납내역을 변경_취소하기 위한 재승인인 경우에는 재승인할 카드승인금액 합과 결제 금액이 같아야 합니다.", "E999", "");
  2583. return false;
  2584. }
  2585. }
  2586. // 실제 카드 승인 및 승인 노드 생성
  2587. if (!fGetCardAprv()) {
  2588. return false;
  2589. }
  2590. return true;
  2591. }
  2592. function fIsMultiCardArpv(currow) {
  2593. var oParam = {};
  2594. oParam.id = "TRPAO00456";
  2595. oParam.service = "pamcomnapp.PamComn";
  2596. oParam.method = "reqGetMultiCardSpec";
  2597. oParam.inds = "req=ds_main_h_card_card";
  2598. oParam.outds = "ds_main_c_card_card=card";
  2599. oParam.async = false;
  2600. oParam.callback = "cf_TRPAO00456";
  2601. tranf_submit(oParam);
  2602. if (arErrorCode.pop("TRPAO00456") > -1) {
  2603. if (ds_main_c_card_card.rowcount > 0) {
  2604. // 실제 승인금액 세팅
  2605. ds_main_card.setColumn(0, "aprvcardamt", ds_main_c_card_card.getColumn(0, "card_totalaprvamt"));
  2606. var cCardCnt = ds_main_c_card_card.rowcount;
  2607. var hCardCnt = ds_main_h_card_card.rowcount;
  2608. var cRcptDD = "";
  2609. var cRcptNo = "";
  2610. var cRcptSeqNo = "";
  2611. var cAprvNo = "";
  2612. var checkValue = false;
  2613. ds_main_b_card_card.copyData(ds_main_c_card_card);
  2614. ds_main_b_card_card.clearData();
  2615. for (var cCard = 0; cCard < cCardCnt; cCard++) {
  2616. cRcptDD = ds_main_c_card_card.getColumn(cCard, "card_rcptdd");
  2617. cRcptNo = ds_main_c_card_card.getColumn(cCard, "card_rcptno");
  2618. cRcptSeqNo = ds_main_c_card_card.getColumn(cCard, "card_rcptseqno");
  2619. cAprvNo = ds_main_c_card_card.getColumn(cCard, "card_aprvno");
  2620. for (var hCard = 0; hCard < hCardCnt; hCard++) {
  2621. if (cRcptDD == ds_main_h_card_card.getColumn(hCard, "card_rcptdd")
  2622. && cRcptNo == ds_main_h_card_card.getColumn(hCard, "card_rcptno")
  2623. && cRcptSeqNo == ds_main_h_card_card.getColumn(hCard, "card_rcptseqno")
  2624. && cAprvNo == ds_main_h_card_card.getColumn(hCard, "card_aprvno")) {
  2625. checkValue = true;
  2626. break;
  2627. }
  2628. }
  2629. if (!checkValue) {
  2630. var rowCnt = ds_main_b_card_card.addRow();
  2631. ds_main_b_card_card.copyRow(rowCnt, ds_main_c_card_card, cCard);
  2632. checkValue = false;
  2633. } else {
  2634. checkValue = false;
  2635. }
  2636. }
  2637. ds_main_c_card_card.copyData(ds_main_b_card_card);
  2638. ds_main_b_card_card.clearData();
  2639. } else {
  2640. var totalAprvAmt = 0;
  2641. //실제 카드승인금액 세팅
  2642. for (var i = 0; i < ds_main_h_card_card.rowcount; i++) {
  2643. if (ds_main_h_card_card.getColumn(currow, "card_aprvno") == ds_main_h_card_card.getColumn(i, "card_aprvno")) {
  2644. totalAprvAmt += parseInt(ds_main_h_card_card.getColumn(i, "card_cardamt"));
  2645. }
  2646. }
  2647. ds_main_card.setColumn(0, "aprvcardamt", totalAprvAmt);
  2648. }
  2649. if (ds_main_c_card_card.rowcount > 0) {
  2650. sysf_messageBox("멀티 승인된 카드 내역입니다. 승인취소는 다른 승인내역들을 재 승인 후 가능합니다.", "I999", "");
  2651. // 재승인카드 탭 보이게 설정
  2652. lf_setTabPageVisble(group3.swt_cardlist, "case_card2", true);
  2653. //카드 승인할 금액세팅
  2654. var cardAmtSum = 0;
  2655. for (var i = 0; i < ds_main_c_card.rowcount; i++) {
  2656. cardAmtSum += parseInt(ds_main_c_card_card.getColumn(i, "card_cardamt"));
  2657. }
  2658. ds_main_card2.setColumn(0, "card_cardamt", cardAmtSum);
  2659. ds_main_card2.setColumn(0, "card_aprvdd", "");
  2660. ds_main_card2.setColumn(0, "card_aprvtm", "");
  2661. ds_main_card2.setColumn(0, "card_aprvno", "");
  2662. // 재승인 플래그 세팅
  2663. ds_main_iptflag.setColumn(0, "recardaprv", "Y");
  2664. group3.swt_cardlist.tabindex = 2;
  2665. } else {
  2666. // 재승인카드 탭 숨기기 설정;
  2667. lf_setTabPageVisble(group3.swt_cardlist, "case_card2", false);
  2668. //재승인 플래그 세팅
  2669. ds_main_iptflag.setColumn(0, "recardaprv", "");
  2670. return false;
  2671. }
  2672. } else {
  2673. //재승인카드 탭 숨기기 설정
  2674. lf_setTabPageVisble(group3.swt_cardlist, "case_card2", false);
  2675. //재승인 플래그 세팅
  2676. ds_main_iptflag.setColumn(0, "recardaprv", "");
  2677. return false;
  2678. }
  2679. return true;
  2680. }
  2681. function cf_TRPAO00456(sSvcId, nErrorCode, sErrorMsg) {
  2682. arErrorCode.push(sSvcId, nErrorCode);
  2683. }
  2684. function fCheckCardCncl(currow) {
  2685. ds_send_data01.copyData(ds_main_h_cvan_cvan);
  2686. ds_send_data01.clearData();
  2687. ds_send_data01.addRow();
  2688. ds_send_data01.copyRow(0, ds_main_h_cvan_cvan, currow);
  2689. var oParam = {};
  2690. oParam.id = "TRPAO00458";
  2691. oParam.service = "pamcomnapp.PamComn";
  2692. oParam.method = "reqGetCnclCvan";
  2693. oParam.inds = "req=ds_send_data01";
  2694. oParam.outds = "ds_main_c_cvan_cvan=c_cvan";
  2695. oParam.async = false;
  2696. oParam.callback = "cf_TRPAO00458";
  2697. tranf_submit(oParam);
  2698. if (arErrorCode.pop("TRPAO00458") > -1) {
  2699. if (ds_main_c_cvan_cvan.rowcount > 0) {
  2700. sysf_messageBox("이미 승인취소된 내역입니다. 취소여부를 확인 후 다시 시도해 주세요!", "I999", "");
  2701. return false;
  2702. } else {
  2703. return true;
  2704. }
  2705. }
  2706. }
  2707. function cf_TRPAO00458(sSvcId, nErrorCode, sErrorMsg) {
  2708. arErrorCode.push(sSvcId, nErrorCode);
  2709. }
  2710. function SPPAO00400_onload(obj:Form, e:LoadEventInfo) {
  2711. frmf_initForm(obj);
  2712. m_opener = frmf_getoOpener();
  2713. grdf_initGrid(this.group3.swt_cardlist.case_card.grd_card);
  2714. grdf_initGrid(this.group3.swt_cardlist.case_card2.grd_card2);
  2715. grdf_initGrid(this.group3.swt_cardlist.case_cvan.grd_cvan);
  2716. lf_setTabPageVisble(group3.swt_cardlist, "case_card", false);
  2717. lf_setTabPageVisble(group3.swt_cardlist, "case_card2", false);
  2718. if (frmf_checkOpener()) {
  2719. gFLAG = m_opener.frmf_getParameter("SPPAO00400_FLAG");
  2720. if (gFLAG == "I") {
  2721. //
  2722. } else if (gFLAG == 'D') {
  2723. //
  2724. } else {
  2725. fInit();
  2726. }
  2727. }
  2728. }
  2729. function SPPAO00400_onclose(obj:Form, e:CloseEventInfo) {
  2730. if (frmf_checkOpener()) {
  2731. var SPPAO00400_RTN = m_opener.frmf_getParameter("SPPAO00400_RTN");
  2732. var totcardamt = parseInt(ds_main_card.getColumn(0, "totcardamt"));
  2733. if (SPPAO00400_RTN != "Y") {
  2734. if (ExistCardCount != ds_main_h_card_card.rowcount) {
  2735. m_opener.frmf_setParameter("SPPAO00400_RTN", "Y");
  2736. m_opener.frmf_setParameter("SPPAO00400_TotCardAmt",totcardamt);
  2737. return false;
  2738. }
  2739. }
  2740. }
  2741. }
  2742. function group3_group2_img1_onclick(obj:ImageViewer, e:ClickEventInfo) {
  2743. group3.group2.tar_sms.visible = !group3.group2.tar_sms.visible;
  2744. }
  2745. function group3_group2_btn_clear_onclick(obj:Button, e:ClickEventInfo) {
  2746. fInit2();
  2747. }
  2748. function group3_group2_btn_cardaprv_onclick(obj:Button, e:ClickEventInfo) {
  2749. //수납자 마감여부 체크하여 처리
  2750. if (isMagmAprv()) {
  2751. return false; //마감결제 완료되어있으므로 더이상 진행하지 않음
  2752. }
  2753. // 최소금액체크
  2754. // if (ds_main_card2.getColumn(0, "card_cardamt") < 1000) {
  2755. // sysf_messageBox("1,000원미만 금액은 카드결제 할 수 없습니다.", "C000");
  2756. // return;
  2757. // }
  2758. gMyCard = "Y";
  2759. if (utlf_isNull(gPid) || gPid == " ") {
  2760. sysf_messageBox("등록번호가 정확히 전달되지 않았습니다. 창을 닫고 환자정보를 다시 조회하신 후에 계속 진행하세요!", "E999", "");
  2761. return false;
  2762. }
  2763. // 승인 내역 취소 체크 선택
  2764. var cardaprvYN = ds_main_iptflag.getColumn(0, "cardaprv");
  2765. ds_main_iptflag.setColumn(0, "cvancncl", "N");
  2766. group3_swt_cardlist_case_cvan_checkbox2_onchanged(null, null);
  2767. ds_main_iptflag.setColumn(0, "cardaprv", cardaprvYN);
  2768. // 강제 카드 결제
  2769. if (ds_main_iptflag.getColumn(0, "cardaprv") == "Y") {
  2770. if (!fForceCardAprv("I")) {
  2771. return false;
  2772. }
  2773. ds_main_iptflag.setColumn(0, "cardaprv", "");
  2774. return true;
  2775. }
  2776. // 승인 내역 취소
  2777. if (ds_main_iptflag.getColumn(0, "cvancncl") == "Y") {
  2778. sysf_messageBox("'승인내역취소'을 선택하고 카드승인을 할 수 없습니다. 선택 해제하고 다시 시도하세요!", "E999", "");
  2779. ds_main_card2.clearData(); ds_main_card2.addRow();
  2780. return false;
  2781. } else { //정상승인
  2782. // 멀티 접수 변경_취소 시 재승인 체크
  2783. if (ds_main_iptflag.getColumn(0, "recardaprv") == "Y") {
  2784. var row = ds_main_c_card_card.rowposition;
  2785. if (ds_main_card2.getColumn(0, "card_rcptdd") != ds_main_c_card_card.getColumn(row, "card_rcptdd")
  2786. || ds_main_card2.getColumn(0, "card_rcptno") != ds_main_c_card_card.getColumn(row, "card_rcptno")
  2787. || ds_main_card2.getColumn(0, "card_aprvno") != ds_main_c_card_card.getColumn(row, "card_aprvno")) {
  2788. sysf_messageBox("멀티접수내역 변경_취소 시 재승인이 먼저 입니다. 재승인할 카드 노드를 정확히 선택해 주세요.", "E999", "");
  2789. return false;
  2790. }
  2791. }
  2792. if (!fApproveCard()) {
  2793. return false;
  2794. }
  2795. }
  2796. ds_send.clear();
  2797. dsf_createDsRow("ds_send", [{col:"cvan_pid", type:"STRING", size:256, val: gPid}
  2798. , {col:"cvan_aprvdd", type:"STRING", size:256, val: ""}
  2799. , {col:"cvan_aprvsrchflag", type:"STRING", size:256, val: "-"}
  2800. , {col:"cvan_ioflag", type:"STRING", size:256, val: ds_main_iptflag.getColumn(0, "ioflag")}
  2801. , {col:"cvan_pregdmndyn", type:"STRING", size:256, val: gPregDmndYN}]);
  2802. var oParam = {};
  2803. oParam.id = "TRPAO00453";
  2804. oParam.service = "pamcomnapp.PamComn";
  2805. oParam.method = "reqGetCardVanNew";
  2806. oParam.inds = "req=ds_send";
  2807. oParam.outds = "ds_main_h_cvan_cvan=h_cvan";
  2808. oParam.async = false;
  2809. oParam.callback = "cf_TRPAO00453";
  2810. tranf_submit(oParam);
  2811. if (arErrorCode.pop("TRPAO00453") < 0 ) {
  2812. sysf_messageBox("VAN정보를 가져오지 못했습니다. 승인된 VAN내역을 확인하시려면 [VAN정보]탭의 '승인내역조회'를 해주세요.", "E999","");
  2813. return false;
  2814. }
  2815. fCardamtCalc();
  2816. fInit2();
  2817. }
  2818. function group3_group2_btn_cardcncl_onclick(obj:Button, e:ClickEventInfo) {
  2819. // 수납자 마감여부 체크하여 처리
  2820. if (isMagmAprv()) {
  2821. return false;
  2822. }
  2823. // 승인취소의 경우 해당 검색결과에 대한 진료구분을 설정
  2824. // (화면호출 시 전달된 파라미터로 처리하지 않음)
  2825. if (ds_main_card2.getColumn(0, "card_ordtype") == "H") {
  2826. gOrdtype = "H";
  2827. } else if (ds_main_card2.getColumn(0, "card_ordtype") == "O") {
  2828. gOrdtype = "O";
  2829. } else if (ds_main_card2.getColumn(0, "card_ordtype") == "E") {
  2830. gOrdtype = "E";
  2831. } else {
  2832. gOrdtype = "I";
  2833. }
  2834. gMyCard = "Y";
  2835. if (utlf_isNull(gPid) || gPid == " ") {
  2836. sysf_messageBox("등록번호가 정확히 전달되지 않았습니다. 창을 닫고 환자정보를 다시 조회하신 후에 계속 진행하세요!", "E999", "");
  2837. return false;
  2838. }
  2839. // 강제 카드 결제
  2840. if (ds_main_iptflag.getColumn(0, "cardaprv") == "Y") {
  2841. if (!fForceCardAprv("D")) {
  2842. return false;
  2843. }
  2844. ds_main_iptflag.setColumn(0, "cardaprv", "");
  2845. return true;
  2846. }
  2847. // 멀티접수 변경_취소 시 재승인 체크
  2848. if (ds_main_iptflag.getColumn(0, "recardaprv") == "Y") {
  2849. sysf_messageBox("멀티접수내역 변경_취소 시 재승인이 먼저 입니다.", "E999", "");
  2850. return false;
  2851. }
  2852. // 멀티접수인 경우 카드내역 삭제시 일괄 삭제
  2853. var aprvno = ds_main_h_card_card.getColumn(ds_main_h_card_card.rowposition, "card_aprvno");
  2854. if (eval(gMulticnt) > 1 && ds_main_iptflag.getColumn(0, "cvancncl") != "Y" && ds_main_h_card_card.getCaseCount("card_aprvno == '" + aprvno + "'") > 1) {
  2855. var result = sysf_messageBox("멀티접수인 경우 카드내역 전체를 승인취소합니다 진행", "S001", "");
  2856. if (result != "6") {
  2857. return false;
  2858. }
  2859. }
  2860. // 승인 내역 취소
  2861. if (ds_main_iptflag.getColumn(0, "cvancncl") == "Y") {
  2862. // 강제승인할 van 정보가 선택되었는지 확인
  2863. if (ds_main_h_cvan_cvan.getColumn(ds_main_h_cvan_cvan.rowposition, "cvan_aprvno") != ds_main_card2.getColumn(0, "card_aprvno")) {
  2864. sysf_messageBox("van정보를 선택하지 않으셨습니다. 선택 후 다시 시도하세요!", "E999", "");
  2865. ds_main_card2.clearData(); ds_main_card2.addRow();
  2866. return false;
  2867. } else if (ds_main_h_cvan_cvan.getColumn(ds_main_h_cvan_cvan.rowposition, "cvan_aprvflag") != "12") { // 신용카드취소
  2868. sysf_messageBox("선택하신 van정보는 승인취소할 수 없습니다. 이미 승인취소된 내역인지 확인하신 후 다시 시도하세요!", "E999", "");
  2869. ds_main_card2.clearData(); ds_main_card2.addRow();
  2870. return false;
  2871. }
  2872. // 승인취소로직 호출
  2873. if (!fCancelCard()) {
  2874. return false;
  2875. }
  2876. //20191125 고영민 (칠곡)승인취소 시 승인취소안내문자발송 자동체크
  2877. if(sysf_getUserInfo("dutplceinstcd") == "032"){
  2878. ds_hidden.setColumn(0, "smsflag", "true");
  2879. }
  2880. if (ds_hidden.getColumn(0, "smsflag") == "true") {
  2881. var oParam = {};
  2882. oParam.id = "TXPAO00456";
  2883. oParam.service = "pamcomnapp.PamComn";
  2884. oParam.method = "reqSendCardCnclSMS";
  2885. oParam.inds = "req=ds_send_sms";
  2886. oParam.async = false;
  2887. oParam.callback = "cf_TXPAO00456";
  2888. tranf_submit(oParam);
  2889. }
  2890. } else {
  2891. if (String(gOrdtype).toUpperCase() == "O" || gFLAG == "D" || gFLAG == "H") {
  2892. // 승인취소로직 호출
  2893. if (!fCancelCard()) {
  2894. return false;
  2895. }
  2896. } else { // 입원일 경우 카드내역 승인취소 불가
  2897. sysf_messageBox("입원 카드내역의 승인취소는 '수납취소' 또는 '카드변경'을 이용하십시요!", "E999", "");
  2898. ds_main_card2.clearData(); ds_main_card2.addRow();
  2899. return false;
  2900. }
  2901. }
  2902. ds_send.clear();
  2903. dsf_createDsRow("ds_send", [{col:"cvan_pid", type:"STRING", size:256, val: gPid}
  2904. , {col:"cvan_aprvdd", type:"STRING", size:256, val: ""}
  2905. , {col:"cvan_aprvsrchflag", type:"STRING", size:256, val: "-"}
  2906. , {col:"cvan_ioflag", type:"STRING", size:256, val: ds_main_iptflag.getColumn(0, "ioflag")}
  2907. , {col:"cvan_pregdmndyn", type:"STRING", size:256, val: gPregDmndYN}]);
  2908. var oParam = {};
  2909. oParam.id = "TRPAO00453";
  2910. oParam.service = "pamcomnapp.PamComn";
  2911. oParam.method = "reqGetCardVanNew";
  2912. oParam.inds = "req=ds_send";
  2913. oParam.outds = "ds_main_h_cvan_cvan=h_cvan";
  2914. oParam.async = false;
  2915. oParam.callback = "cf_TRPAO00453";
  2916. tranf_submit(oParam);
  2917. if (arErrorCode.pop("TRPAO00453") < 0) {
  2918. sysf_messageBox("VAN정보를 가져오지 못했습니다. 승인된 VAN내역을 확인하시려면 [VAN정보]탭의 '승인내역조회'를 해주세요.", "E999", "");
  2919. return false;
  2920. } else {
  2921. // van 승인취소 후 카드전표 자동출력 기능 추가
  2922. var sAutoPrintYN = ds_init_pam_init_P0022list.lookup("cdid", "300", "cdnm");
  2923. if (sAutoPrintYN == "Y") {
  2924. for (var idx = 0 ; idx < ds_main_h_cvan_cvan.rowcount; idx++) {
  2925. if (gAutoPrintPid == ds_main_h_cvan_cvan.getColumn(idx, "cvan_pid")
  2926. && gAutoPrintCardno == ds_main_h_cvan_cvan.getColumn(idx, "cvan_cardno")
  2927. && gAutoPrintAprvno == ds_main_h_cvan_cvan.getColumn(idx, "cvan_aprvno")
  2928. && gAutoPrintOrdtype == ds_main_h_cvan_cvan.getColumn(idx, "cvan_ordtype")
  2929. && "22" == ds_main_h_cvan_cvan.getColumn(idx, "cvan_aprvflag")) {
  2930. ds_main_h_cvan_cvan.rowposition = idx;
  2931. grp_btn_button3_onclick(null, null);
  2932. gAutoPrintPid = "";
  2933. gAutoPrintCardno = "";
  2934. gAutoPrintAprvno = "";
  2935. gAutoPrintOrdtype = "";
  2936. break;
  2937. }
  2938. }
  2939. }
  2940. }
  2941. fCardamtCalc();
  2942. fInit2();
  2943. }
  2944. function group3_group2_btn_makecardaprv_onclick(obj:Button, e:ClickEventInfo) {
  2945. fMakeCardAprvSpec();
  2946. }
  2947. function group3_group2_ipt_cardno_onkeydown(obj:Edit, e:KeyEventInfo) {
  2948. if (e.keycode == 13) {
  2949. obj.updateToDataset();
  2950. fAfterChangeCardNo();
  2951. }
  2952. }
  2953. function group3_group2_ipt_valiterm_onkillfocus(obj:Edit, e:KillFocusEventInfo) {
  2954. group3.group2.ipt_allotmm.setFocus();
  2955. }
  2956. function group3_group2_ipt_cardamt_onkeydown(obj:MaskEdit, e:KeyEventInfo) {
  2957. if (e.keycode == 13) {
  2958. group3.group2.input5.setFocus();
  2959. group3.group2.ipt_cardamt.setFocus();
  2960. }
  2961. }
  2962. function group3_group2_ipt_cardamt_ontextchanged(obj:MaskEdit, e:TextChangedEventInfo) {
  2963. // 계산금액 표시
  2964. var subtotalamt = parseInt(ds_main_card.getColumn(0, "totrcptamt"))
  2965. - parseInt(ds_main_card.getColumn(0, "totcardamt"))
  2966. - parseInt(obj.value);
  2967. ds_main_card.setColumn(0, "subtotalamt", subtotalamt);
  2968. }
  2969. /* 이정택 주석처리(2018/05/29)
  2970. function group3_group1_cmb_vanflag_onitemchanged(obj:Radio, e:ItemChangeEventInfo) {
  2971. // 강제로 KOCES를 선택한 경우 싸인패드 종류도 함께 설정
  2972. if (ds_main_iptflag.getColumn(0, "vanflag") == "KOCES") {
  2973. sysf_setGlobalVariable("SPPAO02102_signpad_kind","KSP-9070", "p");
  2974. } else {
  2975. sysf_setGlobalVariable("SPPAO02102_signpad_kind","kovan-K700PSR","p");
  2976. }
  2977. }
  2978. */
  2979. function group3_swt_cardlist_case_cvan_checkbox2_onchanged(obj:CheckBox, e:CheckBoxChangeEventInfo) {
  2980. ds_main_iptflag.setColumn(0, "cardaprv", "");
  2981. ds_main_iptflag.setColumn(0, "cardedit", "");
  2982. group3.group2.btn_makecardaprv.visible = false;
  2983. group3.group2.btn_cardaprv.visible = true;
  2984. group3.group2.btn_cardcncl.visible = true;
  2985. if (ds_main_iptflag.getColumn(0, "cvancncl") == "Y") {
  2986. group3.group2.btn_cardaprv.enable = false;
  2987. } else {
  2988. group3.group2.btn_cardaprv.enable = true;
  2989. }
  2990. }
  2991. function group3_swt_cardlist_case_cvan_checkbox1_onchanged(obj:CheckBox, e:CheckBoxChangeEventInfo) {
  2992. ds_main_iptflag.setColumn(0, "cardaprv", "");
  2993. ds_main_iptflag.setColumn(0, "cvancncl", "");
  2994. group3.group2.btn_cardaprv.enable = true;
  2995. if (ds_main_iptflag.getColumn(0, "cardedit") == "Y") {
  2996. group3.group2.btn_makecardaprv.visible = true;
  2997. group3.group2.btn_cardaprv.visible = false;
  2998. group3.group2.btn_cardcncl.visible = false;
  2999. } else {
  3000. group3.group2.btn_makecardaprv.visible = false;
  3001. group3.group2.btn_cardaprv.visible = true;
  3002. group3.group2.btn_cardcncl.visible = true;
  3003. }
  3004. }
  3005. function group3_swt_cardlist_case_cvan_grd_cvan_oncellclick(obj:Grid, e:GridClickEventInfo) {
  3006. var currow = e.row;
  3007. if (e.row < 0 || e.col < 0) {
  3008. return false;
  3009. }
  3010. //승인내역취소 체크 선택
  3011. ds_main_iptflag.setColumn(0, "cvancncl", "Y");
  3012. group3_swt_cardlist_case_cvan_checkbox2_onchanged(null, null);
  3013. var onlyCard = ds_main_iptflag.getColumn(0, "cardedit");
  3014. var cVanCncl = ds_main_iptflag.getColumn(0, "cvancncl");
  3015. // 승인 내역 취소
  3016. if (cVanCncl == "Y") {
  3017. if (ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvflag") == "22") {
  3018. sysf_messageBox("승인취소 내역은 '승인내역취소' 불가능합니다.", "E999", "");
  3019. return false;
  3020. } else {
  3021. if (fCheckCardCncl(currow) != true) {
  3022. fInit2();
  3023. return false;
  3024. }
  3025. }
  3026. }
  3027. if (onlyCard == "Y" || cVanCncl == "Y") {
  3028. // 카드 승인 내역 초기화
  3029. ds_main_card2.clearData();
  3030. dsf_makeValue(ds_main_card2, "card_pid", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_pid"));
  3031. dsf_makeValue(ds_main_card2, "card_rcptdd", "string", "");
  3032. dsf_makeValue(ds_main_card2, "card_rcptno", "string", "");
  3033. dsf_makeValue(ds_main_card2, "card_rcptseqno", "string", "");
  3034. dsf_makeValue(ds_main_card2, "card_seqno", "string", "");
  3035. dsf_makeValue(ds_main_card2, "card_instcd", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_instcd"));
  3036. dsf_makeValue(ds_main_card2, "card_rcptstat", "string", "");
  3037. dsf_makeValue(ds_main_card2, "card_ordtype", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_ordtype"));
  3038. dsf_makeValue(ds_main_card2, "card_keyinptflag", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_keyinptflag"));
  3039. dsf_makeValue(ds_main_card2, "card_cardcmpycd", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_cardcmpycd"));
  3040. dsf_makeValue(ds_main_card2, "card_cardno", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_cardno"));
  3041. dsf_makeValue(ds_main_card2, "card_aprvflag", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvflag"));
  3042. dsf_makeValue(ds_main_card2, "card_aprvdd", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvdd"));
  3043. dsf_makeValue(ds_main_card2, "card_aprvtm", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvtm"));
  3044. dsf_makeValue(ds_main_card2, "card_aprvno", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvno"));
  3045. dsf_makeValue(ds_main_card2, "card_vancd", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_vancd"));
  3046. dsf_makeValue(ds_main_card2, "card_allotmm", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_allotmm"));
  3047. dsf_makeValue(ds_main_card2, "card_cardamt", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_cardamt"));
  3048. dsf_makeValue(ds_main_card2, "card_valiterm", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_valiterm"));
  3049. dsf_makeValue(ds_main_card2, "card_rcptexecdd", "string", "");
  3050. dsf_makeValue(ds_main_card2, "card_rcpttm", "string", "");
  3051. dsf_makeValue(ds_main_card2, "card_rcptrid", "string", "");
  3052. dsf_makeValue(ds_main_card2, "card_innrtretyn", "string", "N");
  3053. dsf_makeValue(ds_main_card2, "card_preamtyn", "string", "N");
  3054. dsf_makeValue(ds_main_card2, "card_remfact", "string", "");
  3055. dsf_makeValue(ds_main_card2, "card_fstrgstrid", "string", "");
  3056. dsf_makeValue(ds_main_card2, "card_fstrgstdt", "string", "");
  3057. dsf_makeValue(ds_main_card2, "card_lastupdtrid", "string", "");
  3058. dsf_makeValue(ds_main_card2, "card_lastupdtdt", "string", "");
  3059. //2018/05/11 이정택 추가
  3060. dsf_makeValue(ds_main_card2, "card_aprvunino", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvunino"));
  3061. //2018/05/11 이정택 추가
  3062. //2018/05/29 이정택 추가
  3063. ds_main_iptflag.setColumn(0, "cnclvanflag", ds_init_pam_init_P6602list.lookup("remark", ds_main_h_cvan_cvan.getColumn(currow, "cvan_vancd"), "cdnm"));
  3064. //2018/05/29 이정택 추가
  3065. //2018/06/19 이정택 추가
  3066. dsf_makeValue(ds_main_card2, "card_trmnno", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_trmnno"));
  3067. //2018/06/19 이정택 추가
  3068. //2018/08/03 이정택 추가
  3069. dsf_makeValue(ds_main_card2, "card_cardtype", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_cardtype"));
  3070. //2018/08/03 이정택 추가
  3071. // 실제 카드승인금액 세팅
  3072. ds_main_card.setColumn(0, "aprvcardamt", ds_main_h_cvan_cvan.getColumn(currow, "cvan_cardamt"));
  3073. // van 승인취소 후 카드전표 자동출력 기능 추가
  3074. var sAutoPrintYN = ds_init_pam_init_P0022list.lookup("cdid", "300", "cdnm");
  3075. if (sAutoPrintYN == "Y") {
  3076. gAutoPrintPid = ds_main_h_cvan_cvan.getColumn(currow, "cvan_pid");
  3077. gAutoPrintCardno = ds_main_h_cvan_cvan.getColumn(currow, "cvan_cardno");
  3078. gAutoPrintAprvno = ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvno");
  3079. gAutoPrintOrdtype = ds_main_h_cvan_cvan.getColumn(currow, "cvan_ordtype");
  3080. }
  3081. // 안내문자 정보 조회
  3082. ds_send_sms.setColumn(0, "cardamt", ds_main_card2.getColumn(0, "card_cardamt"));
  3083. var oParam = {};
  3084. oParam.id = "TRPAO00459";
  3085. oParam.service = "pamcomnapp.PamComn";
  3086. oParam.method = "reqGetSMSInfo";
  3087. oParam.inds = "req=ds_send_sms";
  3088. oParam.outds = "ds_hidden_smsinfo=smsinfo";
  3089. oParam.async = false;
  3090. tranf_submit(oParam);
  3091. }
  3092. }
  3093. function group3_swt_cardlist_case_card_grd_card_oncellclick(obj:Grid, e:GridClickEventInfo) {
  3094. var currow = e.row;
  3095. if (currow < 0) return;
  3096. ds_main_card2.enableevent = false;
  3097. //ds_main_card2.copyData(ds_main_h_card_card);
  3098. ds_main_card2.clearData();
  3099. ds_main_card2.addRow();
  3100. ds_main_card2.copyRow(0, ds_main_h_card_card, currow);
  3101. ds_main_card2.enableevent = true;
  3102. // 승인 내역 취소 체크 선택
  3103. ds_main_iptflag.setColumn(0, "cvancncl", "N");
  3104. group3_swt_cardlist_case_cvan_checkbox2_onchanged(null, null);
  3105. if (!fIsMultiCardArpv(currow)) {
  3106. return false;
  3107. }
  3108. }
  3109. function group3_swt_cardlist_case_card2_checkbox3_onchanged(obj:CheckBox, e:CheckBoxChangeEventInfo) {
  3110. ds_main_iptflag.setColumn( 0, "cvancncl", "");
  3111. group3_swt_cardlist_case_cvan_checkbox2_onchanged(null, null);
  3112. }
  3113. function group3_swt_cardlist_case_card2_button2_onclick(obj:Button, e:ClickEventInfo) {
  3114. if (ds_main_iptflag.getColumn(0, "recardaprv") == "Y") {
  3115. var oParam = {};
  3116. oParam.id = "TXPAO00454";
  3117. oParam.service = "opatmngtapp.OPatMngt";
  3118. oParam.method = "reqSetMultiCard";
  3119. oParam.inds = "req=ds_main_c_card_card";
  3120. oParam.outds = "";
  3121. oParam.async = false;
  3122. oParam.callback = "cf_TXPAO00454";
  3123. tranf_submit(oParam);
  3124. if (arErrorCode.pop("TXPAO00454") > -1) {
  3125. ds_main_iptflag.setColumn(0, "recardaprv", "");
  3126. sysf_messageBox("카드승인 정보를 저장 완료했습니다.", "E999", "");
  3127. group3.swt_cardlist.case_card2.button2.visible = false;
  3128. } else {
  3129. sysf_messageBox("카드승인 정보를 서버에 저장하는데 실패했습니다. 잠시 후에 다시 시도하거나, 담당자에게 문의하세요!", "E999", "");
  3130. return false;
  3131. }
  3132. }
  3133. }
  3134. function grp_btn_btn_confirm_onclick(obj:Button, e:ClickEventInfo) {
  3135. var totrcptamt = parseInt(ds_main_card.getColumn(0, "totrcptamt"));
  3136. var totcardamt = parseInt(ds_main_card.getColumn(0, "totcardamt"));
  3137. if (ExistCardCount == ds_main_h_card_card.rowcount) {
  3138. // 변경사항이 없을 경우
  3139. m_opener.frmf_setParameter("SPPAO00400_RTN", "N");
  3140. } else {
  3141. m_opener.frmf_setParameter("SPPAO00400_RTN", "Y");
  3142. m_opener.frmf_setParameter("SPPAO00400_TotCardAmt", totcardamt);
  3143. }
  3144. this.close(retValPam);
  3145. }
  3146. function grp_btn_btn_cancel_onclick(obj:Button, e:ClickEventInfo) {
  3147. m_opener.frmf_setParameter("SPPAO00400_RTN", "N");
  3148. retValPam.rtn = "N";
  3149. this.close(retValPam);
  3150. }
  3151. function grp_btn_button3_onclick(obj:Button, e:ClickEventInfo) {
  3152. //선택후 출력하도록 체크
  3153. var currow = ds_main_h_cvan_cvan.rowposition;
  3154. if (currow < 0) {
  3155. sysf_messageBox("내역을 선택하신 후에 출력하십시요!", "E999", "");
  3156. return false;
  3157. }
  3158. ds_temp_receipt.clearData();
  3159. dsf_makeValue(ds_temp_receipt, "pid", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_pid"));
  3160. dsf_makeValue(ds_temp_receipt, "aprvflag", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvflag"));
  3161. dsf_makeValue(ds_temp_receipt, "aprvdd", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvdd"));
  3162. dsf_makeValue(ds_temp_receipt, "aprvtm", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvtm"));
  3163. dsf_makeValue(ds_temp_receipt, "aprvno", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_aprvno"));
  3164. dsf_makeValue(ds_temp_receipt, "ordtype", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_ordtype"));
  3165. dsf_makeValue(ds_temp_receipt, "instcd", "string", ds_main_h_cvan_cvan.getColumn(currow, "cvan_instcd"));
  3166. dsf_makeValue(ds_temp_receipt, "ordtype", "string", "카드전표재출력");
  3167. var objArg = new Object();
  3168. objArg.ds_temp_SPPAO01900 = ds_temp_receipt;
  3169. frmf_modal("SPPAO01900", "SPPAO01900", objArg, "", 1, 200, 200, "", "", "", "", "", "M");
  3170. }
  3171. function group3_group1_chk_onlycard_onclick(obj:CheckBox, e:ClickEventInfo) {
  3172. var onlycard = ds_main_iptflag.getColumn(0, "cardaprv");
  3173. if (onlycard == "Y") {
  3174. sysf_messageBox("강제카드결제를 선택 하셨습니다. \nVAN정보를 정확히 입력하신 후 '카드승인' 또는 '승인취소' 버튼을 누르세요.", "I999", "");
  3175. ds_main_card2.setColumn(0, "card_keyinptflag", "K");
  3176. } else {
  3177. sysf_messageBox("강제카드결제를 선택해제 하셨습니다. \n실제 '카드승인' 또는 '승인취소' 합니다.", "I999", "");
  3178. }
  3179. group3.swt_cardlist.case_cvan.checkbox2.enableevent = false;
  3180. ds_main_iptflag.setColumn(0, "cvancncl", "");
  3181. group3.swt_cardlist.case_cvan.checkbox2.enableevent = true;
  3182. group3.group2.btn_cardaprv.enable = true;
  3183. ds_main_iptflag.setColumn(0, "cardedit", "");
  3184. group3.group2.btn_makecardaprv.visible = false;
  3185. group3.group2.btn_cardaprv.visible = true;
  3186. group3.group2.btn_cardcncl.visible = true;
  3187. }
  3188. /**
  3189. *
  3190. * @param obj
  3191. * @param e
  3192. */
  3193. function group3_swt_cardlist_case_cvan_button1_onclick(obj: Button, e: ClickEventInfo) {
  3194. //2007-12-26 이동식 추가 : 밴정보 조회
  3195. //model.resetInstanceNode("/root/send");
  3196. //fSubmitBefore();
  3197. //fSubmitAfter();
  3198. // model.setValue("/root/send/data1", gPid);
  3199. // model.setValue("/root/send/data2", model.getValue("/root/main/iptflag/aprvdd"));
  3200. // model.setValue("/root/send/data3", model.getValue("/root/main/iptflag/aprvsrchflag"));
  3201. // model.setValue("/root/send/data4", model.getValue("/root/main/iptflag/ioflag"));
  3202. // model.setValue("/root/send/data5", gPregDmndYN);
  3203. ds_send.clear();
  3204. dsf_createDsRow("ds_send", [
  3205. { col: "cvan_pid", type: "STRING", size: 256, val: gPid },
  3206. { col: "cvan_aprvdd", type: "STRING", size: 256, val: ds_main_iptflag.getColumn(0, 'aprvdd') },
  3207. { col: "cvan_aprvsrchflag", type: "STRING", size: 256, val: ds_main_iptflag.getColumn(0, 'aprvsrchflag') },
  3208. { col: "cvan_ioflag", type: "STRING", size: 256, val: ds_main_iptflag.getColumn(0, 'ioflag') },
  3209. { col: "cvan_pregdmndyn", type: "STRING", size: 256, val: gPregDmndYN }
  3210. ]);
  3211. var oParam = {};
  3212. oParam.id = "TRPAO00453";
  3213. oParam.service = "pamcomnapp.PamComn";
  3214. oParam.method = "reqGetCardVanNew";
  3215. oParam.inds = "req=ds_send";
  3216. oParam.outds = "ds_main_h_cvan_cvan=h_cvan";
  3217. oParam.async = false;
  3218. tranf_submit(oParam);
  3219. }
  3220. function ds_main_card2_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  3221. {
  3222. if(e.columnid == 'card_cardno'){
  3223. //fAfterChangeCardNo();
  3224. }
  3225. }
  3226. function group3_group2_ipt_allotmm_onkillfocus(obj:Edit, e:KillFocusEventInfo)
  3227. {
  3228. //group3.group2.ipt_cardamt.setFocus();
  3229. }
  3230. function group3_group2_ipt_cardno_onkillfocus(obj:Edit, e:KillFocusEventInfo)
  3231. {
  3232. fAfterChangeCardNo();
  3233. }
  3234. // 입력구분 처리용
  3235. function group3_group1_rdo_keyinptflag_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  3236. {
  3237. // 카드번호 제어 초기화
  3238. group3.group2.ipt_cardno.enable = true;
  3239. // 비대면결제의 경우 이지패스 등록정보 조회
  3240. if (obj.value == "E") {
  3241. var cardamt = ds_main_card2.getColumn(0, "card_cardamt");
  3242. // 할부개월 수 조회를 위한 금액 설정
  3243. if (cardamt == null || cardamt == 0) {
  3244. sysf_messageBox("이지패스 등록 할부개월 수를 조회하기 위해 \r\n금액을 반드시 입력해주십시오.", "C000");
  3245. // 입력구분 원복 및 카드번호 제어 해제
  3246. ds_main_card2.setColumn(0, "card_keyinptflag", e.prevalue);
  3247. return false;
  3248. }
  3249. ds_send_ezpass.setColumn(0, "unco_pid", gPid);
  3250. ds_send_ezpass.setColumn(0, "unco_uncoamt", cardamt);
  3251. var oParam = {};
  3252. oParam.id = "reqGetEzpassCardInfo";
  3253. oParam.service = "pamcomnapp.PamComn";
  3254. oParam.method = "reqGetEzpassCardInfo";
  3255. oParam.inds = "req=ds_send_ezpass";
  3256. oParam.outds = "ds_ezpass_info=ezpassinfo";
  3257. oParam.async = false;
  3258. tranf_submit(oParam);
  3259. // 이지패스 등록된 경우
  3260. if (ds_ezpass_info.rowcount > 0) {
  3261. var virtualcardno = utlf_transNullToEmpty(ds_ezpass_info.getColumn(0, "virtualcardno"));
  3262. // 외래 이지패스의 경우 리턴
  3263. if (utlf_isNull(virtualcardno)) {
  3264. sysf_messageBox("이지패스 신청은 되어있으나 비대면 결제용 토큰정보가 조회되지 않았습니다.\r\n이지패스 신청정보 확인 후 이용하시기 바랍니다.", "C000");
  3265. // 입력구분 원복
  3266. ds_main_card2.setColumn(0, "card_keyinptflag", e.prevalue);
  3267. return false;
  3268. }
  3269. // 카드번호에 토큰 설정
  3270. ds_main_card2.setColumn(0, "card_cardno", virtualcardno);
  3271. // 카드번호 제어설정
  3272. group3.group2.ipt_cardno.enable = false;
  3273. // 유효기간 설정
  3274. ds_main_card2.setColumn(0, "card_allotmm", ds_ezpass_info.getColumn(0, "allotmm"));
  3275. // 이지패스 조회 실패 시
  3276. } else {
  3277. sysf_messageBox("이지패스 등록정보가 조회되지 않았습니다.\r\n이지패스 신청 후 이용하시기 바랍니다.", "C000");
  3278. // 입력구분 원복
  3279. ds_main_card2.setColumn(0, "card_keyinptflag", e.prevalue);
  3280. }
  3281. }
  3282. }
  3283. ]]></Script>
  3284. </Form>
  3285. </FDL>