/// <summary> /// Get Format String /// </summary> /// <param name="alarmObject"></param> /// <param name="languageID"></param> /// <param name="formatType"></param> /// <returns></returns> public string GetFormatString(Interface.Alarm.AlarmObject alarmObject, int languageID, string formatType) { string sensorType = "", frmtstring = ""; int i = 0, formatID = 0; //Sensor Type sensorType = (alarmObject.AlarmType == AlarmType.COMMUNICATIONS ? "MISS" : alarmObject.SensorType); try { while ((sensorType != "" && i < 2)) { if (i > 0) { sensorType = ""; } //Get Sensor FomratID while (true) { //Individual message format formatID = GetFormatID(alarmObject, formatType, 1); if (formatID != 0) { break; } //Next, check for Group default message format... formatID = GetFormatID(alarmObject, formatType, 2); if (formatID != 0) { break; } //Finally, get default message format... formatID = GetFormatID(alarmObject, formatType, 3); break; } if (formatID != 0) { //Get Sensor format string. using (FormatString formatString = new FormatString()) { formatString.FormatID = formatID; formatString.LanguageID = languageID; formatString.SensorType = sensorType; formatString.Execute(formatString); frmtstring = formatString.ComposeString; if (frmtstring.ToStr() != "") { break; } } } i = i + 1; } } catch (Exception ex) { /*Write Log*/ LogBook.Write("Error occurred getting the format string.", ex, "CooperAtkins.NotificationClient.NotificationComposer.NotificationStyle"); } //If FormatString is empty set default value. if (frmtstring.ToStr() == string.Empty) { frmtstring = GetDefaultFormatString(alarmObject, languageID, formatType); } else { return(frmtstring); } return(frmtstring); }