/FileExtraction/Java_unseen/IMS-MAXIMS_openMAXIMS/Source Library/openmaxims_workspace/Nursing/src/ims/nursing/forms/must/GenForm.java
//#############################################################################
//#                                                                           #
//#  Copyright (C) <2015>  <IMS MAXIMS>                                       #
//#                                                                           #
//#  This program is free software: you can redistribute it and/or modify     #
//#  it under the terms of the GNU Affero General Public License as           #
//#  published by the Free Software Foundation, either version 3 of the       #
//#  License, or (at your option) any later version.                          # 
//#                                                                           #
//#  This program is distributed in the hope that it will be useful,          #
//#  but WITHOUT ANY WARRANTY; without even the implied warranty of           #
//#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
//#  GNU Affero General Public License for more details.                      #
//#                                                                           #
//#  You should have received a copy of the GNU Affero General Public License #
//#  along with this program.  If not, see <http://www.gnu.org/licenses/>.    #
//#                                                                           #
//#  IMS MAXIMS provides absolutely NO GUARANTEE OF THE CLINICAL SAFTEY of    #
//#  this program.  Users of this software do so entirely at their own risk.  #
//#  IMS MAXIMS only ensures the Clinical Safety of unaltered run-time        #
//#  software that it builds, deploys and maintains.                          #
//#                                                                           #
//#############################################################################
//#EOH
// This code was generated by Barbara Worwood using IMS Development Environment (version 1.80 build 5589.25814)
// Copyright (C) 1995-2015 IMS MAXIMS. All rights reserved.
// WARNING: DO NOT MODIFY the content of this file

package ims.nursing.forms.must;

import ims.framework.*;
import ims.framework.controls.*;
import ims.framework.enumerations.*;
import ims.framework.utils.RuntimeAnchoring;

public class GenForm extends FormBridge
{
	private static final long serialVersionUID = 1L;

	public boolean canProvideData(IReportSeed[] reportSeeds)
	{
		return new ReportDataProvider(reportSeeds, this.getFormReportFields()).canProvideData();
	}
	public boolean hasData(IReportSeed[] reportSeeds)
	{
		return new ReportDataProvider(reportSeeds, this.getFormReportFields()).hasData();
	}
	public IReportField[] getData(IReportSeed[] reportSeeds)
	{
		return getData(reportSeeds, false);
	}
	public IReportField[] getData(IReportSeed[] reportSeeds, boolean excludeNulls)
	{
		return new ReportDataProvider(reportSeeds, this.getFormReportFields(), excludeNulls).getData();
	}
	public static class ctnMustContainer extends ContainerBridge
	{
		private static final long serialVersionUID = 1L;
		public static class cmbManagementComboBox extends ComboBoxBridge
		{
			private static final long serialVersionUID = 1L;
			
			public void newRow(ims.nursing.vo.lookups.MUSTManagement value, String text)
			{
				super.control.newRow(value, text);
			}
			public void newRow(ims.nursing.vo.lookups.MUSTManagement value, String text, ims.framework.utils.Image image)
			{
				super.control.newRow(value, text, image);
			}
			public void newRow(ims.nursing.vo.lookups.MUSTManagement value, String text, ims.framework.utils.Color textColor)
			{
				super.control.newRow(value, text, textColor);
			}
			public void newRow(ims.nursing.vo.lookups.MUSTManagement value, String text, ims.framework.utils.Image image, ims.framework.utils.Color textColor)
			{
				super.control.newRow(value, text, image, textColor);
			}
			public boolean removeRow(ims.nursing.vo.lookups.MUSTManagement value)
			{
				return super.control.removeRow(value);
			}
			public ims.nursing.vo.lookups.MUSTManagement getValue()
			{
				return (ims.nursing.vo.lookups.MUSTManagement)super.control.getValue();
			}
			public void setValue(ims.nursing.vo.lookups.MUSTManagement value)
			{
				super.control.setValue(value);
			}
		}
	
		public static class GroupHRadioButton extends RadioButtonBridge
		{
			private static final long serialVersionUID = 1L;
			
			protected void setContext(Integer startTabIndex, ims.framework.utils.SizeInfo designSize, ims.framework.utils.SizeInfo runtimeSize)
			{
				if(startTabIndex == null)
					throw new RuntimeException("Invalid startTabIndex ");
				RuntimeAnchoring anchoringHelper1 = new RuntimeAnchoring(designSize, runtimeSize, 345, 42, 72, 16, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				control.addButton(0, anchoringHelper1.getX(), anchoringHelper1.getY(), anchoringHelper1.getWidth(), "Estimated", startTabIndex.intValue() + 6);
				RuntimeAnchoring anchoringHelper2 = new RuntimeAnchoring(designSize, runtimeSize, 264, 42, 72, 16, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				control.addButton(1, anchoringHelper2.getX(), anchoringHelper2.getY(), anchoringHelper2.getWidth(), "Measured", startTabIndex.intValue() + 5);
			}
			public void setText(GroupHEnumeration option, String value)
			{
				if(option != null && option.id >= 0 && value != null)
					control.setText(option.id, value);
			}
			public GroupHEnumeration getValue()
			{
				switch (super.control.getValue())
				{
					case -1: return GroupHEnumeration.None;
					case 0: return GroupHEnumeration.rdoHE;
					case 1: return GroupHEnumeration.rdoHM;
				}
				return null;
			}
			public void setValue(GroupHEnumeration value)
			{
				if(value != null)
					super.control.setValue(value.id);
				else
					super.control.setValue(GroupHEnumeration.None.id);
			}
			public boolean isEnabled(GroupHEnumeration option)
			{
				return super.control.isEnabled(option.id);
			}
			public void setEnabled(GroupHEnumeration option, boolean value)
			{
				super.control.setEnabled(option.id, value);
			}
			public boolean isVisible(GroupHEnumeration option)
			{
				return super.control.isVisible(option.id);
			}
			public void setVisible(GroupHEnumeration option, boolean value)
			{
				super.control.setVisible(option.id, value);
			}
			public void setVisible(boolean value)
			{
				super.control.setVisible(value);
			}
			public void setEnabled(boolean value)
			{
				super.control.setEnabled(value);
			}
		}
		public static class GroupHEnumeration implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			public static GroupHEnumeration None = new GroupHEnumeration(-1);
			public static GroupHEnumeration rdoHE = new GroupHEnumeration(0);
			public static GroupHEnumeration rdoHM = new GroupHEnumeration(1);
			private GroupHEnumeration(int id)
			{
				this.id = id;
			}
			public boolean equals(Object o)
			{
				return this.id == ((GroupHEnumeration)o).id;
			}
			private int id;
		}
	
		public static class GroupWRadioButton extends RadioButtonBridge
		{
			private static final long serialVersionUID = 1L;
			
