My Oracle Support Banner

FieldChange Method Is Not Triggering For A Field Change In PM File when invoked for the fourth Time. (Doc ID 2497803.1)

Last updated on APRIL 29, 2019

Applies to:

Siebel CRM - Version 15.15 [IP2015] and later
Information in this document applies to any platform.

Symptoms

On :  15.15 [IP2015] version, Configuration - General

ACTUAL BEHAVIOR  
---------------
OnFieldChange Not Triggering For A Field Change In PM File when invoked for the fourth Time.

EXPECTED BEHAVIOR
-----------------------
OnFieldChange should always trigger for a Field Change from PM File when Invoked multiple Times
STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Under the Installed Assets Applet, customer has a Button "Retention"
2. Configure a Popup applet which will be launched on Click of the Button and the Popup Applet should have some fields Like "Select", "Package", "Price" etc
3. Once the Customer Click the SelectButton Write the below Code to Calculate the Values
SiebelAppFacade.PopupListPM.superclass.Init.apply( this, arguments );
this.AddMethod("FieldChange", OnFieldChange, {
  sequence:true,  
  scope: this
});
};
function OnFieldChange(control, value)
{
 
  if(control.GetName()==' Select')
{    
  if(value == "Y")
  {  
 
 var vRemainingScore1
 var controls = this.Get("GetControls");
 var priceControl = controls[ " Price" ];
 var vPrice = this.ExecuteMethod("GetFieldValue", priceControl);
 var ASControl = controls[ " Allowed Score" ];
 var vAllowedPrice = this.ExecuteMethod("GetFieldValue", ASControl);
 //var allscr = $("[aria-label='Allowed Score']").val();
 var Remscr = $("[aria-label='Remaining Score']").val()
 //var RSControl = controls[ " Remaining Score" ];
 //var vRemainingScore = this.ExecuteMethod("GetFieldValue", RSControl);
//console.log(vRemainingScore);
if(Remscr == '')
vRemainingScore1 = vAllowedPrice - vPrice;
else
vRemainingScore1 = Remscr - vPrice;

var control4 = controls[ " Remaining Score" ];
//this.ExecuteMethod("SetFormattedValue", control4, vRemainingScore1);
$("[aria-label='Remaining Score']").val(vRemainingScore1);
console.log(vRemainingScore1);
}
  else
  {
console.log("Unselect");
  }
}

}

return PopupListPM;
} ());
return "SiebelAppFacade.PopupListPM" ;
});
}
4. Compile the changes and Launch the Application.
5. Navigate to the Installed Assets Applet, where the Button "Retention" exist
6. On Clicking of the Button will Launch a Popup Applet which has some fields Like "Select", "Package", "Price" etc
7. click on the Select button for the first time and in the Remaining Score Showed as 1000
8. once the click on the Select field for the record for the Second time which has the price 10, and Step off the record, then the Remaining Score becomes 990 i,e (1000-10)
9. Once again Click on Select record for the Third time which has Price as 20 and Remaining Score becomes 970
10. Again for the fourth time click on Select Record which has price 15 but the Remaining Score does not minus the value 15 from 970
11. chose another Record which has Price 30 and step off the record, this time value 30 is minus from 970 and showed 940.

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.