Combo value
I am performing validation on the A/R invoice.I have considered transaction category
and form no from the tab tax.If the value in the form no. is FORM 'C' or FORM 'H' or FORM 'I'
or CONCESSIONAL FORM or DEXPORT then Sales should be transaction category.But I am
not able to access the value of combo.When I select any value and then execute my code
it gives error.The code is as,
Private Sub ValidateFormC()
Dim txtFormC, txtCategory As SAPbouiCOM.EditText
Dim ddlCategory As SAPbouiCOM.ComboBox
Dim strCategory As String
Try
objForm = SBO_Application.Forms.ActiveForm
If objForm.Visible = True Then
txtFormC = objForm.Items.Item("2067").Specific
If txtFormC.Value.Length > 0 Then
If txtFormC.Value <> "FORM 'C'" And txtFormC.Value <> "FORM 'H'" And txtFormC.Value <> "FORM 'I'" And txtFormC.Value <> "CONCESSIONAL FORM" And txtFormC.Value <> "DEXPORT" Then
SBO_Application.MessageBox("Form No. should be FORM 'C' or FORM 'H' or FORM 'I'or CONCESSIONAL FORM or DEXPORT")
Exit Sub
End If
ddlCategory = objForm.Items.Item("2068").Specific
strCategory = ddlCategory.Selected.Description 'Error fires here.
If IsNothing(ddlCategory.Selected) = False Then
If ddlCategory.Selected.Value = "" Then
SBO_Application.MessageBox("Please select Transaction Category")
ElseIf ddlCategory.Selected.Value <> "Sales" Then
SBO_Application.MessageBox("Please select Sales as Transaction Category")
End If
'Else
' txtCategory = objForm.Items.Item("2068").Specific
End If
End If
End If
Catch ex As Exception
SBO_Application.MessageBox("ValidateFormC()=" & ex.Message)
Finally
txtFormC = Nothing
End Try
End Sub
strCategory = ddlCategory.Selected.Description
The above code gives error as,
Object reference not set to an instance of an object.
Hi Dilip,
try to execute the below code in the Item Event Sub routine
Private oCombo1 As SAPbouiCOM.ComboBox
If pVal.BeforeAction=false Then
Select pVal.EventType
Case SAPbouiCOM.BoEventTypes.et_COMBO_SELECT
oCombo1 = Me.oForm.Items.Item("5").Specific ' Replace Form Object with your Object and Item Unique ID too.
msgbox(oCombo1.Selected.Description)
End Select
if the value is not displaying then their is problem with the Item UID or the Form object.
Please let me know, the result
Regards
shiva
Similar Messages
-
Highlighting based on combo value
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="silver">
<mx:VBox x="5" y="5" verticalGap="0" id="vb">
<mx:HBox horizontalGap="0">
<mx:Canvas id="a" borderStyle="solid" width="300" height="300" borderThickness="2" borderColor="black"/>
<mx:VBox width="15" backgroundColor="yellow" height="300"/>
<mx:Canvas id="b" borderStyle="solid" borderThickness="2" width="600" height="300" borderColor="black"/>
<mx:VBox width="15" backgroundColor="yellow" height="300"/>
<mx:Canvas id="c" borderStyle="solid" borderThickness="2" width="300" height="300" borderColor="black"/>
</mx:HBox>
<mx:HBox height="15" width="{vb.width}" backgroundColor="yellow"/>
<mx:HBox horizontalGap="0">
<mx:Canvas id="d" borderStyle="solid" width="300" height="300" borderThickness="2" borderColor="black"/>
<mx:VBox width="15" backgroundColor="yellow" height="300"/>
<mx:Canvas id="e" borderStyle="solid" borderThickness="2" width="600" height="300" borderColor="black"/>
<mx:VBox width="15" backgroundColor="yellow" height="300"/>
<mx:Canvas id="f" borderStyle="solid" borderThickness="2" width="300" height="300" borderColor="black"/>
</mx:HBox>
</mx:VBox>
<mx:ComboBox id="combo" dataProvider="{['A','B','C','D','E','F']}" x="300" y="{Application.application.height-50}"/>
<mx:TextInput id="ti" width="60" x="360" y="{Application.application.height-50}"/>
<mx:Button id="btn" x="440" y="{Application.application.height-50}" label="Click"/>
<mx:WipeDown id="wipeDown" duration="3000"/>
<mx:TitleWindow x="{Application.application.width-330}" title="Yard Details" y="390" width="300" borderColor="red" borderThickness="3"
creationCompleteEffect="{wipeDown}">
<mx:HBox horizontalAlign="center" width="100%">
<mx:VBox horizontalAlign="center">
<mx:Label text="Name" fontSize="12" fontWeight="bold"/>
<mx:Label text="A" fontSize="12"/>
<mx:Label text="B" fontSize="12"/>
<mx:Label text="C" fontSize="12"/>
<mx:Label text="D" fontSize="12"/>
<mx:Label text="E" fontSize="12"/>
<mx:Label text="F" fontSize="12"/>
</mx:VBox>
<mx:VBox horizontalAlign="center">
<mx:Label text="Occupied (%)" fontSize="12" fontWeight="bold"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
</mx:VBox>
<mx:VBox horizontalAlign="center">
<mx:Label text="Empty (%)" fontSize="12" fontWeight="bold"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
<mx:Label text="{}" fontSize="12"/>
</mx:VBox>
</mx:HBox>
</mx:TitleWindow>
</mx:Application>
I am considering that one canvas is of 100 units for its width total and another is of 200 units etc
A,B,C,D,E,F of combo values represents different canvas
and I can fix something as a unit value eg: for A it is of 10
if i select A and I enter 1 in ti and click on button then I want to fill the 10% area of the total area of 'A' canvas with some color
In this way I want to develop for all canvases dynamically based on the unit value
Please help............ meHello,
Just to make my requirement more clear
I have a requirement like this.
I have a dashboard prompt which takes 7 values.
4 values should come from a column of a table and 3 since that column don't have need to be hardcoded.
Now once i click enter it should show values from 3 diff tables(from each table 2 columns).
i.e. should show only 2 columns at a time depending upon the values selected in the prompt.
Like
If i select value1 from prompt, then should show col1 and col2 from tableA
If i select values2 from prompt,then should show col1 and col2 from tableB.
like so
Thanks -
Combo value pack (364) does not look as described
I bought a Combo Value Pack of inks E%Y84AE which should contain 3x 364 cartrdges (cyan, magenta and yellow) and 1x 364XL cartridge (black).
The black cartridge is marked "364" NOT "364XL" like my other XL cartridges. I think I have not got what is advertised. Here's a photo of the sealed bundle of cartidges and my old 364XL.
I want to be sure I get what I paid for.
Can anyone help?
Thanks,
Pete / DizzleyboyReturn it from where your purchased it at and get the correct ones.
Say thanks by clicking the Kudos Thumbs Up to the right in the post.
If my post resolved your problem, please mark it as an Accepted Solution ...
I worked for HP but now I'm retired! -
Change Payment terms combo value when change Total Document
Hi:
I need to change the selected value of payment terms combo (Item 47) of the form(133). This combo is placed in the third pannel of a form. Always appear the message Valid Value Value do not exist
The code is :
Dim cItem As SAPbouiCOM.ComboBox
If pVal.FormType = "65300" Or pVal.FormType = "133" Then
'facturas deudores y facturas de anticipo de deudores
'cambiamos la forma de pago si llega a cierta cantidad
If pVal.ItemUID = "38" And (pVal.ColUID = "11" Or pVal.ColUID = "17") And pVal.EventType = BoEventTypes.et_VALIDATE And pVal.ItemChanged = True Then
' el evento es que cambie el total
oForm = SBOApp.Forms.Item(FormUID)
oItem = oForm.Items.Item("4").Specific
StrCliente = oItem.Value
oItem = oForm.Items.Item("29").Specific
dblImporteTotal = CMonedaToNumber(oItem.Value)
BuscarFormaPago(StrCliente, dblImporteTotal, StrFormaPago)
cItem = oForm.Items.Item("47").Specific
If cItem.Selected.Value <> StrFormaPago And StrFormaPago <> "" Then
cItem.Select(StrFormaPago, SAPbouiCOM.BoSearchKey.psk_ByValue)
End If
End If
End If
Protected Sub BuscarFormaPago(ByVal StrCliente As String, ByVal DblImporte As Double, ByRef StrFormaPago As String)
Dim StrDato As String
StrDato = CStr(FNDameValor("[@" & StrPrefijo & "_FPAGO]", "U_" & StrPrefijo & "_OCTG", "U_" & StrPrefijo & "_OCRD='" & StrCliente & "' and U_" & StrPrefijo & "_IMP<=" & FNComPunN(DblImporte) & " ORDER By U_" & StrPrefijo & "_IMP DESC", pCmp))
StrFormaPago = StrDato
End Sub
I´ve used BoSearchKey.psk_ByValue,but with psk_Index or psk_ByDescription .I have the same problem.
Thanks for all
Joaquin GomezHi Joaquin,
Why don´t you use a formatted search instead of coding?
The formatted search should be executed when the total is changed. And the value should be what BuscarFormaPago returns.
Regards,
Ibai Peñ -
An "auto completion" Java Bean - combo - values from table
I have downloaded this pjc from
http://forms.pjc.bean.over-blog.com/article-16369664-6.html#comment86751476
if anybody can guide me that how can i use this combo with some query, I mean if I want to fetch values from some table how will i be able to do this.
i can access static values in procedure like
Set_Custom_Property('BL.BEAN',1,'INIT','Ester,Jordi,Jordina,Jorge,Sergi,maz,Fakharudin');
but instead how can i use values from database
Thanks in advance and Kind Regards.
Maz
Edited by: 853604 on Aug 24, 2011 12:00 PMSet_Custom_Property('BL.BEAN',1,'INIT','Ester,Jordi,Jordina,Jorge,Sergi,maz,Fakharudin');Output the result of your query to a comma delimited string and pass the string the the Set_Custom_Property() built-in. For example:
/* Sample code uses the new HR Demo schema */
DECLARE
v_string VARCHAR2(2000);
BEGIN
SELECT MAX(SUBSTR(SYS_CONNECT_BY_PATH(last_name,','),2)) emp_list
INTO v_string
FROM (SELECT department_id, last_name, row_number() OVER (PARTITION BY department_id ORDER BY last_name) rn
FROM hr.employees)
WHERE department_id = 80
connect BY PRIOR (department_id||RN)=(department_id||RN-1)
start WITH rn=1
GROUP BY department_id;
Set_Custom_Property('BL.BEAN',1,'INIT',v_string);
END;Hope this helps,
Craig B-)
If someone's response is helpful or correct, please mark it accordingly. -
Dynamically display combo values
What I am looking for is a way to automatically propagate a change from one drop down list to another without having to submit the form.
can any body suggest the solution to mehi
You can u Ajax to do that as JSP it self can't do that ...
see this
http://www.velocityreviews.com/forums/t111770-dynamic-checkbox-checkedchanged-event-not-firing.html
alos u can use Sun Java studio Creator IDE ,,, it has many programing cababilites that enables u to do such things.
here the creator web site
http://developers.sun.com/jscreator/
hope this will help
good luck
Mohammed -
How to get value of html combo box (i.e select) in jsp?
Hello,
I was just wondering how to get value of html combo box in jsp page. My code for combo box is:
<select name="combo" size="1">
<%
List<Project> projects = mgr.getProjects();
for(Project project : projects){
%>
<option value="<%= project.getId()%>"><%= project.getName()%></option>
<%
%>
</select>
I thought combo.value might give me the value, but it throws exception.
Any help is appreciated.
Thanks.The combo does not exists in Java, but only in HTML. You have to submit the form containing the combo and then use request.getParameter("combo") to get it's value ;-)
-
Passing values from one frame to another in a PSP
i have problem of passing combo values from an HTML frame to another HTML frame.
These combo values are selected via a sql query. Now when a onClick function tries to pass these selected values to a Java Script function it says invalid object for the java script objects.
<form name>.<combo box name>.options when called gives invalid object as JS error in the browser.
plz can, some one suggest me how to recognize these selected values.
Thanx,
JayI dont see a 'REFRESH' option in the context menu (when I right click on the query). Also, the REFRESH option available in the MENU options (ie PAUSE AUTOMATIC REFRESH) also does not work.
The way I built my workbook was, I built the 1st query in Analyzer and then I started inserting 'ANALYSIS GRIDS' in the remaining worksheets. To these GRIDS - I linked a data provider and linked a query or query view to that data provider.
Any more suggestions??
Regards. -
Hi,
In my form i have a combo. My requirement is, for example i load 5 data A,B,C,D,E in combo. First i select the 'A' and load the corresponding elements in the matrix, next i select 'B' and the corresponding elements of 'B' was loaded in matrix now again i select 'A ' it should check 'A' is already selected and the corresponding elements are already displayed in matrix again the elements of 'A' should not be loaded in matrix. Plz tell how to check this.
Thanks in Advance.
Regards,
MadhaviHi Madhavi,
here are the main parts of my little example.
Some hints:
The form is managed in a shared class (only one form at a time)
The Matrix is loaded via a DataTable
The Matrix is ReLoaded on every time the "ABCDE-Combo" is selected (except the value is already selected)
In the example I load Businesspartners into matrix where their CardName starts with A or B or....or E (you must adapt it for your needs)
SboCon.SboDI is the SAPbobsCOM.Company
SboCon.SboUI is the SAPbouiCOM.Application
Some global vars (initialize them somewhere when the form is opened!):
Private Shared oForm As SAPbouiCOM.Form
Private Shared oUds As SAPbouiCOM.UserDataSources
Private Shared oDts As SAPbouiCOM.DataTables
Private Shared oDtBp As SAPbouiCOM.DataTable
Private Shared oMtxBp As SAPbouiCOM.Matrix
Private Shared SelVals As System.Collections.ArrayList ' The values of the combo which already selected by the user
Init the vars somewhere (where you normally do this) on form load:
oForm = '...set it in your way
oDts = oForm.DataSources.DataTables
oUds = oForm.DataSources.UserDataSources
oMtxBp = oForm.Items.Item("MTX_BP").Specific
' DataBinding and related:
'### Data Tables
oDts.Add("DT_BP")
'### UserDataSources
'# ABCDE Combo:
oUds.Add("UDS_SELBP", SAPbouiCOM.BoDataType.dt_SHORT_TEXT, 100)
oForm.Items.Item("CBX_SELBP").Specific.databind.setbound(True, "", "UDS_SELBP")
'### Fill ABCDE Combo
oForm.Items.Item("CBX_SELBP").DisplayDesc = True
oCbx = oForm.Items.Item("CBX_SELBP").Specific
oCbx.ValidValues.Add("0", "Please select...")
For val As Integer = Asc("A") To Asc("E")
oCbx.ValidValues.Add(Chr(val), "Load " & Chr(val) & " BP")
Next
oUds.Item("UDS_SELBP").ValueEx = "0"
The Combo Select Event:
If pVal.ItemUID = "CBX_SELBP" And pVal.EventType = SAPbouiCOM.BoEventTypes.et_COMBO_SELECT Then
If Not pVal.BeforeAction Then
If oUds.Item("UDS_SELBP").ValueEx != "0" Then
Dim oCbx As SAPbouiCOM.ComboBox = oForm.Items.Item("CBX_SELBP").Specific
If SelVals.Contains(oUds.Item("UDS_SELBP").ValueEx) Then
' BP already selected - do nothing
SboCon.SboUI.StatusBar.SetText("Already selected!")
Else
If Not SelVals.Contains(oUds.Item("UDS_SELBP").ValueEx) Then
SelVals.Add(oUds.Item("UDS_SELBP").ValueEx)
End If
Dim query As String
oDtBp.Clear()
oMtxBp.Clear()
' Build query for BPs where their names starts with the Combo-Value
query = "SELECT CardCode, CardName FROM OCRD WHERE "
For i As Int16 = 0 To SelVals.Count - 1
If i > 0 Then query &= " OR "
query &= "CardName LIKE '" & SelVals(i) & "%' "
Next
query &= " ORDER BY CardName"
' load the MTX via DataTable (reloaded every time based on collected combo-values)
oDtBp.ExecuteQuery(query)
With oMtxBp.Columns
' Zeilen-Nr.
.Item("0").DataBind.Bind("DT_BP", "CardCode")
.Item("1").DataBind.Bind("DT_BP", "CardName")
End With
oMtxBp.LoadFromDataSource()
oMtxBp.AutoResizeColumns()
SboCon.SboUI.StatusBar.SetText(oUds.Item("UDS_SELBP").ValueEx & " added!", SAPbouiCOM.BoMessageTime.bmt_Short, SAPbouiCOM.BoStatusBarMessageType.smt_Success)
End If
' reset Combo to "Please select..."
oUds.Item("UDS_SELBP").ValueEx = 0
End If
End If
End If
ATTENTION: REPLACE the "!=" with less (<)/greater(>) symbol, they're not shown in ths forum
I hope I didn't forget sth. - here it works..
Cheers,
Roland
Edited by: Roland Toschek on Sep 25, 2008 11:54 AM -
Combo with condition in matrix
Hi,
Let me understand how provide the combo listing with previous columns condition in matrix.
Assume, I have the matrix with 5 columns, I have filled the Ist column with combo(doquery option), second column just I am filling the description field of the 1 st column, In 3rd column, I need give combo list with control/validate the 1st column's value, ie. I need to pass as the parameter as condition of the 1st column's value to the 3rd columns combo listing.
Please let me know, how to do in SAP B1 and it would be awarded.
Thanks & Regards,
Venkatesan G.Hi,
Thank you.
You telling about after combo selection. But I need to pass the 1 st combo value to another field's combo as a condition, I am using the following code to fill the combo, here, I need to pass the value of 1 st combo thru' do query's where condition
RS.DoQuery("SELECT Code, U_rsondesc FROM [dbo].[@PRDRSON] where <here I need to pass the value of 1stcombo in matrix>")
Private Sub AddresonCombo(ByVal oColumn As SAPbouiCOM.Column)
Try
Dim RS As SAPbobsCOM.Recordset
'Dim Bob As SAPbobsCOM.SBObob
RS = Ocompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
RS.DoQuery("SELECT Code, U_rsondesc FROM [dbo].[@PRDRSON]")
RS.MoveFirst()
While RS.EoF = False
oColumn.ValidValues.Add(RS.Fields.Item("Code").Value, RS.Fields.Item("U_rsondesc").Value)
RS.MoveNext()
End While
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Thanks & Regards,
Venkatesan G. -
Drop Down value missing in MSA
Hi Experts,
I am not getting dropdown values(combo values)in fields for Transaction Type OPPORTUNITY in Mobile Sales Application Client. Does any know as what could be the problem as we we create and replicate opportunity from CRM enterprise.
Also while ceating Visit Planning in MSA we are not getting drop down values in field STATUS
Please help & Thanks in Advance
Regards,
Rahul
Message was edited by: Rahul Jagani
Message was edited by: Rahul JaganiHi Rahul,
You probably haven't downloaded all the customising to your mobile client. You need to assign the customising subscriptions to your site after you have done an initial load to the CDB.
Suggest following the best practice guides.
Cheers
Andrew -
Hi
I made a combo box button and CFL button next to it. when I select and item in the CFL, I want to add it to the combo valid values.
It happens indeed, but:
-running the program it occurs that when I select this added value nothing displays in the combo - but the form reloads as it should
-when in CFL event I try to display val2(itemname) in another filed, SAP crashes (not my program)
- when I want to load some fields from tables appropriate to freshly added into combo value pressing OK in Add Mode, the program(form) freezes and stops working
when I try the same actions with combo values not added by CFL, it works
any ideas?
MichałHi Michal Stangie,
when u take the cfl values more than the first time reload the combo values.remove the combo values and reload it again
see this sample code
If (objCombo.ValidValues.Count > 0) Then
'MsgBox(objCombo.Selected.Description)
For inti = 0 To objCombo.ValidValues.Count - 1
objCombo.ValidValues.Remove(0, SAPbouiCOM.BoSearchKey.psk_Index)
Next
End If
If (objCombo.ValidValues.Count <= 0) Then
objCombo.ValidValues.Add("-", "-")
For inti = 0 To objRecSet.RecordCount - 1
objCombo.ValidValues.Add(Convert.ToString(objRecSet.Fields.Item(0).Value),
Convert.ToString(objRecSet.Fields.Item(1).Value))
objRecSet.MoveNext()
Next
objCombo.Select(0, SAPbouiCOM.BoSearchKey.psk_Index)
Rgds
Micheal -
Hello everybody,
I hope that you can help me. I have a combobox. This object has ValidValues in this format (H1,text). In system matrix is visible only Description and Value column is invisible. How can i make it?
Thanks for your help.
Version: SAP BO 7.6 SDK 6.5 language C#.NETHello Vit
In a user matrix you can view only one from combo value or description, with the property Column.DisplayDesc.
DisplayDesc returns or sets a boolean value specifying whether or not to show the description of valid values of a ComboBox item.
True - displays the description of the valid value.
False - displays the value of the selected valid value.
Try to set this property on a system column.
Andrea Moschetto -
Unknown problem with JSP, JavaScript - Pls help
Hi Friends,
I am facing a strange problem. Explained it below. Kindly help me as it is really affecting my work. Thanks in advance.
I am working on building a web application using jsp, servlet, ejb. the IDE used is WSAD 5.1.2.
I have the below :
1 JSP - Input page - for user input entry
2. Java script1 - For all client side validations
Java script2 - For handling the data submission to servlet (as selected by user)
Javascript3 - Header & Menu Bar
3 Servlet - This actually retrieves the values from the hidden parameters, sets them in session and redirects the control back to the jsp.
Logic for one small iteration : Two drop downs are there. On selecting the first drop down the second drop down should be populated and the first drop down should display the user selected value.
1. When the user selects the first drop down onchange() event gets fired which calls a method in the javascript.
2. In the javascript I set the value of a hidden form field to the selected combo index and submit the form to the servlet
3. In the servlet, I retrieve the hidden request parameter (Index),
set the index in session. Do my business logic based on the value of the index. Set the collection (to be displayed) in second drop down in session.
4. Send the response back to the JSP.
5. In the JSP, we have a method which is called during the onload() event of the body
6. This method sets the user selected values in appropriate controls(by taking from session)
Problem faced: I have a javascript which creates the menu bar for my application and this i've included it in my jsp. I dont know whats wrong with this javascript, when it is commented out the page works perfectly fine. Both the user selected value and the collection are loaded exactly as expected. But when it is included the collection is loaded in the second drop down but the selected index of the first drop down is not set - the drop down gets reset to the default value.
Also on body load of my jsp, I call a javascript method which sets the current date in one text field of my form. Even this is not working fine when I include this javascript. I don't see any script error in this javascript in my browser though. Strange but guess something basic :(
I'm sure there is nothing to do with session. I've tried printing the entire flow. The Servlet sets the values correctly in session and they are also correctly available in the JSP page. The JSP also gets loaded with the user selected values but something happens on page load which clears the values to default.
Am also confused in what way javascript is related to this, coz when I remove it things are working fine.
Am really helpless here pls do the needful. any help is appreciated.
Header.js [which includes the menu bar code]
document.write("<!-- COMMON HEADER CODE -->")
document.write(" <table id='mplPageHeader' cellspacing='0' cellpadding='2' border='0'>")
document.write(" <tr> ")
document.write(" <td rowspan='2' bgcolor='#FFFFFF' width='1%'>")
document.write(" <a href='http://www.web.com' target='_top'>")
document.write(" <img src='./images/ford.gif' alt='BLogistics' border='0'>")
document.write(" </a> ")
document.write(" </td>")
document.write(" <td rowspan='2' class='appTitle' title='Mp' width='1%'>MP&L</td>")
document.write(" <td class='appTitle' title='M R'>M R</td>")
document.write(" <td class='pageIdentifier'>"+' '+"</td>");
document.write(" </tr>")
document.write(" <tr>")
document.write(" <td class='pageTitle' nowrap></td>");
document.write(" <td class='dateInfo' nowrap>Thu Jan 22 2004 12:24 PM</td>")
document.write(" </tr>")
document.write(" </table>")
document.write("<!-- Display Menu Items -->")
document.write("<div id='navigationMenu'>")
document.write(" <script type='text/javascript' src='./javascript/MRmenuItem.js'></script>")
document.write(" <script type='text/javascript' src='./javascript/menuScript.js'></script>")
document.write("</div>")-------------------------------------------------------
Menu Bar Code
var AgntUsr=navigator.userAgent.toLowerCase();
var AppVer=navigator.appVersion.toLowerCase();
var DomYes=document.getElementById?1:0,NavYes=AgntUsr.indexOf("mozilla")!=-1&&AgntUsr.indexOf("compatible")==-1?1:0,ExpYes=AgntUsr.indexOf("msie")!=-1?1:0,Opr=AgntUsr.indexOf("opera")!=-1?1:0;
var DomNav=DomYes&&NavYes?1:0,DomExp=DomYes&&ExpYes?1:0;
var Nav4=NavYes&&!DomYes&&document.layers?1:0,Exp4=ExpYes&&!DomYes&&document.all?1:0;
var MacCom=(AppVer.indexOf("mac")!= -1)?1:0,MacExp4=(MacCom&&AppVer.indexOf("msie 4")!= -1)?1:0,Mac4=(MacCom&&(Nav4||Exp4))?1:0;
var Exp5=AppVer.indexOf("msie 5")!= -1?1:0,Fltr=(AppVer.indexOf("msie 6")!= -1||AppVer.indexOf("msie 7")!= -1)?1:0,MacExp5=(MacCom&&Exp5)?1:0,PosStrt=(NavYes||ExpYes)&&!Opr?1:0;
var RmbrNow=null,FLoc,ScLoc,DcLoc,SWinW,SWinH,FWinW,FWinH,SLdAgnWin,FColW,SColW,DColW,RLvl=0,FrstCreat=1,Ldd=0,Crtd=0,IniFlg,AcrssFrms=1,FrstCntnr=null,CurOvr=null,CloseTmr=null,CntrTxt,TxtClose,ImgStr,ShwFlg=0,M_StrtTp=StartTop,M_StrtLft=StartLeft,StaticPos=0,LftXtra=DomNav?LeftPaddng:0,TpXtra=DomNav?TopPaddng:0,FStr="",M_Hide=Nav4?"hide":"hidden",M_Show=Nav4?"show":"visible",Par=MenuUsesFrames?parent:window,Doc=Par.document,Bod=Doc.body,Trigger=NavYes?Par:Bod;
var Ztop=100,InitLdd=0,P_X=DomYes?"px":"";
var OpnTmr=null;
if(PosStrt){if(MacExp4||MacExp5)LdTmr=setInterval("ChckInitLd()",100);
else{if(Trigger.onload)Dummy=Trigger.onload;
if(DomNav)Trigger.addEventListener("load",Go,false);
else Trigger.onload=Go}}
function ChckInitLd(){
InitLdd=(MenuUsesFrames)?(Par.document.readyState=="complete"&&Par.frames[FirstLineFrame].document.readyState=="complete"&&Par.frames[SecLineFrame].document.readyState=="complete")?1:0:(Par.document.readyState=="complete")?1:0;
if(InitLdd){clearInterval(LdTmr);Go()}}
function Dummy(){return}
function CnclSlct(){return false}
function RePos(){
FWinW=ExpYes?FLoc.document.body.clientWidth:FLoc.innerWidth;
FWinH=ExpYes?FLoc.document.body.clientHeight:FLoc.innerHeight;
SWinW=ExpYes?ScLoc.document.body.clientWidth:ScLoc.innerWidth;
SWinH=ExpYes?ScLoc.document.body.clientHeight:ScLoc.innerHeight;
if(MenuCentered.indexOf("justify")!=-1&&FirstLineHorizontal){
ClcJus();
var P=FrstCntnr.FrstMbr,W=Menu1[5],a=BorderBtwnMain?NoOffFirstLineMenus+1:2,i;
FrstCntnr.style.width=NoOffFirstLineMenus*W+a*BorderWidthMain+P_X;
for(i=0;i<NoOffFirstLineMenus;i++){
P.style.width=W-(P.value.indexOf("<")==-1?LftXtra:0)+P_X;
if(P.ai&&!RightToLeft)
P.ai.style.left=BottomUp?W-BorderColor-2+P_X:W-Arrws[4]-2+P_X;
P=P.PrvMbr
StaticPos=-1;
ClcRl();
if(TargetLoc)ClcTrgt();ClcLft();ClcTp();
PosMenu(FrstCntnr,StartTop,StartLeft);
if(RememberStatus)StMnu()}
function NavUnLdd(){Ldd=0;Crtd=0;SetMenu="0"}
function UnLdd(){
NavUnLdd();
if(ExpYes){var M=FrstCntnr?FrstCntnr.FrstMbr:null;
while(M!=null){if(M.CCn){MakeNull(M.CCn);M.CCn=null}
M=M.PrvMbr}}
if(!Nav4){LdTmr=setInterval("ChckLdd()",100)}}
function UnLddTotal(){MakeNull(FrstCntnr);FrstCntnr=RmbrNow=FLoc=ScLoc=DcLoc=SLdAgnWin=CurOvr=CloseTmr=Doc=Bod=Trigger=null}
function MakeNull(P){
var M=P.FrstMbr,Mi;
while(M!=null){Mi=M;
if(M.CCn){MakeNull(M.CCn);M.CCn=null}
M.Cntnr=null;M=M.PrvMbr;Mi.PrvMbr=null;Mi=null}
P.FrstMbr=null}
function ChckLdd(){
if(!ExpYes){if(ScLoc.document.body){clearInterval(LdTmr);Go()}}
else if(ScLoc.document.readyState=="complete"){if(LdTmr)clearInterval(LdTmr);Go()}}
function NavLdd(e){if(e.target!=self)routeEvent(e);if(e.target==ScLoc)Go()}
function ReDoWhole(){if(AppVer.indexOf("4.0")==-1)Doc.location.reload();else if(SWinW!=ScLoc.innerWidth||SWinH!=ScLoc.innerHeight||FWinW!=FLoc.innerWidth||FWinH!=FLoc.innerHeight)Doc.location.reload()}
function Go(){
if(!Ldd&&PosStrt){
BeforeStart();
Crtd=0;Ldd=1;
FLoc=MenuUsesFrames?parent.frames[FirstLineFrame]:window;
ScLoc=MenuUsesFrames?parent.frames[SecLineFrame]:window;
DcLoc=MenuUsesFrames?parent.frames[DocTargetFrame]:window;
if(MenuUsesFrames){
if(!FLoc){FLoc=ScLoc;if(!FLoc){FLoc=ScLoc=DcLoc;if(!FLoc)FLoc=ScLoc=DcLoc=window}}
if(!ScLoc){ScLoc=DcLoc;if(!ScLoc)ScLoc=DcLoc=FLoc}
if(!DcLoc)DcLoc=ScLoc}
if(FLoc==ScLoc)AcrssFrms=0;
if(AcrssFrms)FirstLineHorizontal=MenuFramesVertical?0:1;
FWinW=ExpYes?FLoc.document.body.clientWidth:FLoc.innerWidth;
FWinH=ExpYes?FLoc.document.body.clientHeight:FLoc.innerHeight;
SWinW=ExpYes?ScLoc.document.body.clientWidth:ScLoc.innerWidth;
SWinH=ExpYes?ScLoc.document.body.clientHeight:ScLoc.innerHeight;
FColW=Nav4?FLoc.document:FLoc.document.body;
SColW=Nav4?ScLoc.document:ScLoc.document.body;
DColW=Nav4?DcLoc.document:ScLoc.document.body;
if(TakeOverBgColor){
if(ExpYes&&MacCom)FColW.style.backgroundColor=AcrssFrms?SColW.bgColor:DColW.bgColor;
else FColW.bgColor=AcrssFrms?SColW.bgColor:DColW.bgColor}
if(MenuCentered.indexOf("justify")!=-1&&FirstLineHorizontal)ClcJus();
if(FrstCreat||FLoc==ScLoc)FrstCntnr=CreateMenuStructure("Menu",NoOffFirstLineMenus,null);
else CreateMenuStructureAgain("Menu",NoOffFirstLineMenus);
ClcRl();
if(TargetLoc)ClcTrgt();ClcLft();ClcTp();
PosMenu(FrstCntnr,StartTop,StartLeft);
IniFlg=1;Initiate();Crtd=1;
SLdAgnWin=ExpYes?ScLoc.document.body:ScLoc;SLdAgnWin.onunload=Nav4?NavUnLdd:UnLdd;
if(ExpYes)Trigger.onunload=UnLddTotal;
Trigger.onresize=Nav4?ReDoWhole:RePos;
AfterBuild();
if(RememberStatus)StMnu();
if(Nav4&&FrstCreat){Trigger.captureEvents(Event.LOAD);Trigger.onload=NavLdd}
if(FrstCreat)Dummy();FrstCreat=0;
if(MenuVerticalCentered=="static"&&!AcrssFrms)setInterval("KeepPos()",250) }}
function KeepPos(){
var TS=ExpYes?FLoc.document.body.scrollTop:FLoc.pageYOffset;
if(TS!=StaticPos){var FCSt=Nav4?FrstCntnr:FrstCntnr.style;
FrstCntnr.OrgTop=StartTop+TS;FCSt.top=FrstCntnr.OrgTop+P_X;StaticPos=TS}}
function ClcRl(){
StartTop=M_StrtTp<1&&M_StrtTp>0?M_StrtTp*FWinH:M_StrtTp;
StartLeft=M_StrtLft<1&&M_StrtLft>0?M_StrtLft*FWinW:M_StrtLft}
function ClcJus(){
var a=BorderBtwnMain?NoOffFirstLineMenus+1:2,Sz=Math.round((PartOfWindow*FWinW-a*BorderWidthMain)/NoOffFirstLineMenus),i,j;
for(i=1;i<NoOffFirstLineMenus+1;i++){j=eval("Menu"+i);j[5]=Sz}
StartLeft=0}
function ClcTrgt(){
var TLoc=Nav4?FLoc.document.layers[TargetLoc]:DomYes?FLoc.document.getElementById(TargetLoc):FLoc.document.all[TargetLoc];
if(DomYes){while(TLoc){StartTop+=TLoc.offsetTop;StartLeft+=TLoc.offsetLeft;TLoc=TLoc.offsetParent}}
else{StartTop+=Nav4?TLoc.pageY:TLoc.offsetTop;StartLeft+=Nav4?TLoc.pageX:TLoc.offsetLeft}}
function ClcLft(){
if(MenuCentered.indexOf("left")==-1){
var Sz=FWinW-(!Nav4?parseInt(FrstCntnr.style.width):FrstCntnr.clip.width);
StartLeft+=MenuCentered.indexOf("right")!=-1?Sz:Sz/2;
if(StartLeft<0)StartLeft=0}}
function ClcTp(){
if(MenuVerticalCentered!="top"&&MenuVerticalCentered!="static"){
var Sz=FWinH-(!Nav4?parseInt(FrstCntnr.style.height):FrstCntnr.clip.height);
StartTop+=MenuVerticalCentered=="bottom"?Sz:Sz/2;
if(StartTop<0)StartTop=0}}
function PosMenu(Ct,Tp,Lt){
RLvl++;
var Ti,Li,Hi,Mb=Ct.FrstMbr,CStl=!Nav4?Ct.style:Ct,MStl=!Nav4?Mb.style:Mb,PadL=Mb.value.indexOf("<")==-1?LftXtra:0,PadT=Mb.value.indexOf("<")==-1?TpXtra:0,MWt=!Nav4?parseInt(MStl.width)+PadL:MStl.clip.width,MHt=!Nav4?parseInt(MStl.height)+PadT:MStl.clip.height,CWt=!Nav4?parseInt(CStl.width):CStl.clip.width,CHt=!Nav4?parseInt(CStl.height):CStl.clip.height,CCw,CCh,STp,SLt;
var BRW=RLvl==1?BorderWidthMain:BorderWidthSub,BTWn=RLvl==1?BorderBtwnMain:BorderBtwnSub;
if(RLvl==1&&AcrssFrms)!MenuFramesVertical?Tp=BottomUp?0:FWinH-CHt+(Nav4?MacCom?-2:4:0):Lt=RightToLeft?0:FWinW-CWt+(Nav4?MacCom?-2:4:0);
if(RLvl==2&&AcrssFrms)!MenuFramesVertical?Tp=BottomUp?SWinH-CHt+(Nav4?MacCom?-2:4:0):0:Lt=RightToLeft?SWinW-CWt:0;
if(RLvl==2){Tp+=VerCorrect;Lt+=HorCorrect}
CStl.top=RLvl==1?Tp+P_X:0;Ct.OrgTop=Tp;
CStl.left=RLvl==1?Lt+P_X:0;Ct.OrgLeft=Lt;
if(RLvl==1&&FirstLineHorizontal){Hi=1;Li=CWt-MWt-2*BRW;Ti=0}
else{Hi=Li=0;Ti=CHt-MHt-2*BRW}
while(Mb!=null){
MStl.left=Li+BRW+P_X;
MStl.top=Ti+BRW+P_X;
if(Nav4)Mb.CLyr.moveTo(Li+BRW,Ti+BRW);
if(Mb.CCn){if(RightToLeft)CCw=Nav4?Mb.CCn.clip.width:parseInt(Mb.CCn.style.width);
if(BottomUp)CCh=Nav4?Mb.CCn.clip.height:parseInt(Mb.CCn.style.height);
if(Hi){STp=BottomUp?Ti-CCh:Ti+MHt+2*BRW;SLt=RightToLeft?Li+MWt-CCw:Li}
else{SLt=RightToLeft?Li-CCw+ChildOverlap*MWt+BRW:Li+(1-ChildOverlap)*MWt;
STp=RLvl==1&&AcrssFrms?BottomUp?Ti-CCh+MHt:Ti:BottomUp?Ti-CCh+(1-ChildVerticalOverlap)*MHt+2*BRW:Ti+ChildVerticalOverlap*MHt+BRW}
PosMenu(Mb.CCn,STp,SLt)}
Mb=Mb.PrvMbr;
if(Mb){ MStl=!Nav4?Mb.style:Mb;PadL=Mb.value.indexOf("<")==-1?LftXtra:0;
PadT=Mb.value.indexOf("<")==-1?TpXtra:0;
MWt=!Nav4?parseInt(MStl.width)+PadL:MStl.clip.width;
MHt=!Nav4?parseInt(MStl.height)+PadT:MStl.clip.height;
Hi?Li-=BTWn?(MWt+BRW):(MWt):Ti-=BTWn?(MHt+BRW):MHt}}
status="Ready";RLvl--}
function StMnu(){
if(!Crtd)return;
var i,Pntr=FrstCntnr,Str=ScLoc.SetMenu?ScLoc.SetMenu:"0";
while(Str.indexOf("_")!=-1&&RememberStatus==1){
i=Pntr.NrItms-parseInt(Str.substring(0,Str.indexOf("_")));
Str=Str.slice(Str.indexOf("_")+1);
Pntr=Pntr.FrstMbr;
for(i;i;i--)Pntr=Pntr.PrvMbr;
if(Nav4)Pntr.CLyr.OM();
else Pntr.OM();
Pntr=Pntr.CCn}
i=Pntr.NrItms-parseInt(Str);
Pntr=Pntr.FrstMbr;
for(i;i;i--)Pntr=Pntr.PrvMbr;
if(RmbrNow!=null){SetItem(RmbrNow,0);RmbrNow.Clckd=0}
if(Pntr!=null){SetItem(Pntr,1);Pntr.Clckd=1;
if(RememberStatus==1){if(Nav4)Pntr.CLyr.OM();else Pntr.OM()}}
RmbrNow=Pntr;
ClrAllChlds(FrstCntnr.FrstMbr);
Rmbr(FrstCntnr)}
function Initiate(){
if(IniFlg&&Ldd){Init(FrstCntnr);IniFlg=0;if(RememberStatus)Rmbr(FrstCntnr);if(ShwFlg)AfterCloseAll();ShwFlg=0}}
function Rmbr(CntPtr){
var Mbr=CntPtr.FrstMbr,St;
while(Mbr!=null){
if(Mbr.DoRmbr){
HiliteItem(Mbr);
if(Mbr.CCn&&RememberStatus==1){St=Nav4?Mbr.CCn:Mbr.CCn.style;St.visibility=M_Show;Rmbr(Mbr.CCn)}
break}
else Mbr=Mbr.PrvMbr}}
function Init(CPt){
var Mb=CPt.FrstMbr,MCSt=Nav4?CPt:CPt.style;
RLvl++;MCSt.visibility=RLvl==1?M_Show:M_Hide;CPt.Shw=RLvl==1?1:0;
while(Mb!=null){if(Mb.Hilite)LowItem(Mb);if(Mb.CCn)Init(Mb.CCn);Mb=Mb.PrvMbr}
RLvl--}
function ClrAllChlds(Pt){
var PSt,Pc;
while(Pt){if(Pt.Hilite){Pc=Nav4?Pt.CLyr:Pt;if(Pc!=CurOvr){LowItem(Pt)}
if(Pt.CCn){PSt=Nav4?Pt.CCn:Pt.CCn.style;if(Pc!=CurOvr){PSt.visibility=M_Hide;Pt.CCn.Shw=0}ClrAllChlds(Pt.CCn.FrstMbr)}
break}
Pt=Pt.PrvMbr}}
function SetItem(Pntr,x){while(Pntr!=null){Pntr.DoRmbr=x;Pntr=Nav4?Pntr.CLyr.Ctnr.Cllr:Pntr.Ctnr.Cllr}}
function GoTo(){
var HP=Nav4?this.LLyr:this;
if(HP.Arr[1]){status="";LowItem(HP);IniFlg=1;Initiate();
HP.Arr[1].indexOf("javascript:")!=-1?eval(HP.Arr[1]):DcLoc.location.href=BaseHref+HP.Arr[1]}}
function HiliteItem(P){
if(Nav4){ if(P.ro)P.document.images[P.rid].src=P.ri2;
else{
P.bgColor = HighBgColor;
if(P.value.indexOf("<img")==-1){P.document.write(P.Ovalue);P.document.close()}}}
else{
if(P.ro){var Lc=P.Lvl==1?FLoc:ScLoc;Lc.document.images[P.rid].src=P.ri2}
else{
P.style.backgroundColor=HighBgColor;
P.style.color=FontHighColor;
P.Hilite=1
function LowItem(P){
P.Hilite=0;
if(P.ro){if(Nav4)P.document.images[P.rid].src=P.ri1;
else{var Lc=P.Lvl==1?FLoc:ScLoc;Lc.document.images[P.rid].src=P.ri1}}
else{
if(Nav4){
P.bgColor=LowBgColor;
if(P.value.indexOf("<img")==-1){P.document.write(P.value);P.document.close()}}
else{
P.style.backgroundColor=LowBgColor;
P.style.color=FontLowColor;
function OpenMenu(){
if(!Ldd||!Crtd)return;
if(OpnTmr)clearTimeout(OpnTmr);
var P=Nav4?this.LLyr:this;
if(P.NofChlds&&!P.CCn){
RLvl=this.Lvl;
P.CCn=CreateMenuStructure(P.MN+"_",P.NofChlds,P);
var Ti,Li,Hi;
var MStl=!Nav4?P.style:P;
var PadL=P.value.indexOf("<")==-1?LftXtra:0;
var PadT=P.value.indexOf("<")==-1?TpXtra:0;
var MWt=!Nav4?parseInt(MStl.width)+PadL:MStl.clip.width;
var MHt=!Nav4?parseInt(MStl.height)+PadT:MStl.clip.height;
var CCw,CCh,STp,SLt;
var BRW=RLvl==1?BorderWidthMain:BorderWidthSub;
if(RightToLeft)CCw=Nav4?P.CCn.clip.width:parseInt(P.CCn.style.width);
if(BottomUp)CCh=Nav4?P.CCn.clip.height:parseInt(P.CCn.style.height);
if(RLvl==1&&FirstLineHorizontal){Hi=1;Li=(Nav4?P.left:parseInt(P.style.left))-BRW;Ti=0}
else{Hi=Li=0;Ti=(Nav4?P.top:parseInt(P.style.top))-BRW}
if(Hi){STp=BottomUp?Ti-CCh:Ti+MHt+2*BRW;SLt=RightToLeft?Li+MWt-CCw:Li}
else{SLt=RightToLeft?Li-CCw+ChildOverlap*MWt+BRW:Li+(1-ChildOverlap)*MWt;
STp=RLvl==1&&AcrssFrms?BottomUp?Ti-CCh+MHt:Ti:BottomUp?Ti-CCh+(1-ChildVerticalOverlap)*MHt+2*BRW:Ti+ChildVerticalOverlap*MHt+BRW}
PosMenu(P.CCn,STp,SLt);
RLvl=0}
var CCnt=Nav4?this.LLyr.CCn:this.CCn,HP=Nav4?this.LLyr:this;
CurOvr=this;IniFlg=0;ClrAllChlds(this.Ctnr.FrstMbr);
if(!HP.Hilite)HiliteItem(HP);
if(CCnt!=null&&!CCnt.Shw)RememberStatus?Unfld():OpnTmr=setTimeout("Unfld()",UnfoldDelay);
//alert(HP.value);
status=HP.value;
function Unfld(){
var P=CurOvr;
var TS=ExpYes?ScLoc.document.body.scrollTop:ScLoc.pageYOffset,LS=ExpYes?ScLoc.document.body.scrollLeft:ScLoc.pageXOffset,CCnt=Nav4?P.LLyr.CCn:P.CCn,THt=Nav4?P.clip.height:parseInt(P.style.height),TWt=Nav4?P.clip.width:parseInt(P.style.width),TLt=AcrssFrms&&P.Lvl==1&&!FirstLineHorizontal?0:Nav4?P.Ctnr.left:parseInt(P.Ctnr.style.left),TTp=AcrssFrms&&P.Lvl==1&&FirstLineHorizontal?0:Nav4?P.Ctnr.top:parseInt(P.Ctnr.style.top);
// TS != 0 is only needed if the menu DIVs are positioned relative to the body.
// We've made them positioned relative to div#navigationMenu which causes
// a problem if TS is based on how the body is scrolled. So set TS to zero.
// Note: the code below will adjust the final top offset based on the height of
// the menu bar so the dropdown appears below (and not on top of) the nav bar.
TS = 0;
var CCW=Nav4?P.LLyr.CCn.clip.width:parseInt(P.CCn.style.width),CCH=Nav4?P.LLyr.CCn.clip.height:parseInt(P.CCn.style.height),CCSt=Nav4?P.LLyr.CCn:P.CCn.style,SLt=AcrssFrms&&P.Lvl==1?CCnt.OrgLeft+TLt+LS:CCnt.OrgLeft+TLt,STp=AcrssFrms&&P.Lvl==1?CCnt.OrgTop+TTp+TS:CCnt.OrgTop+TTp;
if(!ShwFlg){ShwFlg=1;BeforeFirstOpen()}
if(MenuWrap){
if(RightToLeft){if(SLt<LS)SLt=P.Lvl==1?LS:SLt+(CCW+(1-2*ChildOverlap)*TWt);if(SLt+CCW>SWinW+LS)SLt=SWinW+LS-CCW}
else{if(SLt+CCW>SWinW+LS)SLt=P.Lvl==1?SWinW+LS-CCW:SLt-(CCW+(1-2*ChildOverlap)*TWt);if(SLt<LS)SLt=LS}
if(BottomUp){if(STp<TS)STp=P.Lvl==1?TS:STp+(CCH-(1-2*ChildVerticalOverlap)*THt);if(STp+CCH>SWinH+TS)STp=SWinH+TS-CCH+(Nav4?4:0)}
else{if(STp+CCH>TS+SWinH)STp=P.Lvl==1?STp=TS+SWinH-CCH:STp-CCH+(1-2*ChildVerticalOverlap)*THt;if(STp<TS)STp=TS}}
CCSt.top=STp+P_X;CCSt.left=SLt+P_X;
if(Fltr&&MenuSlide){P.CCn.filters[0].Apply();P.CCn.filters[0].play()}
CCSt.visibility=M_Show}
function OpenMenuClick(){
if(!Ldd||!Crtd)return;
var HP=Nav4?this.LLyr:this;CurOvr=this;
IniFlg=0;ClrAllChlds(this.Ctnr.FrstMbr);HiliteItem(HP);
function CloseMenu(){
if(!Ldd||!Crtd)return;
status="";
if(this==CurOvr){if(OpnTmr)clearTimeout(OpnTmr);if(CloseTmr)clearTimeout(CloseTmr);IniFlg=1;CloseTmr=setTimeout("Initiate(CurOvr)",DissapearDelay)}}
function CntnrSetUp(W,H,NoOff,WMu,Mc){
var x=BorderColor;
this.FrstMbr=null;this.NrItms=NoOff;this.Cllr=Mc;this.Shw=0;
this.OrgLeft=this.OrgTop=0;
if(Nav4){if(x)this.bgColor=x;this.visibility="hide";this.resizeTo(W,H)}
else{if(x)this.style.backgroundColor=x;this.style.width=W+P_X;this.style.height=H+P_X;
if(!NavYes)this.style.zIndex=RLvl+Ztop;
if(Fltr){FStr="";if(MenuSlide&&RLvl!=1)FStr=MenuSlide;if(MenuShadow)FStr+=MenuShadow;
if(MenuOpacity)FStr+=MenuOpacity;if(FStr!="")this.style.filter=FStr}}}
function MbrSetUp(MbC,PrMmbr,WMu,Wd,Ht,Nofs){
var Lctn=RLvl==1?FLoc:ScLoc,Tfld=this.Arr[0],t,T,L,W,H,S,a;
this.PrvMbr=PrMmbr;this.Lvl=RLvl;this.Ctnr=MbC;this.CCn=null;this.ai=null;this.Hilite=0;this.DoRmbr=0;
this.Clckd=0;this.OM=OpenMenu;this.style.overflow="hidden";
this.MN=WMu;this.NofChlds=Nofs;
this.style.cursor=(this.Arr[1]||(RLvl==1&&UnfoldsOnClick))?ExpYes?"hand":"pointer":"default";this.ro=0;
if(Tfld.indexOf("rollover")!=-1){this.ro=1;this.ri1=Tfld.substring(Tfld.indexOf("?")+1,Tfld.lastIndexOf("?"));
this.ri2=Tfld.substring(Tfld.lastIndexOf("?")+1,Tfld.length);this.rid=WMu+"i";
Tfld="<img src=\""+this.ri1+"\" name=\""+this.rid+"\" width=\""+Wd+"\" height=\""+Ht+"\">"}
this.value=Tfld;
this.style.color=FontLowColor;
this.style.fontFamily=FontFamily;
this.style.fontSize = FontSize + "pt";
this.style.fontWeight="normal";
this.style.fontStyle="normal";
this.style.backgroundColor=LowBgColor;
if (WMu.length > 6)
{ MenuTextCentered = 'left';}
else
{MenuTextCentered = 'center';}
this.style.textAlign=MenuTextCentered;
if(this.Arr[2])this.style.backgroundImage="url(\""+this.Arr[2]+"\")";
if(Tfld.indexOf("<")==-1){this.style.width=Wd-LftXtra+P_X;this.style.height=Ht-TpXtra+P_X;this.style.paddingLeft=LeftPaddng+P_X;this.style.paddingTop=TopPaddng+P_X}
else{this.style.width=Wd+P_X;this.style.height=Ht+P_X}
if(Tfld.indexOf("<")==-1&&DomYes){t=Lctn.document.createTextNode(Tfld);this.appendChild(t)}
else this.innerHTML=Tfld;
if(this.Arr[3]){a=RLvl==1&&FirstLineHorizontal?BottomUp?9:3:RightToLeft?6:0;
if(Arrws[a]!=""){S=Arrws[a];W=Arrws[a+1];H=Arrws[a+2];T=RLvl==1&&FirstLineHorizontal?BottomUp?2:Ht-H-2:(Ht-H)/2;L=RightToLeft?2:Wd-W-2;
if(DomYes){t=Lctn.document.createElement("img");this.appendChild(t);
t.style.position="absolute";t.src=S;t.style.width=W+P_X;t.style.height=H+P_X;t.style.top=T+P_X;t.style.left=L+P_X}
else{Tfld+="<div id=\""+WMu+"_im\" style=\"position:absolute; top:"+T+"; left:"+L+"; width:"+W+"; height:"+H+";visibility:inherit\"><img src=\""+S+"\"></div>";
this.innerHTML=Tfld;t=Lctn.document.all[WMu+"_im"]}
this.ai=t}}
if(ExpYes){this.onselectstart=CnclSlct;this.onmouseover=RLvl==1&&UnfoldsOnClick?OpenMenuClick:OpenMenu;
this.onmouseout=CloseMenu;this.onclick=RLvl==1&&UnfoldsOnClick&&this.Arr[3]?OpenMenu:GoTo}
else{RLvl==1&&UnfoldsOnClick?this.addEventListener("mouseover",OpenMenuClick,false):this.addEventListener("mouseover",OpenMenu,false);
this.addEventListener("mouseout",CloseMenu,false);
RLvl==1&&UnfoldsOnClick&&this.Arr[3]?this.addEventListener("click",OpenMenu,false):this.addEventListener("click",GoTo,false)}}
function NavMbrSetUp(MbC,PrMmbr,WMu,Wd,Ht,Nofs){
var a;
this.value=this.Arr[0];this.ro=0;
if(this.value.indexOf("rollover")!=-1){
this.ro=1;this.ri1=this.value.substring(this.value.indexOf("?")+1,this.value.lastIndexOf("?"));
this.ri2=this.value.substring(this.value.lastIndexOf("?")+1,this.value.length);this.rid=WMu+"i";
this.value="<img src=\""+this.ri1+"\" name=\""+this.rid+"\">"}
CntrTxt="<div align=\""+MenuTextCentered+"\">";
TxtClose="</font>"+ "</div>";
if(LeftPaddng&&this.value.indexOf("<")==-1&&MenuTextCentered=="left")this.value="�\;"+this.value;
this.Ovalue=this.value;
this.value=this.value.fontcolor(FontLowColor);
this.Ovalue=this.Ovalue.fontcolor(FontHighColor);
this.value=CntrTxt+"<font face=\""+FontFamily+"\" point-size=\""+FontSize+"\">"+this.value+TxtClose;
this.Ovalue=CntrTxt+"<font face=\""+FontFamily+"\" point-size=\""+FontSize+"\">"+this.Ovalue+TxtClose;
this.CCn=null;this.PrvMbr=PrMmbr;this.Hilite=0;this.DoRmbr=0;this.Clckd=0;this.visibility="inherit";
this.MN=WMu;this.NofChlds=Nofs;
this.bgColor=LowBgColor;
this.resizeTo(Wd,Ht);
if(!AcrssFrms&&this.Arr[2])this.background.src=this.Arr[2];
this.document.write(this.value);this.document.close();
this.CLyr=new Layer(Wd,MbC);
this.CLyr.Lvl=RLvl;this.CLyr.visibility="inherit";
this.CLyr.onmouseover=RLvl==1&&UnfoldsOnClick?OpenMenuClick:OpenMenu;this.CLyr.onmouseout=CloseMenu;
this.CLyr.captureEvents(Event.MOUSEUP);this.CLyr.onmouseup=RLvl==1&&UnfoldsOnClick&&this.Arr[3]?OpenMenu:GoTo;
this.CLyr.OM=OpenMenu;
this.CLyr.LLyr=this;this.CLyr.resizeTo(Wd,Ht);this.CLyr.Ctnr=MbC;
if(this.Arr[3]){a=RLvl==1&&FirstLineHorizontal?BottomUp?9:3:RightToLeft?6:0;
if(Arrws[a]!=""){this.CLyr.ILyr=new Layer(Arrws[a+1],this.CLyr);this.CLyr.ILyr.visibility="inherit";
this.CLyr.ILyr.top=RLvl==1&&FirstLineHorizontal?BottomUp?2:Ht-Arrws[a+2]-2:(Ht-Arrws[a+2])/2;
this.CLyr.ILyr.left=RightToLeft?2:Wd-Arrws[a+1]-2;this.CLyr.ILyr.width=Arrws[a+1];this.CLyr.ILyr.height=Arrws[a+2];
ImgStr="<img src=\""+Arrws[a]+"\" width=\""+Arrws[a+1]+"\" height=\""+Arrws[a+2]+"\">";
this.CLyr.ILyr.document.write(ImgStr);this.CLyr.ILyr.document.close()}}}
function CreateMenuStructure(MNm,No,Mcllr){
status="Building menu";RLvl++;
var i,NOs,Mbr,W=0,H=0,PMb=null,WMnu=MNm+"1",MWd=eval(WMnu+"[5]"),MHt=eval(WMnu+"[4]"),Lctn=RLvl==1?FLoc:ScLoc;
var BRW=RLvl==1?BorderWidthMain:BorderWidthSub,BTWn=RLvl==1?BorderBtwnMain:BorderBtwnSub;
if(RLvl==1&&FirstLineHorizontal){
for(i=1;i<No+1;i++){WMnu=MNm+eval(i);W=eval(WMnu+"[5]")?W+eval(WMnu+"[5]"):W+MWd}
W=BTWn?W+(No+1)*BRW:W+2*BRW;H=MHt+2*BRW}
else{for(i=1;i<No+1;i++){WMnu=MNm+eval(i);H=eval(WMnu+"[4]")?H+eval(WMnu+"[4]"):H+MHt}
H=BTWn?H+(No+1)*BRW:H+2*BRW;W=MWd+2*BRW}
if(DomYes){var MbC=Lctn.document.createElement("div");MbC.style.position="absolute";MbC.style.visibility="hidden";Lctn.document.getElementById("navigationMenu").appendChild(MbC)}
else{if(Nav4)var MbC=new Layer(W,Lctn);
else{WMnu+="c";Lctn.document.body.insertAdjacentHTML("AfterBegin","<div id=\""+WMnu+"\" style=\"visibility:hidden; position:absolute;\"><\/div>");
var MbC=Lctn.document.all[WMnu]}}
MbC.SetUp=CntnrSetUp;MbC.SetUp(W,H,No,MNm+"1",Mcllr);
if(Exp4){MbC.InnerString="";
for(i=1;i<No+1;i++){WMnu=MNm+eval(i);MbC.InnerString+="<div id=\""+WMnu+"\" style=\"position:absolute;\"><\/div>"}
MbC.innerHTML=MbC.InnerString}
for(i=1;i<No+1;i++){WMnu=MNm+eval(i);NOs=eval(WMnu+"[3]");
W=RLvl==1&&FirstLineHorizontal?eval(WMnu+"[5]")?eval(WMnu+"[5]"):MWd:MWd;
H=RLvl==1&&FirstLineHorizontal?MHt:eval(WMnu+"[4]")?eval(WMnu+"[4]"):MHt;
if(DomYes){Mbr=Lctn.document.createElement("div"); Mbr.style.position="absolute";Mbr.style.visibility="inherit";MbC.appendChild(Mbr)}
else Mbr=Nav4?new Layer(W,MbC):Lctn.document.all[WMnu];
Mbr.Arr=eval(WMnu);
Mbr.SetUp=Nav4?NavMbrSetUp:MbrSetUp;Mbr.SetUp(MbC,PMb,WMnu,W,H,NOs);
if(NOs&&!BuildOnDemand){Mbr.CCn=CreateMenuStructure(WMnu+"_",NOs,Mbr)}
PMb=Mbr}
MbC.FrstMbr=Mbr;
RLvl--;
return(MbC)}
function CreateMenuStructureAgain(MNm,No){
if(!BuildOnDemand){
var i,WMnu,NOs,PMb,Mbr=FrstCntnr.FrstMbr;RLvl++;
for(i=No;i>0;i--){WMnu=MNm+eval(i);NOs=eval(WMnu+"[3]");PMb=Mbr;if(NOs)Mbr.CCn=CreateMenuStructure(WMnu+"_",NOs,Mbr);Mbr=Mbr.PrvMbr}
RLvl--}
else{ var Mbr=FrstCntnr.FrstMbr;
while(Mbr){Mbr.CCn=null;Mbr=Mbr.PrvMbr}}}Hi thanks...As you said I am performing only on onload event..only thing i am confused is if i remove the javacript MRHeader.js everything works fine...am totally confused...pls help
Here is my JSP code for my input page
<%@page import="java.util.*" %>
<%@page import="com.ford.mr.*" %>
<HTML>
<HEAD>
<link href="./css/mplstyle.css" rel="STYLESHEET" type="text/css">
<title>Input Frame</title>
<link type="text/css" rel="STYLESHEET" href="./css/classic.css">
<STYLE>
.vis1 { visibility:visible }
.vis2 { visibility:hidden }
</STYLE>
<%--
MRIFValidation.js contains the java script for the following requirement:
1. Setting the current date in date to compare
2. All input frame client validations.
E.g Plant id should not be empty.
--%>
<script type="text/javascript" src="./javascript/MRIFValidation.js"> </script>
<%--
MRR2HandleDropdown.js is the javascript for the input frame server side actions
It has many functions related to drop down populating and rendering the data
to user from server.
--%>
<script language="javascript" src="./javascript/MRR2HandleDropdown.js"> </script>
<%--
MRheader.js is the javascript which displays the header for our application
plus it has an internal call to MRMenuItem.js and menuscript.js which
builds the menu bar for our application
Issue is here - On commenting the below the previously entered user
inputs are displayed correctly. Else they are not displayed.
--%>
<script language="javascript" src="./javascript/MRheader.js"> </script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
a:visited {
color: #0000FF;
.style1 {font-weight: bold}
.style2 {color: #FF0000}
body {
background-color: #FFFFFF;
-->
</style>
<%--
Declaring all the JSP variables used in the page
These variables are used for holding the session parameters
and are used while setting the selected values in the screen.
--%>
<%!
// HTTPSession object
HttpSession sess;
// To hold session Variables //
// Selected plant index
String plantIndex;
// Selected supplier index
String supplierIndex;
// Selected part index
String partIndex;
// List of plant codes
Vector plantCodes = new Vector();
// List of supplier codes
Vector supplierCodes = new Vector();
// List of part codes
Vector partCodes = new Vector();
// To hold the part description for the selected part
String partDescription;
// List of release numbers matching the selected plant, supplier & part
Vector releaseNumbers = new Vector();
// Type of release - Weekly / Daily
String releaseType;
// Selected release1 index
String release1Index;
// Selected release2 index
String release2Index;
// Holds the issue date 1 corresponding to release 1 selected
String issueDate1;
// Holds the issue date 2 corresponding to release 2 selected
String issueDate2;
// List of matching release numbers to the entered issue date1 (Might be one or two
// in case if amended release exist)
Vector matchingRelease1Number = new Vector();
// List of matching release numbers to the entered issue date2 (Might be one or two
// in case if amended release exist)
Vector matchingRelease2Number = new Vector();
// Size of matchingRelease1Number collection
int matchingRelease1Size = 0;
// Size of matchingRelease2Number collection
int matchingRelease2Size = 0;
// Boolean flags to hold if amended release exists in the release numbers
// matching the issue dates entered by user.
boolean amendedRelease1Exist;
boolean amendedRelease2Exist;
String pageName = "";
%>
<%--
The below code does the following:
1. Fetches the various values available in session
2. Stores the same in various JSP variables for access within the page
--%>
<%
System.out.println("In input frame page");
sess = request.getSession(true);
if(sess != null) {
System.out.println("Session id in input frame: "+ sess.getId());
plantIndex = (String) sess.getAttribute("selectedPlantIndex");
supplierIndex = (String) sess.getAttribute("selectedSupplierIndex");
partIndex = (String) sess.getAttribute("selectedPartIndex");
//plantCodes = (Vector) sess.getAttribute("plantCodes");
supplierCodes = (Vector) sess.getAttribute("supplierCodes");
partCodes = (Vector) sess.getAttribute("partCodes");
partDescription = (String) sess.getAttribute("partDescription");
releaseNumbers = (Vector) sess.getAttribute("releaseNumbers");
releaseType = (String) sess.getAttribute("releaseType");
release1Index = (String) sess.getAttribute("selectedRelease1Index");
release2Index =(String) sess.getAttribute("selectedRelease2Index");
issueDate1 = (String) sess.getAttribute("issueDate1");
issueDate2 = (String) sess.getAttribute("issueDate2");
matchingRelease1Number = (Vector) sess.getAttribute("correspondingRelease1Number");
matchingRelease2Number = (Vector) sess.getAttribute("correspondingRelease2Number");
System.out.println("Displaying values in session *******************");
Enumeration enum = sess.getAttributeNames();
while(enum.hasMoreElements()) {
String elementName = (String) enum.nextElement();
System.out.println("element:"+ elementName+": Value: "+ sess.getAttribute(elementName));
System.out.println("Plant Index JSP variable:"+ plantIndex);
%>
<%--
This code is used for getting the plant codes from
the DB. Currently it is hardcoded.
--%>
<%
MRR2GetPlantCodes obj = new MRR2GetPlantCodes();
plantCodes = obj.getPlantCodes();
%>
<%--
The below two blocks are used to iterate through matchingRelease1Number & matchingRelease2Number
and checks if it has amended release. If yes, sets a boolean flag.
matchingRelease1Number & matchingRelease2Number are two collections which
contains the release number(s) matching the inputted issue date
--%>
<%
// Code to set boolean flag amendedRelease1Exist
if(matchingRelease1Number != null) {
Iterator relIter = matchingRelease1Number.iterator();
while(relIter.hasNext()) {
if( ((String)relIter.next()).endsWith("A") ) {
amendedRelease1Exist = true;
// Code to set boolean flag amendedRelease2Exist
if(matchingRelease2Number != null) {
Iterator relIter = matchingRelease2Number.iterator();
while(relIter.hasNext()) {
if( ((String)relIter.next()).endsWith("A") ) {
amendedRelease2Exist = true;
%>
<%--
The below script has one method fillDropDown which is used for setting the
values of the various I/P controls to user selected values:
It sets the below selected values:
1. Plant Index, Supplier Index, Part Index, Part description
2. Release Type (Daily / weekly)
3. Release 1 Index, Release 2 Index
4. Issue date1 & Issue date2
--%>
<script language="javascript">
function fillDropDown(field) {
with(field) {
var partD = "<%=partDescription%>"
<% System.out.println("Loading the index values in input frame......");%>
// inputform.country.selectedIndex = inputform.hiddencountry.value
// Loading plant Index, supplier Index, part index and part description to selected values
<% if(plantIndex != null && !plantIndex.equals("")) {%>
inputframe.plant.selectedIndex = "<%=Integer.parseInt(plantIndex)%>"
<% System.out.println("Selected Plant Index after loading:"+plantIndex);} %>
<% if(supplierIndex != null && !supplierIndex.equals("")) { System.out.println("****Supplier Index not equals null..."+Integer.parseInt(supplierIndex)); %>
inputframe.supplier.selectedIndex = "<%=Integer.parseInt(supplierIndex)%>"
<% } %>
<% if(partIndex != null && !partIndex.equals("")) { %>
inputframe.part.selectedIndex = "<%=Integer.parseInt(partIndex)%>"
<% } %>
<% if(partDescription != null && !partDescription.equals("")) { %>
document.getElementById("partDescription").innerHTML = partD
<% } %>
// Making the default release type selection as done by user
<% if(releaseType != null && !"".equals(releaseType)) {
if("daily".equals(releaseType)) {%>
inputframe.release[0].checked = "checked"
<% //isDaily = true;
} else { %>
inputframe.release[1].checked = "checked"
<% //isWeekly = true;
} %>
<%--
The below code is used to fetch the session variable issueDate1
& issueDate2 (based on the release numbers selected)
and sets the same in two text fields.
--%>
<% if(issueDate1 != null && !issueDate1.equals("")) { %>
inputframe.issueDate1.value = "<%=issueDate1%>"
<% } %>
<% if(issueDate2 != null && !issueDate2.equals("")) { %>
inputframe.issueDate2.value = "<%=issueDate2%>"
<% } %>
<%--
Loading release drop down with the value matching with the entered issue date.
Scenario : User enters the issue date and the corresponding release number is
selected in drop down.
Logic 1:
1. Pass the issue date entered by user and get the matching release numbers
from EJB
2. Compare this with the combo collection and get the perfect match.
3. If more than one match is found take the one with amendment by default
4. Else get the matching one
5. Update the selected index of dropdown to this value
--%>
if(inputframe.release1.options.length > 0) {
var matchingCombo1Index = 0
var comboValue
var matchFound = "false"
var size
var amended = false;
var amendedReleaseExist = "<%=amendedRelease1Exist%>";
var firstValue = ""
var secondValue = ""
var amendedValue = ""
var j = 0
<%
if(matchingRelease1Number != null && matchingRelease1Number.size() != 0) {
Iterator iter = matchingRelease1Number.iterator();
matchingRelease1Size = matchingRelease1Number.size(); %>
size = "<%= matchingRelease1Size %>"
//alert("Size of collection to be matched:"+size)
<% while(iter.hasNext()) {
//String matchFound1 = "false";
String relValue = (String)iter.next();%>
//alert("Collection value under iteration:"+ "<%=relValue%>")
amended = "<%=relValue.endsWith("A")%>"
if(amended) {
amendedValue = "<%=relValue%>"
//alert("Collection value under iteration ends with A:"+amended)
var comb = "<%=relValue%>"
j = j + 1
for(var i = 0; i < inputframe.release1.options.length; i++) {
// breaking the for loop when matchingCombo1Index is set greater than 0
/*if(matchFound == true) {
break
comboValue = inputframe.release1.options.value
//alert("Combo value:->"+comboValue)
//alert("rel value in comparison:"+ comb);
if(comboValue == comb) {
if(size == 1) {
matchFound = "true";
if(size == 2) {
if(j == 1)
firstValue = comb
if(j == 2)
secondValue = comb
// The below if block shall be also kept as if((amended||(!amendedReleaseExist)==true)
// The below one perfectly works fine
if(amended || !amendedReleaseExist) {
matchFound = "true";
if(matchFound == "true") {
matchingCombo1Index = i
// alert("Matching combo index set to:"+ matchingCombo1Index)
inputframe.release1.selectedIndex = matchingCombo1Index
if(size == 2)
document.getElementById('errorArea').innerHTML = "There are"
+ " two release numbers for the particular Issue date."
+" Please select either one of the release numbers ("+firstValue+ " or "+secondValue+" )."
+" Default selection in the Release drop down is "+ amendedValue+ "."
matchingCombo1Index = 0;
matchFound = "false";
// Breaking the for loop
break;
<%
sess.removeAttribute("correspondingRelease1Number") ;
}%>
// Setting the selected release 1 index based on the logic done above.
if(matchingCombo1Index == 0) {
<% if(release1Index != null && !release1Index.equals("")) { matchingRelease1Number = null;%>
inputframe.release1.selectedIndex = "<%=Integer.parseInt(release1Index)%>"
<% } %>
<%--
Performing the above logic to select Release2 value
when the user enters issue date2
--%>
if(inputframe.release2.options.length > 0) {
var matchingCombo2Index = 0
var comboValue
var matchFound = "false"
var size
var amended = false;
var amendedReleaseExist = "<%=amendedRelease2Exist%>";
var firstValue = ""
var secondValue = ""
var amendedValue = ""
var j = 0
<%
if(matchingRelease2Number != null && matchingRelease2Number.size() != 0) {
Iterator iter = matchingRelease2Number.iterator();
matchingRelease2Size = matchingRelease2Number.size(); %>
size = "<%= matchingRelease2Size %>"
//alert("Size of collection to be matched:"+size)
<% while(iter.hasNext()) {
String matchFound1 = "false";
String relValue = (String)iter.next();%>
//alert("Collection value under iteration:"+ "<%=relValue%>")
amended = "<%=relValue.endsWith("A")%>"
if(amended) {
amendedValue = "<%=relValue%>"
//alert("Collection value under iteration ends with A:"+amended)
var comb = "<%=relValue%>"
j = j + 1
for(var i = 0; i < inputframe.release2.options.length; i++) {
// breaking the for loop when matchingCombo2Index is set greater than 0
/*if(matchFound == true) {
break
comboValue = inputframe.release2.options[i].value
//alert("Combo value:->"+comboValue)
//alert("rel value in comparison:"+ comb);
if(comboValue == comb) {
if(size == 1) {
matchFound = "true";
if(size == 2) {
if(j == 1)
firstValue = comb
if(j == 2)
secondValue = comb
// The below if block shall be also kept as if((amended||(!amendedReleaseExist)==true)
// The below one perfectly works fine
if(amended || !amendedRelease2Exist) {
matchFound = "true";
if(matchFound == "true") {
matchingCombo2Index = i
// alert("Matching combo index set to:"+ matchingCombo2Index)
inputframe.release2.selectedIndex = matchingCombo2Index
if(size == 2)
document.getElementById('errorArea').innerHTML = "There are"
+ " two release numbers for the particular Issue date."
+" Please select either one of the release numbers ("+firstValue+ " or "+secondValue+" )."
+" Default selection in the Release drop down is "+ amendedValue+ "."
matchingCombo2Index = 0;
matchFound = "false";
// Breaking the for loop
break;
<%
sess.removeAttribute("correspondingRelease2Number") ;
}%>
// Loading the selected release2 value in drop down
if(matchingCombo2Index == 0) {
<% if(release2Index != null && !release2Index.equals("")) { matchingRelease2Number = null;%>
inputframe.release2.selectedIndex = "<%=Integer.parseInt(release2Index)%>"
<% } %>
} // end of WITH
Logic 2: Not used
1. Pass the issue date entered by user and get the matching release numbers
2. Get the release numbers from session.
3. if release type is daily get the daily release numbers else get weekly release numbers
4. Compare the matching release numbers with daily / weekly release numbers collection
5. Find the match and update the selected index of drop down to this value
}// end of function
</script>
</HEAD>
<%-- Calling the two methods onload event of body --%>
<BODY onload="setCurrentDate(this);fillDropDown(this)"> -
SetProperties method invoked only in debug mode
Hey,
This is a strange problem so i'll try to be clear.
I wrote a custom tag.
running under degub mode, runs the tag well, and all is well.
but when i run un normal mode (not degub) it does not work.
i found that the setProperties method is not been called after the first time.
what i mean is: in normal run mode the setProperties method is called only once, and not every time the page refreshes.
the strange thing is that in degub mode it runs well.
this is my jsp code
hope it works out well....
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%-- jsf:pagecode language="java" location="/JavaSource/pagecode/ExaminerModule/SelectStation1.java" --%><%-- /jsf:pagecode --%>
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@taglib uri="http://www.ibm.com/jsf/html_extended" prefix="hx"%>
<%@taglib uri="/tags/theoryOnline" prefix="tol"%>
<%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="/tags/tangramTags" prefix="tngt"%>
<%@taglib uri="/tags/tolTags" prefix="tolTags"%>
<%@page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<HTML>
<tol:theoryOnlineHeadTag>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="GENERATOR" content="IBM Software Development Platform">
<meta http-equiv="Content-Style-Type" content="text/css">
<LINK rel="stylesheet" type="text/css" href="../theme/styles/mm.css"
title="Style">
<SCRIPT>
function initModalWindow()
window.dialogHeight=40;
window.dialogWidth=40;
selectStationInit();
function selectStationInit()
var oMyObject = window.dialogArguments;
var examineeId = oMyObject.examineeId;
// alert ("myObj id=" +examineeId );
if (document.all['form1:hiddenExamineeId'].value != examineeId)
// alert ("pre submit");
document.all['form1:hiddenExamineeId'].value = examineeId;
document.all['form1:button2'].click();
// else document.all['form1:locateRoom'].click();
alert (document.body.innerHTML);
</SCRIPT>
<SCRIPT src="../theme/scripts/dialog.js">
</SCRIPT>
<TITLE>����� ����</TITLE>
<BASE target="_self">
<LINK rel="stylesheet" type="text/css" href="../theme/stylesheet.css"
title="Style">
</tol:theoryOnlineHeadTag>
<f:view>
<tol:theoryOnlineBodyTag>
<BUTTON id="yesButton" onclick="closeWithTrueReturnValue()">�����</BUTTON>
<BUTTON id="noButton" onclick="closeWithFalseReturnValue()">�����</BUTTON>
<hx:scriptCollector id="scriptCollector1">
<h:form styleClass="form" id="form1" style="direction: rtl">
<h:inputHidden binding="#{selectStation.hiddenExamineeIdBinding}"
id="hiddenExamineeId" />
<h:inputHidden binding="#{selectStation.hiddenStationNumberBinding}" />
<h:inputHidden binding="#{selectStation.hiddenRoomNumberBinding}" />
<h:messages styleClass="messages" id="messages1"></h:messages>
<h:panelGrid width="50%" columns="1" style="text-align: center">
<h:selectOneMenu styleClass="extra-border"
value="#{selectStation.roomCombuValue}">
. <f:selectItems value="#{selectStation.roomsLists}" />
</h:selectOneMenu>
<hx:commandExButton type="submit" styleClass="commandExButton"
value="��� ���" action="#{selectStation.locateRoom}"
id="locateRoom"/>
<h:outputText></h:outputText>
<tolTags:TheoryOnlineStationsTag
roomNumber="#{selectStation.roomCombuValue}">
</tolTags:TheoryOnlineStationsTag>
<hx:commandExButton type="submit" value="dodo"
styleClass="commandExButton" id="button2"
action="#{selectStation.initSelectStationsModal}" />
<hx:commandExButton value="����" styleClass="Button1"/>
</h:panelGrid>
</h:form>
</hx:scriptCollector>
</tol:theoryOnlineBodyTag>
</f:view>
</HTML>TAG CODE
package com.tangram.theoryonline.web.tags;
import java.util.ArrayList;
import java.util.Map;
import javax.faces.application.Application;
import javax.faces.component.UIComponent;
import javax.faces.component.html.HtmlCommandButton;
import com.tangram.theoryonline.datamodel.Room;
import com.tangram.theoryonline.datamodel.Station;
import com.tangram.theoryonline.managers.EntitiesManager;
import com.tangram.theoryonline.web.constants.TheoryOnlineWebConstants;
import com.tangram.web.jsf.html.tags.HtmlBaseTag;
import com.tangram.web.jsf.html.tags.Util;
* @author ishay
public class TheoryOnlineStationsTag extends HtmlBaseTag {
private String roomNumber;
public String getComponentType() {
return HtmlCommandButton.COMPONENT_TYPE;
protected void setProperties(UIComponent component) {
super.setProperties(component);
System.out.println("SETTING myTAG");
Application app = getFacesContext().getApplication();
Map attributes = component.getAttributes();
Util.addAttribute(app,component,"roomNumber",roomNumber);
Station station=null;
// String s=Util.getStringProperty(component,null,"roomNumber","0");
String s=Util.getStringProperty(component,null,"roomNumber",null) ;
System.out.println("getting String binding is " + s);
Room room=(Room) EntitiesManager.getInstance().getRoomsMap().get(s);
System.out.println("room from map is " + room);
ArrayList leftList=new ArrayList();
ArrayList rightList=new ArrayList();
if (room ==null || room.getDecendedList()==null || s==null)
System.out.println("NO STATIONS FOR ROOM " + room);
else {
System.out.println("size of total list="+room.getDecendedList().size());
for (int i=0;i<room.getDecendedList().size();i++) {
station=(Station) room.getDecendedList().get(i);
leftList.add(station);
i++;
if (i<room.getDecendedList().size()){
station=(Station) room.getDecendedList().get(i);
rightList.add(station);
} // if
System.out.println("lengths are "+leftList.size()+","+rightList.size());
}// for
}// else
attributes.put(TheoryOnlineWebConstants.ROOM_STATIONS_RIGHT_LIST,rightList);
attributes.put(TheoryOnlineWebConstants.ROOM_STATIONS_LEFT_LIST,leftList);
public String getRendererType() {
return "com.tangram.theoryonline.web.tags.TheoryOnlineStationsRenderer";
public String getRoomNumber() {
return roomNumber;
public void setRoomNumber(String roomNumber) {
this.roomNumber = roomNumber;
}the renderer
package com.tangram.theoryonline.web.tags;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Map;
import javax.faces.FactoryFinder;
import javax.faces.component.UICommand;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import javax.faces.render.RenderKit;
import javax.faces.render.RenderKitFactory;
import javax.faces.render.Renderer;
import com.tangram.theoryonline.datamodel.Station;
import com.tangram.theoryonline.web.constants.TheoryOnlineWebConstants;
import com.tangram.web.jsf.html.tags.Util;
public class TheoryOnlineStationsRenderer extends Renderer {
public void encodeBegin(FacesContext context, UIComponent component)
throws java.io.IOException
if (!component.isRendered()) return;
Map attributes = component.getAttributes();
ArrayList rightList=(ArrayList)attributes.get(TheoryOnlineWebConstants.ROOM_STATIONS_RIGHT_LIST);
ArrayList leftList=(ArrayList)attributes.get(TheoryOnlineWebConstants.ROOM_STATIONS_LEFT_LIST);
Station station;
String roomNumber=(String)attributes.get("roomNumber");
ResponseWriter writer = context.getResponseWriter();
String clientId = component.getClientId(context);
writer.startElement("table", component);
writer.writeAttribute("id", clientId, "id");
Util.writePassthroughAttributes(attributes, writer);
writer.startElement("tbody", component);
System.out.println("lengths from renderer are "+rightList.size()+","+leftList.size());
int i=0;
while (i<rightList.size() || i<leftList.size() ) {
writer.startElement("tr", component);
station=null;
if (i<rightList.size())
station=(Station)rightList.get(i);
if (station!=null)
writeColumn(component,writer,station,clientId);
station=null;
if (i<leftList.size())
station=(Station)leftList.get(i);
if (station!=null)
writeColumn(component,writer,station,clientId);
writer.endElement("tr");
writer.endElement("tbody");
writer.endElement("table");
private void writeColumn(UIComponent component,ResponseWriter writer ,Station station,String clientId) throws IOException {
int status=station.getEntityStatus().getValue();
writer.startElement("td", component);
writer.startElement("label",component);
writer.writeAttribute("for",clientId,null);
writer.startElement("input",component);
writer.writeAttribute("type","radio",null);
writer.writeAttribute("name", clientId, null);
writer.writeAttribute("value",station.getName(),null);
System.out.println(Boolean.toString(status==1));
if (status!=1)
writer.writeAttribute("disabled","disabled",null);
writer.endElement("input");
//if (status==2) writer.write("<H1>");
writer.write(station.getName());
// if (status==2) writer.write("</H1>");
writer.endElement("label");
writer.endElement("td");
public void decode(FacesContext context, UIComponent component)
getButtonRenderer(context).decode(context, component);
protected Renderer getButtonRenderer(FacesContext context)
RenderKitFactory rkFactory =
(RenderKitFactory)FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);
RenderKit defaultRenderKit = // talk about other variation of this method
rkFactory.getRenderKit(context, RenderKitFactory.HTML_BASIC_RENDER_KIT); /** Changed from DEFAULT_RENDER_KIT, changed order of parameters **/
return defaultRenderKit.getRenderer(UICommand.COMPONENT_FAMILY, "javax.faces.Button");
* Created on 01/01/2006
* Window - Preferences - Java - Code Style - Code Templates
package com.tangram.theoryonline.web.webbeans;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Map;
import javax.faces.component.html.HtmlInputHidden;
import javax.faces.context.FacesContext;
import javax.faces.model.SelectItem;
import com.tangram.theoryonline.constants.TheoryOnlineConstants;
import com.tangram.theoryonline.constants.enums.LocationEntityStatusEnum;
import com.tangram.theoryonline.datamodel.Examinee;
import com.tangram.theoryonline.datamodel.Room;
import com.tangram.theoryonline.datamodel.Site;
import com.tangram.theoryonline.datamodel.Station;
import com.tangram.theoryonline.managers.EntitiesManager;
import com.tangram.theoryonline.security.TheoryOnlineUser;
import com.tangram.theoryonline.web.constants.TheoryOnlineWebConstants;
import com.tangram.web.constants.TangramWebConstants;
public class SelectStation extends TheoryOnlineBaseBean{
private ArrayList stationList;
// private String hiddenExamineeId;
// private String selectedRoom;
private String listId="MainList";
// private String hiddenStationNumber;
private HtmlInputHidden hiddenStationNumberBinding,hiddenRoomNumberBinding,hiddenExamineeIdBinding;
// private String hiddenRoomNumber;
private String roomCombuValue;
// private HtmlSelectOneMenu roomCombu;//=new HtmlSelectOneMenu ();
private SelectItem [] roomsLists;
// private HtmlSelectOneMenu roomSelect;
public SelectStation() {
super();
public String initSelectStationsModal(){
Map examineeCache = (ExamineeCache)getValueBinding(TheoryOnlineWebConstants.EXAMINEE_MAP_SCOPE + TheoryOnlineWebConstants.EXAMINEE_MAP_KEY);
Examinee examinee = (Examinee)examineeCache.get(getHiddenExamineeIdFromBinding());
FacesContext facesContext = FacesContext.getCurrentInstance();
Map session=facesContext.getExternalContext().getSessionMap();
TheoryOnlineUser user = (TheoryOnlineUser)session.get(TangramWebConstants.ATTRIBUTE_USER_KEY);
// long siteId=user.getExaminer().getSite().getId();
int default_room=TheoryOnlineConstants.NO_STATION_PICKED_YET;
Station station=null;
Room room=null;
if (examinee==null)
System.out.println("ERROR getting examinee from map");
else
if (examinee.getLocation()==null)
System.out.println(" CODERS ERROR - get location returend null" );
else if (examinee.getLocation().getStationGid()!=TheoryOnlineConstants.NO_STATION_PICKED_YET){
station=(Station) EntitiesManager.getInstance().getStationsMap().get(""+examinee.getLocation().getStationGid());
if (station!=null && station.getRoom()!=null) {
room= (Room) EntitiesManager.getInstance().getRoomsMap().get(""+station.getRoom().getId());
if (room!=null)
default_room=TheoryOnlineConstants.FOUND_STATION_AND_ROOM;
}// if !nulls
}// if no station picked yet.
System.out.println("default_room="+default_room);
System.out.println("combu value is " + roomCombuValue);
switch (default_room) {
case TheoryOnlineConstants.NO_STATION_PICKED_YET:
case TheoryOnlineConstants.FOUND_STATION_NO_ROOM: {
room=(Room) user.getExaminer().getSite().getDecendedList().get(0);
if (room!=null) {
setHiddenRoomNumberFromBinding(""+room.getId());
hiddenStationNumberBinding.setValue("");
System.out.println("setting default room " + hiddenRoomNumberBinding.getValue());
roomCombuValue=(String) hiddenRoomNumberBinding.getValue();
break;
case TheoryOnlineConstants.FOUND_STATION_AND_ROOM: {
hiddenRoomNumberBinding.setValue(""+room.getId());
hiddenStationNumberBinding.setValue(""+station.getId());
System.out.println("EXAMINEE ALREADY HAD station id=" + station.getId());
roomCombuValue=(String) getHiddenRoomNumberBinding().getValue();
break;
}//case
}// switch
System.out.println( "room value="+roomCombuValue);
return "";
private void setHiddenRoomNumberFromBinding(String string) {
hiddenRoomNumberBinding.setValue(string);
public String locateRoom(){
hiddenRoomNumberBinding.setValue(""+roomCombuValue);
System.out.println("room combo value is " +roomCombuValue);
hiddenStationNumberBinding.setValue("");
return "";
public ArrayList getStationList(long roomGid) {
ArrayList sourceList=(ArrayList) EntitiesManager.getInstance().getRoomsMap().get(""+ roomGid);
if (sourceList==null) {
System.out.println("CODERS ERROR room is null");
return null;
ArrayList list=new ArrayList ();
Station station=null;
System.out.println("Building list");
list.add(new SelectItem("AAA","1"));
for (int i=0;i<sourceList.size();i++) {
station=(Station)sourceList.get(i);
SelectItem si=new SelectItem(""+station.getId(),station.getName());
if (station.getEntityStatus()==LocationEntityStatusEnum.INACTIVE) si.setDisabled(true);
list.add(si);
return list;
public String getListId() {
return listId;
public void setListId(String listId) {
this.listId = listId;
public void setStationList(ArrayList stationList) {
this.stationList = stationList;
public SelectItem[] getRoomsLists() {
FacesContext facesContext = FacesContext.getCurrentInstance();
Map session=facesContext.getExternalContext().getSessionMap();
TheoryOnlineUser user = (TheoryOnlineUser)session.get(TangramWebConstants.ATTRIBUTE_USER_KEY);
long siteId=user.getExaminer().getSite().getId();
Site site=(Site)EntitiesManager.getInstance().getSite(""+siteId);
Map examineeCache = (ExamineeCache)getValueBinding(TheoryOnlineWebConstants.EXAMINEE_MAP_SCOPE + TheoryOnlineWebConstants.EXAMINEE_MAP_KEY);
Examinee examinee = (Examinee)examineeCache.get(getHiddenExamineeIdFromBinding());
// String s=examinee.getLocation().getRoomDescription();
System.out.println("inside getRoomsLists : room is ");
roomsLists=new SelectItem[ site.getDecendedList().size()];
Iterator itr=site.getDecendedList().iterator();
int i=0;
Room room;
while (itr.hasNext()){
room=(Room) itr.next();
roomsLists=new SelectItem(""+room.getId(),room.getName());
i++;
return roomsLists;
private String getHiddenExamineeIdFromBinding() {
return (String) hiddenExamineeIdBinding.getValue();
public void setRoomsLists(SelectItem[] roomsLists) {
this.roomsLists = roomsLists;
public String getRoomCombuValue() {
return roomCombuValue;
public void setRoomCombuValue(String roomCombuValue) {
this.roomCombuValue = roomCombuValue;
public HtmlInputHidden getHiddenExamineeIdBinding() {
return hiddenExamineeIdBinding;
public void setHiddenExamineeIdBinding(HtmlInputHidden hiddenExamineeIdBinding) {
this.hiddenExamineeIdBinding = hiddenExamineeIdBinding;
public HtmlInputHidden getHiddenRoomNumberBinding() {
return hiddenRoomNumberBinding;
public void setHiddenRoomNumberBinding(HtmlInputHidden hiddenRoomNumberBinding) {
this.hiddenRoomNumberBinding = hiddenRoomNumberBinding;
public HtmlInputHidden getHiddenStationNumberBinding() {
return hiddenStationNumberBinding;
public void setHiddenStationNumberBinding(
HtmlInputHidden hiddenStationNumberBinding) {
this.hiddenStationNumberBinding = hiddenStationNumberBinding;Hi Emmanuel,
Now I get your problem: you want to wait to have the commit finished! The call to BAPI_TRANSACTION_COMMIT has an optional parameter 'WAIT' which is space by default which causes only a commit. When you set this parameter to 'X' it will do a commit work and wait.
This should solve your problem!
Regards,
John.
Maybe you are looking for
-
With the problems experienced with Itunes 7.7 - can I use Time Machine and restore the pre upgraded version? If so do I just find it and click restore? Any help appreciated.
-
Creating logical port pointing XI Runtime
Hello Friends, for a abap backend to point to an XI,I need to create a logical port,which is pointing to a RFC destination of type H,to create an RFC destination of type H,i need to know the URL and service number,how do i find this information. rega
-
HT201317 duplicate photos with photo stream
Does anybody get duplicate photos with photo stream? If so, how do you stop this happening?
-
Illustrating in Photoshop Elements 4.0
I do storyboarding for a living. There used to be this great tool that I used almost exclusively in my old PhotoDeluxe program called "Hand Color".no matter how dark the paint, I could see the black and white line drawing I scanned underneath prior t
-
Hi, Currently we have three system landscape DEV>QA>Prod Now we are introducing one more environment (Training) .That means when you release the request from QA then it has to be populate to Production and Training environment. Now my question is how