* °³¿ä
¿ÀÁî ¸®Æ÷Æ® Æз¯¹ÌÅÍ´Â ODI Æз¯¹ÌÅÍ¿Í Æû Æз¯¹ÌÅÍ µÎ°¡Áö°¡ ÀÖ½À´Ï´Ù. °¢ Æз¯¹ÌÅ͸¦ »ý¼ºÇÏ´Â ¹æ¹ý°ú HTML¿¡¼ ºä¾î·Î °ªÀ» ³Ñ±â´Â ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù.
* »ó¼¼ ¼³¸í
1. ODI Æз¯¹ÌÅÍ
1-1. Äõ¸® µðÀÚÀ̳ʿ¡¼ ODI Æз¯¹ÌÅÍ »ý¼ºÇϱâ
ODI Æз¯¹ÌÅÍ´Â OZ Query Designer¿¡¼ µ¥ÀÌÅͺ£À̽º ½ºÅä¾îÀÇ µ¥ÀÌÅͼ Á¶°ÇÀ» ³Ñ±â°Å³ª HTTPStore µî¿¡ URLÀ» ³Ñ±æ ¶§
Áï, ¿ÜºÎ¿¡¼ °ªÀ» ¹Þ¾Æ¼ ó¸®ÇÒ ¶§ ÇÊ¿äÇÕ´Ï´Ù.
¶ÇÇÑ ODI¸¦ ReportDesigner¿¡¼ importÇϸé ReportDesigner¿¡¼µµ ODI Æз¯¹ÌÅ͸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
ODI Æз¯¹ÌÅÍ´Â OZ Query Designer¿¡¼ ¾Æ·¡¿Í °°ÀÌ »ý¼ºÇÕ´Ï´Ù.
"¿ÀÁî µ¥ÀÌÅÍ Æ®¸®" - "»ç¿ëÀÚ ÁöÁ¤ Æз¯¹ÌÅÍ"¿¡¼ ¿À¸¥ÂÊ Æ˾÷ ¸Þ´º¿¡¼ "Æз¯¹ÌÅÍ ¼³Á¤"À» Ŭ¸¯ÇÕ´Ï´Ù.
"»ç¿ëÀÚ ÁöÁ¤ Æз¯¹ÌÅÍ"â¿¡ Æз¯¹ÌÅ͵éÀ» ÀÔ·ÂÇÕ´Ï´Ù.
°¢°¢ÀÇ Æз¯¹ÌÅ͵鿡 ´ëÇØ ±âº»°ªÀ» ¼Ó¼ºÃ¢¿¡ ÀÔ·ÂÇÕ´Ï´Ù.
ÀÌ °ªÀº µðÀÚÀνà Àû¿ëµË´Ï´Ù.
À¥¿¡¼ ½ÇÇàÇÒ ¶§´Â HTML¿¡¼ ³Ñ¾î¿Â °ªÀ¸·Î ¹Ý¿µµÇ³ª À¥¿¡¼ ½ÇÇà½Ã¿¡µµ Æз¯¹ÌÅÍ ¼³Á¤ÇÏ´Â ºÎºÐÀÌ ¾øÀ¸¸é ±âº»°ªÀ¸·Î ¼³Á¤µÇ¾î Áý´Ï´Ù.
Äõ¸®¹®¿¡¼ ÀÌ¿ëÇÒ ¶§´Â #OZParam.Æз¯¹ÌÅÍÀ̸§# Çü½ÄÀ¸·Î ÀÔ·ÂÇÕ´Ï´Ù.
¿¹) SELECT COL1, COL2 FROM TEST WHERE TARGET_YEAR = '#OZParam.Year#'
1-2. ¸®Æ÷Æ® µðÀÚÀ̳ʿ¡¼ ODI Æз¯¹ÌÅÍ »ç¿ëÇϱâ
OZ ReportDesigner¿¡¼ ODI Æз¯¹ÌÅ͸¦ ¶óº§¿¡ º¸¿©ÁÖ·Á¸é ¿ì¼± ODI¸¦ importÇÑ ÈÄ "µ¥ÀÌÅÍ Á¤º¸"âÀÇ "µ¥ÀÌÅÍ Æ®¸® > ODI¸í > OZParam" ¿¡ ÀÖ´Â Æз¯¹ÌÅ͸¦ ȸéÀ¸·Î µå·¡±×&µå·Ó ÇÏ¸é ¶óº§ÀÌ »ý¼ºµË´Ï´Ù.
½ºÅ©¸³Æ®·Î ODI Æз¯¹ÌÅÍ °ªÀ» ¶óº§¿¡ ¼³Á¤ÇÏ·Á¸é ¾Æ·¡¿Í °°ÀÌ ÇÕ´Ï´Ù.
- ¿ÀÁî ½ºÅ©¸³Æ® :
setattr("caption", (string)#ODIÀ̸§.OZParam.FromDate#); |
- ÀÚ¹Ù ½ºÅ©¸³Æ® :
This.SetText( This.GetDataSetValue("ODIÀ̸§.OZParam.FromDate") ); |
2. Æû Æз¯¹ÌÅÍ
Æû Æз¯¹ÌÅÍÀÇ ¿ëµµ´Â º¸°í¼ ÀÛ¼º½Ã ÇÊ¿äÇÑ Æз¯¹ÌÅ͸¦ ³Ñ±æ ¶§ »ç¿ëÇÕ´Ï´Ù. ODIÂÊ¿¡¼´Â ÀÌ Æз¯¹ÌÅ͸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
°¡·É À̹ÌÁö URLÀÌ HTTP URL·Î ¼³Á¤µÇ´Â °æ¿ì À̹ÌÁö URLÀÇ IPÁ¤º¸°¡ °¡º¯ÀûÀ̸é OZR º¸°í¼ ³»¿¡ FIXµÇÁö ¾Ê°Ô Çϱâ À§ÇØ HTML¿¡¼ Æз¯¹ÌÅÍ·Î ³Ñ±æ ¼ö ÀÖ½À´Ï´Ù.
Æû Æз¯¹ÌÅÍ´Â OZ Report Designer¿¡¼ ¾Æ·¡¿Í °°Àº ¹æ¹ýÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
"µ¥ÀÌÅÍ Æ®¸®"-"OZFormParam"¿¡¼ ¿À¸¥ÂÊ Æ˾÷ ¸Þ´º¿¡¼ "Æз¯¹ÌÅÍ Ãß°¡"¸¦ Ŭ¸¯ÇÕ´Ï´Ù.
"Çʵå À̸§"â¿¡ Æз¯¹ÌÅÍ ¸íÀ» ÀÔ·ÂÇÕ´Ï´Ù.
°¢°¢ÀÇ Æз¯¹ÌÅ͸¦ ¼±ÅÃÇÑ ÈÄ ¼Ó¼ºÃ¢¿¡¼ "ÇÊµå °ª"À» ¼³Á¤ÇÕ´Ï´Ù.
ÀÌ °ªÀº µðÀÚÀνà Àû¿ëµË´Ï´Ù.
À¥¿¡¼ ½ÇÇàÇÒ ¶§´Â HTML¿¡¼ ³Ñ¾î¿Â °ªÀ¸·Î ¹Ý¿µµÇ³ª À¥¿¡¼ ½ÇÇà½Ã¿¡µµ Æз¯¹ÌÅÍ ¼³Á¤ÇÏ´Â ºÎºÐÀÌ ¾øÀ¸¸é ±âº»°ªÀ¸·Î ¼³Á¤µÇ¾î Áý´Ï´Ù.
Æû Æз¯¹ÌÅ͸¦ ¶óº§¿¡ º¸¿©ÁÖ·Á¸é "µ¥ÀÌÅÍ Á¤º¸"âÀÇ "µ¥ÀÌÅÍ Æ®¸® > OZFormParam" ¿¡ ÀÖ´Â Æз¯¹ÌÅ͸¦ ȸéÀ¸·Î µå·¡±×&µå·Ó ÇÏ¸é ¶óº§ÀÌ »ý¼ºµË´Ï´Ù.
½ºÅ©¸³Æ®·Î Æû Æз¯¹ÌÅÍ °ªÀ» ¶óº§¿¡ ¼³Á¤ÇÏ·Á¸é ¾Æ·¡¿Í °°ÀÌ ÇÕ´Ï´Ù.
- ¿ÀÁî ½ºÅ©¸³Æ® :
setattr("caption", (string)#OZFormParam.username#); |
- ÀÚ¹Ù ½ºÅ©¸³Æ® :
This.SetText( This.GetDataSetValue("OZFormParam.username") ); |
3. HTML¿¡¼ Æз¯¹ÌÅÍ ³Ñ±â±â
À§¿¡¼ ¸¸µç Æз¯¹ÌÅÍ´Â À¥¿¡¼ ½ÇÇàÇÒ ¶§ ¾Æ·¡¿Í °°Àº ¹æ½ÄÀ¸·Î ³Ñ¾î°¡°Ô µË´Ï´Ù.
pcount¿¡ Æз¯¹ÌÅÍ °³¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. 10À̶ó¸é args1, args2, ... args10 ±îÁö ¼³Á¤ÇÕ´Ï´Ù.
args~ÀÇ °ª¿¡´Â Æз¯¹ÌÅÍÀ̸§=Æз¯¹ÌÅÍ°ª ÇüÅ·ΠÀÔ·ÂÇÕ´Ï´Ù.
Âü°í·Î, ODI Æз¯¹ÌÅÍÀÇ Å¸ÀÔÀÌ DATE ÀÎ °æ¿ì ³Ñ±â´Â °ªÀº yyyy-MM-dd ÇüÅ·Π³Ñ±é´Ï´Ù.
3-1. ActiveX ºä¾î È£Ãâ ¿¹
<OBJECT id = 'ozviewer' width='800' height='600' CLASSID='CLSID:0DEF32F8-170F-46f8-B1FF-4BF7443F5F25'>
<param name="connection.servlet" value="http://127.0.0.1/oz80/server"> <param name="connection.reportname" value="test1.ozr">
// Æû ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý <param name="connection.pcount" value="2"> <param name="connection.args1" value="username=È«±æµ¿"> <param name="connection.args2" value="imgurl=http://127.0.0.1/images/">
// Æû ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý (JSP) <param name="connection.pcount" value="2"> <param name="connection.args1" value="username=<%= request.getParameter("name") %>"> <param name="connection.args2" value="imgurl=<%= request.getParameter("imageurl") %>">
// ODI ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý <param name="odi.odinames" value="TestOdiA,TestOdiB"> <param name="odi.TestOdiA.pcount" value="2"> <param name="odi.TestOdiA.args1" value="fromdate=20071030"> <param name="odi.TestOdiA.args2" value="todate=20071201"> <param name="odi.TestOdiB.pcount" value="1"> <param name="odi.TestOdiB.args1" value="id=10001">
// ¸ÖƼº¸°í¼ Æû ÆĶó¹ÌÅÍ, ODI ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý
<param name="child1.connection.pcount" value="1"> <param name="child1.connection.args1" value="username=È«±æµ¿">
<param name="child1.odi.odinames" value="TestOdiC"> <param name="child1.odi.TestOdiC.pcount" value="1"> <param name="child1.odi.TestOdiC.args1" value="id=1000">
</OBJECT> |
3-2. HTML5 ºä¾î È£Ãâ ¿¹
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html style="height:100%"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge" charset="UTF-8" /> <script src="http://code.jquery.com/jquery-2.0.3.min.js"></script> <link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" type="text/css"/> <script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script> <link rel="stylesheet" href="/oz80/ozhviewer/ui.dynatree.css" type="text/css"/> <script type="text/javascript" src="/oz80/ozhviewer/jquery.dynatree.js" charset="utf-8"></script> <script type="text/javascript" src="/oz80/ozhviewer/OZJSViewer.js" charset="utf-8"></script> </head> <body style="width:98%;height:98%"> <div id="OZViewer" style="width:98%;height:98%"></div> <script type="text/javascript" > function SetOZParamters_OZViewer(){ var oz; oz = document.getElementById("OZViewer"); oz.sendToActionScript("connection.servlet","http://127.0.0.1/oz80/server"); // ¿ÀÁî¼¹ö URL oz.sendToActionScript("connection.reportname","test1.ozr"); // ¿ÀÁ°í¼(.ozr) °æ·Î oz.sendToActionScript("information.debug","true"); // ºä¾îÄÜ¼Ö (Ctrl+Z) Á¤º¸ º¸±â // Æû ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý oz.sendToActionScript("connection.pcount", "2"); // ÆûÆз¯¹ÌÅÍ °³¼ö oz.sendToActionScript("connection.args1", "username=È«±æµ¿"); // ù¹ø° ÆûÆз¯¹ÌÅÍ À̸§=°ª oz.sendToActionScript("connection.args2", "imgurl=http://127.0.0.1/images/"); // µÎ¹ø° ÆûÆз¯¹ÌÅÍ À̸§=°ª
// Æû ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý (JSP) oz.sendToActionScript("connection.pcount", "2"); oz.sendToActionScript("connection.args1", "username=<%= request.getParameter("name") %>"); oz.sendToActionScript("connection.args2", "imgurl=<%= request.getParameter("imageurl") %>");
// ODI ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý oz.sendToActionScript("odi.odinames", "TestOdiA,TestOdiB"); // odiÀ̸§. ¿©·¯°³ÀÎ °æ¿ì ÄÞ¸¶·Î ±¸ºÐ oz.sendToActionScript("odi.TestOdiA.pcount", "2"); // odi Æз¯¹ÌÅÍ °³¼ö oz.sendToActionScript("odi.TestOdiA.args1", "fromdate=20071030"); // ù¹ø° odiÆз¯¹ÌÅÍÀÇ À̸§=°ª oz.sendToActionScript("odi.TestOdiA.args2", "todate=20071201"); // µÎ¹ø° odiÆз¯¹ÌÅÍÀÇ À̸§=°ª oz.sendToActionScript("odi.TestOdiB.pcount", "1"); oz.sendToActionScript("odi.TestOdiB.args1", "id=10001");
// ¸ÖƼº¸°í¼ Æû ÆĶó¹ÌÅÍ, ODI ÆĶó¹ÌÅÍ ¼³Á¤ ¹æ¹ý oz.sendToActionScript("child1.connection.pcount", "1"); oz.sendToActionScript("child1.connection.args1", "username=È«±æµ¿");
oz.sendToActionScript("child1.odi.odinames", "TestOdiC"); oz.sendToActionScript("child1.odi.TestOdiC.pcount", "1"); oz.sendToActionScript("child1.odi.TestOdiC.args1", "id=1000");
return true; } start_ozjs("OZViewer","/oz80/ozhviewer/"); </script> </body> </html> |
ÆûÆз¯¹ÌÅÍ·Î json ¹®ÀÚ¿À» ³Ñ±â´Â ¿¹ :
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html style="height:100%"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <script src="http://code.jquery.com/jquery-2.0.3.min.js"></script> <link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" type="text/css"/> <script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script> <link rel="stylesheet" href="/oz80/ozhviewer/ui.dynatree.css" type="text/css"/> <script type="text/javascript" src="/oz80/ozhviewer/jquery.dynatree.js" charset="utf-8"></script> <script type="text/javascript" src="/oz80/ozhviewer/OZJSViewer.js" charset="utf-8"></script> </head> <body style="width:98%;height:98%"> <div id="OZViewer" style="width:98%;height:98%"></div> <script type="text/javascript">
var jsonObj = {"Category": [{"CategoryID": 1, "CategoryName": "À½·á"},{"CategoryID": 2, "CategoryName": "Á¶¹Ì·á"}] ,"Product": [{"ProductID": 75, "ProductName": "¾ËÆÄÀÎ ¸ÆÁÖ", "CategoryID": 1},{"ProductID": 39, "ProductName": "OK ¹Ù´Ò¶ó ¼ÎÀÌÅ©", "CategoryID": 1}] };
function SetOZParamters_OZViewer(){ var oz; oz = document.getElementById("OZViewer"); oz.sendToActionScript("connection.servlet","/oz80/server"); oz.sendToActionScript("connection.reportname","/category/test.ozr"); oz.sendToActionScript("connection.pcount", "1"); oz.sendToActionScript('connection.args1', 'jsondata=' + JSON.stringify(jsonObj) ); return true; } start_ozjs("OZViewer","/oz80/ozhviewer/");
</script> </body> </html> |
|