sWhat | (String) Specyfikacja zmiennej (lub zmiennych), której zapisane wartości mają zostać zwrócone. Można wprowadzić na przykład:
"time;", jeżeli ma zostać zwrócona tablica czasów, lub
"attr;", jeżeli ma zostać zwrócona tablica atrybutów rekordu, lub
"*;", jeżeli mają zostać zwrócone wszystkie kolumny włącznie z kolumną czasu i atrybutów, lub
"*data;", jeżeli mają zostać zwrócone wszystkie kolumny danych. W tym przypadku na przykład "time;*data;" oznacza zwrócenie kolumny czasu oraz wszysktich kolumn danych.
W przypadku zmiennych jest konieczne zachowanie kolejności według kolejności w karcie. Na przykład jeżeli kolejność zmiennych w karcie jest następująca a1,a2,a3,..., wtedy w parametrze można wprowadzić na przykład "a1;a3;", lecz "a3;a1" jest już błędnym zapisem. Wybór czasu można zmienić przez wprowadzenie "time:winter;", wtedy wszytkie wartości czasu zostaną zwrócone jako "czas zimowy", w innym przypadku będą jako "czas lokalny". |
---|---|
sFile | (String) Nazwa pliku ze ścieżką, do którego mają być zapisane dane.
Jeżeli nie jest wprowadzona pełna ścieżka, wtedy zostanie uzupełniona względem do foldera aplikacji. Jest zalecane stosowanie ścieżki w składni PROMOTIC - patrz PROMOTIC ścieżka do plików lub folderów. |
vFilter | (Variant) Wartość określa na przykład zakres czasu pozyskiwanych wartości (czas od, czas do, ilość punktów, itd.), ewentualnie czy dane mają być filtrowane według wartości. Jest wytworzona przez wywołanie metod CreateFilter, AddFilter. |
sParams | (String) Tekstowa lista parametrów określająca sposób zapisu do pliku. Dane są tutaj w formacie KeyVal, na przykład "filetype:csv;fmt:standard;".
"filetype:xxx;" (obowiązkowe) - Określa typ pliku określony w parametrze sFile. Możliwe są następujące typy plików:
csv - plik typu CSV. Chodzi o wielowierszowy plik wartości tekstowych na przykład oddzielone średnikiem. Powszechnie stosowany na przykład w oprogramowaniu MsExcel.
dbf - plik typu DBF w formacie dBase III. Powszechnie stosowany na przykład w orogramowaniu MsExcel. "fmt:xxx;" (opcjonalne) - Określa format zapisanych danych w pliku. Są możliwe następujące formaty:
"head:xxx;" (opcjonalne) - (tylko dla CSV)Określa, czy w pliku będzie zapisany również jednowierszowy nagłówek zawierający nazwy kolumn. Dozwolone wartości to:
no (domyślnie) - Nagłówek nie jest włożony.
name - Nagłówek jest częścią pliku, w nagłówku znajdują się nazwy kolumn. (Wartości właściwości PmVar.Name).
displayname - Nagłówek jest włożony. W nagłówku znajdują się nazwy zmiennych do wyświetlenia (wartości właściwości ExtTrend.DisplayName). "timeorder:xxx;" (opcjonalne) - Określa, czy wiersze wartości będą zesortowane w czasie rosnąco lub malejąco
asc (domyślnie) - wiersze wartości będą zesortowane w czasie rosnąco
desc - wiersze wartości będą zesortowane w czasie malejąco "delimiter:xxx;" (opcjonalne) - (tylko dla CSV) Separator wartości w pliku CSV. Dozwolone wartości to:
semicolon (domyślnie) - separator jest średnik.
comma - separator jest przecinek.
space - separator jest spacja.
tab - separator jest tabulator.
number - tzn. separator jest określony numerem znaku ASCII (w układzie dziesiątkowym), na przykład "delimiter:124;" oznacza separator "|" (kreska pionowa). "date.fmt:xxx;" (opcjonalne) - Format daty i czasu. Dozwolone wartości to:
system (domyślnie) - format daty i czasu jest określony przez ustawienia w SO Windows (np. 22.11.2010 16:30:15).
pm - format daty i czasu PROMOTIC z dokładnością do całych sekund (np. 2010.11.22 16:30:15).
pmmili - format daty i czasu PROMOTIC - dokładność 10 ms (np. 2010.11.22 16:30:15.250).
real - format daty i czasu typu danych Date w postaci liczby rzeczywistej (np. 41392.123456789). "real.dsep:xxx;" (opcjonalne) - (tylko dla CSV) Format separatora miejsc dziesętnych dla liczb rzeczywistych. Dozwolone wartości to:
system (domyślnie) - separator dziesiętny jest określony przez ustawienie w SO Windows (np. 3,14).
dot - separator dziesiętny jest kropka (niezależnie na ustawienie SO Windows) (np. 3.14).
comma - separator dziesiętny jest przecinek (niezależnie na ustawienie SO Windows) (np. 3,14). "lastcolsep:xxx;" (opcjonalne)
yes - Przy zapisie jest dodany separator za ostatnią wartość na wierszu, przy wczytaniu pusta wartość na końcu każdego wiersza jest pomijana. Z punktu widzenia pliku CSV taka funkcjonalność nie jest poprawną.
no (domyślnie) - Separatory są tylko pomiędzy wartościami w wierszu, nie są na końcu wiersza. Z punktu widzenia pliku CSV taka funkcjonalność jest poprawną. |
var tNow = Pm.Time;
var oTrend = pMe.Pm("/Trends");
var vFilter = oTrend.CreateFilter(tNow - 1 / 24, 1, tNow, 1, -1);
if (oTrend.SaveToFile("time;a1;a2;a3;", "Data.csv", vFilter, "filetype:csv;head:name;"))
{
// Data.csv file created OK
}