Jazz Soft お問い合わせ   JazzSoft@live.com     日本語   英語  日本語  中国語(繁体字)  中国語(簡体字)
工場自動化と歩留り管理ソリューション 
Skip Navigation Linksホーム > 製品一覧 > Swing > Swing SECS II リファレンス > プロパティ > Pointer

Jazz Softは2024年、日本からニューヨークに移転しました。
これに伴い、2025年4月1日より日本円での価格が変わり、為替レートに基づいて米ドル価格から決定されます。現在1ドル150円前後なため、値上がりになる可能性が高いです。ご注文を予定されている方は、2025年3月31日までにご注文・入金お願いいたします。
4月1日以降も日本のJazz Softよりご購入は可能です。米国Jazz Softからのご購入も可能ですが、支払い通貨は米ドルとなります。その代わり輸入となりますので消費税がかかりません。

Swing SECS II リファレンス   

Properties
Appearance
Array
BlockNumber
BorderStyle
DeviceID
EBit
Function
List
Msg
Pointer
PType
RBit
SessionID
Show
SourceID
Stream
SType
SystemBytes
TransactionID
Type
Value
ValueHex
WBit

Methods
Add
Init
Reply

Events

Pointer Property

The node used as candidate for operation. Node consists of '/' (slash), node number, and '[]' (bracket). Node number is the number which begins from 1. It is considered that root was specified when node is empty. Node can be compared to the directory structure of MS-DOS (I think it may be easy to understand that the description of 'node' in explanation is replaced with a 'directory').

To create node item, first specify node then add command to it.

構文

Visual Basic



Visual C++


戻り値

使用例

Visual Basic

.Pointer = "1"
.Add SecsTypeAscii, "abc"


Visual C++

m_msg.SetPointer("1");
m_msg.Add(SecsTypeAscii,"abc");

特記事項

You can put 'slush' in front of the node string. It will be ignored.

Visual Basic


.Pointer = ""
.Pointer = "/"      ' This is the same

.Pointer = "1/2"
.Pointer = "/1/2"   ' This is also the same


Visual C++


m_msg.SetPointer("");
m_msg.SetPointer("/");      // This is the same

m_msg.SetPointer("1/2");
m_msg.SetPointer("/1/2");   // This is also the same

Node can be made under the other node. In this case, you have to make parent node ahead of child node. The order to make nodes may differ from the order of actual SECS-II buffer.


1 : {
2 :   {
3 :     <a'abc'>
4 :   }
5 :   {
6 :     <a'def'>
7 :   }
8 : }

The order to add nodes are no matter and flexible whether "1, 2, 3, 5 then 6", "1, 2, 5, 3 then 6" or "1, 2, 5, 6 then 3".

1, 2, 3, 5 then 6

Visual Basic


.Pointer = ""
.Add SecsTypeList, ""       ' 1
.Pointer = "1"
.Add SecsTypeList, ""       ' 2
.Pointer = "1/1"
.Add SecsTypeAscii, "abc"   ' 3
.Pointer = "2"
.Add SecsTypeList, ""       ' 5
.Pointer = "2/1"
.Add SecsTypeAscii, "def"   ' 6


Visual C++


m_msg.SetPointer("");
m_msg.Add(SecsTypeList,"");       // 1
m_msg.SetPointer("1");
m_msg.Add(SecsTypeList,"");       // 2
m_msg.SetPointer("1/1");
m_msg.Add(SecsTypeAscii,"abc");   // 3
m_msg.SetPointer("2");
m_msg.Add(SecsTypeList,"");       // 5
m_msg.SetPointer("2/1");
m_msg.Add(SecsTypeAscii,"def");   // 6

1, 2, 5, 3, then 6

Visual Basic


.Pointer = ""
.Add SecsTypeList, ""       ' 1
.Pointer = "1"
.Add SecsTypeList, ""       ' 2
.Pointer = "2"
.Add SecsTypeList, ""       ' 5
.Pointer = "1/1"
.Add SecsTypeAscii, "abc"   ' 3
.Pointer = "2/1"
.Add SecsTypeAscii, "def"   ' 6


Visual C++


m_msg.SetPointer("");
m_msg.Add(SecsTypeList,"");       // 1
m_msg.SetPointer("1");
m_msg.Add(SecsTypeList,"");       // 2
m_msg.SetPointer("2");
m_msg.Add(SecsTypeList,"");       // 5
m_msg.SetPointer("1/1");
m_msg.Add(SecsTypeAscii,"abc");   // 3
m_msg.SetPointer("2/1");
m_msg.Add(SecsTypeAscii,"def");   // 6

1, 2, 5, 6 then 3

Visual Basic


.Pointer = ""
.Add SecsTypeList, ""       ' 1
.Pointer = "1"
.Add SecsTypeList, ""       ' 2
.Pointer = "2"
.Add SecsTypeList, ""       ' 5
.Pointer = "2/1"
.Add SecsTypeAscii, "def"   ' 6
.Pointer = "1/1"
.Add SecsTypeAscii, "abc"   ' 3


Visual C++


m_msg.SetPointer("");
m_msg.Add(SecsTypeList,"");       // 1
m_msg.SetPointer("1");
m_msg.Add(SecsTypeList,"");       // 2
m_msg.SetPointer("2");
m_msg.Add(SecsTypeList,"");       // 5
m_msg.SetPointer("2/1");
m_msg.Add(SecsTypeAscii,"def");   // 6
m_msg.SetPointer("1/1");
m_msg.Add(SecsTypeAscii,"abc");   // 3

When you read node value, first specify node then read.

Visual Basic


.Pointer = "1"
If .Value = "abc" Then
  ...
End If


Visual C++


m_msg.SetPointer("1");
if(m_msg.GetValue()=="abc")
{
  ...
}

If node is array, they are returned separated with space code.

Visual Basic


.Pointer = "1"
.Add SecsTypeBool, "1"
.Add SecsTypeBool, "0"
...
.Pointer = "1"
Dim strBuf As String
strBuf = .Value   ' "1 0" is returned


Visual C++


m_msg.SetPointer("1");
m_msg.Add(SecsTypeBool,"1");
m_msg.Add(SecsTypeBool,"0");
...
m_msg.SetPointer("1");
CString strBuf=m_msg.GetValue();   // "1 0" is returned

If you extract one of the item in array, use bracket. Index of array begins with 0.

Visual Basic


.Pointer = "1[1]"
Dim strBuf As String
strBuf = .Value   ' "0" is returned


Visual C++


m_msg.SetPointer("1[1]");
CString strBuf=m_msg.GetValue();   // "0" is returned

So if root node is array, it becomes strange format -- only bracket.

Visual Basic


.List = ""
.Pointer = "[1]"
Dim strBuf As String
strBuf = .Value   ' "3.14" is returned


Visual C++


m_msg.SetList("");
m_msg.SetPointer("[1]");
Cstring strBuf=m_msg.GetValue();   // "3.14" is returned

Bracket is ignored in ASCII, JIS-8 and List.

参照

お問い合わせ   JazzSoft@live.com
  Copyright © 1997 - 2025 Jazz Soft, Inc.