0 / 0
Go back to the English version of the documentation
DataStage Funkce použité v sestavovači produktovodů
Last updated: 07. 6. 2023
DataStage Funkce použité v sestavovači produktovodů

Použijte tyto funkce DataStage v editorech kódu Watson Pipelines , například k definování uživatelské proměnné nebo k sestavení pokročilého stavu.

Syntaxe pro funkce Tvůrce výrazů

V syntaxi pro argumenty se hranaté závorky označují, že argument je volitelný.

Parametr může přijímat data libovolného typu. To označuje, že můžete zadat argument typu řetězec, int, float, null a tak dále. Například funkce IsNull(input (any)) přijímá následující typy parametrů, ale není výlučná pro následující typy:

ds.IsNull(1)
ds.IsNull("try null")
ds.IsNull(1.78)
ds.IsNull(null)

Tvůrce výrazů používá tyto katagorie pro funkce kódování:

Převodní funkce

Převede jeden formát datového prvku na jiný.

ASCII

Převádí hodnoty znaků v řetězci z formátu EBCDIC do ASCII.

Syntaxe

ds.Ascii(input (string))

vrátí: řetězec EDBCDI převedený na výsledný řetězec ASCII řetězce formátu.

Příklad

Následující kód vrátí "65 66 67":

ds.Ascii("193 194 195")

Znak

Vrací ASCII znak z hodnoty číselného kódu.

Syntaxe

ds.Char(code (uint8))

vrací: odpovídající znak ve formátu char.

Příklad

Následující příklad vytiskne ASCII kód 65 jako znak A.

ds.Char(65)

Kontrolní součet

Vrátí hodnotu cyklického kódu redundance pro řetězec.

Syntaxe

ds.Checksum(input (string))

Vrací: hodnotu kontrolního součtu formátovacího řetězce, který je cyklickým kódem redundance.

Příklad

Následující kód vrátí 57158:

ds.Checksum("This is any arbitrary string value")

CRC32

Používá funkci CRC32 k vrácení 16bitového cyklického kódu redundance.

Syntaxe

ds.CRC32(input (string))

vrací: výsledek dekadického formátu.

Příklad

Následující kód vrátí 57158:

ds.CRC32("This is any arbitrary string value")

Řetězec DateTo

Vrátí řetězcovou reprezentaci daného data. Řetězec výchozího formátu pro data je "%yyyy%mm%dd", takže například datum 2009-08-25 je uloženo jako dekadické číslo 20090825. Volitelně však můžete zadat řetězec formátu, který určuje, jak je datum uloženo v desetinném čísle. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například nemůžete uvést řetězec formátu jako "%yyyy-%mm-%dd", protože znak pomlčky (-) nemůže být uložen v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%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)

Literálové číslice 0 až 9 jsou také platné.

Syntaxe

ds.DateToString(date (date), [format (string)])

vrátí: datum ve formátu řetězce.

Příklad

Pokud mylink.mydate obsahuje datum 18th , 2009, pak následující kód vrátí řetězec "2009-08-18":

ds.DateToString(mylink.mydate)

Následující příklad vypíše datum obsažené ve sloupci mylink.mydate na řetězec ve formátu dd:mm:yyyy. Pokud mylink.mydate obsahovalo datum 18th Srpen 2009, pak následující kód vrátí řetězec "18:08:2009":

ds.DateToString(mylink.mydate, "%dd:%mm:%yyyy")

DateToDesetinné číslo

Vrátí zadané datum jako pakovanou desetinnou hodnotu. Řetězec výchozího formátu pro data je "%yyyy%mm%dd", takže například datum 2009-08-25 je uloženo jako dekadické číslo 20090825. Volitelně však můžete zadat řetězec formátu, který určuje, jak je datum uloženo v desetinném čísle. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například nemůžete uvést řetězec formátu jako "%yyyy-%mm-%dd", protože znak pomlčky (-) nemůže být uložen v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%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)

Literálové číslice 0 až 9 jsou také platné.

Syntaxe

ds.DateToDecimal(basedate (date), [format (string)])

vrátí: datum ve formátu desetinného čísla.

Příklad

Pokud mylink.basedate obsahuje datum 2012-08-18, pak následující funkce ukládá datum jako desítkové číslo 18082012:

ds.DateToDecimal(mylink.basedate, "%dd%mm%yyyy")

Pokud mylink.basedate obsahuje datum 2012-08-18, pak následující funkce ukládá datum jako desítkové číslo 20120818:

ds.DateToDecimal(mylink.basedate)

Datum DecimalTo

Vrátí dané pakované desetinné číslo jako datum. Při převodu na datum jsou ignorovány jak znak, tak i měřítko desetinného čísla. Výchozí formátovací řetězec je "%yyyy%mm%dd", takže například datum 2009-08-25 je uloženo jako dekadické číslo 20090825. Volitelně však můžete zadat řetězec formátu, který určuje, jak je datum uloženo v desetinném čísle. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například nemůžete uvést řetězec formátu jako "%yyyy-%mm-%dd", protože znak pomlčky (-) nemůže být uložen v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%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)

Literálové číslice 0 až 9 jsou také platné.

Syntaxe

ds.DecimalToDate(basedec (decimal), [format (string)])

returns: desetinné číslo ve formátu data.

Příklad

Pokud mylink.mydecdata obsahuje hodnotu 18082012, pak následující funkce vrací datum 2012-08-18:

ds.DecimalToDate(mylink.basedate, "%dd%mm%yyyy")

Pokud mylink.mydecdata obsahuje hodnotu -201208.18, pak následující funkce vrací datum 2012-08-18:

ds.DecimalToDate(mylink.basedate)

DecimalToDesetinné číslo

Vrátí dané desetinné číslo v desítkové reprezentaci. Argument rtype volitelně určuje typ zaokrouhlení a je nastaven na jednu z následujících hodnot:

ceil: Zaokrouhlí zdrojové pole směrem k kladnému nekonečnu. Příklad: 1.4 -> 2, -1.6 -> -1.

floor: Zaokrouhlí zdrojové pole směrem k zápornému nekonečnu. Příklad: 1.6 -> 1, -1.4 -> -2.

round_inf: Sloučí nebo zkracuje zdrojové pole směrem k nejbližšímu reprezentativnímu hodnotě a zaokrouhlí vazby tak, že zaokrouhlí kladné hodnoty směrem k kladnou nekonečnu a záporné hodnoty do záporného nekonečna. Příklad: 1.4 -> 1, 1.5 -> 2, -1.4 -> -1, -1.5 -> -2.

trunc_zero: Zařadí všechny desetinné číslice napravo od nejkrajnější desetinné číslice podporované v místě určení bez ohledu na znaménko. Například, je-li cílem celé číslo, všechny desetinné číslice se oseknou. Je-li cílem jiné desetinné číslo s menším počtem desetinných míst, zaokrouhlí nebo ořízne na velikost stupnice místa určení. Příklad: 1.6 -> 1, -1.6 -> -1.

Syntaxe

ds.DecimalToDecimal(decimal (decimal), [rtype (string)])

Vrací: výsledné desetinné číslo.

Příklad

Pokud mylink.mydec obsahuje dekadické číslo 2.5345 , vrátí následující funkce desetinné číslo 2.54:

ds.DecimalToDecimal(mylink.mydec,"ceil")

Pokud mylink.mydec obsahuje dekadické číslo 2.5345 , vrátí následující funkce desetinné číslo 2.53.

ds.DecimalToDecimal(mylink.mydec,"floor")

Pokud mylink.mydec obsahuje dekadické číslo 2.5345 , vrátí následující funkce desetinné číslo 2.53.

ds.DecimalToDecimal(mylink.mydec,"trunc_zero")

Pokud mylink.mydec obsahuje dekadické číslo 2.5345 , vrátí následující funkce desetinné číslo 2.53.

ds.DecimalToDecimal(mylink.mydec,"round_inf")

DFloat DecimalTo

Vrátí dané desetinné číslo v reprezentaci dfloat . Volitelný argument fix_zero uvádí, že všechny nulové desetinné hodnoty jsou považovány za platné (standardně jsou desetinná čísla zahrnující všechny nuly považovány za neplatné).

Syntaxe

ds.DecimalToDFloat(decimal (decimal), ["fix_zero"])

Vrací: desetinné číslo ve formátu dfloat .

Příklady

Pokud mylink.mydec obsahuje desítkové číslo 00000004.00 , vrací následující funkce číslo dfloat 4.

ds.DecimalToDFloat(mylink.mydec,"fix_zero")

Pokud mylink.mydec obsahuje desítkové číslo 00012344.00 , vrátí následující funkce číslo dfloat 12344.

ds.DecimalToDFloat(mylink.mydec,"fix_zero")

Pokud mylink.mydec obsahuje desítkové číslo 00012344.120 , vrátí následující funkce číslo dfloat 12344.12.

ds.DecimalToDFloat(mylink.mydec,"fix_zero")

Pokud mylink.mydec obsahuje dekadické číslo 00012344.120 , vrátí následující funkce číslo dfloat 12344.12.

ds.DecimalToDFloat(mylink.mydec)

Pokud mylink.mydec obsahuje desítkové číslo 00012344.000 , vrátí následující funkce číslo dfloat 12344.

ds.DecimalToDFloat(mylink.mydec)

Řetězec DecimalTo

Vrátí dané desetinné číslo jako řetězec. Argument fix_zero volitelně uvádí, že všechny nulové desetinné hodnoty se považují za platné (standardně jsou desítková čísla složená ze všech nul považována za neplatnou). To pokrývá případ, kdy jsou bity podpisu pakované desetinné znázornění všech 0 a také všechny číslice obsahu. Toto přetypování není považováno za platné, pokud fix_zero není pravda.

Syntaxe

ds.DecimalToString(decimal (decimal), ["fix_zero"])

returns: desetinné číslo ve formátu řetězce.

Příklady

Pokud mylink.mydec obsahuje dekadické číslo 00000004.00, následující funkce vrací řetězec "4":

ds.DecimalToString(mylink.mydec,"suppress_zero")

Pokud mylink.mydec obsahuje dekadické číslo 00000004.00, následující funkce vrací řetězec "0000000000000000000000000004.0000000000":

ds.DecimalToString(mylink.mydec,"fix_zero")

Pokud mylink.mydec obsahuje dekadické číslo 00000004.00, následující funkce vrací řetězec "4":

ds.DecimalToString(mylink.mydec)

Čas DecimalTo

Vrátí dané pakované desetinné číslo jako čas. Volitelně můžete uvést řetězec formátu, který uvádí, jak je čas uložen v desetinném čísle. Výchozí řetězec formátu je "%hh%nn%ss", takže například čas 14:03:22 je uložen jako desítkové číslo 140322. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například nemůžete uvést řetězec formátu jako "%hh: %nn:%ss", protože dvojtečkový znak (:) nemůže být uložen v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%hh (two-digit hours using 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 one to six inclusive).

Literálové číslice 0 až 9 jsou také platné.

Pokud zadaný formát zahrnuje mikrosekundy (například %ss.4), odvodí se pozice desetinného místa v desetinné hodnotě. Pozice desetinné čárky se nemusí shodovat s uvedeným měřítkem desetinného místa (například, měřítko = 4).

Syntaxe

ds.DecimalToTime(decimal (decimal), [format (string)])

returns: Formát zápisu desetinných míst ve formátu času.

Příklad

Pokud mylink.mytimedec obsahuje desetinnou hodnotu 200658, pak následující funkce vrací čas 20:06:58:

ds.DecimalToTime(mylink.mytimedec)

Pokud sloupec mylink.mytimedec obsahuje desetinnou hodnotu 580620, pak následující funkce vrací čas 20:06:58:

ds.DecimalToTime(mylink.mytimedec, "%ss%nn%hh")

Časové razítko DecimalTo

Vrátí dané pakované desetinné číslo jako časové razítko. Volitelně můžete uvést řetězec formátu, který uvádí, jak je časové razítko uloženo v desetinném čísle. Výchozí formátovací řetězec je "%hh%nn%s", takže například časový údaj 2009-08-25 14:03:22 je uložen jako desítkové číslo 20090825140322. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například, nemůžete uvést řetězec formátu jako "%yyyy/%mm/%dd%hh: %nn:%ss", protože znak lomítko (/) a znak dvojtečky (:) nelze uložit v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%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 using 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 one to six inclusive).

Literálové číslice 0 až 9 jsou také platné.

Pokud zadaný formát zahrnuje mikrosekundy (například %ss.4), odvodí se pozice desetinného místa v desetinné hodnotě. Pozice desetinné čárky se nemusí shodovat s uvedeným měřítkem desetinného místa (například, měřítko = 4).

Syntaxe

ds.DecimalToTimestamp(decimal (decimal), [format (string)])

returns: Desetinné číslo ve formátu časového razítka.

Příklad

Pokud mylink.mytimestampdec obsahuje hodnotu 19580818200658, pak následující funkce vrací časové razítko 1958-08-18 20:06:58:

ds.DecimalToTimestamp(mylink.mytimestampdec)

Pokud link.mytimestampdec obsahuje desetinnou hodnotu 200658220818, pak následující funkce vrací časové razítko 2022-08-18 20:06:58:

ds.DecimalToTimestamp(mylink.mytimestampdec, "%hh%nn%ss%yy%mm%dd")

DFloatToDesetinné číslo

Vrátí daný objekt dfloat v desítkové reprezentaci. Argument rtype volitelně určuje typ zaokrouhlení a je nastaven na jednu z následujících hodnot:

ceil: Zaokrouhlí zdrojové pole směrem k kladnému nekonečnu. Příklad: 1.4 -> 2, -1.6 -> -1.

floor: Zaokrouhlí zdrojové pole směrem k zápornému nekonečnu. Příklad: 1.6 -> 1, -1.4 -> -2.

round_inf: Sloučí nebo zkracuje zdrojové pole směrem k nejbližšímu reprezentativnímu hodnotě a zaokrouhlí vazby tak, že zaokrouhlí kladné hodnoty směrem k kladnou nekonečnu a záporné hodnoty do záporného nekonečna. Příklad: 1.4 -> 1, 1.5 -> 2, -1.4 -> -1, -1.5 -> -2.

trunc_zero: Zařadí všechny desetinné číslice napravo od nejkrajnější desetinné číslice podporované v místě určení bez ohledu na znaménko. Například, je-li cílem celé číslo, všechny desetinné číslice se oseknou. Je-li cílem jiné desetinné číslo s menším počtem desetinných míst, zaokrouhlí nebo ořízne na velikost stupnice místa určení. Příklad: 1.6 -> 1, -1.6 -> -1.

Syntaxe

ds.DFloatToDecimal(number (dfloat), [rtype (string)])

returns: the decimal in dfloat format.

Příklady

Pokud příkaz mylink.myfloat obsahuje číslo s hodnotou dfloat 2.534, následující funkce vrátí dekadické číslo 2.54:

ds.DFloatToDecimal(mylink.mydec,"ceil")

Pokud příkaz mylink.myfloat obsahuje číslo s hodnotou dfloat 2.534, vrátí následující funkce počet desetinných míst 2.53:

ds.DFloatToDecimal(mylink.mydec,"floor")

Pokud příkaz mylink.myfloat obsahuje číslo s hodnotou dfloat 2.534, vrátí následující funkce počet desetinných míst 2.53:

ds.DFloatToDecimal(mylink.mydec,"trunc_zero")

Pokud příkaz mylink.myfloat obsahuje číslo s hodnotou dfloat 2.534, vrátí následující funkce počet desetinných míst 2.53:

ds.DFloatToDecimal(mylink.mydec,"round_inf")

DfloatToStringNoExp

Vrací daný objekt dfloat ve své řetězcové reprezentaci bez exponentu s použitím zadaného měřítka.

Syntaxe

ds.DfloatToStringNoExp(number (dfloat), scale (string))

returns: číslo řádku dfloat ve formátu řetězce.

Příklady

Pokud mylink.myfloat obsahuje číslo s hodnotou dfloat 2.534, pak následující funkce vrací řetězec "2.5":

ds.DfloatToStringNoExp(mylink.myfloat, "2")

Dtx

Převede dekadické celé číslo na hexadecimální.

Syntaxe

ds.Dtx(number (int32), size(int8))

vrátí: výsledek formátovacího řetězce.

Příklad

Návratový kód "002F" vrátí následující kód:

ds.Dtx(47,4)

EBCDIC

Převede každý znak výrazu z jeho hodnoty reprezentace ASCII na hodnotu v reprezentaci EBCDIC.

Syntaxe

ds.Ebcdic(input (string))

vrátí: řetězec ASCII převedený na výsledný řetězec EDBCDII.

Příklad

