Focal Point
[SOLVED] Frame not loading in HTML layput painter.

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/898108922

September 04, 2009, 10:45 AM
dev532
[SOLVED] Frame not loading in HTML layput painter.
Hi,

I have a very simple html page, main.htm. I am using HTML layout painter. I have a frame that contains a menu.htm page. When I open main.htm, the frame at first appears to be loading the menu.htm correctly but when the main.htm page has fully loaded, i only see the alt tags of the images in the frame.Same code in plain html(without webfocus request tags) works fine. Not sure what I am doing wrong here.

here's the code

<!-- Generated by Report Layout Painter -->
<HTML>
<HEAD>
<BASE href=HTTP://localhost:8080>
<SCRIPT id=clientEventHandlersJS type=text/javascript>
function window_onload() {
UpdateData();
// TODO: Add your event handler code here
}
</SCRIPT>

<META content="MSHTML 6.00.2900.5848" name=GENERATOR>
<SCRIPT for=window eventname="onload">window.onload = function() { window_onload(); }</SCRIPT>
</HEAD>
<BODY style="OVERFLOW: auto">
<IFRAME id=iframe1 style="Z-INDEX: 3; LEFT: 20px; WIDTH: 900px; POSITION: absolute; TOP: 10px; HEIGHT: 110px" tabIndex=3 name=iframe1 frameBorder=no scrolling=no requests_list="3" autoExecute="True">
</IFRAME>
<xml id=ibi_requests>
<requests>
	
<request requestid="3" sourcetype="typeHtml" targettype="0" targetname="iframe1" ibif_ex="heading.htm" ibic_server="" ibiapp_app="SESSION baseapp">
</request>
</requests>
</xml>
</BODY>
</HTML>

This message has been edited. Last edited by: Kerry,


WF 7.1.1, WF Developer studio 7.1.1, Windows & Mainframe, HTML
September 04, 2009, 11:12 AM
GamP
What I'm missing here is the javascript modules that come with the html painter and that take care of populating the various controls (like ibigbls.js). Did you take them out by any chance?
Without these modules nothing will ever get populated or even executed.


GamP

- Using AS 8.2.01 on Windows 10 - IE11.
in Focus since 1988
September 04, 2009, 11:17 AM
dev532
Hi gamp,
No, I didn't take out any js modules. I just created a fresh htm file and i don't see anything new.Can you post a sample of what you are referring to?


