{"id":26802,"date":"2026-07-27T11:53:45","date_gmt":"2026-07-27T09:53:45","guid":{"rendered":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?p=26802"},"modified":"2026-07-31T14:20:23","modified_gmt":"2026-07-31T12:20:23","slug":"zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26","status":"publish","type":"post","link":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/","title":{"rendered":"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26"},"content":{"rendered":"\n<div style=\"height:80px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.<\/p>\n\n\n<div class=\"dowiesz-sie\" style=\"margin-top: 40px; margin-bottom: 40px;\">\n<h3><strong>Kurs projektowania symboli Industrial Graphics w oprogramowaniu wizualizacyjnym AVEVA<\/strong><\/h3>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wprowadzenie-do-industrial-graphics-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-1\/\">1. Wprowadzenie do Industrial Graphics<\/a><br>\n<table style=\"width:100%;table-layout:fixed;\"><tbody><tr>\n<td>\n<h5>Edytor Industrial Graphics<\/h5>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/edytor-symboli-industrial-graphics-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-2\/\">2. Edytor symboli Industrial Graphics<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zaznaczanie-i-przesuwanie-elementow-graficznych-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-3\/\">3. Zaznaczanie i przesuwanie element\u00f3w graficznych<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/grupowanie-elementow-graficznych-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-4\/\">4. Grupowanie element\u00f3w graficznych<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wyrownywanie-elementow-graficznych-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-5\/\">5. Wyr\u00f3wnywanie element\u00f3w graficznych<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmiana-orientacji-elementow-graficznych-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-6\/\">6. Zmiana orientacji element\u00f3w graficznych<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/kolejnosc-elementow-w-osi-z-z-order-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-7\/\">7. Kolejno\u015b\u0107 element\u00f3w w osi Z (z-order)<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/dynamiczna-zmiana-rozmiaru-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-8\/\">8. Dynamiczna zmiana rozmiaru<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/tworzenie-symboli-na-podstawie-zmiennych-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-9\/\">9. Tworzenie symboli na podstawie zmiennych<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wykorzystanie-grafiki-svg-w-symbolach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-10\/\">10. Wykorzystanie grafiki SVG w symbolach<\/a><\/td>\n<td><h5>Projektowanie symboli<\/h5>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/rysowanie-linii-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-11\/\">11. Rysowanie linii<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/rysowanie-ksztaltow-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-12\/\">12. Rysowanie kszta\u0142t\u00f3w<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/teksty-i-pola-tekstowe-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-13\/\">13. Teksty i pola tekstowe<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wyswietlanie-statusu-jakosci-danych-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-14\/\">14. Wy\u015bwietlanie statusu jako\u015bci danych<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/praca-z-przyciskami-wyboru-radio-buttons-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-15\/\">15. Praca z przyciskami wyboru (radio buttons)<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/praca-z-kontrolka-kalendarza-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-16\/\">16. Praca z kontrolk\u0105 kalendarza<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/praca-z-kontrolka-wyboru-daty-i-czasu-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-17\/\">17. Praca z kontrolk\u0105 wyboru daty i czasu<\/a><br>\n<br><h5>Animacje<\/h5>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wprowadzenie-do-animacji-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-18\/\">18. Wprowadzenie do animacji<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/animacja-wypelnienia-procentowego-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-19\/\">19. Animacja wype\u0142nienia procentowego<\/a><\/td>\n<td><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/animacja-wyswietlania-wartosci-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-20\/\">20. Animacja wy\u015bwietlania warto\u015bci<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/animacja-wprowadzania-wartosci-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-21\/\">21. Animacja wprowadzania warto\u015bci<\/a><br>\n<br><h5>Narz\u0119dzia zaawansowane<\/h5>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wprowadzenie-do-wlasciwosci-custom-properties-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-22\/\">22. Wprowadzenie do w\u0142a\u015bciwo\u015bci Custom Properties<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/dodawanie-wlasciwosci-custom-properties-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-23\/\">23. Dodawanie w\u0142a\u015bciwo\u015bci Custom Properties<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wprowadzenie-do-stylow-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-24\/\">24. Wprowadzenie do styl\u00f3w<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wprowadzenie-do-skryptow-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-25\/\">25. Wprowadzenie do skrypt\u00f3w<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/\">26. Edytor skrypt\u00f3w Industrial Graphics<\/a><br>\n<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/uzywanie-zewnetrznych-bibliotek-dll-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-27\/\">27. U\u017cywanie zewn\u0119trznych bibliotek w skryptach<\/a><\/td>\n<\/tr><\/tbody><\/table>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Zmienne lokalne s\u0105 u\u017cywane w konkretnym skrypcie i nie s\u0105 dost\u0119pne w \u017cadnym innym miejscu aplikacji. Aby u\u017cy\u0107 zmiennej lokalnej, musimy j\u0105 zadeklarowa\u0107 w konkretnym skrypcie. Istnieje ona przez ca\u0142y czas wykonywania skryptu, a nast\u0119pnie znika. Je\u017celi skrypt jest cykliczny, w ka\u017cdej iteracji zmienna jest powo\u0142ywana do \u017cycia od nowa. Je\u017celi w dw\u00f3ch skryptach zdefiniujemy zmienne o tej samej nazwie, b\u0119d\u0105 one od siebie ca\u0142kowicie niezale\u017cne.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u017celi nie zadeklarujemy zmiennej, pr\u00f3ba jej u\u017cycia spowoduje b\u0142\u0105d. Jest to widoczne ju\u017c w edytorze \u2013 niezdefiniowane symbole s\u0105 oznaczane bordowym wyt\u0142uszczeniem.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"454\" height=\"205\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-01.jpg\" alt=\"\" class=\"wp-image-27059\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Aby zadeklarowa\u0107 zmienn\u0105, u\u017cywamy s\u0142owa kluczowego <strong>dim<\/strong>. Najprostsza posta\u0107 wygl\u0105da tak:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>dim mojaZmienna;<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Taki zapis deklaruje zmienn\u0105 o nazwie <strong>mojaZmienna<\/strong>, brak informacji o typie powoduje, \u017ce przyjmowany jest typ domy\u015blny, czyli <strong>Integer<\/strong>. W nazwach wielko\u015b\u0107 liter nie ma znaczenia (<strong>mojaZmienna<\/strong> to to samo, co np. <strong>mojazmienna<\/strong> lub <strong>MojaZmienna<\/strong>).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u017celi chcemy zadeklarowa\u0107 zmienn\u0105 innego typu, musimy to zrobi\u0107 w nast\u0119puj\u0105cy spos\u00f3b:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>dim <em>nazwa<\/em> as <em>typ<\/em>;<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Obs\u0142ugiwanych jest wiele typ\u00f3w. W\u015br\u00f3d nich znajdziemy wszystkie podstawowe typy takie, jak <strong>boolean<\/strong>, <strong>integer<\/strong>, <strong>float<\/strong>, <strong>double<\/strong>, <strong>time<\/strong>, czy <strong>string<\/strong>. Ale obs\u0142ugiwane s\u0105 r\u00f3wnie\u017c bardziej rozbudowane typy, takie jak struktury czy klasy .NET.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nazwy zmiennych mog\u0105 mie\u0107 do 255 znak\u00f3w. Mo\u017cna w nich u\u017cywa\u0107 liter, cyfr oraz znaku podkre\u015blenia <strong>_<\/strong>. Nazwy zmiennych obs\u0142uguj\u0105 kodowanie znak\u00f3w Unicode, wi\u0119c mo\u017cliwe jest u\u017cycie znak\u00f3w z alfabet\u00f3w narodowych, nawet z takich j\u0119zyk\u00f3w, jak japo\u0144ski.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"446\" height=\"83\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-02.jpg\" alt=\"\" class=\"wp-image-27060\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Zmienne <strong>boolean<\/strong> przyjmuj\u0105 warto\u015bci <strong>true<\/strong> lub <strong>false<\/strong> (prawda lub fa\u0142sz), ale akceptowane jest r\u00f3wnie\u017c przypisywanie do nich 1 (co odpowiada <strong>true<\/strong>) lub 0 (co odpowiada <strong>false<\/strong>).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Typ <strong>time<\/strong> mo\u017ce przechowywa\u0107 dat\u0119 i czas. Funkcja skryptowa <strong>Now()<\/strong> zwraca aktualny czas, kt\u00f3ry mo\u017cemy przypisa\u0107 do zmiennej tego typu.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"414\" height=\"91\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-03.jpg\" alt=\"\" class=\"wp-image-27062\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Za pomoc\u0105 s\u0142owa kluczowego <strong>dim<\/strong> mo\u017cemy r\u00f3wnie\u017c deklarowa\u0107 tablice zmiennych lokalnych, o maksymalnie trzech wymiarach. Tablice w QuickScript.NET s\u0105 indeksowane od 1, co oznacza, \u017ce pierwszy element ma indeks 1 (a nie od 0, jak w wielu innych j\u0119zykach, takich jak Python czy C++). Podobnie jak w przypadku pojedynczej zmiennej, pomini\u0119cie klauzuli <strong>as <em>typ<\/em><\/strong> spowoduje, \u017ce zostanie zadeklarowana tablica liczb ca\u0142kowitych.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"543\" height=\"336\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-04.jpg\" alt=\"\" class=\"wp-image-27063\"\/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Zobaczmy bardziej z\u0142o\u017cony przyk\u0142ad skryptu, kt\u00f3ry u\u017cywa zmiennej obiektowej i klasy .NET.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1431\" height=\"447\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-05.jpg\" alt=\"\" class=\"wp-image-27064\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-05.jpg 1431w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-05-840x262.jpg 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-05-768x240.jpg 768w\" sizes=\"auto, (max-width: 1431px) 100vw, 1431px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Jest to skrypt wykonywany w momencie, gdy zdefiniowana w aplikacji zmienna <strong>submit<\/strong> zmienia warto\u015b\u0107 na <strong>True<\/strong> czyli <strong>1<\/strong>. W pierwszej linii:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>dim speaker as<\/strong>&nbsp; <strong>System.Speech.Synthesis.SpeechSynthesizer;<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">deklarowana jest zmienna <strong>speaker<\/strong>, kt\u00f3ra b\u0119dzie obiektem klasy .NET <strong>System.Speech.Synthesis.SpeechSynthesizer<\/strong>, kt\u00f3ry reprezentuje syntezator mowy. Druga linijka tego skryptu:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>speaker = new<\/strong> <strong>System.Speech.Synthesis.SpeechSynthesizer;<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">jest odpowiedzialna za utworzenie konkretnej instancji obiektu za pomoc\u0105 s\u0142owa kluczowego <strong>new<\/strong>. Jest to mechanizm dobrze znany z j\u0119zyk\u00f3w takich, jak C++, C# czy Java. W trzeciej linii:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>speaker.SpeakAsync(wordtosay);<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">wywo\u0142ywana jest metoda <strong>SpeakAsync()<\/strong> zdefiniowana w klasie <strong>System.Speech.Synthesis.SpeechSynthesizer<\/strong>. Metoda ta powoduje wypowiedzenie przez syntezator okre\u015blonego tekstu. Argument <strong>wordtosay<\/strong> jest w\u0142a\u015bciwo\u015bci\u0105 Custom Property typu <strong>String<\/strong>, zdefiniowan\u0105 w symbolu, dla kt\u00f3rego zosta\u0142 utworzony ten skrypt.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ostatnia linia zeruje zmienn\u0105 <strong>submit<\/strong>, aby skrypt wykona\u0142 si\u0119 tylko jeden raz.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Uruchamiamy aplikacj\u0119. Warto\u015b\u0107 pisana w polu edycyjnym jest powi\u0105zana z w\u0142a\u015bciwo\u015bci\u0105 <strong>wordtosay<\/strong>, natomiast przycisk powoduje ustawienie warto\u015bci zmiennej <strong>submit <\/strong>na <strong>True<\/strong>. W efekcie po naci\u015bni\u0119ciu przycisku syntezator wypowiada to, co wpiszemy w tym polu.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1462\" height=\"893\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-08.jpg\" alt=\"\" class=\"wp-image-27067\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-08.jpg 1462w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-08-840x513.jpg 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-08-768x469.jpg 768w\" sizes=\"auto, (max-width: 1462px) 100vw, 1462px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Teraz przyjrzyjmy si\u0119 komentarzom. S\u0105 one pomocne w dokumentowaniu skryptu, co jest szczeg\u00f3lnie istotne, gdy wracamy do skryptu po d\u0142u\u017cszym czasie, albo gdy nad skryptem pracuje wiele os\u00f3b. Wszystko, co znajduje si\u0119 w komentarzach, jest pomijane podczas wykonywania skryptu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W skryptach QuickScript.NET mo\u017cna u\u017cywa\u0107 komentarzy wielowierszowych oraz jednowierszowych. Komentarze wielowierszowe s\u0105 zamkni\u0119te symbolami klamry <strong>{}<\/strong>. W tej spos\u00f3b mo\u017cna r\u00f3wnie\u017c tymczasowo \u201ewy\u0142\u0105czy\u0107\u201d fragment skryptu bez jego usuwania \u2013 wystarczy obj\u0105\u0107 go klamrami, a przestanie by\u0107 wykonywany.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1421\" height=\"553\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-06.jpg\" alt=\"\" class=\"wp-image-27065\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-06.jpg 1421w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-06-840x327.jpg 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-06-768x299.jpg 768w\" sizes=\"auto, (max-width: 1421px) 100vw, 1421px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Komentarz jednowierszowy zaczyna si\u0119 od znaku apostrofu <strong>\u2018<\/strong>. Mo\u017ce on obejmowa\u0107 ca\u0142\u0105 lini\u0119 albo jej cz\u0119\u015b\u0107 \u2013 pomijane jest wszystko pocz\u0105wszy od znaku apostrofu a\u017c do ko\u0144ca danej linii. Kolejna linia b\u0119dzie ju\u017c wykonywana normalnie.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"356\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-07-840x356.jpg\" alt=\"\" class=\"wp-image-27066\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-07-840x356.jpg 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-07-768x325.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/26-07.jpg 1419w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">W<a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/uzywanie-zewnetrznych-bibliotek-dll-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-27\/\"> kolejnym, ostatnim ju\u017c odcinku<\/a> dowiemy si\u0119, jak u\u017cywa\u0107 zewn\u0119trznych bibliotek .NET w skryptach.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div style=\"padding:56.25% 0 0 0;position:relative;\"><iframe src=\"https:\/\/player.vimeo.com\/video\/1214519527?title=0&amp;byline=0&amp;portrait=0&amp;badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"26 Zmienne i komentarze w skryptach\"><\/iframe><\/div><script src=\"https:\/\/player.vimeo.com\/api\/player.js\"><\/script>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n            <div id=\"mailerlite-form_9\" data-temp-id=\"6a6caf77edc1c\">\n                <div class=\"mailerlite-form\">\n                    <form action=\"\" method=\"post\" novalidate>\n                                                    <div class=\"mailerlite-form-title\"><h3>Newsletter Poradnika Automatyka<\/h3><\/div>\n                                                <div class=\"mailerlite-form-description\"><p>Czytaj trendy i inspiracje, podstawy automatyki, automatyk\u0119 w praktyce<\/p>\n<\/div>\n                        <div class=\"mailerlite-form-inputs\">\n                                                                                            <div class=\"mailerlite-form-field\">\n                                    <label for=\"mailerlite-9-field-email\">Email<\/label>\n                                    <input id=\"mailerlite-9-field-email\"\n                                           type=\"email\" required=\"required\"                                            name=\"form_fields[email]\"\n                                           placeholder=\"Email\"\/>\n                                <\/div>\n                                                        <div class=\"mailerlite-form-loader\">Please wait...<\/div>\n                            <div class=\"mailerlite-subscribe-button-container\">\n                                <button class=\"mailerlite-subscribe-submit\" type=\"submit\">\n                                    Zapisz si\u0119                                <\/button>\n                            <\/div>\n                            <input type=\"hidden\" name=\"form_id\" value=\"9\"\/>\n                            <input type=\"hidden\" name=\"action\" value=\"mailerlite_subscribe_form\"\/>\n                            <input type=\"hidden\" name=\"ml_nonce\" value=\"57dd88b3e1\"\/>\n                        <\/div>\n                        <div class=\"mailerlite-form-response\">\n                                                            <h4><p>Dzi\u0119kujemy za zapis do newslettera!<\/p>\n<\/h4>\n                                                    <\/div>\n                    <\/form>\n                <\/div>\n            <\/div>\n        <script type=\"text\/javascript\" src='https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/plugins\/official-mailerlite-sign-up-forms\/assets\/js\/localization\/validation-messages.js'><\/script>\n         <script type=\"text\/javascript\"> var selectedLanguage = \"pl\"; var validationMessages = messages[\"en\"]; if(selectedLanguage) { validationMessages = messages[selectedLanguage]; } window.addEventListener(\"load\", function () { var form_container = document.querySelector(`#mailerlite-form_9[data-temp-id=\"6a6caf77edc1c\"] form`); let submitButton = form_container.querySelector('.mailerlite-subscribe-submit'); submitButton.disabled = true; fetch('https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-admin\/admin-ajax.php', { method: 'POST', headers:{ 'Content-Type': 'application\/x-www-form-urlencoded', }, body: new URLSearchParams({ \"action\" : \"ml_create_nonce\", \"ml_nonce\" : form_container.querySelector(\"input[name='ml_nonce']\").value }) }) .then((response) => response.json()) .then((json) => { if(json.success) { form_container.querySelector(\"input[name='ml_nonce']\").value = json.data.ml_nonce; submitButton.disabled = false; } }) .catch((error) => { console.error('Error:', error); }); form_container.addEventListener('submit', (e) => { e.preventDefault(); let data = new URLSearchParams(new FormData(form_container)).toString(); let validationError = false; document.querySelectorAll('.mailerlite-form-error').forEach(el => el.remove()); Array.from(form_container.elements).forEach((input) => { if(input.type !== 'hidden') { if(input.required) { if(input.value == '') { validationError = true; let error = document.createElement(\"span\"); error.className = 'mailerlite-form-error'; error.textContent = validationMessages.required; input.after(error); return false; } } if((input.type == \"email\") && (!validateEmail(input.value))) { validationError = true; let error = document.createElement(\"span\"); error.className = 'mailerlite-form-error'; error.textContent = validationMessages.email; input.after(error); return false; } } }); if(validationError) { return false; } fade.out(form_container.querySelector('.mailerlite-subscribe-button-container'), () => { fade.in(form_container.querySelector('.mailerlite-form-loader')); }); fetch('https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-admin\/admin-ajax.php', { method: 'POST', headers:{ 'Content-Type': 'application\/x-www-form-urlencoded', }, body: data }) .then((response) => { fade.out(form_container.querySelector('.mailerlite-form-inputs'), () => { fade.in(form_container.querySelector('.mailerlite-form-response')); }); }) .catch((error) => { console.error('Error:', error); }); }); }, false); var fade = { out: function(el, fn = false) { var fadeOutEffect = setInterval(function () { if (!el.style.opacity) { el.style.opacity = 1; } if (el.style.opacity > 0) { el.style.opacity -= 0.1; } else { el.style.display = 'none'; clearInterval(fadeOutEffect); } }, 50); if( typeof (fn) == 'function') { fn(); } }, in: function(el) { var fadeInEffect = setInterval(function () { if (!el.style.opacity) { el.style.opacity = 0; } if (el.style.opacity < 1) { el.style.opacity = Number(el.style.opacity) + 0.1; } else { el.style.display = 'block'; clearInterval(fadeInEffect); } }, 50); } }; function validateEmail(email){ if(email.match( \/^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$\/ )) { return true; } return false; } <\/script> \n","protected":false},"excerpt":{"rendered":"<p>W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.<\/p>\n","protected":false},"author":12,"featured_media":27069,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[234],"tags":[195,232,314,243,308],"class_list":["post-26802","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automatyka-w-praktyce","tag-aveva-edge","tag-aveva-intouch-hmi","tag-aveva-plant-scada","tag-aveva-system-platform","tag-platforma-systemowa-aveva"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\r\n<title>Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26 | Poradnik Automatyka<\/title>\r\n<meta name=\"description\" content=\"W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/\" \/>\r\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26 | Poradnik Automatyka\" \/>\r\n<meta property=\"og:description\" content=\"W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/\" \/>\r\n<meta property=\"og:site_name\" content=\"Poradnik Automatyka\" \/>\r\n<meta property=\"article:published_time\" content=\"2026-07-27T09:53:45+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2026-07-31T12:20:23+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/kurs-ig-head-26.jpg\" \/>\r\n\t<meta property=\"og:image:width\" content=\"1281\" \/>\r\n\t<meta property=\"og:image:height\" content=\"400\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\r\n<meta name=\"author\" content=\"Mateusz Zajchowski\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mateusz Zajchowski\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minut\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/\"},\"author\":{\"name\":\"Mateusz Zajchowski\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/person\\\/e1bb798cd9509335f392d97dfcbe5cd5\"},\"headline\":\"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26\",\"datePublished\":\"2026-07-27T09:53:45+00:00\",\"dateModified\":\"2026-07-31T12:20:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/\"},\"wordCount\":758,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/kurs-ig-head-26.jpg\",\"keywords\":[\"AVEVA Edge\",\"AVEVA InTouch HMI\",\"aveva plant scada\",\"AVEVA System Platform\",\"Platforma Systemowa AVEVA\"],\"articleSection\":[\"Automatyka w praktyce\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/\",\"name\":\"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26 | Poradnik Automatyka\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/kurs-ig-head-26.jpg\",\"datePublished\":\"2026-07-27T09:53:45+00:00\",\"dateModified\":\"2026-07-31T12:20:23+00:00\",\"description\":\"W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/kurs-ig-head-26.jpg\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/kurs-ig-head-26.jpg\",\"width\":1281,\"height\":400},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Automatyka w praktyce\",\"item\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/category\\\/automatyka-w-praktyce\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#website\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/\",\"name\":\"Poradnik Automatyka\",\"description\":\"Poradnik Automatyka to przydatne kursy, u\u017cyteczne artyku\u0142y i merytoryczne webinary dla ka\u017cdego automatyka i elektryka.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\",\"name\":\"ASTOR\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/ASTOR_zwykly_sam_logotyp.png\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/ASTOR_zwykly_sam_logotyp.png\",\"width\":3322,\"height\":1078,\"caption\":\"ASTOR\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/person\\\/e1bb798cd9509335f392d97dfcbe5cd5\",\"name\":\"Mateusz Zajchowski\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/M.-Zajchowski-301x301.jpeg\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/M.-Zajchowski-301x301.jpeg\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/M.-Zajchowski-301x301.jpeg\",\"caption\":\"Mateusz Zajchowski\"},\"description\":\"Specjalista ds. oprogramowania przemys\u0142owego AVEVA Z firm\u0105 ASTOR zwi\u0105zany od 2014 roku, od samego pocz\u0105tku w obszarach dotycz\u0105cych system\u00f3w zarz\u0105dzania energi\u0105. Specjalista techniczny, certyfikowany trener i in\u017cynier wsparcia w zakresie oprogramowania przemys\u0142owego AVEVA (dawniej Wonderware). Posiada r\u00f3wnie\u017c do\u015bwiadczenie w zakresie integracji system\u00f3w oprogramowania z obiektowymi systemami sterowania i automatyki. Od ponad 3 lat dzia\u0142a w interdyscyplinarnym zespole ds. wykorzystania Sztucznej Inteligencji w przemy\u015ble, gdzie jest odpowiedzialny za zakres integracji zaawansowanych algorytm\u00f3w z oprogramowaniem przemys\u0142owym AVEVA.\",\"sameAs\":[\"https:\\\/\\\/pl.linkedin.com\\\/in\\\/mateusz-zajchowski-824451132\"],\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/autor\\\/mateuszza\\\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26 | Poradnik Automatyka","description":"W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/","og_locale":"pl_PL","og_type":"article","og_title":"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26 | Poradnik Automatyka","og_description":"W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.","og_url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/","og_site_name":"Poradnik Automatyka","article_published_time":"2026-07-27T09:53:45+00:00","article_modified_time":"2026-07-31T12:20:23+00:00","og_image":[{"width":1281,"height":400,"url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/kurs-ig-head-26.jpg","type":"image\/jpeg"}],"author":"Mateusz Zajchowski","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"Mateusz Zajchowski","Szacowany czas czytania":"7 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#article","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/"},"author":{"name":"Mateusz Zajchowski","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/e1bb798cd9509335f392d97dfcbe5cd5"},"headline":"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26","datePublished":"2026-07-27T09:53:45+00:00","dateModified":"2026-07-31T12:20:23+00:00","mainEntityOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/"},"wordCount":758,"commentCount":0,"publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/kurs-ig-head-26.jpg","keywords":["AVEVA Edge","AVEVA InTouch HMI","aveva plant scada","AVEVA System Platform","Platforma Systemowa AVEVA"],"articleSection":["Automatyka w praktyce"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/","name":"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26 | Poradnik Automatyka","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#primaryimage"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/kurs-ig-head-26.jpg","datePublished":"2026-07-27T09:53:45+00:00","dateModified":"2026-07-31T12:20:23+00:00","description":"W poprzednim odcinku poznali\u015bmy podstawy skrypt\u00f3w. Teraz dowiemy si\u0119 wi\u0119cej o zmiennych lokalnych i komentarzach w skryptach.","breadcrumb":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#primaryimage","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/kurs-ig-head-26.jpg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/kurs-ig-head-26.jpg","width":1281,"height":400},{"@type":"BreadcrumbList","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/zmienne-i-komentarze-w-skryptach-kurs-industrial-graphics-w-oprogramowaniu-aveva-odc-26\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Automatyka w praktyce","item":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/category\/automatyka-w-praktyce\/"},{"@type":"ListItem","position":2,"name":"Zmienne i komentarze w skryptach | Kurs\u00a0Industrial Graphics w oprogramowaniu AVEVA, odc. 26"}]},{"@type":"WebSite","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/","name":"Poradnik Automatyka","description":"Poradnik Automatyka to przydatne kursy, u\u017cyteczne artyku\u0142y i merytoryczne webinary dla ka\u017cdego automatyka i elektryka.","publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization","name":"ASTOR","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/logo\/image\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2018\/08\/ASTOR_zwykly_sam_logotyp.png","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2018\/08\/ASTOR_zwykly_sam_logotyp.png","width":3322,"height":1078,"caption":"ASTOR"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/e1bb798cd9509335f392d97dfcbe5cd5","name":"Mateusz Zajchowski","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/04\/M.-Zajchowski-301x301.jpeg","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/04\/M.-Zajchowski-301x301.jpeg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/04\/M.-Zajchowski-301x301.jpeg","caption":"Mateusz Zajchowski"},"description":"Specjalista ds. oprogramowania przemys\u0142owego AVEVA Z firm\u0105 ASTOR zwi\u0105zany od 2014 roku, od samego pocz\u0105tku w obszarach dotycz\u0105cych system\u00f3w zarz\u0105dzania energi\u0105. Specjalista techniczny, certyfikowany trener i in\u017cynier wsparcia w zakresie oprogramowania przemys\u0142owego AVEVA (dawniej Wonderware). Posiada r\u00f3wnie\u017c do\u015bwiadczenie w zakresie integracji system\u00f3w oprogramowania z obiektowymi systemami sterowania i automatyki. Od ponad 3 lat dzia\u0142a w interdyscyplinarnym zespole ds. wykorzystania Sztucznej Inteligencji w przemy\u015ble, gdzie jest odpowiedzialny za zakres integracji zaawansowanych algorytm\u00f3w z oprogramowaniem przemys\u0142owym AVEVA.","sameAs":["https:\/\/pl.linkedin.com\/in\/mateusz-zajchowski-824451132"],"url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/autor\/mateuszza\/"}]}},"_links":{"self":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/26802","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/comments?post=26802"}],"version-history":[{"count":2,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/26802\/revisions"}],"predecessor-version":[{"id":27083,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/26802\/revisions\/27083"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media\/27069"}],"wp:attachment":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media?parent=26802"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/categories?post=26802"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/tags?post=26802"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}