Následující kód se vrátí "193 194 195 64 241 242 243":

ds.Ebcdic("ABC 123")

Iconv

Převádí řetězec na vnitřní formát úložiště.

Syntaxe

ds.Iconv(string (string), code (string))

Vrací: vnitřní formát úložiště ve formátu řetězce.

Příklad

Následující kód vrátí 10740:

ds.Iconv("27 MAY 97", "D2")

Následující kód vrátí 10740:

ds.Iconv("1997 5 27", "D YMD")

IntToBool

Převeďte celé číslo na typ bool. Vrátí logickou hodnotu true pro jakoukoli neprázdnou hodnotu a hodnotu false pro 0.

Syntaxe

ds.IntToBool(integer (int))

returns: logická hodnota true nebo false.

Příklad

Hodnota 2 vrátí hodnotu true.

ds.IntToBool(2)

IsValid

Vrací informaci o tom, zda daný řetězec je platný pro daný typ.

Platné typy jsou "date", "decimal", "dfloat", "sfloat", "int8", "uint8", "int16", "uint16", "int32", "uint32", "int64", "uint64", "string", "time", "timestamp".

Pro datové typy data, času a označení času můžete volitelně zadat řetězec formátu. Formátovací řetězec popisuje formát, který vstupní data používají, když se liší od výchozích formátů pro datum, čas nebo časové označení. Výchozí formát pro datum je "%rrrr-%mm-%dd". Výchozí formát pro čas je "%hh: %mm:%ss". Výchozí formát časového razítka je "%rrrr-%mm-%dd %hh: %mm:%ss". Tato funkce nezaprotokoluje varování.

Syntaxe

ds.IsValid(type (string), teststring (string), [format (string)])

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Příklad

Pokud mylink.mystring obsahuje řetězec "1", pak následující funkce vrací hodnotu 1:

ds.IsValid("int8", mylink.mystring)

Pokud mylink.mystring obsahuje řetězec "380096.06", pak následující funkce vrátí hodnotu 0:

ds.IsValid("int8", mylink.mystring)

IsValidDatum

Vrací informaci o tom, zda je daná hodnota platná pro datum typu. Tato funkce protokoluje varování.

Syntaxe

ds.IsValidDate(testdate (date))

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Pokud mylink.mydate obsahuje datum 2011-09-13, pak následující funkce vrátí hodnotu 1.

ds.IsValidDate(mylink.mydate)

Pokud mylink.mydate obsahuje řetězec "380096.06", pak následující funkce vrací hodnotu 0, protože převedený řetězec není platné datum.

ds.IsValidDate(mylink.mydate)

IsValidDesetinný

Vrátí, zda je daná hodnota platná pro typ Decimal. Je-li parametr allzerosflag nastaven na hodnotu 0, není reprezentace všech nul platný. Při výchozím nastavení je hodnota allzerosflag nastavena na hodnotu 0.

Syntaxe

ds.IsValidDecimal(testvalue (decimal), [allzerosflag (uint8)])

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Příklady

Pokud mylink.mynum obsahuje hodnotu 310007.65, pak následující funkce vrátí hodnotu 1.

ds.IsValidDecimal(mylink.mynum)

IsValidČas

Vrací informaci o tom, zda je daný čas platný pro typ čas.

Syntaxe

ds.IsValidTime(testtime (time))

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Příklady

Pokud mylink.mytime obsahuje čas 23:09:22, pak následující funkce vrací hodnotu 1:

ds.IsValidTime(mylink.mytime)

IsValidČasové razítko

Vrací, zda je dané časové razítko platné pro typ timestamp.

Syntaxe

ds.IsValidTimestamp(testtimestamp (timestamp))

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Příklady

Pokud mylink.mytimestamp obsahuje čas 2011-09-13 23:09:22, pak následující funkce vrací hodnotu 1:

ds.IsValidTimestamp(mylink.mytimestamp)

Ovrovník

Převede výraz na výstupní formát.

Syntaxe

ds.Oconv(expression (string), conversion (string))

vrátí výsledek: výsledek do výstupního formátu řetězce formátu.

Příklad

Následující kód vrátí hodnotu 1997-147:

ds.Oconv(10740, "D-YJ")

Následující kód vrátí hodnotu 27 KVĚTEN 97:

ds.Oconv(10740, "D DMY, [A3,2]")

RawNumV

Vrací celočíselnou hodnotu na zadané hodnotě indexu v uvedeném prvotním poli. Index začíná hodnotou 0.

Syntaxe

ds.RawNumAt(rawfield (string), index (int32))

returns: hodnota typu integer na indexu ve formátu int32 .

Příklady

Obsahuje-li column mylink.myraw hrubou hodnotu odvozenou z řetězce "hello" (který je "{ 0x68 0x65 0x6C 0x6C 0x6F }"), pak následující funkce vrací celé číslo 104 (kód ASCII pro znak h):

ds.RawNumAt(mylink.myraw, 0)

Pokud mylink.myraw obsahuje nezpracovanou hodnotu odvozenou z řetězce "hello" (což je "{ 0x68 0x65 0x6C 0x6C 0x6F }"), pak následující funkce vrací hodnotu 0, protože určený index je mimo rozsah:

ds.RawNumAt(mylink.myraw, 12)

Řetězec RawTo

Vrátí danou hrubou hodnotu jako řetězcovou reprezentaci. Musíte se ujistit, že prvotní vstupní hodnota obsahuje posloupnost bajtů, které jsou platné jako znaky v cílové znakové sadě, ve které se používá výstupní řetězec.

Například, hrubá hodnota { 0xE0 0x41 0x42 } není platnou posloupností znaků UTF-8 , protože hlavní bajt, 0xE0, má být následován bajtem v rozsahu [0x80..0xBF].

Je-li do funkce String RawTopředána nezpracovaná hodnota { xE0 x41 x42 } , může dojít k chybě, pokud se k výstupnímu řetězci přistupuje tak, jako by bylo kódováno v UTF-8.

Syntaxe

ds.RawToString(rawfield (string))

vrátí: danou prvotní hodnotu jako řetězec.

Příklady

Pokud mylink.myraw obsahuje hodnotu { 0x31 0x31 0x30 0x35 0x32 0x32 0x30 0x39 }, pak následující funkce vrací řetězec "11052209".

ds.RawToString(mylink.myraw)

Pořadí

Generuje numerickou hodnotu kódu ze znaku ASCII. Volitelně můžete zadat argument allow8bits pro převod 8bitových hodnot ASCII.

Syntaxe

ds.Seq(seq (char))

vrátí: číselný kód ASCII.

Příklady

Následující příklad ukazuje výstup znaku A jako ASCII kód 65.

ds.Seq("A")

SeqAt

Vrací hodnotu číselného kódu znaku na zadané pozici v daném řetězci. Index začíná hodnotou 0. Je-li zadaný index mimo rozsah, funkce vrátí hodnotu 0.

Syntaxe

ds.SeqAt(basestring (string), index (int32))

returns: numeric code point value of the character at the specified position in the given string in int32 format.

Příklady

Pokud mylink.mystring obsahuje řetězec "kůň", pak následující funkce vrátí hodnotu 0x6F (to znamená, že je hodnota ASCII znaku o).

ds.SeqAt(mylink.mystring, 1)

StringToBool

Převádí řetězec na typ bool. Vrátit hodnotu false pro prázdný řetězec, vrátit hodnotu true pro jakoukoli jinou hodnotu.

Syntaxe

ds.StringToBool(string (string))

returns: logická hodnota true nebo false.

Příklad

Prázdný řetězec vrací hodnotu false.

ds.StringToBool("")

Datum StringTo

Vrací datum z daného řetězce v uvedeném formátu. Řetězec formátu není třeba zadávat, pokud řetězec obsahuje datum ve výchozím formátu rrrr-mm-dd.

Syntaxe

ds.StringToDate(string (string), [format (string)])

vrátí: řetězec k datu v určeném formátu.

Příklady

Pokud mylink.mystring obsahuje řetězec "1958-08-18", pak následující funkce vrací datum 1958-08-18.

ds.StringToDate(mylink.mystring)

Pokud mylink.mystring obsahuje řetězec "18:08:1958", pak následující funkce vrací datum 1958-08-18.

ds.StringToDate(mylink.mystring,"%dd:%mm:%yyyy")

StringToDesetinný

Vrátí daný řetězec jako desetinnou reprezentaci. Argument rtype volitelně určuje typ zaokrouhlení a je nastaven na jednu z následujících hodnot:

ceil: Zaokrouhlí zdrojové pole směrem k kladnému nekonečnu. Příklad: 1.4 -> 2, -1.6 -> -1.

floor: Zaokrouhlí zdrojové pole směrem k zápornému nekonečnu. Příklad: 1.6 -> 1, -1.4 -> -2.

round_inf: Sloučí nebo zkracuje zdrojové pole směrem k nejbližšímu reprezentativnímu hodnotě a zaokrouhlí vazby tak, že zaokrouhlí kladné hodnoty směrem k kladnou nekonečnu a záporné hodnoty do záporného nekonečna. Příklad: 1.4 -> 1, 1.5 -> 2, -1.4 -> -1, -1.5 -> -2.

trunc_zero: Zařadí všechny desetinné číslice napravo od nejkrajnější desetinné číslice podporované v místě určení bez ohledu na znaménko. Například, je-li cílem celé číslo, všechny desetinné číslice se oseknou. Je-li cílem jiné desetinné číslo s menším počtem desetinných míst, zaokrouhlí nebo ořízne na velikost stupnice místa určení. Příklad: 1.6 -> 1, -1.6 -> -1.

Syntaxe

ds.StringToDecimal(string (string), [rtype (string)])

Vrací: řetězec v desítkovém formátu.

Příklady

Pokud mylink.mystring obsahuje řetězec "19982.22", pak následující funkce vrací desítkové číslo 19982.22.

ds.StringToDecimal(mylink.mystring)

Pokud mylink.mystring obsahuje řetězec "19982.2276", pak následující funkce vrací desetinnou hodnotu 19982.23.

ds.StringToDecimal(mylink.mystring,"ceil")

Prvotní StringTo

Vrátí řetězec jako jeho hodnotu prvotního kódu.

Syntaxe

ds.StringToRaw(string (string))

Vrací: odpovídající hodnotu kódu v syrovém kódu řetězce.

Příklady

Pokud mylink.mystring obsahuje řetězec "hello", pak následující funkce vrací hodnotu "{0x68 0x65 0x6C 0x6C 0x6F}".

ds.StringToRaw(mylink.mystring)

Doba StringTo

Vrátí reprezentaci času daného řetězce.

Syntaxe

ds.StringToTime(string (string), [format (string)])

vrací: řetězec v čase hodnota.

Příklady

Pokud mylink.mystring obsahuje řetězec "20:06:58", funkce vrací čas 20:06:58.

ds.StringToTime(mylink.mystring)

Pokud mylink.mystring obsahuje řetězec "20: 6:58", pak funkce vrátí čas 20:06:58.

ds.StringToTime(mylink.mystring,"%(h,s):%(n,s):%(s,s)")

Časové razítko StringTo

Vrátí daný řetězec ve formátu časového razítka.

Syntaxe

ds.StringToTimestamp(string (string), [format (string)])

Vrací: řetězec ve formátu časového razítka.

Příklady

Pokud mylink.mystring obsahuje řetězec "1958-08-08 20:06:58", funkce vrací časové razítko 1958-08-08 20:06:58.

ds.StringToTimestamp(mylink.mystring)

Pokud mylink.mystring obsahuje řetězec "8/ 8/1958 20: 6:58", funkce vrací časové razítko 1958-08-08 20:06:58.

ds.StringToTimestamp(mylink.mystring, "%(d,s)/%(m,s)/%yyyy%(h,s):%(n,s):%(s,s)")

StringToUstring

Vrací ustring z daného řetězce, volitelně s použitím zadané mapy (jinak používá výchozí nastavení projektu).

Syntaxe

ds.StringToUstring(string (string), [mapname (string)])

vrátí: řetězec ve formátu ustring.

Příklady

Pokud mylink.mystring obsahuje řetězec "11052009", pak následující funkce vrací usstroing "11052009".

ds.StringToUstring(mylink.mystring)

Datum TimestampTo

Vrátí datum z daného časového razítka.

Syntaxe

ds.TimestampToDate(timestamp (timestamp))

vrátí: výsledné datum časového razítka.

Příklady

Pokud mylink.mytimestamp obsahuje časový údaj 1958-08-18 20:06:58, následující funkce vrací datum 1958-08-18:

ds.TimestampToDate(mylink.mytimestamp)

TimestampTodesetinný.

Vrátí dané časové razítko jako pakované desetinné číslo. Výchozí řetězec formátu je " %yyyy%mm%dd%hh%nn%ss ". Například časové razítko 2009-08-25 14:03:22 je uloženo jako dekadické číslo 20090825140322. Volitelně však můžete zadat řetězec formátu, který určuje, jak je datum uloženo v desetinném čísle. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například, nemůžete uvést řetězec formátu jako "%yyyy/%mm/%dd%hh: %nn:%ss", protože znak lomítko (/) a znak dvojtečky (:) nelze uložit v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%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 using 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 one to six inclusive).

Literálové číslice 0 až 9 jsou také platné.

Pokud zadaný formát zahrnuje mikrosekundy (například %ss.4), odvodí se pozice desetinného místa v desetinné hodnotě. Pozice desetinné čárky se nemusí shodovat se zadaným počtem desetinných míst desetinného místa (například měřítko = 4).

Syntaxe

ds.TimestampToDecimal(timestamp (timestamp), [format (string)])

Vrací: výsledné časové razítko ve formátu zápisu desetinných míst.

Příklady

Pokud mylink.mytimestamp obsahuje časové razítko 1958-08-18 20:06:58, pak následující funkce vrací desetinnou hodnotu 19580818200658:

ds.TimestampToDecimal(mylink.mytimestamp)

Pokud mylink.mytimestamp obsahuje časové razítko 1958-08-18 20:06:58, vrátí následující funkce desetinnou hodnotu 200658580818:

ds.TimestampToDecimal(mylink.mytimestamp, "%hh%nn%ss%yy%mm%dd")

Řetězec TimestampTo

Vrací dané časové razítko ve formátu řetězce.

Syntaxe

ds.TimestampToString(timestamp (timestamp), [format (string)])

vrátí: výsledné časové razítko ve formátu řetězce.

Příklady

Pokud mylink.mytimestamp obsahuje časový údaj 1958-08-18 20:06:58, funkce vrací řetězec "1958-08-18 20:06:58".

ds.TimestampToString(mylink.mytimestamp)

Pokud mylink.mytimestamp obsahuje časový údaj 1958-08-18 20:06:58, funkce vrátí řetězec "1 8/0 8/1 9 5 8 20:06:58":

ds.TimestampToString(mylink.mytimestamp, "%dd/%mm/%yyyy %hh:%nn:%ss")

Čas TimestampTo

Vrátí dané časové razítko jako formát času.

Syntaxe

ds.TimestampToTime(timestamp (timestamp), [format (string)])

vrátí: výsledné časové razítko ve formátu času.

Příklady

Pokud mylink.mytimestamp obsahuje časové razítko 1958-08-18 20:06:58, funkce vrací čas 20:06:58:

ds.TimestampToTime(mylink.mytimestamp)

Řetězec TimeTo

Vrátí řetězec z daného času.

Syntaxe

ds.TimeToString(timestamp (timestamp), [format (string)])

vrací: výsledek ve formátu času.

Příklady

Pokud mylink.mytime obsahuje čas 20:06:58, pak následující funkce vrací řetězec "20:06:58":

ds.TimeToString(mylink.mytime)

Pokud mylink.mytime obsahuje čas 20:06:58, pak následující funkce vrací řetězec "58:06:20":

ds.TimeToString(mylink.mytime, "%ss:%nn:%hh")

TimeTodesetinný.

Vrátí daný čas jako pakované desetinné číslo. Výchozí řetězec formátu je " %hh%nn%ss ", takže například čas 14:03:22 je uložen jako desítkové číslo 140322. Můžete však volitelně uvést řetězec formátu, který uvádí, jak je čas uložen v desetinném čísle. Formátovací řetězce mohou uvádět pouze formát, který obsahuje čísla. Například nemůžete uvést řetězec formátu jako "%hh: %nn:%ss", protože dvojtečkový znak (:) nemůže být uložen v pakované desetinné hodnotě. Následující tokeny jsou platné pro převody na nebo z desetinných hodnot:

%hh (two-digit hours using 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 one to six inclusive).

Literálové číslice 0 až 9 jsou také platné.

