Promotic

Obiekt Pm

Opis:
Globalny obiekt w systemie PROMOTIC dostępny pod nazwą Pm.

Język VBScript oraz JavaScript swoją koncepcją jest już od początku wytworzony do programowania bezpiecznego. Na przykład to oznacza, że standardowe funkcje języka VBScript posiadają wprawdzie silne środki do wytwarzanie algorytmów, nie umożliwiają jednak żaden kontakt ze środowiskiem sprzętowym. Na przykład nie umożliwiają żadnego zapisu lub odczytu z dysku, ustawienie czasu, sterowanie jednostkami I/O, itd.
Najlepszym sposobem, jak wzbogacić język JavaScript/VBScript o funkcjonalność, której funkcje języka nie posiadają jest wytworzenie obiektów, które posiadają wymagane właściwości i metody.
W systemie PROMOTIC jest duża ilość takich obiektów (tzw. Pma obiekty), które umożliwiają dostęp do baz danych, dostęp dla łącza szeregowego oraz dla Ethernetu, wywołanie bibliotek DLL, itd.
Przez wywołanie metod ponad Pmg obiektem można osiągnąć zazwyczaj zmianę stanu odpowiedniego obiektu (jego konkretnej instancji). To znaczy, że metody owych obiektów nie mają charakteru globalnego.
W systemie PROMOTIC jednak istnieje jeden globalny obiekt, dostępny bezpośrednio na dowolnym poziomie drzewa hierarchicznego. Obiekt ten jest w skrypcie dostępny przy pomocy zmiennej "Pm" (tzn. wywołanie w skrypcie jest następujące: Pm.nazwa_metody). Obiekt Pm zawiera właściwości i metody, które rozszerzają zbiór funkcji na przykład o zapis na dysk, ustawienie czasu, wprowadzanie danych, itd.

