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 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; } }