Pokud zadaný formát zahrnuje mikrosekundy (například %ss.4), odvodí se pozice desetinného místa v desetinné hodnotě. Pozice desetinné čárky se nemusí shodovat se zadaným počtem desetinných míst desetinného místa (například měřítko = 4).

Syntaxe

ds.TimeToDecimal(time (time), [format (string)])

Vrací: čas ve formátu zápisu desetinných míst.

Příklady

Pokud mylink.mytime obsahuje čas 20:06:58, pak následující funkce vrací desetinnou hodnotu 200658:

ds.TimeToDecimal(mylink.mytime)

Pokud mylink.mytime obsahuje čas 20:06:58, pak následující funkce vrací desetinnou hodnotu 580620:

ds.TimeToDecimal(mylink.mytime, "%ss%nn%hh")

UniChar

Generuje jednotlivý znak Unicode založený na desetinné hodnotě v rozsahu 0 až 65535.

Syntaxe

ds.UniChar(expression (int32))

vrátí: výsledek formátovacího řetězce.

Příklad

Následující kód vrátí "ő":

ds.UniChar(0x00F5)

UniSeq

Generuje desetinnou hodnotu na základě jediného znaku Unicode.

Syntaxe

ds.UniSeq(expression (string))

vrátí: odpovídající desetinné číslo na znak Unicode ve formátu int32.

Příklad

Následující kód vrátí hodnotu 195:

ds.UniSeq("ä")

Řetězec UstringTo

Vrací řetězec z daného využití, volitelně s použitím určené mapy (jinak používá výchozí mapu projektu).

Syntaxe

ds.UstringToString(string (ustring), [mapname(string)])

vrátí: výsledek ve formátu řetězce.

Příklady

Pokud mylink.myustring obsahuje použití řetězce "11052009", pak následující funkce vrací řetězec "11052009":

ds.UstringToString(mylink.myustring)

Xtd

Převádí hexadecimální řetězec na dekadický formát.

Syntaxe

ds.Xtd(hexadecimal (string))

returns: odpovídající desítková hodnota k hexadecimálnímu řetězci.

Příklad

Následující kód vrátí 48879:

ds.Xtd("beef")

Int

Vrací celočíselnou část výrazu. Všechny zadané aritmetické operace jsou vypočítány pomocí úplné přesnosti systému. Zlomková část hodnoty je osekána, není zaokrouhlena, a zbývající část zbývající části je vrácena.

Syntaxe

ds.Int(expression (dfloat))

Vrací: desítkovou hodnotu zaokrouhlenou a převedenou na typ int64.

Příklad

Následující kód vrátí hodnotu 454:

ds.Int(454.95)

Následující kód vrátí hodnotu 2:

ds.Int(2.35)

Funkce data a času

Tyto funkce používejte pro funkce dat a času ve výrazu.

Funkce, které specifikují data, časy nebo časová razítka v argumentech, používají řetězce se specifickými formáty:

  • Pro datum je formát %yyyy-%mm-%dd
  • Pro daný čas je formát %hh:%nn:%ss. Je-li rozšířen o mikrosekundy, formát je %hh:%nn:%ss.x , kde x udává počet desetinných míst, na které je dán počet sekund.
  • Pro časové razítko je formát s formátem data následovaným formátem času.

Funkce, které mají dny v týdnu v argumentu, obsahují řetězec, který uvádí den v týdnu. Den je určen jako trojpísmenná zkratka, nebo úplný název. Například řetězce "thu" a "thursday" jsou platné.

CurrentDate

Vrátí datum, kdy úloha běží.

Syntaxe

ds.CurrentDate()

vrátí: aktuální datum ve formátu data.

Příklady

Použijte tuto funkci k získání aktuálního data.

ds.CurrentDate()

CurrentTime

Vrátí čas, kdy se úloha spustí.

Syntaxe

ds.CurrentTime()

vrátí: aktuální čas ve formátu času.

Příklady

Použijte tuto funkci k získání aktuálního času.

ds.CurrentTime()

CurrentTimeMS

Vrátí čas, včetně mikrosekund, kdy se úloha spustí.

Syntaxe

ds.CurrentTimeMS()

returns: aktuální čas ve formátu času, včetně mikrosekund.

Příklady

Tuto funkci použijte k načtení aktuálního času do výstupních dat.

ds.CurrentTimeMS()

CurrentTimestamp

Vrací časové razítko, které uvádí datum a čas, kdy úloha běží.

Syntaxe

ds.CurrentTimestamp()

vrátí: aktuální časové razítko ve formátu časového razítka.

Příklady

Tuto funkci použijte k načtení aktuálního časového razítka do výstupních dat.

ds.CurrentTimestamp()

CurrentTimestampMS

Vrátí časové razítko (včetně mikrosekund), které udává datum a čas, kdy úloha běží.

Syntaxe

ds.CurrentTimestampMS()

vrátí: aktuální časové razítko ve formátu časového razítka.

Příklady

Tuto funkci použijte k načtení aktuálního časového razítka do výstupních dat.

ds.CurrentTimestampMS()

Datum

Vrací jedinou číselnou hodnotu dnů, která uplyne mezi datem vnitřního systému a 31. prosincem 1967, což je den 0. Všechna data po jsou kladná čísla představující počet dnů uplynulých od dne 0. Všechna data před tím jsou záporná čísla představující počet dnů před dnem 0.

Syntaxe

ds.Date()

vrátí: výsledné datum ve formátu int.

Příklady

Je-li aktuální datum 15. listopad 1967, následující kód vrátí -46. Je-li aktuální datum 15. února 1968, následující kód vrátí hodnotu 46:

ds.Date()

DateFromDaysSince

Vrátí datum přidáním celého čísla do data úrovně baseline. Celé číslo může být záporné, aby bylo vráceno datum, které je dřívější než datum referenčního stavu.

Syntaxe

ds.DateFromDaysSince(number (int32), [baseline_date_object (string)])

vrátí se: datum přidáním celého čísla do data úrovně baseline, které uživatel zadá.

Příklady

Pokud mylink.myintcol obsahuje celé číslo 18250 a mylink.mydatecol obsahuje datum 1958-08-18, pak jsou tři následující funkce ekvivalentní a vrátí datum 2008-08-05:

ds.DateFromDaysSince(18250,"1958-08-18")
ds.DateFromDaysSince(mylink.myintcol,"1958-08-18")
ds.DateFromDaysSince(mylink.myintcol,mylink.mydatecol)

Pokud mylink.mynegintcol obsahuje celé číslo -1 a mylink.mydatecol obsahuje datum 1958-08-18, pak jsou následující tři funkce ekvivalentní a vrátí datum 1958-08-17:

ds.DateFromDaysSince(-1,"1958-08-18")
ds.DateFromDaysSince(mylink.mynegintcol,"1958-08-18")
ds.DateFromDaysSince(mylink.mynegintcol,mylink.mydatecol)

DateFromDaysSince2

Vrátí datum přidáním celého čísla do data úrovně baseline. Celé číslo může být záporné, aby bylo vráceno datum, které je dřívější než datum referenčního stavu.

Syntaxe

ds.DateFromDaysSince2(number (int32), [baseline_date_object (date)])

vrátí se: datum přidáním celého čísla do data úrovně baseline, které uživatel zadá.

Příklady

Pokud mylink.myint obsahuje celé číslo 18250 a mylink.mydate obsahuje datum 1958-08-18, pak jsou tři následující funkce ekvivalentní a vrátí datum 2008-08-05:

ds.DateFromDaysSince2(18250,"1958-08-18")
ds.DateFromDaysSince2(mylink.myint,"1958-08-18")
ds.DateFromDaysSince2(mylink.myint, mylink.mydate)

Pokud mylink.mynegint obsahuje celé číslo -1 a mylink.mydate obsahuje datum 1958-08-18, pak jsou následující tři funkce ekvivalentní a vrátí datum 1958-08-17:

ds.DateFromDaysSince2(-1,"1958-08-18")
ds.DateFromDaysSince2(mylink.mynegint,"1958-08-18")
ds.DateFromDaysSince2(mylink.mynegint, mylink.mydate)

Komponenty DateFrom

Vrátí datum z daných roků, měsíců a den v měsíci, které jsou uvedeny jako tři samostatné hodnoty.

Syntaxe

ds.DateFromComponents(years (int32), months (int32), dayofmonth (int32))

vrátí: jedno datum se zadanými hodnotami.

Příklady

Pokud mylink.year obsahuje hodnotu 2010, mylink.month obsahuje hodnotu 12 a mylink.dayofmonth obsahuje hodnotu 2, pak jsou dvě následující funkce ekvivalentní a vrátí datum 2010-12-02.

ds.DateFromComponents(2010, 12, 2)
ds.DateFromComponents(mylink.year, mylink.month, mylink.dayofmonth)

DateFromJulianDay

Vrátí datum z daného juliánského čísla.

Syntaxe

ds.DateFromJulianDay(julianday (uint32))

vrátí: datum uvedené juliánské hodnoty.

Příklady

Pokud mylink.myjul obsahuje hodnotu 2454614, pak jsou dvě následující funkce ekvivalentní a vrací datum 2008-05-27.

ds.DateFromJulianDay(2454614)
ds.DateFromJulianDay(mylink.myjul)

DateOffsetByComponents

Vrátí zadané datum s posuny, které jsou použity od posunutí daného roku, posunutí měsíce a posunutí dne v měsíci, zadané jako tři samostatné hodnoty. Hodnoty offsetu mohou být každé kladné, nulové nebo záporné.

Syntaxe

ds.DateOffsetByComponents(basedate (date), year_offset (int32), month_offset (int32), dayofmonth_offset (int32))

returns: Dané datum posunutí data formátování.

Příklady

Pokud mylink.basedate obsahuje hodnoty 2011-08-18 a mylink.yearos obsahuje hodnotu 2, mylink.monthos obsahuje hodnotu 0 a mylink.dayofmonthosol obsahuje hodnotu 0, pak tyto dvě funkce jsou ekvivalentní a vrací datum 2013-08-18.

ds.DateOffsetByComponents("2011-08-18", 2, 0, 0)
ds.DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)

Pokud mylink.basedate v letech 2011-08-18 a mylink.yearos obsahuje hodnotu -2, mylink.monthos obsahuje hodnotu 0 a mylink.dayofmonthosol obsahuje hodnotu 0, pak jsou dvě následující funkce ekvivalentní a vrátí datum 2009-08-18.

ds.DateOffsetByComponents("2011-08-18", -2, 0, 0)
ds.DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)

Den

Vrátí den v měsíci od systémového data.

Syntaxe

ds.Day()

Vrací: den v měsíci ve formátu int.

Příklady

Je-li aktuální datum 1967-12-31, následující kód vrátí hodnotu 31.

ds.Day()

DaysSinceFromDate

Vezme dané datum typu datum a zdrojové datum typu řetězec a vrátí počet dnů ze zdrojového data k danému datu.

Syntaxe

ds.DaysSinceFromDate(given_date (date), source_date_string (string))

vrátí: Rozdíl ve dnech mezi dvěma danými daty typu int32.

Příklady

Pokud mylink.mysourcedate obsahuje datum 1958-08-18 a mylink.mygivendate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí celočíselnou hodnotu 18263.

ds.DaysSinceFromDate(mylink.mygivendate, mylink.mysourcedate)
ds.DaysSinceFromDate("2008-08-18","1958-08-18")

DaysSinceFromDate2

Vezme dané datum typu datum a zdrojové datum typu datum a vrátí počet dnů ze zdrojového data k danému datu.

Syntaxe

ds.DaysSinceFromDate2(given_date (date), source_date_object (date))

vrací: rozdíl ve dnech mezi dvěma danými daty ve formátu int32 .

Příklady

Pokud mylink.mysourcedate obsahuje datum 1958-08-18 a mylink.mygivendate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí celočíselnou hodnotu 18263.

ds.DaysSinceFromDate2(mylink.mygivendate, mylink.mysourcedate)
ds.DaysSinceFromDate2("2008-08-18","1958-08-18")

DaysInMěsíc

Vrátí počet dnů v měsíci v daném základním datu.

Syntaxe

ds.DaysInMonth(basedate (date))

vrací: počet dnů v měsíci ve formátu int32 .

Příklady

Pokud mylink.mysourcedate obsahuje datum 1958-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí celočíselnou hodnotu 31.

ds.DaysInMonth(mylink.mysourcedate)
ds.DaysInMonth("1958-08-18")

DaysIn-rok

Vrátí počet dní v roce v daném základním datu.

Syntaxe

ds.DaysInYear(basedate (date))

Vrací: počet dní v roce ve formátu int32 .

Příklady

Pokud mylink.mysourcedate obsahuje datum 2012-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí celočíselnou hodnotu 366.

ds.DaysInYear(mylink.mysourcedate)
ds.DaysInYear("2012-08-18")

Pokud skript mylink.mysourcedate obsahuje datum 2011-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí celočíselnou hodnotu 365.

ds.DaysInYear(mylink.mysourcedate)
ds.DaysInYear("2011-08-18")

DateOffsetByDays

Vrátí dané posunutí dat o zadaný počet dní. Hodnota offsetu může být kladná, nulová nebo záporná.

Syntaxe

ds.DateOffsetByDays(basedate (date), dayoffset (int32))

Vrací: objekt typu datum s odpovídajícím ofsetem.

Příklady

Pokud mylink.basedate obsahuje hodnotu 2011-08-18 a mylink.dayoffset obsahuje hodnotu 2, pak jsou dvě následující funkce ekvivalentní a vrací datum 2011-08-20.

ds.DateOffsetByDays("2011-08-18", 2)
ds.DateOffsetByDays(mylink.basedate, mylink.dayoffset)

Pokud mylink.basedate obsahuje 2011-08-18 a mylink.dayoffset obsahuje hodnotu -31, pak jsou dvě následující funkce ekvivalentní a vrací datum 2011-07-18.

ds.DateOffsetByDays("2011-08-18", -31)
ds.DateOffsetByDays(mylink.basedate, mylink.dayoffset)

HoursFromČas

Vrátí počet hodin daného času.

Syntaxe

ds.HoursFromTime(time (time))

Vrací: hodnotu hodin ve formátu int8 .

Příklady

Pokud mylink.mytime obsahuje čas 22:30:00, pak následující dvě funkce jsou ekvivalentní a vrátí celočíselnou hodnotu 22.

ds.HoursFromTime(mylink.mytime)
ds.HoursFromTime("22:30:00")

JulianDayFromDate

Vrátí číslo juliánského kalendáře z daného data.

Syntaxe

ds.JulianDayFromDate(time (time))

returns: juliánské číslo ve formátu int32 , zadaného data.

Příklady

Pokud mylink.mydate obsahuje datum 2008-05-27, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 2454614.

ds.JulianDayFromDate("2008-05-27")
ds.JulianDayFromDate(mylink.mydate)

MicroSecondsFromTime

Vrátí část času z mikrosekund.

Syntaxe

ds.MicroSecondsFromTime(time (time))

Vrací: hodnotu mikrosekund času ve formátu int32 .

Příklady

Pokud mylink.mytime obsahuje čas 22:30:00.32, pak následující funkce vrátí hodnotu 320000:

ds.MicroSecondsFromTime(mylink.mytime)

MidnightSecondsFromTime

Vrátí počet sekund od půlnoci do zadané doby.

Syntaxe

ds.MidnightSecondsFromTime(time (time))

vrací: hodnotu sekund od půlnoci do času, ve formátu int8 .

Příklady

Pokud mylink.mytime obsahuje čas 00:30:52, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 1852:

ds.MidnightSecondsFromTime("00:30:52")
ds.MidnightSecondsFromTime(mylink.mytime)

MinutesFromČas

Vrátí část minut času.

Syntaxe

ds.MinutesFromTime(time (time))

Vrací: hodnotu minut času ve formátu int8 .

Příklady

Pokud mylink.mytime obsahuje čas 22:30:52, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 30:

ds.MinutesFromTime("22:30:52")
ds.MinutesFromTime(mylink.mytime)

MonthDayFromDate

Vrátí den v měsíci z daného data.

Syntaxe

ds.MonthDayFromDate(date (date))

vrátí: den v měsíci z daného data ve formátu int8 .

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 18:

ds.MonthDayFromDate("2008-08-18")
ds.MonthDayFromDate(mylink.mydate)

Datum MonthFrom

Vrátí číslo měsíce od daného data.

Syntaxe

ds.MonthFromDate(date (date))

Vrací: číslo měsíce ve formátu int8.

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18, pak obě následující funkce vrací hodnotu 8:

ds.MonthFromDate("2008-08-18")
ds.MonthFromDate(mylink.mydate)

WeekdayFromDatum

Vrátí číslo dne v týdnu od daného data. Může uvádět den, který je považován za první v týdnu, a pokud není zadán, bude standardně neděle.

