MRF02400.js 58 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689
  1. var sSETLIST = "/root/main/indxlist/item";
  2. var sSETLIST_HIDDEN = "/root/hidden/indxlist/item";
  3. var sMOUSE_CLK_STATUS; //마우스 클릭 좌우버튼 구분
  4. var sTREE_PATH; //트리 경로
  5. var sFOCUS_C = -1; //상용구 인덱스
  6. var sTREE_OBJ = trv_indxlist_u; //트리뷰 구분
  7. var sTREE_PATH = "/root/main/indxlist_u/item";
  8. /**
  9. * @desc : 화면 초기화
  10. * @
  11. * @param :
  12. * @return :
  13. * @---------------------------------------------------
  14. */
  15. function fInitialize(){
  16. model.toggle("case2");
  17. model.setValue("/root/send/cond/caseflag","C");
  18. // 폴더명칭 popup
  19. grup_saveas.visible = "false";
  20. model.copyNode("/root/main/indxlist_u", "/root/main/indxlist");
  21. model.refresh();
  22. model.makeValue("/root/send/cond/chosflag", "folder_all"); //분류 flag
  23. //개인,과 구분위해서..
  24. fSelectUserDeptcd("/root/send/cond");
  25. //My폴더만 조회
  26. submit("TRMRF02406");
  27. fAddDepth2();
  28. if (isPopup()){
  29. var degnitemcd = opener.window.javascript.getParameter("comn_degnitemcd");
  30. var srcformcd = opener.window.javascript.getParameter("comn_srcformcd");
  31. var comnchosflag = opener.window.javascript.getParameter("comn_chosflag");
  32. var openmode = opener.window.javascript.getParameter("openmode");
  33. if(srcformcd !="" && degnitemcd !=""){
  34. if(comnchosflag == "C")
  35. {
  36. button14.selected = true;
  37. model.toggle("case2");
  38. model.setValue("/root/send/cond/caseflag","C");
  39. }
  40. else if(comnchosflag == "E")
  41. {
  42. button15.selected = true;
  43. model.toggle("case1");
  44. model.setValue("/root/send/cond/caseflag","E");
  45. }
  46. var seq = srcformcd + degnitemcd.substr(0,7);
  47. model.makeValue("/root/send/grddata/formcd",srcformcd);
  48. model.makeValue("/root/send/grddata/itembasecd",degnitemcd.substr(0,7));
  49. model.makeValue( "/root/send/grddata/comnchosflag",comnchosflag);
  50. submit("TRMRF02405");
  51. fAddDepthPopup();
  52. model.setValue("/root/main/indxlist_comn/item",seq);
  53. model.removeNodeset("/root/send/grddata");
  54. model.refresh();
  55. if(openmode == "insert")
  56. {
  57. fAddComnCnts(comnchosflag);
  58. }
  59. }
  60. }
  61. }
  62. function fAddComnCnts(comnchosflag)
  63. {
  64. var grd = null;
  65. if(comnchosflag == "C")
  66. {
  67. grd = document.controls("grd_comnlist");
  68. }
  69. else if(comnchosflag == "E")
  70. {
  71. grd = document.controls("grd_exmplist");
  72. }
  73. var ref = grd.attribute("nodeset");
  74. var reprnm = "";
  75. var comncnts = opener.javascript.getParameter("comncnts");
  76. if(comncnts == "")
  77. return;
  78. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  79. var rowPos = item.index + 1;
  80. var degnitemnm = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemnm");
  81. var depth = model.getValue(sTREE_PATH+ "[" + rowPos + "]/depth");
  82. var indxnm = model.getValue(sTREE_PATH+ "[" + rowPos + "]/indxnm");
  83. var degnitemno = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemno");
  84. var formdegnseq = model.getValue(sTREE_PATH+ "[" + rowPos + "]/formdegnseq");
  85. grd.addRow(false);
  86. var desCurRow = grd.rows - grd.fixedRows;
  87. var setflag = model.getValue("/root/send/cond/setflag");
  88. // 개인 , 과 , 전체 구분
  89. if (setflag == "U") {
  90. model.setValue(ref+"[" + desCurRow + "]/userid", getUserId()); //
  91. model.setValue(ref+"[" + desCurRow + "]/deptcd", getUserInfo("dutplcecd")); //
  92. }
  93. if (setflag == "D") {
  94. model.setValue(ref+"[" + desCurRow + "]/userid", "");
  95. model.setValue(ref+"[" + desCurRow + "]/deptcd", getUserInfo("dutplcecd")); //
  96. }
  97. if (setflag == "A") {
  98. model.setValue(ref+"[" + desCurRow + "]/userid", "");
  99. model.setValue(ref+"[" + desCurRow + "]/deptcd", "");
  100. }
  101. var clsflag = model.getValue(sTREE_PATH+ "[" + rowPos + "]/clsflag");
  102. var srcformcd = model.getValue(sTREE_PATH+ "[" + rowPos + "]/srcformcd");
  103. var degnitemcd = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemcd");
  104. var itemindxseq = model.getValue(sTREE_PATH+ "[" + rowPos + "]/itemindxseq");
  105. var comnclspath = model.getValue(sTREE_PATH+ "[" + rowPos + "]/pathcd");
  106. if(srcformcd ==""){
  107. srcformcd = "-";
  108. }
  109. if(degnitemcd == ""){
  110. degnitemcd = "-";
  111. }
  112. if(itemindxseq == -100){ // 공통서식 인 경우
  113. model.setValue(ref+"[" + desCurRow + "]/formcd" ,srcformcd);
  114. model.setValue(ref+"[" + desCurRow + "]/itembasecd", degnitemcd.substr(0,7));
  115. }else{ //MY폴더 인 경우
  116. model.setValue(ref+"[" + desCurRow + "]/itemindxseq" ,itemindxseq);
  117. model.setValue(ref+"[" + desCurRow + "]/comnclspath" ,comnclspath);
  118. }
  119. model.setValue(ref+"[" + desCurRow + "]/clsflag", clsflag); // form 이면 F ,folder는 G
  120. model.setValue(ref+"[" + desCurRow + "]/comnchosflag", comnchosflag); //상용구C 예문E
  121. model.setValue(ref+"[" + desCurRow + "]/reqflag", setflag); //개인 과 전체 구분
  122. model.setValue(ref+"[" + desCurRow + "]/reprnm", reprnm); //대표명
  123. model.setValue(ref+"[" + desCurRow + "]/comncnts", comncnts); //내용
  124. setParameter("reprnm","");
  125. setParameter("comncnts","");
  126. grd.refresh();
  127. grd.row = desCurRow;
  128. grd.col = grd.colRef("reprnm");
  129. grd.editcell();
  130. }
  131. /**
  132. * @desc : 트리뷰 셋
  133. * @
  134. * @param :
  135. * @return :
  136. * @---------------------------------------------------
  137. function //fSetTreeView(chosflag){
  138. // chosflag 가 C : 상용구
  139. sTREE_OBJ = trv_indxlist_u
  140. sTREE_PATH = "/root/main/indxlist_u/item";
  141. }*/
  142. /**
  143. * @desc : 공통서식,제증명 서식리스트 조회
  144. * @
  145. * @param :
  146. * @return :
  147. * @---------------------------------------------------
  148. */
  149. function fgetFormIndx(comnchosflag){
  150. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  151. var rows = item.index + 1;
  152. var indxnm = model.getValue(sTREE_PATH+ "[" + rows + "]/indxnm");
  153. var srchyn = model.getValue(sTREE_PATH+ "[" + rows + "]/srchyn");
  154. var srcformcd = model.getValue(sTREE_PATH+ "[" + rows + "]/srcformcd");
  155. var srcformcd = model.getValue(sTREE_PATH+ "[" + rows + "]/srcformcd");
  156. var depth = model.getValue(sTREE_PATH+ "[" + rows + "]/depth");
  157. if(srchyn == "Y") // 조회여부 yn
  158. return;
  159. var chosflag; // 서식 구분
  160. if(indxnm == "공통서식"){
  161. chosflag = "com";
  162. }else if(indxnm == "제증명"){
  163. chosflag = "prof";
  164. }else if(indxnm == "My폴더"){
  165. model.makeValue("/root/send/cond/indxflag","C");
  166. model.makeValue("/root/send/cond/clsflag","G");
  167. chosflag = "folder";
  168. }else if(srcformcd !="" && depth== "2"){
  169. chosflag = "item";
  170. }else if(indxnm == "주호소"){
  171. model.makeValue("/root/send/cond/indxflag","B");
  172. model.makeValue("/root/send/cond/clsflag","B");
  173. chosflag = "folder";
  174. }else if(indxnm == "Summary"){
  175. model.makeValue("/root/send/cond/indxflag","A");
  176. model.makeValue("/root/send/cond/clsflag","A");
  177. chosflag = "folder";
  178. }
  179. //model.makeValue("/root/send/reqdata/reqflag", reqflag); //개인,과, 전체 구분 flag
  180. //model.makeValue("/root/send/reqdata/clsflag", clsflag); //분류 flag
  181. model.makeValue("/root/send/cond/chosflag", chosflag); //분류 flag
  182. model.makeValue("/root/send/cond/formcd", srcformcd); //
  183. //개인,과 구분위해서..
  184. fSelectUserDeptcd("/root/send/cond");
  185. submit("TRMRF02406");
  186. model.setValue(sTREE_PATH+ "[" + rows + "]/srchyn","Y");
  187. fAddDepth(rows,false);
  188. }
  189. /**
  190. * @desc : 개인 과 구분
  191. * @
  192. * @param :
  193. * @return :
  194. * @---------------------------------------------------
  195. */
  196. function fSelectUserDeptcd(ref){
  197. var setflag = model.getValue("/root/send/cond/setflag");
  198. if(setflag != ""){
  199. if (setflag == "U") {
  200. // model.makeValue(ref+"/userid", "12345678"); //getUserId());
  201. // model.makeValue(ref+"/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  202. model.makeValue(ref+"/userid", getUserId()); //
  203. model.makeValue(ref+"/deptcd", getUserInfo("dutplcecd")); //
  204. // reqflag ="U";
  205. }else if (setflag == "D") {
  206. // model.makeValue(ref+"/userid", ""); //getUserId());
  207. // model.makeValue(ref+"/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  208. model.makeValue(ref+"/userid", ""); //getUserId());
  209. model.makeValue(ref+"/deptcd", getUserInfo("dutplcecd")); //
  210. // reqflag ="D";
  211. }else if (setflag == "A") {
  212. // model.makeValue(ref+"/userid", "");
  213. // model.makeValue(ref+"/deptcd", "");
  214. model.makeValue(ref+"/userid", getUserId());
  215. model.makeValue(ref+"/deptcd", getUserInfo("dutplcecd"));
  216. // reqflag ="A";
  217. }
  218. }
  219. }
  220. /**
  221. * @desc : 하위 depth 붙이기
  222. * @
  223. * @param :
  224. * @return :
  225. * @---------------------------------------------------
  226. */
  227. function fAddDepth(rows, flag){
  228. var subNode = "";
  229. var instance = document.models(0).instances(0);
  230. var refNode;
  231. var nextNode;
  232. var node = root.main.indxlist_u;
  233. if(flag){
  234. model.removeNodeset(sTREE_PATH+"[indxnm != 'My폴더' and clsflag = 'G']");
  235. }
  236. refNode = instance.selectSingleNode(sTREE_PATH+"[" + rows + "]"); //조회내용의 상위 항목
  237. var nodelistTmp = instance.selectNodes(sSETLIST);
  238. var nodelength = nodelistTmp.length;
  239. if(nodelength > 0)
  240. {
  241. var tval = "";
  242. for(var i = nodelength; i > 0; i--)
  243. {
  244. tval = model.getValue(sSETLIST+"[" + i + "]/val");
  245. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  246. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  247. }
  248. sTREE_OBJ.rebuild();
  249. }
  250. }
  251. /**
  252. * @desc : 트리정보로 상용구조회
  253. * @
  254. * @param :
  255. * @return :
  256. * @---------------------------------------------------
  257. */
  258. function fReqComnIndx(chosflag){
  259. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  260. var rows = item.index + 1;
  261. var reqflag;
  262. var comnchosflag = model.getValue("/root/send/cond/caseflag");
  263. //개인,과 구분위해서..
  264. var setflag = model.getValue("/root/send/cond/setflag");
  265. if(setflag != ""){
  266. if (setflag == "U") {
  267. // model.makeValue("/root/send/reqdata/userid", "12345678"); //getUserId());
  268. // model.makeValue("/root/send/reqdata/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  269. model.makeValue("/root/send/reqdata/userid", getUserId()); //
  270. model.makeValue("/root/send/reqdata/deptcd", getUserInfo("dutplcecd"));
  271. reqflag ="U";
  272. }else if (setflag == "D") {
  273. // model.makeValue("/root/send/reqdata/userid", ""); //getUserId());
  274. // model.makeValue("/root/send/reqdata/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  275. model.makeValue("/root/send/reqdata/userid", ""); //getUserId());
  276. model.makeValue("/root/send/reqdata/deptcd", getUserInfo("dutplcecd"));
  277. reqflag ="D";
  278. }else if (setflag == "A") {
  279. model.makeValue("/root/send/reqdata/userid", getUserId());
  280. model.makeValue("/root/send/reqdata/deptcd", getUserInfo("dutplcecd"));
  281. reqflag ="A";
  282. }
  283. }
  284. var clsflag = model.getValue(sTREE_PATH+ "[" + rows + "]/clsflag");
  285. var srcformcd = model.getValue(sTREE_PATH+ "[" + rows + "]/srcformcd");
  286. var degnitemcd = model.getValue(sTREE_PATH+ "[" + rows + "]/degnitemcd");
  287. var itemindxseq = model.getValue(sTREE_PATH+ "[" + rows + "]/itemindxseq");
  288. var comnclspath = model.getValue(sTREE_PATH+ "[" + rows + "]/pathcd");
  289. if(itemindxseq == -100){
  290. // formcd만 넘기면 공통서식조회, 둘다 넘기면 상세 조회
  291. model.makeValue("/root/send/reqdata/formcd" ,srcformcd);
  292. model.makeValue("/root/send/reqdata/itembasecd", degnitemcd.substr(0,7));
  293. }else{
  294. model.makeValue("/root/send/reqdata/itemindxseq" ,itemindxseq);
  295. model.makeValue("/root/send/reqdata/comnclspath" ,comnclspath);
  296. }
  297. //상위폴더구분
  298. var folderflag = "";
  299. var indxnm = model.getValue(sTREE_PATH+ "[" + rows + "]/indxnm");
  300. var chosflag; // 서식 구분
  301. if(indxnm == "공통서식" || indxnm == "제증명" || indxnm == "My폴더"){
  302. folderflag = "folderflag";
  303. }
  304. model.makeValue("/root/send/reqdata/folderflag", folderflag); //상위폴더구분
  305. model.makeValue("/root/send/reqdata/reqflag", reqflag); //개인,과, 전체 구분 flag
  306. model.makeValue("/root/send/reqdata/clsflag", clsflag); //분류 flag
  307. model.makeValue("/root/send/reqdata/comnchosflag", comnchosflag); //분류 flag
  308. submit("TRMRF02403");
  309. model.refresh();
  310. }
  311. /**
  312. * @desc : 상용구 한줄 추가
  313. * @
  314. * @param :
  315. * @return :
  316. * @---------------------------------------------------
  317. */
  318. function fAddRowComn(){
  319. var comnchosflag = model.getValue("/root/send/cond/caseflag"); //예문 ,상용구 case구분
  320. var seq = model.getValue("/root/main/indxlist_comn/item");
  321. if( seq == "" || seq == "공통서식" || seq == "제증명" || seq.length < 8){
  322. return;
  323. }
  324. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  325. var rowPos = item.index + 1;
  326. var degnitemnm = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemnm");
  327. var depth = model.getValue(sTREE_PATH+ "[" + rowPos + "]/depth");
  328. var indxnm = model.getValue(sTREE_PATH+ "[" + rowPos + "]/indxnm");
  329. var setflag = model.getValue("/root/send/cond/setflag");
  330. if ( setflag == "A") //전체는 입력 안된다
  331. {
  332. return;
  333. }
  334. //상용구 예문 분리
  335. var grdObj;
  336. var ref;
  337. if(comnchosflag == "C"){
  338. grdObj = grd_comnlist;
  339. ref = "/root/main/list/comnlist";
  340. }else if(comnchosflag == "E"){
  341. grdObj = grd_exmplist;
  342. ref = "/root/main/list/exmplist";
  343. }
  344. grdObj.addRow(false);
  345. var desCurRow = grdObj.rows - grdObj.fixedRows;
  346. // 개인 , 과 , 전체 구분
  347. if (setflag == "U") {
  348. // model.setValue("/root/main/list/exmplist[" + desCurRow + "]/userid", "12345678"); //getUserId());
  349. // model.setValue("/root/main/list/exmplist[" + desCurRow + "]/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  350. model.setValue(ref+"[" + desCurRow + "]/userid", getUserId()); //
  351. model.setValue(ref+"[" + desCurRow + "]/deptcd", getUserInfo("dutplcecd")); //
  352. }
  353. if (setflag == "D") {
  354. // model.setValue(ref+"[" + desCurRow + "]/userid", "");
  355. // model.setValue(ref+"[" + desCurRow + "]/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  356. model.setValue(ref+"[" + desCurRow + "]/userid", "");
  357. model.setValue(ref+"[" + desCurRow + "]/deptcd", getUserInfo("dutplcecd")); //
  358. }
  359. if (setflag == "A") {
  360. model.setValue(ref+"[" + desCurRow + "]/userid", "");
  361. model.setValue(ref+"[" + desCurRow + "]/deptcd", "");
  362. }
  363. var clsflag = model.getValue(sTREE_PATH+ "[" + rowPos + "]/clsflag");
  364. var srcformcd = model.getValue(sTREE_PATH+ "[" + rowPos + "]/srcformcd");
  365. var degnitemcd = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemcd");
  366. var itemindxseq = model.getValue(sTREE_PATH+ "[" + rowPos + "]/itemindxseq");
  367. var comnclspath = model.getValue(sTREE_PATH+ "[" + rowPos + "]/pathcd");
  368. if(srcformcd ==""){
  369. srcformcd = "-"; //srcformcd있으면 formcd로 조회
  370. }
  371. if(degnitemcd == ""){
  372. degnitemcd = "-"; //degnitemcd있으면 degnitemcd로 조회
  373. }
  374. if(itemindxseq == -100){ // 공통서식 인 경우
  375. model.setValue(ref+"[" + desCurRow + "]/formcd" ,srcformcd);
  376. model.setValue(ref+"[" + desCurRow + "]/itembasecd", degnitemcd.substr(0,7));
  377. }else{ //MY폴더 인 경우
  378. model.setValue(ref+"[" + desCurRow + "]/itemindxseq" ,itemindxseq);
  379. model.setValue(ref+"[" + desCurRow + "]/comnclspath" ,comnclspath);
  380. }
  381. model.setValue(ref+"[" + desCurRow + "]/clsflag", clsflag); // form 이면 F ,folder는 G
  382. model.setValue(ref+"[" + desCurRow + "]/comnchosflag", comnchosflag); //상용구C 예문E
  383. model.setValue(ref+"[" + desCurRow + "]/reqflag", setflag); //개인 과 전체 구분
  384. model.refresh();
  385. }
  386. /**
  387. * @desc : 상용구 등록
  388. * @
  389. * @param :
  390. * @return :
  391. * @---------------------------------------------------
  392. */
  393. function fAddComn(){
  394. var comnchosflag = model.getValue("/root/send/cond/caseflag"); //예문 ,상용구 case구분
  395. var setflag = model.getValue("/root/send/cond/setflag");
  396. if ( setflag == "A") //전체는 입력 안된다
  397. {
  398. return;
  399. }
  400. var seq = model.getValue("/root/main/indxlist_comn/item");
  401. //alert(seq.length);
  402. var fseq = seq.indexOf(".");
  403. var flag = false;
  404. if(fseq == -1 ){ // My폴더 하위항목
  405. flag = true;
  406. }
  407. if(seq.length >10){ // 공통,제증명 하위항목
  408. flag = false;
  409. }
  410. if(fseq == -1 ){
  411. if( seq == "" || seq == "-공통서식" || seq == "-제증명" || flag == true){
  412. //alert(seq+"=="+seq.length);
  413. if( seq == "My폴더"){
  414. messageBox("새폴더가 생성 되지","E007");
  415. return;
  416. }
  417. messageBox("세부 항목을 ","C002");
  418. return;
  419. }
  420. }
  421. //상용구 예문 분리
  422. var grdObj;
  423. var ref;
  424. if(comnchosflag == "C"){
  425. grdObj = grd_comnlist;
  426. ref = "/root/main/list/comnlist";
  427. }else if(comnchosflag == "E"){
  428. grdObj = grd_exmplist;
  429. ref = "/root/main/list/exmplist";
  430. }
  431. modal("SPMRF02700_상용구관리팝업",1 ,500, 250);
  432. var reprnm = getParameter("reprnm");
  433. var comncnts = getParameter("comncnts");
  434. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  435. var rowPos = item.index + 1;
  436. var degnitemnm = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemnm");
  437. var depth = model.getValue(sTREE_PATH+ "[" + rowPos + "]/depth");
  438. var indxnm = model.getValue(sTREE_PATH+ "[" + rowPos + "]/indxnm");
  439. var degnitemno = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemno");
  440. var formdegnseq = model.getValue(sTREE_PATH+ "[" + rowPos + "]/formdegnseq");
  441. grdObj.addRow(false);
  442. var desCurRow = grdObj.rows - grdObj.fixedRows;
  443. // 개인 , 과 , 전체 구분
  444. if (setflag == "U") {
  445. // model.setValue(ref+"[" + desCurRow + "]/userid", "12345678"); //getUserId());
  446. // model.setValue(ref+"[" + desCurRow + "]/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  447. model.setValue(ref+"[" + desCurRow + "]/userid", getUserId()); //
  448. model.setValue(ref+"[" + desCurRow + "]/deptcd", getUserInfo("dutplcecd")); //
  449. }
  450. if (setflag == "D") {
  451. // model.setValue(ref+"[" + desCurRow + "]/userid", "");
  452. // model.setValue(ref+"[" + desCurRow + "]/deptcd", "11113333"); //getUserInfo("dutplcecd"));
  453. model.setValue(ref+"[" + desCurRow + "]/userid", "");
  454. model.setValue(ref+"[" + desCurRow + "]/deptcd", getUserInfo("dutplcecd")); //
  455. }
  456. if (setflag == "A") {
  457. model.setValue(ref+"[" + desCurRow + "]/userid", "");
  458. model.setValue(ref+"[" + desCurRow + "]/deptcd", "");
  459. }
  460. var clsflag = model.getValue(sTREE_PATH+ "[" + rowPos + "]/clsflag");
  461. var srcformcd = model.getValue(sTREE_PATH+ "[" + rowPos + "]/srcformcd");
  462. var degnitemcd = model.getValue(sTREE_PATH+ "[" + rowPos + "]/degnitemcd");
  463. var itemindxseq = model.getValue(sTREE_PATH+ "[" + rowPos + "]/itemindxseq");
  464. var comnclspath = model.getValue(sTREE_PATH+ "[" + rowPos + "]/pathcd");
  465. if(srcformcd ==""){
  466. srcformcd = "-";
  467. }
  468. if(degnitemcd == ""){
  469. degnitemcd = "-";
  470. }
  471. if(itemindxseq == -100){ // 공통서식 인 경우
  472. model.setValue(ref+"[" + desCurRow + "]/formcd" ,srcformcd);
  473. model.setValue(ref+"[" + desCurRow + "]/itembasecd", degnitemcd.substr(0,7));
  474. }else{ //MY폴더 인 경우
  475. model.setValue(ref+"[" + desCurRow + "]/itemindxseq" ,itemindxseq);
  476. model.setValue(ref+"[" + desCurRow + "]/comnclspath" ,comnclspath);
  477. }
  478. model.setValue(ref+"[" + desCurRow + "]/clsflag", clsflag); // form 이면 F ,folder는 G
  479. model.setValue(ref+"[" + desCurRow + "]/comnchosflag", comnchosflag); //상용구C 예문E
  480. model.setValue(ref+"[" + desCurRow + "]/reqflag", setflag); //개인 과 전체 구분
  481. model.setValue(ref+"[" + desCurRow + "]/reprnm", reprnm); //대표명
  482. model.setValue(ref+"[" + desCurRow + "]/comncnts", comncnts); //내용
  483. setParameter("reprnm","");
  484. setParameter("comncnts","");
  485. model.refresh();
  486. }
  487. /**
  488. * @desc : 상용구 수정
  489. * @
  490. * @param :
  491. * @return :
  492. * @---------------------------------------------------
  493. */
  494. function fUpdtComn(){
  495. var comnchosflag = model.getValue("/root/send/cond/caseflag"); //예문 ,상용구 case구분
  496. //상용구 예문 분리
  497. var grdObj;
  498. var ref;
  499. if(comnchosflag == "C"){
  500. grdObj = grd_comnlist;
  501. ref = "/root/main/list/comnlist";
  502. }else if(comnchosflag == "E"){
  503. grdObj = grd_exmplist;
  504. ref = "/root/main/list/exmplist";
  505. }
  506. var setflag = model.getValue("/root/send/cond/setflag");
  507. if ( setflag == "A") //전체는 입력 안된다
  508. {
  509. return;
  510. }
  511. desCurRow = grdObj.row - grdObj.fixedRows + 1;
  512. if(desCurRow < 1){
  513. messageBox("수정할 행을 ","C002");
  514. return;
  515. }
  516. setParameter("reprnm", model.getValue(ref+"[" + desCurRow + "]/reprnm"));
  517. setParameter("comncnts",model.getValue(ref+"[" + desCurRow + "]/comncnts"));
  518. modal("SPMRF02700_상용구관리팝업",1 ,500, 250);
  519. var reprnm = getParameter("reprnm");
  520. var comncnts = getParameter("comncnts");
  521. grd_comnlist.rowStatus(desCurRow) = 2;
  522. model.setValue(ref+"[" + desCurRow + "]/reprnm", reprnm);
  523. model.setValue(ref+"[" + desCurRow + "]/comncnts", comncnts);
  524. model.setValue(ref+"[" + desCurRow + "]/reqflag", setflag);
  525. setParameter("reprnm","");
  526. setParameter("comncnts","");
  527. model.refresh();
  528. }
  529. /**
  530. * @desc : 상용구 저장
  531. * @
  532. * @param :
  533. * @return :
  534. * @---------------------------------------------------
  535. */
  536. function fSaveComn(){
  537. var comnchosflag = model.getValue("/root/send/cond/caseflag"); //예문 ,상용구 case구분
  538. //상용구 예문 분리
  539. var grdObj;
  540. var ref;
  541. if(comnchosflag == "C"){
  542. grdObj = grd_comnlist;
  543. ref = "/root/main/list/comnlist";
  544. }else if(comnchosflag == "E"){
  545. grdObj = grd_exmplist;
  546. ref = "/root/main/list/exmplist";
  547. }var curRow = grdObj.row - grdObj.fixedRows + 1;
  548. if(curRow < 0){
  549. return;
  550. }
  551. // 신규, 수정된 row있는지 확인
  552. var breakflag = false;
  553. for(var i = grdObj.fixedRows; i < grdObj.rows; i++){
  554. var rowstat = grdObj.rowStatus(i);
  555. if(rowstat != "0" ){
  556. breakflag = true;
  557. break;
  558. }
  559. } //end for
  560. if(!breakflag)
  561. return;
  562. model.makeValue("/root/send/savedata",grdObj.getUpdateData());
  563. submit("TXMRF02401");
  564. model.removeNodeset("/root/send/savedata");
  565. }
  566. /**
  567. * @desc : 상용구 삭제
  568. * @
  569. * @param :
  570. * @return :
  571. * @---------------------------------------------------
  572. */
  573. function fDelComn(){
  574. var comnchosflag = model.getValue("/root/send/cond/caseflag"); //예문 ,상용구 case구분
  575. //상용구 예문 분리
  576. var grdObj;
  577. var ref;
  578. if(comnchosflag == "C"){
  579. grdObj = grd_comnlist;
  580. ref = "/root/main/list/comnlist";
  581. }else if(comnchosflag == "E"){
  582. grdObj = grd_exmplist;
  583. ref = "/root/main/list/exmplist";
  584. }
  585. var curRow = grdObj.row - grdObj.fixedRows + 1;
  586. if(curRow < 0){
  587. messageBox("삭제할 행을 ","C002");
  588. return;
  589. }
  590. var setflag = model.getValue("/root/send/cond/setflag");
  591. var rtn = messageBox("선택한 행을 ", "Q001");
  592. if (rtn == "6"){
  593. grd_comnlist.rowStatus(curRow) = "4";
  594. model.setValue(ref+"[" + curRow + "]/reqflag", setflag);
  595. model.makeValue("/root/send/savedata",grd_comnlist.getUpdateData());
  596. submit("TXMRF02401");
  597. }
  598. }
  599. /**
  600. * @desc : 마우스 오른쪽 버튼 팝업창
  601. * @
  602. * @param :
  603. * @return :
  604. * @---------------------------------------------------
  605. * 1. 마우스 우클릭인가?
  606. * 2. 관리자인가? 사용자인가?
  607. * 3. 구분이 개인인가? 과인가? 전체인가?
  608. * 4. 폴더인가? 파일인가? 루트인가?
  609. */
  610. function fMouseRghtBtnPopup(chosflag){
  611. //fSetTreeView(chosflag);
  612. if(event.button == 3){
  613. if(sTREE_OBJ.isCell(event.target) && sTREE_OBJ.selectedIndex > -1) {
  614. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  615. var rowpos = item.index + 1;
  616. //sSETLIST를 sTREE_PATH로 교체..
  617. var depth = model.getValue(sTREE_PATH+ "[" + rowpos + "]/depth");
  618. var item_length = sTREE_OBJ.length;
  619. // 루트인가? (보여주는 부분으로..)
  620. var indxnm = model.getValue(sTREE_PATH+ "[" + rowpos + "]/indxnm");
  621. var reprnm = model.getValue(sTREE_PATH+ "[" + rowpos + "]/reprnm"); //상용구
  622. var degnitemnm = model.getValue(sTREE_PATH+ "[" + rowpos + "]/degnitemnm"); // 디자인항목
  623. //My폴더 인경우 새폴더 생성 가능
  624. if(depth == 0 && item_length > 1 && (indxnm == "My폴더" || indxnm == "Summary" || indxnm == "주호소")) {
  625. window.setPopupMenu(true, "/root/temp/menu2/menu", "label", "func", false); return;
  626. }
  627. /* if (depth == 0 && item_length > 1) {
  628. // My폴더는 폴더 생성 가능 , 나머지 depth가 0인 항목은 폴더 생성불가
  629. window.setPopupMenu(false);
  630. return;
  631. }*/
  632. // 관리자인가? 구분이 개인인가?
  633. var admin = model.getValue("/root/send/cond/admin");
  634. var setflag = model.getValue("/root/send/cond/setflag");
  635. if (admin == "true" || setflag == "U") {
  636. var linkflag = model.getValue(sTREE_PATH + "[" + rowpos + "]/linkflag");
  637. if (depth == 0 && linkflag == "N") {
  638. // My폴더
  639. window.setPopupMenu(true, "/root/temp/menu2/menu", "label", "func", false); return;
  640. }else if (depth > 0 && linkflag == "N") {
  641. // 폴더인경우, 새폴더/폴더수정/폴더삭제..
  642. window.setPopupMenu(true, "/root/temp/menu/menu", "label", "func", false); return;
  643. } else if(linkflag =="Y"){
  644. // 파일인경우, 파일삭제만..
  645. window.setPopupMenu(true, "/root/temp/menu1/menu", "label", "func", false); return;
  646. }
  647. } else {
  648. window.setPopupMenu(false);
  649. }
  650. } else {
  651. window.setPopupMenu(false);
  652. }
  653. }else{
  654. window.setPopupMenu(false);
  655. }
  656. }
  657. /**
  658. * @desc : 상용구리스트 선택
  659. * @
  660. * @param :
  661. * @return :
  662. * @---------------------------------------------------
  663. */
  664. function fSelectComn(){
  665. var iRow = grd_comnlist.row - grd_comnlist.fixedRows + 1;
  666. model.makeValue(sSETLIST_HIDDEN + "/comnseq",model.getValue("/root/main/list/comnlist[" + iRow + "]/comnseq"));
  667. model.refresh();
  668. }
  669. function fSelectComnEx()
  670. {
  671. if(opener.javascript.getParameter("openmode") == "select" ||
  672. opener.javascript.getParameter("openmode") == "insert")
  673. {
  674. var grd = null;
  675. if(model.getValue("/root/send/cond/caseflag") == "C")
  676. grd = document.controls("grd_comnlist");
  677. else if(model.getValue("/root/send/cond/caseflag") == "E")
  678. grd = document.controls("grd_exmplist");
  679. var ref = grd.attribute("nodeset");
  680. var curRow = grd.row;
  681. var comncnts = model.getValue(ref + "[" + curRow + "]/comncnts");
  682. opener.javascript.setParameter("comncnts", comncnts);
  683. window.close();
  684. }
  685. }
  686. /**
  687. * @desc : 상용구 추가 //붙여넣기
  688. * @
  689. * @param :
  690. * @return :
  691. * @---------------------------------------------------
  692. */
  693. function fPasteComnSet(){
  694. var flag = model.getValue("/root/send/cond/caseflag"); //상용구,예문 case구분
  695. //fSetTreeView(flag);
  696. var curRow;
  697. var comnseq;
  698. var grdObj;
  699. if(flag =="C"){
  700. //상용구 comnseq가져온다..
  701. curRow = grd_comnlist.row - grd_comnlist.fixedRows + 1;
  702. grdObj = "comnlist";
  703. if(curRow < 1){
  704. return;
  705. }
  706. grd_comnlist.rowstatus(curRow) = 1;
  707. }else if(flag =="E"){
  708. //예문 comnseq가져온다..
  709. curRow = grd_exmplist.row - grd_exmplist.fixedRows + 1;
  710. grdObj = "exmplist";
  711. if(curRow < 1){
  712. return;
  713. }
  714. grd_exmplist.rowstatus(curRow) = 1;
  715. }
  716. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  717. var rowPos = item.index + 1;
  718. var itemindxseq = model.getValue(sTREE_PATH+ "[" + rowPos + "]/itemindxseq");
  719. var comnclspath = model.getValue(sTREE_PATH+ "[" + rowPos + "]/comnclspath");
  720. model.setValue("/root/main/list/"+grdObj+"["+ curRow +"]/clsflag" ,"G");
  721. model.setValue("/root/main/list/"+grdObj+"["+ curRow +"]/formcd" ,"");
  722. model.setValue("/root/main/list/"+grdObj+"["+ curRow +"]/itembasecd","");
  723. model.setValue("/root/main/list/"+grdObj+"["+ curRow +"]/itemindxseq",itemindxseq);
  724. model.setValue("/root/main/list/"+grdObj+"["+ curRow +"]/comnclspath",comnclspath);
  725. submit("TXMRF02401");
  726. }
  727. /**
  728. * @desc : 새폴더 추가
  729. * @
  730. * @param :
  731. * @return :
  732. * @---------------------------------------------------
  733. */
  734. function fAddComnSet(){
  735. //fSetTreeView();
  736. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  737. var rowPos = item.index + 1;
  738. fSetDiagInfo(rowPos, "i");
  739. model.setValue(sSETLIST_HIDDEN + "/status", "i");
  740. model.setValue("/root/main/iptbox/indxnm", "");
  741. model.refresh();
  742. fShowWndIptBox();
  743. }
  744. /**
  745. * @desc : 폴더 삭제
  746. * @
  747. * @param :
  748. * @return :
  749. * @---------------------------------------------------
  750. */
  751. function fDelComnSet(){
  752. //fSetTreeView();
  753. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  754. var rowPos = item.index + 1;
  755. if(fSetDiagInfo(rowPos, "d")!= -1){
  756. fSaveComnSet("Y");
  757. }
  758. }
  759. /**
  760. * @desc : 폴더 수정
  761. * @
  762. * @param :
  763. * @return :
  764. * @---------------------------------------------------
  765. */
  766. function fUpdtComnSet(){
  767. //fSetTreeView();
  768. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  769. var rowPos = item.index + 1;
  770. var indxnm = item.label;
  771. model.setValue("/root/main/iptbox/indxnm", indxnm);
  772. model.refresh();
  773. if(fSetDiagInfo(rowPos, "u")!=-1){
  774. fShowWndIptBox();
  775. }
  776. }
  777. /**
  778. * @desc :My폴더 저장
  779. * @
  780. * @param :
  781. * @return :
  782. * @---------------------------------------------------
  783. */
  784. function fSaveComnSet(linkflag, setflag){
  785. grup_saveas.visible = "false";
  786. //grup_saveas1.visible = "false";
  787. var indxnm = model.getValue("/root/main/iptbox/indxnm");
  788. var refNode;
  789. var subNode = "";
  790. if (linkflag == "N" && indxnm == "") {
  791. messageBox("폴더명칭을 ", "C001");
  792. return;
  793. }
  794. model.makeValue(sSETLIST_HIDDEN + "/indxnm" , indxnm);
  795. model.makeValue(sSETLIST_HIDDEN + "/linkflag" , linkflag);
  796. model.makeValue(sSETLIST_HIDDEN + "/setflag" , model.getValue("/root/send/cond/setflag"));
  797. model.makeValue(sSETLIST_HIDDEN + "/comnflag" , "comnflag"); //상용구 구분
  798. // 구분에 따라 [과, 사용자] 정보를 넘겨야 하는데...
  799. model.makeValue(sSETLIST_HIDDEN + "/userid" , getUserId());
  800. model.makeValue(sSETLIST_HIDDEN + "/deptcd" , getUserInfo("dutplcecd"));
  801. model.MakeNode("/root/send/savedata");
  802. model.copyNode("/root/send/savedata", sSETLIST_HIDDEN);
  803. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  804. var rowPos = item.index + 1;
  805. var sClsFlag = model.getValue(sTREE_PATH+"["+rowPos+"]/clsflag");
  806. //model.makeValue("/root/send/savedata/itemindxseq",model.getValue(sTREE_PATH+ "[" + rowPos + "]/itemindxseq"));
  807. //model.makeValue("/root/send/savedata/supitemindxseq",model.getValue(sTREE_PATH+ "[" + rowPos + "]/itemindxseq"));
  808. submit("TXMRF02402");
  809. if(sClsFlag == "G"){
  810. model.removeNodeset(sTREE_PATH+"[indxnm != 'My폴더' and clsflag = '"+sClsFlag+"']");
  811. // My 폴더
  812. for(var row=1; row<=getNodesetCnt(model, sTREE_PATH); row++){
  813. if(model.getValue(sTREE_PATH+"["+row+"]/indxnm") == "My폴더"){
  814. refNode = instance.selectSingleNode(sTREE_PATH+"[" + row + "]"); //조회내용의 상위 항목
  815. break;
  816. }
  817. }
  818. var nodelistTmp = instance.selectNodes(sSETLIST);
  819. var nodelength = nodelistTmp.length;
  820. if(nodelength > 0){
  821. for(var i = nodelength; i > 0; i--)
  822. {
  823. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  824. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  825. }
  826. }
  827. }else if(sClsFlag == "B"){
  828. model.removeNodeset(sTREE_PATH+"[indxnm != '주호소' and clsflag = '"+sClsFlag+"']");
  829. // 주호소
  830. for(var row=1; row<=getNodesetCnt(model, sTREE_PATH); row++){
  831. if(model.getValue(sTREE_PATH+"["+row+"]/indxnm") == "주호소"){
  832. refNode = instance.selectSingleNode(sTREE_PATH+"[" + row + "]"); //조회내용의 상위 항목
  833. break;
  834. }
  835. }
  836. var nodelistTmp = instance.selectNodes(sSETLIST);
  837. var nodelength = nodelistTmp.length;
  838. if(nodelength > 0){
  839. for(var i = nodelength; i > 0; i--)
  840. {
  841. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  842. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  843. }
  844. }
  845. }else if(sClsFlag == "A"){
  846. model.removeNodeset(sTREE_PATH+"[indxnm != 'Summary' and clsflag = '"+sClsFlag+"']");
  847. // Summary
  848. for(var row=1; row<=getNodesetCnt(model, sTREE_PATH); row++){
  849. if(model.getValue(sTREE_PATH+"["+row+"]/indxnm") == "Summary"){
  850. refNode = instance.selectSingleNode(sTREE_PATH+"[" + row + "]"); //조회내용의 상위 항목
  851. break;
  852. }
  853. }
  854. var nodelistTmp = instance.selectNodes(sSETLIST);
  855. var nodelength = nodelistTmp.length;
  856. if(nodelength > 0){
  857. for(var i = nodelength; i > 0; i--)
  858. {
  859. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  860. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  861. }
  862. }
  863. }
  864. model.removeNodeset("/root/send/savedata");
  865. model.refresh();
  866. }
  867. /**
  868. * @desc : 상용구관리 폴더명을 입력할 InputBox를 보여줌.
  869. * @
  870. * @param :
  871. * @return :
  872. * @---------------------------------------------------
  873. */
  874. function fShowWndIptBox(flag){
  875. sTREE_OBJ.vscroll.attribute("pos") = ( parseInt(sTREE_OBJ.attribute("itemheight")) + 1 ) * sTREE_OBJ.selectedIndex;
  876. grup_saveas.attribute("top") = event.clientY;
  877. grup_saveas.visible = "true";
  878. }
  879. /**
  880. * @desc : 상용구 SET 조회
  881. * @
  882. * @param :
  883. * @return :
  884. * @---------------------------------------------------
  885. */
  886. function fReqDetlSet(){
  887. //fSetTreeView();
  888. if (sTREE_OBJ.selectedIndex == 0) {
  889. return;
  890. }
  891. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  892. //alert(item);
  893. var rowpos = item.index + 1;
  894. fSetDiagInfo(rowpos);
  895. var depth = model.getValue(sSETLIST_HIDDEN + "/depth");
  896. if(depth == 1){
  897. return;
  898. }
  899. }
  900. /**
  901. * @desc : Mouse Drag Drop
  902. * @
  903. * @param :
  904. * @return : void
  905. * @authur :
  906. * @---------------------------------------------------
  907. */
  908. function fOndrop(flag){
  909. //fSetTreeView(flag);
  910. var rowpos = sTREE_OBJ.mouseRow + 1;
  911. var depth = model.getValue(sSETLIST + "[" + rowpos + "]/depth");
  912. var indxnm = model.getValue(sSETLIST + "[" + rowpos + "]/indxnm");
  913. var x = event.clientX;
  914. var maxposX = 24 + 16 * (depth - 1) + ( 13 * indxnm.length);
  915. var minposX = 24 + 16 * (depth - 1);
  916. if(maxposX > x){
  917. fComnSetDrop();
  918. }else{
  919. return;
  920. }
  921. }
  922. /**
  923. * @desc : Mouse Drag Over
  924. * @
  925. * @param :
  926. * @return : void
  927. * @authur :
  928. * @---------------------------------------------------
  929. */
  930. function fMouseOver(){
  931. //fSetTreeView();
  932. var rowpos = sTREE_OBJ.mouseRow + 1;
  933. var depth = model.getValue(sSETLIST + "[" + rowpos + "]/depth");
  934. var indxnm = model.getValue(sSETLIST + "[" + rowpos + "]/indxnm");
  935. var x = event.clientX;
  936. var maxposX = 24 + 16 * (depth - 1) + ( 10 * indxnm.length);
  937. var minposX = 24 + 16 * (depth - 1);
  938. if(maxposX > x){
  939. for ( var i = 0; i < sTREE_OBJ.length; i++ ) {
  940. sTREE_OBJ.item(i).attribute("background-color") = "#ffffff";
  941. sTREE_OBJ.item(i).attribute("text-decoration") = "";
  942. }
  943. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("background-color") = "#ece1ec";
  944. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("text-decoration") = "";
  945. }
  946. }
  947. /**
  948. * @desc : TreeView에 Drag상태로 Mouse over된 경우 item의 background color를 clear함
  949. * @
  950. * @param :
  951. * @return : void
  952. * @authur :
  953. * @---------------------------------------------------
  954. */
  955. function fOnDragMouseOver(flag){
  956. //fSetTreeView(flag);
  957. var treeObj = document.controls.item(event.currentTarget);
  958. var rowpos = sTREE_OBJ.mouseRow + 1;
  959. var depth = model.getValue(sSETLIST + "[" + rowpos + "]/depth");
  960. var indxnm = model.getValue(sSETLIST + "[" + rowpos + "]/indxnm");
  961. var x = event.clientX;
  962. var maxposX = 24 + 16 * (depth - 1) + ( 10 * indxnm.length);
  963. var minposX = 24 + 16 * (depth - 1);
  964. if(maxposX > x){
  965. if( sTREE_OBJ.selectedIndex != treeObj.mouseRow ) {
  966. for ( var i = 0; i < treeObj.length; i++ ) {
  967. treeObj.item(i).attribute("background-color") = "#ffffff";
  968. treeObj.item(i).attribute("text-decoration") = "";
  969. }
  970. treeObj.item(treeObj.mouseRow).attribute("background-color") = "#ece1ec";
  971. treeObj.item(treeObj.mouseRow).attribute("text-decoration") = "";
  972. }
  973. }
  974. }
  975. /**
  976. * @desc : 상용구 SET Drag
  977. * @
  978. * @param :
  979. * @return :
  980. * @---------------------------------------------------
  981. */
  982. function fComnSetDrag(flag){
  983. //fSetTreeView(flag);
  984. if (sTREE_OBJ.selectedIndex == 0) {
  985. return;
  986. }
  987. var item = sTREE_OBJ.item(sTREE_OBJ.selectedIndex);
  988. var rowpos = item.index + 1;
  989. fSetDiagInfo(rowpos, "u");
  990. var indxnm = model.getValue(sSETLIST + "[" + rowpos + "]/indxnm");
  991. model.setValue("/root/main/iptbox/indxnm", indxnm);
  992. model.refresh();
  993. }
  994. /**
  995. * @desc : 상용구 SET Drop
  996. * @
  997. * @param :
  998. * @return :
  999. * @---------------------------------------------------
  1000. */
  1001. function fComnSetDrop(){
  1002. //fSetTreeView();
  1003. fClrTreeViweSelect();
  1004. var admin = model.getValue("/root/send/cond/admin");
  1005. var setflag = model.getValue("/root/send/cond/setflag");
  1006. var treeObj = document.controls.item(event.currentTarget);
  1007. var rowpos = sTREE_OBJ.mouseRow + 1;
  1008. var depth = model.getValue(sSETLIST + "[" + rowpos + "]/depth");
  1009. var itemindxseq = model.getValue(sSETLIST + "[" + rowpos + "]/itemindxseq");
  1010. var supitemindxseq = model.getValue(sSETLIST + "[" + rowpos + "]/supitemindxseq");
  1011. var linkflag = model.getValue(sSETLIST + "[" + rowpos + "]/linkflag");
  1012. var cmpdepth = model.getValue(sSETLIST_HIDDEN + "/depth");
  1013. var cmpitemindxseq = model.getValue(sSETLIST_HIDDEN + "/itemindxseq");
  1014. var cmpsupitemindxseq = model.getValue(sSETLIST_HIDDEN + "/supitemindxseq");
  1015. var cmplinkflag = model.getValue(sSETLIST_HIDDEN + "/linkflag");
  1016. // 이동하는 폴더가 파일 아래로 이동하는것 방지함.
  1017. if(linkflag == "Y"){
  1018. messageBox("폴더가 아닌 위치로 이동", "E001");
  1019. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("background-color") = "#ffffff";
  1020. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("text-decoration") = "";
  1021. return;
  1022. }
  1023. if(itemindxseq == cmpitemindxseq){
  1024. // messageBox("동일한 위치로 이동", "E001");
  1025. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("background-color") = "#ffffff";
  1026. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("text-decoration") = "";
  1027. return;
  1028. }else if(itemindxseq == cmpsupitemindxseq){
  1029. // 같은 과, 같은 사용자가 아니면 이동이 안됨. (why? with문 update가 안되니까..)
  1030. // if (deptcd != cmpdeptcd || userid != cmpuserid) {
  1031. // messageBox("지정된 위치로 이동", "E001");
  1032. // sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("background-color") = "#ffffff";
  1033. // sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("text-decoration") = "";
  1034. // return;
  1035. // }
  1036. }
  1037. //이동하는 SET폴더의 depth가 도착하는 곳보다 낮은 레벨일 경우,
  1038. //자신의 child node 아래로 이동하는 것을 방지함.
  1039. if(cmpdepth < depth){
  1040. var rootdepth;
  1041. var rootitemindxseq;
  1042. while(cmpdepth != rootdepth){
  1043. rootdepth = model.getValue(sSETLIST + "[" + rowpos + "]/depth");
  1044. rootitemindxseq = model.getValue(sSETLIST + "[" + rowpos + "]/itemindxseq");
  1045. rowpos--;
  1046. }
  1047. if(rootitemindxseq == cmpitemindxseq){
  1048. messageBox("지정된 위치로 이동", "E001");
  1049. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("background-color") = "#ffffff";
  1050. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("text-decoration") = "";
  1051. return;
  1052. }
  1053. }
  1054. // 이동 폴더의 (과, 사용자) 정보, 이동 대상의 (과, 사용자) 정보
  1055. var deptcd = model.getValue(sSETLIST + "[" + rowpos + "]/deptcd");
  1056. var userid = model.getValue(sSETLIST + "[" + rowpos + "]/userid");
  1057. var cmpdeptcd = model.getValue(sSETLIST_HIDDEN + "/deptcd");
  1058. var cmpuserid = model.getValue(sSETLIST_HIDDEN + "/userid");
  1059. // 같은 과, 같은 사용자가 아니면 이동이 안됨. (why? with문 update가 안되니까..)
  1060. if (deptcd != cmpdeptcd || userid != cmpuserid) {
  1061. messageBox("지정된 위치로 이동", "E001");
  1062. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("background-color") = "#ffffff";
  1063. sTREE_OBJ.item(sTREE_OBJ.mouseRow).attribute("text-decoration") = "";
  1064. return;
  1065. }
  1066. // 이동 폴더의 (과, 사용자) 정보를 셋함...
  1067. model.setValue(sSETLIST_HIDDEN + "/deptcd" , deptcd);
  1068. model.setValue(sSETLIST_HIDDEN + "/userid" , userid);
  1069. model.setValue(sSETLIST_HIDDEN + "/supitemindxseq" , itemindxseq);
  1070. fSaveComnSet("Y");
  1071. }
  1072. /**
  1073. * @desc : 폴더명 검색할 경우 검색한 위치로 focus를 이동한다.
  1074. * @
  1075. * @param :
  1076. * @return : void
  1077. * @authur :
  1078. * @---------------------------------------------------
  1079. */
  1080. function fSrchDiagIndxNM(){
  1081. //fSetTreeView();
  1082. var sFolderNM = model.getValue("/root/temp/cond/exmpclsnm");
  1083. if (sTREE_OBJ.selectedIndex+1 == sTREE_OBJ.length) {
  1084. sTREE_OBJ.selectedIndex = 0;
  1085. }
  1086. for(var i=sTREE_OBJ.selectedIndex+1; i<sTREE_OBJ.length;i++){
  1087. sTREE_OBJ.select(i);
  1088. if(sFolderNM == sTREE_OBJ.label){
  1089. break;
  1090. }
  1091. }
  1092. // fReqDetlSet();
  1093. }
  1094. /**
  1095. * @desc : TreeView 선택된 item의 background color를 clear함
  1096. * @
  1097. * @param :
  1098. * @return : void
  1099. * @authur :
  1100. * @---------------------------------------------------
  1101. */
  1102. function fClrTreeViweSelect(){
  1103. //fSetTreeView();
  1104. for(var i = 0; i < sTREE_OBJ.length; i++){
  1105. sTREE_OBJ.item(i).attribute("background-color") = "#ffffff";
  1106. sTREE_OBJ.item(i).attribute("text-decoration") = "";
  1107. }
  1108. }
  1109. /**
  1110. * @desc : 상용구 SET INFO SETTING
  1111. * @
  1112. * @param :
  1113. * @return :
  1114. * @---------------------------------------------------
  1115. */
  1116. function fSetDiagInfo(rowpos, status){
  1117. var depth = model.getValue(sTREE_PATH + "[" + rowpos + "]/depth");
  1118. var indxnm = model.getValue(sTREE_PATH + "[" + rowpos + "]/indxnm");
  1119. if(status == "u" && depth == 1 && (indxnm =="My폴더" || indxnm =="주호소" || indxnm =="Summary")){
  1120. //messageBox("선택한 폴더는 수정", "E001");
  1121. return -1;
  1122. }else if(status == "d" && depth == 1 && (indxnm =="My폴더" || indxnm =="주호소" || indxnm =="Summary")){
  1123. //messageBox("선택한 폴더는 삭제", "E001");
  1124. return -1;
  1125. }
  1126. var depth = model.getValue(sTREE_PATH + "[" + rowpos + "]/depth");
  1127. var path = model.getValue(sTREE_PATH + "[" + rowpos + "]/path");
  1128. var itemindxseq = model.getValue(sTREE_PATH + "[" + rowpos + "]/itemindxseq");
  1129. var supitemindxseq = model.getValue(sTREE_PATH + "[" + rowpos + "]/supitemindxseq");
  1130. var linkflag = model.getValue(sTREE_PATH + "[" + rowpos + "]/linkflag");
  1131. var indxnm = model.getValue(sTREE_PATH + "[" + rowpos + "]/indxnm");
  1132. var indxflag = "";
  1133. var clsflag = "";
  1134. if(indxnm =="My폴더"){
  1135. indxflag = "C";
  1136. clsflag = "G";
  1137. }else if(indxnm =="주호소"){
  1138. indxflag = "B";
  1139. clsflag = "B";
  1140. }else if(indxnm =="Summary"){
  1141. indxflag = "A";
  1142. clsflag = "A";
  1143. }
  1144. //alert("="+depth+"="+path+indxnm);
  1145. model.setValue(sSETLIST_HIDDEN + "/status" , status);
  1146. model.setValue(sSETLIST_HIDDEN + "/depth" , depth);
  1147. model.setValue(sSETLIST_HIDDEN + "/path" , path);
  1148. model.setValue(sSETLIST_HIDDEN + "/itemindxseq" , itemindxseq);
  1149. // supitemindxseq : 새로운 등록이면 상위정보, 수정이면 기존정보
  1150. if(status == "i"){
  1151. model.setValue(sSETLIST_HIDDEN + "/supitemindxseq", itemindxseq);
  1152. }else{
  1153. model.setValue(sSETLIST_HIDDEN + "/supitemindxseq", supitemindxseq);
  1154. }
  1155. //연결구분이 'Y' 인 경우 : 서식명칭에 값을 넣지 않는다.. (2007.06.12)
  1156. if (linkflag == 'N') {
  1157. model.setValue(sSETLIST_HIDDEN + "/indxnm" , indxnm);
  1158. } else {
  1159. model.setValue(sSETLIST_HIDDEN + "/indxnm" , "");
  1160. }
  1161. model.setValue(sSETLIST_HIDDEN + "/linkflag" , "N");
  1162. model.setValue(sSETLIST_HIDDEN + "/linkcd" , "");
  1163. // 상위 정보 (사용자, 과)
  1164. var userid = model.getValue(sSETLIST + "[" + rowpos + "]/userid");
  1165. var deptcd = model.getValue(sSETLIST + "[" + rowpos + "]/deptcd");
  1166. model.setValue(sSETLIST_HIDDEN + "/userid" , userid);
  1167. model.setValue(sSETLIST_HIDDEN + "/deptcd" , deptcd);
  1168. // 기본 정보
  1169. model.setValue(sSETLIST_HIDDEN + "/instcd" , getUserInfo("posinstcd"));
  1170. model.setValue(sSETLIST_HIDDEN + "/indxflag" , indxflag);
  1171. model.setValue(sSETLIST_HIDDEN + "/clsflag" , clsflag);
  1172. model.setValue(sSETLIST_HIDDEN + "/valiyn" , "Y");
  1173. model.setValue(sSETLIST_HIDDEN + "/sortno" , 1000);
  1174. model.setValue(sSETLIST_HIDDEN + "/slipno" , 0);
  1175. model.setValue(sSETLIST_HIDDEN + "/comnseq" , 0);
  1176. // 사용자 정보(관리자, 일반사용자)
  1177. // 구분 정보(개인,과,전체)
  1178. var admin = model.getValue("/root/send/cond/admin");
  1179. var setflag = model.getValue("/root/send/cond/setflag");
  1180. model.setValue(sSETLIST_HIDDEN + "/admin" , admin);
  1181. model.setValue(sSETLIST_HIDDEN + "/setflag" , setflag);
  1182. model.refresh();
  1183. }
  1184. /**
  1185. * @desc : 폴더명 검색할 경우 검색한 위치로 focus를 이동한다.
  1186. * @
  1187. * @param :
  1188. * @return : void
  1189. * @authur :
  1190. * @---------------------------------------------------
  1191. */
  1192. function fSrchFolder(flag){
  1193. if(flag =="C"){
  1194. var foldernm = model.getValue("/root/temp/cond/comnclsnm");
  1195. var seq = model.getValue("/root/main/indxlist_u/item[ indxnm ='" + foldernm + "']/seq");
  1196. model.setValue("/root/main/indxlist_comn/item",seq);
  1197. }
  1198. model.refresh();
  1199. fReqComnIndx(flag);
  1200. }
  1201. /**
  1202. * @desc : 상용구폴더명 검색
  1203. * @
  1204. * @param :
  1205. * @return : void
  1206. * @authur :
  1207. * @---------------------------------------------------
  1208. */
  1209. function fComnPopup(chosflag){
  1210. setParameter("reprnm",model.getValue("/root/temp/cond/comnnm"));
  1211. // 상용구관리에서 팝업 띄울때..
  1212. setParameter("mode","mgr");
  1213. if(chosflag == "C"){
  1214. modal("SPMRF03400", 1,10, 10, "SPMRF03400", "/root/temp/cond/comnnm", "/root/temp/cond/comnnm");
  1215. }else if(chosflag == "E"){
  1216. modal("SPMRF03500", 1,10, 10, "SPMRF03500", "/root/temp/cond/exmpnm", "/root/temp/cond/exmpnm");
  1217. }
  1218. var clsflag = getParameter("clsflag");
  1219. //alert(clsflag);
  1220. var seq = getParameter("seq");
  1221. //alert(seq);
  1222. if(clsflag =="F"){
  1223. if(seq !=""){
  1224. var srcformcd = seq.substr(0,10);
  1225. var itembasecd = seq.substr(11,17);
  1226. model.makeValue("/root/send/grddata/formcd",srcformcd);
  1227. model.makeValue("/root/send/grddata/itembasecd",itembasecd);
  1228. var com = model.getValue("/root/hidden/reqyn/com"); //조회 여부 입력
  1229. var prof = model.getValue("/root/hidden/reqyn/prof"); //조회 여부 입력
  1230. // 공통서식,제증명 둘다 조회 된 경우면 submit 안함
  1231. var bool = true;
  1232. if(com == "Y" && prof == "Y"){
  1233. bool = false;
  1234. }
  1235. var curRec = instance1.selectSingleNode("/root/main/indxlist_u/item[indxnm = '외래초진기록' ]");
  1236. var reqRec = instance1.selectSingleNode("/root/main/list/item[indxnm = '외래초진기록']");
  1237. var curProf = instance1.selectSingleNode("/root/main/indxlist_u/item[indxnm = '진단서' ]");
  1238. var reqProf = instance1.selectSingleNode("/root/main/list/item[indxnm = '진단서']");
  1239. if(bool){
  1240. submit("TRMRF02405");
  1241. }
  1242. // 공통서식,제증명 추가된경우 추가안됨
  1243. var comprof = model.getValue("/root/main/list/comprof/comprof");
  1244. if( comprof =="com" && curRec == null){
  1245. fAddDepthPopup();
  1246. }else if( comprof =="prof" && curProf == null){
  1247. fAddDepthPopup();
  1248. }
  1249. // 조회된 트리 펼치기
  1250. model.setValue("/root/main/indxlist_comn/item",seq);
  1251. model.refresh();
  1252. // 검색된 폴더명 으로 상용구 조회
  1253. fReqComnIndx("C");
  1254. }
  1255. }
  1256. }
  1257. /**
  1258. * @desc : 모든 상용구의 하위 depth 붙이기
  1259. * @
  1260. * @param :
  1261. * @return :
  1262. * @---------------------------------------------------
  1263. */
  1264. function fAddDepth2(){
  1265. var subNode = "";
  1266. var instance = document.models(0).instances(0);
  1267. var refNode;
  1268. var nextNode;
  1269. var nodelistTmp = instance.selectNodes(sSETLIST);
  1270. var nodelength = nodelistTmp.length;
  1271. var node = root.main.indxlist_u;
  1272. // My 폴더
  1273. for(var row=1; row<=getNodesetCnt(model, sTREE_PATH); row++){
  1274. if(model.getValue(sTREE_PATH+"["+row+"]/indxnm") == "My폴더"){
  1275. refNode = instance.selectSingleNode(sTREE_PATH+"[" + row + "]"); //조회내용의 상위 항목
  1276. model.setValue(sTREE_PATH+ "[" + row + "]/srchyn","Y");
  1277. break;
  1278. }
  1279. }
  1280. if(nodelength > 0){
  1281. for(var i = nodelength; i > 0; i--)
  1282. {
  1283. if(model.getValue(sSETLIST+"["+i+"]/clsflag") == "G"){
  1284. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  1285. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  1286. }
  1287. }
  1288. }
  1289. // 주호소
  1290. for(var row=1; row<=getNodesetCnt(model, sTREE_PATH); row++){
  1291. if(model.getValue(sTREE_PATH+"["+row+"]/indxnm") == "주호소"){
  1292. refNode = instance.selectSingleNode(sTREE_PATH+"[" + row + "]"); //조회내용의 상위 항목
  1293. model.setValue(sTREE_PATH+ "[" + row + "]/srchyn","Y");
  1294. break;
  1295. }
  1296. }
  1297. if(nodelength > 0){
  1298. for(var i = nodelength; i > 0; i--)
  1299. {
  1300. if(model.getValue(sSETLIST+"["+i+"]/clsflag") == "B"){
  1301. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  1302. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  1303. }
  1304. }
  1305. }
  1306. // Summary
  1307. for(var row=1; row<=getNodesetCnt(model, sTREE_PATH); row++){
  1308. if(model.getValue(sTREE_PATH+"["+row+"]/indxnm") == "Summary"){
  1309. refNode = instance.selectSingleNode(sTREE_PATH+"[" + row + "]"); //조회내용의 상위 항목
  1310. model.setValue(sTREE_PATH+ "[" + row + "]/srchyn","Y");
  1311. break;
  1312. }
  1313. }
  1314. if(nodelength > 0){
  1315. for(var i = nodelength; i > 0; i--)
  1316. {
  1317. if(model.getValue(sSETLIST+"["+i+"]/clsflag") == "A"){
  1318. subNode = instance.selectSingleNode(sSETLIST+"[" + i + "]");
  1319. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  1320. }
  1321. }
  1322. }
  1323. sTREE_OBJ.rebuild();
  1324. }
  1325. /**
  1326. * @desc : 하위 depth 붙이기
  1327. * @
  1328. * @param :
  1329. * @return :
  1330. * @---------------------------------------------------
  1331. */
  1332. function fAddDepthPopup(rows, flag ){
  1333. var subNode = "";
  1334. var instance = document.models(0).instances(0);
  1335. var refNode;
  1336. var nextNode;
  1337. var node = instance1.selectSingleNode("/root/main/indxlist_u");
  1338. if(flag){
  1339. model.removeNodeset(sTREE_PATH+"[indxnm != 'My폴더' and clsflag = 'G']");
  1340. }
  1341. var comprof = model.getValue("/root/main/list/comprof/comprof");
  1342. var indxnm;
  1343. if(comprof == "com"){
  1344. indxnm = "공통서식";
  1345. }else if( comprof == "prof"){
  1346. indxnm = "제증명";
  1347. }
  1348. refNode = instance1.selectSingleNode(sTREE_PATH+"[ indxnm = '"+indxnm+"']"); //조회내용의 상위 항목
  1349. if(refNode == null){
  1350. // alert("re");
  1351. return;
  1352. }
  1353. model.setValue(sTREE_PATH+"[ indxnm = '"+indxnm+"']/srchyn","Y");
  1354. var nodelistTmp = instance.selectNodes("/root/main/list/item");
  1355. var nodelength = nodelistTmp.length;
  1356. if(nodelength > 0)
  1357. {
  1358. var tval = "";
  1359. for(var i = nodelength; i > 0; i--)
  1360. {
  1361. tval = model.getValue("/root/main/list/item[" + i + "]/val");
  1362. subNode = instance.selectSingleNode("/root/main/list/item[" + i + "]");
  1363. node.insertAfter(subNode, refNode); //조회항목을 상위항목의 자식으로 삽입
  1364. }
  1365. sTREE_OBJ.rebuild();
  1366. }
  1367. model.setValue("/root/hidden/reqyn/"+comprof , "Y"); //조회 여부 입력
  1368. //alert(model.getValue("/root/hidden/reqyn/"+comprof));
  1369. }
  1370. /**
  1371. * @desc : 폴더 수정시
  1372. * @
  1373. * @param :
  1374. * @return :
  1375. * @---------------------------------------------------
  1376. */
  1377. function fChangedGridRow(){
  1378. var iRow = sTREE_OBJ.row;
  1379. var iStatus = sTREE_OBJ.rowStatus(iRow);
  1380. var indxnm = model.getValue(sTREE_PATH+"["+iRow+"]/indxnm");
  1381. var oldindxnm = model.getValue(sTREE_PATH+"["+iRow+"]/oldindxnm");
  1382. if(indxnm == ""){
  1383. model.setValue(sTREE_PATH+"["+iRow+"]/indxnm", oldindxnm);
  1384. indxnm = oldindxnm;
  1385. }
  1386. if(iStatus == 0){
  1387. if(indxnm != oldindxnm){
  1388. sTREE_OBJ.rowStatus(iRow) = 2;
  1389. }
  1390. }
  1391. }