Lista:
Właściwości i metody Pm aplikacji:
AlSoundZezwolenie/zakaz sygnalizacji dźwiękowej alarmów
AppFullNameŚcieżka do aplikacji łącznie z nazwą aplikacji
AppNameNazwa aplikacji PROMOTIC
AppPriorityPriorytet aplikacji
AppStop()Zakończenie aplikacji
AxGetObject()Wytworzy odniesienie do ActiveX obiektu
Beep()Odtworzenie dźwięku systemowego SO Windows
CallAxMethod()Wołanie metod ActiveX obiektu w języku JavaScript
ClockStart()Uruchomienie stopera czasowego
ClockStop()Zatrzymanie stopera czasowego
ColorOper()Różne operacje z określonym kolorem
ColorRgb()Zwraca kolor przez wprowadzenie trzech składników RGB
ControlSound()Praca z serwerem dźwięu systemu PROMOTIC
CreatePmAction()Wytworzy obiekt typu PmAction
CreatePmArray()Wytworzy obiekt typu PmArray
Array1()Wytworzy i wypełnia 1-wymiarową tablicę (array) wartości
CreatePmBuffer()Wytworzy obiekt typu PmBuffer
CreatePmExpr()Wytworzy obiekt typu PmExpr
CreatePmForm()Wytworzy obiekt typu PmForm (przestarzałe)
CreatePmFormat()Wytworzy obiekt typu PmFormat
CreatePmMap()Wytworzy obiekt typu PmMap
CreateProcess()Uruchomienie oprogramowania (*.exe, *.com, *.bat) bez czekania na jego zakończenie
CreateProcessSync()Uruchomienie oprogramowania (*.exe, *.com, *.bat) z oczekiwaniem na jego zakończenie
DdeExecute()Wysłanie danego polecenia do DDE serwera
EvalMacro()Obliczenie makro wyrażenia
FindViewers()Zwraca listę przeglądarek obiektów według określonych kryteriów
GenerateId()Zwraca unikatowy identyfikator numeryczny
GetActiveWorkspace()Zwraca aktywny obiekt PmaWorkspace.
GetRtLangs()Zwraca listę wszystkich narodowych języków wspieranych w aplikacji
GetSystemInfo()Zwraca informacje systemowe
HttpFormDataParse()Parsowanie danych uzyskanych uploadem plików
HTTPGetFormValue()Dekodowanie łańcucha tekstowego uzyskanego z przeglądarki intenetowej
JsonParse()Z tekstu w formacie JSON zostanie wytworzony obiekt, tablica lub wartość podstawowa
JsonStringify()Z obiektu, tablicy lub podstawowej wartości wytworzy tekst w formacie JSON
LicenceInfo()Informacje o licencjach aplikacji PROMOTIC
MethodsDostęp do globalnych metod aplikacji
NetGetAddress()Zwraca lokalny adres komputera w sieci
NetTestPC()Test, czy wymagany komputer jest osiągalny w sieci
PlaySound()Odtworzenie pliku dźwiękowego *.wav
RestartGui()Wykona restart interfejsu graficznego aplikacji
RtLangWersja językowa aplikacji runtime
ShellExecute()Uruchomienie lub wydrukowanie pliku lub dokumentu zarejestrowanego
ShutDown()Wyłączenie SO Windows
WDogRefresh()Odświeżenie licznika oprogramowania WatchDog
WinEnviromentRead()Odczyt zmiennej środowiska
WinEnviromentWrite()Zapis do zmiennej środowiska
WndOper()Wykonanie operacji nad otwartym oknem innej aplikacji
Pm właściwości i metody do administracji użytkowników (patrz Użytkownicy oraz uprawnienia):
AddUser()Doda nowego PROMOTIC użytkownika
FindUserIdLocal()Zwraca identyfikator użytkownika lokalnego, który odpowiada wprowadzonym parametrom logowania
FindUserIdNet()Zwraca identyfikator użytkownika sieciowego, który odpowiada wprowadzonym parametrom logowania
GetUserInfo()Zwraca informacje z systemu użytkowników
LoggedUserZwraca obiekt PmUser, który przedstawia zalogowanego użytkownika
Logoff()Wylogowanie zalogowanego użytkownika lokalnego bez pytania
Logon()Zalogowanie użytkownika lokalnego bez okna edycyjnego
RemoveUser()Usunie istniejącego PROMOTIC użytkownika
TestUserInGroup()Test, czy dany użytkownik jest lub nie jest członkiem określonej grupy użytkowników
WndEditUserPassword()Wyświetli okno do edycji hasła
WndEditUsers()Wyświetli okno do edycji PROMOTIC użytkowników
WndLogoff()Wyświetli okno Wylogowanie użytkownika
WndLogon()Wyświetli okno Zalogowanie użytkownika
Pm metody dla dostępu do INFO systemu (patrz INFO system):
Debug()Zapis tekstu pod pozycją Debug INFO systemu
InfoAction()Wołanie akcji nad pozycją w INFO systemie
InfoErrorAdd()Zapis błędu aplikacji do karty "Errors/Application" w INFO systemie
InfoErrorClear()Usunięcie błędów określonego typu w INFO systemie
InfoLogReg()Wytworzy nową kartę użytkownika w pozycji Debug INFO systemu
InfoLogAdd()Zapis tekstu do karty użytkownika w pozycji Debug INFO systemu
InfoWriteToFile()Zapisze zawartość karty INFO systemu do pliku tekstowego
InfoWriteToString()Zwraca zawartość karty INFO systemu w postaci łańcucha
Pm wizualizacyjne metody:
CreateView()Obiekt do otwarcia przeglądarki
InputBox()Ustawienie wartości przez użytkownika
InputBoxForDateTime()Okno do wprowadzania daty i czasu
InputBoxForFilePath()Okno do wyboru pliku/folderu (przestarzałe)
MessageBox()Wyświetli komunikat w oknie i czeka na kliknięcie użytkownika
PrintHtmlPage()Druk lub podgląd zawartości strony HTML lub tekstu
PrintScreen()Druk caego ekranu na drukarku lub do pliku
PrinterCfg()Wyświetlenie okna do wyboru i konfiguracji drukarki
SelectionDialog()Umożliwia w oknie edycyjnym dokonanie wyboru jednej z listy z oferty (przestarzałe)
ShowHelp()Wyświetli tema pomocy
Pm Metody do pracy z tekstem (string) (Patrz również: Funkcje VBScript do pracy z tekstem (string)):
DecryptText()Dekodowanie tekstu
EncryptText()Zakodowanie tekstu
StringCmp()Zwraca wynik porównania dwu łańcuchów
StringCodeAt()Zwraca kod znaku Unicode na określonej pozycji w łańcuchu
StringCodeFrom()Zwraca znak odowiadający danemu kodu Unicode
StringFind()Wyszukuje w tekście od określonej pozycji wystąpienie wymaganego łańcucha
StringJoin()Zwraca łańcuch wytworzony przez połączenie podłańcuchów znaków zawartych w 1-wymiarowej tablicy
StringLen()Zwraca ilość znaków w łańcuchu
StringOper()Działanie z łańcuchem
StringReplace()Zastąpienie słowa kluczowego wartością w łańcuchu tekstowym
StringSplit()Zwraca 1-wymiarową tablicę podłańcuchów
StringSub()Zwraca podłańcuch innego łańcucha
Pm Metody do pracy z datą i czasem (Patrz również: Funkcje VBScript do pracy z datą i czasem):
CreateDate()Wytworzy data oraz czas z poszczególnych części
CreateTimeSpan()Wytworzy przedział czasu z określonej części
CreatePmDateObject()Wytworzy pomocniczy obiekt PmDateObject do pracy z datą i czasem
DateAdd()Zwraca datę zwiększoną o określony przedział czasu
DateDiff()Zwraca ilość przedziałów czasu pomiędzy dwoma datami
GetDateOf()Zwraca różne daty pochodnych od określonej daty
IsDaylight()Test ustawienia czasu letniego
TimeCzas systemowy
Pm właściwości i metody Matematyczne i inne:
Abs()Wartość bezwzględna liczby
ArrayOper()Operacje z tablicą
Atan()Zwraca arcustangens (funkcja odwrotna do tangens) liczby
Ceil()Zwraca najmniejszą liczbę całkowitą, która jest większe lub równe wprowadzonej liczbie
Cos()Zwraca wartość cosinus danego kąta
ELiczba Eulera (podstawa logarytmu naturalnego)
Exp()Zwraca "e do potęgi y"
Floor()Zwraca największą liczbę całkowitą, która jest mniejsze lub równe wprowadzonej liczbie
GetBit()Zwraca wartość bitu zmiennej
GetVarType()Zwraca typ danych wartości
IsInt()Test, czy wartość jest liczba całkowita
IsValid()Test, czy wartość jest ważną
Linear()Uzyska wartość funkcji (lub argumentu) funkcji liniowej
LN10Logarytm naturalny 10
LN2Logarytm naturalny 2
LOG10ELogarytm diesiętny e
LOG2EPodstawowy logarytm binarny e
LogN()Zwraca logarytm liczby
PILudolfina
Pow()Oblicza "x do potęgi y"
Random()Zwraca liczbę losową z określonego zakresu
Round()Zwraca liczbę zaokrągloną na określoną ilość miejsc dziesiętnych lub całkowitych
SetBit()Zmiana bitu danej zmiennej
Sign()Zwraca liczbę całkowitą określającą znak liczby
Sin()Zwraca sinus dla danego kąta
Sqrt()Pierwiastek kwadratowy danej liczby
SQRT2Pierwiastek kwadratowy
Tan()Zwraca tangens kąta
ToNumber()Konwersja na wartość liczbową
TransformValue()Transformacja wartości
Trunc()Zwraca całą część liczby (usunie część po przecinku dziesiętnym)
Pm metody do pracy z dyskami/plikami:
DirCreate()Wytworzy folder plików
DirExist()Test istnienia foldera plików
DirRemove()Usunie foldera plików
DiscGetFreeSpace()Zwraca wolne miejsce na dysku
DiscGetPath()Zwraca wymaganą ścieżkę (ewentualnie również nazwę pliku) w formacie Microsoft
DiscGetTotalSpace()Zwraca pojemnność dysku
FileCopy()Wytworzenie kopii pliku
FileCsvRead()Odczyt z pliku CSV
FileCsvWrite()Zapis do pliku CSV
FileDelete()Usunie określony plik
FileFind()Wyszuka pliki i foldery na określonej ścieżce
FileGetAttr()Zwraca atrybuty pliku
FileGetCreationTime()Zwraca czas wytworzenia pliku
FileGetLastAccessTime()Zwraca czas ostatniego dostępu do pliku
FileGetLastWriteTime()Zwraca czas ostatniego zapisu do pliku
FileGetLength()Zwraca wielkość pliku (w bajtach)
FileMove()Przesunięcie (zmiana nazwy) danego pliku (folderu)
FileSetAttr()Ustawia atrybuty pliku
FileTextRead()Odczyt pliku tekstowego
FileTextReplace()Zastąpienie tekstu w pliku tekstowym
FileTextWrite()Zapis zmiennej (lub tablica zmiennych) do pliku tekstowego
IniFileRead()Odczyt pozycji z pliku *.ini
IniFileWrite()Zapis pozycji do pliku *.ini
Przestarzałe właściwości i metody:
FormatDate()Wytworzy łańcuch tekstowy zawierający datę i czas
ScanDate()Uzyska datę i czas z wartości tekstowej
StringFormat()Zapis tablicy wartości do łańcucha tekstowego
StringScan()Odczyt danych z łańcucha
AppQuit()Zakończenie aplikacji
BlinkerMigotanie z periodem odświeżania paneli
CDbl()Zwraca wyrażenie skonwertowane do wartości typu Double
CSng()Zwraca wyrażenie skonwertowane do wartości typu Single
CreatePmList()Wytworzy obiekt typu PmList
CpuUsageObciążenie procesora (CPU) komputera
FileBinaryRead()Odczyt zawartości pliku binarnego do zmiennej typu Array
FileBinaryWrite()Zapis zawartości zmiennej typu Array do pliku binarnego
FileReadVariable()Odczyt wartości zmiennej z pliku
FileWriteVariable()Zapis zawartości zmiennej do pliku
InputBoxForStringSelection()Umożliwia w oknie edycyjnym wybranie wymaganego łańcucha z listy (przestarzałe)
MemoryUsageZajęcie pamięci komputera
OtherAppOper()Wykonanie operacji nad otwartym oknem innej aplikacji
RtLanguageWersja językowa aplikacji runtime (przestarzałe)
WndHtmlPage()Wyświetli strony HTML w modalnym/niemodalnym oknie
WndInfo()Okno INFO systemu