Syntaxe

ds.WeekdayFromDate(date (date), [origin_day (string)])

vrátí: den v týdnu od daného data ve formátu int8 .

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 1:

ds.WeekdayFromDate("2008-08-18")
ds.WeekdayFromDate(mylink.mydate)

Pokud mylink.mydate obsahuje datum 2008-08-18 a mylink.origin_day obsahuje "satuday", pak jsou následující funkce ekvivalentní a vrátí hodnotu 2:

ds.WeekdayFromDate("2008-08-18", "saturday")
ds.WeekdayFromDate("2008-08-18", "sat")
ds.WeekdayFromDate(mylink.mydate, mylink.origin_day)

NextWeekdayFromDate

Vrátí datum uvedeného dne v týdnu po datu, kdy byl zadán. Den v týdnu je určen jako úplný název, například thursday, nebo třípísmenná zkratka, např. "thu".

Syntaxe

ds.NextWeekdayFromDate(sourcedate (date), day_of_week (string))

vrací: den v měsíci od daného data.

Příklady

Pokud mylink.mysourcedate obsahuje datum 2008-08-18 a den v týdnu, který je uvedený, je čtvrtek, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 2008-08-21:

ds.NextWeekdayFromDate("2008-08-18", "thursday")
ds.NextWeekdayFromDate(mylink.mysourcedate, "thu")

NthWeekdayFromDate

Vrátí datum uvedeného dne v týdnu od zadaného počtu týdnů od data zdroje. Den v týdnu je určen jako úplný název, například thursday, nebo třípísmenná zkratka, např. thu. Hodnoty offsetu mohou být kladné, záporné nebo nulové.

Syntaxe

ds.NthWeekdayFromDate(basedate (date), day_of_week (string), week_offset (int32))

vrátí: datum zadaného pracovního dne podle týdnů od zadaného data.

Příklady

Pokud mylink.mydate obsahuje datum 2009-08-18 a čtvrtek je zadán s posunem 1, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 2009-08-20. Je vrácen první výskyt čtvrtek. V příkladu pokračování se tento čtvrtek vyskytuje ve stejném týdnu jako datum 2009-08-18. Datum 2009-08-18 je úterý.

ds.NthWeekdayFromDate("2009-08-18", "thursday", 1)
ds.NthWeekdayFromDate(mylink.mydate, "thu", 1)

Pokud mylink.mydate obsahuje datum 2009-08-18 a čtvrtek je uvedeno s posunem -2, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 2009-08-06. Je vrácen výskyt čtvrtka, který má dva čtvrtky za uplynulý čas.

ds.NthWeekdayFromDate("2009-08-18", "thursday", -2)
ds.NthWeekdayFromDate(mylink.mydate, "thu", -2)

PreviousWeekdayFromDate

Vrátí datum uvedeného dne v týdnu, který je posledním dnem před datem zdroje. Den v týdnu je určen jako úplný název, například thursday, nebo třípísmenná zkratka, např. "thu".

Syntaxe

ds.PreviousWeekdayFromDate(sourcedate (date), day_of_week (string))

vrátí: datum posledního dne v týdnu od zadaného data.

Příklady

Pokud mylink.mysourcedate obsahuje datum 2008-08-18 a je zadán čtvrtek, pak jsou dvě následující funkce ekvivalentní a vrací hodnotu 2008-08-14:

ds.PreviousWeekdayFromDate("2008-08-18", "thursday")
ds.PreviousWeekdayFromDate(mylink.mysourcedate, "thu")

SecondsFromČas

Vrátí část sekund (sekundy).

Syntaxe

ds.SecondsFromTime(time (time))

Vrací: hodnotu sekund času ve formátu dfloat.

Příklady

Pokud mylink.mytime obsahuje čas 22:30:52, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 52:

ds.SecondsFromTime("22:30:52")
ds.SecondsFromTime(mylink.mytime)

SecondsSinceFromTimestamp

Vrátí počet sekund mezi dvěma objekty časového razítka.

Syntaxe

ds.SecondsSinceFromTimestamp(timestamp (timestamp), timestamp_base_string (string))

Vrací: hodnotu sekund ve formátu dfloat.

Příklady

Pokud mylink.mytimestamp obsahuje časové razítko 2008-08-18 22:30:52 a mylink.mytimestamp_base obsahuje časové razítko 2008-08-19 22:30:52, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu -86400:

ds.SecondsSinceFromTimestamp("2008-08-18 22:30:52","2008-08-19 22:30:52")
ds.SecondsSinceFromTimestamp(mylink.mytimestamp, mylink.mytimestamp_base)

SecondsSinceFromTimestamp2

Vrátí počet sekund mezi dvěma objekty časového razítka.

Syntaxe

ds.SecondsSinceFromTimestamp2(time stamp (timestamp), timestamp_base_object (timestamp))

Vrací: hodnotu sekund ve formátu dfloat.

Příklady

Pokud mylink.mytimestamp obsahuje časové razítko 2008-08-18 22:30:52 a mylink.mytimestamp_base obsahuje časové razítko 2008-08-19 22:30:52, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu -86400:

ds.SecondsSinceFromTimestamp2("2008-08-18 22:30:52","2008-08-19 22:30:52")
ds.SecondsSinceFromTimestamp2(mylink.mytimestamp, mylink.mytimestamp_base)

Čas

Vrátí řetězcovou hodnotu vyjadřující vnitřní čas dne. Interní čas je počet sekund, které uplynuly od půlnoci do nejbližšího tisíciny sekundy (místního času).

Syntaxe

ds.Time()

vrátí: výsledný čas formátovacího řetězce.

Příklady

Je-li aktuální čas 11:17:43:19, následující kód vrátí hodnotu 40663.842:

ds.Time()

TimeDate

Vrací systémový čas a datum jako formátovaný řetězec.

Syntaxe

ds.TimeDate()

vrátí: systémový čas a datum ve formátu řetězce.

Komponenty TimeFrom

Vrací čas typu datum z daných hodin, minut, sekund a mikrosekund jako int32.

Syntaxe

ds.TimeFromComponents(hours (int32), minutes (int32), seconds (int32), microseconds (int32))

vrací: čas v typu datum.

Příklady

Pokud mylink.hourcol obsahuje hodnotu 10, mylink.mincol obsahuje hodnotu 12, mylink.seccol obsahuje hodnotu 2 a mylink.mseccol obsahuje hodnotu 0, pak jsou dvě následující funkce ekvivalentní a vrací čas 10:12:02:

ds.TimeFromComponents(10, 12, 2, 0)
ds.TimeFromComponents(mylink.hourcol, mylink.mincol, mylink.seccol, mylink.mseccol)

TimeFromMidnightSeconds

Vrátí systémový čas ve formátu času.

Syntaxe

ds.TimeFromMidnightSeconds(seconds (time))

Vrací: sekundy od půlnoci ve formátu času.

Příklady

Pokud mylink.mymidnightseconds obsahuje hodnotu 240, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 00:04:00:

ds.TimeFromMidnightSeconds(240)
ds.TimeFromMidnightSeconds(mylink.mymidnightseconds)

TimeOffsetByComponents

Vrací čas s posuny, které jsou použity od základního času s posunutím hodin, posunem minut a druhým posunutím, přičemž každá z nich je uvedena jako samostatné hodnoty. Offset sekund může zahrnovat částečné sekundy.

Syntaxe

ds.TimeOffsetByComponents(basetime (time), hour_offset (int32), minute_offset (int32), second_offset (dfloat))

Vrací: časový posun o zadané hodnoty.

Příklady

Pokud mylink.basetime obsahuje 14:05:29 a mylink.houros obsahuje hodnotu 2, mylink.minos obsahuje hodnotu 0, mylink.secos obsahuje hodnotu 20, pak dvě následující funkce jsou ekvivalentní a vracejí čas 16:05:49.

ds.TimeOffsetByComponents("14:05:29", 2, 0, 20)
ds.TimeOffsetByComponents(mylink.basetime, mylink.houros, mylink.minos, mylink.secos)

TimeOffsetBySeconds

Vrátí zadaný čas s posuny použité od základního času s posunutím sekund. Offset sekund může zahrnovat částečné sekundy.

Syntaxe

ds.TimeOffsetBySeconds(basetime (time), second_offset (dfloat))

vrátí: čas s posunutím sekund podle zadané hodnoty.

Příklady

Pokud mylink.basetime obsahuje hodnotu 14:05:29.30 a mylink.secos obsahuje hodnotu 2.5, pak jsou dvě následující funkce ekvivalentní a vrací čas 14:05:31.

ds.TimeOffsetBySeconds("14:05:29.30", 2.5)
ds.TimeOffsetBySeconds(mylink.basetime, mylink.secos)

TimestampFromDateTime

Vrátí časové razítko z daného data a času.

Syntaxe

ds.TimestampFromDateTime(date (date), time (time))

Vrací: časové razítko daného data a času.

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18 a mylink.mytime obsahuje čas 22:30:52, pak jsou dvě následující funkce ekvivalentní a vracejí časové razítko 2008-08-18 22:30:52:

ds.TimestampFromDateTime("2008-08-18","22:30:52")
ds.TimestampFromDateTime(mylink.mydate, mylink.mytime)

TimestampFromSecondsSince

Vrací časové razítko, které je odvozeno od počtu sekund od základního objektu časového razítka.

Syntaxe

ds.TimestampFromSecondsSince(seconds (dfloat), [base_timestamp_object (string)])

Vrací: časové razítko odvozeno z dané hodnoty sekund.

Příklady

Pokud mylink.myseconds obsahuje hodnotu 2563 a mylink.timestamp_base obsahuje časové razítko 2008-08-18 22:30:52, pak jsou dvě následující funkce ekvivalentní a vracejí časové razítko 2008-08-18 23:13:35:

ds.TimestampFromSecondsSince(2563,"2008-08-18 22:30:52")
ds.TimestampFromSecondsSince(mylink.myseconds,mylink.timestamp_base)

TimestampFromSecondsSince2

Vrací časové razítko, které je odvozeno od počtu sekund od základního objektu časového razítka.

Syntaxe

ds.TimestampFromSecondsSince2(seconds (dfloat), [base_timestamp_object (timestamp)])

Vrací: časové razítko odvozeno z dané hodnoty sekund.

Příklady

Pokud mylink.myseconds obsahuje hodnotu 2563 a mylink.timestamp_base obsahuje časové razítko 2008-08-18 22:30:52, pak jsou dvě následující funkce ekvivalentní a vracejí časové razítko 2008-08-18 23:13:35:

ds.TimestampFromSecondsSince2(2563,"2008-08-18 22:30:52")
ds.TimestampFromSecondsSince2(mylink.myseconds, mylink.timestamp_base)

TimestampFromTimeet

Vrátí časové razítko z dané hodnoty řetězce systému UNIX time_t .

Syntaxe

ds.TimestampFromTimet(timet_string (int32))

Vrací: časové razítko odvozeno z dané hodnoty sekund.

Příklady

Pokud mylink.mytimet obsahuje hodnotu 1234567890, pak jsou dvě následující funkce ekvivalentní a vracejí časové razítko 2009-02-13 23:31:30:

ds.TimestampFromTimet(1234567890)
ds.TimestampFromTimet(mylink.mytimet)

TimestampFromTime2

Vrací časové razítko z daných objektů času a označení času. Hodnota v časovém objektu přepíše hodnotu času v objektu časového razítka, takže se z časového razítka použije pouze část data.

Syntaxe

ds.TimestampFromTime2(time (time), timestamp (timestamp))

vrací: časové razítko z daných objektů času a označení času.

Příklady

Pokud mylink.mytime obsahuje čas 12:03:22 a mylink.mytimestamp obsahuje časové razítko 2008-08-18 22:30:52, pak jsou dvě následující funkce ekvivalentní a vracejí časové razítko 2008-08-18 12:03:22:

ds.TimestampFromTime2("12:03:22", "2008-08-18 22:30:52")
ds.TimestampFromTime2(mylink.mytime, mylink.mytimestamp)

TimestampOffsetByComponents

Vrátí časové razítko s posuny použité od základního časového razítka s posunutím roku, posunem měsíce, posunem dne, posunutím hodin, posunutím minut a druhým offsetem, přičemž každý z nich bude uveden jako samostatné hodnoty. Offset sekund může zahrnovat mikrosekundy.

Syntaxe

ds.TimestampOffsetByComponents(basetimestamp (timestamp), year_offset (int32), month_offset (int32), dayofmonth_offset (int32), hour_offset (int32), minute_offset (int32), second_offset (dfloat))

vrací: posun časového razítka podle zadaných hodnot.

Příklady

Pokud mylink.basetimestamp obsahuje 2009-08-18 14:05:29 a mylink.yearos obsahuje 0, mylink.monthos obsahuje hodnotu 2, mylink.dayos obsahuje hodnotu -4, mylink.houros obsahuje hodnotu 2, mylink.minos obsahuje hodnotu 0, mylink.secos obsahuje hodnotu 20, pak dvě následující funkce jsou ekvivalentní a vrátí časový údaj 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

Vrátí časové razítko s posuny použité od základního časového razítka s posunutím sekund. Offset sekund může zahrnovat mikrosekundy.

Syntaxe

ds.TimestampOffsetBySeconds(basetimestamp (timestamp), second_offset (dfloat))

vrací: posun časového razítka podle zadaných hodnot ve formátu časového razítka.

Příklady

Pokud mylink.basetimestamp obsahuje hodnotu 2009-08-18 14:05:29 a mylink.secos obsahuje hodnotu 32760, pak jsou dvě následující funkce ekvivalentní a vracejí časové razítko 2009-08-18 23:11:29:

ds.TimestampOffsetBySeconds("2009-08-18 14:05:29", 32760)
ds.TimestampOffsetBySeconds(mylink.basetimestamp, mylink.secos)

Časové razítko TimetFrom

Vrací hodnotu UNIX time_t z daného časového razítka.

Syntaxe

ds.TimetFromTimestamp(timestamp (timestamp))

vrací: v systému UNIX time_t podle časového označení ve formátu int32 .

Příklady

Pokud mylink.mytimestamp obsahuje hodnotu 2009-02-13 23:31:30, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 1234567890:

ds.TimetFromTimestamp("2009-02-13 23:31:30")
ds.TimetFromTimestamp(mylink.mytimestamp)

YeardayFromDatum

Vrátí číslo dne v roce z daného data.

Syntaxe

ds.YeardayFromDate(date (date))

Vrací: číslo dne ve formátu int16 .

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní, a vrátí hodnotu 231:

ds.YeardayFromDate("2008-08-18")
ds.YeardayFromDate(mylink.mydate)

YearFromDatum

Vrátí rok od daného data.

Syntaxe

ds.YearFromDate(date (date))

Vrací: číslo roku ve formátu int16 .

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 2008:

ds.YearFromDate("2008-08-18")
ds.YearFromDate(mylink.mydate)

YearweekFromDatum

Vrátí číslo týdne v roce od daného data.

Syntaxe

ds.YearweekFromDate(date (date))

Vrací: číslo týdne ve formátu int16 .

Příklady

Pokud mylink.mydate obsahuje datum 2008-08-18, pak jsou dvě následující funkce ekvivalentní a vrátí hodnotu 33:

ds.YearweekFromDate("2008-08-18")
ds.YearweekFromDate(mylink.mydate)

Měsíc

Vrátí aktuální měsíc.

Syntaxe

ds.Month()

Vrací: aktuální měsíc.

Příklady

Následující kód vrací aktuální měsíc ve formátu int.

ds.Month()

Rok

Vrátí aktuální rok.

Syntaxe

ds.Year()

returns: the current year in int format.

Příklady

Následující kód vrací aktuální rok.

ds.Year()

Logické funkce

Logické funkce provádějí bitové operace.

BitAnd

Vrací bitové AND z těchto dvou celočíselných argumentů.

Syntaxe

ds.BitAnd(number1 (uint64), number2 (uint64))

Vrací: Bitový operátor AND ve formátu uint64 .

Příklady

Pokud mylink.mynumber1 obsahuje číslo 352 a mylink.mynumber2 obsahuje číslo 400, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 256:

ds.BitAnd(352,400)
ds.BitAnd(mylink.mynumber1, mylink.mynumber2)

BitCompress

Vrací celé číslo z argumentu string, který obsahuje binární reprezentaci "1"s a" 0"s.

Syntaxe

ds.BitCompress(string (string))

Vrací: výsledné číslo reprezentované binárními soubory ve formátu uint64.

Příklady

Pokud mylink.mynumber1 obsahuje řetězec "0101100000", pak následující dvě funkce vrátí číslo 352.

ds.BitCompress("0101100000")
ds.BitCompress(mylink.mynumber)

