mcommon.js.soonsu 63 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643
  1. 
  2. var gvMyUIDPath = null;
  3. var gvOpUIDPath = null;
  4. var gvChUIDPath = null;
  5. var gvDate = null;
  6. var gvParamPath = null;
  7. var gvPropPath = null;
  8. var gvAuthPath = null;
  9. var gvTitlePath = null;
  10. var gvScnTypePath = null;
  11. var gvErrorMsgPath = null;
  12. var gvSystemPath = null;
  13. var gvMenuPath = null;
  14. var gvMenuGroupCdPath = null;
  15. var gvMenuPrestDeptCdPath = null;
  16. var gvMenuItemCdPath = null;
  17. var gvMenuParamPath = null;
  18. var gvSystemCd = null;
  19. var gvReportPath = null;
  20. var gvSubReportPath = null;
  21. var gvReportPropsPath = null;
  22. var gvReportParamsPath = null;
  23. var gvReportOptionsPath = null;
  24. var gvPatientInfoPath = null;
  25. var gvOperationInfoPath = null;
  26. var gvConsultInfoPath = null;
  27. var gvPatientInfoFlagPath = null;
  28. var gvOrderBasicInfoPath = null;
  29. var gvPopupMenuPath = null;
  30. var gvHelpPage = null;
  31. var gvTaskBarHeight = 34;
  32. var gvDefaultScrWidth = 1211;
  33. var gvDefaultScrHeight = 784;
  34. var gvSaveLoc = null;
  35. var fEssentialBackColor = "#ffe4b5";
  36. String.prototype.toDate = toDate;
  37. Date.prototype.getDateFormat = getDateFormat;
  38. Date.prototype.getAddDate = getAddDate;
  39. Date.prototype.getDayOfWeek = getDayOfWeek;
  40. String.prototype.setReplaceWord = setReplaceWord;
  41. String.prototype.getTrim = getTrim;
  42. function xforms_model_construct() {
  43. gvPropPath="/root/properties";
  44. gvMyUIDPath=gvPropPath+"/uid/myself";
  45. gvOpUIDPath=gvPropPath+"/uid/opener";
  46. gvChUIDPath=gvPropPath+"/uid/children/";
  47. gvParamPath=gvPropPath+"/parameters";
  48. gvChildClosePath=gvPropPath+"/childclose";
  49. gvSystemPath=gvPropPath+"/domain";
  50. gvAuthPath=gvPropPath+"/auth";
  51. gvMenuPath=gvPropPath+"/menu";
  52. gvMenuGroupCdPath=gvMenuPath+"/menugroupcd";
  53. gvMenuPrestDeptCdPath=gvMenuPath+"/menuprestdeptcd";
  54. gvMenuItemCdPath=gvMenuPath+"/menuitemcd";
  55. gvMenuParamPath=gvMenuPath+"/menuparam";
  56. gvTitlePath=gvPropPath+"/title";
  57. gvScnTypePath=gvPropPath+"/stype";
  58. gvErrorMsgPath=gvPropPath+"/error";
  59. gvReportPath=gvPropPath+"/report/mainreport";
  60. gvSubReportPath=gvPropPath+"/report/subreport";
  61. gvReportPropsPath=gvReportPath+"/props";
  62. gvReportParamsPath=gvReportPath+"/params";
  63. gvReportOptionsPath=gvReportPath+"/options";
  64. gvPatientInfoPath=gvPropPath+"/patient";
  65. gvOperationInfoPath=gvPatientInfoPath+"/operationinfo";
  66. gvConsultInfoPath=gvPatientInfoPath+"/consultinfo";
  67. gvPatientInfoFlagPath=gvPatientInfoPath+"/patientflag";
  68. gvOrderBasicInfoPath=gvPropPath+"/orderbasicinfo";
  69. gvPopupMenuPath=gvPropPath+"/popupmenu";
  70. gvSaveLocPath = gvPropPath + "/saveloc";
  71. model.makeValue(gvSaveLocPath, "true");
  72. gvDate = new Date();
  73. var uid = gvDate.getTime();
  74. model.makeValue(gvMyUIDPath,uid);
  75. model.makeValue(gvOpUIDPath,"");
  76. model.makeValue(gvSystemPath,"");
  77. }
  78. function xforms_ready() {
  79. window.setPopupMenu(false);
  80. if(window.type != "iviewer") {
  81. body.setAttribute("accesskey", "f12");
  82. }
  83. }
  84. function getSystemCd() {
  85. if (gvSystemCd != null) {
  86. return gvSystemCd;
  87. }
  88. if (htmlwindow.systemcd == undefined) {
  89. gvSystemCd = "";
  90. } else {
  91. gvSystemCd = new String(htmlwindow.systemcd);
  92. }
  93. return gvSystemCd;
  94. }
  95. function getViewer(name) {
  96. return null;
  97. }
  98. function getScreenID(url) {
  99. if (url == null) {
  100. url = document.URL;
  101. }
  102. var sp = url.split("/");
  103. return sp[sp.length-1].split(".")[0].substr(0,10);
  104. }
  105. function getMyUID() {
  106. return model.getValue(gvMyUIDPath);
  107. }
  108. function getOpenerUID() {
  109. return model.getValue(gvOpUIDPath);
  110. }
  111. function getChildUID(wid) {
  112. var cid = model.getValue(gvChUIDPath+wid);
  113. if (cid==null) { cid=""; }
  114. return cid;
  115. }
  116. function checkOpener() {
  117. if (isPopup()) {
  118. return (getOpenerUID()==opener.model.getValue(gvMyUIDPath));
  119. } else {
  120. return false;
  121. }
  122. }
  123. function getChildWindow(wid) {
  124. return findChildWindow(getChildUID(wid));
  125. }
  126. function findChildWindow(cid) {
  127. var child = null;
  128. for(i=0;i<window.children.length;i++) {
  129. child = window.children.item(i);
  130. if (child.model.getValue(gvMyUIDPath)==cid) return child;
  131. }
  132. return null;
  133. }
  134. function findChildWindowByScreenID(sid) {
  135. var child = null;
  136. for(i=0;i<window.children.length;i++) {
  137. child = window.children.item(i);
  138. if (child.getScreenID()==sid) return child;
  139. }
  140. return null;
  141. }
  142. function closeChildWindow() {
  143. if(model.getValue(gvChildClosePath) == "Y"){
  144. var childCnt = window.children.length;
  145. for( var i = childCnt; i > 0; i-- ) {
  146. window.children.item(i-1).close();
  147. }
  148. }
  149. }
  150. function setCloseChildWindow(){
  151. model.makeValue(gvChildClosePath,"Y");
  152. }
  153. function isPopup() {
  154. var stype = window.type;
  155. if (stype == "iviewer" || stype == "main") {
  156. return false;
  157. } else {
  158. return true;
  159. }
  160. }
  161. function activateChild(wid) {
  162. var cwnd = window.children.item(wid);
  163. if (cwnd != null) {
  164. cwnd.activate();
  165. }
  166. }
  167. function activateOpener() {
  168. if (isPopup()) {
  169. opener.activateMyWindow();
  170. }
  171. }
  172. function activateMyWindow() {
  173. if (isPopup()) {
  174. window.restore();
  175. window.activate();
  176. } else {
  177. htmlwindow.focus();
  178. }
  179. }
  180. function getScreenDisabled(){
  181. return body.disabled;
  182. }
  183. function setMenuDisabled(type){
  184. htmlwindow.setMenuDisabled(type);
  185. }
  186. function openInternal(openType,id,idType,monNo,xPos,yPos,wid,ref,resultref,userProp,prevPos) {
  187. var url = null;
  188. var sid = getScreenID(id);
  189. if (wid == null || wid == "") {
  190. wid = sid;
  191. }
  192. if (prevPos == null) {
  193. prevPos = true;
  194. }
  195. if ( idType == "url" ) { // idType == "url" 이면 ID를 그대로 URL로 open한다.
  196. url = id;
  197. } else {
  198. url = getScreenURL(sid);
  199. }
  200. var prop = null;
  201. if (monNo == null && xPos == null && yPos == null) {
  202. var viewerObj = getViewer("sysMessage");
  203. if (viewerObj != null && viewerObj.window.fSetStatusMessage != undefined) {
  204. var loc = locateCenter(xPos, yPos, userProp);
  205. xPos = loc[0];
  206. yPos = loc[1];
  207. prop = "top:"+yPos+"px;left:"+xPos+"px;width:" + gvDefaultScrWidth + "px;height:" + gvDefaultScrHeight + "px;";
  208. } else {
  209. prop = "align:center;width:" + gvDefaultScrWidth + "px;height:" + gvDefaultScrHeight + "px;";
  210. }
  211. } else {
  212. loc = locateCenter(xPos, yPos, userProp,monNo);
  213. xPos = loc[0];
  214. yPos = loc[1];
  215. prop="top:"+yPos+"px;left:"+xPos+"px;";
  216. }
  217. if (userProp != null) {
  218. prop = prop + userProp;
  219. }
  220. var viewerObj = getViewer("sysMessage");
  221. var wd = null;
  222. if (viewerObj != null && viewerObj.window.fGetOpenWindow != undefined) {
  223. wd = viewerObj.window.fGetOpenWindow(sid);
  224. } else {
  225. if (isPopup() && opener.getScreenID() == sid) {
  226. wd = opener;
  227. } else if (getScreenID() == sid) {
  228. wd = window;
  229. } else {
  230. wd = findChildWindowByScreenID(sid);
  231. }
  232. }
  233. var cid = "";
  234. if (wd != null && openType =="modeless") {
  235. cid = wd.getMyUID();
  236. wd.activateMyWindow();
  237. wd.body.dispatch("onActivate");
  238. } else {
  239. window.load(url,openType,wid,prop,ref,resultref);
  240. if (openType!="replace") {
  241. cid = model.getValue(gvChUIDPath+"latest");
  242. model.makeValue(gvChUIDPath+wid,cid);
  243. model.makeValue(gvChUIDPath+"latest","");
  244. }
  245. }
  246. return cid;
  247. }
  248. function navigate(id,monNo,xPos,yPos,wid,ref,resultref, authCode) {
  249. var scrnauth = model.getValue(gvAuthPath);
  250. setGlobalVariable("scrnauth", scrnauth);
  251. closeChildWindow();
  252. if (authCode == null) {
  253. setGlobalVariable("spclscrnauth", getAuthCode(""));
  254. } else {
  255. setGlobalVariable("spclscrnauth", getAuthCode(authCode));
  256. }
  257. return openInternal("replace",id,"scn",monNo,xPos,yPos,wid,ref,resultref);
  258. }
  259. function modal(id,monNo,xPos,yPos,wid,ref,resultref,userProp,prevPos, authCode, resizeType) {
  260. var rtn = "";
  261. body.setDisabled(true);
  262. if (userProp == null) {
  263. userProp = "min:hidden;max:hidden;";
  264. } else {
  265. userProp = "min:hidden;max:hidden;" + userProp;
  266. }
  267. if (authCode == null) {
  268. setGlobalVariable("spclscrnauth", getAuthCode(""));
  269. } else {
  270. setGlobalVariable("spclscrnauth", getAuthCode(authCode));
  271. }
  272. if (resizeType == null || resizeType == "" || resizeType == "none") {
  273. setGlobalVariable("resizetype", "none");
  274. } else if (resizeType == "notaskbar") {
  275. setGlobalVariable("resizetype", "notaskbar");
  276. } else if (resizeType == "free") {
  277. setGlobalVariable("resizetype", "free");
  278. }
  279. rtn = openInternal("modal",id,"scn",monNo,xPos,yPos,wid,ref,resultref,userProp,prevPos);
  280. body.setDisabled(false);
  281. return rtn;
  282. }
  283. function getAuthCode(auth) {
  284. return "";
  285. }
  286. function setSystemMessage(msg) {
  287. }
  288. function getAbsoluteLocation(mon,xpos,ypos) {
  289. var abspos = new Array(2);
  290. abspos[0] = xpos;
  291. abspos[1] = ypos;
  292. return abspos;
  293. }
  294. function getRelativeCoordinate(xpos,ypos){
  295. var coord = new Array(3);
  296. coord[0] = 1;
  297. coord[1] = xpos;
  298. coord[2] = ypos;
  299. return coord;
  300. }
  301. function getCurrentMonitorNumber() {
  302. return getRelativeCoordinate(window.left,window.top)[0];
  303. }
  304. function getMonitorSize(monNo) {
  305. var monSize = new Array(2);
  306. monSize[0] = 1280;
  307. monSize[1] = 1024;
  308. return monSize;
  309. }
  310. function addOpenWindow() {
  311. }
  312. function removeOpenWindow() {
  313. }
  314. function getOpenWindow(sid) {
  315. return null;
  316. }
  317. function getMainViewer(){
  318. return null;
  319. }
  320. function getParameterPath() {
  321. return gvParamPath;
  322. }
  323. function setParameter(name, value){
  324. var valueNode = instance1.selectSingleNode(gvParamPath+"/"+name+"/"+name+"value");
  325. model.makeValue(gvParamPath+"/"+name+"/"+name+"value", value);
  326. }
  327. function addParameter(name, value){
  328. var valueNode = instance1.selectSingleNode(gvParamPath+"/"+name+"/"+name+"value");
  329. if(valueNode==null){
  330. model.makeValue(gvParamPath+"/"+name+"/"+name+"value", value);
  331. }else{
  332. var nameNode = instance1.selectSingleNode(gvParamPath+"/"+name);
  333. valueNode = instance1.createNode("element", name+"value", "");
  334. valueNode.text = value;
  335. nameNode.appendChild(valueNode);
  336. }
  337. }
  338. function getParameter(name, index){
  339. if (index==null) { index = 1; }
  340. return model.getValue(gvParamPath+"/"+name+"/"+name+"value["+index+"]");
  341. }
  342. function getParameterCount(name){
  343. return new Number(instance1.selectnodes(gvParamPath+"/"+name+"/"+name+"value").length);
  344. }
  345. function removeParameter(name, index){
  346. if (index==null) { index = 1; }
  347. model.removeNode(gvParamPath+"/"+name+"/"+name+"value["+index+"]");
  348. }
  349. function clearParameter(name){
  350. model.removeNode(gvParamPath+"/"+name);
  351. }
  352. function getBizName(bizCode) {
  353. var firstChar = bizCode.charAt(2);
  354. var bizName = "";
  355. switch(firstChar) {
  356. case 'P':
  357. case 'p':
  358. bizName = "pam";
  359. break;
  360. case 'M':
  361. case 'm':
  362. bizName = "emr";
  363. break;
  364. case 'A':
  365. case 'a':
  366. bizName = "ast";
  367. break;
  368. case 'L':
  369. case 'l':
  370. bizName = "lis";
  371. break;
  372. case 'R':
  373. case 'r':
  374. bizName = "mis";
  375. break;
  376. case 'Z':
  377. case 'z':
  378. bizName = "com";
  379. break;
  380. case 'S':
  381. case 's':
  382. bizName = "sts";
  383. break;
  384. case 'C':
  385. case 'c':
  386. bizName = "crm";
  387. break;
  388. case 'I':
  389. case 'i':
  390. bizName = "crc";
  391. break;
  392. case 'D':
  393. case 'd':
  394. bizName = "crd";
  395. break;
  396. case 'T':
  397. case 't':
  398. bizName = "tmp";
  399. break;
  400. default:
  401. bizName = "";
  402. break;
  403. }
  404. return bizName;
  405. }
  406. function getMainDomain() {
  407. var domainStr = getGlobalVariable("domain");
  408. if (domainStr == "") {
  409. domainStr = "http://his999dev.knu.ac.kr:8088";
  410. }
  411. return domainStr;
  412. }
  413. function getDomain(syscd) {
  414. var domainStr = null;
  415. if (syscd == null || syscd == "") {
  416. syscd = model.getValue(gvSystemPath);
  417. }
  418. if (syscd == null || syscd == "") {
  419. domainStr = getMainDomain();
  420. } else {
  421. domainStr = getGlobalVariable("sysurl" + syscd.toUpperCase());
  422. }
  423. return domainStr;
  424. }
  425. function getScreenURL(sid,syscd) {
  426. return getDomain(syscd)+getScreenURI(sid);
  427. }
  428. function getScreenURI(sid) {
  429. return "/himed/webapps/hit/web/xrw/"+sid+".xrw";
  430. }
  431. function getActionURI(submitID) {
  432. var bizName = getBizName(submitID);
  433. var scrnID = getScreenID();
  434. return "/himed/webapps/hit/web/xrw/.live?submit_id="+submitID+"&business_id="+bizName+"&screen_id="+scrnID;
  435. }
  436. function getActionURL(submitID) {
  437. return getDomain()+getActionURI(submitID);
  438. }
  439. var gvOnSubmit = false;
  440. var gvShowAlert = false;
  441. var gvSuppressError = false;
  442. var gvForceSubmit = false;
  443. var gvHtmlRedirect = false;
  444. var gvSuppressErrorCheck = false;
  445. function setAlertOn() {
  446. gvShowAlert = true;
  447. }
  448. function setErrorOff(SuppressErrorCheck) {
  449. gvSuppressError = true;
  450. if(SuppressErrorCheck == true)
  451. {
  452. gvSuppressErrorCheck = true;
  453. }
  454. }
  455. function setErrorOn() {
  456. gvSuppressError = false;
  457. gvSuppressErrorCheck = false;
  458. }
  459. function setForceOn() {
  460. gvForceSubmit = true;
  461. }
  462. function setHtmlRedirect() {
  463. gvHtmlRedirect = true;
  464. }
  465. function checkTimeout() {
  466. var timeOut = parseInt(getGlobalVariable("session_timeout"));
  467. if (isNaN(timeOut) || timeOut <= 0) {
  468. return false;
  469. }
  470. var lastTime = getGlobalVariable("last_submit");
  471. var curTime = (new Date()).getTime();
  472. if (curTime - parseInt(lastTime) > (timeOut*60000)) {
  473. return true;
  474. } else {
  475. return false;
  476. }
  477. }
  478. function submit(submitID, refresh, ref, resultref, encoding) {
  479. var showAlert = gvShowAlert;
  480. var suppressError = gvSuppressError;
  481. gvShowAlert = false;
  482. if(gvSuppressErrorCheck == false)
  483. {
  484. gvSuppressError = false;
  485. }
  486. if (gvOnSubmit) {
  487. gvHtmlRedirect = false;
  488. return false;
  489. } else {
  490. gvOnSubmit = true;
  491. }
  492. var actionURL = getActionURL(submitID)
  493. + getUserSessionString();
  494. if ( refresh == null ) {
  495. refresh = true;
  496. }
  497. var retvalue = false;
  498. try {
  499. var sid = document.allElement.item(submitID);
  500. if (!sid) {
  501. messageBox("Submit["+submitID+"]이 정의되지","E007");
  502. gvOnSubmit = false;
  503. gvHtmlRedirect = false;
  504. return false;
  505. }
  506. if ( ref != null && ref != "" ) {
  507. sid.setAttribute("ref", ref);
  508. }
  509. if ( resultref != null && resultref != "" ) {
  510. sid.setAttribute("resultref", resultref);
  511. }
  512. sid.setAttribute("action", actionURL);
  513. sid.setAttribute("encoding", "utf-8");
  514. model.removeNode(gvErrorMsgPath);
  515. var ret = model.send(submitID, refresh, false, false);
  516. if ( ret == 200 ) {
  517. retvalue = showSystemMessage(showAlert,suppressError);
  518. }
  519. } catch (e) {
  520. if (!suppressError) {
  521. messageBox("Submit["+submitID+"] 실행을","E009","[exception:"+e+"]");
  522. }
  523. retvalue = false;
  524. }
  525. gvOnSubmit = false;
  526. gvHtmlRedirect = false;
  527. return retvalue;
  528. }
  529. function submit_old(submitID, refresh, ref, resultref, encoding) {
  530. var showAlert = gvShowAlert;
  531. var suppressError = gvSuppressError;
  532. gvShowAlert = false;
  533. if(gvSuppressErrorCheck == false)
  534. {
  535. gvSuppressError = false;
  536. }
  537. var islogout = false;
  538. if (!gvForceSubmit) {
  539. gvForceSubmit = false;
  540. if (checkTimeout()) {
  541. body.setDisabled(true);
  542. setParameter("type", "session");
  543. setParameter("islogout", "false");
  544. modal("SPZUM00400", "", "", "", "", "", "","width:279px;height:180px;align:center;sysmenu:hidden;");
  545. body.setDisabled(false);
  546. if (getParameter("islogout") == "true") {
  547. islogout = true;
  548. } else {
  549. if (checkTimeout()) {
  550. gvHtmlRedirect = false;
  551. return false;
  552. }
  553. }
  554. }
  555. setGlobalVariable("last_submit", (new Date()).getTime());
  556. }
  557. if (islogout) {
  558. var status = getViewer("sysMessage");
  559. status.window.fLogout("session");
  560. return;
  561. } else {
  562. if (gvOnSubmit) {
  563. gvHtmlRedirect = false;
  564. return false;
  565. } else {
  566. gvOnSubmit = true;
  567. }
  568. var actionURL = getActionURL(submitID)
  569. + getUserSessionString();
  570. if ( refresh == null ) {
  571. refresh = true;
  572. }
  573. var retvalue = false;
  574. try {
  575. var sid = document.allElement.item(submitID);
  576. if (!sid) {
  577. messageBox("Submit["+submitID+"]이 정의되지","E007");
  578. gvOnSubmit = false;
  579. gvHtmlRedirect = false;
  580. return false;
  581. }
  582. if ( ref != null && ref != "" ) {
  583. sid.setAttribute("ref", ref);
  584. }
  585. if ( resultref != null && resultref != "" ) {
  586. sid.setAttribute("resultref", resultref);
  587. }
  588. sid.setAttribute("action", actionURL);
  589. if (encoding != null && encoding != "") {
  590. sid.setAttribute("encoding", encoding);
  591. } else {
  592. sid.setAttribute("encoding", "utf-8");
  593. }
  594. model.removeNode(gvErrorMsgPath);
  595. var ret = model.send(submitID, refresh, false, true);
  596. if ( ret == 200 ) {
  597. retvalue = showSystemMessage(showAlert,suppressError);
  598. }
  599. } catch (e) {
  600. if (!suppressError) {
  601. messageBox("Submit["+submitID+"] 실행을","E009","[exception:"+e+"]");
  602. }
  603. retvalue = false;
  604. }
  605. gvOnSubmit = false;
  606. gvHtmlRedirect = false;
  607. return retvalue;
  608. }
  609. }
  610. function xforms_submit_error() {
  611. if (error.errorcode == 3003) {
  612. messageBox("받은 데이터 중 유효하지 않은 문자가 존재하여 화면 출력을","E009","[errorcode:"+error.errorcode+"]");
  613. m_event.stopPropagation();
  614. }
  615. }
  616. function showSystemMessage(showAlert,suppressError) {
  617. var type = model.getValue(gvErrorMsgPath+"/type");
  618. var code = model.getValue(gvErrorMsgPath+"/code");
  619. var msg = model.getValue(gvErrorMsgPath+"/msg");
  620. var desc = model.getValue(gvErrorMsgPath+"/description");
  621. if ( "error" == type ) {
  622. if (suppressError == null || !suppressError) {
  623. body.setDisabled(true);
  624. window.load("../../../com/commonweb/xrw/SPZZZ00100_시스템에러.xrw","modal","","width:514px;height:198px;align:center;",gvErrorMsgPath,"/root/main");
  625. body.setDisabled(false);
  626. }
  627. return false;
  628. } else {
  629. setSystemMessage(msg);
  630. if (showAlert != null && showAlert) {
  631. messageBox(msg,"I");
  632. }
  633. return true;
  634. }
  635. }
  636. function onredirecthtml() {
  637. if( document.allElement.item(m_event.target).elementName == "xforms:submission" && gvHtmlRedirect == false) {
  638. m_event.preventDefault();
  639. m_event.stopPropagation();
  640. }
  641. gvHtmlRedirect = false;
  642. }
  643. function onerror() {
  644. var msg = error.description;
  645. var svrtime = error.errorSource;
  646. var pctime = (new Date()).getTime();
  647. setGlobalVariable("timediff", svrtime - pctime);
  648. m_event.stopPropagation();
  649. handleSystemMessage(msg);
  650. }
  651. function handleSystemMessage(msg) {
  652. var msgItem = msg.split("|");
  653. model.makeValue(gvErrorMsgPath+"/type",msgItem[0]);
  654. model.makeValue(gvErrorMsgPath+"/code",msgItem[1]);
  655. model.makeValue(gvErrorMsgPath+"/msg",msgItem[2].replace(";","\n"),true);
  656. var description = "";
  657. if (msgItem[3] != null && msgItem[3] != "undefined") {
  658. description = msgItem[3];
  659. }
  660. if (msgItem[4] != null && msgItem[4] != "undefined") {
  661. description = description + "\n" + msgItem[4];
  662. }
  663. model.makeValue(gvErrorMsgPath+"/description",description);
  664. }
  665. function getUserSessionString() {
  666. var sessionStr = "&macaddr="+getUserInfo("macaddr");
  667. var isAnonymous = getGlobalVariable("anonymous");
  668. if (isAnonymous == "true") {
  669. sessionStr = sessionStr + "&anony_session="+encodeURI(getUserInfos());
  670. }
  671. return sessionStr;
  672. }
  673. function messageBox(pMessage, pCode, pOptMsg) {
  674. var alertMsg = null;
  675. var msgTitle = null;
  676. var msgType = null;
  677. var msgData = null;
  678. var msgRtn = "";
  679. switch( pCode.substr(0,1) ){
  680. case "I": msgTitle = "정보";
  681. msgType = "64";
  682. break;
  683. case "C": msgTitle = "오류";
  684. msgType = "16";
  685. break;
  686. case "E": msgTitle = "경고";
  687. msgType = "48";
  688. break;
  689. case "Q": msgTitle = "확인";
  690. msgType = "36";
  691. break;
  692. case "S": msgTitle = "선택";
  693. msgType = "35";
  694. break;
  695. default : msgTitle = "오류";
  696. msgType = "16";
  697. }
  698. switch( pCode ){
  699. case "I001": alertMsg = " 처리되었습니다."; break;
  700. case "I002": alertMsg = " 완료되었습니다."; break;
  701. case "I003": alertMsg = " 필수입력입니다."; break;
  702. case "I004": alertMsg = " 없습니다."; break;
  703. case "I005": alertMsg = " 환자입니다."; break;
  704. case "I006": alertMsg = " 가능합니다."; break;
  705. case "I007": alertMsg = " 확인하십시오."; break;
  706. case "I008": alertMsg = " 하십시오."; break;
  707. case "I009": alertMsg = " 입니다."; break;
  708. case "I010": alertMsg = " 있습니다."; break;
  709. case "I011": alertMsg = " 않습니다.";break;
  710. case "C001": alertMsg = " 입력하십시오."; break;
  711. case "C002": alertMsg = " 선택하십시오."; break;
  712. case "C003": alertMsg = " 진행하십시오."; break;
  713. case "E001": alertMsg = " 할 수 없습니다."; break;
  714. case "E002": alertMsg = " 권한이 없습니다."; break;
  715. case "E003": alertMsg = " 초과하였습니다."; break;
  716. case "E004": alertMsg = " 일치하지 않습니다."; break;
  717. case "E005": alertMsg = " 선택되었습니다."; break;
  718. case "E006": alertMsg = " 중복되었습니다."; break;
  719. case "E007": alertMsg = " 않았습니다."; break;
  720. case "E008": alertMsg = " 입니다."; break;
  721. case "E009": alertMsg = " 실패하였습니다."; break;
  722. case "E010": alertMsg = " 사원만 가능합니다."; break;
  723. case "E011": alertMsg = " 이전만 가능합니다."; break;
  724. case "E012": alertMsg = " 이후만 가능합니다."; break;
  725. case "E013": alertMsg = " 데이터가 없습니다."; break;
  726. case "E014": alertMsg = " 존재하지 않습니다."; break;
  727. case "E015": alertMsg = " 자리까지만 가능합니다."; break;
  728. case "E016": alertMsg = " 유효하지 않습니다."; break;
  729. case "Q001": alertMsg = " 삭제 하시겠습니까?"; break;
  730. case "Q002": alertMsg = " 저장 하시겠습니까?"; break;
  731. case "Q003": alertMsg = " 계속 진행하시겠습니까?"; break;
  732. case "Q004": alertMsg = " 실행 하시겠습니까?"; break;
  733. case "Q005": alertMsg = " 조회 하시겠습니까?"; break;
  734. case "Q006": alertMsg = " 확정 하시겠습니까?"; break;
  735. case "Q007": alertMsg = " 취소 하시겠습니까?"; break;
  736. case "Q008": alertMsg = " 추가 하시겠습니까?"; break;
  737. case "Q009": alertMsg = " 적용 하시겠습니까?"; break;
  738. case "Q010": alertMsg = " 초기화 하시겠습니까?"; break;
  739. case "Q011": alertMsg = " 확인 하시겠습니까?"; break;
  740. case "Q012": alertMsg = " 수정 하시겠습니까?"; break;
  741. case "Q013": alertMsg = " 선택 하시겠습니까?";break;
  742. case "Q014": alertMsg = " 등록 하시겠습니까?";break;
  743. case "Q015": alertMsg = " 재요청 하시겠습니까?";break;
  744. case "Q016": alertMsg = " 종결된 기록지입니다. 기록내용을 수정하시겠습니까?";break;
  745. case "S001": alertMsg = " 하시려면 예(Yes)\n아니면 아니오(No)를 선택하십시오."; break;
  746. case "S002": alertMsg = " 저장하시려면 예(Yes)\n변경하시려면 아니오(No)를 선택하십시오"; break;
  747. case "S003": alertMsg = " 하시려면 예(Yes)\n" + pOptMsg + " 하시려면 아니오(No)를 선택하십시오.";break;
  748. case "S004": alertMsg = " 하시려면 예(Yes)\n아니면 아니오(No)\n무시하시려면 취소를 선택하십시오";break;
  749. case "S005": alertMsg = " 종결된 기록지입니다. 작업유형을 선택하십시오\n\n예 : 기록수정 / 아니오 : 신규기록생성";break;
  750. case "S006": alertMsg = " 하시려면 예(Yes)\n" + pOptMsg.split("|")[0] + " 하시려면 아니오(No)\n" + pOptMsg.split("|")[1] + " 하시려면 취소를 선택하십시오";break;
  751. case "S007": alertMsg = " \n재등록 하시려면 예(Yes), " + pOptMsg.split("|")[0] + " 아니오(No), " + pOptMsg.split("|")[1] + " 취소를 선택하십시오.";break;
  752. default : alertMsg = "";
  753. }
  754. if(pOptMsg == null || pOptMsg == ""){
  755. msgData = pMessage+alertMsg;
  756. } else {
  757. if (pCode == "S003" || pCode == "S006" || pCode == "S007") {
  758. msgData = pMessage+alertMsg;
  759. } else {
  760. msgData = pMessage+alertMsg + "\n" + pOptMsg;
  761. }
  762. }
  763. body.setDisabled(true);
  764. msgRtn = window.showMessageBox( msgData, msgTitle, msgType );
  765. body.setDisabled(false);
  766. return msgRtn;
  767. }
  768. function getUserId() {
  769. return getUserInfo("userid");
  770. }
  771. function getUserName() {
  772. return getUserInfo("usernm");
  773. }
  774. function getUserInfo(key) {
  775. if ( getGlobalVariable("userinfos") == "" ) {
  776. }
  777. return getGlobalVariable(key);
  778. }
  779. function getUserInfos() {
  780. if ( getGlobalVariable("userinfos") == "" ) {
  781. }
  782. return getGlobalVariable("userinfos");
  783. }
  784. function setDefaultUserInfo() {
  785. var userInfoKeyStr="userid|usernm|posinstcd|posinstnm|posdeptcd|posdeptnm|dutplceinstcd|dutplceinstnm|dutplcecd|dutplcenm|jobkindcd|jobkindnm|jobposcd|jobposnm|jobrespcd|jobrespnm|prfshipflagcd|prfshipflagnm|licnsno|specordyn|deptabbr|orddeptflag|wardflag|systemcd|systemnm|systeminstcd|systeminstnm|logindt|kmiip|kmiport|usergrp|ipaddr|dutinstcd|dutinstnm|dutunitcd|dutunitnm|mpphonno|orginstcd|orginstnm|orgdeptcd|orgdeptnm|userkindcd|ordsupdeptcd";
  786. var userInfoKeyArr = userInfoKeyStr.split("|");
  787. var userInfoStr = "";
  788. try {
  789. var fso = new ActiveXObject("Scripting.FileSystemObject");
  790. var f = fso.GetFile("session.txt");
  791. var ts = f.OpenAsTextStream(1);
  792. userInfoStr = ts.ReadLine();
  793. ts.Close();
  794. } catch(e) {
  795. }
  796. var userInfoArr = userInfoStr.split("|");
  797. var len = userInfoKeyArr.length;
  798. setGlobalVariable("anonymous","true");
  799. for(i=0;i<len;i++) {
  800. setGlobalVariable(userInfoKeyArr[i],userInfoArr[i]);
  801. }
  802. setGlobalVariable("userinfos", userInfoStr);
  803. }
  804. function getPropertyName(key, bizCode){
  805. var bizName = "";
  806. var propertyName = "";
  807. if (bizCode == null || bizCode == "" || bizCode == "undefined")
  808. {
  809. bizName = "";
  810. }else{
  811. bizName = getBizName(bizCode)+"_";
  812. }
  813. return getSystemCd()+"_"+bizName+"gsv_"+key;
  814. }
  815. function setGlobalVariable(key, value, bizCode){
  816. model.setProperty(getPropertyName(key, bizCode), value);
  817. return true;
  818. }
  819. function getGlobalVariable(key, bizCode){
  820. return model.getProperty(getPropertyName(key, bizCode));
  821. }
  822. function screenPrint(){
  823. modal("SPZUR00200");
  824. }
  825. function getImageURL(imgcd, type){
  826. if (type == null || type == "") {
  827. type = "gif";
  828. }
  829. return getDomain()+"/himed/webapps/com/commonweb/images/"+imgcd+"." + type;
  830. }
  831. function getLogoImageURL(syscd){
  832. return getImageURL("logo"+getLogoImageKey(syscd));
  833. }
  834. function getLogoEImageURL(syscd){
  835. return getImageURL("logo"+getLogoImageKey(syscd)+"e","jpg");
  836. }
  837. function getBigLogoImageURL(type, syscd) {
  838. if (type.toUpperCase() == "H") {
  839. type == "";
  840. } else if (type.toUpperCase() == "E") {
  841. type = "e";
  842. }
  843. return getImageURL("biglogo" + getLogoImageKey(syscd) + type, "jpg");
  844. }
  845. function getLogoImageKey(syscd){
  846. var imageKey = "";
  847. if(syscd == null || syscd == ""){
  848. syscd = getSystemCd();
  849. }
  850. if(syscd.toUpperCase() == "MIS001") {
  851. imageKey = getUserInfo("dutplceinstcd");
  852. }else{
  853. imageKey = syscd.substr(3,3);
  854. }
  855. return imageKey;
  856. }
  857. function openLoadingBar(msg){
  858. setParameter("msg", msg);
  859. open("SPZZZ00400", "", "", "", "", "", "","width:327px; height:121px; caption:hidden; resize:false;");
  860. }
  861. function closeLoadingBar(){
  862. var child = getChildWindow("SPZZZ00400");
  863. if(child != null) {
  864. child.close();
  865. }
  866. }
  867. var gvCommonCachePath="/root/hidden/common/cache";
  868. function copyFromCache(itemname,resultref) {
  869. var viewerObj = getViewer("sysMessage");
  870. if (viewerObj == null) {
  871. return false;
  872. }
  873. var srcPath = gvCommonCachePath+"/"+itemname;
  874. model.makeNode(resultref);
  875. var itemnode = viewerObj.window.instance1.selectSingleNode(srcPath);
  876. if (itemnode == null) {
  877. return false;
  878. } else {
  879. var dueDate = itemnode.getAttribute("duedate");
  880. var curDate = (new Date()).valueOf();
  881. if (dueDate < curDate) {
  882. return false;
  883. }
  884. }
  885. model.copyNode(resultref,itemnode);
  886. return true;
  887. }
  888. function storeIntoCache(itemname,resultref,duemin) {
  889. var viewerObj = getViewer("sysMessage");
  890. if (viewerObj == null) {
  891. return;
  892. }
  893. var destPath = gvCommonCachePath+"/"+itemname;
  894. viewerObj.window.model.makeNode(destPath);
  895. var itemnode = instance1.selectSingleNode(resultref);
  896. if (itemnode == null) {
  897. return;
  898. }
  899. viewerObj.window.model.copyNode(destPath,itemnode);
  900. itemnode = viewerObj.window.instance1.selectSingleNode(destPath);
  901. if (itemnode != null) {
  902. var dueDate = (new Date()).valueOf();
  903. if (duemin == null) {
  904. duemin = 600;
  905. }
  906. dueDate = dueDate + duemin*60*1000;
  907. itemnode.setAttribute("duedate",dueDate);
  908. }
  909. }
  910. function openEmrScrn(scrnid){
  911. setParameter("SPMMB08400_scrnid", scrnid);
  912. modal("SPMMB08400", 1, 0, 0, "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  913. return true;
  914. }
  915. function download(submitid, param, localfile, showui) {
  916. if (showui == null) {
  917. showui = true;
  918. }
  919. model.download(encodeURI(getActionURL(submitid) + param), localfile, showui);
  920. }
  921. function DOMActivate(){
  922. if(checkOpener()){
  923. if(opener.getParameter("domactivate") == "true"){
  924. var btnobj = document.allElement.item(m_event.target);
  925. var btnid = btnobj.attribute["id"];
  926. if(btnid.substring(0, 4) == "btn_"){
  927. opener.addBtnID(btnid);
  928. }
  929. }
  930. }
  931. }
  932. function btnObj(btnID, btnTxt){
  933. this.btnID = btnID;
  934. this.btnTxt = btnTxt;
  935. }
  936. function getBtnCtrlInfo(){
  937. var cnt = 0;
  938. var ctrlID;
  939. var loopcnt = document.controls.length;
  940. var btnCtrlArr = new Array();
  941. for(var i = 0; i < loopcnt; i++){
  942. ctrlID = document.controls.item(i);
  943. if(ctrlID.attribute["class"].substring(0, 3)=="btn"){
  944. btnCtrlArr[cnt] = new btnObj(ctrlID.attribute["id"], ctrlID.attribute["text"]);
  945. cnt++;
  946. }
  947. }
  948. return btnCtrlArr;
  949. }
  950. function grdBaseColHidn(option, grd_obj, colnm_size, colnm_vol1, colnm_qty1, colnm_vol2, colnm_qty2, colnm_size_qty) {
  951. var hardcd = "";
  952. var sysMessageobj = getViewer("sysMessage");
  953. if (sysMessageobj != null) {
  954. hardcd = model.getValue("/root/hidden/grdHardcd/hardcd/hardcd");
  955. }
  956. if (option == null || option == "" || option == "undefined") {
  957. option = hardcd;
  958. }
  959. if (colnm_size == null || colnm_size == "" || colnm_size == "undefined") {
  960. sColnm_size = 37;
  961. } else {
  962. sColnm_size = colnm_size;
  963. }
  964. if (grd_obj == null || grd_obj == "" || grd_obj == "undefined") {
  965. sGrd_objnm = "grd_prcplist";
  966. } else {
  967. sGrd_objnm = grd_obj;
  968. }
  969. if (colnm_vol1 == null || colnm_vol1 == "" || colnm_vol1 == "undefined") {
  970. sColnm_vol1 = "prcpvol";
  971. } else {
  972. sColnm_vol1 = colnm_vol1
  973. }
  974. if (colnm_qty1 == null || colnm_qty1 == "" || colnm_qty1 == "undefined") {
  975. sColnm_qty1 = "prcpqty";
  976. } else {
  977. sColnm_qty1 = colnm_qty1
  978. }
  979. if (colnm_vol2 == null || colnm_vol2 == "" || colnm_vol2 == "undefined") {
  980. sColnm_vol2 = "drprcpetc7";
  981. } else {
  982. sColnm_vol2 = colnm_vol2;
  983. }
  984. if (colnm_qty2 == null || colnm_qty2 == "" || colnm_qty2 == "undefined") {
  985. sColnm_qty2 = "drprcpetc8";
  986. } else {
  987. sColnm_qty2 = colnm_qty2;
  988. }
  989. if (colnm_size_qty == null || colnm_size_qty == "" || colnm_size_qty == "undefined") {
  990. sColnm_size_qty = sColnm_size;
  991. } else {
  992. sColnm_size_qty = colnm_size_qty;
  993. }
  994. if (option =="A") {
  995. if (grd_obj == null || grd_obj == "" || grd_obj == "undefined") {
  996. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), false);
  997. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), false);
  998. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), false);
  999. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), false);
  1000. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), sColnm_size);
  1001. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), sColnm_size_qty);
  1002. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), sColnm_size);
  1003. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), sColnm_size_qty);
  1004. }
  1005. } else if (option =="B") {
  1006. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), false);
  1007. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), false);
  1008. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), true);
  1009. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), true);
  1010. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), sColnm_size);
  1011. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), sColnm_size_qty);
  1012. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), 0);
  1013. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), 0);
  1014. } else if (option =="C") {
  1015. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), true);
  1016. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), true);
  1017. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), false);
  1018. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), false);
  1019. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), 0);
  1020. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), 0);
  1021. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), sColnm_size);
  1022. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), sColnm_size_qty);
  1023. } else if (option =="D") {
  1024. return hardcd
  1025. } else if (option =="E") {
  1026. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), false);
  1027. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), true);
  1028. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), sColnm_size);
  1029. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), 0);
  1030. } else if (option =="F") {
  1031. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), true);
  1032. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), false);
  1033. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), 0);
  1034. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), sColnm_size);
  1035. } else if (option =="G") {
  1036. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), false);
  1037. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), true);
  1038. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), sColnm_size_qty);
  1039. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), 0);
  1040. } else if (option =="H") {
  1041. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), true);
  1042. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), false);
  1043. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), 0);
  1044. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), sColnm_size_qty);
  1045. } else {
  1046. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), false);
  1047. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), false);
  1048. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), true);
  1049. document.allElement.item(sGrd_objnm).setColHidden(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), true);
  1050. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol1), sColnm_size);
  1051. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty1), sColnm_size_qty);
  1052. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_vol2), 0);
  1053. document.allElement.item(sGrd_objnm).setColWidth(document.allElement.item(sGrd_objnm).colRef(sColnm_qty2), 0);
  1054. }
  1055. }
  1056. function toDate(pPattern)
  1057. {
  1058. var index = -1;
  1059. var year;
  1060. var month;
  1061. var day;
  1062. var hour = 0;
  1063. var min = 0;
  1064. var sec = 0;
  1065. var ms = 0;
  1066. if(isNull(pPattern)) pPattern = "YYYYMMDD";
  1067. if ((index = pPattern.indexOf("YYYY")) == -1 ) {
  1068. index = pPattern.indexOf("YY");
  1069. year = "20" + this.substr(index, 2);
  1070. } else {
  1071. year = this.substr(index, 4);
  1072. }
  1073. index = pPattern.indexOf("MM");
  1074. month = this.substr(index, 2);
  1075. index = pPattern.indexOf("DD");
  1076. day = this.substr(index, 2);
  1077. if ((index = pPattern.indexOf("hh")) != -1 ) {
  1078. hour = this.substr(index, 2);
  1079. }
  1080. if ((index = pPattern.indexOf("mm")) != -1 ) {
  1081. min = this.substr(index, 2);
  1082. }
  1083. if ((index = pPattern.indexOf("ss")) != -1 ) {
  1084. sec = this.substr(index, 2);
  1085. }
  1086. if ((index = pPattern.indexOf("SS")) != -1 ) {
  1087. ms = this.substr(index, 2);
  1088. }
  1089. return new Date(year, month - 1, day, hour, min, sec, ms);
  1090. }
  1091. function getCurrentDate()
  1092. {
  1093. var sDate = getNewDate();
  1094. rtnDate = sDate.getFullYear();
  1095. rtnDate = rtnDate.toString() + (( sDate.getMonth() + 1 > 9 ) ? sDate.getMonth() + 1 : "0" + (sDate.getMonth() + 1));
  1096. rtnDate = rtnDate.toString() + (( sDate.getDate() > 9 ) ? sDate.getDate() : "0" + sDate.getDate()) ;
  1097. return rtnDate;
  1098. }
  1099. function getDateFormat(pPattern)
  1100. {
  1101. var GLB_MONTH_IN_YEAR = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
  1102. var GLB_DAY_IN_WEEK = new Array("Sunday", "Monday", "Tuesday", "Wednesday","Thursday", "Friday", "Saturday");
  1103. var year = this.getFullYear();
  1104. var month = this.getMonth() + 1;
  1105. var day = this.getDate();
  1106. var dayInWeek = this.getDay();
  1107. var hour24 = this.getHours();
  1108. var ampm = (hour24 < 12) ? 0 : 1;
  1109. var hour12 = (hour24 > 12) ? (hour24 - 12) : hour24;
  1110. var min = this.getMinutes();
  1111. var sec = this.getSeconds();
  1112. var YYYY = "" + year;
  1113. var YY = YYYY.substr(2);
  1114. var MM = (("" + month).length == 1) ? "0" + month : "" + month;
  1115. var MON = GLB_MONTH_IN_YEAR[month-1];
  1116. var DD = (("" + day).length == 1) ? "0" + day : "" + day;
  1117. var DAY = GLB_DAY_IN_WEEK[dayInWeek];
  1118. var HH = (("" + hour12).length == 1) ? "0" + hour12 : "" + hour12;
  1119. var hh = (("" + hour24).length == 1) ? "0" + hour24 : "" + hour24;
  1120. var mm = (("" + min).length == 1) ? "0" + min : "" + min;
  1121. var ss = (("" + sec).length == 1) ? "0" + sec : "" + sec;
  1122. var SS = "" + this.getMilliseconds();
  1123. var a = (a == 0) ? "AM" : "PM";
  1124. var dateStr;
  1125. var index = -1;
  1126. if (typeof(pPattern) == "undefined") {
  1127. dateStr = "YYYYMMDD";
  1128. } else {
  1129. dateStr = pPattern;
  1130. }
  1131. dateStr = dateStr.replace(/a/g, a);
  1132. dateStr = dateStr.replace(/YYYY/g, YYYY);
  1133. dateStr = dateStr.replace(/YY/g, YY);
  1134. dateStr = dateStr.replace(/MM/g, MM);
  1135. dateStr = dateStr.replace(/MON/g, MON);
  1136. dateStr = dateStr.replace(/DD/g, DD);
  1137. dateStr = dateStr.replace(/DAY/g, DAY);
  1138. dateStr = dateStr.replace(/hh/g, hh);
  1139. dateStr = dateStr.replace(/HH/g, HH);
  1140. dateStr = dateStr.replace(/mm/g, mm);
  1141. dateStr = dateStr.replace(/ss/g, ss);
  1142. return dateStr;
  1143. }
  1144. function getNewDate(){
  1145. var rtnDate = new Date();
  1146. var timediff = getGlobalVariable("timediff");
  1147. var serverInterval = 0;
  1148. if(!isNull(timediff) && !isNaN(timediff)){
  1149. serverInterval = parseInt(timediff);
  1150. }
  1151. rtnDate.setTime(rtnDate.getTime() + serverInterval);
  1152. return rtnDate;
  1153. }
  1154. function getAddDate(pNum, pKind)
  1155. {
  1156. var rtnDate = this;
  1157. if(isNull(pKind)) pKind = "D";
  1158. switch(pKind){
  1159. case "Y" : rtnDate.setFullYear(this.getFullYear() + pNum);break;
  1160. case "M" : rtnDate.setMonth(this.getMonth() + pNum);break;
  1161. case "D" : rtnDate.setDate(this.getDate() + pNum);break;
  1162. case "h" : rtnDate.setHours(this.getHours() + pNum);break;
  1163. case "m" : rtnDate.setMinutes(this.getMinutes() + pNum);break;
  1164. case "s" : rtnDate.setSeconds(this.getSeconds() + pNum);break;
  1165. }
  1166. return rtnDate;
  1167. }
  1168. function isNull(str){
  1169. return ((str == null || str == "" || str == "undefined") ? true:false);
  1170. }
  1171. var gvFormUpdateYN = false;
  1172. function setCSVToNode(destRef, CSV, nodeSetName) {
  1173. var sColSep = "▦";
  1174. var sRowSep = "▩";
  1175. var nodeNameArray = CSV.split(sRowSep)[0].split(sColSep);
  1176. var nodeNameArrayCnt = nodeNameArray.length;
  1177. if( nodeSetName == null || nodeSetName == "")
  1178. nodeSetName = "list";
  1179. var tmpDestNode = instance1.createElement(nodeSetName);
  1180. var tmpDestChildNode;
  1181. var i, j;
  1182. for( i = 0; i < nodeNameArrayCnt; i++ ) {
  1183. tmpDestChildNode = instance1.createElement(nodeNameArray[i]);
  1184. model.duplicate(tmpDestNode, tmpDestChildNode);
  1185. }
  1186. var CSVArray = CSV.split(sRowSep);
  1187. var CSVArrayCnt = CSVArray.length - 1;
  1188. var srcNode = instance1.selectSingleNode(destRef);
  1189. var nodeValueArray;
  1190. for( i = 1; i < CSVArrayCnt; i++ ) {
  1191. nodeValueArray = CSVArray[i];
  1192. for ( j = 0; j < nodeNameArrayCnt; j++ ) {
  1193. tmpDestNode.childNodes.item(j).text = nodeValueArray.split(sColSep)[j];
  1194. }
  1195. model.duplicate(srcNode, tmpDestNode);
  1196. }
  1197. }
  1198. function addComboItem( comboID, label, value, position ) {
  1199. var comboObj = document.allElement.item(comboID);
  1200. var comboItemNodeSet = comboObj.choices.itemset.attribute["nodeset"];
  1201. var comboLabelRef = comboObj.choices.itemset.label.attribute["ref"];
  1202. var comboValueRef = comboObj.choices.itemset.value.attribute["ref"];
  1203. var nodeNn = instance1.selectSingleNode(comboItemNodeSet);
  1204. if (nodeNn == null) {
  1205. model.makeNode(comboItemNodeSet);
  1206. model.makeNode(comboItemNodeSet+"/"+comboLabelRef);
  1207. model.makeNode(comboItemNodeSet+"/"+comboValueRef);
  1208. position = "init";
  1209. }
  1210. var itemNode = instance1.createNode("element", instance1.selectSingleNode(comboItemNodeSet).nodeName, "");
  1211. var labelNode = instance1.createNode("element", comboLabelRef, "");
  1212. var valueNode = instance1.createNode("element", comboValueRef, "");
  1213. if( label == null || label == "" ) label = "- 전 체 -";
  1214. XmlLib.setTextValue(labelNode, label);
  1215. itemNode.appendChild(labelNode);
  1216. if( value == null || value == "" ) value = "";
  1217. XmlLib.setTextValue(valueNode, value);
  1218. itemNode.appendChild(valueNode);
  1219. if( position == null || position == "" )
  1220. position = "above";
  1221. var destNode = instance1.selectSingleNode(comboItemNodeSet);
  1222. var pDestNode = destNode.parentNode;
  1223. if( position == "above" ) {
  1224. pDestNode.insertBefore(itemNode, destNode);
  1225. } else if ( position == "init" ) {
  1226. pDestNode.insertBefore(itemNode, destNode);
  1227. pDestNode.removeChild(destNode);
  1228. }
  1229. else {
  1230. pDestNode.appendChild(itemNode);
  1231. }
  1232. comboObj.refresh();
  1233. }
  1234. function setImageRefInstance(xpath) {
  1235. var node = instance1.selectSingleNode(xpath);
  1236. if( node == null )
  1237. return;
  1238. node.setAttribute("type","xsd:base64Binary");
  1239. }
  1240. function setInputNodeCurText( mask ) {
  1241. var inputID = m_event.target;
  1242. var inputObj = document.controls.item(inputID);
  1243. var inputRef = inputObj.attribute["ref"];
  1244. if( mask == null )
  1245. model.setValue(inputRef, inputObj.m_heControl.value);
  1246. else
  1247. model.setValue(inputRef, inputObj.m_heControl.value.removeMask(mask));
  1248. inputObj.refresh();
  1249. setFormUpdate();
  1250. }
  1251. function setFormUpdate() {
  1252. gvFormUpdateYN = true;
  1253. }
  1254. function isDataCell() {
  1255. var gridObj = m_event.ptarget.parent;
  1256. if( gridObj.isCell(m_event.target) && gridObj.row >= gridObj.fixedRows && gridObj.col >= gridObj.fixedCols) {
  1257. return true;
  1258. }
  1259. else
  1260. return false;
  1261. }
  1262. function copyNodeType(strDest, strSrc, mode, destModel, srcModel) {
  1263. if( typeof(destModel) == "object" || typeof(destModel) == "undefined" ) {
  1264. if( destModel == null ) {
  1265. destModel = model;
  1266. }
  1267. }
  1268. else {
  1269. if( destModel == "" ) {
  1270. destModel = model;
  1271. }
  1272. }
  1273. var destNode = destModel.instances.item(0).selectSingleNode(strDest);
  1274. if( destNode == null )
  1275. return;
  1276. var destChildNodeList = destNode.childNodes;
  1277. if( typeof(srcModel) == "object" || typeof(srcModel) == "undefined" ) {
  1278. if( srcModel == null ) {
  1279. srcModel = model;
  1280. }
  1281. }
  1282. else {
  1283. if( srcModel == "" ) {
  1284. srcModel = model;
  1285. }
  1286. }
  1287. var srcNode = srcModel.instances.item(0).selectSingleNode(strSrc);
  1288. if( srcNode == null )
  1289. return;
  1290. var cSrcNode = srcNode.cloneNode(true);
  1291. var cSrcChildNodeList = cSrcNode.childNodes;
  1292. var cSrcChildNode;
  1293. if( cSrcChildNodeList.length == 0 )
  1294. return;
  1295. if( mode != "before" ) {
  1296. if( mode == "replace" || mode == null ) {
  1297. removeChildren(strDest, destModel)
  1298. }
  1299. for (var i=0; i<cSrcChildNodeList.length; i++){
  1300. cSrcChildNode = cSrcChildNodeList.item(i);
  1301. model.duplicate(destNode, cSrcChildNode);
  1302. }
  1303. }
  1304. else {
  1305. for( var i = cSrcChildNodeList.length - 1; i >= 0; i-- ) {
  1306. destNode = destModel.instances.item(0).selectSingleNode(strDest);
  1307. cSrcChildNode = cSrcChildNodeList.item(i);
  1308. model.duplicate(destNode, cSrcChildNode, "*[1]");
  1309. }
  1310. }
  1311. }
  1312. function removeChildren( destNodePath, destModel ) {
  1313. var modelObj;
  1314. if( destModel == null ) {
  1315. modelObj = model;
  1316. }
  1317. else
  1318. modelObj = destModel;
  1319. var node = modelObj.instances.item(0).selectSingleNode(destNodePath);
  1320. var childNodeList = node.childNodes;
  1321. var childNode;
  1322. for (var i=0; i< childNodeList.length; i++){
  1323. childNode = childNodeList.item(i);
  1324. node.removeChild( childNode );
  1325. }
  1326. }
  1327. function setCSVToNode(destRef, CSV, nodeSetName) {
  1328. var sColSep = "▦";
  1329. var sRowSep = "▩";
  1330. var nodeNameArray = CSV.split(sRowSep)[0].split(sColSep);
  1331. var nodeNameArrayCnt = nodeNameArray.length;
  1332. if( nodeSetName == null || nodeSetName == "")
  1333. nodeSetName = "list";
  1334. var tmpDestNode = instance1.createElement(nodeSetName);
  1335. var tmpDestChildNode;
  1336. var i, j;
  1337. for( i = 0; i < nodeNameArrayCnt; i++ ) {
  1338. tmpDestChildNode = instance1.createElement(nodeNameArray[i]);
  1339. model.duplicate(tmpDestNode, tmpDestChildNode);
  1340. }
  1341. var CSVArray = CSV.split(sRowSep);
  1342. var CSVArrayCnt = CSVArray.length - 1;
  1343. var srcNode = instance1.selectSingleNode(destRef);
  1344. var nodeValueArray;
  1345. for( i = 1; i < CSVArrayCnt; i++ ) {
  1346. nodeValueArray = CSVArray[i];
  1347. for ( j = 0; j < nodeNameArrayCnt; j++ ) {
  1348. tmpDestNode.childNodes.item(j).text = nodeValueArray.split(sColSep)[j];
  1349. }
  1350. model.duplicate(srcNode, tmpDestNode);
  1351. }
  1352. }
  1353. function getNodeListCSV(nodeList) {
  1354. if( nodeList.length == 0 )
  1355. return;
  1356. var sColSep = "▦";
  1357. var sRowSep = "▩";
  1358. var rCSV = "";
  1359. var childNodeList = nodeList.item(0).childNodes;
  1360. var childNodeCnt = childNodeList.length;
  1361. if( childNodeCnt == 0 )
  1362. return;
  1363. var i, j;
  1364. for( i = 0; i < childNodeCnt - 1; i++) {
  1365. rCSV += childNodeList.item(i).nodeName + sColSep;
  1366. }
  1367. rCSV += childNodeList.item(i).nodeName + sRowSep;
  1368. var node;
  1369. for (var j=0; j<nodeList.length; j++){
  1370. node = nodeList.item(j);
  1371. childNodeList = node.childNodes;
  1372. for( i = 0; i < childNodeCnt - 1; i++) {
  1373. rCSV += childNodeList.item(i).text + sColSep;
  1374. }
  1375. rCSV += childNodeList.item(i).text + sRowSep;
  1376. }
  1377. return rCSV;
  1378. }
  1379. var hardcdResultRef = "/root/hidden/hardcd/resultref";
  1380. function makeHardCdResultRef(){ model.makeNode(hardcdResultRef); }
  1381. function removeHardCdResultRef(){ model.removeNode(hardcdResultRef); }
  1382. function mmbfGetHardCodeInfo(ref, rsltref, hardcd){
  1383. var mmb_rsltref = "/root/hidden/mmb/hardcd";
  1384. model.removeNode(mmb_rsltref);
  1385. model.makeNode(mmb_rsltref);
  1386. model.removeNode(ref);
  1387. model.makeValue(ref + "/hardcd", hardcd);
  1388. if(submit("TRMMB04103", "false", ref, mmb_rsltref)==true){
  1389. model.copyNode(rsltref, mmb_rsltref);
  1390. model.removeNode(mmb_rsltref);
  1391. }
  1392. model.refresh();
  1393. }
  1394. function reqOpRoomList(opschedd, desRef, queryflag, perfdeptcd, perfdrid){
  1395. var resultRef = "/root/hidden/mmo/oproomlist";
  1396. model.makeNode(resultRef);
  1397. model.removeNodeset("/root/send/reqdata");
  1398. model.makeValue("/root/send/reqdata/opschedd" , opschedd);
  1399. model.makeValue("/root/send/reqdata/queryflag", queryflag);
  1400. if(queryflag == "detl"){
  1401. model.makeValue("/root/send/reqdata/perfdeptcd", perfdeptcd);
  1402. model.makeValue("/root/send/reqdata/perfdrid" , perfdrid);
  1403. }
  1404. var rtnval = submit("TRMMO05704", false, "/root/send/reqdata", resultRef);
  1405. if(rtnval == true){
  1406. copyNodeType(desRef, resultRef, "replace");
  1407. }
  1408. }
  1409. function mmbfGetSubDeptComboList(ref, rsltref, orddeptcd){
  1410. var mmb_rsltref = "/root/hidden/mmb/subdeptinfo";
  1411. model.removeNode(mmb_rsltref);
  1412. model.makeNode(mmb_rsltref);
  1413. model.removeNode(ref);
  1414. model.makeValue(ref + "/orddeptcd", orddeptcd);
  1415. if(submit("TRMMB04106", "false", ref, mmb_rsltref)==true){
  1416. model.copyNode(rsltref, mmb_rsltref);
  1417. model.removeNode(mmb_rsltref);
  1418. }
  1419. model.refresh();
  1420. }
  1421. function mmbfGetDeptCodeComboList(ref, rsltref, orddeptflag, stnddd){
  1422. var mmb_rsltref = "/root/hidden/mmb/orddept";
  1423. model.removeNode(mmb_rsltref);
  1424. model.makeNode(mmb_rsltref);
  1425. model.removeNode(ref);
  1426. model.makeValue(ref + "/orddeptflag", orddeptflag);
  1427. if(stnddd != ""){
  1428. model.makeValue(ref + "/stnddd", stnddd);
  1429. }
  1430. if(submit("TRMMB04101", "false", ref, mmb_rsltref)==true){
  1431. model.copyNode(rsltref, mmb_rsltref);
  1432. model.removeNode(mmb_rsltref);
  1433. }
  1434. model.refresh();
  1435. }
  1436. function mmbfGetUserComboList(ref, rsltref, deptcd, jobkindcd, specordyn, drflag, standd, nmdispflag, jobflag, specdrchk){
  1437. var mmb_rsltref = "/root/hidden/mmb/userlist";
  1438. model.removeNode(mmb_rsltref);
  1439. model.makeNode(mmb_rsltref);
  1440. model.removeNode(ref);
  1441. model.makeValue(ref + "/deptcd" , deptcd);
  1442. model.makeValue(ref + "/jobkindcd", jobkindcd);
  1443. model.makeValue(ref + "/specordyn", specordyn);
  1444. model.makeValue(ref + "/drflag" , drflag);
  1445. model.makeValue(ref + "/standd" , standd);
  1446. model.makeValue(ref + "/jobflag" , jobflag);
  1447. model.makeValue(ref + "/specdrchk" , specdrchk);
  1448. if(nmdispflag == "")
  1449. model.makeValue(ref + "/nmdispflag" , "N");
  1450. else
  1451. model.makeValue(ref + "/nmdispflag" , nmdispflag);
  1452. submit("TRMMB04102", "false", ref, mmb_rsltref);
  1453. model.copyNode(rsltref, mmb_rsltref);
  1454. model.removeNode(mmb_rsltref);
  1455. model.refresh();
  1456. }
  1457. function addComboInstance(combopath, nodename, nodeval, parentnode){
  1458. var xmlNode = model.instances.item(0).selectSingleNode(combopath + "/" + parentnode);
  1459. if(xmlNode == null){
  1460. return false;
  1461. }
  1462. nodename = nodename.split("^");
  1463. nodeval = nodeval.split("^");
  1464. if(nodename.length != nodeval.length){
  1465. return false;
  1466. }
  1467. var label = model.instances.item(0).createElement(nodename[0]);
  1468. var val = model.instances.item(0).createElement(nodename[1]);
  1469. var combo = model.instances.item(0).createElement(parentnode);
  1470. XmlLib.setTextValue(label, "" + nodeval[0] + "");
  1471. XmlLib.setTextValue(val, "" + nodeval[1] + "");
  1472. combo.appendChild(label);
  1473. combo.appendChild(val);
  1474. chkNode = model.instances.item(0).selectSingleNode(combopath);
  1475. if(chkNode == null){
  1476. model.makeNode(combopath);
  1477. srcNode = model.instances.item(0).selectSingleNode(combopath);
  1478. }else{
  1479. srcNode = model.instances.item(0).selectSingleNode(combopath);
  1480. }
  1481. desNode = model.instances.item(0).selectSingleNode(combopath + "/" + parentnode);
  1482. srcNode.insertBefore(combo, desNode);
  1483. model.refresh();
  1484. return true;
  1485. }
  1486. function fPidTrim(pid_path) {
  1487. var pid = model.getValue(pid_path);
  1488. pid += '';
  1489. pid = pid.replace(/^\s*|\s*$/g, '');
  1490. model.setValue(pid_path, pid);
  1491. }
  1492. function getArrayData (pData, pRow, pCol, pRowSep, pColSep ) {
  1493. var pRowSep = (pRowSep == null || pRowSep =="" ? "▩" :pRowSep );
  1494. var pColSep = (pColSep == null || pColSep =="" ? "▦" :pColSep );
  1495. var arrRow = pData.split(pRowSep);
  1496. if(arrRow.length <= pRow) return "";
  1497. var arrCol = arrRow[pRow].split(pColSep);
  1498. if(arrCol.length <= pCol) return "";
  1499. return arrCol[pCol];
  1500. }
  1501. var gvZBCCodeCachePath="/root/hidden/zbccode";
  1502. var zbcResultRef = "/root/hidden/zbc/resultref";
  1503. function makeZbcResultRef(){ model.makeNode(zbcResultRef); }
  1504. function zbcfGetCodeList(cd_grup_id_list, rslt_ref_list, minimum, sortfield_list, sortmethod_list) {
  1505. if(minimum == null){
  1506. minimum = true;
  1507. }
  1508. var isCached = false;
  1509. if (minimum && sortfield_list == null && sortmethod_list == null) {
  1510. isCached = true;
  1511. var viewerObj = getViewer("sysMessage");
  1512. if (viewerObj == null || viewerObj.window.zbcfGetCodeListCache == undefined) {
  1513. isCached = false;
  1514. }
  1515. } else {
  1516. isCached = false;
  1517. }
  1518. if (isCached) {
  1519. viewerObj.window.zbcfGetCodeListCache(null,cd_grup_id_list);
  1520. for(key in cd_grup_id_list){
  1521. var target_path = rslt_ref_list[key];
  1522. var source_path = gvZBCCodeCachePath + "/"+cd_grup_id_list[key] + "/" + cd_grup_id_list[key];
  1523. var sourceNode = viewerObj.window.instance1.selectNodes(source_path);
  1524. for(i=0; i<sourceNode.length; i++){
  1525. model.duplicate(target_path, sourceNode.item(i));
  1526. }
  1527. }
  1528. } else {
  1529. zbcfGetCodeListSubmit(cd_grup_id_list, rslt_ref_list, minimum, sortfield_list, sortmethod_list);
  1530. }
  1531. }
  1532. function zbcfGetCodeListSubmit(cd_grup_id_list, rslt_ref_list, minimum, sortfield_list, sortmethod_list){
  1533. makeZbcResultRef();
  1534. for (key in cd_grup_id_list){
  1535. addParameter("cdgrupid", cd_grup_id_list[key]);
  1536. if(sortfield_list!=null){
  1537. addParameter("sortfield", sortfield_list[key]);
  1538. }else{
  1539. addParameter("sortfield", "dispseq");
  1540. }
  1541. if(sortmethod_list!=null){
  1542. addParameter("sortmethod", sortmethod_list[key]);
  1543. }else{
  1544. addParameter("sortmethod", "asc");
  1545. }
  1546. }
  1547. var submit_id;
  1548. if(minimum==null){
  1549. minimum = true;
  1550. }
  1551. if(minimum){
  1552. submit_id = "TRZBC00101";
  1553. }else{
  1554. submit_id = "TRZBC00102";
  1555. }
  1556. var success = submit(submit_id, "false", getParameterPath(), zbcResultRef);
  1557. for(key in cd_grup_id_list){
  1558. var target_path = rslt_ref_list[key];
  1559. if(target_path==null){
  1560. target_path = rslt_ref_list[key-1];
  1561. }
  1562. var source_path = zbcResultRef+"/"+cd_grup_id_list[key]+"/"+cd_grup_id_list[key];
  1563. var sourceNode = instance1.selectNodes(zbcResultRef+"/"+cd_grup_id_list[key]+"/"+cd_grup_id_list[key]);
  1564. for(i=0; i<sourceNode.length; i++){
  1565. model.duplicate(target_path, sourceNode.item(i));
  1566. }
  1567. }
  1568. removeZbcResultRef();
  1569. clearParameter("cdgrupid");
  1570. clearParameter("sortfield");
  1571. clearParameter("sortmethod");
  1572. }
  1573. function getCurrentTime()
  1574. {
  1575. var sDate = getNewDate();
  1576. rtnTime = (( sDate.getHours() > 9 ) ? sDate.getHours() : "0" + sDate.getHours());
  1577. rtnTime = rtnTime.toString() + (( sDate.getMinutes() > 9 ) ? sDate.getMinutes() : "0" + sDate.getMinutes());
  1578. rtnTime = rtnTime.toString() + (( sDate.getSeconds() > 9 ) ? sDate.getSeconds() : "0" + sDate.getSeconds());
  1579. return rtnTime;
  1580. }
  1581. function getCurrentDateTime(){
  1582. return getCurrentDate() + " " + getCurrentTime();
  1583. }
  1584. function getDateCalc(pDate, pDay, pFlag){
  1585. var sDay = new Date(pDate.substr(0,4),pDate.substr(4,2)-1,pDate.substr(6,2));
  1586. if(pFlag == null || pFlag == ""){
  1587. pFlag = "-";
  1588. }
  1589. if(pFlag == "-"){
  1590. sDay.setDate(sDay.getDate()-parseInt(pDay));
  1591. }else if(pFlag == "+"){
  1592. sDay.setDate(sDay.getDate()+parseInt(pDay));
  1593. }
  1594. var sYear = sDay.getYear();
  1595. var sMonth = sDay.getMonth()+1;
  1596. var sday = sDay.getDate();
  1597. if(sMonth < 10) sMonth = "0"+sMonth;
  1598. if(sday < 10) sday = "0"+sday;
  1599. return sYear.toString()+sMonth.toString()+sday.toString();
  1600. }
  1601. function getDateTime( pDate, pMode ){
  1602. var rtnStr = null;
  1603. sFDate = pDate.getFullYear();
  1604. sFDate = sFDate.toString() + (( pDate.getMonth() + 1 > 9 ) ? pDate.getMonth() + 1 : "0" + (pDate.getMonth() + 1));
  1605. sFDate = sFDate.toString() + (( pDate.getDate() > 9 ) ? pDate.getDate() : "0" + pDate.getDate());
  1606. sFTime = (( pDate.getHours() > 9 ) ? pDate.getHours() : "0" + pDate.getHours());
  1607. sFTime = sFTime.toString() + (( pDate.getMinutes() > 9 ) ? pDate.getMinutes() : "0" + pDate.getMinutes());
  1608. sFSec = (( pDate.getSeconds() > 9 ) ? pDate.getSeconds() : "0" + pDate.getSeconds() );
  1609. var x = new Array("일", "월", "화", "수", "목", "금", "토");
  1610. sWeek = x[pDate.getDay()];
  1611. switch( pMode.toUpperCase() ){
  1612. case 'D':
  1613. rtnStr = sFDate;
  1614. break;
  1615. case 'T':
  1616. rtnStr = sFTime;
  1617. break;
  1618. case 'S':
  1619. rtnStr = sFTime + sFSec;
  1620. break;
  1621. case 'A':
  1622. rtnStr = sFDate + sFTime + sFSec;
  1623. break;
  1624. case 'W':
  1625. rtnStr = sWeek;
  1626. break;
  1627. default:
  1628. rtnStr = sFDate + sFTime;
  1629. }
  1630. return rtnStr;
  1631. }
  1632. function getDayOfWeek(pKind)
  1633. {
  1634. if(pKind.toUpperCase() == "K") {
  1635. var week = new Array("일","월","화","수","목","금","토");
  1636. return week[this.getDay()];
  1637. } else if(pKind.toUpperCase() == "C") {
  1638. var week = new Array("日","月","火","水","木","金","土");
  1639. return week[this.getDay()];
  1640. } else if(pKind.toUpperCase() == "E") {
  1641. var week = new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");
  1642. return week[this.getDay()];
  1643. } else if(pKind.toUpperCase() == "N") {
  1644. return this.getDay() + "";
  1645. }
  1646. return "";
  1647. }
  1648. function getNodesetCount( nodeSet ) {
  1649. var xnList = instance1.selectNodes(nodeSet);
  1650. return null != xnList ? xnList.length : 0;
  1651. }
  1652. function COMN_CONT_RECCNTS()
  1653. {
  1654. this.pid = "";
  1655. this.recfromdt = "";
  1656. this.rectodt = "";
  1657. this.formrecdeptcd = "";
  1658. this.chosflag = "";
  1659. this.formrecseq = "";
  1660. }
  1661. function doReplaceLtGt(path)
  1662. {
  1663. var nodelist = model.instances.item(0).selectNodes(path + "[degnitemkind = 'IMG']/reccnts");
  1664. var shape = "";
  1665. var regLt = /&lt;/gi;
  1666. var regGt = /&gt;/gi;
  1667. for (var i = 0; i < nodelist.length; i++)
  1668. {
  1669. if (XmlLib.getTextValue(nodelist.item(i)).indexOf("&lt;") == 0)
  1670. {
  1671. shape = XmlLib.getTextValue(nodelist.item(i)).replace(regLt, "<");
  1672. XmlLib.setTextValue(nodelist.item(i), shape.replace(regGt, ">"));
  1673. }
  1674. }
  1675. }
  1676. function copyNodeset(strDest, strSrc, mode, destModel, srcModel)
  1677. {
  1678. if(mode == null)
  1679. mode = "replace";
  1680. if(destModel == null)
  1681. destModel = model;
  1682. if(srcModel == null)
  1683. srcModel = model;
  1684. if(mode == "replace")
  1685. destModel.removeNodeset(strDest);
  1686. var destNodeList = destModel.instances.item(0).selectNodes(strDest);
  1687. var destListLen = destNodeList.length;
  1688. var srcNodeList = srcModel.instances.item(0).selectNodes(strSrc);
  1689. var prepath_strDest = strDest + "[";
  1690. var idx;
  1691. for(var i = 0; i < srcNodeList.length; i++)
  1692. {
  1693. idx = i + 1 + destListLen;
  1694. var strDest1 = prepath_strDest + idx + "]";
  1695. destModel.makeNode(strDest1);
  1696. var destNode = destModel.instances.item(0).selectSingleNode(strDest1);
  1697. var srcNode = srcNodeList.item(i);
  1698. var srcChildList = srcNode.childNodes;
  1699. for(var j = 0; j < srcChildList.length; j++)
  1700. destNode.appendChild(srcChildList.item(j).cloneNode(true));
  1701. }
  1702. }
  1703. function findNodeset(srchModel, strPath)
  1704. {
  1705. var insXml = srchModel.instances.item(0);
  1706. var destNodeList = insXml.selectNodes(strPath);
  1707. return destNodeList;
  1708. }
  1709. function isSearchString(strSrc, strFind)
  1710. {
  1711. var r, re;
  1712. re = new RegExp(strFind);
  1713. r = re.exec(strSrc);
  1714. if (r)
  1715. {
  1716. return true;
  1717. }
  1718. return false;
  1719. }
  1720. function removeXvgTag(metadata)
  1721. {
  1722. var strMeta = metadata;
  1723. var grpexpSt = new RegExp('(<xvg[^<>]+>)', 'igm');
  1724. var grpexpEd = new RegExp('(</xvg>)', 'igm');
  1725. if (grpexpSt.test(strMeta) == true)
  1726. {
  1727. strMeta = strMeta.replace(grpexpSt, '');
  1728. }
  1729. if (grpexpEd.test(strMeta) == true)
  1730. {
  1731. strMeta = strMeta.replace(grpexpEd, '');
  1732. }
  1733. return strMeta;
  1734. }
  1735. function setReplaceWord( findWord, replaceWord )
  1736. {
  1737. var tempArray;
  1738. var rtnSting = "";
  1739. tempArray = this.split(findWord);
  1740. for(var i=0; i < tempArray.length-1; i++)
  1741. {
  1742. rtnSting += tempArray[i] + replaceWord;
  1743. }
  1744. rtnSting += tempArray[tempArray.length-1];
  1745. return rtnSting;
  1746. }
  1747. function copyNodesetType(strDest, strSrc, mode, destModel, srcModel) {
  1748. if( typeof(destModel) == "object" || typeof(destModel) == "undefined" ) {
  1749. if( destModel == null ) {
  1750. destModel = model;
  1751. }
  1752. }
  1753. else {
  1754. if( destModel == "" ) {
  1755. destModel = model;
  1756. }
  1757. }
  1758. if( typeof(srcModel) == "object" || typeof(srcModel) == "undefined" ) {
  1759. if( srcModel == null ) {
  1760. srcModel = model;
  1761. }
  1762. }
  1763. else {
  1764. if( srcModel == "" ) {
  1765. srcModel = model;
  1766. }
  1767. }
  1768. var destNodeList = destModel.instances.item(0).selectNodes(strDest);
  1769. if( destNodeList == null || destNodeList.length == 0 ) {
  1770. return;
  1771. }
  1772. var pDestNode = destNodeList.item(0).parentNode;
  1773. var destLastNodesetName = destNodeList.item(0).nodeName;
  1774. var srcNodeList = srcModel.instances.item(0).selectNodes(strSrc);
  1775. if( srcNodeList == null || srcNodeList.length == 0 )
  1776. return;
  1777. if( mode != "before" ) {
  1778. if( mode == "replace" || mode == null ) {
  1779. destModel.removeNodeset(strDest);
  1780. }
  1781. var srcNode;
  1782. var tmpSrcNode;
  1783. while( srcNode = srcNodeList.nextNode() ) {
  1784. tmpSrcNode = srcNode.cloneNode(true);
  1785. tmpSrcNode.nodeName = destLastNodesetName;
  1786. model.duplicate(pDestNode, tmpSrcNode);
  1787. }
  1788. }
  1789. else {
  1790. var tmpSrcNode;
  1791. for( var i = srcNodeList.length - 1; i >= 0; i-- ) {
  1792. pDestNode = destModel.instances.item(0).selectSingleNode(strDest).parentNode;
  1793. tmpSrcNode = srcNodeList.item(i).cloneNode(true);
  1794. tmpSrcNode.nodeName = destLastNodesetName;
  1795. model.duplicate(pDestNode, tmpSrcNode, "*[1]");
  1796. }
  1797. }
  1798. }
  1799. function getTrim()
  1800. {
  1801. var startPoint = 0;
  1802. var endPoint = this.length;
  1803. while( (startPoint < endPoint) && (this.charCodeAt(startPoint) == 32) )
  1804. {
  1805. startPoint++;
  1806. }
  1807. while( (startPoint < endPoint) && (this.charCodeAt(endPoint-1) == 32) )
  1808. {
  1809. endPoint--;
  1810. }
  1811. return ( (startPoint > 0) || (endPoint < this.length) ) ? this.substring(startPoint, endPoint) : this;
  1812. }
  1813. function fGetUserEnvOcsOrdAnsw(ref, rsltref, qestcd){
  1814. var mmb_rsltref = "/root/hidden/interface";
  1815. model.removeNode(mmb_rsltref);
  1816. model.makeNode(mmb_rsltref);
  1817. model.removeNode(ref);
  1818. model.makeValue(ref + "/interqestcd", qestcd);
  1819. if(submit("TRMMB01104", "false", ref, mmb_rsltref)==true){
  1820. model.makeNode(rsltref);
  1821. model.copyNode(rsltref, mmb_rsltref);
  1822. model.removeNode(mmb_rsltref);
  1823. }
  1824. }
  1825. function userLogout() {
  1826. if ( confirm("로그아웃 하시겠습니까?") ) {
  1827. top.document.location="/himed/webapps/com/hismainweb/jsp/logoutphone.live";
  1828. }
  1829. }