Technical Blog Post
Abstract
Cannot select a future date on Display From field
Body
After applying TPAE IFix for TPAE 7.5.0.8 and newer, user cannot select a future date on Display From field while modifying person availability in People(Oil)/(HSE)/(SP) application.
Steps to replicate:
1. Apply the fix for APAR IV75236 for TPAE 7.5.0.8 or newer.
2. Go to People(Oil)/(HSE)/(SP) application.
3. Select any record.
4. Select Action > Modify Person Availability.
5. On Display From field, select any future date.
At this point the error "BMXAA3329E - The end date should be greater than or equal to the start date." is thrown.
Resolving the problem:
1. Login to Maximo as an Administrator.
2. Go to System Configuration > Platform Configuration > Application Designer.
3. Bring up the People(Oil)/(HSE)/(SP) application.
4. Click on Export Application Definition from the toolbar.
5. Save the xml as for example, backup.xml so you will have a backup of your current xml.
6. Save the xml again as for example, revised.xml.
7. Open the revised.xml using a xml editor and make the changes described below.
8. Save the changes.
9. Go back to Application Designer.
10. Bring up the People(Oil)/(HSE)/(SP) application.
11. Click on Import Application Definition from the toolbar.
12. Browser for the file revised.xml and click OK.
13. Save
Replace this dialog:
<dialog id="persavail" label="Modify Person Availability" savemode="ONLOADUNLOAD" >
<section id="v2-personavail_grid1" border="true" >
<multiparttextbox id="v2-personavail_grid1_1" dataattribute="personid" descdataattribute="displayname" descinputmode="readonly" />
<multiparttextbox id="v2-personavail_grid1_2" dataattribute="primarypersoncal.calnum" inputmode="readonly" descdataattribute="primarypersoncal.shiftnum" descinputmode="readonly" />
<textbox id="v2-personavail_grid1_3" dataattribute="displayfrom" lookup="datelookup" ondatachange="resetchildren"/>
</section>
<table id="v2-personavail_modify" label="Work Dates" selectmode="multiple" relationship="WORKPERIOD" orderby="workdate asc" beanclass="psdi.webclient.beans.common.WorkperiodBean" inputmode="readonly">
<tablebody id="v2-personavail_modify_tablebody" displayrowsperpage="20" filterable="false" >
<tablecol id="v2-personavail_modify_tablebody_0" type="event" mxevent="toggleselectrow" sortable="false" filterable="false" hidden="false" />
<tablecol id="v2-personavail_modify_tablebody_1" dataattribute="workdate" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_2" dataattribute="day" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_3" dataattribute="starttime" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_4" dataattribute="endtime" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_5" dataattribute="workhours" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_6" dataattribute="notes" inputmode="readonly"/>
</tablebody>
<buttongroup id="v2t2-personavail_modify_8">
<pushbutton default="true" id="2t2-personavail_modify_9" label="Modify" mxevent="DodifyDays" />
</buttongroup>
</table>
<table id="v2t2-personavail_modify" label="Modify Work Dates" relationship="MODAVAIL" orderby="workdate asc" beanclass="psdi.webclient.beans.common.ModavialBean" >
<tablebody id="v2t2-personavail_modify_tablebody" displayrowsperpage="20" filterable="false" >
<tablecol id="v2t2-personavail_modify_tablebody_1" dataattribute="workdate" lookup="datelookup" />
<tablecol id="v2t2-personavail_modify_tablebody_2" dataattribute="day" inputmode="readonly"/>
<tablecol id="v2t2-personavail_modify_tablebody_3" dataattribute="starttime" />
<tablecol id="v2t2-personavail_modify_tablebody_4" dataattribute="endtime" />
<tablecol id="v2t2-personavail_modify_tablebody_5" dataattribute="workhours"/>
<tablecol id="v2t2-personavail_modify_tablebody_6" dataattribute="reasoncode" lookup="valuelist"/>
<tablecol id="v2t2-personavail_modify_tablebody_8" type="event" mxevent="toggledeleterow" mxevent_icon="btn_garbage.gif" mxevent_desc="Mark Row for Delete" sortable="false" filterable="false" hidden="false" />
</tablebody>
<buttongroup id="v2t2-personavail_modify_10">
<pushbutton default="true" id="2t2-personavail_modify_11" label="New Row" mxevent="addrow" />
</buttongroup>
</table>
<buttongroup id="v2-personavail_3" >
<pushbutton id="v2-personavail_3_1" label="OK" default="true" mxevent="dialogok" />
<pushbutton id="v2-personavail_3_2" label="Cancel" mxevent="dialogcancel" />
</buttongroup>
</dialog>
By this one:
<dialog id="persavail" label="Modify Person Availability" savemode="ONLOADUNLOAD" >
<section id="v2-personavail_grid1" border="true" >
<multiparttextbox id="v2-personavail_grid1_1" dataattribute="personid" descdataattribute="displayname" descinputmode="readonly" />
<multiparttextbox id="v2-personavail_grid1_2" dataattribute="primarypersoncal.calnum" inputmode="readonly" descdataattribute="primarypersoncal.shiftnum" descinputmode="readonly" />
<!--textbox id="v2-personavail_grid1_3" dataattribute="displayfrom" lookup="datelookup" ondatachange="resetchildren"/-->
</section>
<section id="persavail0" >
<sectionrow id="persavail_row1" >
<sectioncol id="persavail_row1_col1" >
<section id="persavail_col1_1" >
<textbox id="v2-personavail_grid1_3" dataattribute="displayfrom" lookup="datelookup" ondatachange="resetchildren"/>
</section>
</sectioncol>
<sectioncol id="persavail_row1_col2" >
<section id="persavail_row1_col2_sec1" >
<textbox id="v2-personavail_grid1_31" dataattribute="displayto" lookup="datelookup" ondatachange="resetchildren"/>
</section>
</sectioncol>
</sectionrow>
</section>
<table id="v2-personavail_modify" label="Work Dates" selectmode="multiple" relationship="WORKPERIOD" orderby="workdate asc" beanclass="psdi.webclient.beans.common.WorkperiodBean" inputmode="readonly">
<tablebody id="v2-personavail_modify_tablebody" displayrowsperpage="10" filterable="false" >
<tablecol id="v2-personavail_modify_tablebody_0" type="event" mxevent="toggleselectrow" sortable="false" filterable="false" hidden="false" />
<tablecol id="v2-personavail_modify_tablebody_1" dataattribute="workdate" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_2" dataattribute="day" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_3" dataattribute="starttime" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_4" dataattribute="endtime" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_5" dataattribute="workhours" inputmode="readonly"/>
<tablecol id="v2-personavail_modify_tablebody_6" dataattribute="notes" inputmode="readonly"/>
</tablebody>
<buttongroup id="v2t2-personavail_modify_8">
<pushbutton default="true" id="2t2-personavail_modify_90" label="Mass Modify" mxevent="ModifySelectedDays" />
<pushbutton id="2t2-personavail_modify_9" label="Modify" mxevent="DodifyDays" />
</buttongroup>
</table>
<table id="v2t2-personavail_modify" label="Modify Work Dates" relationship="MODAVAIL" orderby="workdate asc" beanclass="psdi.webclient.beans.common.ModavialBean" >
<tablebody id="v2t2-personavail_modify_tablebody" displayrowsperpage="5" filterable="false" >
<tablecol id="v2t2-personavail_modify_tablebody_1" dataattribute="workdate" lookup="datelookup" />
<tablecol id="v2t2-personavail_modify_tablebody_2" dataattribute="day" inputmode="readonly"/>
<tablecol id="v2t2-personavail_modify_tablebody_3" dataattribute="starttime" />
<tablecol id="v2t2-personavail_modify_tablebody_4" dataattribute="endtime" />
<tablecol id="v2t2-personavail_modify_tablebody_5" dataattribute="workhours"/>
<tablecol id="v2t2-personavail_modify_tablebody_6" dataattribute="reasoncode" lookup="valuelist"/>
<tablecol id="v2t2-personavail_modify_tablebody_8" type="event" mxevent="toggledeleterow" mxevent_icon="btn_garbage.gif" mxevent_desc="Mark Row for Delete" sortable="false" filterable="false" hidden="false" />
</tablebody>
<buttongroup id="v2t2-personavail_modify_10">
<pushbutton default="true" id="2t2-personavail_modify_11" label="New Row" mxevent="addrow" />
</buttongroup>
</table>
<buttongroup id="v2-personavail_3" >
<pushbutton id="v2-personavail_3_1" label="OK" default="true" mxevent="dialogok" />
<pushbutton id="v2-personavail_3_2" label="Cancel" mxevent="dialogcancel" />
</buttongroup>
</dialog>
UID
ibm11130355