BitExpand

Vrací řetězec obsahující binární reprezentaci v "1"s a" 0"s daným celým číslem.

Syntaxe

ds.BitExpand(number (uint64))

returns: řetězec obsahující binární reprezentaci celého čísla.

Příklady

Pokud mylink.mynumber1 obsahuje číslo 352, pak jsou následující dvě funkce ekvivalentní a vrátí řetězec "101100000".

ds.BitExpand(352)
ds.BitExpand(mylink.mynumber)

BitOr

Vrací bitové OR z těchto dvou celočíselných argumentů.

Syntaxe

ds.BitOr(number1 (uint64), number2 (uint64))

returns: bitwise OR of the two integer arguments.

Příklady

Pokud mylink.mynumber1 obsahuje číslo 352 a mylink.mynumber2 obsahuje číslo 400, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 496:

ds.BitOr(352,400)
ds.BitOr(mylink.mynumber1, mylink.mynumber2)

BitXOr

Vrací bitové Exclusive OR z těchto dvou celočíselných argumentů.

Syntaxe

ds.BitXOr(number1 (uint64), number2 (uint64))

Vrací: Exclusive OR ve formátu uint64 .

Příklady

Pokud mylink.mynumber1 obsahuje číslo 352 a mylink.mynumber2 obsahuje číslo 400, pak jsou následující dvě funkce ekvivalentní a vrací hodnotu 240:

ds.BitXOr(352,400)
ds.BitXOr(mylink.mynumber1, mylink.mynumber2)

Ne

Vrátí komplement logické hodnoty výrazu. Je-li hodnota výrazu true, funkce Not vrátí hodnotu false (0). Je-li hodnota výrazu false, funkce NOT vrátí hodnotu true (1). Numerický výraz, který se vyhodnotí na hodnotu 0, je logická hodnota false. Numerický výraz, který se vyhodnocuje na vše ostatní, kromě hodnoty null, je logickou hodnotou true. Prázdný řetězec je logicky nepravdivý. Všechny ostatní řetězcové výrazy včetně řetězců, které obsahují prázdný řetězec, mezery, nebo číslo 0 a mezery, jsou logicky pravdivé.

Syntaxe

ds.Not()

Vrací: hodnotu complement ve formátu int8 .

Příklady

Pokud mylink.myexpression obsahuje výraz 5-5, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 1:

ds.Not(5-5)
ds.Not(mylink.myexpression)

Pokud mylink.myexpression obsahuje výraz 5 + 5, pak jsou následující dvě funkce ekvivalentní a vrací hodnotu 0:

ds.Not(5+5)
ds.Not(mylink.myexpression)

SetBit

Vrací celé číslo se specifickými bity nastavenými do specifického stavu, kde origfield je vstupní hodnota pro provedení akce, bitlist je řetězec obsahující seznam čísel bitů oddělených čárkou pro nastavení stavu a bitstate je buď 1, nebo 0, což označuje, jaký stav mají být nastaveny na bity.

Syntaxe

ds.SetBit(origfield (uint64), bitlist (string), bitstate (uint8))

returns: číslo s bity nastaveným na zadaný stav ve formátu uint64 .

Příklady

Pokud mylink.origfield obsahuje číslo 352, mylink.bitlist obsahuje seznam "2,4,8" a mylink.bitstate obsahuje hodnotu 1, pak jsou následující dvě funkce ekvivalentní a vrací hodnotu 494:

ds.SetBit(356,"2,4,8",1)
ds.SetBit(mylink.origfield, mylink.bitlist, mylink.bitstate)

Pravda

Vrátí logickou hodnotu 1.

Syntaxe

ds.True()

vrátí: celé číslo 1.

Příklady

Následující kód vrátí hodnotu 1:

ds.True()

Nepravda

Vrátí hodnotu false 0.

Syntaxe

ds.False()

vrací: celé číslo 0.

Příklady

Následující kód vrátí hodnotu 0:

ds.False()

Mathmatické funkce

Matematické funkce provádí matematické operace.

ABS

Vrací absolutní hodnotu libovolného číselného výrazu. Absolutní hodnota výrazu je jeho velikost bez znaménka.

Syntaxe

ds.Abs(numeric_expression (int32))

returns: absolutní hodnota číselného výrazu ve formátu dfloat.

Příklady

Pokud mylink.number1 obsahuje číslo 12 a mylink.number2 obsahuje číslo 34, pak jsou následující dvě funkce ekvivalentní a vrátí číslo 22:

ds.Abs(12-34)
ds.Abs(mylink.mynumber1-mylink.mynumber2)

Pokud mylink.number1 obsahuje číslo 34 a mylink.number2 obsahuje číslo 12, pak jsou následující dvě funkce ekvivalentní a vrátí číslo 22:

ds.Abs(34-12)
ds.Abs(mylink.mynumber1-mylink.mynumber2)

ARCCOS

Vypočte trigonometrický arkuskosinus výrazu. Výraz musí být číselná hodnota. Výsledek je vyjádřen v radiánech.

Syntaxe

ds.Acos(numeric_expression (dfloat))

returns: the resulting radian in dfloat format.

Příklady

Pokud mylink.number obsahuje číslo 0.707106781, jsou následující dvě funkce ekvivalentní a vrátí hodnotu 0.7854:

ds.Acos(0.707106781)
ds.Acos(mylink.mynumber)

ARCCOS

Navrátí trigonometrický arkuskosinus výrazu. Vstupem musí být číselná hodnota. Výsledek je vyjádřen ve stupních.

Syntaxe

ds.ACOS(expression (float64))

returns: úhel ve stupních, ve formátu float64 .

Příklady

Následující kód vrací hodnotu 45:

ds.ACOS(0.707106781)

ARCSIN

Vypočte trigonometrický arkussinus výrazu. Výraz musí být číselná hodnota. Výsledek je vyjádřen v radiánech.

Syntaxe

ds.Asin(numeric_expression (dfloat))

returns: the radian result in dfloat format.

Příklady

Pokud mylink.number obsahuje číslo 0.707106781, jsou následující dvě funkce ekvivalentní a vrátí hodnotu 0.7854:

ds.Asin(0.707106781)
ds.Asin(mylink.mynumber)

ARCSIN

Navrátí trigonometrický sinus výrazu. Vstup je úhel vyjádřený ve stupních.

Syntaxe

ds.ASIN(expression(float64))

returns: úhel ve stupních, ve formátu float64 .

Příklady

Následující kód vrací hodnotu 45:

ds.ASIN(0.707106781)

ARCTG

Vypočte trigonometrický oblouk-tangens výrazu. Výraz musí být číselná hodnota. Výsledek je vyjádřen v radiánech.

Syntaxe

ds.Atan(numeric_expression (dfloat))

returns: the radian result in dfloat format.

Příklady

Pokud mylink.number obsahuje číslo 135, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 1.5634, což je úhel, který má arkustangens 135:

ds.Atan(135)
ds.Atan(mylink.mynumber)

ARCTG

Navrátí trigonometrický oblouk-dotýkající se výrazu. Vstupem musí být číselná hodnota. Výsledek je vyjádřen ve stupních.

Syntaxe

ds.ATAN(expression(float64))

returns: úhel ve stupních, ve formátu dfloat.

Příklady

Následující kód vrací hodnotu 45:

ds.ATAN(1)

Atan2

Vypočte trigonometrický oblouk arkustangens dvou vstupů za použití signálů dvou vstupů k určení kvadrantu výsledku. Vstupy musí být číselné hodnoty. Výsledek je vyjádřen v radiánech.

Syntaxe

ds.Atan2(numeric_expression (dfloat, dfloat))

returns: the radian result in dfloat format.

Příklady

Pokud mylink.number1 obsahuje číslo 10.0 a mylink.number2 obsahuje číslo -10.0, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 2.3562:

ds.Atan2(10.0, -10.0)
ds.Atan2(mylink.mynumber1, mylink.mynumber2)

Ceil

Vypočítá nejmenší celočíselnou hodnotu větší než nebo rovnou zadané desetinné hodnotě.

Syntaxe

ds.Ceil(number (dfloat))

vrátí: nejmenší celočíselnou hodnotu v souboru int32.

Příklady

Pokud mylink.number obsahuje číslo 2355.66, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 2356:

ds.Ceil(2355.66)
ds.Ceil(mylink.mynumber)

COS

Vypočte trigonometrický kosinus výrazu. Výraz musí být číselná hodnota. Výraz musí produkovat číselnou hodnotu, která je úhel v radiánech.

Syntaxe

ds.Cos(radians (dfloat))

returns: the angle in radians, of dfloat format.

Příklady

Pokud mylink.number obsahuje číslo 0.785398, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 0.7071:

ds.Cos(0.785398)
ds.Cos(mylink.mynumber)

sada COS

Navrátí trigonometrický kosinus úhlu. Výraz je úhel vyjádřený jako číselná hodnota ve stupních.

Syntaxe

ds.COS(expression(float64))

returns: úhel ve stupních, ve formátu float64 .

Příklady

Následující kód vrací hodnotu 0.7071:

ds.COS(45)

COSH

Vypočte hodnotu hyperbolického kosinu výrazu. Výraz musí být číselná hodnota.

Syntaxe

ds.Cosh(number (dfloat))

returns: výsledný kosinus ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 2, jsou následující dvě funkce ekvivalentní a vrátí hodnotu 3.7622:

ds.Cosh(2)
ds.Cosh(mylink.mynumber)

Div

Vypočte hodnotu hyperbolického kosinu výrazu. Výraz musí být číselná hodnota.

Syntaxe

ds.Div(dividend (dfloat), divisor (dfloat))

returns: výsledný kosinus ve formátu dfloat.

Příklady

Pokud mylink.dividend obsahuje číslo 100 a mylink.divisor obsahuje číslo 25, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 4:

ds.Div(100,25)
ds.Div(mylink.dividend, mylink.divisor)

EXP

Vypočítá výsledek základu e umocn na mocnu určenou hodnotou výrazu. Hodnota e je přibližně 2.71828. Výraz se musí vyhodnotit na číselnou hodnotu.

Syntaxe

ds.Exp(number (dfloat))

Vrací: výslednou hodnotu e umocenou na určenou hodnotu ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 5, jsou následující dvě funkce ekvivalentní a vrátí hodnotu 54.5982:

ds.Exp(5-1)
ds.Exp(mylink.number-1)

Fabs

Vypočítá absolutní hodnotu dané hodnoty typu float.

Syntaxe

ds.Fabs(number (dfloat))

Vrací: absolutní hodnotu čísla typu float.

Příklady

Pokud mylink.number obsahuje číslo -26.53, pak následující dvě funkce jsou ekvivalentní a vrací hodnotu 26.53:

ds.Fabs(-26.53)
ds.Fabs(mylink.number)

ZAOKR.DOLŮ

Vypočítá největší celočíselnou hodnotu menší nebo rovnou zadané dekadické hodnotě.

Syntaxe

ds.Floor(number (dfloat))

vrací: největší celé číslo menší než nebo rovno desetinné hodnotě ve formátu int32 .

Příklady

Pokud mylink.number obsahuje číslo 203.25, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 203:

ds.Floor(203.25)
ds.Floor(mylink.number)

Ldexp

Vrací hodnotu dfloat od násobení mantisy o 2 umocněná na mocninu exponentu.

Syntaxe

ds.Ldexp(mantissa (dfloat), exponent (int32))

returns: the resulting mantissa in dfloat format.

Příklady

Pokud mylink.mantissa obsahuje číslo 2 a mylink.exponent obsahuje číslo 3, pak následující dvě funkce jsou ekvivalentní a vrací hodnotu 16:

ds.Ldexp(2,3)
ds.Ldexp(mylink.mantissa, mylink.exponent)

Ploštiny

Vypočítá absolutní hodnotu dané celočíselné hodnoty.

Syntaxe

ds.Llabs(number (integer))

returns: absolutní hodnota daného celého čísla jako celé číslo bez znaménka.

Příklady

Pokud mylink.number obsahuje číslo -26, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 26.

ds.Llabs(-26)
ds.Llabs(mylink.number)

LN

Vypočte přirozený logaritmus výrazu v základu e. Hodnota e je přibližně 2.71828. Výraz se musí vyhodnotit na číselnou hodnotu větší než 0.

Syntaxe

ds.Ln(number (dfloat))

vrátí: výsledný logaritmus výrazu založeného na e .

Příklady

Pokud mylink.number obsahuje číslo 6, pak následující dvě funkce jsou ekvivalentní a vrací hodnotu 1.7918:

ds.Ln(6)
ds.Ln(mylink.number)

Log10

Vrátí logaritmus dané hodnoty v základu 10.

Syntaxe

ds.Log10(number (dfloat))

vrátí: výsledný logaritmus o základu 10 ve formátu dfloat.

Příklady

Obsahuje-li mylink.number číslo 6, jsou následující dvě funkce ekvivalentní a vrací hodnotu 1.7782:

ds.Log10(6)
ds.Log10(mylink.number)

Maximální

Vrátí větší ze dvou hodnot argumentu.

Syntaxe

ds.Max(number1 (int32), number2(int32))

vrátí: větší ze dvou celých čísel ve formátu int32 .

Příklady

Pokud mylink.number1 obsahuje číslo 6 a mylink.number1 obsahuje číslo 101, pak následující dvě funkce jsou ekvivalentní a vrací hodnotu 101:

ds.Max(6,101)
ds.Max(mylink.number1, mylink.number2)

Min.

Vrátí dolní ze dvou hodnot argumentu.

Syntaxe

ds.Min(number1 (int32), number2(int32))

vrátí: menší ze dvou celých čísel.

Příklady

Pokud mylink.number1 obsahuje číslo 6 a mylink.number1 obsahuje číslo 101, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 6:

ds.Min(6,101)
ds.Min(mylink.number1, mylink.number2)

MOD

Vypočte modulo (zbytek) dvou výrazů (dividendy, dělitel).

Syntaxe

ds.Mod(dividend (int32), divisor (int32))

vrací: výsledný modulo ve formátu int32 .

Příklady

Pokud mylink.dividend obsahuje číslo 115 a mylink.divisor obsahuje číslo 25, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 15:

ds.Mod(115,25)
ds.Mod(mylink.dividend, mylink.divisor)

Neg

Neguje číslo.

Syntaxe

ds.Neg(number (dfloat))

vrátí: výsledné negované číslo ve formátu dfloat.

Příklady

Obsahuje-li mylink.number číslo 123, jsou následující dvě funkce ekvivalentní a vrátí hodnotu -123:

ds.Neg(123)
ds.Neg(mylink.number)

Pwstar.

Vypočítá hodnotu výrazu při jeho umocní na zadanou mocnnost (výraz, napájení).

Syntaxe

ds.Pwr(expression (dfloat), power (dfloat))

vrátí: výsledné číslo umocené na zadanou hodnotu ve formátu dfloat.

Příklady

Obsahuje-li mylink.expression číslo 2 a proměnná mylink.power obsahuje číslo 3, jsou následující dvě funkce ekvivalentní a vrací hodnotu 8:

ds.Pwr(2,3)
ds.Pwr(mylink.expression, mylink.power)

NÁHČÍSLO

Vrací pseudorandom integer mezi 0 a 232-1.

Syntaxe

ds.Rand()

vrátí: výsledné náhodné celé číslo ve formátu uint32 .

Příklady

Použijte tuto funkci ke generování pseudorandm číslo:

ds.Rand()

Náhodně

Vrací pseudorandom integer mezi 0 a 232-1.

Syntaxe

ds.Random()

vrátí: výsledné náhodné celé číslo ve formátu uint32 .

Příklady

Použijte tuto funkci ke generování náhodného čísla:

ds.Random()

Rnd

Generuje jakékoli kladné nebo záporné náhodné celé číslo nebo 0. Vezme celkový počet celých čísel jako vstup, včetně 0, ze kterého lze vybrat náhodné číslo. To znamená, že pokud n je hodnota výrazu_typu_číslo, je náhodné číslo generováno z čísel 0 až (n-1).

Syntaxe

ds.Rnd(numeric_expression (int))

returns: náhodné číslo od 0 do (numeric_expression - 1) ve formátu int.

Příklady

Následující kód vrátí náhodné číslo z intervalu 0-19.

ds.Rnd(20)

SIN

Vypočte trigonometrický sine výrazu. Výraz musí být číselná hodnota. Výraz musí produkovat číselnou hodnotu, která je úhel v radiánech.

Syntaxe

ds.Sin(radians (dfloat))

vrátí: výsledný úhel ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 0.785398, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 0.7071:

ds.Sin(0.785398)
ds.Sin(mylink.mynumber)

SIN

