2/10/2012 10:07 AM | |
Joined: 4/29/2010 Last visit: 8/12/2024 Posts: 1557 Rating: (161)
|
Hello, the text is a bit confuse but the solution is simple. You just have to declarate a internal script tag as this array tag. For example: Dim Tag_01 'Internal script tag Tag_01 = SmartTags("DB10_HMI_Data")(1) ----> SmartTags("name of the array")(array-field) best regards |
2/10/2012 11:00 AM | |
Posts: 7 Rating: (0) |
The solution you gave only copies one element of the array to the internal variable.Maybe I didn't clearly explayned... What I'd like to be able to do is something similar to this: Dim tempArr, i tempArr=SmartTags("DB10_HMI_Data") for i=0 to UBound(tempArr) if tempArr(i)>0 then HmiRuntime.ActiveScreen.ScreenItems("Circle_" & CStr(j)).Visible=True else HmiRuntime.ActiveScreen.ScreenItems("Circle_" & CStr(j)).Visible=False end if next Note: in the Template screen I have circle objects named "Circle_0", "Circle_1",... I can do this in another way but would prefer to do it this way, via script. The above code doesn't work. However, if I declare and initialize an array inside the script, then I can copy the whole array to another variable inside the script which then becomes a copy of that array: Dim sourceArr, tempArr, i sourceArr=Array(12,5,1,0,3) tempArr=sourceArr for i=0 to UBound(tempArr) if tempArr(i)>0 then HmiRuntime.ActiveScreen.ScreenItems("Circle_" & CStr(j)).Visible=True else HmiRuntime.ActiveScreen.ScreenItems("Circle_" & CStr(j)).Visible=False end if next In this example, the code works: tempArr"becomes" sourceArr(with all the array elements); In the previous example, tempArr"becomes" nothing and an error is produced.. Hope I clarified my doubt. |
2/10/2012 2:37 PM | |
Joined: 4/29/2010 Last visit: 8/12/2024 Posts: 1557 Rating: (161)
|
No it isn´t possible to use all elements from the array together, just element for element....sadly. |
8/26/2014 7:35 PM | |
Posts: 23 Rating: (0) |
i am also try to copy the plc array to the internal tag but i still get error i try all the way .., i just simply mention one example below dim tag_1 ' internal tag_1=smarttags ("DB10 DBB1") (2) in this example i need to access DB10DBB1----2 nd BIT but when i use this method (what i show u in top) i get error .., in this method i need brief clarrification please help me ............
|