Historia:
Pm9.00.05: InfoLogReg oraz InfoLogAdd nowe metody: Metody umożliwią zarejestrować do INFO systemu nową pozycję a później do niej dodawać nowe wpisy. Chodzi o uogólnienie metody Pm.Debug w celu własnego logowania.
Pm8.02.04: Został uzupełniony o stałe, które są potrzebne dla niektórych obliczeń matematycznych: PI, E, SQRT2, LN10, LN2, LOG10E oraz LOG2E.
Pm8.02.01: Zostało wytworzonych wiele metod, które zastępują metody VBScript. Te nowe metody działają również w Web panelach (JavaScript i VBScript). Nowymi metodami są:
Pm8.00.06:
- Pm.GetSystemInfo nowa metoda do stwierdzania rozmiarów ekranu. Działa również dla Web paneli.
- Pm.CpuUsage nowa właściwość do stwierdzania obciążenia procesora.
- Pm.GetActiveWorkspace nowa metoda do stwierdzania aktywnego obszaru roboczego (obiektu PmaWorkspace). Można zastosować na przykład przy zastosowaniu kilku ekranów.
- Pm.PrintHtmlPage metoda: Usunięty błąd: nie funkcjonował wydruk pod SO Windows 7.
Nawigacja:
 
 
- Pm
 
- Abs
- Cos
- E
- Exp
- LN2
- PI
- Pow
- Sin
- Tan
 
© MICROSYS, spol. s r.o.