Navrátí trigonometrický sinus výrazu. Vstup je úhel vyjádřený ve stupních.

Syntaxe

ds.SIN(expression(float64))

returns: úhel ve stupních, ve formátu dfloat.

Příklady

Následující kód vrací hodnotu 0.7071:

ds.SIN(45)

SINH

Vypočte hyperbolický arkussinus výrazu. Výraz musí být číselná hodnota.

Syntaxe

ds.Sinh(number (dfloat))

Vrací: výsledný sinus ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 2, jsou následující dvě funkce ekvivalentní a vrátí hodnotu 3.6269:

ds.Sinh(2)
ds.Sinh(mylink.mynumber)

ODMOCNINA

Vypočte druhou odmocninu čísla.

Syntaxe

ds.Sqrt(number (dfloat))

returns: výsledná druhá odmocnina z čísla ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 450, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 21.2132:

ds.Sqrt(450)
ds.Sqrt(mylink.mynumber)

Šedobéžová

Vypočte trigonometrický arkustangens výrazu. Výraz musí produkovat číselnou hodnotu, která je úhel v radiánech.

Syntaxe

ds.Tan(radians (dfloat))

vrátí: výsledný tangens ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 0.7853981, pak následující dvě funkce jsou ekvivalentní a vrátí hodnotu 1:

ds.Tan(0.7853981)
ds.Tan(mylink.mynumber)

TGTG

Vrátí funkci TAN, která vrátí trigonometrický arkustangens vstupu. Vstup představuje úhel vyjádřený ve stupních.

Syntaxe

ds.TAN(expression(float64))

returns: úhel ve stupních, ve formátu float64 .

Příklady

Následující kód vrací hodnotu 1:

ds.TAN(45)

ARCTG

Navrátí trigonometrický oblouk-dotýkající se výrazu. Vstupem musí být číselná hodnota. Výsledek je vyjádřen ve stupních.

Syntaxe

ds.ATAN(expression(float64))

returns: úhel ve stupních, ve formátu float64 .

Příklady

Následující kód vrací hodnotu 45:

ds.ATAN(1)

TGH

Vypočte hyperbolický tangens výrazu. Výraz musí být číselná hodnota.

Syntaxe

ds.Tanh(number (dfloat))

vrátí: výsledný tangens ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 2, jsou následující dvě funkce ekvivalentní a vrací hodnotu 0.964028:

ds.Tanh(2)
ds.Tanh(mylink.mynumber)

Číselné funkce

Použijte číselné funkce k extrakci mantisy z desetinné nebo plovoucí desetinné čárky. Kategorie Číslo v editoru výrazů také obsahuje funkce přetypování typu, které můžete použít k přetypování čísel ve formě dvojitého, plovoucího nebo celočíselného datového typu.

Funkce transformátoru AsDouble(), AsFloat()a AsInteger() se chovají odlišně než jiné funkce převodů dat transformátoru, když se používají v derivacích, kde výsledek je řetězec. Důvodem je to, že kompilátor transformátoru nekonvertuje výsledek funkce pro tyto funkce na řetězec.

AsDouble

Zacházet s daným číslem jako s dvojitým.

Syntaxe

ds.AsDouble(number (int, float etc.))

vrátí: číslo ve dvojitém formátu.

Příklady

V následujícím výrazu vstupní mynumber obsahuje celé číslo, ale výstupem funkce je hodnota typu double. Pokud mylink.mynumber obsahuje hodnotu 56, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 12.963:

ds.AsDouble(56/4.32)
ds.AsDouble(mylink.mynumber/4.32)

AsFloat

Zacházet s daným číslem jako s plovoucí desetinnou čárkou.

Syntaxe

ds.AsFloat(number (int, double etc.))

vrátí: číslo ve formátu float.

Příklady

V následujícím výrazu obsahuje vstup mynumber celé číslo, ale výstupem funkce je hodnota typu float. Pokud mylink.mynumber obsahuje hodnotu 56, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 12.963:

ds.AsFloat(56/4.32)
ds.AsFloat(mylink.mynumber/4.32)

AsInteger

Považujte dané číslo za celočíselnou hodnotu. Ale existuje rozdíl v chování, když je desetinné číslo přiřazeno k celé celé číslo oproti hodnotě typu float nebo double přiřazenému k celočíselnému číslu. Je-li převod z typu float nebo dvojitého na celé číslo, je to jednoduché přiřazení na celé číslo. V případě desetinné části AsInteger()je vyvolána funkce a zaokrouhlí výstup směrem k nejbližší hodnotě.

Syntaxe

ds.AsInteger(number (float, double etc.))

vrátí: číslo ve formátu celého čísla.

Příklady

V následujícím výrazu má vstupní hodnota 12.962963 typ Double. Ačkoli hodnota je typu Double, funkce má výstup celé číslo. Proto se jedná o jednoduché přiřazení k celočíselným hodnotám a funkce vrací hodnotu 12:

ds.AsInteger(12.962963)

V následujícím výrazu jsou výpočty jako (56/4.32) považovány za typ Decimal a volání funkce AsInteger() bude zaokrouhlit směrem k nejbližší hodnotě a vrátí hodnotu 13:

ds.AsInteger(56/4.32)

Opravit

Převede číselnou hodnotu na číslo s pohyblivou řádovou čárkou s určeným číslem přesnosti. Pokud se číslo vyhodnotí na hodnotu null, hodnota null se vrátí. Hodnota přesnosti je číselná hodnota, která odpovídá počtu desetinných míst přesnosti v čísle s pohyblivou řádovou čárkou. Výchozí přesnost je 4. Hodnota režimu je příznak, který uvádí, jak se zachází s přebytečnými číslicemi. Je-li režim buď 0, nebo není zadán, přebytečné číslice se zaokrouhlí. Pokud je v režimu cokoli jiného než 0, přebytečné číslice se oseknou.

Syntaxe

ds.FIX(numeric_expression (string), precision (int8), mode (int32))

vrátí: převedený počet formátu dfloat.

Příklady

Následující kód vrací číslo 37.7363.

ds.FIX("37.73629273")

MantissaFromDesetinné číslo

Vrátí mantisu z daného desetinného čísla.

Syntaxe

ds.MantissaFromDecimal(number (decimal))

vrátí: mantissa ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 243.7675, pak jsou následující dvě funkce ekvivalentní a vrátí hodnotu 7675:

ds.MantissaFromDecimal(243.7675)
ds.MantissaFromDecimal(mylink.mynumber)

MantissaFromDFloat

Vrací mantisu z daného dfloat.

Syntaxe

ds.MantissaFromDFloat(number (dfloat))

vrátí: mantissa ve formátu dfloat.

Příklady

Pokud mylink.number obsahuje číslo 1.234412000000000010E+4, pak následující funkce vrátí hodnotu 1:

ds.MantissaFromDFloat(mylink.mynumber)

Fyzické

Převede číselnou hodnotu v řetězci na typ s pohyblivou řádovou čárkou bez ztráty přesnosti.

Syntaxe

ds.Real(numeric_expression (string))

vrátí: převedený počet formátu dfloat.

Příklady

Následující kód vrátí číslo 1.23.

ds.Real("1.23")

Prvotní funkce

Funkci Raw použijte k získání délky dat ve sloupci obsahujícím nezpracovaná data.

RawLength

Vrátí délku řetězce, který je prvotním řetězcem.

Syntaxe

ds.RawLength(input string (string))

returns: délka prvotního řetězce ve formátu int32 .

Příklady

Pokud mylink.rawdata obsahuje prvotní data z bitové mapy, pak následující funkce vrací velikost bitové mapy v bajtech:

ds.RawLength(mylink.rawdata)

Řetězcové funkce

Tyto funkce se používají pro funkce související s řetězci ve výrazu.

AlNum

Kontroluje, zda daný řetězec obsahuje pouze alfanumerické znaky.

Syntaxe

ds.AlNum(string (string))

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Příklad

Pokud mylink.mystring1 obsahuje řetězec "OED_75_9*E", pak by následující funkce vrátila hodnotu 0 (false).

ds.AlNum(mylink.mystring1)

Pokud mylink.mystring2 obsahuje řetězec "12redroses", pak by následující funkce vrátila hodnotu 1 (true).

ds.AlNum(mylink.mystring2)

Alfa

Kontroluje, zda daný řetězec obsahuje pouze abecední znaky.

Syntaxe

ds.Alpha(string (string))

vrací: výsledek typu int8 , 1, je-li vstup platný pro daný typ, jinak 0.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "12redroses", pak by následující funkce vrátila hodnotu 0 (false).

ds.Alpha(mylink.mystring1)

Pokud mylink.mystring2 obsahuje řetězec "twelveredros", pak následující funkce vrátí hodnotu 1 (true).

ds.Alpha(mylink.mystring2)

Kočky

Zřetězí dva řetězce.

Syntaxe

ds.Cats(str1 (string), str2 (string))

Vrací: výsledný zřetězený řetězec.

Příklady

Následující kód vrátí hodnotu "ABC123".

ds.Cats("ABC", "123")

Změna

Nahradí daný podřetězec ve výrazu nahrazujícím řetězcem.

Je-li argumentem substring prázdný řetězec, vrátí se hodnota argumentu výrazu.

Je-li hodnotou náhradního argumentu prázdný řetězec, budou odebrány všechny výskyty podřetězce začínajícího od pozice indikované hodnotou počátečního argumentu. Je-li hodnota argumentu výskytů menší nebo rovna 0, budou nahrazeny všechny výskyty začínající od pozice označené hodnotou začátku argumentu. Jinak je počet nahrazených výskytů označen hodnotou argumentu výskytu, počínaje pozicí označeným hodnotou začátku argumentu. Je-li hodnota začátku argumentu menší nebo rovna 1, nahradí se náhrada od prvního výskytu. Otherwise, the replacement starts from the position indicated by the value of thebegin argument.

Syntaxe

ds.Change(expression (string), substring (string), replacement (string), [occurrence (int32), [begin (int32)]])

returns: nový řetězec se všemi nahrazenými podřetězci.

Příklady

Pokud mylink.mystring obsahuje výraz "aaabbbcccbbb", pak následující funkce vrací řetězec "aaaZZZcccZZZ".

ds.Change(mylink.mystring,"bbb","ZZZ")

Pokud mylink.mystring obsahuje výraz "ABC" a podřetězec je prázdný, pak následující funkce vrací řetězec "ABC".

ds.Change(mylink.mystring,"","ZZZ")

Pokud mylink.mystring obsahuje výraz "aaabbbcccbbb" a náhrada je prázdná, pak následující funkce vrací řetězec "aaaccc".

ds.Change(mylink.mystring, "bbb", "")

CompactWhiteProstor

Vrátí řetězec poté, co se sníží všechny po sobě jdoucí prázdné znaky na jeden prostor.

Syntaxe

ds.CompactWhiteSpace(string (string))

returns: výsledný řetězec se zmenšenými bílými znaky.

Příklady

Pokud mylink.mystring obsahuje řetězec "příliš mnoho mezer", pak následující funkce vrací řetězec "příliš mnoho mezer":

ds.CompactWhiteSpace(mylink.mystring)

Porovnat

Porovná dva řetězce pro řazení. Porovnání může být zarovnáno doleva (výchozí) nebo zprava zarovnané. Porovnávání s pravou zarovnáním porovnává číselné podřetězce v rámci uvedených řetězců jako čísla.

Numerické řetězce se musí vyskytnout na stejné pozici znaku v každém řetězci. Například nakloněné porovnání řetězců AB100 a AB99 označuje, že hodnota AB100 je větší než AB99 , protože 100 je větší než 99. Porovnáním porovnání řetězců AC99 a AB100 je uvedeno, že hodnota AC99 je větší než hodnota B.

Syntaxe

ds.Compare(string1 (string), string2 (string), [justification ("L" or "R")] )

vrací: výsledek typu int8 , -1, je-li string1 menší než string2, 0, pokud jsou oba řetězce stejné, 1, je-li string1 větší než string2.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "AB99" a mylink.mystring2 obsahuje řetězec "AB100", pak následující funkce vrátí výsledek 1.

ds.Compare(mylink.mystring1, mylink.mystring2, "L")

Pokud mylink.mystring1 obsahuje řetězec "AB99" a mylink.mystring2 obsahuje řetězec "AB100", pak následující funkce vrátí výsledek -1.

ds.Compare(mylink.mystring1, mylink.mystring2, "R")

CompareNoCase

Porovná dva řetězce pro řazení a ignoruje jejich případy.

Syntaxe

ds.CompareNoCase(string1 (string), string2 (string))

vrací: výsledek typu int8 , -1, je-li string1 menší než string2, 0, pokud jsou oba řetězce stejné, a 1, je-li string1 větší než string2.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "Chocolate Cake" a mylink.mystring2 obsahuje řetězec "čokoládový koláč", pak následující funkce vrací výsledek 0.

ds.CompareNoCase(mylink.mystring1, mylink.mystring2)

CompareNum

Porovnává prvních n znaků ze dvou řetězců, n je určeno uživatelem.

Syntaxe

ds.CompareNum(string1 (string), string2 (string), length (int16))

vrací: výsledek typu int8 , -1, je-li string1 menší než string2, 0, pokud jsou oba řetězce stejné, 1, je-li string1 větší než string2.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "Chocolate" a mylink.mystring2 obsahuje řetězec "Choccy Treat", pak následující funkce vrátí výsledek 0.

ds.CompareNum(mylink.mystring1, mylink.mystring2,4)

CompareNumNoCase

Porovnává prvních n znaků dvou řetězců, přičemž jejich velikost bude ignorována, n je zadán uživatelem.

Syntaxe

ds.CompareNumNoCase(string1 (string), string2 (string), length (int16))

vrací: výsledek typu int8 , -1, je-li string1 menší než string2, 0, pokud jsou oba řetězce stejné, 1, je-li string1 větší než string2.

Příklady

Pokud mylink.myraw obsahuje řetězec "čokoláda" a mylink.mystring2 obsahuje řetězec "Choccy Treat", pak následující funkce vrátí výsledek 0.

ds.CompareNumNoCase(mylink.mystring1, mylink.mystring2,4)

Převodní

Převádí řetězec na určený interní nebo externí formát úložiště. Řetězcový výraz vyhodnocuje řetězec, který má být převeden.

Následující tabulka zobrazuje hodnoty, které můžete zadat pro převod. Parametr conv_code určuje typy paměťových formátů, které se podílejí na převodu, a conv_mode uvádí, který formát se použije pro vstup nebo výstup. Uvedete-li "I" pro conv_mode, použije se pro převod funkce ICONV() . Uvedete-li "O" pro conv_mode, použije se pro převod funkce OCONV() .

Tabulka pro hodnoty převodu

conv_code conv_mode Popis
MX I Převádí vstupní řetězec z hexadecimálního formátu na desítková čísla.
MB I Převede vstupní řetězec z binárního na dekadický formát.
MX0C I Převádí vstupní řetězec z hexadecimálního formátu na znakový řetězec ASCII.
MB0C I Převede vstupní řetězec z binárního řetězce na znakový řetězec ASCII.
MX O Převede vstupní řetězec z dekadického na hexadecimální.
MB O Převede vstupní řetězec z dekadického na binární.
MX0C O Převádí vstupní řetězec ze znakového řetězce ASCII na hexadecimální.
MB0C O Převádí vstupní řetězec z řetězcového řetězce ASCII na binární.

Syntaxe

ds.Conversion(string (string), conv_code (string), conv_mode (string))

vrátí: převedený řetězec.

Příklady

Pokud mylink.mystring obsahuje řetězec "1111", pak následující funkce vrací hodnotu 15.

ds.Conversion(mylink.mystring,"MB", "I")

Pokud mylink.mystring obsahuje řetězec "CDE", pak následující funkce vrací hodnotu 434445.

ds.Conversion(mylink.mystring,"MX0C", "O")

Převést

Převede znaky v řetězci, který je určen v daném výrazu. Převádí znaky uvedené v jednom seznamu na znaky zadané v jiném seznamu.

Syntaxe

ds.Convert(fromlist (string), tolist (string), expression (string))

Vrací: řetězec s převedenými označenými znaky.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "NOW JE TIME", pak následující funkce vrací řetězec "NOW YS XHE XYME".

ds.Convert("TI","XY", mylink.mystring1)

Počet

Zjistí, kolikrát se v řetězci vyskytuje podřetězec.

Syntaxe

ds.Count(string (string), substring (string))

returns: počet výskytů podřetězce ve formátu int32 .

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládová zmrzlina, čokoládové tyčinky", pak následující funkce vrací 3.

ds.Count(mylink.mystring1, "choc")

DPOČET

Vrátí počet polí s oddělovači v řetězci.

Syntaxe

