Uwaga: To rozszerzenie służy do rozszerzonej konfiguracji funkcjonalności obiektu
PmVar połączone z zapisem nowej wartości. Na wskutek takiego rozszerzenia nie powstaje połączenie obiektu
PmVar z innymi komponentami systemu (np. alarmy, eventy, trendy, komunikacje itd.). Z tego powodu takie rozszerzenie w ramach obiektu
PmVar można wytworzyć tylko jedno (albo rozszerzona funkcjonalność istnieje lub nie).
Kolejność opracowania zapisywanej wartości jest następująca:
- zaokrąglenie oraz zamiana zapisywanej wartości na wymagany typ danych
- przetestowanie zapisywanej wartości pod względem jakości
- przetestowanie zapisywanej wartości pod względem wartości minimalnej
- przetestowanie zapisywanej wartości pod względem wartości maksymalnej
Jeżeli jest zezwolone wywołanie zdarzenia
onItemBeforeWrite, wtedy to zdarzenie zostanie wywołane dla danej zmiennej zawsze
bezpośrednio przed zapisem lub przed zmianą wartości zmiennej. Nierozważne zezwolenie zdarzenia dla wszystkich pozycji może spowodować zbędne obciążenie czasowe procesora. Na przykład jeżeli obiekt zawiera 1000 zmiennych i każda m adozwolone wywołanie, wtedy zapis nowych wartości do wszystkich zmiennych obiektu może spowodować, że zostanie 1000 razy wywołane zdarzenie
onItemBeforeWrite (za każdym razem z innym parametrem
pEvent.Item). Jest również bardziej korzystne (jeżeli istnieje konieczność reagowania na zapis lub zmianę zmiennej) zezwolić zdarzenie
onItemAfterWrite zamiast
onItemBeforeWrite. Zezwolić
onItemBeforeWrite jest zatem stosowne tylko jeżeli zachodzi konieczność testowania zapisywanej zmiennej i w przypadku konieczności jej zmiana (filtrowanie). Właściwość
pEvent.NewVal jest w zdarzeniu
onItemBeforeWrite przeznaczona zarówno do odczytu i zapisu i dlatego w zdarzeniu można wmusić inną wartość, niż jest rzeczywiście zapisywana.
Jeżeli jest zezwolone wywołanie zdarzenia
onItemAfterWrite, wtedy to zdarzenie zostanie wywołane dla danej zmiennej zawsze
po zapisie lub po zmianie wartości zmiennej. Dla zezwolenia tego zdarzenia odnoszą się podobne notatki jak w przypadku zezwolenia
onItemBeforeWrite. Zezwolenie
onItemAfterWrite jest stosowne w przypadku zmiennych, które zbyt często nie zmieniają swej wartości i w tym przypadku jest korzystne zezwolenie wywołania 'po zmianie'.
Uwaga: Zdarzenie
onItemBeforeWrite i zdarzenie
onItemAfterWrite nie zostanie wywołane, jeżeli zapis do zmiennej nie jest wykonywany bezpośrednio, tzn. jeżeli zmienna jest połączona powiązaniem danych z inną wartością.
Format zapisu zawartości rozszerzenia danych w formie łańcucha tekstowego:
Zawartość całego rozszerzenia danych (wszystkich konfiguratorów) można zapisać w formie jedynego łańcucha tekstowego. Patrz
Format zapisu zawartości rozszerzenia danych w formie łańcucha tekstowego.
Id={WriteAction; BeforeWrite; AfterWrite; QualityTestEnabled; QualitySubstValue; MinTestEnabled; MinValue; MinSubstValueEnabled; MinSubstValue; MinSubstQualityEnabled; MinSubstQuality; MaxTestEnabled; MaxValue; MaxSubstValueEnabled; MaxSubstValue; MaxSubstQualityEnabled; MaxSubstQuality}
-
MinValue: patrz konfigurator "
Minimum"
-
MaxValue: patrz konfigurator "
Maksymum"