			protected void setContext(Integer startTabIndex, ims.framework.utils.SizeInfo designSize, ims.framework.utils.SizeInfo runtimeSize)
			{
				if(startTabIndex == null)
					throw new RuntimeException("Invalid startTabIndex ");
				RuntimeAnchoring anchoringHelper3 = new RuntimeAnchoring(designSize, runtimeSize, 345, 18, 72, 16, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				control.addButton(0, anchoringHelper3.getX(), anchoringHelper3.getY(), anchoringHelper3.getWidth(), "Estimated", startTabIndex.intValue() + 3);
				RuntimeAnchoring anchoringHelper4 = new RuntimeAnchoring(designSize, runtimeSize, 264, 18, 72, 16, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
				control.addButton(1, anchoringHelper4.getX(), anchoringHelper4.getY(), anchoringHelper4.getWidth(), "Measured", startTabIndex.intValue() + 2);
			}
			public void setText(GroupWEnumeration option, String value)
			{
				if(option != null && option.id >= 0 && value != null)
					control.setText(option.id, value);
			}
			public GroupWEnumeration getValue()
			{
				switch (super.control.getValue())
				{
					case -1: return GroupWEnumeration.None;
					case 0: return GroupWEnumeration.rdoWE;
					case 1: return GroupWEnumeration.rdoWM;
				}
				return null;
			}
			public void setValue(GroupWEnumeration value)
			{
				if(value != null)
					super.control.setValue(value.id);
				else
					super.control.setValue(GroupWEnumeration.None.id);
			}
			public boolean isEnabled(GroupWEnumeration option)
			{
				return super.control.isEnabled(option.id);
			}
			public void setEnabled(GroupWEnumeration option, boolean value)
			{
				super.control.setEnabled(option.id, value);
			}
			public boolean isVisible(GroupWEnumeration option)
			{
				return super.control.isVisible(option.id);
			}
			public void setVisible(GroupWEnumeration option, boolean value)
			{
				super.control.setVisible(option.id, value);
			}
			public void setVisible(boolean value)
			{
				super.control.setVisible(value);
			}
			public void setEnabled(boolean value)
			{
				super.control.setEnabled(value);
			}
		}
		public static class GroupWEnumeration implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			public static GroupWEnumeration None = new GroupWEnumeration(-1);
			public static GroupWEnumeration rdoWE = new GroupWEnumeration(0);
			public static GroupWEnumeration rdoWM = new GroupWEnumeration(1);
			private GroupWEnumeration(int id)
			{
				this.id = id;
			}
			public boolean equals(Object o)
			{
				return this.id == ((GroupWEnumeration)o).id;
			}
			private int id;
		}
		protected void setContext(Form form, ims.framework.interfaces.IAppForm appForm, Control control, FormLoader loader, ContextMenus contextMenus, Integer startControlID, ims.framework.utils.SizeInfo designSize, ims.framework.utils.SizeInfo runtimeSize, Integer startTabIndex, boolean skipContextValidation) throws Exception
		{
			if(form == null)
				throw new RuntimeException("Invalid form");
			if(appForm == null)
				throw new RuntimeException("Invalid application form");
			if(control == null); // this is to avoid eclipse warning only.
			if(loader == null); // this is to avoid eclipse warning only.
			if(contextMenus == null); // this is to avoid eclipse warning only.
			if(startControlID == null)
				throw new RuntimeException("Invalid startControlID");
			if(designSize == null); // this is to avoid eclipse warning only.
			if(runtimeSize == null); // this is to avoid eclipse warning only.
			if(startTabIndex == null)
				throw new RuntimeException("Invalid startTabIndex");
	
	
			// Custom Controls
			ims.framework.CustomComponent instance1 = factory.getEmptyCustomComponent();
			RuntimeAnchoring anchoringHelper5 = new RuntimeAnchoring(designSize, runtimeSize, 472, 108, 342, 56, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
			ims.framework.FormUiLogic m_customControlAuthForm = loader.loadComponent(102228, appForm, startControlID * 10 + 1000, anchoringHelper5.getSize(), instance1, startTabIndex.intValue() + 12, skipContextValidation);
			//ims.framework.Control m_customControlAuthControl = factory.getControl(CustomComponent.class, new Object[] { control, new Integer(startControlID.intValue() + 1000), new Integer(472), new Integer(108), new Integer(342), new Integer(56), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT, new Integer(startTabIndex.intValue() + 12), m_customControlAuthForm, instance1 } );
			ims.framework.Control m_customControlAuthControl = factory.getControl(CustomComponent.class, new Object[] { control, new Integer(startControlID.intValue() + 1001),  new Integer(anchoringHelper5.getX()), new Integer(anchoringHelper5.getY()), new Integer(anchoringHelper5.getWidth()), new Integer(anchoringHelper5.getHeight()), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT, new Integer(startTabIndex.intValue() + 12), m_customControlAuthForm, instance1, Boolean.FALSE } );
			super.addControl(m_customControlAuthControl);
			Menu[] menus1 = m_customControlAuthForm.getForm().getRegisteredMenus();
			for(int x = 0; x < menus1.length; x++)
			{
				form.registerMenu(menus1[x]);
			}
	
			// Label Controls
			RuntimeAnchoring anchoringHelper6 = new RuntimeAnchoring(designSize, runtimeSize, 430, 18, 40, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1002), new Integer(anchoringHelper6.getX()), new Integer(anchoringHelper6.getY()), new Integer(anchoringHelper6.getWidth()), new Integer(anchoringHelper6.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Score:", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper7 = new RuntimeAnchoring(designSize, runtimeSize, 480, 92, 123, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1003), new Integer(anchoringHelper7.getX()), new Integer(anchoringHelper7.getY()), new Integer(anchoringHelper7.getWidth()), new Integer(anchoringHelper7.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Weight Loss Reason:", new Integer(1), "Unplanned Weight Loss in the past 3-6 months", new Integer(0)}));
			RuntimeAnchoring anchoringHelper8 = new RuntimeAnchoring(designSize, runtimeSize, 480, 18, 83, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1004), new Integer(anchoringHelper8.getX()), new Integer(anchoringHelper8.getY()), new Integer(anchoringHelper8.getWidth()), new Integer(anchoringHelper8.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Management:", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper9 = new RuntimeAnchoring(designSize, runtimeSize, 266, 90, 52, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1005), new Integer(anchoringHelper9.getX()), new Integer(anchoringHelper9.getY()), new Integer(anchoringHelper9.getWidth()), new Integer(anchoringHelper9.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "% UWL:", new Integer(1), "% Unplanned Weight Loss in the past 3-6 months", new Integer(0)}));
			RuntimeAnchoring anchoringHelper10 = new RuntimeAnchoring(designSize, runtimeSize, 266, 66, 32, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1006), new Integer(anchoringHelper10.getX()), new Integer(anchoringHelper10.getY()), new Integer(anchoringHelper10.getWidth()), new Integer(anchoringHelper10.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "BMI:", new Integer(1), "Body Mass Index", new Integer(0)}));
			RuntimeAnchoring anchoringHelper11 = new RuntimeAnchoring(designSize, runtimeSize, 480, 42, 82, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1007), new Integer(anchoringHelper11.getX()), new Integer(anchoringHelper11.getY()), new Integer(anchoringHelper11.getWidth()), new Integer(anchoringHelper11.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Action Taken:", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper12 = new RuntimeAnchoring(designSize, runtimeSize, 90, 166, 636, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1008), new Integer(anchoringHelper12.getX()), new Integer(anchoringHelper12.getY()), new Integer(anchoringHelper12.getWidth()), new Integer(anchoringHelper12.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "* This is the patients' weight when they were healthy, or the weight prior to any unplanned weight loss in the last 3-6 months", new Integer(0), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper13 = new RuntimeAnchoring(designSize, runtimeSize, 8, 120, 196, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1009), new Integer(anchoringHelper13.getX()), new Integer(anchoringHelper13.getY()), new Integer(anchoringHelper13.getWidth()), new Integer(anchoringHelper13.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "no nutritional intake for >5 days?", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper14 = new RuntimeAnchoring(designSize, runtimeSize, 8, 104, 183, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1010), new Integer(anchoringHelper14.getX()), new Integer(anchoringHelper14.getY()), new Integer(anchoringHelper14.getWidth()), new Integer(anchoringHelper14.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "there has been or is likely to be", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper15 = new RuntimeAnchoring(designSize, runtimeSize, 8, 88, 164, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1011), new Integer(anchoringHelper15.getX()), new Integer(anchoringHelper15.getY()), new Integer(anchoringHelper15.getWidth()), new Integer(anchoringHelper15.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Is the patient acutely ill and", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper16 = new RuntimeAnchoring(designSize, runtimeSize, 8, 66, 156, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1012), new Integer(anchoringHelper16.getX()), new Integer(anchoringHelper16.getY()), new Integer(anchoringHelper16.getWidth()), new Integer(anchoringHelper16.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Previous Healthy Weight*:", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper17 = new RuntimeAnchoring(designSize, runtimeSize, 8, 42, 129, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1013), new Integer(anchoringHelper17.getX()), new Integer(anchoringHelper17.getY()), new Integer(anchoringHelper17.getWidth()), new Integer(anchoringHelper17.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Current Height (cms):", new Integer(1), null, new Integer(0)}));
			RuntimeAnchoring anchoringHelper18 = new RuntimeAnchoring(designSize, runtimeSize, 8, 18, 123, 17, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(Label.class, new Object[] { control, new Integer(startControlID.intValue() + 1014), new Integer(anchoringHelper18.getX()), new Integer(anchoringHelper18.getY()), new Integer(anchoringHelper18.getWidth()), new Integer(anchoringHelper18.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT, "Current Weight (kg):", new Integer(1), null, new Integer(0)}));
	
			// TextBox Controls
			RuntimeAnchoring anchoringHelper19 = new RuntimeAnchoring(designSize, runtimeSize, 613, 90, 186, 21, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
			super.addControl(factory.getControl(TextBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1015), new Integer(anchoringHelper19.getX()), new Integer(anchoringHelper19.getY()), new Integer(anchoringHelper19.getWidth()), new Integer(anchoringHelper19.getHeight()), new Integer(startTabIndex.intValue() + 11), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT,Boolean.FALSE, new Integer(255), Boolean.TRUE, Boolean.FALSE, null, null, Boolean.FALSE, ims.framework.enumerations.CharacterCasing.NORMAL, ims.framework.enumerations.TextTrimming.NONE, "", ""}));
			RuntimeAnchoring anchoringHelper20 = new RuntimeAnchoring(designSize, runtimeSize, 613, 40, 186, 46, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
			super.addControl(factory.getControl(TextBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1016), new Integer(anchoringHelper20.getX()), new Integer(anchoringHelper20.getY()), new Integer(anchoringHelper20.getWidth()), new Integer(anchoringHelper20.getHeight()), new Integer(startTabIndex.intValue() + 10), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT,Boolean.TRUE, new Integer(255), Boolean.TRUE, Boolean.FALSE, null, null, Boolean.FALSE, ims.framework.enumerations.CharacterCasing.NORMAL, ims.framework.enumerations.TextTrimming.NONE, "", ""}));
	