ds.Dcount(string (string), delimiter (string))

Vrací: počet polí s oddělovači ve formátu int32 .

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládová zmrzlina, čokoládové tyčinky", pak následující funkce vrací 3.

ds.Dcount(mylink.mystring1,",")

DownCase

Změní všechna velká písmena v řetězci na malá písmena.

Syntaxe

ds.DownCase(string (string))

returns: výsledný řetězec ve všech malých případech.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "CaMel cAsE", pak následující funkce vrací řetězec "camel case".

ds.DownCase(mylink.mystring1)

Uvozovky

Uzavře řetězec do dvojitých uvozovek.

Syntaxe

ds.DQuote(string (string))

vrátí: výsledný řetězec uzavřený do dvojitých uvozovek.

Příklady

Pokud mylink.mystring1 obsahuje řetězec potřebuje uvozovky, pak následující funkce vrátí řetězec "potřebuje uvozovky".

ds.DQuote(mylink.mystring1)

Vyměnit

Nahradí podřetězec ve výrazu nahrazujícím řetězcem.

Je-li argument substring prázdný řetězec, hodnota argumentu náhrady je uvedena jako předpona s hodnotou argumentu výrazu. Je-li argumentem nahrazení prázdný řetězec, budou odebrány všechny výskyty podřetězce od pozice určené hodnotou počátečního argumentu. Je-li hodnota argumentu výskytů menší nebo rovna 0, budou nahrazeny všechny výskyty začínající od hodnoty začátku argumentu. Jinak je počet výskytů, které jsou nahrazeny, označen hodnotou argumentu výskytu, počínaje pozicí, které označuje hodnota začátku argumentu. Je-li hodnota začátku argumentu menší nebo rovna 1, nahradí se náhrada od prvního výskytu. Jinak se náhrada spustí z pozice označené hodnotou začátku argumentu.

Syntaxe

ds.Ereplace(expression (string), substring (string), replacement (string), [occurrence (int32), [begin (int32)]])

returns: výsledný řetězec se všemi výskyty nahrazeného podřetězce.

Příklady

Pokud mylink.mystring obsahuje výraz "ABC" a podřetězec je prázdný, následující funkce vrátí hodnotu "ZZZABC".

ds.Ereplace(mylink.mystring,"","ZZZ")

Pokud mylink.mystring obsahuje výraz "aaabbbcccbbb" a náhrada je prázdná, vrací následující funkce hodnotu "aaaccc".

ds.Ereplace(mylink.mystring, "bbb", "")

Výměna

Nahradí znak v řetězci.

Syntaxe

ds.Exchange(str (string), findStr (string), replaceStr (string))

vrátí: výsledný řetězec s nahrazenými znaky.

Příklady

Následující kód vrátí: ".B.BC".

ds.Exchange("ABABC", "41", "2E")

EXTRACT

Poskytuje přístup k obsahu dat zadaného pole, hodnoty nebo dílčí hodnoty z dynamického pole. Pracuje podobně jako ODEBRAT.

Vstupní dynamické pole musí mít pouze CHAR (254), CHAR (253), CHAR (252) jako oddělovači a jejich hierarchii jako předepsáno. Respektive mohou být načteny funkcemi AM nebo FM, VM, SM nebo SVM. FM je oddělovač do polí řetězce, VM je oddělovač hodnot řetězců a SM je oddělovač podhodnot řetězce.

Chcete-li se dozvědět více o produktu EXTRACT, prohlédněte si funkci EXTRACT.

Syntaxe

ds.EXTRACT(str (string), field (int64), [value (int64), subvalue (int64)])

vrátí: výsledný extrahovaný řetězec řetězce formátu.

Příklady

Následující kód vrací: "9ü3ü5". Dynamické pole obsahuje 3 pole oddělená FM/AM, 2 hodnoty v prvním poli, 1 podhodnota v první hodnotě, atd.

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)

Následující kód vrací prázdný řetězec, protože existují pouze 3 pole a ne 10 nebo více.

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)

Pole

Vrací jeden nebo více podřetězců, které jsou umístěny mezi zadanými oddělovači v řetězci. Výskyt argumentu určuje, který výskyt oddělovače má být použit jako koncový znak. Číslo argumentu volitelně určuje, kolik podřetězců se má vrátit.

Syntaxe

ds.Field(string (string), delimiter (string), occurrence (int32), [number (int32)])

vrátí: odpovídající řetězec mezi oddělovači.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládová zmrzlina, čokoládové tyčinky, čokoládové dippers", pak následující funkce vrací řetězec " čokoládová zmrzlina ".

ds.Field(mylink.mystring1,",",2)

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládová zmrzlina, čokoládové tyčinky, čokoládové dippers", pak následující funkce vrací řetězec " čokoládové zmrzliny, čokoládové tyčinky ".

ds.Field(mylink.mystring1,",",2,2)

FieldStore

Upraví znakové řetězce vložením, odstraněním nebo nahrazením polí oddělených určeným řetězcem oddělovače. Řetězec oddělovačů označuje řetězec, který má být upraven, a může být libovolný jednotlivý znak ASCII. Také provede parametry start , což je pozice vstupního řetězce, kde začíná modifikace, a number , což je počet, kolikrát se nový řetězec vloží do vstupního řetězce.

Syntaxe

ds.FieldStore(str (string), delimiter (string), start (int8), number (int8), new_fields (string))

vrátí: upravený řetězec řetězce formátu.

Příklady

Následující kód vrací řetězec A#B#C#D#5:

ds.FieldStore("1#2#3#4#5", "#", 1, 4, "A#B#C#D")

Fmt

Používá funkci FMT nebo formát výrazu pro formátování dat pro výstup. Jakýkoli výraz BASIC může být formátován pro výstup s použitím výrazu formátu. Podrobnosti o syntaxi funkce Fmt viz Funkce FMT.

Syntaxe

ds.Fmt(string (string), format (string))

vrátí: výsledná formátovaná data řetězce formátu.

Příklady

Následující kód vrací řetězec "23-69-86":

ds.Fmt("236986","R##-##-##")

Následující kód vrací číslo "***** $555,666,898.00":

ds.Fmt("555666898","20*R2$,")

FmtDP

Převádí vícebajtové znakové sady typu String do cílového formátu. Není-li povolena podpora národního jazyka (NLS), funkce FmtDP funguje jako ekvivalentní funkce Fmt. Podrobnosti o syntaxi funkce FmtDP viz FmtDP.

Syntaxe

ds.FmtDP(string (string), format (string), [mapname (string)])

Vrací: konvertovaný řetězec formátu řetězce.

Příklady

Následující kód vrací číslo 56789:

ds.FmtDP("123456789","R#5")

Přestati

Skládací řetězce pro vytváření podřetězců. řetězec je řetězec, který se má složit. délka je délka podřetězců ve znacích.

ds.Fold(str (string), length (int8))

Vrací: výsledný složený řetězec.

Následující kód vrací "THISþIS AþTESTþFOLUþD STRþING".

ds.Fold("THIS IS A TEST FOLDED STRING", 5)

Folddp

V režimu podpory národních jazyků (NLS) se za řetězce vytvářejí podřetězce za použití znakových pozic.

Syntaxe

ds.Folddp(str (string), length (int), opmap (string))

Vrací: výsledný složený řetězec.

Příklady

Následující kód se vrací: "", ",", ",", ",", ",", ",", ",

ds.Folddp("这里需要 UNICODE STRING", 5, "0")

Rejstřík

Vyhledá počáteční pozici znaku podřetězce. Výskyt argumentu určuje, který výskyt podřetězce má být umístěn.

Syntaxe

ds.Index(string (string), substring (string), occurrence (int32))

Vrací: výsledek ve formátu int32 počtu výskytů.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládové zmrzliny, čokoládové tyčinky, čokoládové dippers", pak následující funkce vrací hodnotu 18.

ds.Index(mylink.mystring1,"chocolate",2)

Vlevo

Vrátí nejvíce vlevo n znaků řetězce.

Syntaxe

ds.Left(string (string) number (int32))

returns: nejvíce vlevo n znaků řetězce.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládová zmrzlina, čokoládové tyčinky, čokoládové dippers", pak následující funkce vrací řetězec "čokoláda".

ds.Left(mylink.mystring1,9)

DÉLKA

Vrátí délku řetězce ve znacích.

Syntaxe

ds.Len(string (string))

returns: délka řetězce ve formátu int32 .

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoláda", pak následující funkce vrací hodnotu 9.

ds.Len(mylink.mystring1)

Lendp

V režimu NLS (National Language Support) vrací délku řetězce s jeho celkovým zobrazovacím pozicí.

Syntaxe

ds.Lendp(str (string), opmap (string))

returns: délka řetězce ve formátu int64.

Příklady

Následující kód vrátí hodnotu: 19.

ds.Lendp("这里需要 UNICODE STRING", "0")

Shoda

Synonymní pro MATCHES. Používá se k porovnání řetězcového výrazu se vzorem. Chcete-li se dozvědět více o syntaxi Match , prohlédněte si Operátor shody.

Syntaxe

ds.Match(str (string), pattern (string))

returns: výsledek, zda vzorek odpovídá vstupnímu řetězci, formátu boolean.

Příklady

Následující kód vrátí hodnotu false:

ds.Match("XYZ123AB", "3X3N")

Následující kód vrací hodnotu true:

ds.Match("XYZ123AB", "3X3N...")

MatchField

Prohledává řetězec a vrací jeho část, která odpovídá vstupnímu parametru pattern . Další informace o syntaxi MatchField naleznete v části Operátor MATCH.

Syntaxe

ds.MatchField(str (string), pattern (string), field (int))

vrátí: výsledek formátovacího řetězce.

Příklady

Následující kód vrací řetězec "XYZ":

ds.MatchField("XYZ123AB", "3X3N...", 1)

Číslo

Vrátí hodnotu 1, je-li řetězec možné převést na číslo, jinak vrátí hodnotu 0.

Syntaxe

ds.Num(string (string))

vrátí hodnotu: 1, pokud lze řetězec převést na číslo, nebo vrátí hodnotu 0 jinak, ve formátu int32 .

Příklady

Pokud mylink.mystring1 obsahuje řetězec "22", pak následující funkce vrací hodnotu 1.

ds.Num(mylink.mystring1)

Pokud mylink.mystring1 obsahuje řetězec "dvacet dva", pak následující funkce vrací hodnotu 0.

ds.Num(mylink.mystring1)

PadString

Vrátí řetězec doplněný o uvedený počet znaků výplně.

Syntaxe

ds.PadString(string (string) padstring (string) padlength (int32))

vrátí: výsledný vyplněný řetězec.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "AB175", vrací následující funkce řetězec "AB17500000".

ds.PadString(mylink.mystring1,"0",5)

Odebrat

Extrahuje a vrací prvky dynamického pole, které jsou odděleny oddělovači systému, a označují, který systémový oddělovač byl nalezen. Přijímá jeden typ CHAR jako oddělovač a vrací odpovídající číslo určující, který oddělovač se nachází.

Číslo Typ oddělovače
0 Konec řetězce
1 Značka položky ASCII CHAR (255)
2 Hodnota pole ASCII CHAR (254)
3 Hodnota ASCII CHAR (253)
4 Značka podhodnota ASCII CHAR (252)
5 Text *CHAR ASCII CHAR (251)
6 ASCII CHAR (250) (není k dispozici v příchuti PIOPEN)
7 ASCII CHAR (249) (Není k dispozici v příchuti PIOPEN)
8 ASCII CHAR (248) (Není k dispozici v příchuti PIOPEN)

Další informace o funkci REMOVE naleznete v tématu Funkce REMOVE.

Syntaxe

ds.REMOVE(str (string))

vrátí: výsledný řetězec s oddělovači odebraných z řetězcového seznamu formátu a číslem, které odpovídá nalezeného oddělovače.

Příklady

Následující kód vrátí hodnotu [ "3", "12"].

ds.REMOVE("12" + ds.VM() + "12" + ds.VM())

Vrátí nejvíce vpravo n znaků řetězce.

Syntaxe

ds.Right(string (string) number (int32))

vrací: nejvíce vpravo n znaků řetězce.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "čokoládové kapky, čokoládová zmrzlina, čokoládové tyčinky, čokoládové dippers", pak následující funkce vrací řetězec "dippers".

ds.Right(mylink.mystring1,7)

Soundex

Vrací kód, který identifikuje sadu slov, která jsou (hrubě) foneticky podobná na základě standardního, otevřeného algoritmu pro vyhodnocení SOUNDEX.

Syntaxe

ds.Soundex(string (string))

returns: kód, který identifikuje sadu foneticky podobných slov.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "Griffin", pak následující funkce vrací kód "G615".

ds.Soundex(mylink.mystring1)

Pokud mylink.mystring1 obsahuje řetězec "Griphin", pak následující funkce vrací také kód "G615".

ds.Soundex(mylink.mystring1)

Prostor

Vrátí řetězec o n mezeznacích.

Syntaxe

ds.Space(length (int32))

returns: řetězec mezer s určenou délkou.

Příklady

Pokud mylink.mylength obsahuje číslo 100, pak následující funkce vrátí řetězec, který obsahuje 100 znaků.

ds.Space(mylink.mylength)

SQuote

Uzavře řetězec do jednoduchých uvozovek.

Syntaxe

ds.SQuote(string (string))

Vrací: řetězec uzavřený v jednoduchých uvozovkách.

Příklady

Pokud mylink.mystring1 obsahuje řetězec potřebuje uvozovky, pak následující funkce vrátí řetězec 'potřebuje uvozovky'.

ds.SQuote(mylink.mystring1)

STR

Opakuje řetězec uvedený počet krát.

Syntaxe

ds.Str(string (string), repeats (int32))

returns: výsledný řetězec se opakuje n krát.

Příklady

Pokud mylink.mystring1 obsahuje řetězec potřebuje "choc", pak následující funkce vrací řetězec "chochocchochocchocchoc".

ds.Str(mylink.mystring1,5)

Mezera StripWhite

Vrátí řetězec po odstranění všech neviditelných znaků z něj.

Syntaxe

ds.StripWhiteSpace(string (string))

Vrací: řetězec bez mezer.

Příklady

Pokud mylink.mystring obsahuje řetězec "příliš mnoho mezer", pak následující funkce vrací řetězec "toomanyspaces":

ds.StripWhiteSpace(mylink.mystring)

Podřetězec

Vrací určený podřetězec.

Je-li zadána hodnota n , funkce získá poslední n znaků řetězce.

Je-li uvedeno start a length , funkce získá znaky o délce rovnající se délce od pozice start řetězce.

Když je zadán oddělovač , funkce získá jeden nebo více podřetězců umístěných mezi zadanými oddělovači v řetězci. occu je počet oddělovačů a num je délka podřetězce mezi oddělovači ve výsledném podřetězci.

Syntaxe

ds.Substring(string (string), n (int8))
ds.Substring(string (string), start (int8), length (int8))
ds.Substring(string (string), delimiter (string), occu (int8), num (int8))

vrátí: výsledné pole řetězce formátu řetězce.

Příklady

Následující kód vrátí hodnotu "ab.cd".

ds.Substring("ab.cd", ".", 1, 2)

Podřetězce

Vytvoří dynamické pole, z něhož všechny prvky jsou podřetězce odpovídajících prvků vstupního dynamického pole.

Syntaxe

ds.Substrings(str (string), start (int8), length (int8))

vrátí: výsledné dynamické pole s podřetězci odpovídajícími vstupním poli, ve formátu řetězce.

Příklady

Následující kód vrací "NESýITHþ23üý50ü".

ds.Substrings("JONESýSMITHþ1.23ü20ý2.50ü10", 3, 20)

Oříznout

Odebere všechny úvodní a koncové mezery a tabulátory. Tato funkce také redukuje vnitřní výskyty mezer nebo tabelátorů na jeden.

Argument stripchar volitelně určuje jiný znak než mezeru nebo tabelátor. Argument volby volitelně určuje typ operace oříznutí, která má být provedena, a obsahuje jednu nebo více z následujících hodnot:

  • A: Odstraní všechny výskyty stripchar.

  • B Odebrat počáteční a koncové výskyty stripchar.

  • D Odstranění počátečních, koncových a nadbytečných znaků mezer.

  • E Odebrat koncové znaky mezery.

  • F Odstranění počátečních znaků mezery.

  • L Odebrat všechny počáteční výskyty parametru stripchar.

  • R Odstranění počátečních, koncových a redundantních výskytů stripchar.

  • T Odebrat všechny koncové výskyty stripchar.

Syntaxe

ds.Trim(string (string), [stripchar (string)], [options (string)])

vrátí: oříznutý řetězec.

Příklady

