123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/**********************************************************************************
- * 함수명 : xxf_showTF
- * 설명 : TF 화면 보이기 on/off
- * argument : flag (true/false)
- * return Type :
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_showTF(flag){
- if(flag == true){
- agv_objAppWorkPath.form.div_tf.visible = true;
- }else{
- agv_objAppWorkPath.form.div_tf.visible = false;
- }
- }
- /**********************************************************************************
- * 함수명 : xxf_openMenuItem
- * 설명 : ItemID 로 Modeless Dialog를 실행한다.
- * argument : sItemID (메뉴아이템ID)
- * return Type :
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_tfOpenMenuItem(sItemID){
- if(!gv_isTFActive) {
- agv_objAppWorkPath.form.fTFDeActiveAlert();
- return;
- }
-
- //agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("openMenuItem('"+sItemID+"')","JavaScript");
- xxf_tfCall("xxf_tfOpenMenuItem("+ xxf_tfString(sItemID) + ");");
- }
- /**********************************************************************************
- * 함수명 : xxf_tfModal
- * 설명 : 화면 id로 Modal Dialog를 실행한다.
- * argument : id ( 화면ID )
- * : monNo ( 모니터 번호)
- * : xPos ( X좌표 )
- * : yPos ( Y좌표 )
- * : wid ( Width )
- * : refDs ( 전달할 데이터셋 )
- * : resultref ( 전달값 저장되는 인스턴스경로 )
- * : resultid ( 전달값 저장되는 인스턴스명 )
- * : userProp ( 사용자 지정 속성)
- * : bPrevPos ( 이전좌표 사용여부)
- * : authCode ( 권한코드 )
- * : resizeType ( 창크기변환 타입)
- * - none (default)
- * - notaskbar
- * - free
- * return Type : String ( Dialog창에서 close()에 의해 Return된 값 )
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_tfModal(id, monNo, xPos, yPos, wid, refDs, resultref, resultid, userProp, prevPos, authCode, resizeType)
- {
- if(!gv_isTFActive) {
- agv_objAppWorkPath.form.fTFDeActiveAlert();
- return;
- }
-
- // trace("xxf_tfModal("+ xxf_tfString(id) + ","
- // + xxf_tfString(monNo) + ","
- // + xxf_tfString(xPos) + ","
- // + xxf_tfString(yPos) + ","
- // + xxf_tfString(wid) + ","
- // + xxf_tfString(xxf_getDatasetCSV(refDs)) + ","
- // + xxf_tfString(resultref) + ","
- // + xxf_tfString(resultid) + ","
- // + xxf_tfString(userProp) + ","
- // + xxf_tfString(prevPos) + ","
- // + xxf_tfString(authCode) + ","
- // + xxf_tfString(resizeType) + ")");
-
- xxf_tfCall("xxf_tfModal("+ xxf_tfString(id) + ","
- + xxf_tfString(monNo) + ","
- + xxf_tfString(xPos) + ","
- + xxf_tfString(yPos) + ","
- + xxf_tfString(wid) + ","
- + xxf_tfString(xxf_getDatasetCSV(refDs)) + ","
- + xxf_tfString(resultref) + ","
- + xxf_tfString(resultid) + ","
- + xxf_tfString(userProp) + ","
- + xxf_tfString(prevPos) + ","
- + xxf_tfString(authCode) + ","
- + xxf_tfString(resizeType) + ")");
-
- }
- /**********************************************************************************
- * 함수명 : xxf_tfOpen
- * 설명 : 화면 id로 Modal Dialog를 실행한다.
- * argument : id ( 화면ID )
- * : monNo ( 모니터 번호)
- * : xPos ( X좌표 )
- * : yPos ( Y좌표 )
- * : wid ( Width )
- * : refDs ( 전달할 데이터셋 )
- * : resultref ( 전달값 저장되는 인스턴스경로 )
- * : resultid ( 전달값 저장되는 인스턴스명 )
- * : userProp ( 사용자 지정 속성)
- * : bPrevPos ( 이전좌표 사용여부)
- * : authCode ( 권한코드 )
- * : resizeType ( 창크기변환 타입)
- * - none (default)
- * - notaskbar
- * - free
- * return Type : String ( Dialog창에서 close()에 의해 Return된 값 )
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_tfOpen(id, monNo, xPos, yPos, wid, refDs, resultref, resultid, userProp, prevPos, authCode, resizeType)
- {
- if(!gv_isTFActive) {
- agv_objAppWorkPath.form.fTFDeActiveAlert();
- return;
- }
- // trace("xxf_tfOpen("+ xxf_tfString(id) + ","
- // + xxf_tfString(monNo) + ","
- // + xxf_tfString(xPos) + ","
- // + xxf_tfString(yPos) + ","
- // + xxf_tfString(wid) + ","
- // + xxf_tfString(xxf_getDatasetCSV(refDs)) + ","
- // + xxf_tfString(resultref) + ","
- // + xxf_tfString(resultid) + ","
- // + xxf_tfString(userProp) + ","
- // + xxf_tfString(prevPos) + ","
- // + xxf_tfString(authCode) + ","
- // + xxf_tfString(resizeType) + ")");
-
- xxf_tfCall("xxf_tfOpen("+ xxf_tfString(id) + ","
- + xxf_tfString(monNo) + ","
- + xxf_tfString(xPos) + ","
- + xxf_tfString(yPos) + ","
- + xxf_tfString(wid) + ","
- + xxf_tfString(xxf_getDatasetCSV(refDs)) + ","
- + xxf_tfString(resultref) + ","
- + xxf_tfString(resultid) + ","
- + xxf_tfString(userProp) + ","
- + xxf_tfString(prevPos) + ","
- + xxf_tfString(authCode) + ","
- + xxf_tfString(resizeType) + ")");
-
- }
- /**********************************************************************************
- * 함수명 : xxf_tfString
- * 설명 : TF 전달용 스트링 변환
- * argument : String (변환전 스트링)
- * return Type : String (변환후 스트링)
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_tfString(str){
- if(str != null)
- return "'"+str+"'";
- return "null";
- }
- /**********************************************************************************
- * 함수명 : xxf_tfNotify
- * 설명 : TF로부터 데이터를 전달받아 처리한다.
- * argument :
- * return Type :
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_notify(obj:WebBrowser, e:WebUserNotifyEventInfo){
- var msg = e.userdata;
- //trace("xxf_notify : " + msg);
- var ar = msg.split("|");
- var msgtype = ar[0];
- var data = ar[1];
-
- if(msgtype == "1"){ // 상태메시지 변경
- agv_objAppBottomPath.form.stt_statusMsg.text = data;
- }else if(msgtype == "2"){ // 함수 호출
- //agv_objAppWorkPath.form.div_work.test();
- eval("agv_objAppWorkPath.form.div_work."+data);
-
- }else if(msgtype == "3"){ // TF 열린화면 추가(by 김지훈)
- var winList = msg.split(",");
- agv_objAppBottomPath.form.tfOpendWindows = winList;
- } else if(msgtype == "4") { // TF에서 XP 상단정보 셋팅
- appf_initPatientInfo(data);
-
- xxf_tfCallInternal("fPatientInfoLoadingToXP()", "xxf_callback");
- }
- }
- function xxf_tfCall(fnStr){
- if(!gv_isTFActive) return;
-
- xxf_tfCallInternal(fnStr,"xxf_callback");
- }
- function xxf_fCheckIEOldVer() {
- var ie_ver = 8;
- try {
- ie_ver = gv_IE_Ver;
- } catch(e) {
- }
-
- //sysf_trace("ie_ver : " + ie_ver);
-
- return (ie_ver < 9) ? true : false;
- }
- function xxf_tfCallInternal(fnStr, callbackFn){
- // trace("before tf call!");
- if(xxf_fCheckIEOldVer()) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfCall(\""+fnStr+"\",\""+callbackFn+"\");","Javascript");
- } else {
- try {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.xxf_tfCall(fnStr, callbackFn);
- } catch(e) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfCall(\""+fnStr+"\",\""+callbackFn+"\");","Javascript");
- }
- }
- // trace("after tf call!");
- }
- function xxf_tfCallback(){
- }
- function xxf_tfLogout(noLoginWindow){
- if(!gv_isTFActive) {
- agv_objAppWorkPath.form.div_tf.tfweb.url = gv_sURLprefix + "/webapps/com/xphismainweb/jsp/xplogin.jsp";
-
- if(noLoginWindow) {
- gv_isCanLogout = true;
- application.exit();
- }
- return;
- }
-
- if(noLoginWindow)
- agv_objAppWorkPath.form.div_tf.tfweb.onusernotify.addHandler(xxf_logout_complete);
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("btn_logout_fromXP").click();
- agv_objAppWorkPath.form.div_tf.tfweb.url = gv_sURLprefix + "/webapps/com/xphismainweb/jsp/xplogin.jsp";
- }
- function xxf_logout_complete(obj:WebBrowser, e) {
- gv_isCanLogout = true;
-
- application.exit();
- }
- /**********************************************************************************
- * 함수명 : xxf_setGlobalVariable
- * 설명 : TF에 글로벌변수를 저장한다.
- * argument :
- * return Type :
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_tfSetGlobalVariable(key, value, bizCode){
- if(!gv_isTFActive) return;
-
- // trace("xxf_tfSetGlobalVariable(" + xxf_tfString(key) + "," + xxf_tfString(value) +"," + xxf_tfString(bizCode)+");");
-
- //xxf_tfCall("xxf_tfSetGlobalVariable("+ xxf_tfString(key) + "," + xxf_tfString(value) + "," + xxf_tfString(bizCode)+");");
- try {
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncKey").value = key;
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncVal").value = value;
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncBiz").value = bizCode;
-
- if(xxf_fCheckIEOldVer()) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetGlobalVariable();","Javascript");
- } else {
- try {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.xxf_tfSetGlobalVariable();
- } catch(e) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetGlobalVariable();","Javascript");
- }
- }
- } catch (e) {
- }
- }
- /**********************************************************************************
- * 함수명 : xxf_setParameter
- * 설명 : TF에 파라미터를 저장한다.
- * argument : key (키)
- value (키에 해당하는 값)
- * return Type :
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_tfSetParameter(key, value){
- if(!gv_isTFActive) return;
-
- if(!utlf_isNull(value) && value != "[object Binary]")
- value = value.toString().replace(/"/g, "'");
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncKey").value = key;
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncVal").value = value;
-
- if(xxf_fCheckIEOldVer()) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetParameter();","Javascript");
- } else {
- try {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.xxf_tfSetParameter();
- } catch(e) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetParameter();","Javascript");
- }
- }
- }
- /**********************************************************************************
- * 함수명 : xxf_tfSetModelProperty
- * 설명 : TF에 model.property를 저장한다.
- * argument : key (키)
- value (키에 해당하는 값)
- * return Type :
- * 작성자 : 김상목
- **********************************************************************************/
- function xxf_tfSetModelProperty(key, value){
- if(!gv_isTFActive) return;
-
- if(!utlf_isNull(value) && value != "[object Binary]")
- value = value.toString().replace(/"/g, "'");
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncKey").value = key;
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncVal").value = value;
-
- if(xxf_fCheckIEOldVer()) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetModelProperty();","Javascript");
- } else {
- try {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.xxf_tfSetModelProperty();
- } catch(e) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetModelProperty();","Javascript");
- }
-
- }
- }
- /**********************************************************************************
- * 함수명 : xxf_tfSetModelAttribute
- * 설명 : TF에 model.setAttribute를 저장한다.
- * argument : key (키)
- value (키에 해당하는 값)
- * return Type :
- * 작성자 : 김상목
- **********************************************************************************/
- function xxf_tfSetModelAttribute(key, value){
- if(!gv_isTFActive) return;
-
- if(!utlf_isNull(value) && value != "[object Binary]")
- value = value.toString().replace(/"/g, "'");
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncKey").value = key;
- agv_objAppWorkPath.form.div_tf.tfweb.document.getElementById("callFuncVal").value = value;
-
- if(xxf_fCheckIEOldVer()) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetModelAttribute();","Javascript");
- } else {
- try {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.xxf_tfSetModelAttribute();
- } catch(e) {
- agv_objAppWorkPath.form.div_tf.tfweb.document.parentWindow.execScript("xxf_tfSetModelAttribute();","Javascript");
- }
- }
- }
- /**********************************************************************************
- * 함수명 : xxf_getDatasetCSV
- * 설명 : 주어진 데이타셋을 TF에서 사용할 CSV 스트링으로 변환한다.
- * argument : objDs ( 데이타셋 )
- * return Type : String
- * 작성자 : 손병은
- **********************************************************************************/
- function xxf_getDatasetCSV(objDs)
- {
- if(objDs == null) return null;
-
- var nRowCnt = objDs.getRowCount();
- var nColCnt = objDs.getColCount();
-
- if( nRowCnt == 0 )
- return;
- var sColSep = "▦";
- var sRowSep = "▩";
- var rCSV = "";
-
- for (var i=0; i<nColCnt - 1; i++) {
- rCSV += objDs.getColID(i) + sColSep;
- }
- rCSV += objDs.getColID(i) + sRowSep;
-
- for (var i=0; i<nRowCnt; i++) {
-
- for (var j=0; j<nColCnt - 1; j++) {
- var sColVal = utlf_transNullToEmpty(objDs.getColumn(i, j));
-
- rCSV += sColVal + sColSep;
-
- }
- var sColVal = utlf_transNullToEmpty(objDs.getColumn(i, j));
-
- rCSV += sColVal + sRowSep;
- }
-
- return rCSV;
- }
- function xxf_tfSetRef(oArg, refDs, resultRef, resultId){
- oArg.xx_refds = refDs;
- oArg.xx_resultref = resultRef;
- oArg.xx_resultid = resultId;
-
- return oArg;
- }]]></Script>
|