WF 7.1.1, WF Developer studio 7.1.1, Windows & Mainframe, HTML
September 05, 2009, 05:43 AM
GamP
The following example is generated using WebFOCUS DevStudio 762 (don't have any older version any more), but would be similar to what should have been generated in 711. In your example I miss the stuff that belongs in the HEAD section.
<!-- Generated by Report Layout Painter -->
<HTML>
<HEAD>
<SCRIPT id=IBI_OptionsScript type=text/javascript>
var rltVersion = "76";
var cgipath = "cgipath";
var ibirls = "ibirls2";

var rltdyncalendar = "rltdyncalendar";
var olap="olap";
var olappanebase="olappanebase";
var olapdrill="olapdrill";

var ibixmltree="ibixmltree";

var ibiOptions = new Array(cgipath,ibirls);
</SCRIPT>

<SCRIPT id=IBI_nls type=text/javascript src="/ibi_html/javaassist/nls.js"></SCRIPT>

<SCRIPT id=IBI_ibigbl type=text/javascript src="/ibi_html/javaassist/ibi/html/js/ibigbl.js"></SCRIPT>

<SCRIPT id=IBI_ibigblloadCss type=text/javascript>
ibigblloadCss(null);</SCRIPT>

<SCRIPT id=IBI_RelCallBack type=text/javascript>function AdjustChildrenPosition(){
}
</SCRIPT>
<TITLE>HtmlPage</TITLE>
<SCRIPT id=clientEventHandlersJS type=text/javascript>
//Begin function window_onload
function window_onload() {
UpdateData();
// TODO: Add your event handler code here
}
//End function window_onload
</SCRIPT>

<SCRIPT for=window eventname="onload">window.onload = function() { window_onload(); }</SCRIPT>
</HEAD>
<BODY style="OVERFLOW: auto" edaconnectionrequired="true">
<IFRAME style="Z-INDEX: 1; POSITION: absolute; WIDTH: 670px; HEIGHT: 200px; TOP: 190px; LEFT: 60px"
id=iframe1 tabIndex=1 name=iframe1 requests_list="0" autoExecute="True"></IFRAME>
<INPUT style="POSITION: absolute; TOP: -100px; LEFT: -100px" id=layoutinfo type=hidden>
<INPUT style="POSITION: absolute; TOP: -100px; LEFT: -100px" id=ibiapp_app value="baseapp"
type=hidden name=ibiapp_app>
<xml id=ibi_requests>
<requests>
<request requestid="0" sourcetype="typeFex" targettype="0" targetname="iframe1" ibif_ex="something.fex"
ibic_server="" ibiapp_app="baseapp"></request></requests>
</xml></BODY></HTML>

Hope this helps ...


GamP

- Using AS 8.2.01 on Windows 10 - IE11.
in Focus since 1988
September 05, 2009, 08:54 AM
dev532
Hi,
Strange! None of the htm files I have created using the HTML layout painter has the stuff in the head section that you have provided. I wonder why is that? Would that be something to do with an incorrect installation of webfocus? I don't see any JavaScript modules at all!

For now, i'll try to manually code it and see what happens.

Thanks!



quote:
Originally posted by GamP:
The following example is generated using WebFOCUS DevStudio 762 (don't have any older version any more), but would be similar to what should have been generated in 711. In your example I miss the stuff that belongs in the HEAD section.
<!-- Generated by Report Layout Painter -->
<HTML>
<HEAD>
<SCRIPT id=IBI_OptionsScript type=text/javascript>
var rltVersion = "76";
var cgipath = "cgipath";
var ibirls = "ibirls2";

var rltdyncalendar = "rltdyncalendar";
var olap="olap";
var olappanebase="olappanebase";
var olapdrill="olapdrill";

var ibixmltree="ibixmltree";

var ibiOptions = new Array(cgipath,ibirls);
</SCRIPT>

<SCRIPT id=IBI_nls type=text/javascript src="/ibi_html/javaassist/nls.js"></SCRIPT>

<SCRIPT id=IBI_ibigbl type=text/javascript src="/ibi_html/javaassist/ibi/html/js/ibigbl.js"></SCRIPT>

<SCRIPT id=IBI_ibigblloadCss type=text/javascript>
ibigblloadCss(null);</SCRIPT>

<SCRIPT id=IBI_RelCallBack type=text/javascript>function AdjustChildrenPosition(){
}
</SCRIPT>
<TITLE>HtmlPage</TITLE>
<SCRIPT id=clientEventHandlersJS type=text/javascript>
//Begin function window_onload
function window_onload() {
UpdateData();
// TODO: Add your event handler code here
}
//End function window_onload
</SCRIPT>

<SCRIPT for=window eventname="onload">window.onload = function() { window_onload(); }</SCRIPT>
</HEAD>
<BODY style="OVERFLOW: auto" edaconnectionrequired="true">
<IFRAME style="Z-INDEX: 1; POSITION: absolute; WIDTH: 670px; HEIGHT: 200px; TOP: 190px; LEFT: 60px"
id=iframe1 tabIndex=1 name=iframe1 requests_list="0" autoExecute="True"></IFRAME>
<INPUT style="POSITION: absolute; TOP: -100px; LEFT: -100px" id=layoutinfo type=hidden>
<INPUT style="POSITION: absolute; TOP: -100px; LEFT: -100px" id=ibiapp_app value="baseapp"
type=hidden name=ibiapp_app>
<xml id=ibi_requests>
<requests>
<request requestid="0" sourcetype="typeFex" targettype="0" targetname="iframe1" ibif_ex="something.fex"
ibic_server="" ibiapp_app="baseapp"></request></requests>
</xml></BODY></HTML>

Hope this helps ...



WF 7.1.1, WF Developer studio 7.1.1, Windows & Mainframe, HTML
September 07, 2009, 02:08 AM
Tony A
The reason that you do not see the JavaScript code to which Gamp is refering is that you are viewing the HTML code via the RLP and not through the text editor (well that's the normal reason). Try closing the file and then using the editor to open view it and then see what code you have.

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
September 08, 2009, 03:09 PM
dev532
Tony, you are right. Those modules that gamp mentions are all there when i looked it up in text editor. Yet, my program doesn't work. I am unable to figure out why.

Here is a simple code. I have a 'test.htm' (also tried it with 'test.fex'using -HTMLFORM BEGIN) both of which simply say 'Hello' and nothing else. The Design view in HTML layout painter shows that the frame loads fine.I can see the contents in the frame but when i run the program it shows nothing.
Also, When i use the exact same code in notepad and try to view it on the browser, it works fine.
Appreciate your help!

<!-- Generated by Report Layout Painter -->
<HTML>
<HEAD>
<SCRIPT id=IBI_OptionsScript type=text/javascript>
var rltVersion = "714";
var cgipath = "cgipath";
var ibirls = "ibirls2";
var multidrill = "multidrill";
var mntFormValidate = "mntFormValidate";
var dyncalendar = "dyncalendar";
var olap="olap";
var olappanebase="olappanebase";
var ibixmltree="ibixmltree";
var ibilangtrans="ibilangtrans";
var olapdrill="olapdrill";
var ibiOptions = new Array(cgipath,ibirls,mntFormValidate,ibilangtrans,dyncalendar,olap,olappanebase,olapdrill,multidrill);
</SCRIPT>

<SCRIPT id=IBI_nls src="/ibi_html/javaassist/nls.js" type=text/javascript></SCRIPT>

<SCRIPT id=IBI_ibigbl src="/ibi_html/javaassist/ibi/html/js/ibigbl.js" type=text/javascript></SCRIPT>

<SCRIPT id=IBI_ibigblloadCss type=text/javascript>
ibigblloadCss(null);</SCRIPT>

<SCRIPT id=IBI_RelCallBack type=text/javascript>function AdjustChildrenPosition(){
}
</SCRIPT>

<SCRIPT id=clientEventHandlersJS type=text/javascript>
function window_onload() {
UpdateData();// TODO: Add your event handler code here
}
</SCRIPT>

<SCRIPT for=window eventname="onload">window.onload = function() { window_onload(); }</SCRIPT>
</HEAD>
<BODY style="OVERFLOW: auto">
<IFRAME id=iframe1 style="Z-INDEX: 3; LEFT: 20px; WIDTH: 900px; POSITION: absolute; TOP: 10px; HEIGHT: 130px" tabIndex=3 name=iframe1 src="test.fex" frameBorder=no scrolling=no autoExecute="True" requests_list="3">>
</IFRAME>
<INPUT id=ibiapp_app style="LEFT: -100px; POSITION: absolute; TOP: -100px" type=hidden value="SESSION baseapp" name=ibiapp_app>
</BODY>
</HTML>














WF 7.1.1, WF Developer studio 7.1.1, Windows & Mainframe, HTML
September 09, 2009, 10:40 AM
JudyM
The only way I could make this work is to do some really crazy trickery ... I set RIGHTGAP=0 and had to add two D_DUMMY fields to the HEADING.

The 2nd D_DUMMY is needed to color the portion to the left of Section 1. But I needed to add the first D_DUMMY or it assumed the entire HEADING was navy, and the colored portion extended too far to the right, ignoring the width. If you comment out the first D_DUMMY in the HEADING, you will see why I mean.

I wish we had better control over the HEADING. We need it to span multiple columns.

  
-* File compare-norgap.fex
DEFINE FILE GGSALES
   D_DUMMY/A1 = '';
END
TABLE FILE GGSALES
SUM COMPUTE FMT_UNITS/D12     = UNITS;        AS 'Units'
 COMPUTE DAY_AVG/D12       = UNITS / 7;       AS 'Day Avg'
 COMPUTE FMT_DOLLARS/D12:D = DOLLARS;         AS 'Sales'
 COMPUTE AVG_PRICE/D6.2:D  = DOLLARS / UNITS; AS 'Avg Price'
 D_DUMMY                                      AS ' '
BY D_DUMMY  NOPRINT
BY CATEGORY
BY PRODUCT
-* Subtotal
ON CATEGORY UNDER-LINE
ON CATEGORY RECAP
   ST_AVG_PRICE/D6.2:D = DOLLARS / UNITS;
ON CATEGORY SUBFOOT
"Subtotal:<D_DUMMY<ST.FMT_UNITS<ST.DAY_AVG<ST.FMT_DOLLARS<ST_AVG_PRICE"
-* Grand Total
ON D_DUMMY RECAP
   GT_AVG_PRICE/D6.2:D = DOLLARS / UNITS;
ON D_DUMMY SUBFOOT
"</1>Total:<D_DUMMY<ST.FMT_UNITS<ST.DAY_AVG<ST.FMT_DOLLARS<GT_AVG_PRICE"
-* Heading
HEADING
"<D_DUMMY<D_DUMMY<+0>Section 1<+0>Section 2<+0>Section 3"
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLE *
-* style sheet
UNITS=IN, PAGESIZE='Letter', SQUEEZE=ON, $
TYPE=REPORT, LEFTGAP=0.15, RIGHTGAP=0, FONT='ARIAL', SIZE=7, GRID=OFF, $
TYPE=UNDERLINE, COLOR='LIGHT GREY',$
TYPE=TITLE, COLOR='WHITE',BACKCOLOR=RGB(0 0 139), JUSTIFY=RIGHT, STYLE=-UNDERLINE+BOLD, $
TYPE=HEADING, STYLE=BOLD,$
TYPE=SUBFOOT, STYLE=BOLD,$
-* Three sections
TYPE=HEADING, LINE=1, ITEM=1, OBJECT=FIELD, POSITION=0, WIDTH=0.01,$
TYPE=HEADING, LINE=1, ITEM=2, OBJECT=FIELD, POSITION=0, COLOR='WHITE', BACKCOLOR=RGB(0 0 139), WIDTH=0.8,$
TYPE=HEADING, LINE=1, ITEM=1, OBJECT=TEXT, POSITION=0.4, COLOR='WHITE', BACKCOLOR=RGB(0 0 139), WIDTH=1.5,$
TYPE=HEADING, LINE=1, ITEM=2, OBJECT=TEXT, POSITION=1.8, COLOR='WHITE', BACKCOLOR=RGB(0 0 139), WIDTH=1.25,$
TYPE=HEADING, LINE=1, ITEM=3, OBJECT=TEXT, POSITION=3.0, COLOR='WHITE', BACKCOLOR=RGB(0 0 139), WIDTH=0.83,$
-* column titles
TYPE=TITLE, COLUMN=N2, JUSTIFY=LEFT, STYLE =-UNDERLINE,$
TYPE=TITLE, COLUMN=N3, JUSTIFY=LEFT, STYLE =-UNDERLINE,$
-* Shade Section 1 and Section 3 light blue
TYPE=DATA, COLUMN=CATEGORY,    BACKCOLOR=RGB(234 234 255),$
TYPE=DATA, COLUMN=PRODUCT,     BACKCOLOR=RGB(234 234 255),$
TYPE=DATA, COLUMN=FMT_DOLLARS, BACKCOLOR=RGB(234 234 255),$
TYPE=DATA, COLUMN=AVG_PRICE,   BACKCOLOR=RGB(234 234 255),$
-* Subtotal
TYPE=SUBFOOT, BY=CATEGORY, OBJECT=TEXT,  ITEM=1, BACKCOLOR=RGB(234 234 255), POSITION=N2,$
TYPE=SUBFOOT, BY=CATEGORY, OBJECT=FIELD, ITEM=1, BACKCOLOR=RGB(234 234 255), POSITION=N3,$
TYPE=SUBFOOT, BY=CATEGORY, OBJECT=FIELD, ITEM=2, POSITION=N4,$
TYPE=SUBFOOT, BY=CATEGORY, OBJECT=FIELD, ITEM=3, POSITION=N5,$
TYPE=SUBFOOT, BY=CATEGORY, OBJECT=FIELD, ITEM=4, BACKCOLOR=RGB(234 234 255), POSITION=N6,$
TYPE=SUBFOOT, BY=CATEGORY, OBJECT=FIELD, ITEM=5, BACKCOLOR=RGB(234 234 255), POSITION=N7,$
-* Grand Total
TYPE=SUBFOOT, BY=D_DUMMY, OBJECT=TEXT,  ITEM=1, BACKCOLOR=RGB(234 234 255), POSITION=N2,$
TYPE=SUBFOOT, BY=D_DUMMY, OBJECT=FIELD, ITEM=1, BACKCOLOR=RGB(234 234 255), POSITION=N3,$
TYPE=SUBFOOT, BY=D_DUMMY, OBJECT=FIELD, ITEM=2, POSITION=N4,$
TYPE=SUBFOOT, BY=D_DUMMY, OBJECT=FIELD, ITEM=3, POSITION=N5,$
TYPE=SUBFOOT, BY=D_DUMMY, OBJECT=FIELD, ITEM=4, BACKCOLOR=RGB(234 234 255), POSITION=N6,$
TYPE=SUBFOOT, BY=D_DUMMY, OBJECT=FIELD, ITEM=5, BACKCOLOR=RGB(234 234 255), POSITION=N7,$
ENDSTYLE
END



Judy Miller
Software Engr, Decision Support
Prism Group, Inc.
Email: judy@prism-grp.com

WebFOCUS 7.6.9
Windows XP
Output: PDF, Excel, COMT

September 09, 2009, 10:47 AM
dev532
Hi Judy,
I believe you posted your response in the wrong section.


WF 7.1.1, WF Developer studio 7.1.1, Windows & Mainframe, HTML
September 10, 2009, 04:57 AM
GamP
quote:
IFRAME id=iframe1 style="Z-INDEX: 3; LEFT: 20px; WIDTH: 900px; POSITION: absolute; TOP: 10px; HEIGHT: 130px" tabIndex=3 name=iframe1 src="test.fex" frameBorder=no scrolling=no autoExecute="True" requests_list="3"

First thing that strikes me as odd is that the src element has a value of test.fex and also that requests_list has a value. But, if I run this code as you provide it, I get the contents of my test.fex in the frame. This fex has to be in the same app directory as where the htm resides.
When I add a request to be executed in the frame, it adds a bit of xml code to the page that will take care of running the request and storing the output in the frame. That also works fine for me. If I have both I see the source of my fex for as long as it takes the fex to produce results.
What are you using to run the fex, WFServlet or ibiweb.exe?
There may be difference - my cgi results in an invalid session cookie, while my servlet runs fine with this code.


GamP

- Using AS 8.2.01 on Windows 10 - IE11.
in Focus since 1988