Pokud mylink.mystring obsahuje řetězec " String with whitespace ", pak následující funkce vrací řetězec" String s mezerou ":

ds.Trim(mylink.mystring)

Pokud mylink.mystring obsahuje řetězec " ..Odeberte .. nadbytečné .. tečky .... ", pak následující funkce vrací řetězec "Remove.redundant.dots":

ds.Trim(mylink.mystring,".")

Pokud mylink.mystring obsahuje řetězec "Remove .. all.. dots....", pak následující funkce vrací řetězec "Removealldots":

ds.Trim(mylink.mystring,".","A")

Pokud mylink.mystring obsahuje řetězec "Remove .. trailing.. dots....", pak následující funkce vrací řetězec "Remove .. trailing.. dots":

ds.Trim(mylink.mystring,".","T")

TrimB

Odebere všechny koncové mezery a tabulátory z řetězce.

Syntaxe

ds.TrimB(string (string))

vrátí: oříznutý řetězec.

Příklady

Pokud mylink.mystring obsahuje řetězec "příliš mnoho koncových mezer", pak následující funkce vrací řetězec "příliš mnoho koncových mezer":

ds.TrimB(mylink.mystring)

TrimF

Odebere všechny úvodní mezery a tabulátory z řetězce.

Syntaxe

ds.TrimF(string (string))

vrátí: oříznutý řetězec.

Příklady

Pokud mylink.mystring obsahuje řetězec " příliš mnoho úvodních mezer ", pak následující funkce vrací řetězec" příliš mnoho počátečních mezer ":

ds.TrimF(mylink.mystring)

TrimLeading-odesílání

Odebere všechny úvodní a koncové mezery a tabulátory z řetězce.

Syntaxe

ds.TrimLeadingTrailing(string (string))

vrátí: oříznutý řetězec.

Příklady

Pokud mylink.mystring obsahuje řetězec " příliš mnoho mezer ", pak následující funkce vrací řetězec" příliš mnoho mezer ":

ds.TrimLeadingTrailing(mylink.mystring)

UpCase

Změní všechna malá písmena v řetězci na velká písmena.

Syntaxe

ds.UpCase(string (string))

vrací: výsledný řetězec ve všech velkých případech.

Příklady

Pokud mylink.mystring1 obsahuje řetězec "CaMel cAsE", pak následující funkce vrací řetězec "CAMEL CASE":

ds.UpCase(mylink.mystring1)

IM

Vrátí CHAR (255). Pracuje stejně jako AM.

Syntaxe

ds.IM()

Vrací: výsledné CHAR (255).

Příklady

Následující kód vrací 'ÿ'.

ds.IM()

FM

Vrací CHAR (254).

Syntaxe

ds.FM()

Vrací: výsledný CHAR (254).

Příklady

Následující kód vrací 'ţ'.

ds.FM()

dopoledne

Vrací CHAR (254). Pracuje stejně jako FM.

Syntaxe

ds.AM()

Vrací: výsledný CHAR (254).

Příklady

Následující kód vrací 'ţ'.

ds.AM()

VM

Vrátí CHAR (253).

Syntaxe

ds.VM()

vrátí: výsledný CHAR (253).

Příklady

Následující kód vrátí 'ý'.

ds.VM()

SM

Vrátí CHAR (252). Pracuje stejně jako SVM.

Syntaxe

ds.SM()

vrací: výsledný typ CHAR (252).

Příklady

Následující kód vrací 'ü'.

ds.SM()

SVM

Vrátí CHAR (252). Pracuje stejně jako SM.

Syntaxe

ds.SVM()

vrací: výsledný typ CHAR (252).

Příklady

Následující kód vrací 'ü'.

ds.SVM()

TM

Vrací CHAR (251).

Syntaxe

ds.TM()

Vrací: výsledný CHAR (251).

Příklady

Následující kód vrací 'û'.

ds.TM()

Funkce obslužných programů

Funkce obslužného programu uvádí různé účely související s načítáním informací o specifických funkcích DataStage .

ElementAt

Vrátí prvek v seznamu určeném indexem.

Syntaxe

ds.ElementAt(list (object))

Vrací: index prvku objektu formátu.

Příklady

Následující kód vrátí 'b':

ds.ElementAt(["a","b","c"], 1)

Následující kód vrátí hodnotu 2:

ds.ElementAt([1,2,3], 1)

Název příkazu GetCommand

Vezme ID uzlu "Spustit aktivitu skriptu bash" a načte název příkazu aktivity skriptu Run bash.

Syntaxe

ds.GetCommandName(tasks.activity_id (string))

vrátí: název příkazu řetězce formátu.

Příklady

Následující kód vrací název příkazu úlohy run_bash_script_5:

ds.GetCommandName(tasks.run_bash_script_5)

Výstup příkazu GetCommand

Vezme identifikátor uzlu "Spustit aktivitu skriptu bash" a načte jeho standardní výstup. Je ekvivalentní výrazu CEL:

tasks.<activity_id>.results.standard_output

Syntaxe

ds.GetCommandOutput(tasks.activity_id (string))

vrátí: standardní výstup formátovacího řetězce.

Příklady

Následující kód vrací standardní výstup úlohy run_bash_script_5:

ds.GetCommandOutput(tasks.run_bash_script_5)

Zpráva GetError

Používá se v úloze pouze v obslužné rutině výjimek. Výstup je text zprávy, která bude zaprotokolována jako varování při vyvolání výjimky.

Syntaxe

ds.GetErrorMessage()

Vrací: výslednou zprávu řetězce formátu.

Příklady

Následující kód vrátí chybovou zprávu nezdařené úlohy:

ds.GetErrorMessage()

GetErrorČíslo

Používá se v úloze pouze v obslužné rutině výjimek, výstupem je celé číslo, které označuje typ vyvolané chyby, která je vyvolána. Buď 1, nebo -1.

1 označuje, že úloha spustila úlohu, která byla předčasně ukončena, a nebyla nastavena žádná specifická obslužná rutina.

Hodnota -1 označuje, že úloha nebyla spuštěna z jiných důvodů.

Syntaxe

ds.GetErrorNumber()

vrátí: výsledné celé číslo int.

Příklady

Následující kód vrací číslo chyby typu aktivity obslužné rutiny výjimek:

ds.GetErrorNumber()

Zdroj GetError

Výstup se v úloze používá pouze v obslužné rutině výjimek, výstupem je název fáze fáze aktivity, která vyvolala výjimku.

Syntaxe

ds.GetErrorSource()

Vrací: výslednou hodnotu úlohy řetězce formátu.

Příklady

Následující kód vrátí úlohu, která selhala:

ds.GetErrorSource()

Název GetJob

Vrátí název úlohy aktivity Run DataStage v době, kdy je funkce spuštěna. Je ekvivalentní výrazu CEL:

tasks.<activity_id>.results.job_name

Syntaxe

ds.GetJobName(tasks.activity_id (string))

vrátí: název úlohy řetězce formátu.

Příklady

Následující kód vrátí úlohu názvu úlohy run_datastage_flow_1:

ds.GetJobName(tasks.run_datastage_flow_1)

Stav příkazu GetJob

Vezme hodnotu ID uzlu aktivity "Spustit aktivitu DataStage " a načte její stav úlohy pro produkt <activity_name>.$JobStatus. Je ekvivalentní s následujícím výrazem cel:

((tasks.<activity_id>.results.status == 'Completed') ? 1 : ((tasks.<activity_id>.results.status == 'CompletedWithWarnings') ? 2 : ((tasks.<activity_id>.results.status == 'Cancelled') ? 96 : 3)))

Syntaxe

ds.GetJobStatus(tasks.activity_id (string))

Vrací: stav úlohy formátu int.

Příklady

Následující kód vrací stav úlohy run_datastage_flow_1:

ds.GetJobStatus(tasks.run_datastage_flow_1)

Čítač GetList

Používá se v úloze ve smyčce pouze se seznamem čítačů, výstupem je aktuální hodnota proměnné čítače.

Syntaxe

ds.GetListCounter()

vrátí: výsledná hodnota čítače řetězce formátu.

Příklady

Následující kód vrací aktuální hodnotu smyčky.

ds.GetListCounter()

GetNumeric-čítač

Používá se v úloze ve smyčce pouze s číselným čítačem, výstupem je aktuální hodnota proměnné čítače smyčky.

Syntaxe

ds.GetNumericCounter()

vrátí: výsledná hodnota čítače ve formátu int.

Příklady

Následující kód vrací aktuální hodnotu smyčky.

ds.GetNumericCounter()

GetOutputArg

Vrací určenou hodnotu klíče ze vstupu JSON typu string.

Syntaxe

ds.GetOutputArg(JSON (string), key_value (string))

returns: Hodnota pole vlastnosti.

Příklady

Následující kód vrací řetězcovou hodnotu "tom":

ds.GetOutputArg("{"name":"tom"}", "name")

Hodnota GetReturn

Vezme hodnotu ID uzlu "Spustit aktivitu skriptu Bash" a vrátí hodnotu aktivity Spustit skript bash. Je ekvivalentní s následujícím výrazem CEL:

tasks.<activity_id>.results.return_value

Syntaxe

ds.GetReturnValue(tasks.activity_id (string))

returns: výsledná hodnota úlohy formátu int.

Příklady

Následující kód vrací hodnotu úlohy tasks.run_bash_script_5:

ds.GetReturnValue(tasks.run_bash_script_5)

Stav GetUser

Vezme ID úlohy toku DataStage a vrátí stav úlohy toku DataStage v posloupnosti úlohy. Nefunguje, pokud se spustí v paralelní úloze. Je ekvivalentní výrazu CEL:

tasks.<activity_id>.results.user_status

Syntaxe

ds.GetUserStatus(tasks.run_datastage_id (string))

vrací: stav ID úlohy toku DataStage ve formátu řetězce.

Příklady

Následující kód vrací hodnotu ID úlohy run_datastage_5:

ds.GetUserStatus(tasks.run_datastage_5)

LogName

Vrátí přihlašovací jméno aktuálního uživatele.

Syntaxe

ds.LogName()

returns: přihlašovací jméno aktuálního uživatele řetězce formátu.

Příklady

Následující kód vrací přihlašovací jméno aktuálního uživatele.

ds.LogName()

Cesta

Vrátí úplný název aktuálního uživatele.

Syntaxe

ds.Path()

returns: jméno cesty aktuálního uživatele řetězce formátu.

Příklady

Následující kód vrací úplný název aktuálního uživatele.

ds.Path()

Schéma

Vrátí název schématu aktuálního uživatele.

Syntaxe

ds.Schema()

vrátí: název schématu aktuálního uživatele řetězce formátu.

Příklady

Následující kód vrací název schématu aktuálního uživatele.

ds.Schema()

UserNo

Vrátí číslo uživatele aktuálního uživatele.

Syntaxe

ds.UserNo()

Vrací: uživatelské informace aktuálního uživatele formátu int.

Příklady

Následující kód vrací číslo uživatele aktuálního uživatele.

ds.UserNo()

Kdo

Vrátí aktuálního uživatele.

Syntaxe

ds.Who()

Vrací: aktuálního uživatele formátovacího řetězce.

Příklady

Následující kód vrací aktuálního uživatele.

ds.Who()

Funkce obsluhy s hodnotou

Funkce, které pracují s hodnotou null.

IsNull

Vrátí logickou hodnotu true, pokud se vstupní výraz vyhodnocuje na hodnotu Null.

Syntaxe

ds.IsNull(input (any))

returns: výsledek, zda je výraz vyhodnocen jako null, ve formátu boolean.

Příklady

Následující kód vrátí hodnotu true.

ds.IsNull(null)

Následující kód vrátí hodnotu false.

ds.IsNull(0)

není null

Vrátí logickou hodnotu true, pokud se vstupní výraz nevyhodnocuje na hodnotu null.

Syntaxe

ds.IsNotNull(input (any))

returns: výsledek, zda se výraz nevyhodnocuje na hodnotu null, ve formátu boolean.

Příklady

Následující kód vrátí hodnotu false.

ds.IsNotNull(null)

Následující kód vrátí hodnotu true.

ds.IsNotNull(0)

Null

Vrátí hodnotu null.

Syntaxe

ds.Null()

Vrací: hodnotu null.

Příklady

Následující kód vrací hodnotu null.

ds.Null()

NullToprázdné

Vrací prázdný řetězec, pokud má vstup hodnotu null. V opačném případě vrací hodnotu vstupního sloupce.

Syntaxe

ds.NullToEmpty(input (any))

returns: prázdný řetězec nebo vstupní hodnota.

Příklady

Následující kód vrátí hodnotu "AA".

ds.NullToEmpty("AA")

Následující kód vrátí hodnotu "".

ds.NullToEmpty(null)

NullStr

Vrací řetězec s hodnotou null CHAR (128).

Syntaxe

ds.NullStr()

returns: null string CHAR (128).

Příklady

Následující kód vrátí hodnotu €.

ds.NullStr()

Hodnota NullTo

Vrací zadanou hodnotu, pokud má vstup hodnotu null, jinak vrací hodnotu vstupního sloupce.

Syntaxe

ds.NullToValue(input (any), default (any))

vrátí: určenou hodnotu nebo vstupní hodnotu.

Příklady

Následující kód vrací "test".

ds.NullToValue("test", "default")

Následující kód vrací "výchozí".

ds.NullToValue(null, "default")

Následující kód vrátí hodnotu 1.

ds.NullToValue(null, 1)

Nula NullTo

Vrací 0, pokud má vstup hodnotu null, jinak vrací hodnotu vstupního sloupce.

Syntaxe

ds.NullToZero(input (any))

vrátí hodnotu: 0 nebo vstupní hodnotu.

Příklady

Následující kód vrátí hodnotu 88.

ds.NullToZero(88)

Následující kód vrátí hodnotu 0.

ds.NullToZero(null)

SetNull

Přiřadí hodnotu null do cílového sloupce.

Syntaxe

ds.SetNull()

vrací: nastaví cíl na hodnotu null.

Příklady

Následující kód vrací hodnotu null.

ds.SetNull()

Funkce maker

Funkce, které zpracovávají načtení sady metadat projektu souvisejících s posloupností úloh DataStage .

JobName

Vrátí název úlohy sekvencer.

Syntaxe

ds.JobName

vrátí: název úlohy sekvencer formátu řetězce.

Příklady

Následující kód vrací název úlohy sekvencer.

ds.JobName

Datum JobStart

Vrátí datum zahájení úlohy sequencer.

Syntaxe

ds.JobStartDate

vrátí: Počáteční datum řetězce sekvenceru formátu řetězce.

Příklady

Následující kód vrátí datum zahájení úlohy sequencer.

ds.JobStartDate

Čas JobStart

Vrátí čas zahájení úlohy sequencer.

Syntaxe

ds.JobStartTime

vrátí: čas zahájení úlohy sekvenceru formátu řetězce.

Příklady

Následující kód vrací čas zahájení úlohy sequencer.

ds.JobStartTime

Časové razítko JobStart

Vrátí časové razítko spuštění úlohy sekvencer.

Syntaxe

ds.JobStartTimestamp

Vrací: Časové razítko začátku úlohy sekvencer formátu časového označení.

Příklady

Následující kód vrátí počáteční časové razítko úlohy sequencer.

ds.JobStartTimestamp

HostName

Vrátí název hostitele serveru DataStage .

Syntaxe

ds.HostName

vrátí: úloha sequencer InvocationId formátovacího řetězce.

Příklady

Následující kód vrací úlohu sekvencer InvocationId.

ds.HostName

ProjectName

Vrátí název projektu běžící úlohy sequencer.

Syntaxe

ds.ProjectName

vrátí: název projektu běžící úlohy sequencer.

Příklady

Následující kód vrátí název projektu běžící úlohy sequencer.

ds.ProjectName

ProjectId

Vrátí ID projektu běžící úlohy sekvencer.

Syntaxe

ds.ProjectId

vrací: ID projektu běžící úlohy sekvencer.

Příklady

Následující kód vrací ID projektu běžící úlohy sekvencer.

ds.ProjectId

JobId

Vrátí ID úlohy běžící úlohy sekvencer.

Syntaxe

ds.JobId

Vrací: ID úlohy běžící úlohy sekvencer.

Příklady

Následující příkazy vrací ID úlohy běžící úlohy sekvencer.

ds.JobId

JobController

Vrátí název toku propojení procesů běžící úlohy sekvencer.

Syntaxe

ds.JobController

vrátí: název toku propojení procesů běžící úlohy sekvencer.

Příklady

Následující příkazy vrací název toku propojení procesů běžící úlohy sekvencer.

ds.JobController

Nadřízené téma: Přidání podmínek do propojení procesů

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more