SMCPC00100_캠페인관리.xfdl 102 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMCPC00100" position="absolute 0 0 1200 790" titletext="캠페인 관리" oninit="SMCPC00100_oninit" onload="SMCPC00100_onload">
  5. <Layouts>
  6. <Layout>
  7. <MaskEdit id="ipt_cmpncd" taborder="57" position="absolute 594 423 699 442" mask="########" maskchar=" " type="string" trimtype="both" style="align:left middle;" anchor="left bottom"/>
  8. <Tab id="swt_trgt" taborder="12" tabindex="0" position="absolute 221 542 731 690" class="tab_Normal" anchor="left bottom">
  9. <Tabpages>
  10. <Tabpage id="trgt_case1">
  11. <Layouts>
  12. <Layout>
  13. <Static id="caption14" text="전송대상" class="cell_1" position="absolute 0 1 105 24"/>
  14. <Button id="btn_trsmtrgtdtmn" taborder="1" text="고객정보마이닝그룹" class="btn2" position="absolute 109 3 241 22" onclick="swt_trgt_trgt_case1_btn_trsmtrgtdtmn_onclick"/>
  15. <Grid id="grd_trsmtrgtlist" taborder="2" binddataset="ds_main_cmpn_trsmtrgtlist" useinputpanel="false" position="absolute 0 25 505 135" autoenter="select" cellsizingtype="col" onrbuttonup="swt_trgt_trgt_case1_grd_trsmtrgtlist_onrbuttonup" onkeyup="swt_trgt_trgt_case1_grd_trsmtrgtlist_onkeyup" oncloseup="swt_trgt_trgt_case1_grd_trsmtrgtlist_oncloseup">
  16. <Formats>
  17. <Format id="default">
  18. <Columns>
  19. <Column size="30"/>
  20. <Column size="175"/>
  21. <Column size="70"/>
  22. <Column size="85"/>
  23. <Column size="80"/>
  24. <Column size="60"/>
  25. <Column size="0"/>
  26. </Columns>
  27. <Rows>
  28. <Row size="24" band="head"/>
  29. <Row size="24"/>
  30. </Rows>
  31. <Band id="head">
  32. <Cell text="구분"/>
  33. <Cell col="1" text="그룹명"/>
  34. <Cell col="2" text="산정기준일"/>
  35. <Cell col="3" text="특정일"/>
  36. <Cell col="4" text="업데이트구분"/>
  37. <Cell col="5" text="업데이트"/>
  38. <Cell col="6"/>
  39. </Band>
  40. <Band id="body">
  41. <Cell displaytype="combo" text="bind:status" combodataset="ds_cmb_status" combocodecol="value" combodatacol="label" enable="false"/>
  42. <Cell col="1" style="align:left middle;padding:0 0 0 3;" text="bind:dtmntitl"/>
  43. <Cell col="2" displaytype="combo" edittype="combo" text="bind:appbasedd" combodataset="ds_init_comncdlist_C0032list_C0032"/>
  44. <Cell col="3" displaytype="date" edittype="date" text="bind:spcldd" calendardisplaynulltype="nulltext"/>
  45. <Cell col="4" displaytype="combo" edittype="combo" text="bind:clintdupltretmthd" combodataset="ds_init_comncdlist_C0031list_C0031" combocodecol="cdid" combodatacol="cdnm"/>
  46. <Cell col="5" displaytype="text" edittype="text" class="text_center" text="bind:daydd" mask="##:##" maskchar=" "/>
  47. <Cell col="6" text="bind:dtmnkey"/>
  48. </Band>
  49. </Format>
  50. </Formats>
  51. </Grid>
  52. </Layout>
  53. </Layouts>
  54. </Tabpage>
  55. <Tabpage id="trgt_case2">
  56. <Layouts>
  57. <Layout>
  58. <Grid id="grd_innrclntgruplist" taborder="0" binddataset="ds_main_cmpn_innrclntgruplist" useinputpanel="false" position="absolute 0 1 509 134" autoenter="select" cellsizingtype="col">
  59. <Formats>
  60. <Format id="default">
  61. <Columns>
  62. <Column size="350"/>
  63. <Column size="130"/>
  64. </Columns>
  65. <Rows>
  66. <Row size="24" band="head"/>
  67. <Row size="24"/>
  68. </Rows>
  69. <Band id="head">
  70. <Cell text="주소록그룹"/>
  71. <Cell col="1" text="전송대상자수"/>
  72. </Band>
  73. <Band id="body">
  74. <Cell text="bind:innrclntgrup"/>
  75. <Cell col="1" text="bind:innrclntcnt"/>
  76. </Band>
  77. </Format>
  78. </Formats>
  79. </Grid>
  80. </Layout>
  81. </Layouts>
  82. </Tabpage>
  83. <Tabpage id="trgt_case3">
  84. <Layouts>
  85. <Layout>
  86. <Static id="caption15" text="전송대상" class="cell_1" position="absolute 1 1 106 24"/>
  87. <Button id="btn_trsmtrgthealexamdtmn" taborder="1" text="건진정보마이닝그룹" class="btn2" position="absolute 109 3 241 22" onclick="swt_trgt_trgt_case3_btn_trsmtrgthealexamdtmn_onclick"/>
  88. <Grid id="grd_healexamtrsmtrgtlist" taborder="2" binddataset="ds_main_cmpn_healexamtrsmtrgtlist" useinputpanel="false" position="absolute 0 25 505 135" autoenter="select" cellsizingtype="col" onrbuttonup="swt_trgt_trgt_case3_grd_healexamtrsmtrgtlist_onrbuttonup" onkeyup="swt_trgt_trgt_case3_grd_healexamtrsmtrgtlist_onkeyup" oncloseup="swt_trgt_trgt_case3_grd_healexamtrsmtrgtlist_oncloseup">
  89. <Formats>
  90. <Format id="default">
  91. <Columns>
  92. <Column size="30"/>
  93. <Column size="175"/>
  94. <Column size="70"/>
  95. <Column size="85"/>
  96. <Column size="80"/>
  97. <Column size="60"/>
  98. <Column size="0"/>
  99. </Columns>
  100. <Rows>
  101. <Row size="24" band="head"/>
  102. <Row size="24"/>
  103. </Rows>
  104. <Band id="head">
  105. <Cell text="구분"/>
  106. <Cell col="1" text="그룹명"/>
  107. <Cell col="2" text="산정기준일"/>
  108. <Cell col="3" text="특정일"/>
  109. <Cell col="4" text="업데이트구분"/>
  110. <Cell col="5" text="업데이트"/>
  111. <Cell col="6"/>
  112. </Band>
  113. <Band id="body">
  114. <Cell displaytype="combo" style="align:center middle;" text="bind:status" combodataset="ds_cmb_status" combocodecol="value" combodatacol="label" enable="false"/>
  115. <Cell col="1" style="align:left middle;padding:0 0 0 3;" text="bind:healexamdtmntitl"/>
  116. <Cell col="2" displaytype="combo" edittype="combo" style="padding:0 0 0 2;" text="bind:appbasedd" combodataset="ds_cmb_appbasedd" combocodecol="value" combodatacol="label"/>
  117. <Cell col="3" displaytype="date" edittype="date" text="bind:spcldd" calendardisplaynulltype="nulltext"/>
  118. <Cell col="4" displaytype="combo" edittype="combo" style="padding:0 0 0 2;" text="bind:clintdupltretmthd" combodataset="ds_init_comncdlist_C0031list_C0031" combocodecol="cdid" combodatacol="cdnm"/>
  119. <Cell col="5" displaytype="text" edittype="text" style="align:center middle;" class="text_center" text="bind:daydd" mask="##:##" maskchar=" "/>
  120. <Cell col="6" text="bind:healexamdtmnkey"/>
  121. </Band>
  122. </Format>
  123. </Formats>
  124. </Grid>
  125. </Layout>
  126. </Layouts>
  127. </Tabpage>
  128. </Tabpages>
  129. </Tab>
  130. <Shape id="rectangle5" type="rectangle" position="absolute 741 505 1195 605" anchor="left right bottom"/>
  131. <Div position="absolute 221 31 1195 71" align="align:center top;" id="group3" class="div_SA2" anchor="left top right">
  132. <Layouts>
  133. <Layout>
  134. <Static text="등 록 일 :" position="absolute 15 11 125 28" id="caption3" class="search_name" anchor="default"/>
  135. <Calendar position="absolute 116 10 236 29" id="ipt_rgstfromdd" class="input_search" anchor="default" autoselect="true" autoskip="true"/>
  136. <Static text="~" position="absolute 241 11 253 28" id="caption4" class="search_no_b" anchor="default"/>
  137. <Calendar position="absolute 256 10 376 29" id="ipt_rgsttodd" class="input_search" anchor="default" autoselect="true"/>
  138. <Edit position="absolute 729 10 859 29" id="ipt_s_cmpnnm" class="input_search" anchor="default" autoselect="true"/>
  139. <Static text="캠페인 속성 :" position="absolute 395 11 502 28" id="caption7" class="search_name" anchor="default"/>
  140. <Combo position="absolute 497 10 627 29" id="cmb_cmpnflag" class="combo_default" taborder="13" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  141. <Dataset id="innerdataset">
  142. <ColumnInfo>
  143. <Column id="codecolumn"/>
  144. <Column id="datacolumn"/>
  145. </ColumnInfo>
  146. <Rows>
  147. <Row>
  148. <Col id="codecolumn">
  149. </Col>
  150. <Col id="datacolumn">전체</Col>
  151. </Row>
  152. <Row>
  153. <Col id="codecolumn">1</Col>
  154. <Col id="datacolumn">일회성</Col>
  155. </Row>
  156. <Row>
  157. <Col id="codecolumn">2</Col>
  158. <Col id="datacolumn">반복성</Col>
  159. </Row>
  160. <Row>
  161. <Col id="codecolumn">3</Col>
  162. <Col id="datacolumn">연결성</Col>
  163. </Row>
  164. <Row>
  165. <Col id="codecolumn">0</Col>
  166. <Col id="datacolumn">사용안함</Col>
  167. </Row>
  168. </Rows>
  169. </Dataset>
  170. </Combo>
  171. <Shape position="absolute 880 9 886 31" linetype="vertical" id="line1" class="line_4" anchor="top right"/>
  172. <Button position="absolute 898 9 954 31" id="btn_search" class="btn1" text="조회" anchor="top right" onclick="group3_btn_search_onclick"/>
  173. <Static id="caption5" text="캠페인명 :" class="search_name" position="absolute 647 11 742 28" anchor="default"/>
  174. </Layout>
  175. </Layouts>
  176. </Div>
  177. <Static id="caption1" text="캠페인 관리 : 자동알리미" class="tit_1" position="absolute 0 0 198 21"/>
  178. <Div id="import1" taborder="1" url="SSCPC00300_캠페인그룹트리.xfdl" position="absolute 0 30 215 787" anchor="left top bottom"/>
  179. <Button id="btn_aprvsave" taborder="2" text="승인저장" class="btn2" position="absolute 973 73 1037 92" anchor="top right"/>
  180. <Button id="btn_saveexcel" taborder="3" text="엑셀저장" class="btn7" position="absolute 1038 73 1118 92" anchor="top right"/>
  181. <Button id="btn_cmpndel" taborder="4" text="캠페인삭제" class="btn2" position="absolute 1119 73 1194 92" anchor="top right"/>
  182. <Grid id="grd_cmpnlist" class="text_center" taborder="5" binddataset="ds_main_cmpn_cmpnlist" useinputpanel="false" position="absolute 221 97 1194 392" autoenter="select" cellsizingtype="col" anchor="all" oncelldblclick="grd_cmpnlist_oncelldblclick">
  183. <Formats>
  184. <Format id="default">
  185. <Columns>
  186. <Column size="19" band="left"/>
  187. <Column size="180"/>
  188. <Column size="75"/>
  189. <Column size="100"/>
  190. <Column size="100"/>
  191. <Column size="80"/>
  192. <Column size="120"/>
  193. <Column size="120"/>
  194. <Column size="100"/>
  195. <Column size="100"/>
  196. <Column size="60"/>
  197. <Column size="0"/>
  198. <Column size="0"/>
  199. </Columns>
  200. <Rows>
  201. <Row size="24" band="head"/>
  202. <Row size="24"/>
  203. </Rows>
  204. <Band id="head">
  205. <Cell/>
  206. <Cell col="1" text="캠페인명"/>
  207. <Cell col="2" text="캠페인속성"/>
  208. <Cell col="3" text="대상위치"/>
  209. <Cell col="4" text="표적일"/>
  210. <Cell col="5" text="최종실행건수"/>
  211. <Cell col="6" text="등록일"/>
  212. <Cell col="7" text="최종수정일"/>
  213. <Cell col="8" text="등록부서"/>
  214. <Cell col="9" text="등록자"/>
  215. <Cell col="10" text="승인여부"/>
  216. <Cell col="11"/>
  217. <Cell col="12"/>
  218. </Band>
  219. <Band id="body">
  220. <Cell celltype="head"/>
  221. <Cell col="1" style="align:left middle;padding:0 0 0 3;" text="bind:cmpnnm"/>
  222. <Cell col="2" displaytype="combo" style="align:center middle;" text="bind:cmpnexecattr" combodataset="ds_init_comncdlist_C0013list_C0013" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  223. <Cell col="3" displaytype="combo" style="align:center middle;" text="bind:trsmtrgtflag" combodataset="ds_cmb_trsmtrgtflag" combocodecol="value" combodatacol="label" enable="false"/>
  224. <Cell col="4" style="align:center middle;" text="bind:nextcmpncd"/>
  225. <Cell col="5" displaytype="number" style="align:center middle;" text="bind:execcnt"/>
  226. <Cell col="6" displaytype="date" style="align:center middle;" text="bind:fstrgstdt" mask="yyyy-MM-dd hh:mm" maskchar=" " calendardisplaynulltype="nulltext"/>
  227. <Cell col="7" displaytype="date" style="align:center middle;" text="bind:lastupdtdt" mask="yyyy-MM-dd hh:mm" maskchar=" " calendardisplaynulltype="nulltext"/>
  228. <Cell col="8" style="align:center middle;" text="bind:rgstdeptnm"/>
  229. <Cell col="9" style="align:center middle;" text="bind:usernm"/>
  230. <Cell col="10" displaytype="combo" edittype="expr:aprvyn_property" style="align:center middle;" text="bind:aprvyn" combodataset="ds_init_comncdlist_C0016list_C0016" combocodecol="cdid" combodatacol="cdnm"/>
  231. <Cell col="11" text="bind:cmpncd"/>
  232. <Cell col="12" text="bind:rgstdeptcd"/>
  233. </Band>
  234. </Format>
  235. </Formats>
  236. </Grid>
  237. <Shape id="line21" class="line_10" position="absolute 222 92 1194 98" anchor="left top right"/>
  238. <Static id="caption9" text="캠페인 리스트" class="tit_2" position="absolute 222 76 333 97"/>
  239. <Static id="caption6" text="캠페인 전송 설정" class="tit_2" position="absolute 221 401 351 422" anchor="left bottom"/>
  240. <Shape id="line2" linetype="horizontal" class="line_10" position="absolute 221 417 726 423" anchor="left bottom"/>
  241. <Shape id="line3" linetype="horizontal" class="line_2" position="absolute 221 444 726 450" anchor="left bottom"/>
  242. <Static id="caption8" text="캠페인명" class="cell_1" position="absolute 221 422 326 445" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  243. <Edit id="ipt_cmpnnm" taborder="6" class="input_essential" position="absolute 329 423 589 442" anchor="left bottom"/>
  244. <Button id="btn_cmpnsrch" taborder="8" class="icon_search" position="absolute 705 424 721 440" anchor="left bottom" onclick="btn_cmpnsrch_onclick"/>
  245. <Static id="caption10" text="캠페인 전송 내용" class="tit_2" position="absolute 741 401 871 422" anchor="left bottom"/>
  246. <Shape id="line4" linetype="horizontal" class="line_10" position="absolute 741 417 1195 423" anchor="left right bottom"/>
  247. <Shape id="line5" linetype="horizontal" class="line_2" position="absolute 221 470 726 476" anchor="left bottom"/>
  248. <Static id="caption11" text="캠페인 속성" class="cell_1" position="absolute 221 448 326 471" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  249. <Radio id="rdo_cmpnflag" taborder="9" columncount="4" rowcount="0" innerdataset="@ds_init_comncdlist_C0013list_C0013" codecolumn="cdid" datacolumn="cdnm" position="absolute 329 451 611 470" anchor="left bottom"/>
  250. <Shape id="line7" linetype="horizontal" class="line_2" position="absolute 221 496 726 502" anchor="left bottom"/>
  251. <Static id="caption12" text="등록부서" class="cell_1" position="absolute 221 474 326 497" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  252. <Button id="btn_deptsrch" taborder="10" class="icon_search" position="absolute 592 478 608 494" anchor="left bottom" onclick="btn_deptsrch_onclick"/>
  253. <Edit id="ipt_deptnm" taborder="11" class="input_essential" position="absolute 329 476 589 495" anchor="left bottom" autoselect="true" onkeyup="ipt_deptnm_onkeyup"/>
  254. <Shape id="line10" linetype="horizontal" class="line_3" position="absolute 221 522 726 528" anchor="left bottom"/>
  255. <Static id="caption13" text="캠페인 전송대상 및 D-day" class="tit_2" position="absolute 221 535 421 556" anchor="left bottom"/>
  256. <Shape id="line6" linetype="horizontal" class="line_10" position="absolute 221 551 731 557" anchor="left bottom"/>
  257. <Edit id="ipt_deptcd" taborder="13" enable="false" position="absolute 611 476 721 495" anchor="left bottom"/>
  258. <Static id="caption16" text="전송 D-day" class="cell_1" position="absolute 221 691 326 758" anchor="left bottom"/>
  259. <Radio id="rdo_exebaseflag_t" taborder="14" columncount="0" rowcount="3" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 329 688 356 760" anchor="left bottom" onitemchanged="rdo_exebaseflag_t_onitemchanged">
  260. <Dataset id="innerdataset">
  261. <ColumnInfo>
  262. <Column id="codecolumn"/>
  263. <Column id="datacolumn"/>
  264. </ColumnInfo>
  265. <Rows>
  266. <Row>
  267. <Col id="codecolumn">3</Col>
  268. <Col id="datacolumn"/>
  269. </Row>
  270. <Row>
  271. <Col id="codecolumn">1</Col>
  272. <Col id="datacolumn"/>
  273. </Row>
  274. <Row>
  275. <Col id="codecolumn">2</Col>
  276. <Col id="datacolumn"/>
  277. </Row>
  278. </Rows>
  279. </Dataset>
  280. </Radio>
  281. <Static id="caption17" text="전송대상 생성기준일로부터" position="absolute 354 715 504 734" anchor="left bottom"/>
  282. <MaskEdit id="ipt_exebase11" taborder="15" mask="####" position="absolute 520 715 550 734" anchor="left bottom" autoselect="true" maskchar=" " type="string" trimtype="both" style="align:left middle;"/>
  283. <Static id="caption18" text="일 후" position="absolute 556 715 586 734" anchor="left bottom"/>
  284. <Static id="caption19" text="전송대상 생성기준일로부터" position="absolute 354 737 504 756" anchor="left bottom"/>
  285. <MaskEdit id="ipt_exebase21" taborder="16" mask="##" position="absolute 520 737 550 756" anchor="left bottom" maskchar=" " autoselect="true" type="string" trimtype="both" style="align:left middle;"/>
  286. <Static id="caption20" text="개월" position="absolute 556 737 586 756" anchor="left bottom"/>
  287. <MaskEdit id="ipt_exebase22" taborder="17" mask="##" position="absolute 590 737 620 756" anchor="left bottom" maskchar=" " autoselect="true" type="string" trimtype="both" style="align:left middle;"/>
  288. <Static id="caption21" text="일 후" position="absolute 626 737 656 756" anchor="left bottom"/>
  289. <Calendar id="ipt_exebase31" taborder="18" position="absolute 421 692 541 711" anchor="left bottom" autoselect="true" onkillfocus="ipt_exebase31_onkillfocus"/>
  290. <Static id="caption22" text="특정일" position="absolute 354 693 414 712" anchor="left bottom"/>
  291. <Static id="caption23" text="연결 캠페인" class="tit_2" position="absolute 741 614 871 635" anchor="left bottom"/>
  292. <Shape id="line8" linetype="horizontal" class="line_10" position="absolute 741 630 1195 636" anchor="left right bottom"/>
  293. <Shape id="line9" linetype="horizontal" class="line_2" position="absolute 741 731 1195 737" anchor="left right bottom"/>
  294. <Static id="caption24" text="연결 캠페인" class="cell_1" position="absolute 741 635 846 732" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  295. <Edit id="input9" taborder="19" position="absolute 849 635 1026 654" anchor="left bottom" autoselect="true"/>
  296. <Edit id="input10" taborder="20" position="absolute 1029 635 1125 654" anchor="left bottom"/>
  297. <Button id="button4" taborder="21" class="icon_search" position="absolute 1126 636 1142 652" onclick="button4_onclick" anchor="left bottom"/>
  298. <Grid id="grd_cmpnlnklist" taborder="22" binddataset="ds_main_cmpn_cmpnlnklist" useinputpanel="false" position="absolute 849 657 1145 729" anchor="left bottom" autoenter="select" cellsizingtype="col">
  299. <Formats>
  300. <Format id="default">
  301. <Columns>
  302. <Column size="18"/>
  303. <Column size="160"/>
  304. <Column size="90"/>
  305. <Column size="0"/>
  306. </Columns>
  307. <Rows>
  308. <Row size="24" band="head"/>
  309. <Row size="24"/>
  310. </Rows>
  311. <Band id="head">
  312. <Cell/>
  313. <Cell col="1" text="캠페인명"/>
  314. <Cell col="2" text="캠페인코드"/>
  315. <Cell col="3"/>
  316. </Band>
  317. <Band id="body">
  318. <Cell celltype="head"/>
  319. <Cell col="1" style="align:left middle;padding:0 0 0 3;" text="bind:nextcmpnnm"/>
  320. <Cell col="2" style="align:left middle;padding:0 0 0 3;" text="bind:nextcmpncd"/>
  321. <Cell col="3" text="bind:cmpncd"/>
  322. </Band>
  323. </Format>
  324. </Formats>
  325. </Grid>
  326. <Button id="button115" taborder="23" text="연결캠페인" class="btn2" position="absolute 1120 611 1195 630" anchor="right bottom" onclick="button115_onclick"/>
  327. <Button id="button5" taborder="24" text="추가" class="btn2" position="absolute 1148 688 1190 707" anchor="right bottom" onclick="button5_onclick"/>
  328. <Button id="button7" taborder="25" text="삭제" class="btn2" position="absolute 1148 710 1190 729" anchor="right bottom" onclick="button7_onclick"/>
  329. <Static id="caption25" text="연결 시점" class="cell_1" position="absolute 741 735 846 758" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  330. <Radio id="radio3" taborder="26" columncount="2" rowcount="0" innerdataset="@ds_init_comncdlist_C0018list_C0018" codecolumn="cdid" datacolumn="cdnm" position="absolute 849 734 1131 753" anchor="left bottom"/>
  331. <Grid id="grd_exedatelist" taborder="27" binddataset="ds_main_cmpn_delivelist" useinputpanel="false" position="absolute 741 422 1195 500" autoenter="select" cellsizingtype="col" anchor="left right bottom">
  332. <Formats>
  333. <Format id="default">
  334. <Columns>
  335. <Column size="22"/>
  336. <Column size="110"/>
  337. <Column size="90"/>
  338. <Column size="50"/>
  339. <Column size="80"/>
  340. <Column size="40"/>
  341. <Column size="0"/>
  342. <Column size="40"/>
  343. <Column size="0"/>
  344. <Column size="0"/>
  345. <Column size="0"/>
  346. <Column size="0"/>
  347. <Column size="0"/>
  348. <Column size="0"/>
  349. </Columns>
  350. <Rows>
  351. <Row size="24" band="head"/>
  352. <Row size="24"/>
  353. </Rows>
  354. <Band id="head">
  355. <Cell/>
  356. <Cell col="1" text="전송 D-day"/>
  357. <Cell col="2" text="전송실행일"/>
  358. <Cell col="3" text="전후"/>
  359. <Cell col="4" text="전송시간"/>
  360. <Cell col="5" text="SMS"/>
  361. <Cell col="6" text="SMS코드"/>
  362. <Cell col="7" text="Email"/>
  363. <Cell col="8" text="Email코드"/>
  364. <Cell col="9"/>
  365. <Cell col="10"/>
  366. <Cell col="11"/>
  367. <Cell col="12"/>
  368. <Cell col="13"/>
  369. </Band>
  370. <Band id="body">
  371. <Cell celltype="head"/>
  372. <Cell col="1" style="align:center middle;" text="bind:deliveschedayno1"/>
  373. <Cell col="2" style="align:center middle;" text="bind:deliveschedayno"/>
  374. <Cell col="3" displaytype="combo" style="align:center middle;" text="bind:bfaftflag" combodataset="ds_init_comncdlist_C0014list_C0014" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  375. <Cell col="4" style="align:center middle;" text="bind:deliveschetm" mask="##:##" maskchar=" "/>
  376. <Cell col="5" style="align:center middle;" text="bind:smsuseyn"/>
  377. <Cell col="6" style="align:center middle;" text="bind:smsmsgsmlcd"/>
  378. <Cell col="7" style="align:center middle;" text="bind:emailuseyn"/>
  379. <Cell col="8" text="bind:emailmsgsmlcd"/>
  380. <Cell col="9" text="bind:cmpncd"/>
  381. <Cell col="10" text="bind:smsmsglrgcd"/>
  382. <Cell col="11" text="bind:smsmsgmdlcd"/>
  383. <Cell col="12" text="bind:emailmsglrgcd"/>
  384. <Cell col="13" text="bind:emailmsgmdlcd"/>
  385. </Band>
  386. </Format>
  387. </Formats>
  388. </Grid>
  389. <Static id="caption26" text="전송실행일" class="cell_1" position="absolute 749 508 849 531" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  390. <Static id="caption27" text="전송 D-day" position="absolute 853 511 920 530" anchor="left bottom"/>
  391. <MaskEdit id="ipt_exedate" taborder="28" mask="##" position="absolute 924 511 974 530" maskchar=" " type="string" trimtype="both" style="align:left middle;" anchor="left bottom" autoselect="true"/>
  392. <Static id="caption30" text="일" position="absolute 980 512 1000 531" anchor="left bottom"/>
  393. <Combo id="cmb_exeflag" taborder="29" innerdataset="@ds_init_comncdlist_C0014list_C0014" codecolumn="cdid" datacolumn="cdnm" position="absolute 1003 511 1043 530" anchor="left bottom"/>
  394. <MaskEdit id="ipt_exetime" taborder="30" mask="##:##" position="absolute 1046 511 1106 530" anchor="left bottom" autoselect="true" maskchar=" " type="string" trimtype="both" style="align:left middle;" onkillfocus="ipt_exetime_onkillfocus"/>
  395. <Button id="btn_exedate_ins" taborder="31" text="추가" class="btn2" position="absolute 1146 559 1188 578" anchor="right bottom" onclick="btn_exedate_ins_onclick"/>
  396. <Button id="btn_exedate_del" taborder="32" text="삭제" class="btn2" position="absolute 1146 579 1188 598" anchor="right bottom" onclick="btn_exedate_del_onclick"/>
  397. <Static id="caption32" text="전송 채널" class="cell_1" position="absolute 749 532 849 555" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  398. <CheckBox id="chk_sms" taborder="33" position="absolute 853 533 900 552" text="SMS" truevalue="Y" anchor="left bottom" onclick="chk_sms_onclick"/>
  399. <CheckBox id="chk_email" taborder="34" position="absolute 1012 534 1066 553" text="e-mail" truevalue="Y" anchor="left bottom" onclick="chk_email_onclick"/>
  400. <Static id="caption33" text="전송내용" class="cell_1" position="absolute 749 556 849 579" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  401. <Static id="caption28" class="cell_1" position="absolute 749 580 849 603" anchor="left bottom"/>
  402. <Button id="btn_msgprvw" taborder="35" text="입력/미리보기" class="btn2" position="absolute 751 582 847 601" anchor="left bottom" onclick="btn_msgprvw_onclick"/>
  403. <Edit id="ipt_smsmsg" taborder="36" enable="false" visible="false" position="absolute 852 558 1052 577" anchor="left bottom"/>
  404. <TextArea id="tar_msgcnts" taborder="37" enable="false" position="absolute 852 556 1144 602" anchor="left right bottom"/>
  405. <Edit id="ipt_smssmlcd" taborder="38" position="absolute 904 534 983 553" anchor="left bottom" maxlength="10" autoselect="true" onkeyup="ipt_smssmlcd_onkeyup"/>
  406. <Edit id="ipt_smsmdlcd" taborder="39" visible="false" position="absolute 923 534 963 553" anchor="left bottom"/>
  407. <Edit id="ipt_smslrgcd" taborder="40" visible="false" position="absolute 943 534 983 553" anchor="left bottom"/>
  408. <Button id="btn_smssrch" taborder="41" class="icon_search" position="absolute 984 535 1000 551" anchor="left bottom" onclick="btn_smssrch_onclick"/>
  409. <Edit id="input17" taborder="42" enable="false" visible="false" position="absolute 852 583 1052 602" anchor="left bottom"/>
  410. <Edit id="input18" taborder="43" position="absolute 1075 534 1154 553" anchor="left bottom" autoselect="true" maxlength="10" onkeyup="input18_onkeyup"/>
  411. <Edit id="input19" taborder="44" visible="false" position="absolute 1094 534 1134 553" anchor="left bottom"/>
  412. <Edit id="input20" taborder="45" visible="false" position="absolute 1114 534 1154 553" anchor="left bottom"/>
  413. <Button id="btn_emailsrch" taborder="46" class="icon_search" position="absolute 1160 534 1176 550" anchor="right bottom" onclick="btn_emailsrch_onclick"/>
  414. <Shape id="line12" linetype="horizontal" class="line_3" position="absolute 221 757 726 763" anchor="left bottom"/>
  415. <Shape id="line11" linetype="horizontal" class="line_3" position="absolute 741 757 1195 763" anchor="left right bottom"/>
  416. <Static id="caption29" text="전송대상" class="cell_1" position="absolute 221 500 326 523" anchor="left bottom" style="padding:0 0 0 0;align:center middle;"/>
  417. <Combo id="cmb_trsmtrgtflag" taborder="47" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_default" position="absolute 329 501 459 520" anchor="left bottom" onitemchanged="cmb_trsmtrgtflag_onitemchanged">
  418. <Dataset id="innerdataset">
  419. <ColumnInfo>
  420. <Column id="codecolumn"/>
  421. <Column id="datacolumn"/>
  422. </ColumnInfo>
  423. <Rows>
  424. <Row>
  425. <Col id="codecolumn">1</Col>
  426. <Col id="datacolumn">고객정보마이닝</Col>
  427. </Row>
  428. <Row>
  429. <Col id="codecolumn">2</Col>
  430. <Col id="datacolumn">주소록</Col>
  431. </Row>
  432. <Row>
  433. <Col id="codecolumn">3</Col>
  434. <Col id="datacolumn">건진정보마이닝</Col>
  435. </Row>
  436. </Rows>
  437. </Dataset>
  438. </Combo>
  439. <Button id="btn_select" taborder="48" text="캠페인요약" class="btn2" position="absolute 221 765 304 784" anchor="left bottom" onclick="btn_select_onclick"/>
  440. <Button id="btn_release" taborder="49" text="캠페인대상리스트" class="btn2" position="absolute 305 765 421 784" anchor="left bottom" onclick="btn_release_onclick"/>
  441. <Button id="btn_addrsave" taborder="50" text="주소록등록" class="btn5" enable="false" position="absolute 422 765 497 784" anchor="left bottom" onclick="btn_addrsave_onclick"/>
  442. <Button id="btn_cmpnadd" taborder="51" text="캠페인추가" class="btn2" position="absolute 896 764 971 783" anchor="right bottom" onclick="btn_cmpnadd_onclick"/>
  443. <Button id="btn_cmpnreset" taborder="52" text="초기화" class="btn5" position="absolute 974 764 1027 783" anchor="right bottom" onclick="btn_cmpnreset_onclick"/>
  444. <Button id="btn_cmpnsaveas" taborder="53" text="새이름으로" class="btn5" position="absolute 1030 764 1105 783" anchor="right bottom" onclick="btn_cmpnsaveas_onclick"/>
  445. <Button id="btn_cmpnupdt" taborder="54" text="수정" class="btn5" position="absolute 1108 764 1150 783" anchor="right bottom" onclick="btn_cmpnupdt_onclick"/>
  446. <Button id="btn_cmpnsave" taborder="55" text="등록" class="btn5" position="absolute 1153 764 1195 783" anchor="right bottom" onclick="btn_cmpnsave_onclick"/>
  447. <PopupMenu id="pmn_menu1" position="absolute 1209 414 1260 443" innerdataset="@ds_hidden_trsmtrgtmenu_menu" idcolumn="func" levelcolumn="level" captioncolumn="label" onmenuclick="pmn_menu1_onmenuclick" onmouseleave="pmn_menu1_onmouseleave"/>
  448. <PopupMenu id="pmn_menu2" innerdataset="@ds_hidden_healexamtrsmtrgtmenu_menu" idcolumn="func" captioncolumn="label" levelcolumn="level" position="absolute 1213 446 1264 475" onmenuclick="pmn_menu2_onmenuclick" onmouseleave="pmn_menu2_onmouseleave"/>
  449. </Layout>
  450. </Layouts>
  451. <Objects>
  452. <Dataset id="ds_send_cmpnsrch" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  453. <ColumnInfo>
  454. <Column id="rgstfromdd" type="STRING" size="256"/>
  455. <Column id="rgsttodd" type="STRING" size="256"/>
  456. <Column id="cmpnnm" type="STRING" size="256"/>
  457. <Column id="rgstr" type="STRING" size="256"/>
  458. <Column id="cmpnflag" type="STRING" size="256"/>
  459. <Column id="refauth" type="STRING" size="256"/>
  460. </ColumnInfo>
  461. <Rows>
  462. <Row>
  463. <Col id="rgstfromdd"/>
  464. <Col id="rgsttodd"/>
  465. <Col id="cmpnnm"/>
  466. <Col id="rgstr"/>
  467. <Col id="cmpnflag"/>
  468. <Col id="refauth"/>
  469. </Row>
  470. </Rows>
  471. </Dataset>
  472. <Dataset id="ds_main_cmpn_cmpnlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  473. <ColumnInfo>
  474. <Column id="cmpnnm" type="STRING" size="256" sumtext="캠페인명"/>
  475. <Column id="cmpnexecattr" type="STRING" size="256" sumtext="캠페인속성"/>
  476. <Column id="trsmtrgtflag" type="STRING" size="256" sumtext="전송대상구분"/>
  477. <Column id="nextcmpncd" type="STRING" size="256" sumtext="연결캠페인"/>
  478. <Column id="execcnt" type="INT" size="256" sumtext="최종실행건수"/>
  479. <Column id="fstrgstdt" type="STRING" size="256" sumtext="등록일"/>
  480. <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종수정일시"/>
  481. <Column id="execdt" type="STRING" size="256" sumtext="최종실행일시"/>
  482. <Column id="rgstdeptnm" type="STRING" size="256" sumtext="등록부서"/>
  483. <Column id="rgstdeptcd" type="STRING" size="256" sumtext="등록부서코드"/>
  484. <Column id="usernm" type="STRING" size="256" sumtext="등록자"/>
  485. <Column id="aprvyn" type="STRING" size="256" sumtext="승인여부"/>
  486. <Column id="cmpncd" type="STRING" size="256" sumtext="캠페인코드"/>
  487. <Column id="aprvyn_property" type="STRING" size="256"/>
  488. </ColumnInfo>
  489. </Dataset>
  490. <Dataset id="ds_main_cmpn_cmpnattr" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  491. <ColumnInfo>
  492. <Column id="savemode" type="STRING" size="256"/>
  493. <Column id="cmpnnm" type="STRING" size="256"/>
  494. <Column id="cmpncd" type="STRING" size="256"/>
  495. <Column id="cmpnlrgcd" type="STRING" size="256"/>
  496. <Column id="cmpnmdlcd" type="STRING" size="256"/>
  497. <Column id="cmpnsmlcd" type="STRING" size="256"/>
  498. <Column id="cmpnexecattr" type="STRING" size="256"/>
  499. <Column id="rgstdeptnm" type="STRING" size="256"/>
  500. <Column id="rgstdeptcd" type="STRING" size="256"/>
  501. <Column id="trsmtrgtflag" type="STRING" size="256"/>
  502. <Column id="execbaseddflag" type="STRING" size="256"/>
  503. <Column id="execbasedayno" type="STRING" size="256"/>
  504. <Column id="execbasemm" type="STRING" size="256"/>
  505. <Column id="execbasedd" type="STRING" size="256"/>
  506. <Column id="execbasespcldd" type="STRING" size="256"/>
  507. <Column id="nextcmpnlnkpnttm" type="STRING" size="256"/>
  508. <Column id="cmpnlnklist" type="STRING" size="256"/>
  509. <Column id="delivelist" type="STRING" size="256"/>
  510. <Column id="trsmtrgtlist" type="STRING" size="256"/>
  511. <Column id="healexamtrsmtrgtlist" type="STRING" size="256"/>
  512. </ColumnInfo>
  513. <Rows>
  514. <Row>
  515. <Col id="savemode"/>
  516. <Col id="cmpnnm"/>
  517. <Col id="cmpncd"/>
  518. <Col id="cmpnlrgcd"/>
  519. <Col id="cmpnmdlcd"/>
  520. <Col id="cmpnsmlcd"/>
  521. <Col id="cmpnexecattr"/>
  522. <Col id="rgstdeptnm"/>
  523. <Col id="rgstdeptcd"/>
  524. <Col id="trsmtrgtflag"/>
  525. <Col id="execbaseddflag"/>
  526. <Col id="execbasedayno"/>
  527. <Col id="execbasemm"/>
  528. <Col id="execbasedd"/>
  529. <Col id="execbasespcldd"/>
  530. <Col id="nextcmpnlnkpnttm"/>
  531. <Col id="cmpnlnklist"/>
  532. <Col id="delivelist"/>
  533. <Col id="trsmtrgtlist"/>
  534. <Col id="healexamtrsmtrgtlist"/>
  535. </Row>
  536. </Rows>
  537. </Dataset>
  538. <Dataset id="ds_main_cmpn_delivelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  539. <ColumnInfo>
  540. <Column id="deliveschedayno1" type="INT" size="256" sumtext="전송D-day"/>
  541. <Column id="deliveschedayno" type="INT" size="256" sumtext="실행예정일"/>
  542. <Column id="bfaftflag" type="STRING" size="256" sumtext="실행전후분류"/>
  543. <Column id="deliveschetm" type="STRING" size="256" sumtext="실행예정시간"/>
  544. <Column id="smsuseyn" type="STRING" size="256" sumtext="SMS전송여부"/>
  545. <Column id="smsmsgsmlcd" type="INT" size="256" sumtext="SMS코드"/>
  546. <Column id="emailuseyn" type="STRING" size="256" sumtext="Email전송여부"/>
  547. <Column id="emailmsgsmlcd" type="INT" size="256" sumtext="Email코드"/>
  548. <Column id="cmpncd" type="STRING" size="256" sumtext="캠페인코드"/>
  549. <Column id="smsmsglrgcd" type="INT" size="256" sumtext="SMS대분류코드"/>
  550. <Column id="smsmsgmdlcd" type="INT" size="256" sumtext="SMS중분류코드"/>
  551. <Column id="emailmsglrgcd" type="INT" size="256" sumtext="Email대분류코드"/>
  552. <Column id="emailmsgmdlcd" type="INT" size="256" sumtext="Email중분류코드"/>
  553. </ColumnInfo>
  554. </Dataset>
  555. <Dataset id="ds_temp_cmpnattr_delivesche" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  556. <ColumnInfo>
  557. <Column id="deliveschedayno1" type="INT" size="256" sumtext="전송D-day"/>
  558. <Column id="deliveschedayno" type="INT" size="256" sumtext="실행예정일"/>
  559. <Column id="bfaftflag" type="STRING" size="256" sumtext="실행전후분류"/>
  560. <Column id="deliveschetm" type="STRING" size="256" sumtext="실행예정시간"/>
  561. <Column id="smsuseyn" type="STRING" size="256" sumtext="SMS전송여부"/>
  562. <Column id="smsmsgsmlcd" type="INT" size="256" sumtext="SMS코드"/>
  563. <Column id="emailuseyn" type="STRING" size="256" sumtext="Email전송여부"/>
  564. <Column id="emailmsgsmlcd" type="INT" size="256" sumtext="Email코드"/>
  565. <Column id="cmpncd" type="STRING" size="256" sumtext="캠페인코드"/>
  566. <Column id="smsmsglrgcd" type="INT" size="256" sumtext="SMS대분류코드"/>
  567. <Column id="smsmsgmdlcd" type="INT" size="256" sumtext="SMS중분류코드"/>
  568. <Column id="emailmsglrgcd" type="INT" size="256" sumtext="Email대분류코드"/>
  569. <Column id="emailmsgmdlcd" type="INT" size="256" sumtext="Email중분류코드"/>
  570. <Column id="smsmsg" type="STRING" size="256"/>
  571. <Column id="emailtitl" type="STRING" size="256"/>
  572. <Column id="msgcnts" type="STRING" size="256"/>
  573. </ColumnInfo>
  574. <Rows>
  575. <Row>
  576. <Col id="deliveschedayno1"/>
  577. <Col id="deliveschedayno"/>
  578. <Col id="bfaftflag">B</Col>
  579. <Col id="deliveschetm"/>
  580. <Col id="smsuseyn"/>
  581. <Col id="smsmsglrgcd"/>
  582. <Col id="smsmsgmdlcd"/>
  583. <Col id="smsmsgsmlcd"/>
  584. <Col id="emailuseyn"/>
  585. <Col id="emailmsglrgcd"/>
  586. <Col id="emailmsgmdlcd"/>
  587. <Col id="emailmsgsmlcd"/>
  588. <Col id="smsmsg"/>
  589. <Col id="emailtitl"/>
  590. <Col id="msgcnts"/>
  591. </Row>
  592. </Rows>
  593. </Dataset>
  594. <Dataset id="ds_main_cmpn_trsmtrgtlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  595. <ColumnInfo>
  596. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  597. <Column id="dtmntitl" type="STRING" size="256" sumtext="데이터마이닝제목"/>
  598. <Column id="appbasedd" type="STRING" size="256" sumtext="산정기준일"/>
  599. <Column id="spcldd" type="STRING" size="256" sumtext="특정일"/>
  600. <Column id="clintdupltretmthd" type="STRING" size="256" sumtext="업데이트구분"/>
  601. <Column id="daydd" type="STRING" size="256" sumtext="업데이트실행시간"/>
  602. <Column id="dtmnkey" type="INT" size="256" sumtext="데이터마이닝키"/>
  603. <Column id="cmpncd" type="STRING" size="256" sumtext="캠페인코드"/>
  604. </ColumnInfo>
  605. </Dataset>
  606. <Dataset id="ds_main_cmpn_innrclntgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  607. <ColumnInfo>
  608. <Column id="innrgrupid" type="STRING" size="256" sumtext="주소록그룹ID"/>
  609. <Column id="innrclntgrup" type="STRING" size="256" sumtext="주소록그룹"/>
  610. <Column id="innrclntcnt" type="STRING" size="256" sumtext="전송대상자수"/>
  611. </ColumnInfo>
  612. </Dataset>
  613. <Dataset id="ds_main_cmpn_healexamtrsmtrgtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  614. <ColumnInfo>
  615. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  616. <Column id="healexamdtmntitl" type="STRING" size="256" sumtext="데이터마이닝제목"/>
  617. <Column id="appbasedd" type="STRING" size="256" sumtext="산정기준일"/>
  618. <Column id="spcldd" type="STRING" size="256" sumtext="특정일"/>
  619. <Column id="clintdupltretmthd" type="STRING" size="256" sumtext="업데이트구분"/>
  620. <Column id="daydd" type="STRING" size="256" sumtext="업데이트실행시간"/>
  621. <Column id="healexamdtmnkey" type="INT" size="256" sumtext="건진데이터마이닝키"/>
  622. <Column id="cmpncd" type="STRING" size="256" sumtext="캠페인코드"/>
  623. </ColumnInfo>
  624. </Dataset>
  625. <Dataset id="ds_temp_cmpnattr_cmpnlnk" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  626. <ColumnInfo>
  627. <Column id="nextcmpnnm" type="STRING" size="256"/>
  628. <Column id="nextcmpncd" type="STRING" size="256"/>
  629. <Column id="cmpncd" type="STRING" size="256"/>
  630. </ColumnInfo>
  631. <Rows>
  632. <Row>
  633. <Col id="nextcmpnnm"/>
  634. <Col id="nextcmpncd"/>
  635. </Row>
  636. </Rows>
  637. </Dataset>
  638. <Dataset id="ds_main_cmpn_cmpnlnklist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  639. <ColumnInfo>
  640. <Column id="nextcmpnnm" type="STRING" size="256" sumtext="연결캠페인명"/>
  641. <Column id="nextcmpncd" type="STRING" size="256" sumtext="연결캠페인코드"/>
  642. <Column id="cmpncd" type="STRING" size="256" sumtext="캠페인코드"/>
  643. </ColumnInfo>
  644. </Dataset>
  645. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  646. <ColumnInfo>
  647. <Column id="cmpnnm" type="STRING" size="256"/>
  648. <Column id="menuid" type="STRING" size="256"/>
  649. </ColumnInfo>
  650. <Rows>
  651. <Row>
  652. <Col id="cmpnnm"/>
  653. <Col id="menuid">SMCPC00100</Col>
  654. </Row>
  655. </Rows>
  656. </Dataset>
  657. <Dataset id="ds_init_comncdlist_C0013list_C0013" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  658. <Dataset id="ds_cmb_trsmtrgtflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  659. <ColumnInfo>
  660. <Column id="label" type="STRING" size="256"/>
  661. <Column id="value" type="STRING" size="256"/>
  662. </ColumnInfo>
  663. <Rows>
  664. <Row>
  665. <Col id="label">고객정보마이닝</Col>
  666. <Col id="value">1</Col>
  667. </Row>
  668. <Row>
  669. <Col id="label">주소록</Col>
  670. <Col id="value">2</Col>
  671. </Row>
  672. <Row>
  673. <Col id="label">건진정보마이닝</Col>
  674. <Col id="value">3</Col>
  675. </Row>
  676. </Rows>
  677. </Dataset>
  678. <Dataset id="ds_init_comncdlist_C0016list_C0016" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  679. <Dataset id="ds_init_comncdlist_C0014list_C0014" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  680. <Dataset id="ds_cmb_status" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  681. <ColumnInfo>
  682. <Column id="label" type="STRING" size="256"/>
  683. <Column id="value" type="STRING" size="256"/>
  684. </ColumnInfo>
  685. <Rows>
  686. <Row>
  687. <Col id="label">신규</Col>
  688. <Col id="value">I</Col>
  689. </Row>
  690. <Row>
  691. <Col id="label">삭제</Col>
  692. <Col id="value">D</Col>
  693. </Row>
  694. <Row>
  695. <Col id="label">수정</Col>
  696. <Col id="value">U</Col>
  697. </Row>
  698. </Rows>
  699. </Dataset>
  700. <Dataset id="ds_cmb_appbasedd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  701. <ColumnInfo>
  702. <Column id="label" type="STRING" size="256"/>
  703. <Column id="value" type="STRING" size="256"/>
  704. </ColumnInfo>
  705. <Rows>
  706. <Row>
  707. <Col id="label">오늘</Col>
  708. <Col id="value">0</Col>
  709. </Row>
  710. <Row>
  711. <Col id="label">건진일</Col>
  712. <Col id="value">1</Col>
  713. </Row>
  714. <Row>
  715. <Col id="label">특정일</Col>
  716. <Col id="value">4</Col>
  717. </Row>
  718. </Rows>
  719. </Dataset>
  720. <Dataset id="ds_init_comncdlist_C0031list_C0031" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  721. <Dataset id="ds_init_comncdlist_C0018list_C0018" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  722. <Dataset id="ds_mastauth" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  723. <ColumnInfo>
  724. <Column id="mastauth" type="STRING" size="256" sumtext="마스터여부"/>
  725. <Column id="aprvuserid" type="STRING" size="256" sumtext="직원ID"/>
  726. <Column id="posdeptcd" type="STRING" size="256" sumtext="부서코드"/>
  727. </ColumnInfo>
  728. </Dataset>
  729. <Dataset id="ds_send_cmpnattr" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  730. <ColumnInfo>
  731. <Column id="cmpncd" type="STRING" size="256"/>
  732. <Column id="trsmtrgtflag" type="STRING" size="256"/>
  733. <Column id="delivelist" type="STRING" size="256"/>
  734. </ColumnInfo>
  735. <Rows>
  736. <Row>
  737. <Col id="cmpncd"/>
  738. <Col id="trsmtrgtflag"/>
  739. <Col id="delivelist"/>
  740. </Row>
  741. </Rows>
  742. </Dataset>
  743. <Dataset id="ds_fwd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  744. <ColumnInfo>
  745. <Column id="cmpninfo" type="STRING" size="256"/>
  746. <Column id="cmpnlist" type="STRING" size="256"/>
  747. <Column id="datelist" type="STRING" size="256"/>
  748. </ColumnInfo>
  749. <Rows>
  750. <Row/>
  751. </Rows>
  752. </Dataset>
  753. <Dataset id="ds_temp_chkcmpncd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  754. <ColumnInfo>
  755. <Column id="cmpncd" type="STRING" size="256"/>
  756. </ColumnInfo>
  757. <Rows>
  758. <Row/>
  759. </Rows>
  760. </Dataset>
  761. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  762. <ColumnInfo>
  763. <Column id="nextcmpnlist" type="STRING" size="256"/>
  764. <Column id="result" type="STRING" size="256"/>
  765. </ColumnInfo>
  766. <Rows>
  767. <Row/>
  768. </Rows>
  769. </Dataset>
  770. <Dataset id="ds_hidden_trsmtrgtmenu_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  771. <ColumnInfo>
  772. <Column id="label" type="STRING" size="256"/>
  773. <Column id="func" type="STRING" size="256"/>
  774. <Column id="level" type="STRING" size="256"/>
  775. </ColumnInfo>
  776. <Rows>
  777. <Row>
  778. <Col id="label">행삭제</Col>
  779. <Col id="func">trsmtrgtlist_del</Col>
  780. </Row>
  781. </Rows>
  782. </Dataset>
  783. <Dataset id="ds_hidden_healexamtrsmtrgtmenu_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  784. <ColumnInfo>
  785. <Column id="label" type="STRING" size="256"/>
  786. <Column id="func" type="STRING" size="256"/>
  787. <Column id="level" type="STRING" size="256"/>
  788. </ColumnInfo>
  789. <Rows>
  790. <Row>
  791. <Col id="label">행삭제</Col>
  792. <Col id="func">healexamtrsmtrgtlist_del</Col>
  793. </Row>
  794. </Rows>
  795. </Dataset>
  796. <Dataset id="ds_send_cmpnattr_delivelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  797. <Dataset id="ds_temp_cmpnattr_cmpnattr" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  798. <ColumnInfo>
  799. <Column id="cmpncd" type="INT" size="256" sumtext="캠페인코드"/>
  800. </ColumnInfo>
  801. </Dataset>
  802. <Dataset id="ds_main_cmpn_cmpnattr_cmpnlnklist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  803. <Dataset id="ds_main_cmpn_cmpnattr_trsmtrgtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  804. <Dataset id="ds_main_cmpn_cmpnattr_delivelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  805. <Dataset id="ds_main_cmpn_cmpnattr_healexamtrsmtrgtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  806. </Objects>
  807. <Bind>
  808. <BindItem id="item0" compid="group3.ipt_rgstfromdd" propid="value" datasetid="ds_send_cmpnsrch" columnid="rgstfromdd"/>
  809. <BindItem id="item1" compid="group3.ipt_rgsttodd" propid="value" datasetid="ds_send_cmpnsrch" columnid="rgsttodd"/>
  810. <BindItem id="item2" compid="group3.cmb_cmpnflag" propid="value" datasetid="ds_send_cmpnsrch" columnid="cmpnflag"/>
  811. <BindItem id="item3" compid="group3.ipt_s_cmpnnm" propid="value" datasetid="ds_send_cmpnsrch" columnid="cmpnnm"/>
  812. <BindItem id="item4" compid="ipt_cmpnnm" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="cmpnnm"/>
  813. <BindItem id="item6" compid="rdo_cmpnflag" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="cmpnexecattr"/>
  814. <BindItem id="item7" compid="ipt_deptnm" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="rgstdeptnm"/>
  815. <BindItem id="item8" compid="cmb_trsmtrgtflag" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="trsmtrgtflag"/>
  816. <BindItem id="item9" compid="ipt_deptcd" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="rgstdeptcd"/>
  817. <BindItem id="item10" compid="ipt_exedate" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="deliveschedayno"/>
  818. <BindItem id="item11" compid="cmb_exeflag" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="bfaftflag"/>
  819. <BindItem id="item12" compid="ipt_exetime" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="deliveschetm"/>
  820. <BindItem id="item13" compid="input18" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid=""/>
  821. <BindItem id="item14" compid="input19" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="emailmsgmdlcd"/>
  822. <BindItem id="item15" compid="input20" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="emailmsglrgcd"/>
  823. <BindItem id="item16" compid="chk_email" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="emailuseyn"/>
  824. <BindItem id="item17" compid="ipt_smslrgcd" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="smsmsglrgcd"/>
  825. <BindItem id="item18" compid="ipt_smsmdlcd" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="smsmsgmdlcd"/>
  826. <BindItem id="item19" compid="ipt_smssmlcd" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="smsmsgsmlcd"/>
  827. <BindItem id="item20" compid="chk_sms" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="smsuseyn"/>
  828. <BindItem id="item21" compid="tar_msgcnts" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="msgcnts"/>
  829. <BindItem id="item22" compid="input17" propid="value" datasetid="ds_temp_cmpnattr_delivesche" columnid="emailtitl"/>
  830. <BindItem id="item23" compid="rdo_exebaseflag_t" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="execbaseddflag"/>
  831. <BindItem id="item24" compid="ipt_exebase31" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="execbasespcldd"/>
  832. <BindItem id="item25" compid="ipt_exebase11" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="execbasedayno"/>
  833. <BindItem id="item26" compid="ipt_exebase21" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="execbasemm"/>
  834. <BindItem id="item27" compid="ipt_exebase22" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="execbasedd"/>
  835. <BindItem id="item28" compid="input9" propid="value" datasetid="ds_temp_cmpnattr_cmpnlnk" columnid="nextcmpnnm"/>
  836. <BindItem id="item29" compid="input10" propid="value" datasetid="ds_temp_cmpnattr_cmpnlnk" columnid="nextcmpncd"/>
  837. <BindItem id="item30" compid="radio3" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid="nextcmpnlnkpnttm"/>
  838. <BindItem id="item5" compid="ipt_cmpncd" propid="value" datasetid="ds_main_cmpn_cmpnattr" columnid=""/>
  839. </Bind>
  840. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  841. * System Name :
  842. * Job Name :
  843. * Creator :
  844. * Make Date : 2016-05-24
  845. * Description :
  846. *---------------------------------------------------------------------------------------
  847. * Modify Date Modifier Modify Description
  848. *---------------------------------------------------------------------------------------
  849. * 2016-05-24 Live Converter TF->XP
  850. *
  851. *---------------------------------------------------------------------------------------
  852. ****************************************************************************************/
  853. include "com_commonxp::comm_main.xjs";
  854. include "crm_crmxp::CCZ001.xjs";
  855. include "crm_campainxp::CPZ001.xjs";
  856. var arErrorCode = new HashArray();
  857. function SMCPC00100_oninit(obj:Form, e:InitEventInfo)
  858. {
  859. frmf_initForm(obj);
  860. }
  861. function SMCPC00100_onload(obj:Form, e:LoadEventInfo)
  862. {
  863. grdf_initGrid(grd_cmpnlist);
  864. grdf_setRowTypeIcon(grd_cmpnlist, 0);
  865. grdf_initGrid(grd_exedatelist);
  866. grdf_setRowTypeIcon(grd_exedatelist, 0);
  867. grdf_initGrid(grd_cmpnlnklist);
  868. grdf_setRowTypeIcon(grd_cmpnlnklist, 0);
  869. grdf_initGrid(swt_trgt.trgt_case1.grd_trsmtrgtlist);
  870. grdf_initGrid(swt_trgt.trgt_case2.grd_innrclntgruplist);
  871. grdf_initGrid(swt_trgt.trgt_case3.grd_healexamtrsmtrgtlist);
  872. swt_trgt.tabindex = 0;
  873. // C0013: 캠페인속성, C0014: 캠페인예정구분, C0015: 캠페인기준구분, C0016: 캠페인사용여부, C0017: 캠페인응답여부, C0018: 캠페인연결시점, C0031: 고객중복처리여부, C0032: 적용기준일
  874. var arrParam = [{dsNm: "ds_init_comncdlist_C0013list_C0013", cdGrpId: "C0013"}
  875. ,{dsNm: "ds_init_comncdlist_C0014list_C0014", cdGrpId: "C0014"}
  876. ,{dsNm: "ds_init_comncdlist_C0015list_C0015", cdGrpId: "C0015"}
  877. ,{dsNm: "ds_init_comncdlist_C0016list_C0016", cdGrpId: "C0016"}
  878. ,{dsNm: "ds_init_comncdlist_C0017list_C0017", cdGrpId: "C0017"}
  879. ,{dsNm: "ds_init_comncdlist_C0018list_C0018", cdGrpId: "C0018"}
  880. ,{dsNm: "ds_init_comncdlist_C0031list_C0031", cdGrpId: "C0031"}
  881. ,{dsNm: "ds_init_comncdlist_C0032list_C0032", cdGrpId: "C0032"}]
  882. appf_getCodeList(arrParam);
  883. rdo_cmpnflag.innerdataset = "ds_init_comncdlist_C0013list_C0013";
  884. rdo_cmpnflag.datacolumn = "cdnm";
  885. rdo_cmpnflag.codecolumn = "cdid";
  886. radio3.innerdataset = "ds_init_comncdlist_C0018list_C0018";
  887. radio3.datacolumn = "cdnm";
  888. radio3.codecolumn = "cdid";
  889. // 캠페인 및 대상자 목록 리스트 초기화
  890. ds_main_cmpn_cmpnlist.clearData();
  891. // 권한설정, 캠페인 및 대상자 등록화면 초기화
  892. fCheckAuth();
  893. fInitCmpn();
  894. fSetButtons();
  895. swt_trgt.tabindex = 1;
  896. //마스터 권한 조회
  897. var oParam = {};
  898. oParam.id = "TRCRB00106";
  899. oParam.service = "rulemngtapp.RuleMngt";
  900. oParam.method = "reqGetAprvMast";
  901. oParam.inds = "";
  902. oParam.outds = "ds_mastauth=mastauth";
  903. oParam.async = false;
  904. //oParam.callback = "cf_TRCRB00106";
  905. tranf_submit(oParam); //권한 조회
  906. var mastauth = ds_mastauth.getColumn(0, "mastauth")
  907. if (mastauth != "Y" )
  908. {
  909. btn_aprvsave.enable = false;
  910. }
  911. }
  912. function fCheckAuth()
  913. {
  914. // 권한체크
  915. if (!frmf_checkAuth("r"))
  916. {
  917. group3.btn_search.enable = false;
  918. }
  919. if (!frmf_checkAuth("x"))
  920. {
  921. btn_cmpnsave.enable = false;
  922. btn_cmpnreset.enable = false;
  923. }
  924. if (!frmf_checkAuth("p"))
  925. {
  926. btn_saveexcel.enable = false;
  927. }
  928. }
  929. function fInitCmpn()
  930. {
  931. // 캠페인 등록화면 초기화
  932. ds_main_cmpn_cmpnattr.clearData();
  933. ds_main_cmpn_cmpnattr.addRow();
  934. ds_main_cmpn_cmpnlnklist.clearData();
  935. ds_main_cmpn_delivelist.clearData();
  936. ds_main_cmpn_trsmtrgtlist.clearData();
  937. ds_main_cmpn_healexamtrsmtrgtlist.clearData();
  938. ds_main_cmpn_innrclntgruplist.clearData();
  939. ds_main_cmpn_cmpnattr.setColumn(0, "cmpnexecattr", "1");
  940. ds_main_cmpn_cmpnattr.setColumn(0, "execbaseddflag", "1");
  941. ds_main_cmpn_cmpnattr.setColumn(0, "nextcmpnlnkpnttm", "C");
  942. ds_temp_cmpnattr_delivesche.clearData();
  943. ds_temp_cmpnattr_delivesche.addRow();
  944. ds_temp_cmpnattr_delivesche.setColumn(0, "bfaftflag", "B");
  945. fSetBaseDD(1);
  946. // 캠페인 추가(입력)모드
  947. ds_main_cmpn_cmpnattr.setColumn(0, "savemode","I");
  948. var dutplcenm = sysf_getUserInfo("dutplcenm");
  949. var dutplcecd = sysf_getUserInfo("dutplcecd");
  950. dsf_makeValue(ds_main_cmpn_cmpnattr, "rgstdeptnm", "string",dutplcenm);
  951. dsf_makeValue(ds_main_cmpn_cmpnattr, "rgstdeptcd", "string",dutplcecd);
  952. }
  953. function fSetButtons()
  954. {
  955. var savemode = ds_main_cmpn_cmpnattr.getColumn(0, "savemode");
  956. var trsmtrgtflag = ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag");
  957. if (savemode == "I")
  958. {
  959. btn_select.enable = false;
  960. btn_release.enable = false;
  961. btn_cmpnadd.enable = false;
  962. btn_cmpnreset.enable = true;
  963. btn_cmpnsaveas.enable = false;
  964. btn_cmpnupdt.enable = false;
  965. btn_cmpnsave.enable = true;
  966. }
  967. else if (savemode == "U")
  968. {
  969. btn_select.enable = true;
  970. btn_release.enable = true;
  971. btn_cmpnadd.enable = true;
  972. btn_cmpnreset.enable = true;
  973. btn_cmpnsaveas.enable = true;
  974. btn_cmpnupdt.enable = true;
  975. btn_cmpnsave.enable = false;
  976. }
  977. if (savemode == "U" && trsmtrgtflag == "2")
  978. {
  979. btn_addrsave.enable = true;
  980. }
  981. }
  982. function fSetBaseDD(s)
  983. {
  984. // // 캠페인(1) 및 대상자(2) 실행기준일 선택에 따른 입력 컨트롤 제한
  985. var base_flag = "";
  986. if (s==1)
  987. {
  988. base_flag = ds_main_cmpn_cmpnattr.getColumn(0, "execbaseddflag");
  989. switch (base_flag)
  990. {
  991. case "1":
  992. ipt_exebase11.enable = true;
  993. ipt_exebase21.enable = false;
  994. ipt_exebase22.enable = false;
  995. ipt_exebase31.enable = false;
  996. break;
  997. case "2":
  998. ipt_exebase11.enable = false;
  999. ipt_exebase21.enable = true;
  1000. ipt_exebase22.enable = true;
  1001. ipt_exebase31.enable = false;
  1002. break;
  1003. case "3":
  1004. ipt_exebase11.enable = false;
  1005. ipt_exebase21.enable = false;
  1006. ipt_exebase22.enable = false;
  1007. ipt_exebase31.enable = true;
  1008. break;
  1009. default:
  1010. ipt_exebase11.enable = true;
  1011. ipt_exebase21.enable = false;
  1012. ipt_exebase22.enable = false;
  1013. ipt_exebase31.enable = false;
  1014. break;
  1015. }
  1016. }
  1017. }
  1018. function group3_btn_search_onclick(obj:Button, e:ClickEventInfo)
  1019. {
  1020. fInitGetAttr(); //조회한 속성 초기화
  1021. dsf_makeValue(ds_send_cmpnsrch, "fstrgstrid", "string", ds_send_cmpnsrch.getColumn(0, "rgstr"));
  1022. dsf_makeValue(ds_send_cmpnsrch, "cmpnexecattr", "string", ds_send_cmpnsrch.getColumn(0, "cmpnflag"));
  1023. var oParam = {};
  1024. oParam.id = "TRCPC00101";
  1025. oParam.service = "cmpnmngtapp.CmpnMngt";
  1026. oParam.method = "reqGetCmpnList";
  1027. oParam.inds = "srchreq=ds_send_cmpnsrch";
  1028. oParam.outds = "ds_main_cmpn_cmpnlist=cmpnlist";
  1029. oParam.async = false;
  1030. //oParam.callback = "cf_TRCPC00101";
  1031. tranf_submit(oParam);
  1032. //같은 부서 마스터만 승인설정 가능
  1033. fGetAprvynSet();
  1034. }
  1035. function fInitGetAttr()
  1036. {
  1037. // 캠페인 조회한 속성 초기화
  1038. ds_send_cmpnattr.setColumn(0, "cmpncd", "");
  1039. ds_init.setColumn(0, "cmpnnm", ""); //선택된 캠페인이 없으면 대상자 조회의 이름 표시 해제
  1040. fInitCmpn();
  1041. }
  1042. function fGetAprvynSet()
  1043. {
  1044. if(ds_main_cmpn_cmpnlist.rowcount > 0)
  1045. {
  1046. for(var i = 0; i < ds_main_cmpn_cmpnlist.rowcount; i++)
  1047. {
  1048. if(ds_mastauth.getColumn(0, "posdeptcd") == ds_main_cmpn_cmpnlist.getColumn(i, "rgstdeptcd") && ds_mastauth.getColumn(0, "mastauth") == "Y")
  1049. {
  1050. ds_main_cmpn_cmpnlist.updatecontrol = false;
  1051. ds_main_cmpn_cmpnlist.setColumn(i, "aprvyn_property", "combo");
  1052. ds_main_cmpn_cmpnlist.updatecontrol = true;
  1053. }
  1054. else
  1055. {
  1056. ds_main_cmpn_cmpnlist.updatecontrol = false;
  1057. ds_main_cmpn_cmpnlist.setColumn(i, "aprvyn_property", "none");
  1058. ds_main_cmpn_cmpnlist.updatecontrol = true;
  1059. }
  1060. }
  1061. }
  1062. }
  1063. function grd_cmpnlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  1064. {
  1065. if (ds_main_cmpn_cmpnlist.rowposition >= 0 && e.col > 0 )
  1066. {
  1067. fSelectCmpn(); // 캠페인 선택
  1068. fGetCmpnAttr(); // 등록된 캠페인의 속성을 조회
  1069. fSetButtons(); // 버튼컨트롤
  1070. var row = ds_main_cmpn_cmpnlist.rowposition;
  1071. var cmpnnm = ds_main_cmpn_cmpnlist.getColumn(row, "cmpnnm");
  1072. var cmpnexecattrTemp = ds_main_cmpn_cmpnlist.getColumn(row, "cmpnexecattr");
  1073. var cmpnexecattr = "";
  1074. if(cmpnexecattrTemp == "1")
  1075. {
  1076. cmpnexecattr = "일회성";
  1077. }
  1078. else if(cmpnexecattrTemp == "2")
  1079. {
  1080. cmpnexecattr = "반복성";
  1081. }
  1082. else if(cmpnexecattrTemp == "3")
  1083. {
  1084. cmpnexecattr = "연결성";
  1085. }
  1086. else
  1087. {
  1088. cmpnexecattr = "사용안함";
  1089. }
  1090. var trsmtrgtflagTemp = ds_main_cmpn_cmpnlist.getColumn(row, "trsmtrgtflag");
  1091. var trsmtrgtflag = "";
  1092. if(trsmtrgtflagTemp == "1")
  1093. {
  1094. trsmtrgtflag = "고객정보마이닝";
  1095. }
  1096. else if(trsmtrgtflagTemp == "2")
  1097. {
  1098. trsmtrgtflag = "주소록";
  1099. }
  1100. else if(trsmtrgtflagTemp == "3")
  1101. {
  1102. trsmtrgtflag = "건진정보마이닝";
  1103. }
  1104. var nextcmpncd = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "nextcmpncd"));
  1105. var execcnt = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "execcnt"));
  1106. var fstrgstdtTemp = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "fstrgstdt"));
  1107. var fstrgstdt = String(fstrgstdtTemp).substring(0,8);
  1108. var lastupdtdtTemp = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "lastupdtdt"));
  1109. var lastupdtdt = String(lastupdtdtTemp).substring(0,8);
  1110. var rgstdeptnm = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "rgstdeptnm"));
  1111. var usernm = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "usernm"));
  1112. var aprvynTemp = utlf_transNullToEmpty(ds_main_cmpn_cmpnlist.getColumn(row, "aprvyn"));
  1113. var aprvyn = "";
  1114. if(aprvynTemp == "Y")
  1115. {
  1116. aprvyn = "사용";
  1117. }
  1118. else
  1119. {
  1120. aprvyn = "중지";
  1121. }
  1122. var result = "캠페인명:"+ cmpnnm +" 캠페인속성:"+ cmpnexecattr +" 대상위치:"+ trsmtrgtflag +"\n\n";
  1123. result += "표적일:"+ nextcmpncd +" 최종실행건수:"+ execcnt +"\n\n";
  1124. result += "등록부서:"+ rgstdeptnm +" 등록자:"+ usernm +" 승인여부:"+ aprvyn +"\n\n";
  1125. result += "등록일:"+ fstrgstdt +" 최종수정일:"+ lastupdtdt;
  1126. ds_fwd.setColumn(0, "cmpninfo", result);
  1127. }
  1128. }
  1129. function fSelectCmpn()
  1130. {
  1131. // 선택된 캠페인 코드를 인스턴스에 복사 - 캠페인 속성 조회, 캠페인 대상자 목록 조회에 이용
  1132. var grid = ds_main_cmpn_cmpnlist;
  1133. if (grid.rowposition >= 0 )
  1134. {
  1135. var cmpn_cd = grid.getColumn(grid.rowposition, "cmpncd");
  1136. var cmpn_nm = grid.getColumn(grid.rowposition, "cmpnnm");
  1137. ds_send_cmpnattr.setColumn(0, "cmpncd", cmpn_cd);
  1138. ds_init.setColumn(0, "cmpnnm", cmpn_nm);
  1139. }
  1140. }
  1141. function fGetCmpnAttr()
  1142. {
  1143. fInitCmpn(); //초기화 후 조회(이전 목록이 남아있는 경우가 있음)
  1144. fSetControls(2); //캠페인 입력컨트롤 제한
  1145. var oParam = {};
  1146. oParam.id = "TRCPC00103";
  1147. oParam.service = "cmpnmngtapp.CmpnMngt";
  1148. oParam.method = "reqGetCmpnAttr";
  1149. oParam.inds = "req=ds_send_cmpnattr";
  1150. oParam.outds = "ds_main_cmpn_cmpnattr=cmpnattr ds_main_cmpn_cmpnlnklist=cmpnlnklist ds_main_cmpn_delivelist=delivelist "
  1151. +"ds_main_cmpn_trsmtrgtlist=trsmtrgtlist ds_main_cmpn_innrclntgruplist=innrclntgruplist ds_main_cmpn_healexamtrsmtrgtlist=healexamtrsmtrgtlist";
  1152. oParam.async = false;
  1153. //oParam.callback = "cf_TRCPC00103";
  1154. tranf_submit(oParam);
  1155. // 캠페인 전송내용 그리드에 전송 D-day표시
  1156. var exec_base_dd_flag = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbaseddflag"));
  1157. var execbasespcldd = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasespcldd"));
  1158. var execbasedayno = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasedayno"));
  1159. var execbasemm = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasemm"));
  1160. var execbasedd = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasedd"));
  1161. var deliveschedayno1 = ""
  1162. if (exec_base_dd_flag=="3")
  1163. {
  1164. deliveschedayno1 = execbasespcldd;
  1165. }
  1166. else if (exec_base_dd_flag=="1")
  1167. {
  1168. deliveschedayno1 = execbasedayno+"일후";
  1169. }
  1170. else if (exec_base_dd_flag=="2")
  1171. {
  1172. deliveschedayno1 = execbasemm+"개월"+execbasedd+"일후";
  1173. }
  1174. for (var i = 0; i < ds_main_cmpn_delivelist.rowcount; i++)
  1175. {
  1176. ds_main_cmpn_delivelist.updatecontrol = false;
  1177. dsf_makeValue(ds_main_cmpn_delivelist, "deliveschedayno1", "String",deliveschedayno1, i);
  1178. ds_main_cmpn_delivelist.updatecontrol = true;
  1179. }
  1180. ds_main_cmpn_cmpnattr.setColumn(0, "savemode","U");
  1181. fSetBaseDD(1); //실행기준일 입력 제한
  1182. fTrsmTrgtFlag();
  1183. }
  1184. function fSetControls(s)
  1185. {
  1186. // 캠페인(1:등록, 2:수정) 및 대상자(3:등록, 4:수정) 수정일 경우 입력 및 선택 제한(수정 불가)
  1187. switch (s)
  1188. {
  1189. case 1:
  1190. ipt_cmpncd.enable = true;
  1191. ipt_cmpncd.mask = "########";
  1192. btn_cmpnsrch.enable = true;
  1193. cmb_trsmtrgtflag.enable = true;
  1194. break;
  1195. case 2:
  1196. ipt_cmpncd.enable = false;
  1197. ipt_cmpncd.mask = "";
  1198. btn_cmpnsrch.enable = false;
  1199. cmb_trsmtrgtflag.enable = false;
  1200. break;
  1201. default:
  1202. break;
  1203. }
  1204. }
  1205. function fTrsmTrgtFlag()
  1206. {
  1207. var trsmtrgtflag = ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag");
  1208. if (trsmtrgtflag == "1")
  1209. {
  1210. swt_trgt.tabindex = 0;
  1211. }
  1212. else if (trsmtrgtflag == "2")
  1213. {
  1214. swt_trgt.tabindex = 1;
  1215. }
  1216. else if (trsmtrgtflag == "3")
  1217. {
  1218. swt_trgt.tabindex = 2;
  1219. }
  1220. }
  1221. function ipt_cmpncd_onkeyup(obj:Edit, e:KeyEventInfo)
  1222. {
  1223. if(e.keycode == 13)
  1224. {
  1225. obj.updateToDataset();
  1226. btn_cmpnsrch.click();
  1227. }
  1228. }
  1229. function btn_cmpnsrch_onclick(obj:Button, e:ClickEventInfo)
  1230. {
  1231. var cmpn_cd = ds_main_cmpn_cmpnattr.getColumn(0, "cmpncd");
  1232. if (utlf_isNull(cmpn_cd))
  1233. {
  1234. sysf_messageBox("캠페인코드를","C001");
  1235. ipt_cmpncd.setFocus();
  1236. }
  1237. else
  1238. {
  1239. if (fCheckCmpnCd(cmpn_cd))
  1240. {
  1241. sysf_messageBox("캠페인코드가","E006");
  1242. ipt_cmpncd.setFocus();
  1243. }
  1244. else
  1245. {
  1246. sysf_messageBox("중복된 캠페인코드가","I004");
  1247. }
  1248. }
  1249. }
  1250. function fCheckCmpnCd(cmpn_cd)
  1251. {
  1252. // 캠페인 코드 중복(존재) 체크 - 버튼에서 직접 호출 및 fSaveCmpn에서 호출, 연결 캠페인에서 확인
  1253. ds_temp_chkcmpncd.setColumn(0, "cmpncd", cmpn_cd);
  1254. trace(cmpn_cd)
  1255. var oParam = {};
  1256. oParam.id = "TRCPC00106";
  1257. oParam.service = "cmpnmngtapp.CmpnMngt";
  1258. oParam.method = "reqCheckCmpn";
  1259. oParam.inds = "req=ds_temp_chkcmpncd";
  1260. oParam.outds = "ds_temp_chkcmpncd=chkcmpncd";
  1261. oParam.async = false;
  1262. oParam.callback = "cf_TRCPC00106";
  1263. tranf_submit(oParam);
  1264. if(arErrorCode.pop("TRCPC00106") > -1)
  1265. {
  1266. if (!utlf_isNull(ds_temp_chkcmpncd.getColumn(0, "cmpncd")))
  1267. {
  1268. return true; // 코드가 존재함
  1269. }
  1270. else
  1271. {
  1272. dsf_makeValue(ds_temp_chkcmpncd, "cmpncd", "string", ""); // 결과 값이 없을 경우 노드(인스턴스)가 사라짐..
  1273. return false;
  1274. }
  1275. }
  1276. }
  1277. function cf_TRCPC00106(sSvcId, nErrorCode, sErrorMsg)
  1278. {
  1279. arErrorCode.push(sSvcId, nErrorCode);
  1280. if(nErrorCode < 0) return;
  1281. }
  1282. function ipt_deptnm_onkeyup(obj:Edit, e:KeyEventInfo)
  1283. {
  1284. if(e.keycode == 13)
  1285. {
  1286. obj.updateToDataset();
  1287. btn_deptsrch.click();
  1288. }
  1289. }
  1290. function btn_deptsrch_onclick(obj:Button, e:ClickEventInfo)
  1291. {
  1292. var search_condition = "deptnm";
  1293. var search_term = ds_main_cmpn_cmpnattr.getColumn(0, "rgstdeptnm");
  1294. var ref = cczfOpenSelectDept(search_condition, search_term)
  1295. ds_main_cmpn_cmpnattr.setColumn(0, "rgstdeptcd", ref.deptcd);
  1296. ds_main_cmpn_cmpnattr.setColumn(0, "rgstdeptnm", ref.deptnm);
  1297. }
  1298. function cmb_trsmtrgtflag_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1299. {
  1300. var trsmtrgtflag = obj.value;
  1301. if(trsmtrgtflag == "1")
  1302. {
  1303. swt_trgt.tabindex = 0;
  1304. }
  1305. else if(trsmtrgtflag == "2")
  1306. {
  1307. swt_trgt.tabindex = 1;
  1308. }
  1309. else if(trsmtrgtflag == "3")
  1310. {
  1311. swt_trgt.tabindex = 2;
  1312. }
  1313. }
  1314. function ipt_exetime_onkillfocus(obj:MaskEdit, e:KillFocusEventInfo)
  1315. {
  1316. var check_tm = String(obj.value);
  1317. if (!utlf_isNull(check_tm) && !utlf_isValidDateTime(check_tm,"hhmm"))
  1318. {
  1319. sysf_messageBox("시간이 바르게 입력되지","E007");
  1320. ipt_exetime.setFocus();
  1321. }
  1322. }
  1323. function chk_sms_onclick(obj:CheckBox, e:ClickEventInfo)
  1324. {
  1325. if(obj.value == "Y"){}
  1326. else
  1327. {
  1328. ds_temp_cmpnattr_delivesche.setColumn(0, "smsuseyn", "");
  1329. }
  1330. }
  1331. function ipt_smssmlcd_onkeyup(obj:Edit, e:KeyEventInfo)
  1332. {
  1333. if(e.keycode == 13)
  1334. {
  1335. obj.updateToDataset();
  1336. btn_smssrch.click();
  1337. }
  1338. }
  1339. function btn_smssrch_onclick(obj:Button, e:ClickEventInfo)
  1340. {
  1341. var search_condition = "S";
  1342. var search_term = ds_temp_cmpnattr_delivesche.getColumn(0, "smsmsgsmlcd");
  1343. var obj = cczfOpenSelectMsg(search_condition, search_term)
  1344. ds_temp_cmpnattr_delivesche.setColumn(0, "smsmsgsmlcd", obj.msgsmlcd);
  1345. ds_temp_cmpnattr_delivesche.setColumn(0, "smsmsgmdlcd", obj.msgmdlcd);
  1346. ds_temp_cmpnattr_delivesche.setColumn(0, "smsmsglrgcd", obj.msglrgcd);
  1347. ds_temp_cmpnattr_delivesche.setColumn(0, "smsmsg", obj.msgcnts);
  1348. }
  1349. function chk_email_onclick(obj:CheckBox, e:ClickEventInfo)
  1350. {
  1351. if(obj.value == "Y"){}
  1352. else
  1353. {
  1354. ds_temp_cmpnattr_delivesche.setColumn(0, "emailuseyn", "");
  1355. }
  1356. }
  1357. function input18_onkeyup(obj:Edit, e:KeyEventInfo)
  1358. {
  1359. if(e.keycode == 13)
  1360. {
  1361. obj.updateToDataset();
  1362. btn_emailsrch.click();
  1363. }
  1364. }
  1365. function btn_emailsrch_onclick(obj:Button, e:ClickEventInfo)
  1366. {
  1367. var search_condition = "E";
  1368. var search_term = ds_temp_cmpnattr_delivesche.getColumn(0, "emailmsgsmlcd");
  1369. var obj = cczfOpenSelectMsg(search_condition, search_term);
  1370. ds_temp_cmpnattr_delivesche.setColumn(0, "emailmsgsmlcd", obj.msgsmlcd);
  1371. ds_temp_cmpnattr_delivesche.setColumn(0, "emailmsgmdlcd", obj.msgmdlcd);
  1372. ds_temp_cmpnattr_delivesche.setColumn(0, "emailmsglrgcd", obj.msglrgcd);
  1373. ds_temp_cmpnattr_delivesche.setColumn(0, "emailtitl", obj.emailtitl);
  1374. }
  1375. function btn_msgprvw_onclick(obj:Button, e:ClickEventInfo)
  1376. {
  1377. fPrvwscrn();
  1378. }
  1379. function fPrvwscrn()
  1380. {
  1381. var msgcnts = utlf_transNullToEmpty(ds_temp_cmpnattr_delivesche.getColumn(0, "smsmsg"))
  1382. var posinstnm = sysf_getUserInfo("posinstnm")
  1383. var usernm = sysf_getUserInfo("usernm");
  1384. var getdate = utlf_getCurrentDate();
  1385. var pmonth = String(getdate).substr(4,2);
  1386. var pdate = String(getdate).substr(6,2);
  1387. var gettime = utlf_getCurrentTime();
  1388. var phour = String(gettime).substr(0,2);
  1389. var pmin = String(gettime).substr(2,2);
  1390. msgcnts = msgcnts.replace('<@고객>','홍길동');
  1391. msgcnts = msgcnts.replace('<@진료과>','내과');
  1392. msgcnts = msgcnts.replace('<@진료의>','홍길순');
  1393. msgcnts = msgcnts.replace('<@병원명>',posinstnm);
  1394. msgcnts = msgcnts.replace('<@월>',pmonth);
  1395. msgcnts = msgcnts.replace('<@일>',pdate);
  1396. msgcnts = msgcnts.replace('<@시>',phour);
  1397. msgcnts = msgcnts.replace('<@분>',pmin);
  1398. msgcnts = msgcnts.replace('<@처방코드>','A001');
  1399. ds_temp_cmpnattr_delivesche.setColumn(0, "msgcnts", msgcnts);
  1400. }
  1401. function btn_exedate_ins_onclick(obj:Button, e:ClickEventInfo)
  1402. {
  1403. fAddExecDD(); // 입력값 체크 후 실행예정일 행추가
  1404. }
  1405. function fAddExecDD()
  1406. {
  1407. var delive_dd = utlf_transNullToEmpty(ds_temp_cmpnattr_delivesche.getColumn(0, "deliveschedayno"));
  1408. var bf_aft_flag = utlf_transNullToEmpty(ds_temp_cmpnattr_delivesche.getColumn(0, "bfaftflag"));
  1409. var delive_tm = utlf_transNullToEmpty(ds_temp_cmpnattr_delivesche.getColumn(0, "deliveschetm"));
  1410. var sms_use_yn = utlf_transNullToEmpty(ds_temp_cmpnattr_delivesche.getColumn(0, "smsuseyn"));
  1411. var email_use_yn = utlf_transNullToEmpty(ds_temp_cmpnattr_delivesche.getColumn(0, "emailuseyn"));
  1412. var exec_base_dd_flag = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbaseddflag"));
  1413. var execbasespcldd = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasespcldd"));
  1414. var execbasedayno = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasedayno"));
  1415. var execbasemm = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasemm"));
  1416. var execbasedd = utlf_transNullToEmpty(ds_main_cmpn_cmpnattr.getColumn(0, "execbasedd"));
  1417. // 필수입력 및 입력값 체크
  1418. if (exec_base_dd_flag=="")
  1419. {
  1420. sysf_messageBox("전송 D-day를","C001");
  1421. }
  1422. else if (exec_base_dd_flag=="3" && execbasespcldd=="")
  1423. {
  1424. sysf_messageBox("전송 D-day를","C001");
  1425. ipt_exebase11.setFocus();
  1426. }
  1427. else if (exec_base_dd_flag=="1" && execbasedayno=="")
  1428. {
  1429. sysf_messageBox("전송 D-day를","C001");
  1430. ipt_exebase21.setFocus();
  1431. }
  1432. else if (exec_base_dd_flag=="2" && execbasemm=="")
  1433. {
  1434. sysf_messageBox("전송 D-day를","C001");
  1435. ipt_exebase31.setFocus();
  1436. }
  1437. else if (delive_dd=="")
  1438. {
  1439. sysf_messageBox("전송 D-day","C001");
  1440. ipt_exedate.setFocus();
  1441. }
  1442. else if (delive_tm=="")
  1443. {
  1444. sysf_messageBox("실행 예정시간을","C001");
  1445. ipt_exetime.setFocus();
  1446. // SMS, Email 둘 중 하나 체크 및 체크된 채널 메시지 선택 체크
  1447. }
  1448. else if (sms_use_yn=="" && email_use_yn=="")
  1449. {
  1450. sysf_messageBox("SMS와 Email 둘중 하나는","C002");
  1451. chk_sms.setFocus();
  1452. }
  1453. else if (sms_use_yn=="Y" && utlf_isNull(ds_temp_cmpnattr_delivesche.getColumn(0, "smsmsgsmlcd")))
  1454. {
  1455. sysf_messageBox("SMS 메시지를","C002");
  1456. }
  1457. else if (email_use_yn=="Y" && utlf_isNull(ds_temp_cmpnattr_delivesche.getColumn(0, "emailmsgsmlcd")))
  1458. {
  1459. sysf_messageBox("Email 메시지를","C002");
  1460. }
  1461. else if (fCheckExecDD(grd_exedatelist, delive_dd, bf_aft_flag, delive_tm))
  1462. {
  1463. sysf_messageBox("실행예정일이 ","E006");
  1464. ipt_exedate.setFocus();
  1465. }
  1466. else
  1467. {
  1468. // 캠페인 전송내용 그리드에 전송 D-day표시
  1469. var deliveschedayno1 = ""
  1470. if (exec_base_dd_flag=="3")
  1471. {
  1472. deliveschedayno1 = execbasespcldd;
  1473. }
  1474. else if (exec_base_dd_flag=="1")
  1475. {
  1476. deliveschedayno1 = execbasedayno+"일후";
  1477. }
  1478. else if (exec_base_dd_flag=="2")
  1479. {
  1480. deliveschedayno1 = execbasemm+"개월"+execbasedd+"일후";
  1481. }
  1482. var addRow = ds_main_cmpn_delivelist.addRow();
  1483. ds_main_cmpn_delivelist.copyRow(addRow, ds_temp_cmpnattr_delivesche, 0);
  1484. for (var i = 0; i < ds_main_cmpn_delivelist.rowcount; i++)
  1485. {
  1486. ds_main_cmpn_delivelist.setColumn(i, "deliveschedayno1",deliveschedayno1);
  1487. }
  1488. ds_temp_cmpnattr_delivesche.clearData();
  1489. ds_temp_cmpnattr_delivesche.addRow();
  1490. ds_temp_cmpnattr_delivesche.setColumn(0, "bfaftflag", "B");
  1491. }
  1492. }
  1493. function fCheckExecDD(grid, exec_dd, bf_aft_flag, exec_tm)
  1494. {
  1495. // 실행예정일 중복 등록 체크 - fAddExecDD, fAddTrgtExecDD에서 호출
  1496. if (this.objects[grid.binddataset].rowcount > 0)
  1497. {
  1498. for (var i = 0; i < this.objects[grid.binddataset].rowcount; i++)
  1499. {
  1500. if (this.objects[grid.binddataset].getColumn(i, "deliveschedayno") == exec_dd && this.objects[grid.binddataset].getColumn(i, "bfaftflag") == bf_aft_flag
  1501. && this.objects[grid.binddataset].getColumn(i, "deliveschetm") == exec_tm)
  1502. {
  1503. return true;
  1504. }
  1505. }
  1506. }
  1507. }
  1508. function btn_exedate_del_onclick(obj:Button, e:ClickEventInfo)
  1509. {
  1510. dsf_deleteSelectedRows(grd_exedatelist);
  1511. }
  1512. function button115_onclick(obj:Button, e:ClickEventInfo)
  1513. {
  1514. fNextCmpnList(grd_cmpnlnklist); // 연결캠페인 항목보기 그리드 확인 후 팝업호출
  1515. }
  1516. function fNextCmpnList(grid)
  1517. {
  1518. var rows = this.objects[grid.binddataset].rowcount;
  1519. if (rows > 0)
  1520. {
  1521. for(var i = 0; i < rows; i++)
  1522. {
  1523. var nextcmpncd = this.objects[grid.binddataset].getColumn(i, 2);
  1524. if (i == 0)
  1525. {
  1526. nextcmpnlist = "";
  1527. }
  1528. else
  1529. {
  1530. nextcmpnlist += ",'";
  1531. }
  1532. nextcmpnlist += nextcmpncd;
  1533. if (i != rows)
  1534. {
  1535. nextcmpnlist += "'";
  1536. }
  1537. }
  1538. ds_temp.setColumn(0, "nextcmpnlist",nextcmpnlist);
  1539. var objArg = new Object();
  1540. objArg.arg_ds_send_nextcmpn = ds_temp;
  1541. frmf_modal("SPCPC01000", "SPCPC01000", objArg, "", "", "", "", "", "", "", "", "", "M");
  1542. //modal("SPCPC01000", "", "", "", "SPCPC01000", "/root/temp/nextcmpnlist", "/root/send/nextcmpn");
  1543. }
  1544. else
  1545. {
  1546. sysf_messageBox("연결캠페인이","I004");
  1547. }
  1548. }
  1549. function button4_onclick(obj:Button, e:ClickEventInfo)
  1550. {
  1551. var send_cmpn_cd = ds_temp_cmpnattr_cmpnlnk.getColumn(0, "nextcmpncd");
  1552. var send_cmpn_nm = ds_temp_cmpnattr_cmpnlnk.getColumn(0, "nextcmpnnm");
  1553. var rtn = cpzfOpenSelectCmpn(send_cmpn_cd, send_cmpn_nm); // 캠페인 선택 팝업(modal)
  1554. ds_temp_cmpnattr_cmpnlnk.setColumn(0, "nextcmpncd", rtn.cmpncd);
  1555. ds_temp_cmpnattr_cmpnlnk.setColumn(0, "nextcmpnnm", rtn.cmpnnm);
  1556. }
  1557. function button5_onclick(obj:Button, e:ClickEventInfo)
  1558. {
  1559. fAddCmpnLnk(); // 입력값 체크 후 연결캠페인 행추가
  1560. }
  1561. function fAddCmpnLnk()
  1562. {
  1563. // 필수입력 및 입력값 체크
  1564. var next_cmpn_nm = ds_temp_cmpnattr_cmpnlnk.getColumn(0, "nextcmpnnm");
  1565. var next_cmpn_cd = ds_temp_cmpnattr_cmpnlnk.getColumn(0, "nextcmpncd");
  1566. if (utlf_isNull(next_cmpn_nm) || utlf_isNull(next_cmpn_cd))
  1567. {
  1568. sysf_messageBox("연결 캠페인을","C002");
  1569. }
  1570. else if (!fCheckCmpnCd(next_cmpn_cd))
  1571. {
  1572. sysf_messageBox("캠페인코드가","E004");
  1573. }
  1574. else if (fCheckCmpnLnk(grd_cmpnlnklist, next_cmpn_cd))
  1575. {
  1576. sysf_messageBox("연결 캠페인이 ","E006");
  1577. }
  1578. else
  1579. {
  1580. var addRow = ds_main_cmpn_cmpnlnklist.addRow();
  1581. ds_main_cmpn_cmpnlnklist.copyRow(addRow, ds_temp_cmpnattr_cmpnlnk, 0);
  1582. ds_temp_cmpnattr_cmpnlnk.clearData();
  1583. }
  1584. }
  1585. function fCheckCmpnLnk(grid, cmpn_cd)
  1586. {
  1587. // 연결캠페인 중복 등록 체크 - fAddCmpnLnk, fAddTrgtCmpnLnk에서 호출
  1588. if (this.objects[grid.binddataset].rowcount > 0)
  1589. {
  1590. for (var i = 0; i < this.objects[grid.binddataset].rowcount; i++)
  1591. {
  1592. if (this.objects[grid.binddataset].getColumn(i, 2) == cmpn_cd)
  1593. {
  1594. return true;
  1595. }
  1596. }
  1597. }
  1598. else
  1599. {
  1600. return false;
  1601. }
  1602. }
  1603. function button7_onclick(obj:Button, e:ClickEventInfo)
  1604. {
  1605. dsf_deleteSelectedRows(grd_cmpnlnklist);
  1606. }
  1607. function swt_trgt_trgt_case1_btn_trsmtrgtdtmn_onclick(obj:Button, e:ClickEventInfo)
  1608. {
  1609. fGetTrsmTrgt(1);
  1610. }
  1611. function swt_trgt_trgt_case3_btn_trsmtrgthealexamdtmn_onclick(obj:Button, e:ClickEventInfo)
  1612. {
  1613. fGetTrsmTrgt(2);
  1614. }
  1615. function fGetTrsmTrgt(g)
  1616. {
  1617. var trsmtrgtflag = ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag");
  1618. if (trsmtrgtflag == "1")
  1619. {
  1620. frmf_modal("SPCPC00700", "SPCPC00700", "", "", "", "", "", "", "", "", "", "", "M");
  1621. }
  1622. else if (trsmtrgtflag == "3")
  1623. {
  1624. frmf_modal("SPCPC01200", "SPCPC01200", "", "", "", "", "", "", "", "", "", "", "M");
  1625. }
  1626. }
  1627. function swt_trgt_trgt_case1_grd_trsmtrgtlist_onrbuttonup(obj:Grid, e:GridMouseEventInfo)
  1628. {
  1629. pmn_menu1.trackPopup(e.screenX,e.screenY);
  1630. }
  1631. function pmn_menu1_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1632. {
  1633. eval(e.id +"();");
  1634. }
  1635. function pmn_menu1_onmouseleave(obj:PopupMenu, e:MenuMouseEventInfo)
  1636. {
  1637. obj.closePopup();
  1638. }
  1639. function swt_trgt_trgt_case1_grd_trsmtrgtlist_onkeyup(obj:Grid, e:KeyEventInfo)
  1640. {
  1641. if(ds_main_cmpn_trsmtrgtlist.getColumn(ds_main_cmpn_trsmtrgtlist.rowposition, "status") != "I")
  1642. {
  1643. ds_main_cmpn_trsmtrgtlist.setColumn(ds_main_cmpn_trsmtrgtlist.rowposition, "status", "U");
  1644. }
  1645. }
  1646. function swt_trgt_trgt_case1_grd_trsmtrgtlist_oncloseup(obj:Grid, e:GridEditEventInfo)
  1647. {
  1648. if(ds_main_cmpn_trsmtrgtlist.getColumn(ds_main_cmpn_trsmtrgtlist.rowposition, "status") != "I")
  1649. {
  1650. ds_main_cmpn_trsmtrgtlist.setColumn(ds_main_cmpn_trsmtrgtlist.rowposition, "status", "U");
  1651. }
  1652. obj.setCellProperty("Body", obj.getBindCellIndex("Body", "appbasedd"), "edittype", "combo");
  1653. obj.setCellProperty("Body", obj.getBindCellIndex("Body", "spcldd"), "edittype", "date");
  1654. }
  1655. function pmn_menu2_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1656. {
  1657. eval(e.id +"();");
  1658. }
  1659. function pmn_menu2_onmouseleave(obj:PopupMenu, e:MenuMouseEventInfo)
  1660. {
  1661. obj.closePopup();
  1662. }
  1663. function swt_trgt_trgt_case3_grd_healexamtrsmtrgtlist_onrbuttonup(obj:Grid, e:GridMouseEventInfo)
  1664. {
  1665. pmn_menu2.trackPopup(e.screenX,e.screenY);
  1666. }
  1667. function swt_trgt_trgt_case3_grd_healexamtrsmtrgtlist_onkeyup(obj:Grid, e:KeyEventInfo)
  1668. {
  1669. if(ds_main_cmpn_healexamtrsmtrgtlist.getColumn(ds_main_cmpn_healexamtrsmtrgtlist.rowposition, "status") != "I")
  1670. {
  1671. ds_main_cmpn_healexamtrsmtrgtlist.setColumn(ds_main_cmpn_healexamtrsmtrgtlist.rowposition, "status", "U");
  1672. }
  1673. }
  1674. function swt_trgt_trgt_case3_grd_healexamtrsmtrgtlist_oncloseup(obj:Grid, e:GridEditEventInfo)
  1675. {
  1676. if(ds_main_cmpn_healexamtrsmtrgtlist.getColumn(ds_main_cmpn_healexamtrsmtrgtlist.rowposition, "status") != "I")
  1677. {
  1678. ds_main_cmpn_healexamtrsmtrgtlist.setColumn(ds_main_cmpn_healexamtrsmtrgtlist.rowposition, "status", "U");
  1679. }
  1680. obj.setCellProperty("Body", obj.getBindCellIndex("Body", "appbasedd"), "edittype", "combo");
  1681. obj.setCellProperty("Body", obj.getBindCellIndex("Body", "spcldd"), "edittype", "date");
  1682. }
  1683. function rdo_exebaseflag_t_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  1684. {
  1685. fSetBaseDD(1); // 실행기준일 선택에 따른 활성화(1: 캠페인)
  1686. }
  1687. function ipt_exebase31_onkillfocus(obj:Calendar, e:KillFocusEventInfo)
  1688. {
  1689. var check_dd = String(obj.value);
  1690. if (!utlf_isNull(check_dd) && !utlf_isValidDateTime(check_dd,"YYYYMMDD"))
  1691. {
  1692. sysf_messageBox("날짜가 바르게 입력되지","E007");
  1693. obj.setFocus();
  1694. }
  1695. }
  1696. function trsmtrgtlist_del()
  1697. {
  1698. if ( ds_main_cmpn_trsmtrgtlist.getColumn(ds_main_cmpn_trsmtrgtlist.rowposition, "status") == "I")
  1699. {
  1700. ds_main_cmpn_trsmtrgtlist.deleteRow(ds_main_cmpn_trsmtrgtlist.rowposition);
  1701. }
  1702. else
  1703. {
  1704. ds_main_cmpn_trsmtrgtlist.setColumn(ds_main_cmpn_trsmtrgtlist.rowposition, "status", "D");
  1705. }
  1706. }
  1707. function btn_select_onclick(obj:Button, e:ClickEventInfo)
  1708. {
  1709. var grid = ds_main_cmpn_delivelist;
  1710. var grid2 = ds_main_cmpn_cmpnlnklist;
  1711. if(grid.rowcount > 0)
  1712. {
  1713. var deliveschedayno = "";
  1714. var bfaftflag = "";
  1715. var deliveschetm = "";
  1716. var deliveschetmTemp = "";
  1717. var smsuseyn = "";
  1718. var emailuseyn = "";
  1719. var result = "";
  1720. for(var i = 0; i < grid.rowcount; i++)
  1721. {
  1722. deliveschedayno = utlf_transNullToEmpty(grid.getColumn(i, "deliveschedayno"));
  1723. deliveschetmTemp = utlf_transNullToEmpty(grid.getColumn(i, "bfaftflag"));
  1724. if( deliveschetmTemp == "B")
  1725. {
  1726. bfaftflag = "전";
  1727. }
  1728. else
  1729. {
  1730. bfaftflag = "후";
  1731. }
  1732. deliveschetm = utlf_transNullToEmpty(grid.getColumn(i, "deliveschetm"));
  1733. smsuseyn = utlf_transNullToEmpty(grid.getColumn(i, "smsuseyn"));
  1734. emailuseyn = utlf_transNullToEmpty(grid.getColumn(i, "emailuseyn"));
  1735. trace(smsuseyn)
  1736. result += "전송실행일:"+deliveschedayno+" 전후:"+bfaftflag+" 전송시간:"+deliveschetm+" SMS:"+smsuseyn+" E-mail:"+emailuseyn+"\n\n";
  1737. }
  1738. ds_fwd.setColumn(0, "datelist", result);
  1739. }
  1740. if(grid2.rowcount > 0)
  1741. {
  1742. var nextcmpnnm = "";
  1743. var nextcmpncd = "";
  1744. var result2 = "";
  1745. for(var i = 0; i < grid2.rowcount; i++)
  1746. {
  1747. nextcmpnnm = utlf_transNullToEmpty(grid2.getColumn(i, "nextcmpnnm"));
  1748. nextcmpncd = utlf_transNullToEmpty(grid2.getColumn(i, "nextcmpncd"));
  1749. result2 += "연결캠페인명:"+nextcmpnnm+" 캠페인코드:"+nextcmpncd+"\n\n";
  1750. }
  1751. ds_fwd.setColumn(0, "cmpnlist", result2);
  1752. }
  1753. var objArg = new Object();
  1754. objArg.arg_ds_fwd = ds_fwd;
  1755. frmf_modal("SPCPC01100", "SPCPC01100", objArg, "", "", "", "", "", "", "", "", "", "M");
  1756. }
  1757. function btn_release_onclick(obj:Button, e:ClickEventInfo)
  1758. {
  1759. fGetTrgtLIst();
  1760. }
  1761. function fGetTrgtLIst()
  1762. {
  1763. var cmpn_cd = ds_send_cmpnattr.getColumn(0, "cmpncd")
  1764. if (utlf_isNull(cmpn_cd))
  1765. {
  1766. sysf_messageBox("캠페인을","C002");
  1767. }
  1768. else
  1769. {
  1770. ds_send_cmpnattr.setColumn(0, "trsmtrgtflag", ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag"));
  1771. var grid = ds_main_cmpn_delivelist;
  1772. for (var i = 0; i < grid.rowcount; i++)
  1773. {
  1774. var deliveschedayno1 = ds_main_cmpn_delivelist.getColumn(i, "deliveschedayno1");
  1775. var deliveschedayno = ds_main_cmpn_delivelist.getColumn(i, "deliveschedayno");
  1776. var bfaftflag = ds_main_cmpn_delivelist.getColumn(i, "bfaftflag");
  1777. var deliveschetm = ds_main_cmpn_delivelist.getColumn(i, "deliveschetm");
  1778. var smsuseyn = ds_main_cmpn_delivelist.getColumn(i, "smsuseyn");
  1779. var smsmsgsmlcd = ds_main_cmpn_delivelist.getColumn(i, "smsmsgsmlcd");
  1780. var emailuseyn = ds_main_cmpn_delivelist.getColumn(i, "emailuseyn");
  1781. var emailmsgsmlcd = ds_main_cmpn_delivelist.getColumn(i, "emailmsgsmlcd");
  1782. var cmpncd = ds_main_cmpn_delivelist.getColumn(i, "cmpncd");
  1783. var smsmsglrgcd = ds_main_cmpn_delivelist.getColumn(i, "smsmsglrgcd");
  1784. var smsmsgmdlcd = ds_main_cmpn_delivelist.getColumn(i, "smsmsgmdlcd");
  1785. var emailmsglrgcd = ds_main_cmpn_delivelist.getColumn(i, "emailmsglrgcd");
  1786. var emailmsgmdlcd = ds_main_cmpn_delivelist.getColumn(i, "emailmsgmdlcd");
  1787. // 캠페인대상리스트 창으로 넘겨주기 위하여 캠페인 전송내용 복사
  1788. dsf_makeValue(ds_send_cmpnattr_delivelist, "deliveschedayno1", "string", deliveschedayno1, i);
  1789. dsf_makeValue(ds_send_cmpnattr_delivelist, "deliveschedayno", "string", deliveschedayno, i);
  1790. dsf_makeValue(ds_send_cmpnattr_delivelist, "bfaftflag", "string", bfaftflag, i);
  1791. dsf_makeValue(ds_send_cmpnattr_delivelist, "deliveschetm", "string", deliveschetm, i);
  1792. dsf_makeValue(ds_send_cmpnattr_delivelist, "smsuseyn", "string", smsuseyn, i);
  1793. dsf_makeValue(ds_send_cmpnattr_delivelist, "smsmsgsmlcd", "string", smsmsgsmlcd, i);
  1794. dsf_makeValue(ds_send_cmpnattr_delivelist, "emailuseyn", "string", emailuseyn, i);
  1795. dsf_makeValue(ds_send_cmpnattr_delivelist, "emailmsgsmlcd", "string", emailmsgsmlcd, i);
  1796. dsf_makeValue(ds_send_cmpnattr_delivelist, "cmpncd", "string", cmpncd, i);
  1797. dsf_makeValue(ds_send_cmpnattr_delivelist, "smsmsglrgcd", "string", smsmsglrgcd, i);
  1798. dsf_makeValue(ds_send_cmpnattr_delivelist, "smsmsgmdlcd", "string", smsmsgmdlcd, i);
  1799. dsf_makeValue(ds_send_cmpnattr_delivelist, "emailmsglrgcd", "string", emailmsglrgcd, i);
  1800. dsf_makeValue(ds_send_cmpnattr_delivelist, "emailmsgmdlcd", "string", emailmsgmdlcd, i);
  1801. }
  1802. var objArg = new Object();
  1803. objArg.arg_ds_send_cmpnattr = ds_send_cmpnattr;
  1804. objArg.arg_ds_send_cmpnattr_delivelist = ds_send_cmpnattr_delivelist;
  1805. frmf_modal("SPCPC00900", "SPCPC00900", objArg, "", "", "", "", "", "", "", "", "", "M");
  1806. }
  1807. }
  1808. function btn_addrsave_onclick(obj:Button, e:ClickEventInfo)
  1809. {
  1810. fAddrSave();
  1811. }
  1812. function fAddrSave()
  1813. {
  1814. var cmpn_cd = ds_send_cmpnattr.getColumn(0, "cmpncd");
  1815. var trsmtrgtflag = ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag");
  1816. if (utlf_isNull(cmpn_cd))
  1817. {
  1818. sysf_messageBox("캠페인을","C002");
  1819. }
  1820. else if (trsmtrgtflag != "2")
  1821. {
  1822. sysf_messageBox("전송대상이 주소록으로 선택되지 ","E007");
  1823. }
  1824. else
  1825. {
  1826. ds_send_cmpnattr.setColumn(0, "trsmtrgtflag", ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag"));
  1827. var objArg = new Object();
  1828. objArg.arg_ds_send_cmpnattr = ds_send_cmpnattr;
  1829. frmf_modal("SPCPC00800", "SPCPC00800", objArg, "", "", "", "", "", "", "", "", "", "M");
  1830. }
  1831. }
  1832. function btn_cmpnadd_onclick(obj:Button, e:ClickEventInfo)
  1833. {
  1834. fInitGetAttr(1); //조회한 속성 초기화
  1835. fSetButtons(2); //캠페인 속성 탭
  1836. fSetControls(1); //캠페인 입력컨트롤 초기
  1837. fSetBaseDD(1); //실행예정일 입력컨트롤
  1838. ds_main_cmpn_cmpnattr.setColumn(0, "savemode","I");
  1839. ds_main_cmpn_cmpnattr.setColumn(0, "rgstdeptnm", sysf_getUserInfo("dutplcenm"));
  1840. ds_main_cmpn_cmpnattr.setColumn(0, "rgstdeptcd", sysf_getUserInfo("dutplcecd"));
  1841. }
  1842. function btn_cmpnreset_onclick(obj:Button, e:ClickEventInfo)
  1843. {
  1844. if (!utlf_isNull(ds_send_cmpnattr.getColumn(0, "cmpncd")))
  1845. {
  1846. fInitCmpn(); //캠페인 속성 초기화
  1847. }
  1848. else
  1849. {
  1850. fInitGetAttr(1); //조회한 속성 초기화
  1851. ds_main_cmpn_cmpnattr.setColumn(0, "savemode","I");
  1852. }
  1853. }
  1854. function btn_cmpnsaveas_onclick(obj:Button, e:ClickEventInfo)
  1855. {
  1856. ds_main_cmpn_cmpnattr.setColumn(0, "savemode","I");
  1857. fSaveCmpn();
  1858. }
  1859. function fCheckCmpn()
  1860. {
  1861. var exec_base_dd_flag = ds_main_cmpn_cmpnattr.getColumn(0, "execbaseddflag");
  1862. if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "cmpnnm")))
  1863. {
  1864. sysf_messageBox("캠페인명을","C001");
  1865. ipt_cmpnnm.setFocus();
  1866. }
  1867. else if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "cmpnlrgcd")))
  1868. {
  1869. sysf_messageBox("캠페인 대분류를","C002");
  1870. }
  1871. else if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "cmpnmdlcd")))
  1872. {
  1873. sysf_messageBox("캠페인 중분류를","C002");
  1874. }
  1875. else if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "cmpnsmlcd")))
  1876. {
  1877. sysf_messageBox("캠페인 소분류를","C002");
  1878. }
  1879. else if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "rgstdeptcd")))
  1880. {
  1881. sysf_messageBox("캠페인 등록부서를","C002");
  1882. ipt_deptnm.setFocus();
  1883. }
  1884. else if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag")))
  1885. {
  1886. sysf_messageBox("캠페인 전송대상을","C002");
  1887. cmb_trsmtrgtflag.setFocus();
  1888. // 실행기준일 입력 체크
  1889. }
  1890. else if (exec_base_dd_flag == "3" && utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "execbasespcldd")))
  1891. {
  1892. sysf_messageBox("실행 기준일을","C001");
  1893. ipt_exebase11.setFocus();
  1894. }
  1895. else if (exec_base_dd_flag == "1" && utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "execbasedayno")))
  1896. {
  1897. sysf_messageBox("실행 기준일을","C001");
  1898. ipt_exebase21.setFocus();
  1899. }
  1900. else if (exec_base_dd_flag == "2" && utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "execbasemm")))
  1901. {
  1902. sysf_messageBox("실행 기준일을","C001");
  1903. ipt_exebase31.setFocus();
  1904. // 실행예정일 입력 체크
  1905. }
  1906. else if (ds_main_cmpn_delivelist.rowcount == 0)
  1907. {
  1908. sysf_messageBox("실행 예정일을 추가하지","E007");
  1909. ipt_exedate.setFocus();
  1910. // 속성이 연결성일 경우 연결 캠페인 추가
  1911. }
  1912. else if (ds_main_cmpn_cmpnattr.getColumn(0, "cmpnexecattr")=="3" && ds_main_cmpn_cmpnlnklist.rowcount == 0)
  1913. {
  1914. sysf_messageBox("연결 캠페인을 추가하지","E007");
  1915. }
  1916. else
  1917. {
  1918. return true;
  1919. }
  1920. }
  1921. function fSaveCmpn()
  1922. {
  1923. var save_mode = ds_main_cmpn_cmpnattr.getColumn(0, "savemode");
  1924. // 필수입력 체크
  1925. if (!fCheckCmpn()) return;
  1926. // 캠페인 코드 중복 체크 및 시퀀스 할당
  1927. if (save_mode == "I")
  1928. {
  1929. if (utlf_isNull(ds_main_cmpn_cmpnattr.getColumn(0, "cmpncd")))
  1930. {
  1931. var oParam = {};
  1932. oParam.id = "TRCPC00109";
  1933. oParam.service = "cmpnmngtapp.CmpnMngt";
  1934. oParam.method = "reqGetCmpnSeq";
  1935. oParam.inds = "";
  1936. oParam.outds = "ds_temp_cmpnattr_cmpnattr=cmpnattr";
  1937. oParam.async = false;
  1938. //oParam.callback = "cf_TRCPC00109";
  1939. tranf_submit(oParam); // cmpncd sequence에서 값 가져와서 할당
  1940. var cmpn_seq = ds_temp_cmpnattr_cmpnattr.getColumn(0, "cmpncd");
  1941. var cmpn_cd = "@" + cmpn_seq;
  1942. ds_main_cmpn_cmpnattr.setColumn(0, "cmpncd", cmpn_cd);
  1943. }
  1944. else
  1945. {
  1946. if (fCheckCmpnCd(ds_main_cmpn_cmpnattr.getColumn(0, "cmpncd")))
  1947. {
  1948. sysf_messageBox("캠페인코드가","E006");
  1949. ipt_cmpncd.setFocus();
  1950. return false;
  1951. }
  1952. }
  1953. }
  1954. // 실행기준일과 실행일시 체크
  1955. if (!fCheckBaseDD()) return;
  1956. // 연결캠페인, 실행예정일 변경된 리스트 확인
  1957. var updt_cmpn_lnk = grdf_getGridUpdateData(grd_cmpnlnklist);
  1958. if (updt_cmpn_lnk.rowcount != 0)
  1959. {
  1960. grdf_setStatusColumn(updt_cmpn_lnk, "status");
  1961. ds_main_cmpn_cmpnattr_cmpnlnklist.copyData(updt_cmpn_lnk);
  1962. }
  1963. var updt_exec_sche = grdf_getGridUpdateData(grd_exedatelist);
  1964. if (updt_exec_sche.rowcount != 0)
  1965. {
  1966. grdf_setStatusColumn(updt_exec_sche, "status");
  1967. ds_main_cmpn_cmpnattr_delivelist.copyData(updt_exec_sche);
  1968. }
  1969. // 전송대상 그리드 내용을 VO형태로 구성
  1970. var trsmtrgtflag = ds_main_cmpn_cmpnattr.getColumn(0, "trsmtrgtflag");
  1971. if (trsmtrgtflag == "1")
  1972. {
  1973. if (ds_main_cmpn_trsmtrgtlist.rowcount > 0 )
  1974. {
  1975. var send_status = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1976. var send_appbasedd = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1977. var send_spcldd = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1978. var send_clintdupltretmthd = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1979. var send_daydd = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1980. var send_exechour = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1981. var send_execmnt = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1982. var send_dtmnkey = new Array(ds_main_cmpn_trsmtrgtlist.rowcount);
  1983. var sColSep = "▦";
  1984. var sRowSep = "▩";
  1985. var send_data = "m" + sColSep + "appbasedd" + sColSep + "spcldd" + sColSep + "clintdupltretmthd" + sColSep + "exechour" + sColSep + "execmnt" + sColSep + "dtmnkey" + sRowSep; //타이틀 map file 등에서 사용
  1986. for (var i = 0; i < ds_main_cmpn_trsmtrgtlist.rowcount; i++)
  1987. {
  1988. send_status[i] = ds_main_cmpn_trsmtrgtlist.getColumn(i, "status"); // 상태값(I,U,D)
  1989. send_appbasedd[i] = ds_main_cmpn_trsmtrgtlist.getColumn(i, "appbasedd"); // 산정기준일
  1990. send_spcldd[i] = ds_main_cmpn_trsmtrgtlist.getColumn(i, "spcldd"); // 특정일
  1991. send_clintdupltretmthd[i] = ds_main_cmpn_trsmtrgtlist.getColumn(i, "clintdupltretmthd"); // 업데이트구분
  1992. send_daydd[i] = ds_main_cmpn_trsmtrgtlist.getColumn(i, "daydd"); // 업데이트실행시간
  1993. send_exechour[i] = String(send_daydd[i]).substring(0,2); // 업데이트실행시간(시)
  1994. send_execmnt[i] = String(send_daydd[i]).substring(2,4); // 업데이트실행시간(분)
  1995. send_dtmnkey[i] = ds_main_cmpn_trsmtrgtlist.getColumn(i, "dtmnkey"); // 데이터마이닝키
  1996. if (!utlf_isNull(send_status[i]))
  1997. {
  1998. send_data += send_status[i] + sColSep + send_appbasedd[i] + sColSep + send_spcldd[i] + sColSep + send_clintdupltretmthd[i] + sColSep + send_exechour[i] + sColSep + send_execmnt[i] + sColSep + send_dtmnkey[i] + sRowSep; // VO형태로 구성
  1999. }
  2000. }
  2001. dsf_setCSVToDs("ds_main_cmpn_cmpnattr_trsmtrgtlist", send_data);
  2002. }
  2003. }
  2004. else if (trsmtrgtflag == "3")
  2005. {
  2006. if (ds_main_cmpn_healexamtrsmtrgtlist.rowcount > 0 )
  2007. {
  2008. var send_status = new Array(ds_main_cmpn_healexamtrsmtrgtlist.rowcount);
  2009. var send_appbasedd = new Array(ds_main_cmpn_healexamtrsmtrgtlist.rowcount);
  2010. var send_spcldd = new Array(ds_main_cmpn_healexamtrsmtrgtlist.rowcount);
  2011. var send_clintdupltretmthd = new Array(ds_main_cmpn_healexamtrsmtrgtlist.rowcount);
  2012. var send_execdt = new Array(ds_main_cmpn_healexamtrsmtrgtlist.rowcount);
  2013. var send_healexamdtmnkey = new Array(ds_main_cmpn_healexamtrsmtrgtlist.rowcount);
  2014. var sColSep = "▦";
  2015. var sRowSep = "▩";
  2016. var send_data = "m" + sColSep + "appbasedd" + sColSep + "spcldd" + sColSep + "clintdupltretmthd" + sColSep + "execdt" + sColSep + "healexamdtmnkey" + sRowSep; //타이틀 map file 등에서 사용
  2017. for (var i = 0; i < ds_main_cmpn_healexamtrsmtrgtlist.rowcount; i++)
  2018. {
  2019. send_status[i] = ds_main_cmpn_healexamtrsmtrgtlist.getColumn(i, "status"); // 상태값(I,U,D)
  2020. send_appbasedd[i] = ds_main_cmpn_healexamtrsmtrgtlist.getColumn(i, "appbasedd"); // 산정기준일
  2021. send_spcldd[i] = ds_main_cmpn_healexamtrsmtrgtlist.getColumn(i, "spcldd"); // 특정일
  2022. send_clintdupltretmthd[i] = ds_main_cmpn_healexamtrsmtrgtlist.getColumn(i, "clintdupltretmthd"); // 업데이트구분
  2023. send_execdt[i] = ds_main_cmpn_healexamtrsmtrgtlist.getColumn(i, "daydd"); // 업데이트실행시간
  2024. send_healexamdtmnkey[i] = ds_main_cmpn_healexamtrsmtrgtlist.getColumn(i, "healexamdtmnkey"); // 건진데이터마이닝키
  2025. if (!utlf_isNull(send_status[i]))
  2026. {
  2027. send_data += send_status[i] + sColSep + send_appbasedd[i] + sColSep + send_spcldd[i] + sColSep + send_clintdupltretmthd[i] + sColSep + send_execdt[i] + sColSep + send_healexamdtmnkey[i] + sRowSep; // VO형태로 구성
  2028. }
  2029. }
  2030. dsf_setCSVToDs("ds_main_cmpn_cmpnattr_healexamtrsmtrgtlist", send_data);
  2031. }
  2032. }
  2033. dsf_setDefaultVal(ds_main_cmpn_cmpnattr, "execbasedayno:0,execbasemm:0,execbasedd:0,nextcmpnlnkpnttm:C");
  2034. ds_main_cmpn_cmpnattr_delivelist.updatecontrol = false;
  2035. dsf_setDefaultVal(ds_main_cmpn_cmpnattr_delivelist, "smsuseyn:N,emailuseyn:N");
  2036. ds_main_cmpn_cmpnattr_delivelist.updatecontrol = true;
  2037. var oParam = {};
  2038. oParam.id = "TXCPC00101";
  2039. oParam.service = "cmpnmngtapp.CmpnMngt";
  2040. oParam.method = "reqExeCmpn";
  2041. oParam.inds = "cmpnsave=ds_main_cmpn_cmpnattr cmpnlnklist=ds_main_cmpn_cmpnattr_cmpnlnklist "
  2042. +"delivelist=ds_main_cmpn_cmpnattr_delivelist trsmtrgtlist=ds_main_cmpn_cmpnattr_trsmtrgtlist healexamtrsmtrgtlist=ds_main_cmpn_cmpnattr_healexamtrsmtrgtlist";
  2043. oParam.outds = "";
  2044. oParam.async = false;
  2045. oParam.callback = "cf_TXCPC00101";
  2046. tranf_submit(oParam);
  2047. if(arErrorCode.pop("TXCPC00101") > -1)
  2048. {
  2049. // 그리드의 상태 제거 및 인스턴스 초기화
  2050. ds_main_cmpn_cmpnlnklist.clearData();
  2051. ds_main_cmpn_delivelist.clearData();
  2052. ds_main_cmpn_trsmtrgtlist.clearData();
  2053. ds_main_cmpn_healexamtrsmtrgtlist.clearData();
  2054. // 신규 등록이면 수정모드로 변경(키값 전달)
  2055. if (save_mode == "I")
  2056. {
  2057. ds_main_cmpn_cmpnattr.setColumn(0, "savemode", "U");
  2058. ds_send_cmpnattr.setColumn(0, "cmpncd", ds_main_cmpn_cmpnattr.getColumn(0, "cmpncd"));
  2059. fSetControls(2);
  2060. }
  2061. sysf_messageBox("캠페인 저장이","I002");
  2062. }
  2063. }
  2064. function cf_TXCPC00101(sSvcId, nErrorCode, sErrorMsg)
  2065. {
  2066. arErrorCode.push(sSvcId, nErrorCode);
  2067. }
  2068. function fCheckBaseDD()
  2069. {
  2070. // 실행기준일과 실행일시 체크 - fSaveCmpn에서 호출
  2071. // (실행기준일을 먼저 입력 > 실행예정일 입력 시 날짜 체크 > 실행기준일 변경 시 다시 체크해야 하며, 시점이 불명확하여 저장 시 체크)
  2072. var return_value = true;
  2073. var gridDs = ds_main_cmpn_delivelist;
  2074. var prest_dd = utlf_getCurrentDate();
  2075. var base_dd = new Date();
  2076. var exec_base_dd_flag = ds_main_cmpn_cmpnattr.getColumn(0, "execbaseddflag");
  2077. var exec_base_dayno = ds_main_cmpn_cmpnattr.getColumn(0, "execbasedayno");
  2078. var exec_base_mm = ds_main_cmpn_cmpnattr.getColumn(0, "execbasemm");
  2079. var exec_base_dd = ds_main_cmpn_cmpnattr.getColumn(0, "execbasedd");
  2080. var exec_base_spcl_dd = ds_main_cmpn_cmpnattr.getColumn(0, "execbasespcldd");
  2081. if (exec_base_dd_flag == "1")
  2082. {
  2083. base_dd = base_dd.getAddDate(parseInt(exec_base_dayno), "D");
  2084. }
  2085. else if (exec_base_dd_flag == "2")
  2086. {
  2087. base_dd = base_dd.getAddDate(parseInt(exec_base_mm), "M");
  2088. base_dd = base_dd.getAddDate(parseInt(exec_base_dd), "D");
  2089. }
  2090. else if (exec_base_dd_flag == "3")
  2091. {
  2092. base_dd = exec_base_spcl_dd.toDate();
  2093. }
  2094. // 실행예정일(그리드 값)과 실행기준일 비교
  2095. if (gridDs.rowcount > 0)
  2096. {
  2097. for (var i = 0; i < gridDs.rowcount ; i++)
  2098. {
  2099. var exec_dd = base_dd.getAddDate(-parseInt(gridDs.getColumn(i, "deliveschedayno"))).getDateFormat("YYYYMMDD");
  2100. if (gridDs.getColumn(i, "bfaftflag") == "B" && prest_dd > exec_dd)
  2101. {
  2102. return_value = false;
  2103. sysf_messageBox(parseInt(i+1)+" 번째 실행예정일이 과거날짜","E008");
  2104. }
  2105. }
  2106. }
  2107. return return_value;
  2108. }
  2109. function btn_cmpnupdt_onclick(obj:Button, e:ClickEventInfo)
  2110. {
  2111. fSaveCmpn();
  2112. }
  2113. function btn_cmpnsave_onclick(obj:Button, e:ClickEventInfo)
  2114. {
  2115. fSaveCmpn();
  2116. }
  2117. ]]></Script>
  2118. </Form>
  2119. </FDL>