“数据修改操作语言”用于定义在 Tracking Analyst 中与“数据修改”服务操作一起使用的函数。函数的作用是在触发“数据修改”操作时修改数据消息。使用“数据修改操作语言”定义的任何函数均被提供数据消息中的字段值作为输入。函数中使用的所有字段均具有受支持的数据类型。函数会替换数据消息中一个或多个字段的值以输出其结果。该语言提供了基本算术命令以及一些高级数学函数,以便执行计算。
数据修改操作语言结构
以下部分介绍有效使用“数据修改操作语言”所需的详细信息。
支持的数据类型
下面是语言理解的基本数据类型:
- 整数(示例:14)
- 实数(示例:3.1452)
- 文本(示例:Anderson)
- 日期(示例:12/12/2009)
函数中定义的所有变量均属于所列数据类型之一。
变量
当函数开始时,数据消息中的所有字段均可用作与字段具有相同名称的变量。其他变量在首次引用时创建。例如,以下语句将创建一个新变量:
NewLatitude = OldLatitude
如果变量 NewLatitude 不存在且之前从未使用过,则将使用与变量 OldLatitude 相同的数据类型创建它。请注意,更改一个数据消息变量的值将不会更改消息本身中的值。请参阅“替换语句”部分了解如何执行此操作。
由于变量名称区分大小写,因此必须认真检查函数中出现的字段名称的大小写情况。此外,还必须确保与定义的变量中使用的大小写一致。
基本分配语句
分配语句将一个变量的值设置为另一个变量的值或表达式。使用等号 ( = ) 将变量与源分开。采用“数据修改操作语言”的表达式类似于采用其他编程语言的表达式,可包含使用数学运算符分隔的变量(+、-、*、/)。可使用括号指定运算符的计算顺序。下面是一些有效的分配语句示例:
- NewLatitude = OldLatitude(这将创建一个新变量并为其分配与现有变量值相同的值。)
- TempString = "This is a string"(这将为变量显式分配一个值。)
- A = B * 5.56(这将为涉及另一个变量的数学运算的结果分配一个变量。)
- Result = (4 * A) + 6 * (C + D)(这将为涉及多个变量的更复杂数学运算的结果分配一个变量。)
数学函数
特殊函数可用于执行常见的数学和形状操作运算。下面列出了可用函数:
- Arcsin(反正弦)
- Arccos(反余弦)
- Arctan(反正切)
- Sin(正弦)
- Cos(余弦)
- Tan(正切)
替换语句
替换语句用于更改数据消息中的字段。下面是使用替换语句的两个示例:
- Replace MSG_LAT with NewLatitude
- Replace WIND_SPD_MPH with WindSpeedKPH * 1.609
注释
注释允许用户在函数中包括描述性文本信息,而不会影响函数的结果。采用“数据修改操作语言”可使用许多字符来指定注释:
- //
- !
- REM
- '
示例函数
提供以下示例函数以供您入门:
此函数将数据消息中的纬度和经度值从十进制度转换为十进制秒。
// Copy Data Message Fields OldLatitude = MSG_LAT OldLongitude = MSG_LON
// Perform Conversion NewLatitude = OldLatitude * 60.0 NewLongitude = OldLongitude * 60.0
// Change Data Message Replace MSG_LAT with NewLatitude Replace MSG_LON with NewLongitude // End