Changes for page 01 Lua Functions

Last modified by Theodore Xu on 2023/10/26 10:51

From version 8.1
edited by Stone Wu
on 2022/07/12 11:24
Change comment: There is no comment for this version
To version 17.1
edited by Theodore Xu
on 2023/08/24 16:45
Change comment: There is no comment for this version

Summary

Details

Page properties
Parent
... ... @@ -1,1 +1,1 @@
1 -V-BOX.V-Net.1\.User Manual.04 Lua Script.WebHome
1 +V-BOX.V-Net.Manual.04 Lua Script.WebHome
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Stone
1 +XWiki.AiXia
Content
... ... @@ -1507,8 +1507,19 @@
1507 1507  ** addr_getstring("@W_HSW191",17)
1508 1508  * Obtaining ICCID (read only)
1509 1509  ** addr_getstring("@W_HSW225",15)
1510 +* (((
1511 +TSAP settings of Siemens LOGO PLC*
1510 1510  
1511 1511  (((
1514 +addr_setword("@W_0#HSW1200",8192) means set the Local TSAP as 20.00
1515 +)))
1516 +
1517 +* (((
1518 +addr_setword("@W_0#HSW1201",4096) means set the Remote TSAP as 10.00
1519 +)))
1520 +)))
1521 +
1522 +(((
1512 1512  == **Power-down storage area (HAW/HAX)** ==
1513 1513  
1514 1514  The system storage area (HAW) is used for the system power-down hold registers:
... ... @@ -1918,125 +1918,69 @@
1918 1918  **For example:**
1919 1919  
1920 1920  {{code language="LUA"}}
1921 -mysql = require"mysqlclient"
1932 +-- Assuming the "mysqlclient" library is properly installed and available
1933 +mysql = require("mysqlclient")
1922 1922  
1923 1923  function DataInitRight()
1924 -
1925 -local dbName = "db_lua1"
1926 -
1927 -local user = "root"
1928 -
1929 -local pwd = "123456"
1930 -
1931 -local host = "192.168.56.186"
1932 -
1933 -local port = 3306
1934 -local character = "UTF8"
1935 -
1936 -mysql.init(dbName, user, pwd, host, port, character)
1937 -
1936 + local dbName = "excel"
1937 + local user = "root"
1938 + local pwd = "XXXXX"
1939 + local host = "192.168.39.146"
1940 + local port = 3306
1941 + local character = "utf8mb3"
1942 +
1943 + mysql.init(dbName, user, pwd, host, port, character)
1938 1938  end
1939 1939  
1940 1940  function ExecFunc()
1941 -
1942 -status, errorString = mysql.exec("delete from tb_lua1 where mykey =
1943 -
1944 -10;")
1945 -
1946 -if nil == status then
1947 -
1948 -print("ExecFunc() error:", errorString)
1949 -
1950 -return -1
1951 -
1952 -else
1953 -
1954 -print("the number of rows affected by the command:", status)
1955 -
1947 + status, errorString = mysql.exec("delete from student where Name = 'XXX';") --Delete statement, column name = table element
1948 + if nil == status then
1949 + print("ExecFunc() error:", errorString)
1950 + return -1
1951 + else
1952 + print("the number of rows affected by the command:", status)
1953 + end
1954 + return 0
1956 1956  end
1957 1957  
1958 -return 0
1959 1959  
1960 -end
1961 -
1962 1962  function ExecWithResultFunc()
1963 -
1964 -status, errorString = mysql.execWithResult("select * from tb_lua1;")
1965 -
1966 -if nil == status then
1967 -
1968 -print("ExecWithResultFunc() error:", errorString)
1969 -
1970 -return -1
1971 -
1972 -else
1973 -
1974 -print("ExecWithResultFunc()
1975 -
1976 -success
1977 -
1978 -: status
1979 -
1980 -type
1981 -
1982 -=
1983 -
1984 -",
1985 -
1986 -type(status))
1987 -
1988 -print("ExecWithResultFunc() success : status len = ", #status)
1989 -
1990 -local num = #status
1991 -
1992 -local i = 1
1993 -
1994 -if num > 0 then
1995 -
1996 -for i = 1, num, 1 do
1997 -
1998 -local var = string.format("select result[%d] :mykey = %d,
1999 -
2000 -value = %s", i, status[i].mykey, status[i].value)
2001 -
2002 -print(var)
2003 -
1959 + status, errorString = mysql.execWithResult("select * from student;")
1960 + if nil == status then
1961 + print("ExecWithResultFunc() error:", errorString)
1962 + return -1
1963 + else
1964 + print("ExecWithResultFunc() success : status type = ", type(status))
1965 + print("ExecWithResultFunc() success : status len = ", #status)
1966 + local num = #status
1967 + local i = 1
1968 + if num > 0 then
1969 + for i = 1, num, 1 do
1970 + local var = string.format("select result[%d] :Num = %d,Name = %s,Age = %d", i, status[i].Num, status[i].Name,status[i].Age) --Iterate through the data in the table, noting whether the elements are strings or numbers
1971 + print(var)
1972 + end
1973 + end
1974 + print("---------------")
1975 + end
1976 + return 0
2004 2004  end
2005 2005  
2006 -end
1979 +function MySQL.main()
1980 + print("script running ...")
1981 + DataInitRight()
2007 2007  
2008 -print("---------------")
1983 + -- use exec demo
1984 + if ExecFunc() < 0 then
1985 + return
1986 + end
2009 2009  
2010 -end
1988 + -- use execWithResult demo
1989 + if ExecWithResultFunc() < 0 then
1990 + return
1991 + end
2011 2011  
2012 -return 0
1993 + print("script running success")
2013 2013  end
2014 -
2015 -function luaMysql_apiTest.main()
2016 -
2017 -print("script running ...")
2018 -
2019 -DataInitRight()
2020 -
2021 ---use exec demo
2022 -
2023 -if ExecFunc() < 0 then
2024 -
2025 -return
2026 -
2027 -end
2028 -
2029 ---use execWithResult demo
2030 -
2031 -if ExecWithResultFunc() < 0 then
2032 -
2033 -return
2034 -
2035 -end
2036 -
2037 -print("script running success")
2038 -
2039 -end
2040 2040  {{/code}}
2041 2041  
2042 2042  = **12 Message summary algorithm** =