/// <summary> /// Funkcja wywoływana przy generowaniu strony /// </summary> public void OnGet() { try { AsixRestClient asixRestClient = new AsixRestClient(); // Odczyt z serwera REST nazw wszystkich atrybutów ServerAttributes serverAttributes = asixRestClient.ReadAttributeNames(); if (!serverAttributes.readSucceeded) { mReadError = serverAttributes.readStatusString; return; } mAttributeNames = serverAttributes.mAttributeNameList; // Odczyt z serwera REST wartości atrybutów atrybutów zmiennej VariableAttributes variableAttributes = asixRestClient.ReadVariableAttributes(mVariableName, mAttributeNames); if (!variableAttributes.readSucceeded) { mReadError = variableAttributes.readStatusString; return; } mVariableAttributes = variableAttributes.mAttributeValueList; } catch (Exception e) { mReadError = e.Message; } }
void ReadVariableValue() { AsixRestClient asixRestClient = new AsixRestClient(); // Odczyt wartości zmiennej VariableState variableState = asixRestClient.ReadVariableState("A110"); // Sprawdzenie czy nie wystąpił błąd odczytu if (!variableState.readSucceeded) { mReadError = variableState.readStatusString; return; } // Formatowanie wartości zmiennej if (variableState.IsQualityGood()) { // Formatowanie wartości o jakości dobrej double value = (double)variableState.value; mValueFormatted = value.ToString("F0"); } else if (variableState.IsQualityUncertain()) { // Formatowanie wartości o jakości niepewnej double value = (double)variableState.value; mValueFormatted = value.ToString("F0") + "?"; } else { // Dla wartości o jakości złej wyświetlimy pytajnik mValueFormatted = "?"; } }
void ReadData() { AsixRestClient asixRestClient = new AsixRestClient(); string periodStartOpc = DateReadTime.ToString("o"); // format ISO, też obsługiwany przez REST server mVariableRawArchiveA000 = asixRestClient.ReadVariableRawArchive("A000", periodStartOpc, "1H"); }
/// <summary> /// Funkcja realizująca odczyt stanu alarmów /// </summary> void ReadAlarmValue() { AsixRestClient asixRestClient = new AsixRestClient(); foreach (var alarmModel in mAlarmModelList) { alarmModel.mAlarmState = asixRestClient.ReadAlarmState(alarmModel.mDomain, alarmModel.mName); } }
// Odczyt danych agregowanych void ReadData() { AsixRestClient asixRestClient = new AsixRestClient(); string periodStartOpc = DateReadTime.Date.ToString("o"); // format ISO, też obsługiwany mVariableAggregateArchiveA000 = asixRestClient.ReadVariableAggregateArchive("A000", "Average", periodStartOpc, "1D", "1H"); mVariableAggregateArchiveA004 = asixRestClient.ReadVariableAggregateArchive("A004", "Average", periodStartOpc, "1D", "1H"); }
void ReadVariableValue(VariableModel aVariableModel) { try { AsixRestClient asixRestClient = new AsixRestClient(); VariableState variableState = asixRestClient.ReadVariableState(aVariableModel.mName); if (!variableState.readSucceeded) { aVariableModel.mReadError = variableState.readStatusString; return; } aVariableModel.mDateTime = variableState.timeStamp; switch (variableState.quality & 0xC0) { case 0xC0: { double value = (double)variableState.value; aVariableModel.mValueFormatted = value.ToString("F0"); break; } case 0x40: { double value = (double)variableState.value; aVariableModel.mValueFormatted = value.ToString("F0") + "?"; break; } default: { aVariableModel.mValueFormatted = "?"; break; } } } catch (Exception e) { aVariableModel.mReadError = e.Message; } }
/// <summary> /// Odczyt wartości bieżącej i średniej jednej zmiennej /// </summary> /// <param name="aVariableModel">Model zmiennej. Jego pole mName zawiera nazwę zmiennej.</param> void ReadVariableValue(Demo3VariableModel aVariableModel) { try { AsixRestClient asixRestClient = new AsixRestClient(); // Odczyt wartości zmiennej z serwera REST VariableState variableState = asixRestClient.ReadVariableState(aVariableModel.mName); if (!variableState.readSucceeded) { aVariableModel.mReadError = variableState.readStatusString; return; } // wypracowanie przez klasę modelu informacji o jakości zmiennej aVariableModel.SetValueQuality(variableState.quality); if (aVariableModel.mValueQuality == ValueQuality.Bad) { return; } // wypracowanie przez klasę modelu informacji o wartości zmiennej i limitach aVariableModel.SetFormatedValueAndValueLimit(variableState.value); // Odczyt średniej wartości zmiennej z serwera REST VariableState variableAverage = asixRestClient.ReadVariableAggregate(aVariableModel.mName, "Average", "15m"); if (!variableAverage.readSucceeded || variableAverage.IsQualityBad()) { return; } // wypracowanie przez klasę modelu informacji o trendzie zmian wartości zmiennej aVariableModel.SetValueTrend(variableState.value, variableAverage.value); } catch (Exception e) { aVariableModel.mReadError = e.Message; } }
/// <summary> /// Odczyt wartości jednej zmiennej /// </summary> /// <param name="aVariableModel">Model zmiennej. Jego pole mName zawiera nazwe zmiennej.</param> void ReadVariableValue(Demo2VariableModel aVariableModel) { try { AsixRestClient asixRestClient = new AsixRestClient(); // Odczyt wartości zmiennej z serwera REST VariableState variableState = asixRestClient.ReadVariableState(aVariableModel.mName); // Obsług błędu odczytu if (!variableState.readSucceeded) { aVariableModel.mReadError = variableState.readStatusString; return; } // Formatowanie wartości zmiennej if (variableState.IsQualityGood()) { // Formatowanie wartości o jakości dobrej double value = (double)variableState.value; aVariableModel.mValueFormatted = value.ToString("F0"); } else if (variableState.IsQualityUncertain()) { // Formatowanie wartości o jakości niepewnej double value = (double)variableState.value; aVariableModel.mValueFormatted = value.ToString("F0") + "?"; } else { // Dla wartości o jakości złej wyświetlimy pytajnik aVariableModel.mValueFormatted = "?"; } } catch (Exception e) { aVariableModel.mReadError = e.Message; } }
/// <summary> /// Funkcja wywoływana przy generowaniu strony /// </summary> public void OnGet() { try { AsixRestClient asixRestClient = new AsixRestClient(); VariableAttributes variableAttributes = asixRestClient.ReadVariableAttributes(mVariableName, mAttributeNameList); if (variableAttributes.readSucceeded) { mVariableAttributes = variableAttributes.mAttributeValueList; } else { mReadError = variableAttributes.readStatusString; } } catch (Exception e) { mReadError = e.Message; } }
// Odczyt z archiwum alarmów void ReadData() { AsixRestClient asixRestClient = new AsixRestClient(); mHistAlarmArchive = asixRestClient.ReadHistAlarmArchive("Fabryka_EVO", DateReadTime, TimeSpan.Parse(PeriodLength)); }