Hi Farhan.
I wanted to make sure I had solid information before I posted again.
My testing just showed me the problem is with the javascript (code is below) just moments ago. I have not had a chance to actually look at the code, but when I find the problem, I will post again. I discovered this to be the source of the issue be deactivating this script from the form. When the script is deactivated the account saves in Firefox.
var changeAccountStatus = function(){
var sel = document.getElementById("customertypecode");
var selectedText = sel.options[sel.selectedIndex].text;
var optionsetControl = Xrm.Page.ui.controls.get("accountcategorycode");
var options = optionsetControl.getAttribute().getOptions();
if (selectedText == "Partner"){
optionsetControl.clearOptions();
optionsetControl.addOption(options[6]);
}
else if (selectedText == "Customer"){
optionsetControl.clearOptions();
optionsetControl.addOption(options[4]);
optionsetControl.addOption(options[5]);
}
else if (selectedText == "Prospect"){
optionsetControl.clearOptions();
optionsetControl.addOption(options[1]);
optionsetControl.addOption(options[2]);
optionsetControl.addOption(options[3]);
}
else{
optionsetControl.clearOptions();
optionsetControl.addOption(options[0]);
}
};
var changeAccountStatusLoad = function(){
var optionsetControl = Xrm.Page.ui.controls.get("accountcategorycode");
var options = optionsetControl.getAttribute().getOptions();
var accountStatus = document.getElementById("accountcategorycode");
var accountStatusText = "";
if (accountStatus.selectedIndex != -1){
accountStatusText = accountStatus.options[accountStatus.selectedIndex].text;
}
if (accountStatusText == "Partner"){
optionsetControl.clearOptions();
optionsetControl.addOption(options[6]);
optionsetControl.getAttribute().setValue(options[6].value);
}
else if (accountStatusText.indexOf("Customer") != -1){
optionsetControl.clearOptions();
optionsetControl.addOption(options[4]);
optionsetControl.addOption(options[5]);
if (accountStatusText.indexOf("Active") != -1){
optionsetControl.getAttribute().setValue(options[4].value);
}else{
optionsetControl.getAttribute().setValue(options[5].value);
}
}
else if (accountStatusText.indexOf("Prospect") != -1){
optionsetControl.clearOptions();
optionsetControl.addOption(options[1]);
optionsetControl.addOption(options[2]);
optionsetControl.addOption(options[3]);
if (accountStatusText.indexOf("Active") != -1){
optionsetControl.getAttribute().setValue(options[3].value);
}else if (accountStatusText.indexOf("Disqualified") != -1){
optionsetControl.getAttribute().setValue(options[1].value);
}else{
optionsetControl.getAttribute().setValue(options[2].value);
}
}
else{
optionsetControl.clearOptions();
optionsetControl.addOption(options[0]);
optionsetControl.getAttribute().setValue(options[0].value);
}
};