			// ComboBox Controls
			RuntimeAnchoring anchoringHelper21 = new RuntimeAnchoring(designSize, runtimeSize, 613, 16, 186, 21, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
			ComboBox m_cmbManagementTemp = (ComboBox)factory.getControl(ComboBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1017), new Integer(anchoringHelper21.getX()), new Integer(anchoringHelper21.getY()), new Integer(anchoringHelper21.getWidth()), new Integer(anchoringHelper21.getHeight()), new Integer(startTabIndex.intValue() + 9), ControlState.DISABLED, ControlState.DISABLED,ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT ,Boolean.TRUE, Boolean.FALSE, SortOrder.NONE, Boolean.FALSE, new Integer(1), null, Boolean.FALSE, new Integer(-1)});
			addControl(m_cmbManagementTemp);
			cmbManagementComboBox cmbManagement = (cmbManagementComboBox)ComboBoxFlyweightFactory.getInstance().createComboBoxBridge(cmbManagementComboBox.class, m_cmbManagementTemp);
			super.addComboBox(cmbManagement);
	
			// CheckBox Controls
			RuntimeAnchoring anchoringHelper22 = new RuntimeAnchoring(designSize, runtimeSize, 192, 88, 40, 16, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(CheckBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1018), new Integer(anchoringHelper22.getX()), new Integer(anchoringHelper22.getY()), new Integer(anchoringHelper22.getWidth()), new Integer(anchoringHelper22.getHeight()), new Integer(startTabIndex.intValue() + 8), ControlState.DISABLED, ControlState.ENABLED,ims.framework.enumerations.ControlAnchoring.TOPLEFT ,"", Boolean.TRUE, null}));
	
			// IntBox Controls
			RuntimeAnchoring anchoringHelper23 = new RuntimeAnchoring(designSize, runtimeSize, 432, 112, 40, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(IntBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1019), new Integer(anchoringHelper23.getX()), new Integer(anchoringHelper23.getY()), new Integer(anchoringHelper23.getWidth()), new Integer(anchoringHelper23.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.FALSE, null, "ORM (Overall Risk of Malnutrition)<br/>Score ", Boolean.FALSE, new Integer(2)}));
			RuntimeAnchoring anchoringHelper24 = new RuntimeAnchoring(designSize, runtimeSize, 432, 88, 40, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(IntBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1020), new Integer(anchoringHelper24.getX()), new Integer(anchoringHelper24.getY()), new Integer(anchoringHelper24.getWidth()), new Integer(anchoringHelper24.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.FALSE, null, "ADE (Acute Disease Effect)<br/>Score ", Boolean.FALSE, new Integer(1)}));
			RuntimeAnchoring anchoringHelper25 = new RuntimeAnchoring(designSize, runtimeSize, 432, 64, 40, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(IntBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1021), new Integer(anchoringHelper25.getX()), new Integer(anchoringHelper25.getY()), new Integer(anchoringHelper25.getWidth()), new Integer(anchoringHelper25.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.FALSE, null, "UWL (Unplanned Weight Loss)<br/>Score", Boolean.FALSE, new Integer(1)}));
			RuntimeAnchoring anchoringHelper26 = new RuntimeAnchoring(designSize, runtimeSize, 432, 40, 40, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(IntBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1022), new Integer(anchoringHelper26.getX()), new Integer(anchoringHelper26.getY()), new Integer(anchoringHelper26.getWidth()), new Integer(anchoringHelper26.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.FALSE, null, "BMI (Body Mass Index)<br/>Score", Boolean.FALSE, new Integer(1)}));
	
			// DecimalBox Controls
			RuntimeAnchoring anchoringHelper27 = new RuntimeAnchoring(designSize, runtimeSize, 318, 88, 48, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(DecimalBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1023), new Integer(anchoringHelper27.getX()), new Integer(anchoringHelper27.getY()), new Integer(anchoringHelper27.getWidth()), new Integer(anchoringHelper27.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.FALSE, new Integer(5), new Integer(2), "The decimal value is invalid. A valid value can have up to 3 digits and up to 2 decimals.", null, Boolean.TRUE}));
			RuntimeAnchoring anchoringHelper28 = new RuntimeAnchoring(designSize, runtimeSize, 318, 64, 48, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(DecimalBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1024), new Integer(anchoringHelper28.getX()), new Integer(anchoringHelper28.getY()), new Integer(anchoringHelper28.getWidth()), new Integer(anchoringHelper28.getHeight()), new Integer(-1), ControlState.DISABLED, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.FALSE, new Integer(5), new Integer(2), "The decimal value is invalid. A valid value can have up to 3 digits and up to 2 decimals.", null, Boolean.FALSE}));
			RuntimeAnchoring anchoringHelper29 = new RuntimeAnchoring(designSize, runtimeSize, 192, 64, 56, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(DecimalBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1025), new Integer(anchoringHelper29.getX()), new Integer(anchoringHelper29.getY()), new Integer(anchoringHelper29.getWidth()), new Integer(anchoringHelper29.getHeight()), new Integer(startTabIndex.intValue() + 7), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.TRUE, new Integer(5), new Integer(2), "The decimal value is invalid. A valid value can have up to 3 digits and up to 2 decimals.", null, Boolean.TRUE}));
			RuntimeAnchoring anchoringHelper30 = new RuntimeAnchoring(designSize, runtimeSize, 192, 40, 56, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(DecimalBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1026), new Integer(anchoringHelper30.getX()), new Integer(anchoringHelper30.getY()), new Integer(anchoringHelper30.getWidth()), new Integer(anchoringHelper30.getHeight()), new Integer(startTabIndex.intValue() + 4), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.TRUE, new Integer(5), new Integer(2), "The decimal value is invalid. A valid value can have up to 3 digits and up to 2 decimals.", null, Boolean.TRUE}));
			RuntimeAnchoring anchoringHelper31 = new RuntimeAnchoring(designSize, runtimeSize, 192, 16, 56, 21, ims.framework.enumerations.ControlAnchoring.TOPLEFT);
			super.addControl(factory.getControl(DecimalBox.class, new Object[] { control, new Integer(startControlID.intValue() + 1027), new Integer(anchoringHelper31.getX()), new Integer(anchoringHelper31.getY()), new Integer(anchoringHelper31.getWidth()), new Integer(anchoringHelper31.getHeight()), new Integer(startTabIndex.intValue() + 1), ControlState.DISABLED, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.TRUE, Boolean.FALSE, Boolean.TRUE, new Integer(5), new Integer(2), "The decimal value is invalid. A valid value can have up to 3 digits and up to 2 decimals.", null, Boolean.TRUE}));
	
			// RadioButton Controls
			RadioButton tmpGroupH = (RadioButton)factory.getControl(RadioButton.class, new Object[] { control, new Integer(startControlID.intValue() + 1028), new Integer(0), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.FALSE});
			super.addControl(tmpGroupH);
			GroupHRadioButton GroupH = (GroupHRadioButton)RadioButtonBridgeFlyweightFactory.getInstance().createRadioButtonBridge(GroupHRadioButton.class, tmpGroupH);
			GroupH.setContext(startTabIndex, designSize, runtimeSize);
			super.addRadioButton(GroupH);
			RadioButton tmpGroupW = (RadioButton)factory.getControl(RadioButton.class, new Object[] { control, new Integer(startControlID.intValue() + 1029), new Integer(0), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFT,Boolean.FALSE});
			super.addControl(tmpGroupW);
			GroupWRadioButton GroupW = (GroupWRadioButton)RadioButtonBridgeFlyweightFactory.getInstance().createRadioButtonBridge(GroupWRadioButton.class, tmpGroupW);
			GroupW.setContext(startTabIndex, designSize, runtimeSize);
			super.addRadioButton(GroupW);
		}
		protected void setCollapsed(boolean value)
		{
			super.container.setCollapsed(value);
		}
		//protected boolean isCollapsed()
		//{
			//return super.container.isCollapsed();
		//}
		protected void setCaption(String value)
		{
			super.container.setCaption(value);
		}
		public ims.core.forms.authoringinfo.IComponent customControlAuth()
		{
			return (ims.core.forms.authoringinfo.IComponent)((ims.framework.cn.controls.CustomComponent)super.getControl(0)).getLogic();
		}
		public void setcustomControlAuthValueChangedEvent(ims.framework.delegates.ValueChanged delegate)
		{
			((CustomComponent)super.getControl(0)).setValueChangedEvent(delegate);
		}
		public void setcustomControlAuthVisible(boolean value)
		{
			((ims.framework.Control)super.getControl(0)).setVisible(value);
		}
		public boolean iscustomControlAuthVisible()
		{
			return ((ims.framework.Control)super.getControl(0)).isVisible();
		}
		public void setcustomControlAuthEnabled(boolean value)
		{
			((ims.framework.Control)super.getControl(0)).setEnabled(value);
		}
		public boolean iscustomControlAuthEnabled()
		{
			return ((ims.framework.Control)super.getControl(0)).isEnabled();
		}
		public Label lbl9()
		{
			return (Label)super.getControl(2);
		}
		public Label lbl1UWL()
		{
			return (Label)super.getControl(4);
		}
		public Label lblBMI()
		{
			return (Label)super.getControl(5);
		}
		public Label lblHeight()
		{
			return (Label)super.getControl(12);
		}
		public Label lblWeight()
		{
			return (Label)super.getControl(13);
		}
		public TextBox txtWeightLossReason()
		{
			return (TextBox)super.getControl(14);
		}
		public TextBox txtAction()
		{
			return (TextBox)super.getControl(15);
		}
		public cmbManagementComboBox cmbManagement()
		{
			return (cmbManagementComboBox)super.getComboBox(0);
		}
		public CheckBox chkAcutelyIll()
		{
			return (CheckBox)super.getControl(17);
		}
		public IntBox intStepTotal()
		{
			return (IntBox)super.getControl(18);
		}
		public IntBox intStep3()
		{
			return (IntBox)super.getControl(19);
		}
		public IntBox intStep2()
		{
			return (IntBox)super.getControl(20);
		}
		public IntBox intStep1()
		{
			return (IntBox)super.getControl(21);
		}
		public DecimalBox decUWL()
		{
			return (DecimalBox)super.getControl(22);
		}
		public DecimalBox decBMI()
		{
			return (DecimalBox)super.getControl(23);
		}
		public DecimalBox decPreviousWeight()
		{
			return (DecimalBox)super.getControl(24);
		}
		public DecimalBox decHeight()
		{
			return (DecimalBox)super.getControl(25);
		}
		public DecimalBox decWeight()
		{
			return (DecimalBox)super.getControl(26);
		}
		public GroupHRadioButton GroupH()
		{
			return (GroupHRadioButton)super.getRadioButton(0);
		}
		public GroupWRadioButton GroupW()
		{
			return (GroupWRadioButton)super.getRadioButton(1);
		}
	}
	public static class grdDetailsRow extends GridRowBridge
	{
		private static final long serialVersionUID = 1L;
		
		protected grdDetailsRow(GridRow row)
		{
			super(row);
		}
		public void showOpened(int column)
		{
			super.row.showOpened(column);
		}
		public void setColDateTimeReadOnly(boolean value)
		{
			super.row.setReadOnly(0, value);
		}
		public boolean isColDateTimeReadOnly()
		{
			return super.row.isReadOnly(0);
		}
		public void showColDateTimeOpened()
		{
			super.row.showOpened(0);
		}
		public void setTooltipForColDateTime(String value)
		{
			super.row.setTooltip(0, value);
		}
		public String getColDateTime()
		{
			return (String)super.row.get(0);
		}
		public void setColDateTime(String value)
		{
			super.row.set(0, value);
		}
		public void setCellColDateTimeTooltip(String value)
		{
			super.row.setTooltip(0, value);
		}
		public void setColStep1ReadOnly(boolean value)
		{
			super.row.setReadOnly(1, value);
		}
		public boolean isColStep1ReadOnly()
		{
			return super.row.isReadOnly(1);
		}
		public void showColStep1Opened()
		{
			super.row.showOpened(1);
		}
		public void setTooltipForColStep1(String value)
		{
			super.row.setTooltip(1, value);
		}
		public String getColStep1()
		{
			return (String)super.row.get(1);
		}
		public void setColStep1(String value)
		{
			super.row.set(1, value);
		}
		public void setCellColStep1Tooltip(String value)
		{
			super.row.setTooltip(1, value);
		}
		public void setColStep2ReadOnly(boolean value)
		{
			super.row.setReadOnly(2, value);
		}
		public boolean isColStep2ReadOnly()
		{
			return super.row.isReadOnly(2);
		}
		public void showColStep2Opened()
		{
			super.row.showOpened(2);
		}
		public void setTooltipForColStep2(String value)
		{
			super.row.setTooltip(2, value);
		}
		public String getColStep2()
		{
			return (String)super.row.get(2);
		}
		public void setColStep2(String value)
		{
			super.row.set(2, value);
		}
		public void setCellColStep2Tooltip(String value)
		{
			super.row.setTooltip(2, value);
		}
		public void setColStep3ReadOnly(boolean value)
		{
			super.row.setReadOnly(3, value);
		}
		public boolean isColStep3ReadOnly()
		{
			return super.row.isReadOnly(3);
		}
		public void showColStep3Opened()
		{
			super.row.showOpened(3);
		}
		public void setTooltipForColStep3(String value)
		{
			super.row.setTooltip(3, value);
		}
		public String getColStep3()
		{
			return (String)super.row.get(3);
		}
		public void setColStep3(String value)
		{
			super.row.set(3, value);
		}
		public void setCellColStep3Tooltip(String value)
		{
			super.row.setTooltip(3, value);
		}
		public void setColTotalReadOnly(boolean value)
		{
			super.row.setReadOnly(4, value);
		}
		public boolean isColTotalReadOnly()
		{
			return super.row.isReadOnly(4);
		}
		public void showColTotalOpened()
		{
			super.row.showOpened(4);
		}
		public void setTooltipForColTotal(String value)
		{
			super.row.setTooltip(4, value);
		}
		public String getColTotal()
		{
			return (String)super.row.get(4);
		}
		public void setColTotal(String value)
		{
			super.row.set(4, value);
		}
		public void setCellColTotalTooltip(String value)
		{
			super.row.setTooltip(4, value);
		}
		public void setColManagementReadOnly(boolean value)
		{
			super.row.setReadOnly(5, value);
		}
		public boolean isColManagementReadOnly()
		{
			return super.row.isReadOnly(5);
		}
		public void showColManagementOpened()
		{
			super.row.showOpened(5);
		}
		public void setTooltipForColManagement(String value)
		{
			super.row.setTooltip(5, value);
		}
		public String getColManagement()
		{
			return (String)super.row.get(5);
		}
		public void setColManagement(String value)
		{
			super.row.set(5, value);
		}
		public void setCellColManagementTooltip(String value)
		{
			super.row.setTooltip(5, value);
		}
		public void setColActionReadOnly(boolean value)
		{
			super.row.setReadOnly(6, value);
		}
		public boolean isColActionReadOnly()
		{
			return super.row.isReadOnly(6);
		}
		public void showColActionOpened()
		{
			super.row.showOpened(6);
		}
		public void setTooltipForColAction(String value)
		{
			super.row.setTooltip(6, value);
		}
		public String getColAction()
		{
			return (String)super.row.get(6);
		}
		public void setColAction(String value)
		{
			super.row.set(6, value);
		}
		public void setCellColActionTooltip(String value)
		{
			super.row.setTooltip(6, value);
		}
		public ims.nursing.vo.MUSTVo getValue()
		{
			return (ims.nursing.vo.MUSTVo)super.row.getValue();
		}
		public void setValue(ims.nursing.vo.MUSTVo value)
		{
			super.row.setValue(value);
		}
	}
	public static class grdDetailsRowCollection extends GridRowCollectionBridge
	{
		private static final long serialVersionUID = 1L;
		
		private grdDetailsRowCollection(GridRowCollection collection)
		{
			super(collection);
		}
		public grdDetailsRow get(int index)
		{
			return new grdDetailsRow(super.collection.get(index));
		}
		public grdDetailsRow newRow()
		{
			return new grdDetailsRow(super.collection.newRow());
		}
		public grdDetailsRow newRow(boolean autoSelect)
		{
			return new grdDetailsRow(super.collection.newRow(autoSelect));
		}
		public grdDetailsRow newRowAt(int index)
		{
			return new grdDetailsRow(super.collection.newRowAt(index));
		}
		public grdDetailsRow newRowAt(int index, boolean autoSelect)
		{
			return new grdDetailsRow(super.collection.newRowAt(index, autoSelect));
		}
	}
	public static class grdDetailsGrid extends GridBridge
	{
		private static final long serialVersionUID = 1L;
		
		private void addStringColumn(String caption, int captionAlignment, int alignment, int width, boolean readOnly, boolean bold, int sortOrder, int maxLength, boolean canGrow, ims.framework.enumerations.CharacterCasing casing)
		{
			super.grid.addStringColumn(caption, captionAlignment, alignment, width, readOnly, bold, sortOrder, maxLength, canGrow, casing);
		}
		public ims.nursing.vo.MUSTVoCollection getValues()
		{
			ims.nursing.vo.MUSTVoCollection listOfValues = new ims.nursing.vo.MUSTVoCollection();
			for(int x = 0; x < this.getRows().size(); x++)
			{
				listOfValues.add(this.getRows().get(x).getValue());
			}
			return listOfValues;
		}
		public ims.nursing.vo.MUSTVo getValue()
		{
			return (ims.nursing.vo.MUSTVo)super.grid.getValue();
		}
		public void setValue(ims.nursing.vo.MUSTVo value)
		{
			super.grid.setValue(value);
		}
		public grdDetailsRow getSelectedRow()
		{
			return super.grid.getSelectedRow() == null ? null : new grdDetailsRow(super.grid.getSelectedRow());
		}
		public int getSelectedRowIndex()
		{
			return super.grid.getSelectedRowIndex();
		}
		public grdDetailsRowCollection getRows()
		{
			return new grdDetailsRowCollection(super.grid.getRows());
		}
		public grdDetailsRow getRowByValue(ims.nursing.vo.MUSTVo value)
		{
			GridRow row = super.grid.getRowByValue(value);
			return row == null?null:new grdDetailsRow(row);
		}
		public void setColDateTimeHeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(0, value);
		}
		public String getColDateTimeHeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(0);
		}
		public void setColStep1HeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(1, value);
		}
		public String getColStep1HeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(1);
		}
		public void setColStep2HeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(2, value);
		}
		public String getColStep2HeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(2);
		}
		public void setColStep3HeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(3, value);
		}
		public String getColStep3HeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(3);
		}
		public void setColTotalHeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(4, value);
		}
		public String getColTotalHeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(4);
		}
		public void setColManagementHeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(5, value);
		}
		public String getColManagementHeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(5);
		}
		public void setColActionHeaderTooltip(String value)
		{
			super.grid.setColumnHeaderTooltip(6, value);
		}
		public String getColActionHeaderTooltip()
		{
			return super.grid.getColumnHeaderTooltip(6);
		}
	}
	private void validateContext(ims.framework.Context context)
	{
		if(context == null)
			return;
		if(!context.isValidContextType(ims.core.vo.PatientShort.class))
			throw new ims.framework.exceptions.CodingRuntimeException("The type 'ims.core.vo.PatientShort' of the global context variable 'Core.PatientShort' is not supported.");
		if(!context.isValidContextType(ims.core.vo.ClinicalContactShortVo.class))
			throw new ims.framework.exceptions.CodingRuntimeException("The type 'ims.core.vo.ClinicalContactShortVo' of the global context variable 'Core.CurrentClinicalContact' is not supported.");
		if(!context.isValidContextType(ims.core.vo.CareContextShortVo.class))
			throw new ims.framework.exceptions.CodingRuntimeException("The type 'ims.core.vo.CareContextShortVo' of the global context variable 'Core.CurrentCareContext' is not supported.");
	}
	private void validateMandatoryContext(Context context)
	{
		if(new ims.framework.ContextVariable("Core.CurrentCareContext", "_cvp_Core.CurrentCareContext").getValueIsNull(context))
			throw new ims.framework.exceptions.FormMandatoryContextMissingException("The required context data 'Core.CurrentCareContext' is not available.");
	}
	public boolean supportsRecordedInError()
	{
		return true;
	}
	public ims.vo.ValueObject getRecordedInErrorVo()
	{
		return this.getLocalContext().getSelectedRecord();
	}
	protected void setContext(FormLoader loader, Form form, ims.framework.interfaces.IAppForm appForm, UIFactory factory, Context context) throws Exception
	{
		setContext(loader, form, appForm, factory, context, Boolean.FALSE, new Integer(0), null, null, new Integer(0));
	}
	protected void setContext(FormLoader loader, Form form, ims.framework.interfaces.IAppForm appForm, UIFactory factory, Context context, Boolean skipContextValidation) throws Exception
	{
		setContext(loader, form, appForm, factory, context, skipContextValidation, new Integer(0), null, null, new Integer(0));
	}
	protected void setContext(FormLoader loader, Form form, ims.framework.interfaces.IAppForm appForm, UIFactory factory, ims.framework.Context context, Boolean skipContextValidation, Integer startControlID, ims.framework.utils.SizeInfo runtimeSize, ims.framework.Control control, Integer startTabIndex) throws Exception
	{
		if(loader == null); // this is to avoid eclipse warning only.
		if(factory == null); // this is to avoid eclipse warning only.
		if(runtimeSize == null); // this is to avoid eclipse warning only.
		if(appForm == null)
			throw new RuntimeException("Invalid application form");
		if(startControlID == null)
			throw new RuntimeException("Invalid startControlID");
		if(control == null); // this is to avoid eclipse warning only.
		if(startTabIndex == null)
			throw new RuntimeException("Invalid startTabIndex");
		this.context = context;
		this.componentIdentifier = startControlID.toString();
		this.formInfo = form.getFormInfo();
		this.globalContext = new GlobalContext(context);
	
		if(skipContextValidation == null || !skipContextValidation.booleanValue())
		{
			validateContext(context);
			validateMandatoryContext(context);
		}
	
		super.setContext(form);

		ims.framework.utils.SizeInfo designSize = new ims.framework.utils.SizeInfo(848, 632);
		if(runtimeSize == null)
			runtimeSize = designSize;
		form.setWidth(runtimeSize.getWidth());
		form.setHeight(runtimeSize.getHeight());
		super.setGlobalContext(ContextBridgeFlyweightFactory.getInstance().create(GlobalContextBridge.class, context, false));
		super.setLocalContext(new LocalContext(context, form.getFormInfo(), componentIdentifier));

		// Context Menus
		contextMenus = new ContextMenus();
		contextMenus.contextMenuGenericGrid = factory.createMenu(startControlID.intValue() + 1);
		contextMenus.contextMenuGenericGridAddItem = factory.createMenuItem(startControlID.intValue() + 1, "New", true, false, new Integer(102179), true, false);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridAddItem);
		contextMenus.contextMenuGenericGridUpdateItem = factory.createMenuItem(startControlID.intValue() + 2, "Edit", true, false, new Integer(102150), true, false);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridUpdateItem);
		contextMenus.contextMenuGenericGridRemoveItem = factory.createMenuItem(startControlID.intValue() + 3, "Remove", true, false, new Integer(102148), true, false);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridRemoveItem);
		contextMenus.contextMenuGenericGridViewItem = factory.createMenuItem(startControlID.intValue() + 4, "View", true, false, new Integer(102223), false, true);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridViewItem);
		contextMenus.contextMenuGenericGridMoveUpItem = factory.createMenuItem(startControlID.intValue() + 5, "Move Up", true, false, new Integer(102197), true, true);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridMoveUpItem);
		contextMenus.contextMenuGenericGridMoveDownItem = factory.createMenuItem(startControlID.intValue() + 6, "Move Down", true, false, new Integer(102198), true, false);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridMoveDownItem);
		contextMenus.contextMenuGenericGridReplaceItem = factory.createMenuItem(startControlID.intValue() + 7, "Replace", true, false, new Integer(102255), true, true);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridReplaceItem);
		contextMenus.contextMenuGenericGridConfirmItem = factory.createMenuItem(startControlID.intValue() + 8, "Confirm", true, false, new Integer(102209), true, false);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridConfirmItem);
		contextMenus.contextMenuGenericGridEDIT_VIEW_ICP_ACTIONSItem = factory.createMenuItem(startControlID.intValue() + 9, "Edit/View ICP action(s)", true, false, new Integer(118107), true, false);
		contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridEDIT_VIEW_ICP_ACTIONSItem);
		contextMenus.contextMenuGenericGridCOPYItem = factory.createMenuItem(startControlID.intValue() + 10, "Copy", true, false, new Integer(102222), true, false);
		if(factory.getUIEngine().getLoggedInRole().hasMenuActionRight(appForm, new ims.framework.MenuAction(10003)))
			contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridCOPYItem);
		contextMenus.contextMenuGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem = factory.createMenuItem(startControlID.intValue() + 11, "Remove Unverified NHS Number", true, false, new Integer(102300), true, false);
		if(factory.getUIEngine().getLoggedInRole().hasMenuActionRight(appForm, new ims.framework.MenuAction(10004)))
			contextMenus.contextMenuGenericGrid.add(contextMenus.contextMenuGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem);
		form.registerMenu(contextMenus.contextMenuGenericGrid);


		// Panel Controls
		RuntimeAnchoring anchoringHelper32 = new RuntimeAnchoring(designSize, runtimeSize, 8, 8, 832, 32, ims.framework.enumerations.ControlAnchoring.TOPLEFTRIGHT);
		super.addControl(factory.getControl(Panel.class, new Object[] { control, new Integer(startControlID.intValue() + 1030), new Integer(anchoringHelper32.getX()), new Integer(anchoringHelper32.getY()), new Integer(anchoringHelper32.getWidth()), new Integer(anchoringHelper32.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.TOPLEFTRIGHT,"Malnutrition Universal Screening Tool (MUST) ", new Integer(1), ""}));

		// Container Clasess
		RuntimeAnchoring anchoringHelper33 = new RuntimeAnchoring(designSize, runtimeSize, 16, 384, 816, 200, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT);
		Container m_ctnMust = (Container)factory.getControl(Container.class, new Object[] { control, new Integer(startControlID.intValue() + 1031), new Integer(anchoringHelper33.getX()), new Integer(anchoringHelper33.getY()), new Integer(anchoringHelper33.getWidth()), new Integer(anchoringHelper33.getHeight()), ControlState.UNKNOWN, ControlState.UNKNOWN, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFTRIGHT, "Details", new Boolean(true)});
		addControl(m_ctnMust);
		ctnMustContainer ctnMust = (ctnMustContainer)ContainerBridgeFlyweightFactory.getInstance().createContainerBridge(ctnMustContainer.class, m_ctnMust, factory);
		ims.framework.utils.SizeInfo m_ctnMustDesignSize = new ims.framework.utils.SizeInfo(816, 200);
		ims.framework.utils.SizeInfo m_ctnMustRuntimeSize = new ims.framework.utils.SizeInfo(anchoringHelper33.getWidth(), anchoringHelper33.getHeight());
		ctnMust.setContext(form, appForm, m_ctnMust, loader, contextMenus, startControlID, m_ctnMustDesignSize, m_ctnMustRuntimeSize, startTabIndex, skipContextValidation);
		super.addContainer(ctnMust);

		// Button Controls
		RuntimeAnchoring anchoringHelper34 = new RuntimeAnchoring(designSize, runtimeSize, 16, 592, 75, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1032), new Integer(anchoringHelper34.getX()), new Integer(anchoringHelper34.getY()), new Integer(anchoringHelper34.getWidth()), new Integer(anchoringHelper34.getHeight()), new Integer(startTabIndex.intValue() + 15), ControlState.ENABLED, ControlState.HIDDEN, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT, "New", Boolean.TRUE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper35 = new RuntimeAnchoring(designSize, runtimeSize, 96, 592, 75, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1033), new Integer(anchoringHelper35.getX()), new Integer(anchoringHelper35.getY()), new Integer(anchoringHelper35.getWidth()), new Integer(anchoringHelper35.getHeight()), new Integer(startTabIndex.intValue() + 16), ControlState.UNKNOWN, ControlState.HIDDEN, ims.framework.enumerations.ControlAnchoring.BOTTOMLEFT, "Edit", Boolean.TRUE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper36 = new RuntimeAnchoring(designSize, runtimeSize, 677, 592, 75, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1034), new Integer(anchoringHelper36.getX()), new Integer(anchoringHelper36.getY()), new Integer(anchoringHelper36.getWidth()), new Integer(anchoringHelper36.getHeight()), new Integer(startTabIndex.intValue() + 17), ControlState.HIDDEN, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "Save", Boolean.FALSE, null, Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));
		RuntimeAnchoring anchoringHelper37 = new RuntimeAnchoring(designSize, runtimeSize, 757, 592, 75, 23, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT);
		super.addControl(factory.getControl(Button.class, new Object[] { control, new Integer(startControlID.intValue() + 1035), new Integer(anchoringHelper37.getX()), new Integer(anchoringHelper37.getY()), new Integer(anchoringHelper37.getWidth()), new Integer(anchoringHelper37.getHeight()), new Integer(startTabIndex.intValue() + 18), ControlState.HIDDEN, ControlState.ENABLED, ims.framework.enumerations.ControlAnchoring.BOTTOMRIGHT, "Cancel", Boolean.FALSE, null, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, null, ims.framework.utils.Color.Default, ims.framework.utils.Color.Default }));

		// Grid Controls
		RuntimeAnchoring anchoringHelper38 = new RuntimeAnchoring(designSize, runtimeSize, 16, 48, 816, 328, ims.framework.enumerations.ControlAnchoring.ALL);
		Grid m_grdDetailsTemp = (Grid)factory.getControl(Grid.class, new Object[] { control, new Integer(startControlID.intValue() + 1036), new Integer(anchoringHelper38.getX()), new Integer(anchoringHelper38.getY()), new Integer(anchoringHelper38.getWidth()), new Integer(anchoringHelper38.getHeight()), new Integer(-1), ControlState.READONLY, ControlState.DISABLED, ims.framework.enumerations.ControlAnchoring.ALL,Boolean.TRUE, Boolean.FALSE, new Integer(24), Boolean.TRUE, contextMenus.contextMenuGenericGrid, Boolean.FALSE, Boolean.FALSE, new Integer(0), null, Boolean.TRUE, Boolean.TRUE});
		addControl(m_grdDetailsTemp);
		grdDetailsGrid grdDetails = (grdDetailsGrid)GridFlyweightFactory.getInstance().createGridBridge(grdDetailsGrid.class, m_grdDetailsTemp);
		grdDetails.addStringColumn("Recording Date/Time", 0, 0, 200, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		grdDetails.addStringColumn("Step 1 (BMI)", 1, 1, 100, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		grdDetails.addStringColumn("Step 2 (UWL)", 1, 1, 100, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		grdDetails.addStringColumn("Step 3 (ADE)", 1, 1, 100, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		grdDetails.addStringColumn("Total (ORM)", 1, 1, 80, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		grdDetails.addStringColumn("Management", 0, 0, 100, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		grdDetails.addStringColumn("Action Taken", 0, 0, -1, true, false, 0, 0, true, ims.framework.enumerations.CharacterCasing.NORMAL);
		super.addGrid(grdDetails);
	}


	public ctnMustContainer ctnMust()
	{
		return (ctnMustContainer)super.getContainer(0);
	}
	public Button btnNew()
	{
		return (Button)super.getControl(2);
	}
	public Button btnUpdate()
	{
		return (Button)super.getControl(3);
	}
	public Button btnSave()
	{
		return (Button)super.getControl(4);
	}
	public Button btnCancel()
	{
		return (Button)super.getControl(5);
	}
	public grdDetailsGrid grdDetails()
	{
		return (grdDetailsGrid)super.getGrid(0);
	}
	public GlobalContext getGlobalContext()
	{
		return this.globalContext;
	}
	public static class GlobalContextBridge extends ContextBridge
	{
		private static final long serialVersionUID = 1L;
	}
	public LocalContext getLocalContext()
	{
		return (LocalContext)super.getLocalCtx();
	}
	public class LocalContext extends ContextBridge
	{
		private static final long serialVersionUID = 1L;
		
		public LocalContext(Context context, ims.framework.FormInfo formInfo, String componentIdentifier)
		{
			super.setContext(context);
			String prefix = formInfo.getLocalVariablesPrefix();
			cxl_SelectedRecord = new ims.framework.ContextVariable("SelectedRecord", prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier + "");
		}
		
		public boolean getSelectedRecordIsNotNull()
		{
			return !cxl_SelectedRecord.getValueIsNull(context);
		}
		public ims.nursing.vo.MUSTVo getSelectedRecord()
		{
			return (ims.nursing.vo.MUSTVo)cxl_SelectedRecord.getValue(context);
		}
		public void setSelectedRecord(ims.nursing.vo.MUSTVo value)
		{
			cxl_SelectedRecord.setValue(context, value);
		}
		private ims.framework.ContextVariable cxl_SelectedRecord = null;
	}

	public final class ContextMenus implements java.io.Serializable
	{
		private static final long serialVersionUID = 1L;
		public final class GenericGrid implements java.io.Serializable
		{
			private static final long serialVersionUID = 1L;
			public static final int Add = 1;
			public static final int Update = 2;
			public static final int Remove = 3;
			public static final int View = 4;
			public static final int MoveUp = 5;
			public static final int MoveDown = 6;
			public static final int Replace = 7;
			public static final int Confirm = 8;
			public static final int EDIT_VIEW_ICP_ACTIONS = 9;
			public static final int COPY = 10;
			public static final int REMOVE_UNVERIFIED_NHS_NUMBER = 11;
		}
		public void disableAllGenericGridMenuItems()
		{
			this.contextMenuGenericGridAddItem.setEnabled(false);
			this.contextMenuGenericGridUpdateItem.setEnabled(false);
			this.contextMenuGenericGridRemoveItem.setEnabled(false);
			this.contextMenuGenericGridViewItem.setEnabled(false);
			this.contextMenuGenericGridMoveUpItem.setEnabled(false);
			this.contextMenuGenericGridMoveDownItem.setEnabled(false);
			this.contextMenuGenericGridReplaceItem.setEnabled(false);
			this.contextMenuGenericGridConfirmItem.setEnabled(false);
			this.contextMenuGenericGridEDIT_VIEW_ICP_ACTIONSItem.setEnabled(false);
			this.contextMenuGenericGridCOPYItem.setEnabled(false);
			this.contextMenuGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem.setEnabled(false);
		}
		public void hideAllGenericGridMenuItems()
		{
			this.contextMenuGenericGridAddItem.setVisible(false);
			this.contextMenuGenericGridUpdateItem.setVisible(false);
			this.contextMenuGenericGridRemoveItem.setVisible(false);
			this.contextMenuGenericGridViewItem.setVisible(false);
			this.contextMenuGenericGridMoveUpItem.setVisible(false);
			this.contextMenuGenericGridMoveDownItem.setVisible(false);
			this.contextMenuGenericGridReplaceItem.setVisible(false);
			this.contextMenuGenericGridConfirmItem.setVisible(false);
			this.contextMenuGenericGridEDIT_VIEW_ICP_ACTIONSItem.setVisible(false);
			this.contextMenuGenericGridCOPYItem.setVisible(false);
			this.contextMenuGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem.setVisible(false);
		}
		private Menu contextMenuGenericGrid;
		public MenuItem getGenericGridAddItem()
		{
			return this.contextMenuGenericGridAddItem;
		}
		private MenuItem contextMenuGenericGridAddItem;
		public MenuItem getGenericGridUpdateItem()
		{
			return this.contextMenuGenericGridUpdateItem;
		}
		private MenuItem contextMenuGenericGridUpdateItem;
		public MenuItem getGenericGridRemoveItem()
		{
			return this.contextMenuGenericGridRemoveItem;
		}
		private MenuItem contextMenuGenericGridRemoveItem;
		public MenuItem getGenericGridViewItem()
		{
			return this.contextMenuGenericGridViewItem;
		}
		private MenuItem contextMenuGenericGridViewItem;
		public MenuItem getGenericGridMoveUpItem()
		{
			return this.contextMenuGenericGridMoveUpItem;
		}
		private MenuItem contextMenuGenericGridMoveUpItem;
		public MenuItem getGenericGridMoveDownItem()
		{
			return this.contextMenuGenericGridMoveDownItem;
		}
		private MenuItem contextMenuGenericGridMoveDownItem;
		public MenuItem getGenericGridReplaceItem()
		{
			return this.contextMenuGenericGridReplaceItem;
		}
		private MenuItem contextMenuGenericGridReplaceItem;
		public MenuItem getGenericGridConfirmItem()
		{
			return this.contextMenuGenericGridConfirmItem;
		}
		private MenuItem contextMenuGenericGridConfirmItem;
		public MenuItem getGenericGridEDIT_VIEW_ICP_ACTIONSItem()
		{
			return this.contextMenuGenericGridEDIT_VIEW_ICP_ACTIONSItem;
		}
		private MenuItem contextMenuGenericGridEDIT_VIEW_ICP_ACTIONSItem;
		public ReadOnlyMenuItem getGenericGridCOPYItem()
		{
			return this.contextMenuGenericGridCOPYItem;
		}
		private MenuItem contextMenuGenericGridCOPYItem;
		public ReadOnlyMenuItem getGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem()
		{
			return this.contextMenuGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem;
		}
		private MenuItem contextMenuGenericGridREMOVE_UNVERIFIED_NHS_NUMBERItem;
	}

	private ContextMenus contextMenus;
	public ContextMenus getContextMenus()
	{
		return this.contextMenus;
	}

	private IReportField[] getFormReportFields()
	{
		if(this.context == null)
			return null;
		if(this.reportFields == null)
			this.reportFields = new ReportFields(this.context, this.formInfo, this.componentIdentifier).getReportFields();
		return this.reportFields;
	}
	private class ReportFields
	{
		public ReportFields(Context context, ims.framework.FormInfo formInfo, String componentIdentifier)
		{
			this.context = context;
			this.formInfo = formInfo;
			this.componentIdentifier = componentIdentifier;
		}
		public IReportField[] getReportFields()
		{
			String prefix = formInfo.getLocalVariablesPrefix();
			IReportField[] fields = new IReportField[156];
			fields[0] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ID", "ID_Patient");
			fields[1] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-SEX", "Sex");
			fields[2] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DOB", "Dob");
			fields[3] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DOD", "Dod");
			fields[4] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-RELIGION", "Religion");
			fields[5] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ISACTIVE", "IsActive");
			fields[6] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ETHNICORIGIN", "EthnicOrigin");
			fields[7] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-MARITALSTATUS", "MaritalStatus");
			fields[8] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-SCN", "SCN");
			fields[9] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-SOURCEOFINFORMATION", "SourceOfInformation");
			fields[10] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-TIMEOFDEATH", "TimeOfDeath");
			fields[11] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ISQUICKREGISTRATIONPATIENT", "IsQuickRegistrationPatient");
			fields[12] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-CURRENTRESPONSIBLECONSULTANT", "CurrentResponsibleConsultant");
			fields[13] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DEMENTIABREACHDATETIME", "DementiaBreachDateTime");
			fields[14] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-DEMENTIAWORKLISTSTATUS", "DementiaWorklistStatus");
			fields[15] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-MRNSTATUS", "MRNStatus");
			fields[16] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-HASSCANNEDCASENOTEFOLDERS", "HasScannedCaseNoteFolders");
			fields[17] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-ISCONFIDENTIAL", "IsConfidential");
			fields[18] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-TIMEOFBIRTH", "TimeOfBirth");
			fields[19] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientShort", "BO-1001100000-PATIENTCATEGORY", "PatientCategory");
			fields[20] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientFilter", "BO-1001100000-ID", "ID_Patient");
			fields[21] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientFilter", "BO-1001100000-SEX", "Sex");
			fields[22] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientFilter", "BO-1001100000-DOB", "Dob");
			fields[23] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-ID", "ID_ClinicalContact");
			fields[24] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-SPECIALTY", "Specialty");
			fields[25] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-CONTACTTYPE", "ContactType");
			fields[26] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-STARTDATETIME", "StartDateTime");
			fields[27] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-ENDDATETIME", "EndDateTime");
			fields[28] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-CARECONTEXT", "CareContext");
			fields[29] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentClinicalContact", "BO-1004100003-ISCLINICALNOTECREATED", "IsClinicalNoteCreated");
			fields[30] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ID", "ID_Hcp");
			fields[31] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-HCPTYPE", "HcpType");
			fields[32] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISACTIVE", "IsActive");
			fields[33] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISHCPARESPONSIBLEHCP", "IsHCPaResponsibleHCP");
			fields[34] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISARESPONSIBLEEDCLINICIAN", "IsAResponsibleEDClinician");
			fields[35] = new ims.framework.ReportField(this.context, "_cvp_Core.RecordingHCP", "BO-1006100000-ISHCPAENDOSCOPIST", "IsHCPaEndoscopist");
			fields[36] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ID", "ID_CareContext");
			fields[37] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-CONTEXT", "Context");
			fields[38] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ORDERINGHOSPITAL", "OrderingHospital");
			fields[39] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ESTIMATEDDISCHARGEDATE", "EstimatedDischargeDate");
			fields[40] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-STARTDATETIME", "StartDateTime");
			fields[41] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-ENDDATETIME", "EndDateTime");
			fields[42] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-LOCATIONTYPE", "LocationType");
			fields[43] = new ims.framework.ReportField(this.context, "_cvp_Core.CurrentCareContext", "BO-1004100019-RESPONSIBLEHCP", "ResponsibleHCP");
			fields[44] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-ID", "ID_EpisodeOfCare");
			fields[45] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-CARESPELL", "CareSpell");
			fields[46] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-SPECIALTY", "Specialty");
			fields[47] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-RELATIONSHIP", "Relationship");
			fields[48] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-STARTDATE", "StartDate");
			fields[49] = new ims.framework.ReportField(this.context, "_cvp_Core.EpisodeofCareShort", "BO-1004100018-ENDDATE", "EndDate");
			fields[50] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ID", "ID_ClinicalNotes");
			fields[51] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-CLINICALNOTE", "ClinicalNote");
			fields[52] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-NOTETYPE", "NoteType");
			fields[53] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-DISCIPLINE", "Discipline");
			fields[54] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-CLINICALCONTACT", "ClinicalContact");
			fields[55] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ISDERIVEDNOTE", "IsDerivedNote");
			fields[56] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-FORREVIEW", "ForReview");
			fields[57] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-FORREVIEWDISCIPLINE", "ForReviewDiscipline");
			fields[58] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-REVIEWINGDATETIME", "ReviewingDateTime");
			fields[59] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ISCORRECTED", "IsCorrected");
			fields[60] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-ISTRANSCRIBED", "IsTranscribed");
			fields[61] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-SOURCEOFNOTE", "SourceOfNote");
			fields[62] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-RECORDINGDATETIME", "RecordingDateTime");
			fields[63] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-INHOSPITALREPORT", "InHospitalReport");
			fields[64] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-CARECONTEXT", "CareContext");
			fields[65] = new ims.framework.ReportField(this.context, "_cvp_Clinical.CurrentClinicalNote", "BO-1011100000-NOTECLASSIFICATION", "NoteClassification");
			fields[66] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-ID", "ID_NAESReferral");
			fields[67] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-DATEREFERRALRECEIVED", "DateReferralReceived");
			fields[68] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-DATEOFSURGERY", "DateOfSurgery");
			fields[69] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERRINGHOSPITAL", "ReferringHospital");
			fields[70] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERRINGDOCTOR", "ReferringDoctor");
			fields[71] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERRALREASON", "ReferralReason");
			fields[72] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-SECONDARYSURGERY", "SecondarySurgery");
			fields[73] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-UNDERLYINGREASON", "UnderlyingReason");
			fields[74] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-AFFECTEDEYE", "AffectedEye");
			fields[75] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-IMPLANT", "Implant");
			fields[76] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-IMPLANTTYPE", "ImplantType");
			fields[77] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-INTERPRETERREQUIRED", "InterpreterRequired");
			fields[78] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-LANGUAGE", "Language");
			fields[79] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-LANGUAGEIFOTHER", "LanguageIfOther");
			fields[80] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-REFERREDBY", "ReferredBy");
			fields[81] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-_6WEEKKPI", "SixWeekKPI");
			fields[82] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-_3WEEKKPI", "ThreeWeekKPI");
			fields[83] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-PREFERREDCLINIC", "PreferredClinic");
			fields[84] = new ims.framework.ReportField(this.context, "_cvp_Naes.Referral", "BO-1097100004-NOTES", "Notes");
			fields[85] = new ims.framework.ReportField(this.context, "_cvp_STHK.AvailableBedsListFilter", "BO-1014100009-ID", "ID_BedSpaceState");
			fields[86] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingEmergencyAdmissionsFilter", "BO-1014100011-ID", "ID_PendingEmergencyAdmission");
			fields[87] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingEmergencyAdmissionsFilter", "BO-1014100011-ADMISSIONSTATUS", "AdmissionStatus");
			fields[88] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingDischargesListFilter", "BO-1014100000-ID", "ID_InpatientEpisode");
			fields[89] = new ims.framework.ReportField(this.context, "_cvp_STHK.PendingDischargesListFilter", "BO-1014100000-ESTDISCHARGEDATE", "EstDischargeDate");
			fields[90] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-ID", "ID_ClinicalNotes");
			fields[91] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-FORREVIEW", "ForReview");
			fields[92] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-FORREVIEWDISCIPLINE", "ForReviewDiscipline");
			fields[93] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-NOTECLASSIFICATION", "NoteClassification");
			fields[94] = new ims.framework.ReportField(this.context, "_cvp_Clinical.ExtendedClinicalNotesListFilter", "BO-1011100000-CARECONTEXT", "CareContext");
			fields[95] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-ID", "ID_ClinicalNotes");
			fields[96] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-NOTETYPE", "NoteType");
			fields[97] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-FORREVIEW", "ForReview");
			fields[98] = new ims.framework.ReportField(this.context, "_cvp_Core.PatientClinicalNotesSearchCriteria", "BO-1011100000-FORREVIEWDISCIPLINE", "ForReviewDiscipline");
			fields[99] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-ID", "ID_ObservationForm");
			fields[100] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-FORMTYPE", "FormType");
			fields[101] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-DETAILS", "Details");
			fields[102] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-DATETIMESTART", "DateTimeStart");
			fields[103] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-DATETIMESTOP", "DateTimeStop");
			fields[104] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-ISSTOPPED", "IsStopped");
			fields[105] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-CARECONTEXT", "CareContext");
			fields[106] = new ims.framework.ReportField(this.context, "_cvp_Nursing.ObservationFormsSearchCriteria", "BO-1011100002-CLINICALCONTACT", "ClinicalContact");
			fields[107] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesAdmSearchCriteia", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[108] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesAdmSearchCriteia", "BO-1072100034-TYPE", "Type");
			fields[109] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesAdmSearchCriteia", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[110] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesDisSearchCriteria", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[111] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesDisSearchCriteria", "BO-1072100034-TYPE", "Type");
			fields[112] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesDisSearchCriteria", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[113] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesOPDSearchCriteria", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[114] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesOPDSearchCriteria", "BO-1072100034-TYPE", "Type");
			fields[115] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesOPDSearchCriteria", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[116] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesPatSearchCriteria", "BO-1072100034-ID", "ID_MedicationOverview");
			fields[117] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesPatSearchCriteria", "BO-1072100034-TYPE", "Type");
			fields[118] = new ims.framework.ReportField(this.context, "_cvp_Clinical.MedMultipleDosesPatSearchCriteria", "BO-1072100034-CARECONTEXT", "CareContext");
			fields[119] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-ID", "ID_Urinalysis");
			fields[120] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-NOABNORMALITYDETECTED", "NoAbnormalityDetected");
			fields[121] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-LEUCOCYTES", "Leucocytes");
			fields[122] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-PROTEIN", "Protein");
			fields[123] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-BLOOD", "Blood");
			fields[124] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-KETONES", "Ketones");
			fields[125] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-ASCORBICACID", "AscorbicAcid");
			fields[126] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-GLUCOSE", "Glucose");
			fields[127] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-BILIRUBIN", "Bilirubin");
			fields[128] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-UROBILINOGEN", "Urobilinogen");
			fields[129] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-NITRATE", "Nitrate");
			fields[130] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-PH", "PH");
			fields[131] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-SPECIFICGRAVITY", "SpecificGravity");
			fields[132] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-NOSAMPLE", "NoSample");
			fields[133] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-ISACTIVE", "IsActive");
			fields[134] = new ims.framework.ReportField(this.context, "_cvp_Core.UrinalysisSearchCriteria", "BO-1022100012-CARECONTEXT", "CareContext");
			fields[135] = new ims.framework.ReportField(this.context, "_cvp_Core.PDSPatientFilterSearchCriteria", "BO-1001100000-ID", "ID_Patient");
			fields[136] = new ims.framework.ReportField(this.context, "_cvp_Core.PDSPatientFilterSearchCriteria", "BO-1001100000-SEX", "Sex");
			fields[137] = new ims.framework.ReportField(this.context, "_cvp_Core.PDSPatientFilterSearchCriteria", "BO-1001100000-DOB", "Dob");
			fields[138] = new ims.framework.ReportField(this.context, "_cvp_Core.LocalPatientFilterSearchCriteria", "BO-1001100000-ID", "ID_Patient");
			fields[139] = new ims.framework.ReportField(this.context, "_cvp_Core.LocalPatientFilterSearchCriteria", "BO-1001100000-SEX", "Sex");
			fields[140] = new ims.framework.ReportField(this.context, "_cvp_Core.LocalPatientFilterSearchCriteria", "BO-1001100000-DOB", "Dob");
			fields[141] = new ims.framework.ReportField(this.context, "_cvp_Core.PasEvent", "BO-1014100003-ID", "ID_PASEvent");
			fields[142] = new ims.framework.ReportField(this.context, "_cvp_Correspondence.CorrespondenceDetails", "BO-1052100001-ID", "ID_CorrespondenceDetails");
			fields[143] = new ims.framework.ReportField(this.context, "_cvp_RefMan.CatsReferral", "BO-1004100035-ID", "ID_CatsReferral");
			fields[144] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-ID", "ID_MUST");
			fields[145] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-CLINICALCONTACT", "ClinicalContact");
			fields[146] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-CARECONTEXT", "CareContext");
			fields[147] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-PREVIOUSHEALTHYWEIGHT", "PreviousHealthyWeight");
			fields[148] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-ACUTELYILL", "AcutelyIll");
			fields[149] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-ACTIONTAKEN", "ActionTaken");
			fields[150] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-WEIGHTLOSSREASON", "WeightLossReason");
			fields[151] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-MANAGEMENT", "Management");
			fields[152] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-BMISCORE", "BMIScore");
			fields[153] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-UWLSCORE", "UWLScore");
			fields[154] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-ADESCORE", "ADEScore");
			fields[155] = new ims.framework.ReportField(this.context, prefix + "_lv_Nursing.MUST.__internal_x_context__SelectedRecord_" + componentIdentifier, "BO-1016100016-ORMSCORE", "ORMScore");
			return fields;
		}
		protected Context context = null;
		protected ims.framework.FormInfo formInfo;
		protected String componentIdentifier;
	}
	public String getUniqueIdentifier()
	{
		return null;
	}
	private Context context = null;
	private ims.framework.FormInfo formInfo = null;
	private String componentIdentifier;
	private GlobalContext globalContext = null;
	private IReportField[] reportFields = null;
}
