これらの DataStage 関数は、オーケストレーション・パイプラインのコード・エディターで使用します。例えば、ユーザー変数を定義したり、拡張条件を作成したりします。
式ビルダー関数の構文
引数の構文では、大括弧は引数がオプションであることを示します。
パラメーターは、任意のタイプのデータを受け入れることができます。 ストリング、int、float、null、およびその他のタイプの引数を入力できます。 例えば、関数 IsNull(input (any))
は、以下のパラメーター・タイプを受け入れますが、以下のタイプ専用ではありません。
ds.IsNull(1)
ds.IsNull("try null")
ds.IsNull(1.78)
ds.IsNull(null)
式ビルダーは、関数のコーディングに以下のカテゴリーを使用します。
変換関数
単一のデータ・エレメント・フォーマットを別のフォーマットに変換します。
Ascii
ストリング内の文字の値を EBCDIC から ASCII フォーマットに変換します。
構文
ds.Ascii(input (string))
戻り値: フォーマット・ストリングの結果の ASCII ストリングに変換された EDBCDI ストリング。
例
以下のコードは "65 66 67" を返します。
ds.Ascii("193 194 195")
Char
数値コード値から ASCII 文字を返します。
構文
ds.Char(code (uint8))
これは、フォーマット char の対応する文字を返します。
例
次の例では、ASCII コード 65 を文字 A として出力します。
ds.Char(65)
Checksum
ストリングの巡回冗長コード値を戻します。
構文
ds.Checksum(input (string))
返される値: 巡回冗長コードであるフォーマット・ストリングのチェックサム値。
例
以下のコードは 57158 を返します。
ds.Checksum("This is any arbitrary string value")
CRC32
CRC32 関数を使用して、16 ビット巡回冗長コードを返します。
構文
ds.CRC32(input (string))
戻り値: 10 進数形式の結果。
例
以下のコードは 57158 を返します。
ds.CRC32("This is any arbitrary string value")
DateToString
日付のストリング表現を戻します。 日付のデフォルトの書式ストリングは 「%yyyy%mm%dd」です。例えば、日付 2009-08-25 は 10 進数「20090825」として保存されます。 ただし、オプションで、日付を 10 進数で保存する方法を設定する書式ストリングを指定することができます。 フォーマット・ストリングは、数値のみを含むフォーマットを指定する必要があります。 ハイフン文字 (-) をパック 10 進数値に保管されていないため、「%yyyy-%mm-%dd」のような書式ストリングを指定することはできません。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
0 から 9 までのリテラル数字も有効です。
構文
ds.DateToString(date (date), [format (string)])
戻り値: ストリング形式の日付です。
例
mylink.mydate
に日付 18th (2009 年 8 月 18 日) が含まれている場合、以下のコードはストリング「2009-08-18」を返します。
ds.DateToString(mylink.mydate)
以下の例では、 mylink.mydate
列に含まれている日付を dd:mm:yyyy
という形式のストリングに出力します。 mylink.mydate
に日付 18th (2009 年 8 月 18 日) が含まれていた場合、以下のコードはストリング「18:08:2009」を返します。
ds.DateToString(mylink.mydate, "%dd:%mm:%yyyy")
DateToDecimal
与えられた日付をパック 10 進値として返します。 日付のデフォルトの書式ストリングは 「%yyyy%mm%dd」です。例えば、日付 2009-08-25 は 10 進数「20090825」として保存されます。 ただし、オプションで、日付を 10 進数で保存する方法を設定する書式ストリングを指定することができます。 フォーマット・ストリングは、数値のみを含むフォーマットを指定する必要があります。 ハイフン文字 (-) をパック 10 進数値に保管されていないため、「%yyyy-%mm-%dd」のような書式ストリングを指定することはできません。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
0 から 9 までのリテラル数字も有効です。
構文
ds.DateToDecimal(basedate (date), [format (string)])
戻り値: 10 進数形式の日付です。
例
mylink.basedate
に日付 「2012-08-18」 が含まれている場合、以下の関数は日付を 10 進数 「18082012」 として保存します:
ds.DateToDecimal(mylink.basedate, "%dd%mm%yyyy")
mylink.basedate
に日付 2012-08-18 が含まれている場合、次の関数は日付を 10 進数 20120818 として保管します。
ds.DateToDecimal(mylink.basedate)
DecimalToDate
与えられたパック 10 進数を日付として返します。 日付への変換において、10 進数の符号とスケールは無視されます。 デフォルトの書式ストリングは 「%yyyy%mm%dd」です。例えば、日付 2009-08-25 は 10 進数 「20090825」 として保存されます。 ただし、オプションで、日付を 10 進数で保存する方法を設定する書式ストリングを指定することができます。 書式制御ストリングは、数値を含む書式のみを指定する必要があります。 ハイフン文字 (-) をパック 10 進数値に保管されていないため、「%yyyy-%mm-%dd」のような書式ストリングを指定することはできません。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
0 から 9 までのリテラル数字も有効です。
構文
ds.DecimalToDate(basedec (decimal), [format (string)])
戻り値: 日付形式の 10 進数です。
例
mylink.mydecdata
に値 18082012 が含まれている場合、以下の関数は日付 2012-08-18 を返します:
ds.DecimalToDate(mylink.basedate, "%dd%mm%yyyy")
mylink.mydecdata
に値 -201208.18 が含まれている場合、以下の関数は日付 2012-08-18 を返します:
ds.DecimalToDate(mylink.basedate)
DecimalToDecimal
指定された 10 進数を 10 進表記で返します。 引数 rtype
は、オプションで丸めタイプを指定し、以下のいずれかの値に設定されます:
ceil
: ソース・フィールドを正の無限大の方向に巡回します。 例えば、1.4 -> 2, -1.6 -> -1 です。
floor
: ソース・フィールドを負の無限大の方向に巡回します。 例えば、1.6 -> 1, -1.4 -> -2 です。
round_inf
: 正の値は正の無限大に、負の値は負の無限大に丸められることによってその関係を解消し、表記可能な最も近い値に向かってソース・フィールドをまるめられ丸められるか切り捨てます。 例えば、1.4 -> 1, 1.5 -> 2, -1.4 -> -1, -1.5 -> -2 です。
trunc_zero
: 符号に関係なく、宛先でサポートされる最も右の小数桁の右側の小数桁を破棄します。 例えば、宛先が整数の場合は、すべての小数桁が切り捨てられます。 宛先が、位取りがより小さい別の 10 進数である場合、宛先 10 進数の位取りサイズになるように丸めまたは切り捨てが行われます。 例えば、1.6 -> 1, -1.6 -> -1 です。
構文
ds.DecimalToDecimal(decimal (decimal), [rtype (string)])
戻り値: 結果の 10 進数です。
例
mylink.mydec
に 10 進数 2.5345が含まれている場合、次の関数は 10 進数 2.54: を返します。
ds.DecimalToDecimal(mylink.mydec,"ceil")
mylink.mydec
に 10 進数 2.5345が含まれている場合、次の関数は 10 進数 2.53を返します。
ds.DecimalToDecimal(mylink.mydec,"floor")
mylink.mydec
に 10 進数 2.5345が含まれている場合、次の関数は 10 進数 2.53を返します。
ds.DecimalToDecimal(mylink.mydec,"trunc_zero")
mylink.mydec
に 10 進数 2.5345が含まれている場合、次の関数は 10 進数 2.53を返します。
ds.DecimalToDecimal(mylink.mydec,"round_inf")
DecimalToDFloat
指定された 10 進数を dfloat
表現で戻します。 オプション引数 fix_zero
は、すべてのゼロ 10 進数値が有効と見なされることを指定します (デフォルトでは、すべてゼロを含む 10 進数は無効として扱われます)。
構文
ds.DecimalToDFloat(decimal (decimal), ["fix_zero"])
戻り値: dfloat
形式の 10 進数です。
例
mylink.mydec
に 10 進数 00000004.00が含まれている場合、次の関数は dfloat
数値 4 を返します。
ds.DecimalToDFloat(mylink.mydec,"fix_zero")
mylink.mydec
に 10 進数 00012344.00が含まれている場合、次の関数は dfloat
数値 12344 を返します。
ds.DecimalToDFloat(mylink.mydec,"fix_zero")
mylink.mydec
に 10 進数 00012344.120が含まれている場合、次の関数は dfloat
number 12344.12を返します。
ds.DecimalToDFloat(mylink.mydec,"fix_zero")
mylink.mydec
に 10 進数 00012344.120が含まれている場合、次の関数は dfloat 数値 12344.12を返します。
ds.DecimalToDFloat(mylink.mydec)
mylink.mydec
に 10 進数 00012344.000が含まれている場合、次の関数は dfloat 数値 12344 を返します。
ds.DecimalToDFloat(mylink.mydec)
DecimalToString
与えられた 10 進数をストリングとして返します。 引数 fix_zero
は、オプションで、すべてのゼロ 10 進数値が有効と見なされることを指定します (デフォルトでは、すべてゼロを含む 10 進数は無効として扱われます)。 これは、パック 10 進数表現の符号ビットがすべて 0 およびすべての内容の数字である場合をカバーします。 このキャストは、 fix_zero
が true でない限り、有効とは考えられません。
構文
ds.DecimalToString(decimal (decimal), ["fix_zero"])
戻り値: ストリング形式の 10 進数です。
例
mylink.mydec
に 10 進数 00000004.00が含まれている場合、次の関数はストリング「4」を戻します。
ds.DecimalToString(mylink.mydec,"suppress_zero")
mylink.mydec
に 10 進数 00000004.00が含まれている場合、次の関数はストリング「0000000000000000000000000004.0000000000」を戻します。
ds.DecimalToString(mylink.mydec,"fix_zero")
mylink.mydec
に 10 進数 00000004.00が含まれている場合、次の関数はストリング「4」を戻します。
ds.DecimalToString(mylink.mydec)
DecimalToTime
与えられたパック 10 進数を時間として返します。 オプションで、時間を 10 進数に保存する方法を指定するフォーマット・ストリングを指定できます。 デフォルトのフォーマット・ストリングは「%hh%nn%ss」です。したがって、例えば、時刻 14:03:22 は 10 進数 140322 として保管されます。 フォーマット・ストリングは、数値のみを含むフォーマットを指定する必要があります。 例えば、コロン文字 (:) はパック 10 進数値に保存できないため、「%hh: %nn:%ss」のような書式ストリングを指定することはできません。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
0 から 9 までのリテラル数字も有効です。
指定されたフォーマットにマイクロ秒が含まれている場合 (例えば、 %ss.4)、小数点の位置は 10 進値で推測されます。 小数点の位置は、10 進数の指定されたスケールと一致しなくてもかまいません (例えば、スケール = 4)。
構文
ds.DecimalToTime(decimal (decimal), [format (string)])
戻り値: 時刻形式の 10 進数。
例
mylink.mytimedec
に 10 進値 200658 が含まれている場合、次の関数は時刻 20:06:58 を返します。
ds.DecimalToTime(mylink.mytimedec)
列 mylink.mytimedec に 10 進数値 580620 が格納されている場合、次の関数は時刻 20:06:58 を返します。
ds.DecimalToTime(mylink.mytimedec, "%ss%nn%hh")
DecimalToTimestamp
与えられたパック 10 進数をタイム・スタンプとして返します。 オプションで、タイム・スタンプを 10 進数に保存する方法を指定するフォーマット・ストリングを指定できます。 デフォルトの書式制御ストリングは「%hh%nn%ss」です。したがって、例えば、タイム・スタンプ 2009-08-25 14:03:22 は 10 進数 20090825140322 として保管されます。 フォーマット・ストリングは、数値のみを含むフォーマットを指定する必要があります。 例えば、「%yyyy/%mm/%dd%hh: %nn:%ss」 のような書式ストリングを指定することはできません。これは、スラッシュ文字 (/) とコロン文字 (:) をパック 10 進数値に保管できないためです。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
0 から 9 までのリテラル数字も有効です。
指定されたフォーマットにマイクロ秒が含まれている場合 (例えば、 %ss.4)、小数点の位置は 10 進値で推測されます。 小数点の位置は、10 進数の指定されたスケールと一致しなくてもかまいません (例えば、スケール = 4)。
構文
ds.DecimalToTimestamp(decimal (decimal), [format (string)])
戻り値: タイム・スタンプ形式の 10 進数。
例
mylink.mytimestampdec
に値 19580818200658 が含まれている場合、次の関数はタイム・スタンプ 1958-08-18 20:06:58 を返します。
ds.DecimalToTimestamp(mylink.mytimestampdec)
link.mytimestampdec
に 10 進値 200658220818 が含まれている場合、次の関数はタイム・スタンプ 2022-08-18 20:06:58 を戻します。
ds.DecimalToTimestamp(mylink.mytimestampdec, "%hh%nn%ss%yy%mm%dd")
DFloatToDecimal
与えられた dfloat 値を 10 進数で表した値を返します。 引数 rtype
は、オプションで丸めタイプを指定し、以下のいずれかの値に設定されます:
ceil
: ソース・フィールドを正の無限大の方向に巡回します。 例えば、1.4 -> 2, -1.6 -> -1 です。
floor
: ソース・フィールドを負の無限大の方向に巡回します。 例えば、1.6 -> 1, -1.4 -> -2 です。
round_inf
: 正の値は正の無限大に、負の値は負の無限大に丸められることによってその関係を解消し、表記可能な最も近い値に向かってソース・フィールドをまるめられ丸められるか切り捨てます。 例えば、1.4 -> 1, 1.5 -> 2, -1.4 -> -1, -1.5 -> -2 です。
trunc_zero
: 符号に関係なく、宛先でサポートされる最も右の小数桁の右側の小数桁を破棄します。 例えば、宛先が整数の場合は、すべての小数桁が切り捨てられます。 宛先が、位取りがより小さい別の 10 進数である場合、宛先 10 進数の位取りサイズになるように丸めまたは切り捨てが行われます。 例えば、1.6 -> 1, -1.6 -> -1 です。
構文
ds.DFloatToDecimal(number (dfloat), [rtype (string)])
戻り値: dfloat 形式の 10 進数です。
例
mylink.myfloat
に dfloat 数値 2.534が含まれている場合、次の関数は 10 進数 2.54: を返します。
ds.DFloatToDecimal(mylink.mydec,"ceil")
mylink.myfloat
に dfloat 数値 2.534が含まれている場合、次の関数は 10 進数 2.53: を返します。
ds.DFloatToDecimal(mylink.mydec,"floor")
mylink.myfloat
に dfloat 数値 2.534が含まれている場合、次の関数は 10 進数 2.53: を返します。
ds.DFloatToDecimal(mylink.mydec,"trunc_zero")
mylink.myfloat
に dfloat 数値 2.534が含まれている場合、次の関数は 10 進数 2.53: を返します。
ds.DFloatToDecimal(mylink.mydec,"round_inf")
DfloatToStringNoExp
指定された dfloat を、指定されたスケールを使用して、指数のないストリング表現で返します。
構文
ds.DfloatToStringNoExp(number (dfloat), scale (string))
戻り値: ストリング形式の dfloat 数値です。
例
mylink.myfloat
に dfloat 数値 2.534が含まれている場合、次の関数はストリング「2.5」を返します。
ds.DfloatToStringNoExp(mylink.myfloat, "2")
Dtx (D)
10 進整数を 16 進数に変換します。
構文
ds.Dtx(number (int32), size(int8))
returns: フォーマット・ストリングの結果。
例
次のコードは"002F":を返す:
ds.Dtx(47,4)
EBCDIC
式の各文字を ASCII 表現値から EBCDIC 表現値に変換します。
構文
ds.Ebcdic(input (string))
結果の EDBCDII ストリングに変換された ASCII ストリングを返します。
例
次のコードは、「193 194 195 64 241 242 243」を返します。
ds.Ebcdic("ABC 123")
Iconv
ストリングを内部ストレージ・フォーマットに変換します。
構文
ds.Iconv(string (string), code (string))
戻り値: ストリング・フォーマットの内部ストレージ・フォーマット。
例
以下のコードは 10740 を返します。
ds.Iconv("27 MAY 97", "D2")
以下のコードは 10740 を返します。
ds.Iconv("1997 5 27", "D YMD")
IntToBool
整数をブール型に変換します。 ゼロ以外の値の場合は true を返し、0 の場合は false を返します。
構文
ds.IntToBool(integer (int))
戻り値: true または false のブール値。
例
値 2 は true を返します。
ds.IntToBool(2)
IsValid
指定されたストリングが指定されたタイプで有効かどうかを返します。
有効なタイプは、"date"、"decimal"、"dfloat"、"sfloat"、"int8"、"uint8"、"int16"、"uint16"、"int32"、"uint32"、" です。int64","uint64"," string "," time "," timestamp ".
日付、時刻、およびタイム・スタンプのデータ型については、オプションでフォーマット・ストリングを指定できます。 フォーマット・ストリングは、入力データが日付、時刻、またはタイム・スタンプのデフォルトのフォーマットと異なる場合に、使用するフォーマットを記述します。 日付のデフォルト形式は「%yyyy-%mm-%dd」です。 時刻のデフォルトの形式は 「%hh: %mm:%ss」 です。 タイム・スタンプのデフォルト形式は "%yyyy-%mm-%dd %hh: %mm:%ss" です。 この関数は警告をログに記録しません。
構文
ds.IsValid(type (string), teststring (string), [format (string)])
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
例
mylink.mystring
にストリング「1」が含まれている場合、以下の関数は値 1 を戻します:
ds.IsValid("int8", mylink.mystring)
mylink.mystring
にストリング「380096.06」が含まれている場合、次の関数は値 0 を戻します:
ds.IsValid("int8", mylink.mystring)
IsValidDate
与えられた値がタイプ date で有効かどうかを返します。 この関数は警告をログに記録します。
構文
ds.IsValidDate(testdate (date))
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
mylink.mydate
に日付 2011-09-13 が含まれている場合、次の関数は値 1 を戻します。
ds.IsValidDate(mylink.mydate)
mylink.mydate
にストリング「380096.06」が含まれている場合、変換されたストリングは有効な日付ではないため、以下の関数は値 0 を戻します。
ds.IsValidDate(mylink.mydate)
IsValidDecimal
指定された値がデータ型 decimal で有効かどうかを返します。 allzerosflag
が 0 に設定されている場合、すべてゼロの表現は無効です。 allzerosflag
はデフォルトで 0 に設定されます。
構文
ds.IsValidDecimal(testvalue (decimal), [allzerosflag (uint8)])
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
例
mylink.mynum
に値 310007.65 が含まれている場合、次の関数は値 1 を戻します。
ds.IsValidDecimal(mylink.mynum)
IsValidTime
指定された時刻がタイプ time で有効かどうかを返します。
構文
ds.IsValidTime(testtime (time))
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
例
mylink.mytime
に時刻 23:09:22 が含まれている場合、次の関数は値 1 を戻します:
ds.IsValidTime(mylink.mytime)
IsValidTimestamp
指定された値がタイプ timestamp で有効かどうかを返します。
構文
ds.IsValidTimestamp(testtimestamp (timestamp))
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
例
mylink.mytimestamp
に時刻 2011-09-13 23:09:22 が含まれている場合、次の関数は値 1 を戻します:
ds.IsValidTimestamp(mylink.mytimestamp)
Oconv
式を出力フォーマットに変換します。
構文
ds.Oconv(expression (string), conversion (string))
returns: 結果をフォーマット・ストリングの出力フォーマットに変換します。
例
次のコードは 1997-147 を返します。
ds.Oconv(10740, "D-YJ")
以下のコードは、27 MAY 97 を返します。
ds.Oconv(10740, "D DMY, [A3,2]")
RawNumAt
指定された raw フィールドの指定された指標値にある整数値を返します。 指標は 0 から開始されます。
構文
ds.RawNumAt(rawfield (string), index (int32))
戻り値: 索引での整数値 (int32 形式)です。
例
column mylink.myraw
にストリング「hello」(「{ 0x68 0x65 0x6C 0x6C 0x6F }」) から派生した未加工値が含まれている場合この場合、次の関数は整数 104 (文字 h の ASCII コード) を戻します。
ds.RawNumAt(mylink.myraw, 0)
mylink.myraw
にストリング「hello」(「{ 0x68 0x65 0x6C 0x6C 0x6F }」) から派生した未加工値が含まれている場合指定された索引が範囲外であるため、次の関数は 0 を返します。
ds.RawNumAt(mylink.myraw, 12)
RawToString
与えられた未加工値をストリング表記として返します。 未加工入力値に、出力ストリングが使用されるターゲットの文字セット内で文字として有効なバイト・シーケンスが含まれることを保証する必要があります。
例えば、未加工値 { 0xE0 0x41 0x42 }
は UTF-8 文字の有効なシーケンスではありません。これは、先行バイト 0xE0の後に [0x80..0xBF] の範囲のバイトが続くことになっているためです。
RawToString関数に生の値'{ xE0 x41 x42 }
が渡された場合、出力文字列をUTF-8でエンコードされたものとしてアクセスするとエラーが発生する可能性がある。
構文
ds.RawToString(rawfield (string))
戻り値: ストリングとしての指定された未加工値です。
例
mylink.myraw
に値 { 0x31 0x31 0x30 0x35 0x32 0x32 0x30 0x39 }
が含まれている場合、次の関数はストリング「11052209」を戻します。
ds.RawToString(mylink.myraw)
Seq
ASCII 文字から数字コード値を生成します。 オプションで、 allow8bits
引数を指定して、8-bit ASCII 値を変換することができます。
構文
ds.Seq(seq (char))
戻り値:ASCII 文字の数字コードです。
例
次の例では、文字 A を ASCII コード 65 として出力します。
ds.Seq("A")
SeqAt
指定されたストリングの指定された位置の文字の数字コード・ポイント値を返します。 指標は 0 から開始されます。 指定されたインデックスが範囲外の場合、この関数は 0 を戻します。
構文
ds.SeqAt(basestring (string), index (int32))
戻り値: 指定されたストリング内の指定された位置にある文字の数値コード・ポイント値は形式が int32
になります。
例
mylink.mystring
にストリング「horse」が含まれている場合、以下の関数は値 0x6F (つまり、文字 o の ASCII 値) を戻します。
ds.SeqAt(mylink.mystring, 1)
StringToBool
ストリングをブール型に変換します。 空ストリングの場合は false を返し、その他の値の場合は true を返します。
構文
ds.StringToBool(string (string))
戻り値: true または false のブール値。
例
空ストリングは false を返します。
ds.StringToBool("")
StringToDate
指定されたストリングから、指定された形式の日付を戻します。 ストリングの日付がデフォルトのフォーマット yyyy-mm-dd の場合は、フォーマット・ストリングを指定する必要はありません。
構文
ds.StringToDate(string (string), [format (string)])
returns: 指定された形式の文字列を日付に変換します。
例
mylink.mystring
にストリング「1958-08-18」が含まれている場合、次の関数は日付 1958-08-18 を返します。
ds.StringToDate(mylink.mystring)
mylink.mystring
にストリング「18:08:1958」が含まれている場合、次の関数は日付 1958-08-18 を返します。
ds.StringToDate(mylink.mystring,"%dd:%mm:%yyyy")
StringToDecimal
与えられたストリングを 10 進表記として返します。 引数 rtype
は、オプションで丸めタイプを指定し、以下のいずれかの値に設定されます:
ceil
: ソース・フィールドを正の無限大の方向に巡回します。 例えば、1.4 -> 2, -1.6 -> -1 です。
floor
: ソース・フィールドを負の無限大の方向に巡回します。 例えば、1.6 -> 1, -1.4 -> -2 です。
round_inf
: 正の値は正の無限大に、負の値は負の無限大に丸められることによってその関係を解消し、表記可能な最も近い値に向かってソース・フィールドをまるめられ丸められるか切り捨てます。 例えば、1.4 -> 1, 1.5 -> 2, -1.4 -> -1, -1.5 -> -2 です。
trunc_zero
: 符号に関係なく、宛先でサポートされる最も右の小数桁の右側の小数桁を破棄します。 例えば、宛先が整数の場合は、すべての小数桁が切り捨てられます。 宛先が、位取りがより小さい別の 10 進数である場合、宛先 10 進数の位取りサイズになるように丸めまたは切り捨てが行われます。 例えば、1.6 -> 1, -1.6 -> -1 です。
構文
ds.StringToDecimal(string (string), [rtype (string)])
戻り値: 10 進数形式のストリングです。
例
mylink.mystring
にストリング「19982.22」が含まれている場合、次の関数は 10 進数 19982.22を戻します。
ds.StringToDecimal(mylink.mystring)
mylink.mystring
にストリング「19982.2276」が含まれている場合、次の関数は 10 進数 19982.23を戻します。
ds.StringToDecimal(mylink.mystring,"ceil")
StringToRaw
ストリングをその未加工コード値として戻します。
構文
ds.StringToRaw(string (string))
戻り値: ストリングの対応する未加工コード値です。
例
mylink.mystring
にストリング「hello」が含まれている場合、次の関数は値「{0x68 0x65 0x6C 0x6C 0x6F}」を返します。
ds.StringToRaw(mylink.mystring)
StringToTime
与えられたストリングを時刻に変換して返します。
構文
ds.StringToTime(string (string), [format (string)])
戻り値: 時間値のストリングです。
例
mylink.mystring
にストリング「20:06:58」が含まれている場合、関数は 20:06:58 の時刻を戻します。
ds.StringToTime(mylink.mystring)
mylink.mystring
にストリング「20: 6:58」が含まれている場合、関数は 20:06:58 の時刻を戻します。
ds.StringToTime(mylink.mystring,"%(h,s):%(n,s):%(s,s)")
StringToTimestamp
指定されたストリングをタイム・スタンプ形式で戻します。
構文
ds.StringToTimestamp(string (string), [format (string)])
戻り値: タイム・スタンプ形式のストリングです。
例
mylink.mystring
にストリング「1958-08-08 20:06:58」が含まれている場合、関数はタイム・スタンプ 1958-08-08 20:06:58 を返します。
ds.StringToTimestamp(mylink.mystring)
mylink.mystring
にストリング「8/ 8/1958 20: 6:58」が含まれている場合、関数はタイム・スタンプ 1958-08-08 20:06:58 を返します。
ds.StringToTimestamp(mylink.mystring, "%(d,s)/%(m,s)/%yyyy%(h,s):%(n,s):%(s,s)")
StringToUstring
オプションで、指定されたマップを使用して (それ以外の場合は、プロジェクトのデフォルトを使用します)、指定されたストリングから ustring
を戻します。
構文
ds.StringToUstring(string (string), [mapname (string)])
戻り値: ustring 形式のストリングです。
例
mylink.mystring
にストリング「11052009」が含まれている場合、次の関数は ustring「11052009」を戻します。
ds.StringToUstring(mylink.mystring)
TimestampToDate
与えられたタイム・スタンプを日付に変換して返します。
構文
ds.TimestampToDate(timestamp (timestamp))
戻り値: タイム・スタンプの結果の日付です。
例
mylink.mytimestamp
にタイム・スタンプ 1958-08-18 20:06:58 が含まれている場合、次の関数は日付 1958-08-18 を返します。
ds.TimestampToDate(mylink.mytimestamp)
TimestampToDecimal
与えられたタイム・スタンプをパック 10 進数として返します。 デフォルトの書式ストリングは「 %yyyy%mm%dd%hh%nn%ss」です。 例えば、タイム・スタンプ 2009-08-25 14:03:22 は、10 進数 20090825140322 として保存されます。 ただし、オプションで、日付を 10 進数で保存する方法を設定する書式ストリングを指定することができます。 フォーマット・ストリングは、数値のみを含むフォーマットを指定する必要があります。 例えば、「%yyyy/%mm/%dd%hh: %nn:%ss」 のような書式ストリングを指定することはできません。これは、スラッシュ文字 (/) とコロン文字 (:) をパック 10 進数値に保管できないためです。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
0 から 9 までのリテラル数字も有効です。
指定されたフォーマットにマイクロ秒が含まれている場合 (例えば、 %ss.4)、小数点の位置は 10 進値で推測されます。 小数点の位置は、指定された小数点の位取りと一致している必要はありません (例えば、位取り = 4)。
構文
ds.TimestampToDecimal(timestamp (timestamp), [format (string)])
戻り値:10 進数形式の結果のタイム・スタンプです。
例
mylink.mytimestamp
にタイム・スタンプ 1958-08-18 20:06:58 が含まれている場合、次の関数は 10 進値 19580818200658 を返します。
ds.TimestampToDecimal(mylink.mytimestamp)
mylink.mytimestamp
にタイム・スタンプ 1958-08-18 20:06:58 が含まれる場合、次の関数は 10 進値 200658580818 を返します。
ds.TimestampToDecimal(mylink.mytimestamp, "%hh%nn%ss%yy%mm%dd")
TimestampToString
指定されたタイム・スタンプをストリング形式で返します。
構文
ds.TimestampToString(timestamp (timestamp), [format (string)])
戻り値: ストリング・フォーマット中の結果タイム・スタンプです。
例
mylink.mytimestamp
にタイム・スタンプ 1958-08-18 20:06:58 が含まれている場合、関数はストリング「1958-08-18 20:06:58」を返します。
ds.TimestampToString(mylink.mytimestamp)
mylink.mytimestamp
にタイム・スタンプ 1958-08-18 20:06:58 が含まれている場合、関数はストリング "1 8/0 8/1 9 5 8 20:06:58" を返します。
ds.TimestampToString(mylink.mytimestamp, "%dd/%mm/%yyyy %hh:%nn:%ss")
TimestampToTime
指定されたタイム・スタンプを時刻形式で返します。
構文
ds.TimestampToTime(timestamp (timestamp), [format (string)])
戻り値: 時刻フォーマット中の結果タイム・スタンプです。
例
mylink.mytimestamp
にタイム・スタンプ 1958-08-18 20:06:58 が含まれる場合、関数は時刻 20:06:58 を返します。
ds.TimestampToTime(mylink.mytimestamp)
TimeToString
与えられた時刻をストリングに変換して返します。
構文
ds.TimeToString(timestamp (timestamp), [format (string)])
戻り値: 時刻形式の結果です。
例
mylink.mytime
に時刻 20:06:58 が含まれている場合、次の関数はストリング「20:06:58」を戻します:
ds.TimeToString(mylink.mytime)
mylink.mytime
に時刻 20:06:58 が含まれている場合、次の関数はストリング「58:06:20」を戻します:
ds.TimeToString(mylink.mytime, "%ss:%nn:%hh")
TimeToDecimal
与えられた時刻をパック 10 進数として返します。 デフォルトの書式ストリングは「%hh%nn%s」です、例えば、時刻 14:03:22 は、10 進数 140322 として保存されます。 ただし、オプションで、時刻を 10 進数で保存する方法を指定する書式ストリングを指定できます。 フォーマット・ストリングは、数値を含むフォーマットのみを指定できます。 例えば、コロン文字 (:) はパック 10 進数値に保存できないため、「%hh: %nn:%ss」のような書式ストリングを指定することはできません。 以下のトークンは、10 進数値への変換または 10 進数値からの変換で有効です。
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
0 から 9 までのリテラル数字も有効です。
指定されたフォーマットにマイクロ秒が含まれている場合 (例えば、 %ss.4)、小数点の位置は 10 進値で推測されます。 小数点の位置は、指定された小数点の位取りと一致している必要はありません (例えば、位取り = 4)。
構文
ds.TimeToDecimal(time (time), [format (string)])
戻り値: 10 進数形式の時刻です。
例
mylink.mytime
に時刻 20:06:58 が含まれている場合、以下の関数は 10 進数値 200658 を戻します:
ds.TimeToDecimal(mylink.mytime)
mylink.mytime
に時刻 20:06:58 が含まれている場合、次の関数は 10 進値 580620 を戻します:
ds.TimeToDecimal(mylink.mytime, "%ss%nn%hh")
UniChar
0 から 65535 の範囲の 10 進値に基づいて単一の Unicode 文字を生成します。
構文
ds.UniChar(expression (int32))
returns: フォーマット・ストリングの結果。
例
以下のコードは「U」を返します。
ds.UniChar(0x00F5)
UniSeq
単一の Unicode 文字に基づいて 10 進値を生成します。
構文
ds.UniSeq(expression (string))
戻り値: int32形式の Unicode 文字に対応する 10 進数。
例
以下のコードは 195 を返します。
ds.UniSeq("ä")
UstringToString
指定された ustring からストリングを返します。オプションで、指定されたマップを使用します (それ以外の場合は、プロジェクト・デフォルト・マップを使用します)。
構文
ds.UstringToString(string (ustring), [mapname(string)])
戻り値: ストリング形式の結果です。
例
mylink.myustring
に ustring「11052009」が含まれている場合、次の関数はストリング「11052009」を戻します:
ds.UstringToString(mylink.myustring)
Xtd (X)
16 進数ストリングを 10 進数に変換します。
構文
ds.Xtd(hexadecimal (string))
戻り値: 16 進数ストリングに対応する 10 進数値。
例
以下のコードは 48879 を戻します。
ds.Xtd("beef")
整数
式の整数部分を返します。 指定された算術演算は、システムの完全な精度を使用して計算されます。 値の小数部分は切り捨てられ、丸められず、残りの整数が戻されます。
構文
ds.Int(expression (dfloat))
returns: 丸められて int64型に変換された 10 進数値。
例
以下のコードは 454 を返します。
ds.Int(454.95)
以下のコードは 2 を返します。
ds.Int(2.35)
日付/時刻関数
これらの関数は、式の中でデータ関数と時間関数に使用します。
引数に日付、時刻、またはタイム・スタンプを指定する関数は、特定の形式のストリングを使用します。
- 日付の場合、形式は
%yyyy-%mm-%dd
です - 時刻の場合、形式は
%hh:%nn:%ss
です。 マイクロ秒を含むように拡張された場合、形式は%hh:%nn:%ss.x
になります。ここで、 x は小数点以下の桁数 (秒) を示します。 - タイム・スタンプの場合、形式は日付形式とそれに続く時刻形式です。
引数に曜日が指定されている関数は、曜日を指定するストリングを取ります。 日は、3 文字の省略形またはフル・ネームで指定します。 例えば、ストリング「thu」と「thursday」は両方とも有効です。
CurrentDate
ジョブが実行される日付を返します。
構文
ds.CurrentDate()
戻り値:日付形式での現在日付です。
例
この関数を使用して、現在日付を取得します。
ds.CurrentDate()
CurrentTime
ジョブが実行される時刻を返します。
構文
ds.CurrentTime()
これは、現在時刻を時刻形式で返します。
例
この関数を使用して、現在時刻を取得します。
ds.CurrentTime()
CurrentTimeMS
ジョブが実行される時刻 (マイクロ秒を含む) を返します。
構文
ds.CurrentTimeMS()
戻り値: 時刻形式の現在時刻は、マイクロ秒を含んでいます。
例
この関数を使用して、現在時刻を取得し、データを出力します。
ds.CurrentTimeMS()
CurrentTimestamp
ジョブが実行された日時を示すタイム・スタンプを返します。
構文
ds.CurrentTimestamp()
戻り値: タイム・スタンプ形式の現在のタイム・スタンプ。
例
この関数を使用して、出力データに対する現在タイム・スタンプを取得します。
ds.CurrentTimestamp()
CurrentTimestampMS
ジョブが実行される日時を示すタイム・スタンプ (マイクロ秒を含む) を返します。
構文
ds.CurrentTimestampMS()
戻り値: タイム・スタンプ形式の現在のタイム・スタンプ。
例
この関数を使用して、出力データに対する現在タイム・スタンプを取得します。
ds.CurrentTimestampMS()
日付
内部システム日付から 1967 年 12 月 31 日 (0 日目) までの経過日数を示す単一の数値を返します。 それ以降のすべての日付は、0 日目から経過した日数を表す正数です。 それより前のすべての日付は、0 日目より前の日数を表す負の数値です。
構文
ds.Date()
戻り値: int 形式の結果の日付。
例
現在日付が 1967 年 11 月 15 日の場合、次のコードは -46 を返します。 現在日付が 1968 年 2 月 15 日の場合、以下のコードは 46 を返します。
ds.Date()
DateFromDaysSince
基準日に整数を加算して日付を返します。 負の整数値を使用すると、基準日より前の日付を返すことができます。
構文
ds.DateFromDaysSince(number (int32), [baseline_date_object (string)])
戻り値: ユーザーが入力した基準日に整数を加算した日付。
例
mylink.myintcol
に整数 18250 が含まれ、 mylink.mydatecol
に日付 1958-08-18 が含まれている場合、以下の 3 つの関数は同等であり、日付 2008-08-05 を返します。
ds.DateFromDaysSince(18250,"1958-08-18")
ds.DateFromDaysSince(mylink.myintcol,"1958-08-18")
ds.DateFromDaysSince(mylink.myintcol,mylink.mydatecol)
mylink.mynegintcol
整数-1を含み、「mylink.mydatecol
」が日付1958-08-18を含む場合、以下の3つの関数は等価であり、日付1958-08-17を返す:
ds.DateFromDaysSince(-1,"1958-08-18")
ds.DateFromDaysSince(mylink.mynegintcol,"1958-08-18")
ds.DateFromDaysSince(mylink.mynegintcol,mylink.mydatecol)
DateFromDaysSince2
基準日に整数を加算して日付を返します。 負の整数値を使用すると、基準日より前の日付を返すことができます。
構文
ds.DateFromDaysSince2(number (int32), [baseline_date_object (date)])
戻り値: ユーザーが入力した基準日に整数を加算した日付。
例
mylink.myint
に整数 18250 が含まれ、 mylink.mydate
に日付 1958-08-18 が含まれている場合、以下の 3 つの関数は同等であり、日付 2008-08-05 を返します。
ds.DateFromDaysSince2(18250,"1958-08-18")
ds.DateFromDaysSince2(mylink.myint,"1958-08-18")
ds.DateFromDaysSince2(mylink.myint, mylink.mydate)
mylink.mynegint
整数-1を含み、「mylink.mydate
」が日付1958-08-18を含む場合、以下の3つの関数は等価であり、日付1958-08-17を返す:
ds.DateFromDaysSince2(-1,"1958-08-18")
ds.DateFromDaysSince2(mylink.mynegint,"1958-08-18")
ds.DateFromDaysSince2(mylink.mynegint, mylink.mydate)
DateFromComponents
3 個の個別値として指定された年、月、および日から日付を返します。
構文
ds.DateFromComponents(years (int32), months (int32), dayofmonth (int32))
戻り値: 指定された値を持つ単一の日付。
例
mylink.year
に値 2010、 mylink.month
に値 12、 mylink.dayofmonth
に値 2 が含まれている場合、以下の 2 つの関数は同等であり、日付 2010-12-02 を返します。
ds.DateFromComponents(2010, 12, 2)
ds.DateFromComponents(mylink.year, mylink.month, mylink.dayofmonth)
DateFromJulianDay
指定されたユリウス日番号から日付を返します。
構文
ds.DateFromJulianDay(julianday (uint32))
戻り値: 指定されたユリウス日の値の日付です。
例
mylink.myjul
に値 2454614 が含まれている場合、以下の 2 つの関数は同等であり、日付 2008-05-27 を返します。
ds.DateFromJulianDay(2454614)
ds.DateFromJulianDay(mylink.myjul)
DateOffsetByComponents
3 個の個別値として指定された年、月および日のオフセットを適用して、日付を返します。 オフセット値は、それぞれ正、ゼロ、負の値をとることができます。
構文
ds.DateOffsetByComponents(basedate (date), year_offset (int32), month_offset (int32), dayofmonth_offset (int32))
戻り値: 日付形式の指定された日付オフセット。
例
mylink.basedate
に 2011-08-18 が含まれ、 mylink.yearos
に値 2 が含まれ、 mylink.monthos
に値 0 が含まれ、 mylink.dayofmonthosol
に値 0 が含まれる場合、以下の 2 つの関数は同等であり、日付 2013-08-18 を返します。
ds.DateOffsetByComponents("2011-08-18", 2, 0, 0)
ds.DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)
もし'mylink.basedate
が2011-08-18を含み、'mylink.yearos
が値-2、'mylink.monthos
が値0、'mylink.dayofmonthosol
が値0を含むなら、以下の2つの関数は等価であり、日付2009-08-18を返す。
ds.DateOffsetByComponents("2011-08-18", -2, 0, 0)
ds.DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)
日
システム日付から月の日を返します。
構文
ds.Day()
これは、月の日を int 形式で返します。
例
現在日付が 1967-12-31 の場合、次のコードは 31 を返します。
ds.Day()
DaysSinceFromDate
指定された日付タイプの日付とストリング・タイプのソース日付を取り、ソース日付から指定された日付までの日数を返します。
構文
ds.DaysSinceFromDate(given_date (date), source_date_string (string))
戻り値: タイプ int32の 2 つの指定日付の差 (日数)。
例
mylink.mysourcedate
に日付 1958-08-18 が含まれ、 mylink.mygivendate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、整数値 18263 を返します。
ds.DaysSinceFromDate(mylink.mygivendate, mylink.mysourcedate)
ds.DaysSinceFromDate("2008-08-18","1958-08-18")
DaysSinceFromDate2
指定された日付タイプの日付とソース日付タイプの日付を取り、ソース日付から指定された日付までの日数を返します。
構文
ds.DaysSinceFromDate2(given_date (date), source_date_object (date))
戻り値: int32 形式の中に 2 つの指定された日付の差です。
例
mylink.mysourcedate
に日付 1958-08-18 が含まれ、 mylink.mygivendate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、整数値 18263 を返します。
ds.DaysSinceFromDate2(mylink.mygivendate, mylink.mysourcedate)
ds.DaysSinceFromDate2("2008-08-18","1958-08-18")
DaysInMonth
指定の基準日を含む月の日数を返します。
構文
ds.DaysInMonth(basedate (date))
戻り値: int32 形式の中の月の日数です。
例
mylink.mysourcedate
に日付 1958-08-18 が含まれている場合、次の 2 つの関数は同等であり、整数値 31 を返します。
ds.DaysInMonth(mylink.mysourcedate)
ds.DaysInMonth("1958-08-18")
DaysInYear
指定の基準日を含む年の日数を返します。
構文
ds.DaysInYear(basedate (date))
戻り値: int32 形式でその年の日数です。
例
mylink.mysourcedate の日付が 2012-08-18 の場合、次の 2 つの関数は同等で、整数値 366 を返します。
ds.DaysInYear(mylink.mysourcedate)
ds.DaysInYear("2012-08-18")
mylink.mysourcedate の日付が 2011-08-18 の場合、次の 2 つの関数は同等で、整数値 365 を返します。
ds.DaysInYear(mylink.mysourcedate)
ds.DaysInYear("2011-08-18")
DateOffsetByDays
指定された日数のオフセットによって計算された日付を返します。 オフセット値は、正、ゼロ、負の値をとることができます。
構文
ds.DateOffsetByDays(basedate (date), dayoffset (int32))
戻り値: 対応するオフセットを持つ日付オブジェクトです。
例
mylink.basedate
に 2011-08-18 が含まれ、 mylink.dayoffset
に値 2 が含まれている場合、以下の 2 つの関数は同等であり、日付 2011-08-20 を返します。
ds.DateOffsetByDays("2011-08-18", 2)
ds.DateOffsetByDays(mylink.basedate, mylink.dayoffset)
mylink.basedate が 2011-08-18 で、 mylink.dayoffset の値が -31 の場合、次の 2 つの関数は同等で、日付 2011-07-18 を返します。
ds.DateOffsetByDays("2011-08-18", -31)
ds.DateOffsetByDays(mylink.basedate, mylink.dayoffset)
HoursFromTime
時刻の時間の部分を返します。
構文
ds.HoursFromTime(time (time))
戻り値: int8 形式で時間の値です。
例
mylink.mytime
に時刻 22:30:00 が含まれている場合、以下の 2 つの関数は同等であり、整数値 22 を戻します。
ds.HoursFromTime(mylink.mytime)
ds.HoursFromTime("22:30:00")
JulianDayFromDate
指定された日付に相当するユリウス日番号を返します。
構文
ds.JulianDayFromDate(time (time))
戻り値: int32 形式で指定された日付のユリウス日の数です。
例
mylink.mydate
に日付 2008-05-27 が含まれている場合、以下の 2 つの関数は同等であり、値 2454614 を返します。
ds.JulianDayFromDate("2008-05-27")
ds.JulianDayFromDate(mylink.mydate)
MicroSecondsFromTime
時刻のマイクロ秒の部分を返します。
構文
ds.MicroSecondsFromTime(time (time))
戻り値:int32 形式で、時刻のマイクロ秒の値です。
例
mylink.mytime
に時刻 22 :30:00.32 が含まれている場合、次の関数は値 320000 を戻します:
ds.MicroSecondsFromTime(mylink.mytime)
MidnightSecondsFromTime
午前 0 次から指定の時刻までの秒数を返します。
構文
ds.MidnightSecondsFromTime(time (time))
真夜中から時刻までの 2 番目の値を int8 形式で返します。
例
mylink.mytime
に時刻 00:30:52 が含まれている場合、以下の 2 つの関数は同等であり、値 1852 を戻します:
ds.MidnightSecondsFromTime("00:30:52")
ds.MidnightSecondsFromTime(mylink.mytime)
MinutesFromTime
時刻の分の部分を返します。
構文
ds.MinutesFromTime(time (time))
returns: 時刻の分の値 ( int8 形式)。
例
mylink.mytime
に時刻 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、値 30 を戻します:
ds.MinutesFromTime("22:30:52")
ds.MinutesFromTime(mylink.mytime)
MonthDayFromDate
与えられた日付から、日の部分を返します。
構文
ds.MonthDayFromDate(date (date))
戻り値: int8 形式の指定された日付からの月の日。
例
mylink.mydate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、値 18 を戻します:
ds.MonthDayFromDate("2008-08-18")
ds.MonthDayFromDate(mylink.mydate)
MonthFromDate
与えられた日付から、月を返します。
構文
ds.MonthFromDate(date (date))
戻り値: 形式 int8の月の数。
例
mylink.mydate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は両方とも値 8 を返します。
ds.MonthFromDate("2008-08-18")
ds.MonthFromDate(mylink.mydate)
WeekdayFromDate
指定された日付以降の曜日番号を戻します。 週の最初の曜日と見なされる曜日を指定できます。指定しない場合は、デフォルトで日曜日になります。
構文
ds.WeekdayFromDate(date (date), [origin_day (string)])
戻り値: 指定された日付以降の曜日 ( int8 形式)。
例
mylink.mydate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、値 1 を戻します:
ds.WeekdayFromDate("2008-08-18")
ds.WeekdayFromDate(mylink.mydate)
mylink.mydate
に日付 2008-08-18 が含まれ、 mylink.origin_day
に「saturday」が含まれている場合、以下の関数は同等であり、値 2 を返します。
ds.WeekdayFromDate("2008-08-18", "saturday")
ds.WeekdayFromDate("2008-08-18", "sat")
ds.WeekdayFromDate(mylink.mydate, mylink.origin_day)
NextWeekdayFromDate
ソース日付以後で最も早い指定曜日に相当する日付を返します。 曜日は、「thursday」 などのフル・ネーム、または「thu」 などの 3 文字の省略形で指定されます。
構文
ds.NextWeekdayFromDate(sourcedate (date), day_of_week (string))
戻り値: 指定された日付からその月の日です。
例
mylink.mysourcedate
に日付 2008-08-18 が含まれ、指定された曜日が木曜日である場合、以下の 2 つの関数は同等であり、値 2008-08-21 を返します。
ds.NextWeekdayFromDate("2008-08-18", "thursday")
ds.NextWeekdayFromDate(mylink.mysourcedate, "thu")
NthWeekdayFromDate
ソース日付から指定された週数をオフセットした週の指定曜日に相当する日付を返します。 曜日は例えば thursday のようにフルネームで指定するか、thu のように 3 文字の省略形で指定します。 オフセット値は、正、負、またはゼロを指定することができます。
構文
ds.NthWeekdayFromDate(basedate (date), day_of_week (string), week_offset (int32))
戻り値:指定された日付から週単位でオフセットされた指定された曜日の日付です。
例
mylink.mydate
に日付 2009-08-18 が指定され、木曜日にオフセット 1 が指定されている場合、以下の 2 つの関数は同等であり、値 2009-08-20 を戻します。 木曜日の最初のオカレンスが戻されます。 上記の例では、木曜日は日付 2009-08-18 と同じ週に発生しています。 2009-08-18 の日付は火曜日です。
ds.NthWeekdayFromDate("2009-08-18", "thursday", 1)
ds.NthWeekdayFromDate(mylink.mydate, "thu", 1)
もし'mylink.mydate
が2009-08-18の日付を含み、木曜日が-22のオフセットで指定された場合、以下の2つの関数は等価であり、2009-08-06の値を返す。 以前の 2 つの木曜日のオカレンスが戻されました。
ds.NthWeekdayFromDate("2009-08-18", "thursday", -2)
ds.NthWeekdayFromDate(mylink.mydate, "thu", -2)
PreviousWeekdayFromDate
ソース日付の直前の指定曜日に相当する日付を返します。 曜日は、「thursday」 などのフル・ネーム、または「thu」 などの 3 文字の省略形で指定されます。
構文
ds.PreviousWeekdayFromDate(sourcedate (date), day_of_week (string))
戻り値: 指定された日付から最新の平日の日付です。
例
mylink.mysourcedate
に日付 2008-08-18 と木曜日が指定されている場合、以下の 2 つの関数は同等であり、値 2008-08-14 を返します。
ds.PreviousWeekdayFromDate("2008-08-18", "thursday")
ds.PreviousWeekdayFromDate(mylink.mysourcedate, "thu")
SecondsFromTime
時刻の 2 番目の部分を返します。
構文
ds.SecondsFromTime(time (time))
returns: dfloat 形式の時刻の 2 番目の値。
例
mylink.mytime
に時刻 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、値 52 を戻します:
ds.SecondsFromTime("22:30:52")
ds.SecondsFromTime(mylink.mytime)
SecondsSinceFromTimestamp
2 つのタイム・スタンプ・オブジェクト間の秒数を返します。
構文
ds.SecondsSinceFromTimestamp(timestamp (timestamp), timestamp_base_string (string))
戻り値: dfloat 形式の 2 番目の値。
例
mylink.mytimestamp
にタイム・スタンプ 2008-08-18 22:30:52 が含まれ、 mylink.mytimestamp_base
にタイム・スタンプ 2008-08-19 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、値 -86400 を返します。
ds.SecondsSinceFromTimestamp("2008-08-18 22:30:52","2008-08-19 22:30:52")
ds.SecondsSinceFromTimestamp(mylink.mytimestamp, mylink.mytimestamp_base)
SecondsSinceFromTimestamp2
2 つのタイム・スタンプ・オブジェクト間の秒数を返します。
構文
ds.SecondsSinceFromTimestamp2(timestamp (timestamp), timestamp_base_object (timestamp))
戻り値: dfloat 形式の 2 番目の値。
例
mylink.mytimestamp
にタイム・スタンプ 2008-08-18 22:30:52 が含まれ、 mylink.mytimestamp_base
にタイム・スタンプ 2008-08-19 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、値 -86400 を返します。
ds.SecondsSinceFromTimestamp2("2008-08-18 22:30:52","2008-08-19 22:30:52")
ds.SecondsSinceFromTimestamp2(mylink.mytimestamp, mylink.mytimestamp_base)
時刻
内部の時刻を表すストリング値を戻します。 内部時刻は、午前 0 時から最も近い 1000 分の 1 秒 (現地時間) までの経過秒数です。
構文
ds.Time()
書式制御ストリングの結果の時刻を戻します。
例
現在時刻が 11:17:43:19 の場合、以下のコードは 40663.842: を返します。
ds.Time()
TimeDate
システム日時をフォーマット・ストリングとして返します。
構文
ds.TimeDate()
戻り値:ストリング形式でのシステム時刻と日付です。
TimeFromComponents
指定された時間、分、秒、およびマイクロ秒の日付型の時刻を int32として返します。
構文
ds.TimeFromComponents(hours (int32), minutes (int32), seconds (int32), microseconds (int32))
returns: 日付タイプの時刻。
例
mylink.hourcol
の値が 10、 mylink.mincol の値が 12、 mylink.seccol の値が 2、 mylink.mseccol
の値が 0 の場合、以下の 2 つの関数は同等で、時刻 10:12:02 を返します。
ds.TimeFromComponents(10, 12, 2, 0)
ds.TimeFromComponents(mylink.hourcol, mylink.mincol, mylink.seccol, mylink.mseccol)
TimeFromMidnightSeconds
システム時刻を時刻形式で返します。
構文
ds.TimeFromMidnightSeconds(seconds (time))
真夜中からの秒数を時刻形式で返します。
例
mylink.mymidnightseconds
に値 240 が含まれている場合、以下の 2 つの関数は同等であり、値 00:04:00 を戻します:
ds.TimeFromMidnightSeconds(240)
ds.TimeFromMidnightSeconds(mylink.mymidnightseconds)
TimeOffsetByComponents
それぞれ個別値として指定された時間のオフセット、分のオフセット、および秒のオフセットを基準時刻に適用して、時刻を返します。 秒オフセットは、ミリ秒を含むことができます。
構文
ds.TimeOffsetByComponents(basetime (time), hour_offset (int32), minute_offset (int32), second_offset (dfloat))
戻り値: 指定された値による時間オフセットです。
例
mylink.basetime
に 14:05:29 、 mylink.houros
に値 2、 mylink.minos
に値 0、 mylink.secos
に値 20 が含まれている場合、以下の 2 つの関数は同等であり、時刻 16:05:49 を戻します。
ds.TimeOffsetByComponents("14:05:29", 2, 0, 20)
ds.TimeOffsetByComponents(mylink.basetime, mylink.houros, mylink.minos, mylink.secos)
TimeOffsetBySeconds
指定された時間のオフセットを基準時刻に適用して、時刻を返します。 秒オフセットは、ミリ秒を含むことができます。
構文
ds.TimeOffsetBySeconds(basetime (time), second_offset (dfloat))
戻り値: 指定された値による秒オフセット付きの時刻。
例
mylink.basetime
に 14:05:29.30 が含まれ、 mylink.secos
に値 2.5が含まれている場合、以下の 2 つの関数は同等であり、時刻 14:05:31 を返します。
ds.TimeOffsetBySeconds("14:05:29.30", 2.5)
ds.TimeOffsetBySeconds(mylink.basetime, mylink.secos)
TimestampFromDateTime
指定された日時からタイム・スタンプを返します。
構文
ds.TimestampFromDateTime(date (date), time (time))
戻り値:指定された日付と時刻のタイム・スタンプです。
例
mylink.mydate
に日付 2008-08-18 が含まれ、 mylink.mytime
に時刻 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、タイム・スタンプ 2008-08-18 22:30:52 を返します。
ds.TimestampFromDateTime("2008-08-18","22:30:52")
ds.TimestampFromDateTime(mylink.mydate, mylink.mytime)
TimestampFromSecondsSince
基本タイム・スタンプ・オブジェクトからの秒数から派生したタイム・スタンプを戻します。
構文
ds.TimestampFromSecondsSince(seconds (dfloat), [base_timestamp_object (string)])
戻り値: 指定された秒の値から派生したタイム・スタンプ。
例
mylink.myseconds
に値 2563 が含まれ、 mylink.timestamp_base
にタイム・スタンプ 2008-08-18 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、タイム・スタンプ 2008-08-18 23:13:35 を返します。
ds.TimestampFromSecondsSince(2563,"2008-08-18 22:30:52")
ds.TimestampFromSecondsSince(mylink.myseconds,mylink.timestamp_base)
TimestampFromSecondsSince2
基本タイム・スタンプ・オブジェクトからの秒数から派生したタイム・スタンプを戻します。
構文
ds.TimestampFromSecondsSince2(seconds (dfloat), [base_timestamp_object (timestamp)])
戻り値: 指定された秒の値から派生したタイム・スタンプ。
例
mylink.myseconds
に値 2563 が含まれ、 mylink.timestamp_base
にタイム・スタンプ 2008-08-18 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、タイム・スタンプ 2008-08-18 23:13:35 を返します。
ds.TimestampFromSecondsSince2(2563,"2008-08-18 22:30:52")
ds.TimestampFromSecondsSince2(mylink.myseconds, mylink.timestamp_base)
TimestampFromTimet
指定された UNIX time_t
ストリング値からタイム・スタンプを返します。
構文
ds.TimestampFromTimet(timet_string (int32))
戻り値: 指定された秒の値から派生したタイム・スタンプ。
例
mylink.mytimet
に値 1234567890 が含まれている場合、以下の 2 つの関数は同等であり、タイム・スタンプ 2009-02-13 23:31:30 を返します。
ds.TimestampFromTimet(1234567890)
ds.TimestampFromTimet(mylink.mytimet)
TimestampFromTime2
指定された時刻オブジェクトとタイム・スタンプ・オブジェクトからタイム・スタンプを返します。 タイム・オブジェクトの値は、タイム・スタンプ・オブジェクトの時刻値を上書きして、タイム・スタンプから日付部分のみが使用されるようにします。
構文
ds.TimestampFromTime2(time (time), timestamp (timestamp))
戻り値: 指定された時刻およびタイム・スタンプ・オブジェクトからのタイム・スタンプです。
例
mylink.mytime
に時刻 12:03:22 が含まれ、 mylink.mytimestamp
にタイム・スタンプ 2008-08-18 22:30:52 が含まれている場合、以下の 2 つの関数は同等であり、タイム・スタンプ 2008-08-18 12:03:22 を返します。
ds.TimestampFromTime2("12:03:22", "2008-08-18 22:30:52")
ds.TimestampFromTime2(mylink.mytime, mylink.mytimestamp)
TimestampOffsetByComponents
年オフセット、月オフセット、日オフセット、時間オフセット、分オフセット、および秒オフセットを持つ基本タイム・スタンプからオフセットを適用して、タイム・スタンプを返します。各オフセットは、個別の値として指定されます。 秒のオフセットは、マイクロ秒を含むことができます。
構文
ds.TimestampOffsetByComponents(basetimestamp (timestamp), year_offset (int32), month_offset (int32), dayofmonth_offset (int32), hour_offset (int32), minute_offset (int32), second_offset (dfloat))
戻り値: 指定された値によるオフセットされたタイム・スタンプです。
例
mylink.basetimestamp
2009-08-18 14:05:29を含み、「mylink.yearos
」が0を含み、「mylink.monthos
値2を含み、「mylink.dayos
値-4を含み、「mylink.houros
値2を含み、「mylink.minos
」が値0を含み、「mylink.secos
値20を含む場合、以下の2つの関数は等価であり、タイムスタンプ2009-10-14 16:05:49を返す。
ds.TimestampOffsetByComponents("2009-08-18 14:05:29", 0, 2, -4, 2, 0, 20)
ds.TimestampOffsetByComponents(mylink.basetimestamp, mylink.houros,
mylink.minos, mylink.secos)
TimestampOffsetBySeconds
秒オフセットを持つ基本タイム・スタンプからオフセットを適用して、タイム・スタンプを戻します。 秒のオフセットは、マイクロ秒を含むことができます。
構文
ds.TimestampOffsetBySeconds(basetimestamp (timestamp), second_offset (dfloat))
戻り値: タイム・スタンプ形式で指定された値によるタイム・スタンプ・オフセット。
例
mylink.basetimestamp
に 2009-08-18 14:05:29 が含まれ、 mylink.secos
に値 32760 が含まれている場合、以下の 2 つの関数は同等であり、タイム・スタンプ 2009-08-18 23:11:29 を返します。
ds.TimestampOffsetBySeconds("2009-08-18 14:05:29", 32760)
ds.TimestampOffsetBySeconds(mylink.basetimestamp, mylink.secos)
TimetFromTimestamp
指定されたタイム・スタンプから UNIX time_t 値を戻します。
構文
ds.TimetFromTimestamp(timestamp (timestamp))
戻り値: int32 形式の指定されたタイム・スタンプによる UNIX time_t。
例
mylink.mytimestamp
に値 2009-02-13 23:31:30 が含まれている場合、以下の 2 つの関数は同等であり、値 1234567890 を返します。
ds.TimetFromTimestamp("2009-02-13 23:31:30")
ds.TimetFromTimestamp(mylink.mytimestamp)
YeardayFromDate
与えられた日付の、1 年の中での日番号を返します。
構文
ds.YeardayFromDate(date (date))
戻り値: int16 形式での日数です。
例
mylink.mydate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、値 231 を戻します:
ds.YeardayFromDate("2008-08-18")
ds.YeardayFromDate(mylink.mydate)
YearFromDate
与えられた日付の年の部分を返します。
構文
ds.YearFromDate(date (date))
戻り値: int16 形式での年数です。
例
mylink.mydate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、値 2008 を戻します:
ds.YearFromDate("2008-08-18")
ds.YearFromDate(mylink.mydate)
YearweekFromDate
与えられた日付の、1 年の中での週番号を返します。
構文
ds.YearweekFromDate(date (date))
戻り値: int16 形式での週番号です。
例
mylink.mydate
に日付 2008-08-18 が含まれている場合、以下の 2 つの関数は同等であり、値 33 を戻します:
ds.YearweekFromDate("2008-08-18")
ds.YearweekFromDate(mylink.mydate)
月
現在の月を返します。
構文
ds.Month()
戻り値: 現在の月。
例
以下のコードは、現在の月を int 形式で返します。
ds.Month()
年
現在の年を返します。
構文
ds.Year()
戻り値: 現在の年 (int 形式)。
例
以下のコードは、現在の年を返します。
ds.Year()
OPERATOR FUNCTIONS
演算子関数は、2 つのオブジェクトを比較し、ブール値 (true または false) を返します。
等しい
2 つのオブジェクトが同じかどうかを比較します。
構文
ds.EQ(object1 (any), object2 (any))
オブジェクト値が等しい場合は true、それ以外の場合は false を返します。
例
以下の式は true を戻します。
ds.EQ(null,null)
ds.EQ(true,true)
ds.EQ("1",1)
ds.EQ("1",1.0)
以下の式は false を返します。
ds.EQ(1,null)
ds.EQ(false,true)
ds.EQ("a","b")
等しくない
2 つのオブジェクトが同じでないかどうかを比較します。
構文
ds.NE(object1 (any), object2 (any))
オブジェクト値が等しくない場合は true、それ以外の場合は false を返します。
例
以下の式は true を戻します。
ds.NE(1,null)
ds.NE(true,false)
ds.NE(false,true)
ds.NE("a","b")
以下の式は false を返します。
ds.NE(null,null)
ds.NE(true,true)
ds.NE(false,false)
ds.NE("a","a")
より小さい
2 つのオブジェクトをパラメーターとして受け取り、最初のオブジェクトが 2 番目のオブジェクトより小さい場合に true を返します。
構文
ds.LT(object1 (any), object2 (any))
返される値: 最初のオブジェクトが 2 番目のオブジェクトより小さい場合は true、そうでない場合は false。
例
以下の式は true を戻します。
ds.LT("a","b")
以下の式は false を返します。
ds.LT("a","a")
ds.LT("a","b")
ds.LT("202310071855","20380727")
より大きい
2 つのオブジェクトをパラメーターとして受け取り、最初のオブジェクトが 2 番目のオブジェクトより大きい場合に true を返します。
構文
ds.GT(object1 (any), object2 (any))
最初のオブジェクトが 2 番目のオブジェクトより大きい場合は true を返し、それ以外の場合は false を返します。
例
以下の式は true を戻します。
ds.GT("b","a")
以下の式は false を返します。
ds.GT("a","a")
ds.GT("5.12","5.123")
以上
2 つのオブジェクトをパラメーターとして受け取り、最初のオブジェクトが 2 番目のオブジェクト以上である場合に true を返します。
構文
ds.GE(object1 (any), object2 (any))
最初のオブジェクトが 2 番目のオブジェクト以上の場合は true、それ以外の場合は false を返します。
例
以下の式は true を戻します。
ds.GE(2, 1)
ds.GE("a","a")
以下
2 つのオブジェクトをパラメーターとして受け取り、最初のオブジェクトが 2 番目のオブジェクト以下の場合に true を返します。
構文
ds.LE(object1 (any), object2 (any))
最初のオブジェクトが 2 番目のオブジェクト以下の場合は true、それ以外の場合は false を返します。
例
以下の式は true を戻します。
ds.GE(1, 2)
ds.LE("a","a") == true
論理関数
論理関数はビット演算を実行します。
BitAnd
2 つの整数引数のビット単位 AND
を戻します。
構文
ds.BitAnd(number1 (uint64), number2 (uint64))
戻り値: uint64 形式でのビット単位 AND
です。
例
mylink.mynumber1
に数値 352 、 mylink.mynumber2 に数値 400 が含まれている場合は、以下の 2 つの関数は同等であり、値 256 を戻します:
ds.BitAnd(352,400)
ds.BitAnd(mylink.mynumber1, mylink.mynumber2)
BitCompress
「1」と「0」で示される 2 進数表現を有するストリング引数から作成された整数を返します。
構文
ds.BitCompress(string (string))
戻り値: uint64形式のバイナリーによって表される結果の数値。
例
mylink.mynumber1
にストリング「0101100000」が含まれている場合、以下の 2 つの関数は両方とも数値 352 を返します。
ds.BitCompress("0101100000")
ds.BitCompress(mylink.mynumber)
BitExpand
与えられた整数を「1」と「0」の 2 進数表現にしたストリングを返します。
構文
ds.BitExpand(number (uint64))
戻り値: 整数のバイナリー表記を含むストリングです。
例
mylink.mynumber1
に数値 352 が含まれている場合、以下の 2 つの関数は同等であり、ストリング「101100000」を返します。
ds.BitExpand(352)
ds.BitExpand(mylink.mynumber)
BitOr
2 つの整数引数のビット単位 OR
を戻します。
構文
ds.BitOr(number1 (uint64), number2 (uint64))
戻り値:2 つの整数引数のビット単位 OR
です。
例
mylink.mynumber1
に数値 352 、 mylink.mynumber2 に数値 400 が含まれている場合は、以下の 2 つの関数は同等であり、値 496 を戻します:
ds.BitOr(352,400)
ds.BitOr(mylink.mynumber1, mylink.mynumber2)
BitXOr
2 つの整数引数のビット単位 Exclusive OR
を戻します。
構文
ds.BitXOr(number1 (uint64), number2 (uint64))
戻り値: uint64 形式での Exclusive OR
です。
例
mylink.mynumber1
に数値 352 が含まれ、 mylink.mynumber2
に数値 400 が含まれている場合、以下の 2 つの関数は同等であり、値 240 を戻します:
ds.BitXOr(352,400)
ds.BitXOr(mylink.mynumber1, mylink.mynumber2)
NOT
式の論理値の補数を返します。 式の値が true の場合、 Not
関数は false (0) の値を返します。 式の値が false の場合、 NOT
関数は true (1) の値を返します。 0 に評価される数値式は false の論理値です。 それ以外のもの (NULL 値を除く) に評価される数値式は、論理真です。 空ストリングは論理的に偽です。 空ストリング、スペース、または数値 0 とスペースを含むストリングを含め、他のすべてのストリング式は論理的に真です。
構文
ds.Not()
戻り値: int8 形式での complement
の値です。
例
mylink.myexpression
に 5-5 の式が含まれている場合、以下の 2 つの関数は同等であり、値 1 を戻します:
ds.Not(5-5)
ds.Not(mylink.myexpression)
mylink.myexpression
に式 5+5 が含まれている場合、以下の 2 つの関数は同等であり、値 0 を戻します:
ds.Not(5+5)
ds.Not(mylink.myexpression)
SetBit
特定のビットが特定の状態に設定された整数を戻します。ここで、 origfield
はアクションを実行する入力値で、 bitlist
は状態を設定するためのコンマ区切りビット番号のリストを含むストリングで、 bitstate
はそれらのビットを設定する状態を示す 1 または 0 のいずれかになります。
構文
ds.SetBit(origfield (uint64), bitlist (string), bitstate (uint8))
戻り値: uint64 形式で指定された状態に設定されたビットを持つ数値です。
例
mylink.origfield
に数値 352 が含まれ、 mylink.bitlist
にリスト「2、4、8」が含まれ、 mylink.bitstate
に値 1 が含まれている場合、以下の 2 つの関数は同等であり、値 494 を戻します:
ds.SetBit(356,"2,4,8",1)
ds.SetBit(mylink.origfield, mylink.bitlist, mylink.bitstate)
はい
1 の真の値を戻します。
構文
ds.True()
戻り値: 整数 1。
例
以下のコードは 1 を戻します。
ds.True()
いいえ
0 の false 値を返します。
構文
ds.False()
戻り値: 整数 0。
例
以下のコードは 0 を戻します。
ds.False()
Mathmatical functions (数学関数)
数学的な関数は数学的な演算を実行します。
Abs
任意の数値式の絶対値を返します。 式の絶対値は、符号なしの絶対値です。
構文
ds.Abs(numeric_expression (int32))
戻り値: dfloat 形式での数値式の絶対値ですです。
例
mylink.number1
に数値 12 が含まれ、 mylink.number2
に数値 34 が含まれている場合、以下の 2 つの関数は同等であり、数値 22 を戻します:
ds.Abs(12-34)
ds.Abs(mylink.mynumber1-mylink.mynumber2)
mylink.number1
に数値 34 が含まれ、 mylink.number2
に数値 12 が含まれている場合、以下の 2 つの関数は同等であり、数値 22 を戻します:
ds.Abs(34-12)
ds.Abs(mylink.mynumber1-mylink.mynumber2)
Acos
式の三角関数のアークコサインを計算します。 式は数値である必要があります。 結果はラジアンで表されます。
構文
ds.Acos(numeric_expression (dfloat))
戻り値: dfloat 形式での結果のラジアンです。
例
mylink.number
に数値 0.707106781が含まれている場合、以下の 2 つの関数は同等であり、値 0.7854:
ds.Acos(0.707106781)
ds.Acos(mylink.mynumber)
ACOS
式の三角関数のアークコサインを返します。 入力は数値でなければなりません。 結果は度単位で表されます。
構文
ds.ACOS(expression (float64))
返される値: float64 形式の角度 (度単位)。
例
以下のコードは、値 45 を戻します。
ds.ACOS(0.707106781)
Asin
式の三角関数のアークサインを計算します。 式は数値である必要があります。 結果はラジアンで表されます。
構文
ds.Asin(numeric_expression (dfloat))
戻り値: dfloat 形式でのラジアン結果です。
例
mylink.number
に数値 0.707106781が含まれている場合、以下の 2 つの関数は同等であり、値 0.7854:
ds.Asin(0.707106781)
ds.Asin(mylink.mynumber)
ASIN
式の三角関数の正弦を返します。 入力は度で表される角度です。
構文
ds.ASIN(expression(float64))
返される値: float64 形式の角度 (度単位)。
例
以下のコードは、値 45 を戻します。
ds.ASIN(0.707106781)
Atan
式の三角関数のアークタンジェントを計算します。 式は数値である必要があります。 結果はラジアンで表されます。
構文
ds.Atan(numeric_expression (dfloat))
戻り値: dfloat 形式でのラジアン結果です。
例
mylink.number
に数値 135 が含まれている場合、以下の 2 つの関数は同等であり、値 1.5634を返します。これは、135 のアークタンジェントを持つ角度です。
ds.Atan(135)
ds.Atan(mylink.mynumber)
ATAN
式の三角関数のアークタンジェントを返します。 入力は数値でなければなりません。 結果は度単位で表されます。
構文
ds.ATAN(expression(float64))
戻り値: dfloat 形式の角度 (度)。
例
以下のコードは、値 45 を戻します。
ds.ATAN(1)
Atan2
2 つの入力の符号を使用して、2 つの入力の三角関数のアークタンジェントを計算することで、結果の四分円を決定します。 入力は数値でなければなりません。 結果はラジアンで表されます。
構文
ds.Atan2(numeric_expression (dfloat, dfloat))
戻り値: dfloat 形式でのラジアン結果です。
例
mylink.number1
に数値 10.0 が含まれ、 mylink.number2
に数値 -10.0が含まれている場合、以下の 2 つの関数は同等であり、値 2.3562:
ds.Atan2(10.0, -10.0)
ds.Atan2(mylink.mynumber1, mylink.mynumber2)
Ceil
指定された 10 進数に関してその値以上で最小の整数値を計算します。
構文
ds.Ceil(number (dfloat))
戻り値: int32の最小整数値です。
例
mylink.number
に数値 2355.66 が含まれている場合、以下の 2 つの関数は同等であり、値 2356 を戻します:
ds.Ceil(2355.66)
ds.Ceil(mylink.mynumber)
Cos
式の三角関数のコサインを計算します。 式は数値である必要があります。 式では、角度をラジアンで表した数値が生成される必要があります。
構文
ds.Cos(radians (dfloat))
戻り値: dfloat 形式でのラジアンの角度です。
例
mylink.number
に数値 0.785398 が含まれている場合、以下の 2 つの関数は同等であり、値 0.7071 を戻します:
ds.Cos(0.785398)
ds.Cos(mylink.mynumber)
COS
角度の三角関数のコサインを戻します。 式は角度であり、度単位の値です。
構文
ds.COS(expression(float64))
返される値: float64 形式の角度 (度単位)。
例
以下のコードは、値 0.7071: を返します。
ds.COS(45)
Cosh
式の双曲線コサインを計算します。 式は数値である必要があります。
構文
ds.Cosh(number (dfloat))
戻り値: dfloat 形式での結果のコサインです。
例
mylink.number
に数値 2 が含まれている場合、以下の 2 つの関数は同等であり、値 3.7622 を戻します:
ds.Cosh(2)
ds.Cosh(mylink.mynumber)
Div
式の双曲線コサインを計算します。 式は数値である必要があります。
構文
ds.Div(dividend (dfloat), divisor (dfloat))
戻り値: dfloat 形式での結果のコサインです。
例
mylink.dividend
に数値 100 が含まれ、 mylink.divisor
に数値 25 が含まれている場合、以下の 2 つの関数は同等であり、値 4 を戻します:
ds.Div(100,25)
ds.Div(mylink.dividend, mylink.divisor)
Exp
基数 e の結果を式の値で指定された累乗で計算します。 e の値は約 2.71828 です。 式の評価結果は数値である必要があります。
構文
ds.Exp(number (dfloat))
戻り値: dfloat 形式で指定された累乗に引き上げた結果の e です。
例
mylink.number
に数値 5 が含まれている場合、以下の 2 つの関数は同等であり、値 54.5982 を戻します:
ds.Exp(5-1)
ds.Exp(mylink.number-1)
Fabs
指定された Float 値の絶対値を計算します。
構文
ds.Fabs(number (dfloat))
戻り値: 浮動小数点数の絶対値です。
例
mylink.number
に数値 -26.53 が含まれている場合、以下の 2 つの関数は同等であり、値 26.53 を戻します:
ds.Fabs(-26.53)
ds.Fabs(mylink.number)
Floor
指定された 10 進数に関してその値以下の整数値を計算します。
構文
ds.Floor(number (dfloat))
戻り値: int32 形式の 10 進値以下の最大整数値。
例
mylink.number
に数値 203.25 が含まれている場合、以下の 2 つの関数は同等であり、値 203 を戻します:
ds.Floor(203.25)
ds.Floor(mylink.number)
Ldexp
2 の指数乗を小数部に乗算した dfloat 値を返します。
構文
ds.Ldexp(mantissa (dfloat), exponent (int32))
戻り値: dfloat 形式での結果の仮数です。
例
mylink.mantissa
に数値 2 が含まれ、 mylink.exponent
に数値 3 が含まれている場合、以下の 2 つの関数は同等であり、値 16 を戻します:
ds.Ldexp(2,3)
ds.Ldexp(mylink.mantissa, mylink.exponent)
Llabs
与えられた整数値の絶対値を計算します。
構文
ds.Llabs(number (integer))
戻り値: 符号なし整数としての指定された整数の絶対値です。
例
mylink.number
に数値 -26 が含まれている場合、以下の 2 つの関数は同等であり、値 26 を戻します。
ds.Llabs(-26)
ds.Llabs(mylink.number)
Ln
ベースeの中に式の自然対数を計算します。 e の値は約 2.71828 です。 式の評価結果は 0 より大きい数値である必要があります。
構文
ds.Ln(number (dfloat))
戻り値: e ベースの式の結果の対数です。
例
mylink.number
に数値 6 が含まれている場合、以下の 2 つの関数は同等であり、値 1.7918: を返します。
ds.Ln(6)
ds.Ln(mylink.number)
Log10
指定された値の、10 を底とする対数を返します。
構文
ds.Log10(number (dfloat))
これは、dfloat 形式での 10 を底とする対数を返します。
例
mylink.number
に数値 6 が含まれている場合、以下の 2 つの関数は同等であり、値 1.7782: を返します。
ds.Log10(6)
ds.Log10(mylink.number)
最大
2 つの引数値のうち、大きい方の数値を返します。
構文
ds.Max(number1 (int32), number2(int32))
int32 形式の 2 つの整数のうち大きい方が返されます。
例
mylink.number1
に数値 6 が含まれ、 mylink.number1
に数値 101 が含まれている場合、以下の 2 つの関数は同等であり、値 101 を戻します:
ds.Max(6,101)
ds.Max(mylink.number1, mylink.number2)
最小
2 つの引数値の最小値を戻します。
構文
ds.Min(number1 (int32), number2(int32))
戻り値:2 つの整数のうちの小さい値です。
例
mylink.number1
に数値 6 が含まれ、 mylink.number1
に数値 101 が含まれている場合、以下の 2 つの関数は同等であり、値 6 を戻します:
ds.Min(6,101)
ds.Min(mylink.number1, mylink.number2)
Mod
2 つの式 (被除数、除数) のモジュロ (剰余) を計算します。
構文
ds.Mod(dividend (int32), divisor (int32))
戻り値: int32 形式での結果のモジュロです。
例
mylink.dividend
に数値 115 が含まれ、 mylink.divisor
に数値 25 が含まれている場合、以下の 2 つの関数は同等であり、値 15 を戻します:
ds.Mod(115,25)
ds.Mod(mylink.dividend, mylink.divisor)
Neg
数値の否定を返します。
構文
ds.Neg(number (dfloat))
戻り値: 結果の負の数値 (dfloat 形式)。
例
mylink.number
に数値 123 が含まれている場合、以下の 2 つの関数は同等であり、値 -123 を戻します:
ds.Neg(123)
ds.Neg(mylink.number)
Pwr
式の値を指定された累乗値で累乗した値を計算します (式、累乗値)。
構文
ds.Pwr(expression (dfloat), power (dfloat))
戻り値: dfloat 形式で指定された累乗で累乗された結果の数値。
例
mylink.expression
に数値 2 が含まれ、mylink.power に数値 3 が含まれる場合、次の 2 つの関数は同等で、値 8 を戻します:
ds.Pwr(2,3)
ds.Pwr(mylink.expression, mylink.power)
Rand
0 から 232-1 の間の疑似乱数を返します。
構文
ds.Rand()
戻り値: uint32 形式での結果のランダム整数です。
例
この関数を使用して、疑似乱数を生成します:
ds.Rand()
ランダム
0 から 232-1 の間の疑似乱数を返します。
構文
ds.Random()
戻り値: uint32 形式での結果のランダム整数です。
例
この関数を使用して、ランダム数を生成します:
ds.Random()
RND (R)
正または負のランダム整数または 0 を生成します。 入力として整数の総数 (0 を含む) を受け取ります。ここから乱数を選択できます。 つまり、n が数値 _expression の値である場合、乱数は 0 から (n-1) までの数値で生成されます。
構文
ds.Rnd(numeric_expression (int))
これは、0 から (numeric_expression - 1)
までの整数形式の乱数を返します。
例
以下のコードは、0 から 19 までの乱数を返します。
ds.Rnd(20)
Sin
式の三角関数のサインを計算します。 式は数値である必要があります。 式では、角度をラジアンで表した数値が生成される必要があります。
構文
ds.Sin(radians (dfloat))
戻り値: dfloat 形式での結果の角度です。
例
mylink.number
に数値 0.785398 が含まれている場合、以下の 2 つの関数は同等であり、値 0.7071 を戻します:
ds.Sin(0.785398)
ds.Sin(mylink.mynumber)
SIN
式の三角関数の正弦を返します。 入力は度で表される角度です。
構文
ds.SIN(expression(float64))
戻り値: dfloat 形式の角度 (度)。
例
以下のコードは、値 0.7071: を返します。
ds.SIN(45)
Sinh
式の双曲線サインを計算します。 式は数値である必要があります。
構文
ds.Sinh(number (dfloat))
戻り値: dfloat 形式での結果のサインです。
例
mylink.number
に数値 2 が含まれている場合、以下の 2 つの関数は同等であり、値 3.6269: を返します。
ds.Sinh(2)
ds.Sinh(mylink.mynumber)
Sqrt
数値の平方根を計算します。
構文
ds.Sqrt(number (dfloat))
戻り値: dfloat 形式での数値の結果の平方根です。
例
mylink.number
に数値 450 が含まれている場合、以下の 2 つの関数は同等であり、値 21.2132 を戻します:
ds.Sqrt(450)
ds.Sqrt(mylink.mynumber)
Tan
式の三角関数のタンジェントを計算します。 式では、角度をラジアンで表した数値が生成される必要があります。
構文
ds.Tan(radians (dfloat))
戻り値: dfloat 形式での結果のタンジェントです。
例
mylink.number
に数値 0.7853981が含まれている場合、以下の 2 つの関数は同等であり、値 1 を返します。
ds.Tan(0.7853981)
ds.Tan(mylink.mynumber)
TAN
TAN 関数を戻して、入力の三角関数のタンジェントを返します。 入力は度で表される角度を表します。
構文
ds.TAN(expression(float64))
返される値: float64 形式の角度 (度単位)。
例
以下のコードは、値 1 を戻します。
ds.TAN(45)
ATAN
式の三角関数のアークタンジェントを返します。 入力は数値でなければなりません。 結果は度単位で表されます。
構文
ds.ATAN(expression(float64))
返される値: float64 形式の角度 (度単位)。
例
以下のコードは、値 45 を戻します。
ds.ATAN(1)
Tanh
式の双曲線タンジェントを計算します。 式は数値である必要があります。
構文
ds.Tanh(number (dfloat))
戻り値: dfloat 形式での結果のタンジェントです。
例
mylink.number
に数値 2 が含まれている場合、以下の 2 つの関数は同等であり、値 0.964028 を戻します:
ds.Tanh(2)
ds.Tanh(mylink.mynumber)
数値関数
数値関数を使用して、10 進数または浮動小数点数から小数部を抽出します。 式エディターの Number カテゴリーには、数値を double、float、または integer データ・タイプとしてキャストするために使用できるタイプ・キャスト関数も含まれています。
変換プログラム関数 AsDouble()
、 AsFloat()
、および AsInteger()
は、結果がストリングである派生で使用される場合、他の変換プログラム・データ変換関数とは異なる動作をします。 この動作は、トランスフォーマー・コンパイラーがこれらの関数の関数結果をストリングに変換しないためです。
AsDouble
与えられた数値を double として扱います。
構文
ds.AsDouble(number (int, float and so on))
これは、倍精度形式の数値を返します。
例
次の式では、入力 mynumber
には整数が含まれていますが、関数は double を出力します。 mylink.mynumber
に値 56 が含まれている場合、以下の 2 つの関数は同等であり、値 12.963: を返します。
ds.AsDouble(56/4.32)
ds.AsDouble(mylink.mynumber/4.32)
AsFloat
与えられた数値を float として扱います。
構文
ds.AsFloat(number (int, double and so on))
戻り値: 浮動小数点形式の数値です。
例
次の式では、入力 mynumber
には整数が含まれていますが、関数は浮動小数点を出力します。 mylink.mynumber
に値 56 が含まれている場合、以下の 2 つの関数は同等であり、値 12.963: を返します。
ds.AsFloat(56/4.32)
ds.AsFloat(mylink.mynumber/4.32)
AsInteger
与えられた数値を整数として扱います。 ただし、10 進数を整数に割り当てる場合と、浮動小数点数または倍精度浮動小数点数を整数に割り当てる場合では、動作に違いがあります。 浮動小数点または倍数から整数への変換の場合は、これは単純に整数への代入となります。 10 進数 AsInteger()
の場合、関数が開始され、出力が最も近い値に丸められます。
構文
ds.AsInteger(number (float, double and so on))
戻り値: 整数形式の数値です。
例
次の式では、入力値「12.962963」にはタイプ「Double」があります。 値はタイプ「Double」ですが、関数は整数を出力します。 したがって、これは整数関数への単純な代入であり、値 12 を戻します。
ds.AsInteger(12.962963)
以下の式では、(56/4.32) のような計算は 10 進数型として扱われ、 AsInteger()
関数呼び出しは最も近い値に向かって丸めを開始し、値 13 を返します。
ds.AsInteger(56/4.32)
FIX
数値を、指定された精度数値を持つ浮動小数点数に変換します。 数値が NULL 値に評価されると、NULL が戻されます。 精度の値は、浮動小数点数における精度の桁数に対応する数値です。 デフォルトの精度は 4 です。 モード値は、超過した桁の処理方法を指定するフラグです。 モードが 0 であるか、または指定されていない場合、余分な桁は丸められます。 モードが 0 以外の場合、余分な桁は切り捨てられます。
構文
ds.FIX(numeric_expression (string), precision (int8), mode (int32))
戻り値: dfloat 形式の変換された数値。
例
以下のコードは、数値 37.7363を返します。
ds.FIX("37.73629273")
MantissaFromDecimal
与えられた decimal の仮数を返します。
構文
ds.MantissaFromDecimal(number (decimal))
戻り値:dfloat 形式での仮数です。
例
mylink.number に数値 243.7675 が含まれている場合、次の 2 つの関数は同等で、値 7675 を戻します:
ds.MantissaFromDecimal(243.7675)
ds.MantissaFromDecimal(mylink.mynumber)
MantissaFromDFloat
与えられた dfloat の仮数を返します。
構文
ds.MantissaFromDFloat(number (dfloat))
戻り値:dfloat 形式での仮数です。
例
mylink.number
に数値 1.234412000000000010E+4が含まれている場合、次の関数は値 1 を戻します。
ds.MantissaFromDFloat(mylink.mynumber)
Real
精度を失うことなく、ストリング内の数値を浮動小数点型に変換します。
構文
ds.Real(numeric_expression (string))
戻り値: dfloat 形式の変換された数値。
例
以下のコードは、数値 1.23を返します。
ds.Real("1.23")
RAW 関数
Raw 関数を使用して、生データを含む列のデータの長さを取得します。
RawLength
RAW ストリングの長さを返します。
構文
ds.RawLength(input string (string))
戻り値: int32 形式での未加工ストリングの長さです。
例
mylink.rawdata
にビットマップからの生データが含まれている場合、次の関数はビットマップのサイズをバイト単位で戻します:
ds.RawLength(mylink.rawdata)
ストリング関数
これらの関数は、式内のストリング関連関数に使用します。
AlNum
与えられたストリングに、英数字だけが含まれるかどうかをチェックします。
構文
ds.AlNum(string (string))
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
例
mylink.mystring1
にストリング「OED_75_9*E」が含まれている場合、以下の関数は値 0 (false) を返します。
ds.AlNum(mylink.mystring1)
mylink.mystring2
にストリング「12redroses」が含まれている場合、以下の関数は値 1 (true) を返します。
ds.AlNum(mylink.mystring2)
アルファ
与えられたストリングに、英字だけが含まれるかどうかをチェックします。
構文
ds.Alpha(string (string))
戻り値: int8 タイプの結果、指定されたタイプに対して入力が有効な場合は 1、それ以外の場合は 0 です。
例
mylink.mystring1
にストリング「12redroses」が含まれている場合、以下の関数は値 0 (FALSE) を戻します。
ds.Alpha(mylink.mystring1)
mylink.mystring2
にストリング「twelveredroses」が含まれている場合、以下の関数は値 1 (TRUE) を戻します。
ds.Alpha(mylink.mystring2)
Cats
2 つのストリングを連結します。
構文
ds.Cats(str1 (string), str2 (string))
結果の連結ストリングを戻します。
例
以下のコードは "ABC123" を返します。
ds.Cats("ABC", "123")
変更
式内の指定サブストリングを置き換えストリングに置換します。
substring 引数が空ストリングの場合、expression 引数の値が返されます。
置換引数の値が空ストリングの場合、開始引数の値によって示されている位置から始まるサブストリングのすべてのオカレンスが除去されます。 オカレンス引数の値が 0 以下の場合、開始引数の値によって示される位置から始まるすべてのオカレンスが置き換えられます。 それ以外の場合、置換されるオカレンスの数は、開始引数の値によって示される位置から始まる、オカレンス引数の値によって示されます。 begin 引数の値を 1 以下にすると、置換は最初のオカレンスから始まります。 それ以外の場合、置換は thebegin 引数の値によって示される位置から開始されます。
構文
ds.Change(expression (string), substring (string), replacement (string), [occurrence (int32), [begin (int32)]])
戻り値:すべてのサブストリングが置き換えられた新規ストリングです。
例
mylink.mystring
に式「aaabbbcccbbb」が含まれている場合、次の関数はストリング「aaaZZZcccZZZ」を戻します。
ds.Change(mylink.mystring,"bbb","ZZZ")
mylink.mystring
に式「ABC」 が含まれ、サブストリングが空の場合、次の関数はストリング 「ABC」 を戻します。
ds.Change(mylink.mystring,"","ZZZ")
mylink.mystring
に式「aaabbbcccbbb」が含まれていて、置換が空の場合、次の関数はストリング「aaaccc」を戻します。
ds.Change(mylink.mystring, "bbb", "")
CompactWhiteSpace
連続する空白文字すべてをシングル・スペースに置き換えたストリングを返します。
構文
ds.CompactWhiteSpace(string (string))
戻り値: 空白文字を減らした結果のストリングです。
例
mylink.mystring
にストリング「too many spaces」が含まれている場合、次の関数はストリング「too many spaces」を返します。
ds.CompactWhiteSpace(mylink.mystring)
比較
2 つのストリングをソート処理のために比較します。 比較は、左揃え (デフォルト) または右揃えが可能です。 右揃えの比較では、指定したストリング内の数値サブストリングが数値として比較されます。
数値ストリングは、各ストリング内の同じ文字位置になければなりません。 例えば、ストリング AB100 とストリング AB99 を右揃えで比較した場合、100 は 99 より大きいため、AB100 の方が大きいと判断されます。 ストリング AC99 と AB100 を左揃えで比較した場合、C は B より大きいため、AC99 の方が大きいと判断されます。
構文
ds.Compare(string1 (string), string2 (string), [justification ("L" or "R")])
戻り値: int8 タイプの結果です、 string1 が string2より小さい場合は -1、両方のストリングが同じ場合は 0、 string1 が string2より大きい場合は 1 です。
例
mylink.mystring1
にストリング「AB99」が含まれ、 mylink.mystring2 にストリング「AB100」が含まれている場合、以下の関数は結果 1 を戻します。
ds.Compare(mylink.mystring1, mylink.mystring2, "L")
mylink.mystring1
にストリング「AB99」が含まれ、 mylink.mystring2 にストリング「AB100」が含まれている場合、以下の関数は結果 -1 を戻します。
ds.Compare(mylink.mystring1, mylink.mystring2, "R")
CompareNoCase
2 つのストリングを比較し、大小文字を区別せずにソートします。
構文
ds.CompareNoCase(string1 (string), string2 (string))
戻り値: int8 タイプの結果です。 string1 が string2より小さい場合は -1 となり、両方のストリングが同じ場合は 0 となり、 string1 が string2より大きい場合は 1 となります。
例
mylink.mystring1
にストリング「Chocolate Cake」が含まれ、 mylink.mystring2
にストリング「chocolate cake」が含まれている場合、次の関数は結果 0 を戻します。
ds.CompareNoCase(mylink.mystring1, mylink.mystring2)
CompareNum
2 つのストリングの最初のn文字(nはユーザが指定された)を比較します。
構文
ds.CompareNum(string1 (string), string2 (string), length (int16))
戻り値: int8 タイプの結果です、 string1 が string2より小さい場合は -1、両方のストリングが同じ場合は 0、 string1 が string2より大きい場合は 1 です。
例
mylink.mystring1
にストリング「Chocolate」が含まれ、 mylink.mystring2
にストリング「Choccy Treat」が含まれている場合、次の関数は結果 0 を戻します。
ds.CompareNum(mylink.mystring1, mylink.mystring2,4)
CompareNumNoCase
2 つのストリングの最初の n 文字は、大/小文字を無視して比較します。 n はユーザーによって指定されます。
構文
ds.CompareNumNoCase(string1 (string), string2 (string), length (int16))
戻り値: int8 タイプの結果です、 string1 が string2より小さい場合は -1、両方のストリングが同じ場合は 0、 string1 が string2より大きい場合は 1 です。
例
mylink.myraw
にストリング「chocolate」が含まれ、 mylink.mystring2
にストリング「Choccy Treat」が含まれている場合、次の関数は結果 0 を戻します。
ds.CompareNumNoCase(mylink.mystring1, mylink.mystring2,4)
変換
string を、指定された内部または外部のストレージ・フォーマットに変換します。 string 式は、変換されるストリングを評価します。
次の表に、変換に指定できる値を示します。 conv_code
は、変換に関係するストレージ・フォーマットのタイプを指定し、 conv_mode
は、入力または出力に使用されるフォーマットを指定します。 conv_mode
に「I」を指定すると、 ICONV()
関数が変換に使用されます。 conv_mode
に「O」を指定すると、 OCONV()
関数が変換に使用されます。
変換値の表です
conv_code |
conv_mode |
説明 |
---|---|---|
MX | I | 入力ストリングを 16 進数から 10 進数に変換します。 |
MB(Maple Bank) | I | 入力ストリングを 2 進数から 10 進数に変換します。 |
MX0C | I | 入力ストリングを 16 進数から ASCII 文字ストリングに変換します。 |
MB0C | I | 入力ストリングを 2 進数から ASCII 文字ストリングに変換します。 |
MX | O | 入力ストリングを 10 進数から 16 進数に変換します。 |
MB(Maple Bank) | O | 入力ストリングを 10 進数から 2 進数に変換します。 |
MX0C | O | 入力ストリングを ASCII 文字ストリングから 16 進数に変換します。 |
MB0C | O | 入力ストリングを ASCII 文字ストリングから 2 進数に変換します。 |
構文
ds.Conversion(string (string), conv_code (string), conv_mode (string))
戻り値: 変換されたストリング。
例
mylink.mystring
にストリング「1111」が含まれている場合、次の関数は値 15 を戻します。
ds.Conversion(mylink.mystring,"MB", "I")
mylink.mystring
にストリング「CDE」が含まれている場合、以下の関数は値 434445 を戻します。
ds.Conversion(mylink.mystring,"MX0C", "O")
変換
入力された expression で指定されたストリングの文字を変換します。 あるリストで指定された文字を、別のリストで指定された文字に変換します。
構文
ds.Convert(fromlist (string), tolist (string), expression (string))
戻り値:変換された指定文字を含むストリングです。
例
mylink.mystring1
にストリング「NOW IS THE TIME」が含まれている場合、次の関数はストリング「NOW YS XHE XYME」を戻します。
ds.Convert("TI","XY", mylink.mystring1)
数
ストリング中でサブストリングが出現する回数を計測します。
構文
ds.Count(string (string), substring (string))
戻り値: int32 形式のサブストリングの出現数。
例
mylink.mystring1
にストリング「chocolate drops, chocolate ice cream, chocolate bars」が含まれている場合、次の関数は 3 を戻します。
ds.Count(mylink.mystring1, "choc")
Dcount
ストリング中の区切られたフィールドの数を計測します。
構文
ds.Dcount(string (string), delimiter (string))
戻り値: int32 形式の区切り文字で区切られているフィールドの数。
例
mylink.mystring1
にストリング「chocolate drops, chocolate ice cream, chocolate bars」が含まれている場合、次の関数は 3 を戻します。
ds.Dcount(mylink.mystring1,",")
DownCase
ストリング内の大文字をすべて小文字に変換します。
構文
ds.DownCase(string (string))
これは、結果のストリングをすべて小文字で返します。
例
mylink.mystring1
に「CaMel cAsE」というストリングが含まれている場合、次の関数は「camel case」というストリングを戻します。
ds.DownCase(mylink.mystring1)
DQuote
ストリングを二重引用符で囲みます。
構文
ds.DQuote(string (string))
戻り値: 二重引用符で囲まれた結果のストリングです。
例
mylink.mystring1
に引用符が必要なストリングが含まれている場合、次の関数はストリング「needs quotations」を返します。
ds.DQuote(mylink.mystring1)
Ereplace
式内のサブストリングを置き換えストリングに置換します。
substring 引数が空ストリングの場合、replacement 引数の値の前に expression 引数の値が付きます。 置換引数が空ストリングの場合は、開始引数の値によって示される位置から始まるサブストリングのすべてのオカレンスが除去されます。 occurrence 引数の値が 0 以下の場合は、begin 引数の値から始まるすべてのオカレンスが置換されます。 それ以外の場合、置換するオカレンスの回数を occurrence 引数の値で指定し、begin 引数の値で指定した位置から開始します。 begin 引数の値を 1 以下にすると、置換は最初のオカレンスから始まります。 それ以外の場合、置換は開始引数の値によって示される位置から開始されます。
構文
ds.Ereplace(expression (string), substring (string), replacement (string), [occurrence (int32), [begin (int32)]])
戻り値:サブストリングのすべてのオカレンスが置換された結果のストリングです。
例
mylink.mystring
に式「ABC」が含まれ、サブストリングが空の場合、次の関数は値「ZZZABC」を戻します。
ds.Ereplace(mylink.mystring,"","ZZZ")
mylink.mystring
に式「aaabbbcccbbb」が含まれていて、置き換えが空の場合、次の関数は値「aaaccc」を戻します。
ds.Ereplace(mylink.mystring, "bbb", "")
交換
ストリング内の文字を置き換えます。
構文
ds.Exchange(str (string), findStr (string), replaceStr (string))
これは、置換された文字を含む結果のストリングを返します。
例
次のコードは、「.B.BC"。
ds.Exchange("ABABC", "41", "2E")
Extract
動的配列から、指定されたフィールド、値、またはサブ値のデータ内容にアクセスします。 この関数は、 REMOVE
と類似しています。
入力動的配列には、区切り文字として CHAR (254)、CHAR (253)、CHAR (252)、およびそれらの階層のみを記述する必要があります。 それぞれ、AM または FM、VM、SM、または SVM 機能によって検索することができます。 FM はストリングのフィールドに対する区切り文字、VM はストリングの値に対する区切り文字、SM はストリングのサブ値に対する区切り文字です。
EXTRACT
詳細については、EXTRACT関数を参照してください。
構文
ds.EXTRACT(str (string), field (int64), [value (int64), subvalue (int64)])
戻り値: 結果として抽出された書式制御ストリング。
例
以下のコードは両方とも "9ü3ü5" を返します。 動的配列には、FM/AM で区切られた 3 つのフィールド、最初のフィールドに 2 つの値、最初の値に 1 つのサブ値、というように続きます。
ds.EXTRACT("1" + ds.FM() + "4" + ds.VM() + "9" + ds.SM() + "3" + ds.SM() + "5" + ds.FM() + "1" + ds.VM() + "0" + ds.SM() + "7" + ds.SM() + "3", 2, 2)
ds.EXTRACT("1" + ds.AM() + "4" + ds.VM() + "9" + ds.SM() + "3" + ds.SM() + "5" + ds.AM() + "1" + ds.VM() + "0" + ds.SM() + "7" + ds.SM() + "3", 2, 2)
以下のコードは、フィールドが 3 つしかなく、10 個以上ではないため、空ストリングを返します。
ds.EXTRACT("1" + ds.FM() + "4" + ds.VM() + "9" + ds.SM() + "3" + ds.SM() + "5" + ds.FM() + "1" + ds.VM() + "0" + ds.SM() + "7" + ds.SM() + "3", 10, 0, 0)
フィールド
ストリング内の、指定された区切り文字の間にある 1 つ以上のサブストリングを返します。 引数 occurrence は、終了文字として使用される区切り文字のオカレンスを指定します。 引数 number はオプションで、返すサブストリングの数を指定します。
構文
ds.Field(string (string), delimiter (string), occurrence (int32), [number (int32)])
戻り値: 区切り文字の間の対応するストリングです。
例
mylink.mystring1
にストリング「chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers」が含まれている場合、次の関数はストリング「chocolate ice cream」を戻します。
ds.Field(mylink.mystring1,",",2)
mylink.mystring1
にストリング「chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers」が含まれている場合、次の関数はストリング「chocolate ice cream, chocolate bars」を戻します。
ds.Field(mylink.mystring1,",",2,2)
FieldStore
指定された区切り文字ストリングで区切られたフィールドを挿入、削除、または置換することによって、文字ストリングを変更します。 区切り文字ストリングは、変更するストリングを表し、任意の単一 ASCII 文字にすることができます。 この関数は、パラメーター start
(変更が開始される入力ストリングの位置)、および number
(入力ストリングに新規ストリングが挿入される回数) も取ります。
構文
ds.FieldStore(str (string), delimiter (string), start (int8), number (int8), new_fields (string))
戻り値: フォーマット・ストリングの変更されたストリング。
例
以下のコードは、ストリング A#B#C#D#5:
ds.FieldStore("1#2#3#4#5", "#", 1, 4, "A#B#C#D")
FMT
FMT 関数またはフォーマット式を使用して、出力用にデータをフォーマットします。 BASIC 式の後にフォーマット式を指定することにより、任意の BASIC 式を出力用にフォーマット設定できます。 Fmt 関数の構文の詳細については、 FMT 関数を参照してください。
構文
ds.Fmt(string (string), format (string))
書式制御ストリングの結果の定様式データを戻します。
例
以下のコードは、ストリング「23-69-86」を返します。
ds.Fmt("236986","R##-##-##")
以下のコードは、数値「***** $555,666,898.00」を戻します。
ds.Fmt("555666898","20*R2$,")
FmtDP
ストリング・タイプのマルチバイト文字セットをターゲット・フォーマットに変換します。 グローバリゼーション (グローバリゼーション) が有効になっていない場合、 FmtDP 関数は同等の Fmt 関数と同様に機能します。 FmtDP 関数の構文の詳細については、 FmtDP 関数を参照してください。
構文
ds.FmtDP(string (string), format (string), [mapname (string)])
戻り値: フォーマット・ストリングの変換されたストリング。
例
以下のコードは、数値 56789 を返します。
ds.FmtDP("123456789","R#5")
折りたたむ
文字列を折りたたみ、サブ文字列を作成します。 string は、折り返されるストリングです。 length は、サブストリングの長さ (文字数) です。
ds.Fold(str (string), length (int8))
結果の折り返された文字列を返します。
以下のコードは、「THISsis AsTESTsFOLDEsD STRsING」を返します。
ds.Fold("THIS IS A TEST FOLDED STRING", 5)
フォルプ
グローバリゼーション (グローバリゼーション) モードでは、文字列を折りたたみ、文字表示位置を使用するサブ文字列を作成します。
構文
ds.Folddp(str (string), length (int), opmap (string))
結果の折り返された文字列を返します。
例
以下のコードは、"return" を返します。"ディン" ("O")、"O" ("O")、"S" ("O")
ds.Folddp("这里需要 UNICODE STRING", 5, "0")
索引
サブストリングの開始文字位置を検索します。 引数 occurrence は、サブストリングのどのオカレンスを検索するかを指定します。
構文
ds.Index(string (string), substring (string), occurrence (int32))
戻り値: 出現回数の int32 形式の結果。
例
mylink.mystring1
にストリング「chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers」が含まれている場合、次の関数は値 18 を戻します。
ds.Index(mylink.mystring1,"chocolate",2)
左
ストリングの左端の n 文字を戻します。
構文
ds.Left(string (string) number (int32))
戻り値:ストリングの左端の n 文字です。
例
mylink.mystring1
に「chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers」というストリングが含まれている場合、次の関数は「chocolate」というストリングを戻します。
ds.Left(mylink.mystring1,9)
長さ
ストリングの長さを文字数で返します。
構文
ds.Len(string (string))
returns: ストリングの長さ ( int32 形式)。
例
mylink.mystring1
にストリング「chocolate」が含まれている場合、次の関数は値 9 を戻します。
ds.Len(mylink.mystring1)
レンドップ
グローバリゼーション (グローバリゼーション) モードでは、ストリングの長さとその合計表示位置を戻します。
構文
ds.Lendp(str (string), opmap (string))
戻り値: フォーマット int64のストリングの長さ。
例
次のコードは、19 を返します。
ds.Lendp("这里需要 UNICODE STRING", "0")
突き合せ
MATCHES と同義。 ストリング式をパターンと比較するために使用されます。 Match
構文については、マッチ・オペレーターを参照のこと。
構文
ds.Match(str (string), pattern (string))
戻り値: パターンがブール形式の入力ストリングと一致するかどうかの結果。
例
以下のコードは false を返します。
ds.Match("XYZ123AB", "3X3N")
以下のコードは true を返します。
ds.Match("XYZ123AB", "3X3N...")
MatchField
ストリングを検索し、その中の入力 pattern
パラメーターに一致する部分を返します。 MatchField
構文については、MATCH演算子を参照のこと。
構文
ds.MatchField(str (string), pattern (string), field (int))
returns: フォーマット・ストリングの結果。
例
以下のコードは、ストリング「XYZ」を戻します。
ds.MatchField("XYZ123AB", "3X3N...", 1)
数
ストリングを数値に変換できる場合は 1 を返します。そうでない場合は 0 を返します。
構文
ds.Num(string (string))
ストリングを数値に変換できる場合は 1、それ以外の場合は 0 を int32 形式で返します。
例
mylink.mystring1
にストリング「22」が含まれている場合、以下の関数は値 1 を戻します。
ds.Num(mylink.mystring1)
mylink.mystring1
にストリング「twenty two」が含まれている場合、次の関数は値 0 を戻します。
ds.Num(mylink.mystring1)
PadString
指定された数の埋め込み文字で埋め込まれたストリングを返します。
構文
ds.PadString(string (string) padstring (string) padlength (int32))
戻り値:結果のパディングされたストリングです。
例
mylink.mystring1
にストリング「AB175」が含まれている場合、次の関数はストリング「AB17500000」を戻します。
ds.PadString(mylink.mystring1,"0",5)
除去
システム区切り文字で区切られた動的配列エレメントを抽出して返し、検出されたシステム区切り文字を示します。 1 つの CHAR を区切り文字として受け入れ、どの区切り文字が検出されたかに対応する数値を返します。
数値 | 区切り記号の種類 |
---|---|
0 | ストリングの終わり |
1 | 項目マーク ASCII CHAR (255) |
2 | フィールド・マーク ASCII CHAR (254) |
3 | 値マーク ASCII CHAR (253) |
4 | サブ値マーク ASCII CHAR (252) |
5 | テキスト・マーク ASCII CHAR (251) |
6 | ASCII CHAR (250) (PIOPEN フレーバーでは使用不可) |
7 | ASCII CHAR (249) (PIOPEN フレーバーでは使用不可) |
8 | ASCII CHAR (248) (PIOPEN フレーバーでは使用不可) |
REMOVE機能の詳細については、REMOVE機能を参照。
構文
ds.REMOVE(str (string))
フォーマット・ストリング・リストから区切り文字を除去した結果のストリング、および検出された区切り文字に対応する数値を戻します。
例
次のコードは ["3", "12"] を返します。
ds.REMOVE("12" + ds.VM() + "12" + ds.VM())
右
ストリングの右端の n 文字を戻します。
構文
ds.Right(string (string) number (int32))
戻り値:ストリングの右端の n 文字です。
例
mylink.mystring1
にストリング「chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers」が含まれている場合、次の関数はストリング「dippers」を戻します。
ds.Right(mylink.mystring1,7)
Soundex
SOUNDEX
評価のための標準のオープン・アルゴリズムに基づいて (大まかに) 音声的に類似している単語のセットを識別するコードを返します。
構文
ds.Soundex(string (string))
戻り値:音声的に類似した単語のセットを識別するコードです。
例
mylink.mystring1
にストリング「Griffin」が含まれている場合、次の関数はコード「G615」を戻します。
ds.Soundex(mylink.mystring1)
mylink.mystring1
にストリング「Griphin」が含まれている場合、以下の関数もコード「G615」を戻します。
ds.Soundex(mylink.mystring1)
スペース
n 個のスペース文字のストリングを戻します。
構文
ds.Space(length (int32))
戻り値:指定された長さの空白文字のストリングです。
例
mylink.mylength
に数値 100 が含まれている場合、次の関数は、100 個のスペース文字を含むストリングを戻します。
ds.Space(mylink.mylength)
SQuote
ストリングを単一引用符で囲みます。
構文
ds.SQuote(string (string))
戻り値: 単一引用符で囲まれたストリングです。
例
mylink.mystring1
に引用符が必要なストリングが含まれている場合、次の関数はストリング 'needs quotations' を返します。
ds.SQuote(mylink.mystring1)
Str
ストリングを指定された回数繰り返します。
構文
ds.Str(string (string), repeats (int32))
戻り値: n 回繰り返した結果のストリングです。
例
mylink.mystring1
に「choc」が必要なストリングが含まれている場合、次の関数はストリング「chocchocchocchocchoc」を戻します。
ds.Str(mylink.mystring1,5)
StripWhiteSpace
空白文字をすべて削除した後の文字列を返します。
構文
ds.StripWhiteSpace(string (string))
戻り値:空白を含まないストリングです。
例
mylink.mystring
にストリング「too many spaces」が含まれている場合、次の関数はストリング「toomanyspaces」を戻します:
ds.StripWhiteSpace(mylink.mystring)
サブ文字列
指定されたサブストリングを返します。
n を指定すると、関数はストリングの最後の n 文字を取得します。
start および length を指定すると、この関数は、ストリングの start 位置から length に等しい長さの文字を取得します。
区切り文字 を指定すると、この関数は、ストリング内の指定された区切り文字の間にある 1 つ以上のサブストリングを取得します。 occu は区切り文字の数で、 num は結果のサブストリング内の区切り文字の間のサブストリングの長さです。
構文
ds.Substring(string (string), n (int8))
ds.Substring(string (string), start (int8), length (int8))
ds.Substring(string (string), delimiter (string), occu (int8), num (int8))
書式制御ストリングの結果のサブストリング配列を返します。
例
以下のコードは「ab.cd」を返します。
ds.Substring("ab.cd", ".", 1, 2)
サブストリング
動的配列を作成します。すべてのエレメントは、入力動的配列の対応するエレメントのサブストリングです。
構文
ds.Substrings(str (string), start (int8), length (int8))
戻り値: ストリング・フォーマットの入力配列に対応するサブストリングを持つ、結果の動的配列。
例
以下のコードは、「NESýITHþ23üý50ü」を返します。
ds.Substrings("JONESýSMITHþ1.23ü20ý2.50ü10", 3, 20)
トリム
すべての先頭および末尾のスペースとタブを削除します。 この関数は、内部にあるスペースやタブの複数オカレンスも 1 つに減らします。
引数 stripchar は、オプションでスペースまたはタブ以外の文字を指定します。 引数 options は、実行されるトリム操作のタイプを指定し、以下の 1 つ以上の値を含みます。
A: stripcharのすべてのオカレンスを削除します。
B stripcharの前後のオカレンスの両方を削除します。
D は先頭、末尾、および冗長な空白文字を削除します。
E は末尾の空白文字を削除します。
F は先頭の空白文字を削除します。
Lは stripcharの先行オカレンスをすべて削除します。
Rは stripcharの先行オカレンス、末尾オカレンス、および重複オカレンスを削除します。
T は stripcharの末尾の出現箇所をすべて削除します。
構文
ds.Trim(string (string), [stripchar (string)], [options (string)])
戻り値:トリムされたストリングです。
例
mylink.mystring
に次の文字列が含まれているとします。 空白文字 " を含む文字列の場合、次の関数は文字列「空白文字を含む文字列」を返します。
ds.Trim(mylink.mystring)
mylink.mystring
に文字列 " .... 冗長な .. ドット .... ", 次の関数は、ストリング「Remove.redundant.dots」を返します。
ds.Trim(mylink.mystring,".")
mylink.mystring
にストリング「Remove .. all.. dots....」が含まれている場合、 次の関数は、ストリング「Removealldots」を返します。
ds.Trim(mylink.mystring,".","A")
mylink.mystring
にストリング「Remove .. trailing.. dots....」が含まれている場合、 次の関数は、ストリング「Remove..trailing..dots」を返します。
ds.Trim(mylink.mystring,".","T")
TrimB
ストリングからすべての末尾のスペースとタブを削除します。
構文
ds.TrimB(string (string))
戻り値:トリムされたストリングです。
例
mylink.mystring
にストリング「too many trailing spaces」が含まれている場合、次の関数はストリング「too many trailing spaces」を戻します:
ds.TrimB(mylink.mystring)
TrimF
ストリングからすべての先行スペースとタブを削除します。
構文
ds.TrimF(string (string))
戻り値:トリムされたストリングです。
例
mylink.mystring
にストリング「too many leading spaces」が含まれている場合、次の関数はストリング「too many leading spaces」を戻します:
ds.TrimF(mylink.mystring)
TrimLeadingTrailing
ストリングからすべての先頭および末尾のスペースとタブを削除します。
構文
ds.TrimLeadingTrailing(string (string))
戻り値:トリムされたストリングです。
例
mylink.mystring
にストリング「too many spaces」が含まれている場合、次の関数はストリング「too many spaces」を戻します:
ds.TrimLeadingTrailing(mylink.mystring)
UpCase
ストリング中の小文字をすべて大文字に変換します。
構文
ds.UpCase(string (string))
これは、結果のストリングをすべて大文字で返します。
例
もし'mylink.mystring1
文字列"CaMel cAsE",を含んでいれば、次の関数は文字列 "CAMELCASE"を返す:
ds.UpCase(mylink.mystring1)
IM
CHAR (255) を返します。 AM と同じように機能します。
構文
ds.IM()
結果の CHAR (255) が返されます。
例
以下のコードは「文章」を返します。
ds.IM()
FM
CHAR (254) を返します。
構文
ds.FM()
結果の CHAR (254) を返します。
例
以下のコードは「e」を返します。
ds.FM()
午前
CHAR (254) を返します。 FM と同じ働きをします。
構文
ds.AM()
結果の CHAR (254) を返します。
例
以下のコードは「e」を返します。
ds.AM()
VM
CHAR (253) を返します。
構文
ds.VM()
結果の CHAR (253) が返されます。
例
以下のコードは「いき」を返します。
ds.VM()
SM
CHAR (252) を返します。 SVM と同じ働きをします。
構文
ds.SM()
結果の CHAR (252) が返されます。
例
以下のコードは「ベクトル」を返します。
ds.SM()
SVM
CHAR (252) を返します。 SM と同じように機能します。
構文
ds.SVM()
結果の CHAR (252) が返されます。
例
以下のコードは「ベクトル」を返します。
ds.SVM()
TM
CHAR (251) を返します。
構文
ds.TM()
結果の CHAR (251) が返されます。
例
以下のコードは「-」を返します。
ds.TM()
ユーティリティー関数
ユーティリティー関数は、特定の DataStage 関数に関する情報の取得に関連するさまざまな目的を指定します。
ElementAt
索引によって指定されたリスト内のエレメントを戻します。
構文
ds.ElementAt(list (object))
これは、フォーマット・オブジェクトのエレメント索引を返します。
例
以下のコードは「b」を返します。
ds.ElementAt(["a","b","c"], 1)
以下のコードは 2 を返します。
ds.ElementAt([1,2,3], 1)
GetCommandName
「Bash スクリプトの実行」アクティビティーのノード ID を受け取り、「bash スクリプトの実行」アクティビティーのコマンド名を取得します。
構文
ds.GetCommandName(tasks.activity_id (string))
書式制御ストリングのコマンド名を戻します。
例
以下のコードは、タスク run_bash_script_5
のコマンド名を返します。
ds.GetCommandName(tasks.run_bash_script_5)
GetCommandOutput
「Bash スクリプトの実行」アクティビティーのノード ID を取得し、その標準出力を取得します。 これは CEL 式と同等です。
tasks.<activity_id>.results.standard_output
構文
ds.GetCommandOutput(tasks.activity_id (string))
戻り値: 書式制御ストリングの標準出力。
例
以下のコードは、タスク run_bash_script_5
の標準出力を返します。
ds.GetCommandOutput(tasks.run_bash_script_5)
GetErrorMessage
例外ハンドラーのタスクでのみ使用される出力は、例外が発生したときに警告としてログに記録されるメッセージのテキストです。
構文
ds.GetErrorMessage()
returns: フォーマット・ストリングの結果のメッセージ。
例
以下のコードは、失敗したタスクのエラー・メッセージを返します。
ds.GetErrorMessage()
GetErrorNumber
例外ハンドラーのタスクでのみ使用されます。出力は整数で、開始されるエラーのタイプを示します。 1または-1。
1 は、タスクがキャンセルされたジョブを実行し、特定のハンドラーがセットアップされていないことを示します。
--1は、タスクが他の理由で実行に失敗したことを示す。
構文
ds.GetErrorNumber()
戻り値: int 形式の結果の整数。
例
以下のコードは、例外ハンドラー・アクティビティーのタイプのエラー番号を戻します。
ds.GetErrorNumber()
GetErrorSource
例外ハンドラーのタスクでのみ使用される出力は、例外を発生させたアクティビティー・ステージのステージ名です。
構文
ds.GetErrorSource()
書式制御ストリングのタスクの結果の値を返します。
例
以下のコードは、失敗したタスクを返します。
ds.GetErrorSource()
GetJobName
関数が実行された時点での「 DataStage の実行」アクティビティーのジョブ名を返します。 これは CEL 式と同等です。
tasks.<activity_id>.results.job_name
構文
ds.GetJobName(tasks.activity_id (string))
書式制御ストリングのジョブ名を戻します。
例
以下のコードは、タスク run_datastage_flow_1
のジョブ名を返します。
ds.GetJobName(tasks.run_datastage_flow_1)
GetJobNameWithInvocationId
ジョブが複数のインスタンスで実行され、ジョブ呼び出し ID が空でない場合に、接尾部呼び出し ID を使用して関数が実行された時点での「 DataStage の実行」アクティビティーのジョブ名を返します。
構文
ds.GetJobNameWithInvocationId(tasks.nodeId)
戻り値: フォーマット・ストリングのジョブ名。使用可能な場合は、呼び出し ID が接尾部として付けられます。
例
以下のコードは、タスク名 rowGenPeekJob
および呼び出し ID bigloop1
を持つ rowGenPeekJob.bigloop1
を返します。
ds.GetJobNameWithInvocationId(tasks.rowGenPeekJob)
GetJobStatus
「 DataStage アクティビティーの実行」のノード ID を取得し、 <activity_name>.$JobStatus
のジョブ状況を取得します。 これは、以下の cel 式に相当します。
((tasks.<activity_id>.results.status == 'Completed') ? 1 : ((tasks.<activity_id>.results.status == 'CompletedWithWarnings') ? 2 : ((tasks.<activity_id>.results.status == 'Cancelled') ? 96 : 3)))
構文
ds.GetJobStatus(tasks.activity_id (string))
戻り値: int 形式のジョブ状況。
例
以下のコードは、タスク run_datastage_flow_1
の状況を返します。
ds.GetJobStatus(tasks.run_datastage_flow_1)
GetListCounter
リスト・カウンターのみを使用するループ内のタスクで使用され、出力はカウンター変数の現行値になります。
構文
ds.GetListCounter()
戻り値: フォーマット・ストリングのカウンターの結果の値。
例
以下のコードは、ループの現行値を返します。
ds.GetListCounter()
GetNumericCounter
数値カウンターのみを持つループ内のタスクで使用されると、出力はループのカウンター変数の現行値になります。
構文
ds.GetNumericCounter()
戻り値: int 形式のカウンターの結果の値。
例
以下のコードは、ループの現行値を返します。
ds.GetNumericCounter()
GetOutputArg
ストリング・タイプの JSON の入力から、キーの指定された値を返します。
構文
ds.GetOutputArg(JSON (string), key_value (string))
returns: プロパティー・フィールドの値。
例
以下のコードは、ストリング値「tom」を返します。
ds.GetOutputArg("{"name":"tom"}", "name")
GetReturnValue
「Bash スクリプトの実行」アクティビティーのノード ID を受け取り、「Bash スクリプトの実行」アクティビティーの値を返します。 これは、以下の CEL 式と同等です。
tasks.<activity_id>.results.return_value
構文
ds.GetReturnValue(tasks.activity_id (string))
戻り値: int 形式のタスクの結果の値。
例
以下のコードは、タスク tasks.run_bash_script_5
の値を返します。
ds.GetReturnValue(tasks.run_bash_script_5)
GetUserStatus
DataStage フロー・タスクの ID を取得し、シーケンス・ジョブ内の DataStage フロー・タスクの状況を返します。 この関数は、パラレル・ジョブで実行された場合は機能しません。 これは CEL 式と同等です。
tasks.<activity_id>.results.user_status
構文
ds.GetUserStatus(tasks.run_datastage_id (string))
戻り値: フォーマット・ストリングの DataStage フロー・タスク ID の状況。
例
以下のコードは、タスク ID run_datastage_5
の値を返します。
ds.GetUserStatus(tasks.run_datastage_5)
LogName
現行ユーザーのログイン名を戻します。
構文
ds.LogName()
書式制御ストリングの現行ユーザーのログイン名を戻します。
例
以下のコードは、現行ユーザーのログイン名を返します。
ds.LogName()
パス
現行ユーザーのパス名を戻します。
構文
ds.Path()
戻り値: フォーマット・ストリングの現行ユーザーのパス名。
例
以下のコードは、現行ユーザーのパス名を返します。
ds.Path()
スキーマ
現行ユーザーのスキーマ名を戻します。
構文
ds.Schema()
戻り値: フォーマット・ストリングの現行ユーザーのスキーマ名。
例
以下のコードは、現行ユーザーのスキーマ名を返します。
ds.Schema()
UserNo
現行ユーザーのユーザー番号を戻します。
構文
ds.UserNo()
戻り値: int 形式の現行ユーザーのユーザー情報。
例
以下のコードは、現行ユーザーのユーザー番号を返します。
ds.UserNo()
担当者
現在のユーザーを返します。
構文
ds.Who()
戻り値: 書式制御ストリングの現行ユーザー。
例
以下のコードは、現行ユーザーを返します。
ds.Who()
NULL 処理関数
NULL 処理を行う関数。
IsNull
入力式が NULL 値に評価された場合に true を返します。
構文
ds.IsNull(input (any))
戻り値: 式がブール形式の NULL に評価されるかどうかの結果。
例
以下のコードは true を返します。
ds.IsNull(null)
以下のコードは false を返します。
ds.IsNull(0)
IsNotNull
入力式が NULL 値に評価されない場合に true を返します。
構文
ds.IsNotNull(input (any))
戻り値: 式が NULL (ブール形式) に評価されないかどうかの結果。
例
以下のコードは false を返します。
ds.IsNotNull(null)
以下のコードは true を返します。
ds.IsNotNull(0)
ヌル
NULL 値を戻します。
構文
ds.Null()
戻り値: NULL 値。
例
以下のコードは NULL を返します。
ds.Null()
NullToEmpty
入力が NULL の場合は空ストリングを返し、それ以外の場合は入力列の値を返します。
構文
ds.NullToEmpty(input (any))
これは、空ストリングまたは入力値を返します。
例
以下のコードは「AA」を返します。
ds.NullToEmpty("AA")
以下のコードは "" を返します。
ds.NullToEmpty(null)
NullStr
NULL ストリング CHAR (128) を返します。
構文
ds.NullStr()
これは、NULL ストリング CHAR (128) を返します。
例
以下のコードは € を返します。
ds.NullStr()
NullToValue
入力が NULL の場合は指定された値を返し、それ以外の場合は入力列の値を返します。
構文
ds.NullToValue(input (any), default (any))
戻り値: 指定された値または入力値。
例
以下のコードは「test」を返します。
ds.NullToValue("test", "default")
以下のコードは「default」を返します。
ds.NullToValue(null, "default")
以下のコードは 1 を返します。
ds.NullToValue(null, 1)
NullToZero
入力が NULL の場合は 0 を返し、それ以外の場合は入力列の値を返します。
構文
ds.NullToZero(input (any))
0 または入力値を返します。
例
以下のコードは 88 を返します。
ds.NullToZero(88)
以下のコードは 0 を返します。
ds.NullToZero(null)
SetNull
ターゲット列に NULL 値を割り当てます。
構文
ds.SetNull()
returns: ターゲットを NULL 値に設定します。
例
以下のコードは NULL を返します。
ds.SetNull()
マクロ関数
DataStage シーケンス・ジョブに関連する一連のプロジェクト・メタデータの取得を処理する関数。
JobName
シーケンサー・ジョブ名を戻します。
構文
ds.JobName
書式制御ストリングのシーケンサー・ジョブ名を戻します。
例
以下のコードは、シーケンサー・ジョブ名を戻します。
ds.JobName
JobStartDate
シーケンサー・ジョブの開始日を戻します。
構文
ds.JobStartDate
書式制御ストリングのシーケンサー・ジョブ開始日を戻します。
例
以下のコードは、シーケンサー・ジョブの開始日を返します。
ds.JobStartDate
JobStartTime
シーケンサー・ジョブの開始時刻を戻します。
構文
ds.JobStartTime
書式制御ストリングのシーケンサー・ジョブ開始時刻を戻します。
例
以下のコードは、シーケンサー・ジョブの開始時刻を戻します。
ds.JobStartTime
JobStartTimestamp
シーケンサー・ジョブの開始タイム・スタンプを戻します。
構文
ds.JobStartTimestamp
これは、タイム・スタンプ形式のシーケンサー・ジョブ開始タイム・スタンプを返します。
例
以下のコードは、シーケンサー・ジョブの開始タイム・スタンプを戻します。
ds.JobStartTimestamp
HostName
DataStage サーバーのホスト名を返します。
構文
ds.HostName
書式制御ストリングのシーケンサー・ジョブ InvocationId
を戻します。
例
以下のコードは、シーケンサー・ジョブ InvocationId
を返します。
ds.HostName
ProjectName
実行中のシーケンサー・ジョブのプロジェクト名を戻します。
構文
ds.ProjectName
戻り値: 実行中のシーケンサー・ジョブのプロジェクト名。
例
以下のコードは、実行中のシーケンサー・ジョブのプロジェクト名を戻します。
ds.ProjectName
ProjectId
実行中のシーケンサー・ジョブのプロジェクト ID を戻します。
構文
ds.ProjectId
これは、実行中のシーケンサー・ジョブのプロジェクト ID を返します。
例
以下のコードは、実行中のシーケンサー・ジョブのプロジェクト ID を戻します。
ds.ProjectId
JobId
実行中のシーケンサー・ジョブのジョブ ID を戻します。
構文
ds.JobId
戻り値: 実行中のシーケンサー・ジョブのジョブ ID。
例
以下のコマンドは、実行中のシーケンサー・ジョブのジョブ ID を戻します。
ds.JobId
JobController
実行中のシーケンサー・ジョブのパイプライン・フロー名を戻します。
構文
ds.JobController
returns: 実行中のシーケンサー・ジョブのパイプライン・フロー名。
例
以下のコマンドは、実行中のシーケンサー・ジョブのパイプライン・フロー名を返します。
ds.JobController
親トピック: パイプラインへの条件の追加