Utilisez ces fonctions DataStage dans les éditeurs de code de pipelines d'orchestration, par exemple, pour définir une variable utilisateur ou générer une condition avancée.
Syntaxe des fonctions du générateur d'expressions
Dans la syntaxe des arguments, les crochets indiquent qu'un argument est facultatif.
Un paramètre peut accepter des données de n'importe quel type. Vous pouvez entrer un argument de type chaîne, int, float, null et d'autres types. Par exemple, la fonction IsNull(input (any))
accepte les types de paramètre suivants, mais elle n'est pas exclusive aux types suivants:
ds.IsNull(1)
ds.IsNull("try null")
ds.IsNull(1.78)
ds.IsNull(null)
Le Générateur de formules utilise les catégories suivantes pour les fonctions de codage:
Fonctions de conversion
Convertit une donnée simple d'un format en un autre.
ASCII
Convertit les valeurs des caractères d'une chaîne du format EBCDIC au format ASCII.
Syntaxe
ds.Ascii(input (string))
renvoie: la chaîne EDBCDI convertie en chaîne ASCII résultante de la chaîne de format.
Exemple
Le code suivant renvoie "65 66 67":
ds.Ascii("193 194 195")
Char
Retourne le caractère ASCII correspondant à la valeur de code numérique fournie.
Syntaxe
ds.Char(code (uint8))
renvoie: le caractère correspondant du format char.
Exemple
Dans l'exemple suivant, le caractère A est retourné en réponse au code ASCII 65.
ds.Char(65)
Total de contrôle
Renvoie une valeur de code de redondance cyclique pour une chaîne.
Syntaxe
ds.Checksum(input (string))
renvoie: la valeur de total de contrôle d'une chaîne de format qui est un code de redondance cyclique.
Exemple
Le code suivant renvoie 57158:
ds.Checksum("This is any arbitrary string value")
CRC32
Utilise la fonction CRC32 pour renvoyer un code de redondance cyclique 16 bits.
Syntaxe
ds.CRC32(input (string))
renvoie: le résultat du format décimal.
Exemple
Le code suivant renvoie 57158:
ds.CRC32("This is any arbitrary string value")
DateToString
Renvoie la représentation sous forme de chaîne de la date. La chaîne de format par défaut pour les dates est "%yyyy%mm%dd", ainsi, par exemple, la date 2009-08-25 est stockée comme le nombre décimal 20090825. Il est cependant possible de spécifier une chaîne de format établissant de quelle manière la date est stockée dans le nombre décimal. Les chaînes de format doivent spécifier un format contenant uniquement des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%yyyy-%mm-%dd", car le caractère d'union (-) ne peut pas être stocké dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%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)
Les chiffres littéraux 0 à 9 sont également valides.
Syntaxe
ds.DateToString(date (date), [format (string)])
retourne : la date au format chaîne.
Exemple
Si mylink.mydate
contient la date 18th août 2009, le code suivant renvoie la chaîne "2009-08-18":
ds.DateToString(mylink.mydate)
L'exemple suivant génère la date contenue dans la colonne mylink.mydate
dans une chaîne au format dd:mm:yyyy
. Si mylink.mydate
contenait la date 18th August, 2009, le code suivant renvoie la chaîne "18:08:2009":
ds.DateToString(mylink.mydate, "%dd:%mm:%yyyy")
DateToDecimal
Renvoie la date spécifiée sous forme de valeur décimale condensée. La chaîne de format par défaut pour les dates est "%yyyy%mm%dd", ainsi, par exemple, la date 2009-08-25 est stockée comme le nombre décimal 20090825. Il est cependant possible de spécifier une chaîne de format établissant de quelle manière la date est stockée dans le nombre décimal. Les chaînes de format doivent spécifier un format contenant uniquement des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%yyyy-%mm-%dd", car le caractère d'union (-) ne peut pas être stocké dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%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)
Les chiffres littéraux 0 à 9 sont également valides.
Syntaxe
ds.DateToDecimal(basedate (date), [format (string)])
retourne : la date au format numérique décimal.
Exemple
Si mylink.basedate
contient la date 2012-08-18, la fonction suivante stocke la date sous la forme du nombre décimal 18082012 :
ds.DateToDecimal(mylink.basedate, "%dd%mm%yyyy")
Si mylink.basedate
contient la date 2012-08-18, la fonction suivante stocke la date sous la forme du nombre décimal 20120818:
ds.DateToDecimal(mylink.basedate)
DecimalToDate
Renvoie la décimale condensée indiquée sous forme de date. Le signe et l'échelle du nombre décimal sont tous deux ignorés lors de sa conversion en date. La chaîne de format par défaut est "%yyyy%mm%dd", ainsi, par exemple, la date 2009-08-25 est stockée comme le nombre décimal 20090825. Il est cependant possible de spécifier une chaîne de format établissant de quelle manière la date est stockée dans le nombre décimal. Les chaînes de format doivent spécifier uniquement un format contenant des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%yyyy-%mm-%dd", car le caractère d'union (-) ne peut pas être stocké dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%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)
Les chiffres littéraux 0 à 9 sont également valides.
Syntaxe
ds.DecimalToDate(basedec (decimal), [format (string)])
retourne : le nombre décimal au format de date.
Exemple
Si mylink.mydecdata
contient la valeur 18082012, la fonction suivante renvoie la date 2012-08-18 :
ds.DecimalToDate(mylink.basedate, "%dd%mm%yyyy")
Si mylink.mydecdata
contient la valeur -201208.18, la fonction suivante renvoie la date 2012-08-18 :
ds.DecimalToDate(mylink.basedate)
DecimalToDecimal
Renvoie la valeur décimale indiquée dans la représentation décimale. L'argument rtype
spécifie éventuellement un type d'arrondi et est défini sur l'une des valeurs suivantes :
ceil
: Arrondi le champ source vers l'infini positif. Par exemple, 1.4-> 2, -1.6-> -1.
floor
: Arrondi le champ source vers l'infini négatif. Par exemple, 1.6-> 1, -1.4-> -2.
round_inf
: Arrondi ou tronque le champ source vers la valeur représentable la plus proche, en supprimant les virgules et donc en arrondissant les valeurs positives vers l'infini positif et les valeurs négatives vers l'infini négatif. Par exemple, 1.4-> 1, 1.5-> 2, -1.4-> -1, -1.5-> -2.
trunc_zero
: supprime les chiffres fractionnaires à droite du chiffre fractionnaire le plus à droite pris en charge dans la destination, quel que soit le signe. Par exemple, si la destination est un entier, tous les chiffres fractionnaires sont tronqués. Si la destination est une autre décimale avec une échelle plus petite, elle est arrondie ou tronquée à la taille d'échelle de la décimale de destination. Par exemple, 1.6-> 1, -1.6-> -1.
Syntaxe
ds.DecimalToDecimal(decimal (decimal), [rtype (string)])
retourne : le nombre décimal résultant.
Exemple
Si mylink.mydec
contient le nombre décimal 2.5345, la fonction suivante renvoie le nombre décimal 2.54:
ds.DecimalToDecimal(mylink.mydec,"ceil")
Si mylink.mydec
contient le nombre décimal 2.5345, la fonction suivante renvoie le nombre décimal 2.53.
ds.DecimalToDecimal(mylink.mydec,"floor")
Si mylink.mydec
contient le nombre décimal 2.5345, la fonction suivante renvoie le nombre décimal 2.53.
ds.DecimalToDecimal(mylink.mydec,"trunc_zero")
Si mylink.mydec
contient le nombre décimal 2.5345, la fonction suivante renvoie le nombre décimal 2.53.
ds.DecimalToDecimal(mylink.mydec,"round_inf")
DecimalToDFloat
Renvoie la valeur décimale indiquée dans la représentation dfloat
. L'argument facultatif fix_zero
indique que toutes les valeurs décimales nulles sont considérées comme valides (par défaut, les nombres décimaux contenant tous les zéros sont traités comme non valides).
Syntaxe
ds.DecimalToDFloat(decimal (decimal), ["fix_zero"])
Renvoie : le nombre décimal au format dfloat
.
Exemples
Si mylink.mydec
contient le nombre décimal 00000004.00, la fonction suivante renvoie le nombre dfloat
4.
ds.DecimalToDFloat(mylink.mydec,"fix_zero")
Si mylink.mydec
contient le nombre décimal 00012344.00, la fonction suivante renvoie le nombre dfloat
12344.
ds.DecimalToDFloat(mylink.mydec,"fix_zero")
Si mylink.mydec
contient le nombre décimal 00012344.120, la fonction suivante renvoie le dfloat
nombre 12344.12.
ds.DecimalToDFloat(mylink.mydec,"fix_zero")
Si mylink.mydec
contient le nombre décimal 00012344.120, la fonction suivante renvoie le nombre dfloat 12344.12.
ds.DecimalToDFloat(mylink.mydec)
Si mylink.mydec
contient le nombre décimal 00012344.000, la fonction suivante renvoie le nombre dfloat 12344.
ds.DecimalToDFloat(mylink.mydec)
DecimalToString
Renvoie la décimale indiquée sous forme de chaîne. L'argument fix_zero
indique éventuellement que toutes les valeurs décimales zéro sont considérées comme valides (par défaut, les nombres décimaux qui contiennent des zéros sont traités comme non valides). Cela couvre le cas où les bits de signe de la représentation décimale condensée sont tous 0 et tous les chiffres de contenu. Ce transtypage n'est pas considéré comme valide sauf si fix_zero
est vrai.
Syntaxe
ds.DecimalToString(decimal (decimal), ["fix_zero"])
retourne : le nombre décimal au format de chaîne.
Exemples
Si mylink.mydec
contient le nombre décimal 00000004.00, la fonction suivante renvoie la chaîne "4":
ds.DecimalToString(mylink.mydec,"suppress_zero")
Si mylink.mydec
contient le nombre décimal 00000004.00, la fonction suivante renvoie la chaîne "0000000000000000000000000004.0000000000":
ds.DecimalToString(mylink.mydec,"fix_zero")
Si mylink.mydec
contient le nombre décimal 00000004.00, la fonction suivante renvoie la chaîne "4":
ds.DecimalToString(mylink.mydec)
DecimalToTime
Renvoie la décimale condensée indiquée sous forme d'heure. Vous pouvez éventuellement spécifier une chaîne de format indiquant la façon dont l'heure est stockée dans le nombre décimal. La chaîne de format par défaut est "%hh%nn%ss". Par conséquent, par exemple, l'heure 14:03:22 est stockée en tant que nombre décimal 140322. Les chaînes de format doivent spécifier un format contenant uniquement des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%hh: %nn:%ss", car le caractère deux-points (:) ne peut pas être stocké dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
Les chiffres littéraux 0 à 9 sont également valides.
Si le format que vous spécifiez inclut les microsecondes (par exemple, %ss.4), la position du séparateur décimal (ici un point) est déduite dans la valeur décimale. Il n'est pas nécessaire qu'elle coïncide avec l'échelle spécifiée pour la valeur décimale (par exemple, scale = 4).
Syntaxe
ds.DecimalToTime(decimal (decimal), [format (string)])
renvoie: Décimal au format d'heure.
Exemple
Si mylink.mytimedec
contient la valeur décimale 200658, la fonction suivante renvoie l'heure 20:06:58:
ds.DecimalToTime(mylink.mytimedec)
Si la colonne mylink.mytimedec contient la valeur décimale 580620, la fonction suivante renvoie l'heure 20:06:58 :
ds.DecimalToTime(mylink.mytimedec, "%ss%nn%hh")
DecimalToTimestamp
Renvoie la décimale condensée indiquée sous forme d'horodatage. Vous pouvez éventuellement spécifier une chaîne de format indiquant la façon dont l'horodatage est stocké dans le nombre décimal. La chaîne de format par défaut est "%hh%nn%ss", de sorte que, par exemple, l'horodatage 2009-08-25 14:03:22 est stocké en tant que nombre décimal 20090825140322. Les chaînes de format doivent spécifier un format contenant uniquement des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%yyyy/%mm/%dd%hh: %nn:%ss", car la barre oblique (/) et le signe deux-points (:) ne peuvent pas être stockés dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
Les chiffres littéraux 0 à 9 sont également valides.
Si le format que vous spécifiez inclut les microsecondes (par exemple, %ss.4), la position du séparateur décimal (ici un point) est déduite dans la valeur décimale. Il n'est pas nécessaire qu'elle coïncide avec l'échelle spécifiée pour la valeur décimale (par exemple, scale = 4).
Syntaxe
ds.DecimalToTimestamp(decimal (decimal), [format (string)])
renvoie: Décimal au format d'horodatage.
Exemple
Si mylink.mytimestampdec
contient la valeur 1958081818200658, la fonction suivante renvoie l'horodatage 1958-08-18 20:06:58:
ds.DecimalToTimestamp(mylink.mytimestampdec)
Si link.mytimestampdec
contient la valeur décimale 200658220818, la fonction suivante renvoie l'horodatage 2022-08-18 20:06:58:
ds.DecimalToTimestamp(mylink.mytimestampdec, "%hh%nn%ss%yy%mm%dd")
DFloatToDecimal
Renvoie la variable dfloat indiquée dans une représentation décimale. L'argument rtype
spécifie éventuellement un type d'arrondi et est défini sur l'une des valeurs suivantes :
ceil
: Arrondi le champ source vers l'infini positif. Par exemple, 1.4-> 2, -1.6-> -1.
floor
: Arrondi le champ source vers l'infini négatif. Par exemple, 1.6-> 1, -1.4-> -2.
round_inf
: Arrondi ou tronque le champ source vers la valeur représentable la plus proche, en supprimant les virgules et donc en arrondissant les valeurs positives vers l'infini positif et les valeurs négatives vers l'infini négatif. Par exemple, 1.4-> 1, 1.5-> 2, -1.4-> -1, -1.5-> -2.
trunc_zero
: supprime les chiffres fractionnaires à droite du chiffre fractionnaire le plus à droite pris en charge dans la destination, quel que soit le signe. Par exemple, si la destination est un entier, tous les chiffres fractionnaires sont tronqués. Si la destination est une autre décimale avec une échelle plus petite, elle est arrondie ou tronquée à la taille d'échelle de la décimale de destination. Par exemple, 1.6-> 1, -1.6-> -1.
Syntaxe
ds.DFloatToDecimal(number (dfloat), [rtype (string)])
retourne : la représentation décimale du dfloat fourni en entrée.
Exemples
Si mylink.myfloat
contient le nombre dfloat 2.534, la fonction suivante renvoie le nombre décimal 2.54:
ds.DFloatToDecimal(mylink.mydec,"ceil")
Si mylink.myfloat
contient le nombre dfloat 2.534, la fonction suivante renvoie le nombre décimal 2.53:
ds.DFloatToDecimal(mylink.mydec,"floor")
Si mylink.myfloat
contient le nombre dfloat 2.534, la fonction suivante renvoie le nombre décimal 2.53:
ds.DFloatToDecimal(mylink.mydec,"trunc_zero")
Si mylink.myfloat
contient le nombre dfloat 2.534, la fonction suivante renvoie le nombre décimal 2.53:
ds.DFloatToDecimal(mylink.mydec,"round_inf")
DfloatToStringNoExp
Renvoie le dfloat indiqué dans sa représentation de chaîne sans exposant, en utilisant l'échelle spécifiée.
Syntaxe
ds.DfloatToStringNoExp(number (dfloat), scale (string))
retourne : le nombre dfloat au format de chaîne.
Exemples
Si mylink.myfloat
contient le nombre dfloat 2.534, la fonction suivante renvoie la chaîne "2.5":
ds.DfloatToStringNoExp(mylink.myfloat, "2")
Dtx
Convertit un entier décimal en hexadécimal.
Syntaxe
ds.Dtx(number (int32), size(int8))
renvoie: le résultat de la chaîne de format.
Exemple
Le code suivant renvoie "002F"::
ds.Dtx(47,4)
EBCDIC
Convertit chaque caractère d'une expression de sa valeur de représentation ASCII en valeur de représentation EBCDIC.
Syntaxe
ds.Ebcdic(input (string))
renvoie: chaîne ASCII convertie en chaîne EDBCDII résultante.
Exemple
Le code suivant renvoie "193 194 195 64 241 242 243":
ds.Ebcdic("ABC 123")
Iconv
Convertit une chaîne en format de stockage interne.
Syntaxe
ds.Iconv(string (string), code (string))
renvoie: le format de stockage interne au format chaîne.
Exemple
Le code suivant renvoie 10740:
ds.Iconv("27 MAY 97", "D2")
Le code suivant renvoie 10740:
ds.Iconv("1997 5 27", "D YMD")
IntToBool
Convertir un entier en type bool. Renvoie true pour toute valeur différente de zéro et false pour 0.
Syntaxe
ds.IntToBool(integer (int))
renvoie la valeur booléenne true ou false.
Exemple
La valeur 2 renvoie true.
ds.IntToBool(2)
IsValid
Détermine si la chaîne indiquée est valide pour le type spécifié.
Les types valides sont "date", "decimal", "dfloat", "sfloat", "int8", "uint8", "int16", "uint16", "int32", "uint32", "int64","uint64"," string "," time "," timestamp ".
Pour les types de données de date, d'heure et d'horodatage, vous pouvez indiquer éventuellement une chaîne de format. La chaîne de format décrit le format que vos données d'entrée utilisent lorsqu'il diffère des formats par défaut pour la date, l'heure ou l'horodatage. Le format par défaut de la date est "%aaaa-%mm-%jj". Le format par défaut est "%hh:%mm:%ss". Le format par défaut de l'horodatage est "%yyyy-%mm-%dj %hh: %mm:%ss". Cette fonction ne consigne pas les avertissements.
Syntaxe
ds.IsValid(type (string), teststring (string), [format (string)])
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Exemple
Si mylink.mystring
contient la chaîne "1", la fonction suivante renvoie la valeur 1 :
ds.IsValid("int8", mylink.mystring)
Si mylink.mystring
contient la chaîne "380096.06", la fonction suivante renvoie la valeur 0 :
ds.IsValid("int8", mylink.mystring)
IsValidDate
Détermine si la valeur indiquée est valide pour le type date. Cette fonction consigne les avertissements.
Syntaxe
ds.IsValidDate(testdate (date))
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Si mylink.mydate
contient l date 2011-09-13, la fonction suivante renvoie la valeur 1.
ds.IsValidDate(mylink.mydate)
Si mylink.mydate
contient la chaîne "380096.06", la fonction suivante renvoie la valeur 0, car la chaîne convertie n'est pas une date valide.
ds.IsValidDate(mylink.mydate)
IsValidDecimal
Détermine si la valeur indiquée est valide pour le type decimal. Si allzerosflag
est défini sur 0, une représentation tout-zéro n'est pas valide. Le paramètre allzerosflag
est défini sur 0 par défaut.
Syntaxe
ds.IsValidDecimal(testvalue (decimal), [allzerosflag (uint8)])
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Exemples
Si mylink.mynum
contient la valeur 310007.65, la fonction suivante renvoie la valeur 1.
ds.IsValidDecimal(mylink.mynum)
IsValidTime
Détermine si l'heure indiquée est valide pour le type time.
Syntaxe
ds.IsValidTime(testtime (time))
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Exemples
Si mylink.mytime
contient l'heure 23:09:22, la fonction suivante renvoie la valeur 1 :
ds.IsValidTime(mylink.mytime)
IsValidTimestamp
Détermine si l'horodatage indiqué est valide pour le type timestamp.
Syntaxe
ds.IsValidTimestamp(testtimestamp (timestamp))
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Exemples
Si mylink.mytimestamp
contient l'heure 2011-09-13 23:09:22, la fonction suivante renvoie la valeur 1 :
ds.IsValidTimestamp(mylink.mytimestamp)
Oconv
Convertit une expression en format de sortie.
Syntaxe
ds.Oconv(expression (string), conversion (string))
renvoie: le résultat dans un format de sortie de chaîne de format.
Exemple
Le code suivant renvoie 1997-147:
ds.Oconv(10740, "D-YJ")
Le code suivant renvoie 27 MAI 97:
ds.Oconv(10740, "D DMY, [A3,2]")
RawNumAt
Renvoie la valeur entière à la valeur d'index indiquée dans la zone brute spécifiée. L'index démarre à 0.
Syntaxe
ds.RawNumAt(rawfield (string), index (int32))
retourne : la valeur entière figurant à l'index spécifié au format int32.
Exemples
Si column mylink.myraw
contient une valeur brute dérivée de la chaîne "hello" (qui est "{ 0x68 0x65 0x6C 0x6C 0x6F }"), puis la fonction suivante renvoie l'entier 104 (code ASCII du caractère h):
ds.RawNumAt(mylink.myraw, 0)
Si mylink.myraw
contient une valeur brute dérivée de la chaîne "hello" (qui est "{ 0x68 0x65 0x6C 0x6C 0x6F }"), puis la fonction suivante renvoie 0 car l'index spécifié est hors plage:
ds.RawNumAt(mylink.myraw, 12)
RawToString
Renvoie la valeur brute indiquée sous forme de représentation de chaîne. Vous devez vous assurer que la valeur d'entrée brute contient une séquence d'octets qui sont des caractères valides dans le jeu de caractères cible dans lequel la chaîne en sortie est utilisée.
Par exemple, la valeur brute { 0xE0 0x41 0x42 }
n'est pas une
séquence valide de caractères UTF-8, car le premier octet, 0xE0, est censé être suivi d'un octet compris dans l'intervalle [0x80..0xBF].
Si une valeur brute '{ xE0 x41 x42 }
est transmise à la fonction RawToString, une erreur peut se produire si la chaîne de sortie est ensuite accédée comme si elle était encodée en UTF-8.
Syntaxe
ds.RawToString(rawfield (string))
retourne : la représentation sous forme de chaîne de la valeur brute fournie en entrée.
Exemples
Si mylink.myraw
contient la valeur { 0x31 0x31 0x30 0x35 0x32 0x32 0x30 0x39 }
, la fonction suivante renvoie la chaîne "11052209".
ds.RawToString(mylink.myraw)
Séq
Génère une valeur de code numérique à partir d'un caractère ASCII. Vous pouvez éventuellement spécifier l'argument allow8bits
pour convertir des valeurs ASCII 8 bits.
Syntaxe
ds.Seq(seq (char))
retourne : le code numérique du caractère ASCII.
Exemples
L'exemple suivant génère le caractère A en tant que code ASCII 65.
ds.Seq("A")
SeqAt
Renvoie la valeur décimale du code numérique du caractère à l'emplacement spécifié dans la chaîne indiquée. L'index démarre à 0. Si l'index spécifié est hors plage, la fonction renvoie 0.
Syntaxe
ds.SeqAt(basestring (string), index (int32))
Retourne : valeur numérique numérique du caractère à la position spécifiée dans la chaîne donnée au format int32
.
Exemples
Si mylink.mystring
contient la chaîne "horse", la fonction suivante renvoie la valeur 0x6F (c'est-à-dire la valeur ASCII du caractère o).
ds.SeqAt(mylink.mystring, 1)
StringToBool
Convertit une chaîne en type bool. Renvoie la valeur false pour une chaîne vide, renvoie la valeur true pour toute autre valeur.
Syntaxe
ds.StringToBool(string (string))
renvoie la valeur booléenne true ou false.
Exemple
Une chaîne vide renvoie false.
ds.StringToBool("")
StringToDate
Retourne une date à partir de la chaîne fournie en entrée dans le format spécifié. Vous n'avez pas besoin d'indiquer une chaîne de format si votre chaîne contient une date au format par défaut aaaa-mm-jj.
Syntaxe
ds.StringToDate(string (string), [format (string)])
renvoie: la chaîne à la date dans le format spécifié.
Exemples
Si mylink.mystring
contient la chaîne "1958-08-18", la fonction suivante renvoie la date 1958-08-18.
ds.StringToDate(mylink.mystring)
Si mylink.mystring
contient la chaîne "18:08:1958", la fonction suivante renvoie la date 1958-08-18.
ds.StringToDate(mylink.mystring,"%dd:%mm:%yyyy")
StringToDecimal
Renvoie la chaîne indiquée sous forme de représentation décimale. L'argument rtype
spécifie éventuellement un type d'arrondi et est défini sur l'une des valeurs suivantes :
ceil
: Arrondi le champ source vers l'infini positif. Par exemple, 1.4-> 2, -1.6-> -1.
floor
: Arrondi le champ source vers l'infini négatif. Par exemple, 1.6-> 1, -1.4-> -2.
round_inf
: Arrondi ou tronque le champ source vers la valeur représentable la plus proche, en supprimant les virgules et donc en arrondissant les valeurs positives vers l'infini positif et les valeurs négatives vers l'infini négatif. Par exemple, 1.4-> 1, 1.5-> 2, -1.4-> -1, -1.5-> -2.
trunc_zero
: supprime les chiffres fractionnaires à droite du chiffre fractionnaire le plus à droite pris en charge dans la destination, quel que soit le signe. Par exemple, si la destination est un entier, tous les chiffres fractionnaires sont tronqués. Si la destination est une autre décimale avec une échelle plus petite, elle est arrondie ou tronquée à la taille d'échelle de la décimale de destination. Par exemple, 1.6-> 1, -1.6-> -1.
Syntaxe
ds.StringToDecimal(string (string), [rtype (string)])
retourne : la chaîne au format décimal.
Exemples
Si mylink.mystring
contient la chaîne "19982.22", la fonction suivante renvoie la valeur décimale 19982.22.
ds.StringToDecimal(mylink.mystring)
Si mylink.mystring
contient la chaîne "19982.2276", la fonction suivante renvoie la valeur décimale 19982.23.
ds.StringToDecimal(mylink.mystring,"ceil")
StringToRaw
Retourne la valeur de code brute (raw) d'une chaîne passée en entrée.
Syntaxe
ds.StringToRaw(string (string))
retourne : la valeur de code brute (type raw) de la chaîne.
Exemples
Si mylink.mystring
contient la chaîne "hello", la fonction suivante renvoie la valeur "{0x68 0x65 0x6C 0x6C 0x6F}".
ds.StringToRaw(mylink.mystring)
StringToTime
Renvoie une représentation d'heure de la chaîne indiquée.
Syntaxe
ds.StringToTime(string (string), [format (string)])
retourne : la chaîne représentée par une valeur d'heure.
Exemples
Si mylink.mystring
contient la chaîne "20:06:58", la fonction retourne une heure de 20:06:58.
ds.StringToTime(mylink.mystring)
Si mylink.mystring
contient la chaîne "20: 6:58", la fonction retourne une heure de 20:06:58.
ds.StringToTime(mylink.mystring,"%(h,s):%(n,s):%(s,s)")
StringToTimestamp
Retourne la chaîne fournie en entrée au format d'horodate.
Syntaxe
ds.StringToTimestamp(string (string), [format (string)])
retourne : la chaîne au format d'horodate.
Exemples
Si mylink.mystring
contient la chaîne "1958-08-08 20:06:58", la fonction renvoie l'horodatage 1958-08-08 20:06:58.
ds.StringToTimestamp(mylink.mystring)
Si mylink.mystring
contient la chaîne "8/ 8/1958 20: 6:58", la fonction renvoie l'horodatage 1958-08-08 20:06:58.
ds.StringToTimestamp(mylink.mystring, "%(d,s)/%(m,s)/%yyyy%(h,s):%(n,s):%(s,s)")
StringToUstring
Renvoie un ustring
à partir de la chaîne donnée, éventuellement à l'aide de la mappe spécifiée (sinon, il utilise la valeur par défaut du projet).
Syntaxe
ds.StringToUstring(string (string), [mapname (string)])
retourne : la chaîne au format d'ustring.
Exemples
Si mylink.mystring
contient la chaîne "11052009", la fonction suivante renvoie l'ustring "11052009".
ds.StringToUstring(mylink.mystring)
TimestampToDate
Renvoie une date à partir de l'horodatage spécifié.
Syntaxe
ds.TimestampToDate(timestamp (timestamp))
retourne : la partie date de l'horodate.
Exemples
Si mylink.mytimestamp
contient l'horodatage 1958-08-18 20:06:58, la fonction suivante renvoie la date 1958-08-18:
ds.TimestampToDate(mylink.mytimestamp)
TimestampToDecimal
Renvoie l'horodatage indiqué sous forme de décimale condensée. La chaîne de format par défaut est " %yyyy%mm%dd%hh%nn%ss ". Par exemple, l'horodate 2009-08-25 14:03:22 est stockée sous la forme du nombre décimal 20090825140322. Il est cependant possible de spécifier une chaîne de format établissant de quelle manière la date est stockée dans le nombre décimal. Les chaînes de format doivent spécifier un format contenant uniquement des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%yyyy/%mm/%dd%hh: %nn:%ss", car la barre oblique (/) et le signe deux-points (:) ne peuvent pas être stockés dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%yyyy (four-digit year)
%yy (two-digit year)
%NNNNyy (two-digit year with cutoff)
%mm (two-digit month)
%dd (two-digit day of month)
%ddd (three-digit day of year)
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
Les chiffres littéraux 0 à 9 sont également valides.
Si le format que vous spécifiez inclut les microsecondes (par exemple, %ss.4), la position du séparateur décimal (ici un point) est déduite dans la valeur décimale. Il n'est pas nécessaire qu'elle coïncide avec l'échelle spécifiée pour la valeur décimale (par exemple, scale = 4).
Syntaxe
ds.TimestampToDecimal(timestamp (timestamp), [format (string)])
retourne : l'horodate au format décimal.
Exemples
Si mylink.mytimestamp
contient l'horodatage 1958-08-18 20:06:58, la fonction suivante renvoie la valeur décimale 19580818200658:
ds.TimestampToDecimal(mylink.mytimestamp)
Si mylink.mytimestamp
contient l'horodatage 1958-08-18 20:06:58, la fonction suivante renvoie la valeur décimale 200658580818:
ds.TimestampToDecimal(mylink.mytimestamp, "%hh%nn%ss%yy%mm%dd")
TimestampToString
Renvoie l'horodatage indiqué sous la forme d'un format de chaîne.
Syntaxe
ds.TimestampToString(timestamp (timestamp), [format (string)])
retourne : l'horodate au format de chaîne.
Exemples
Si mylink.mytimestamp
contient l'horodatage 1958-08-18 20:06:58, la fonction renvoie la chaîne "1958-08-18 20:06:58".
ds.TimestampToString(mylink.mytimestamp)
Si mylink.mytimestamp
contient l'horodatage 1958-08-18 20:06:58, la fonction renvoie la chaîne "1 8 / 0 8 / 1 9 5 8 20:06:58":
ds.TimestampToString(mylink.mytimestamp, "%dd/%mm/%yyyy %hh:%nn:%ss")
TimestampToTime
Renvoie l'horodatage indiqué sous la forme d'un format d'heure.
Syntaxe
ds.TimestampToTime(timestamp (timestamp), [format (string)])
retourne : l'horodate au format d'heure.
Exemples
Si mylink.mytimestamp
contient l'horodatage 1958-08-18 20:06:58, la fonction renvoie l'heure 20:06:58:
ds.TimestampToTime(mylink.mytimestamp)
TimeToString
Renvoie une chaîne à partir de l'heure spécifiée.
Syntaxe
ds.TimeToString(timestamp (timestamp), [format (string)])
retourne : l'heure au format de chaîne.
Exemples
Si mylink.mytime
contient l'heure 20:06:58, la fonction suivante renvoie la chaîne "20:06:58" :
ds.TimeToString(mylink.mytime)
Si mylink.mytime
contient l'heure 20:06:58, la fonction suivante renvoie la chaîne "58:06:20" :
ds.TimeToString(mylink.mytime, "%ss:%nn:%hh")
TimeToDecimal
Renvoie l'heure indiquée sous forme de décimale condensée. La chaîne de format par défaut est " %hh%nn%ss ", ainsi, par exemple, l'heure 14:03:22 est stockée comme le nombre décimal 140322. Il est cependant possible de spécifier une chaîne de format établissant de quelle manière l'heure est stockée dans le nombre décimal. Les chaînes de format peuvent uniquement spécifier un format contenant des nombres. Par exemple, vous ne pouvez pas spécifier une chaîne de format telle que "%hh: %nn:%ss", car le caractère deux-points (:) ne peut pas être stocké dans une valeur décimale condensée. Les jetons suivants sont valides pour les conversions vers ou depuis des valeurs décimales :
%hh (two-digit hours that use 24-hour clock)
%nn (two-digit minutes)
%ss (two-digit seconds)
%ss.N (two-digit seconds, plus the number of fractional digits allowed. The number of fractional digits is from 1 - 6 inclusive).
Les chiffres littéraux 0 à 9 sont également valides.
Si le format que vous spécifiez inclut les microsecondes (par exemple, %ss.4), la position du séparateur décimal (ici un point) est déduite dans la valeur décimale. Il n'est pas nécessaire qu'elle coïncide avec l'échelle spécifiée pour la valeur décimale (par exemple, scale = 4).
Syntaxe
ds.TimeToDecimal(time (time), [format (string)])
retourne : l'heure au format décimal.
Exemples
Si mylink.mytime
contient l'heure 20:06:58, la fonction suivante renvoie la valeur décimale 200658 :
ds.TimeToDecimal(mylink.mytime)
Si mylink.mytime
contient l'heure 20:06:58, la fonction suivante renvoie la valeur décimale 580620 :
ds.TimeToDecimal(mylink.mytime, "%ss%nn%hh")
UniChar
Génère un caractère Unicode unique basé sur une valeur décimale comprise entre 0 et 65535.
Syntaxe
ds.UniChar(expression (int32))
renvoie: le résultat de la chaîne de format.
Exemple
Le code suivant renvoie "õ":
ds.UniChar(0x00F5)
UniSeq
Génère une valeur décimale basée sur un caractère Unicode unique.
Syntaxe
ds.UniSeq(expression (string))
renvoie: le décimal correspondant au caractère Unicode du format int32.
Exemple
Le code suivant renvoie 195:
ds.UniSeq("ä")
UstringToString
Retourne une chaîne à partir de l'ustring fourni en entrée, en utilisant éventuellement la mappe spécifiée (autrement, la mappe par défaut du projet est utilisée).
Syntaxe
ds.UstringToString(string (ustring), [mapname(string)])
retourne : le résultat au format de chaîne.
Exemples
Si mylink.myustring
contient l'ustring "11052009", la fonction suivante renvoie la chaîne "11052009" :
ds.UstringToString(mylink.myustring)
Xtd
Convertit une chaîne hexadécimale en décimale.
Syntaxe
ds.Xtd(hexadecimal (string))
renvoie: la valeur décimale correspondante de la chaîne hexadécimale.
Exemple
Le code suivant renvoie 48879:
ds.Xtd("beef")
Ent
Renvoie la partie entière d'une expression. Toutes les opérations arithmétiques spécifiées sont calculées à l'aide de la précision totale du système. La partie fractionnaire de la valeur est tronquée, non arrondie, et l'entier restant est renvoyé.
Syntaxe
ds.Int(expression (dfloat))
renvoie: la valeur décimale qui est arrondie et convertie en type int64.
Exemple
Le code suivant renvoie 454:
ds.Int(454.95)
Le code suivant renvoie 2:
ds.Int(2.35)
Fonctions de date et d'heure
Utilisez ces fonctions pour les fonctions de données et de temps dans une expression.
Les fonctions qui spécifient des dates, des heures ou des horodatages dans les arguments utilisent des chaînes avec des formats spécifiques:
- Pour une date, le format est
%yyyy-%mm-%dd
- Pour une heure, le format est
%hh:%nn:%ss
. S'il est étendu à des microsecondes, le format est%hh:%nn:%ss.x
, où X indique le nombre de décimales en secondes. - Pour un horodatage, le format est le format de date suivi du format d'heure.
Les fonctions qui ont les jours de la semaine dans l'argument prennent une chaîne qui indique le jour de la semaine. Le jour est spécifié par son abréviation anglaise sur trois lettres ou par son nom complet en anglais. Par exemple, les chaînes "thu" et "thursday" sont toutes deux valides.
CurrentDate
Renvoie la date d'exécution du travail.
Syntaxe
ds.CurrentDate()
retourne : la date du jour au format de date.
Exemples
Utilisez cette fonction pour obtenir la date du jour.
ds.CurrentDate()
CurrentTime
Renvoie l'heure d'exécution du travail.
Syntaxe
ds.CurrentTime()
renvoie: l'heure en cours au format d'heure.
Exemples
Utilisez cette fonction pour obtenir l'heure en cours.
ds.CurrentTime()
CurrentTimeMS
Renvoie l'heure, y compris les microsecondes, à laquelle le travail s'exécute.
Syntaxe
ds.CurrentTimeMS()
retourne : l'heure en cours, à la microseconde près, au format d'heure.
Exemples
Cette fonction permet d'extraire l'heure en cours et de générer les données.
ds.CurrentTimeMS()
CurrentTimestamp
Renvoie un horodatage qui indique la date et l'heure d'exécution du travail.
Syntaxe
ds.CurrentTimestamp()
renvoie: l'horodatage en cours au format d'horodatage.
Exemples
Utilisez cette fonction pour obtenir l'horodate en cours.
ds.CurrentTimestamp()
CurrentTimestampMS
Renvoie un horodatage, y compris les microsecondes, qui indique la date et l'heure d'exécution du travail.
Syntaxe
ds.CurrentTimestampMS()
renvoie: l'horodatage en cours au format d'horodatage.
Exemples
Utilisez cette fonction pour obtenir l'horodate en cours.
ds.CurrentTimestampMS()
Date :
Renvoie une valeur numérique unique de jours écoulés entre la date système interne et le 31 décembre 1967, c'est-à-dire le jour 0. Toutes les dates après sont des nombres positifs qui représentent le nombre de jours écoulés depuis le jour 0. Toutes les dates antérieures sont des nombres négatifs qui représentent le nombre de jours avant le jour 0.
Syntaxe
ds.Date()
renvoie: la date résultante au format int.
Exemples
Si la date en cours est le 15 novembre 1967, le code suivant renvoie -46. Si la date en cours est le 15 février 1968, le code suivant renvoie 46:
ds.Date()
DateFromDaysSince
Renvoie une date en ajoutant un entier à une date de référence. L'entier peut être négatif pour renvoyer une date antérieure à la date de référence.
Syntaxe
ds.DateFromDaysSince(number (int32), [baseline_date_object (string)])
renvoie une date en ajoutant un entier à une date de référence entrée par l'utilisateur.
Exemples
Si mylink.myintcol
contient l'entier 18250 et que mylink.mydatecol
contient la date 1958-08-18, les trois fonctions suivantes sont équivalentes et renvoient la date 2008-08-05:
ds.DateFromDaysSince(18250,"1958-08-18")
ds.DateFromDaysSince(mylink.myintcol,"1958-08-18")
ds.DateFromDaysSince(mylink.myintcol,mylink.mydatecol)
Si " mylink.mynegintcol
contient l'entier -1 et " mylink.mydatecol
la date 1958-08-18, les trois fonctions suivantes sont équivalentes et renvoient la date 1958-08-17 :
ds.DateFromDaysSince(-1,"1958-08-18")
ds.DateFromDaysSince(mylink.mynegintcol,"1958-08-18")
ds.DateFromDaysSince(mylink.mynegintcol,mylink.mydatecol)
DateFromDaysSince2
Renvoie une date en ajoutant un entier à une date de référence. L'entier peut être négatif pour renvoyer une date antérieure à la date de référence.
Syntaxe
ds.DateFromDaysSince2(number (int32), [baseline_date_object (date)])
renvoie une date en ajoutant un entier à une date de référence entrée par l'utilisateur.
Exemples
Si mylink.myint
contient l'entier 18250 et que mylink.mydate
contient la date 1958-08-18, les trois fonctions suivantes sont équivalentes et renvoient la date 2008-08-05:
ds.DateFromDaysSince2(18250,"1958-08-18")
ds.DateFromDaysSince2(mylink.myint,"1958-08-18")
ds.DateFromDaysSince2(mylink.myint, mylink.mydate)
Si " mylink.mynegint
contient l'entier -1 et " mylink.mydate
la date 1958-08-18, les trois fonctions suivantes sont équivalentes et renvoient la date 1958-08-17 :
ds.DateFromDaysSince2(-1,"1958-08-18")
ds.DateFromDaysSince2(mylink.mynegint,"1958-08-18")
ds.DateFromDaysSince2(mylink.mynegint, mylink.mydate)
DateFromComponents
Renvoie une date à partir des années, mois et jour du mois indiqués, sous la forme de trois valeurs distinctes.
Syntaxe
ds.DateFromComponents(years (int32), months (int32), dayofmonth (int32))
renvoie: une date unique avec les valeurs spécifiées.
Exemples
Si mylink.year
contient la valeur 2010, mylink.month
la valeur 12 et mylink.dayofmonth
la valeur 2, les deux fonctions suivantes sont équivalentes et renvoient la date 2010-12-02.
ds.DateFromComponents(2010, 12, 2)
ds.DateFromComponents(mylink.year, mylink.month, mylink.dayofmonth)
DateFromJulianDay
Renvoie une date à partir du numéro de jour julien spécifié.
Syntaxe
ds.DateFromJulianDay(julianday (uint32))
retourne : la date correspondant au nombre de jours julien indiqué.
Exemples
Si mylink.myjul
contient la valeur 2454614, les deux fonctions suivantes sont équivalentes et renvoient la date 2008-05-27.
ds.DateFromJulianDay(2454614)
ds.DateFromJulianDay(mylink.myjul)
DateOffsetByComponents
Renvoie la date spécifiée, avec des décalages appliqués à partir du décalage d'année, de mois et de jour du mois indiqué, sous la forme de trois valeurs distinctes. Les valeurs de décalage peuvent chacune être positives, négatives ou égales à zéro.
Syntaxe
ds.DateOffsetByComponents(basedate (date), year_offset (int32), month_offset (int32), dayofmonth_offset (int32))
renvoie: décalage de date donné du format de date.
Exemples
Si mylink.basedate
contient 2011-08-18 et mylink.yearos
contient la valeur 2, mylink.monthos
contient la valeur 0 et mylink.dayofmonthosol
contient la valeur 0, les deux fonctions suivantes sont équivalentes et renvoient la date 2013-08-18.
ds.DateOffsetByComponents("2011-08-18", 2, 0, 0)
ds.DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)
Si 'mylink.basedate
contient 2011-08-18 et 'mylink.yearos
contient la valeur -2, 'mylink.monthos
contient la valeur 0, et 'mylink.dayofmonthosol
contient la valeur 0, alors les deux fonctions suivantes sont équivalentes, et renvoient la date 2009-08-18.
ds.DateOffsetByComponents("2011-08-18", -2, 0, 0)
ds.DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)
Jour
Renvoie le jour du mois à partir de la date système.
Syntaxe
ds.Day()
renvoie: jour du mois au format int.
Exemples
Si la date en cours est 1967-12-31, le code suivant renvoie 31.
ds.Day()
DaysSinceFromDate
Prend une date donnée de type date et une date source de type chaîne, et renvoie le nombre de jours entre la date source et la date donnée.
Syntaxe
ds.DaysSinceFromDate(given_date (date), source_date_string (string))
renvoie la différence en jours entre les deux dates données de type int32.
Exemples
Si mylink.mysourcedate
contient la date 18-08-1958 et mylink.mygivendate
la date 18-08-2008, les deux fonctions suivantes sont équivalentes et renvoient la valeur entière 18263.
ds.DaysSinceFromDate(mylink.mygivendate, mylink.mysourcedate)
ds.DaysSinceFromDate("2008-08-18","1958-08-18")
DaysSinceFromDate2
Prend une date donnée de type date et une date source de type date et renvoie le nombre de jours entre la date source et la date donnée.
Syntaxe
ds.DaysSinceFromDate2(given_date (date), source_date_object (date))
retourne : la différence en nombre de jours, au format int32, entre les deux dates indiquées.
Exemples
Si mylink.mysourcedate
contient la date 18-08-1958 et mylink.mygivendate
la date 18-08-2008, les deux fonctions suivantes sont équivalentes et renvoient la valeur entière 18263.
ds.DaysSinceFromDate2(mylink.mygivendate, mylink.mysourcedate)
ds.DaysSinceFromDate2("2008-08-18","1958-08-18")
DaysInMonth
Renvoie le nombre de jours du mois dans la date de base spécifiée.
Syntaxe
ds.DaysInMonth(basedate (date))
retourne : le nombre de jours du mois au format int32.
Exemples
Si mylink.mysourcedate
contient la date 18-08-1958, les deux fonctions suivantes sont équivalentes et renvoient la valeur entière 31.
ds.DaysInMonth(mylink.mysourcedate)
ds.DaysInMonth("1958-08-18")
DaysInYear
Renvoie le nombre de jours de l'année dans la date de base spécifiée.
Syntaxe
ds.DaysInYear(basedate (date))
retourne : le nombre de jours de l'année au format int32.
Exemples
Si mylink.mysourcedate contient la date 2012-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur entière 366.
ds.DaysInYear(mylink.mysourcedate)
ds.DaysInYear("2012-08-18")
Si mylink.mysourcedate contient la date 2011-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur entière 365.
ds.DaysInYear(mylink.mysourcedate)
ds.DaysInYear("2011-08-18")
DateOffsetByDays
Renvoie le décalage de date spécifié par le nombre de jours indiqué. La valeur de décalage peut être positive, négative ou égale à zéro.
Syntaxe
ds.DateOffsetByDays(basedate (date), dayoffset (int32))
retourne : l'objet date décalé du nombre de jours indiqué.
Exemples
Si mylink.basedate
contient 2011-08-18 et mylink.dayoffset
contient la valeur 2, les deux fonctions suivantes sont équivalentes et renvoient la date 2011-08-20.
ds.DateOffsetByDays("2011-08-18", 2)
ds.DateOffsetByDays(mylink.basedate, mylink.dayoffset)
Si mylink.basedate contient 2011-08-18 et que mylink.dayoffset contient la valeur -31, les deux fonctions suivantes sont équivalentes et renvoient la date 2011-07-18.
ds.DateOffsetByDays("2011-08-18", -31)
ds.DateOffsetByDays(mylink.basedate, mylink.dayoffset)
HoursFromTime
Renvoie la partie heures d'une heure.
Syntaxe
ds.HoursFromTime(time (time))
retourne : la valeur des heures au format int8.
Exemples
Si mylink.mytime
contient l'heure 22:30:00, les deux fonctions suivantes sont équivalentes et renvoient la valeur de l'entier 22.
ds.HoursFromTime(mylink.mytime)
ds.HoursFromTime("22:30:00")
JulianDayFromDate
Renvoie un numéro de jour julien à partir de la date spécifiée.
Syntaxe
ds.JulianDayFromDate(time (time))
retourne : le nombre de jours julien, au format int32, de la date spécifiée.
Exemples
Si mylink.mydate
contient la date 2008-05-27, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2454614.
ds.JulianDayFromDate("2008-05-27")
ds.JulianDayFromDate(mylink.mydate)
MicroSecondsFromTime
Renvoie la partie microsecondes d'une heure.
Syntaxe
ds.MicroSecondsFromTime(time (time))
retourne : la valeur des microsecondes de l'heure, au format int32.
Exemples
Si mylink.mytime
contient l'heure 22 :30:00.32, la fonction suivante renvoie la valeur 320000 :
ds.MicroSecondsFromTime(mylink.mytime)
MidnightSecondsFromTime
Renvoie le nombre de secondes entre minuit et l'heure spécifiée.
Syntaxe
ds.MidnightSecondsFromTime(time (time))
renvoie la seconde valeur de minuit à l'heure, au format int8 .
Exemples
Si mylink.mytime
contient l'heure 00:30:52, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1852 :
ds.MidnightSecondsFromTime("00:30:52")
ds.MidnightSecondsFromTime(mylink.mytime)
MinutesFromTime
Renvoie la partie minutes d'une heure.
Syntaxe
ds.MinutesFromTime(time (time))
renvoie la valeur en minutes de l'heure, au format int8 .
Exemples
Si mylink.mytime
contient l'heure 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient la valeur 30 :
ds.MinutesFromTime("22:30:52")
ds.MinutesFromTime(mylink.mytime)
MonthDayFromDate
Renvoie le jour du mois à partir de la date spécifiée.
Syntaxe
ds.MonthDayFromDate(date (date))
renvoie: le jour du mois à partir de la date indiquée au format int8 .
Exemples
Si mylink.mydate
contient la date 2008-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur 18 :
ds.MonthDayFromDate("2008-08-18")
ds.MonthDayFromDate(mylink.mydate)
MonthFromDate
Renvoie le numéro du mois à partir de la date spécifiée.
Syntaxe
ds.MonthFromDate(date (date))
renvoie le numéro du mois au format int8.
Exemples
Si mylink.mydate
contient la date 18-08-2008, les deux fonctions suivantes renvoient la valeur 8:
ds.MonthFromDate("2008-08-18")
ds.MonthFromDate(mylink.mydate)
WeekdayFromDate
Renvoie le numéro de jour de la semaine depuis la date indiquée. Vous pouvez spécifier le jour qui est considéré comme le premier de la semaine, et s'il n'est pas spécifié, il s'agit du dimanche par défaut.
Syntaxe
ds.WeekdayFromDate(date (date), [origin_day (string)])
renvoie le jour de la semaine depuis la date indiquée au format int8 .
Exemples
Si mylink.mydate
contient la date 2008-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1 :
ds.WeekdayFromDate("2008-08-18")
ds.WeekdayFromDate(mylink.mydate)
Si mylink.mydate
contient la date 18-08-2008 et que mylink.origin_day
contient "samedi", les fonctions suivantes sont équivalentes et renvoient la valeur 2:
ds.WeekdayFromDate("2008-08-18", "saturday")
ds.WeekdayFromDate("2008-08-18", "sat")
ds.WeekdayFromDate(mylink.mydate, mylink.origin_day)
NextWeekdayFromDate
Renvoie la date du jour de la semaine spécifié le plus tôt possible après la date source. Le jour de la semaine est indiqué comme nom complet, par exemple, le jeudi, ou une abréviation de trois lettres, par exemple, "jeu".
Syntaxe
ds.NextWeekdayFromDate(sourcedate (date), day_of_week (string))
retourne : le jour du mois de la date fournie en entrée.
Exemples
Si mylink.mysourcedate
contient la date 18-08-2008 et que le jour de la semaine indiqué est jeudi, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2008-08-21:
ds.NextWeekdayFromDate("2008-08-18", "thursday")
ds.NextWeekdayFromDate(mylink.mysourcedate, "thu")
NthWeekdayFromDate
Renvoie la date du décalage du jour de la semaine spécifié par le nombre de semaines indiqué à partir de la date source. Le jour de la semaine est indiqué sous forme de nom complet, par exemple, jeudi, ou d'une abréviation de trois lettres, par exemple, jeu. Les valeurs de décalage peuvent être positives, négatives ou nulles.
Syntaxe
ds.NthWeekdayFromDate(basedate (date), day_of_week (string), week_offset (int32))
retourne : la date du jour de la semaine spécifié décalé du nombre de semaines indiqué par rapport à la date fournie.
Exemples
Si mylink.mydate
contient la date 2009-08-18 et que le jeudi est indiqué avec un décalage de 1, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2009-08-20. La première occurrence d'un jeudi est retournée. Dans l'exemple suivant, le jeudi arrive au cours de la même semaine que la date 18-08-2009. La date 18-08-2009 est un jeudi.
ds.NthWeekdayFromDate("2009-08-18", "thursday", 1)
ds.NthWeekdayFromDate(mylink.mydate, "thu", 1)
Si 'mylink.mydate
contient la date 2009-08-18 et que le jeudi est spécifié avec un décalage de -2, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2009-08-06. La date retournée est celle de deux jeudis en arrière par rapport à la date source.
ds.NthWeekdayFromDate("2009-08-18", "thursday", -2)
ds.NthWeekdayFromDate(mylink.mydate, "thu", -2)
PreviousWeekdayFromDate
Renvoie la date du jour de la semaine spécifié qui est la plus récente avant la date source. Le jour de la semaine est indiqué comme nom complet, par exemple, le jeudi, ou une abréviation de trois lettres, par exemple, "jeu".
Syntaxe
ds.PreviousWeekdayFromDate(sourcedate (date), day_of_week (string))
retourne : la date du jour de la semaine spécifié le plus récent qui soit antérieur à la date fournie.
Exemples
Si mylink.mysourcedate
contient la date 18-08-2008 et que Thursday est spécifié, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2008-08-14:
ds.PreviousWeekdayFromDate("2008-08-18", "thursday")
ds.PreviousWeekdayFromDate(mylink.mysourcedate, "thu")
SecondsFromTime
Renvoie la seconde partie d'une heure.
Syntaxe
ds.SecondsFromTime(time (time))
renvoie la seconde valeur de l'heure au format dfloat.
Exemples
Si mylink.mytime
contient l'heure 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient la valeur 52 :
ds.SecondsFromTime("22:30:52")
ds.SecondsFromTime(mylink.mytime)
SecondsSinceFromTimestamp
Renvoie le nombre de secondes entre deux objets d'horodatage.
Syntaxe
ds.SecondsSinceFromTimestamp(timestamp (timestamp), timestamp_base_string (string))
renvoie la seconde valeur au format dfloat.
Exemples
Si mylink.mytimestamp
contient l'horodatage 2008-08-18 22:30:52 et que mylink.mytimestamp_base
contient l'horodatage 2008-08-19 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient la valeur -86400:
ds.SecondsSinceFromTimestamp("2008-08-18 22:30:52","2008-08-19 22:30:52")
ds.SecondsSinceFromTimestamp(mylink.mytimestamp, mylink.mytimestamp_base)
SecondsSinceFromTimestamp2
Renvoie le nombre de secondes entre deux objets d'horodatage.
Syntaxe
ds.SecondsSinceFromTimestamp2(timestamp (timestamp), timestamp_base_object (timestamp))
renvoie la seconde valeur au format dfloat.
Exemples
Si mylink.mytimestamp
contient l'horodatage 2008-08-18 22:30:52 et que mylink.mytimestamp_base
contient l'horodatage 2008-08-19 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient la valeur -86400:
ds.SecondsSinceFromTimestamp2("2008-08-18 22:30:52","2008-08-19 22:30:52")
ds.SecondsSinceFromTimestamp2(mylink.mytimestamp, mylink.mytimestamp_base)
Durée
Renvoie une valeur de chaîne qui exprime l'heure interne du jour. Le temps interne correspond au nombre de secondes écoulées depuis minuit jusqu'au millième de seconde le plus proche (heure locale).
Syntaxe
ds.Time()
renvoie: l'heure résultante de la chaîne de format.
Exemples
Si l'heure en cours est 11:17:43:19, le code suivant renvoie 40663.842:
ds.Time()
TimeDate
Renvoie la date et l'heure système sous la forme d'une chaîne formatée.
Syntaxe
ds.TimeDate()
retourne : l'heure et la date du système au format chaîne.
TimeFromComponents
Renvoie une heure de type date à partir des heures, minutes, secondes et microsecondes indiquées, sous la forme int32.
Syntaxe
ds.TimeFromComponents(hours (int32), minutes (int32), seconds (int32), microseconds (int32))
renvoie: l'heure dans le type de date.
Exemples
Si mylink.hourcol
contient la valeur 10, mylink.mincol contient la valeur 12, mylink.seccol contient la valeur 2 et mylink.mseccol
contient 0, les deux fonctions suivantes sont équivalentes et renvoient l'heure 10:12:02:
ds.TimeFromComponents(10, 12, 2, 0)
ds.TimeFromComponents(mylink.hourcol, mylink.mincol, mylink.seccol, mylink.mseccol)
TimeFromMidnightSeconds
Renvoie l'heure système au format horaire.
Syntaxe
ds.TimeFromMidnightSeconds(seconds (time))
renvoie: nombre de secondes écoulées depuis minuit au format horaire.
Exemples
Si mylink.mymidnightseconds
contient la valeur 240, les deux fonctions suivantes sont équivalentes et renvoient la valeur 00:04:00 :
ds.TimeFromMidnightSeconds(240)
ds.TimeFromMidnightSeconds(mylink.mymidnightseconds)
TimeOffsetByComponents
Renvoie l'heure, avec les décalages appliqués à partir de l'heure de base avec les décalages d'heure, de minute et de seconde, sous forme de valeurs distinctes. Le décalage des secondes peut inclure des secondes partielles.
Syntaxe
ds.TimeOffsetByComponents(basetime (time), hour_offset (int32), minute_offset (int32), second_offset (dfloat))
retourne : l'heure décalée des valeurs spécifiées.
Exemples
Si mylink.basetime
contient 14:05:29 et mylink.houros
contient la valeur 2, mylink.minos
contient la valeur 0, mylink.secos
contient la valeur 20, alors les deux fonctions suivantes sont équivalentes, et renvoient l'heure 16:05:49.
ds.TimeOffsetByComponents("14:05:29", 2, 0, 20)
ds.TimeOffsetByComponents(mylink.basetime, mylink.houros, mylink.minos, mylink.secos)
TimeOffsetBySeconds
Renvoie l'heure spécifiée, avec les décalages appliqués à partir de l'heure de base pour les secondes. Le décalage des secondes peut inclure des secondes partielles.
Syntaxe
ds.TimeOffsetBySeconds(basetime (time), second_offset (dfloat))
renvoie: le temps avec les secondes décalées de la valeur spécifiée.
Exemples
Si mylink.basetime
contient 14:05:29.30 et mylink.secos
contient la valeur 2.5, les deux fonctions suivantes sont équivalentes et renvoient l'heure 14:05:31.
ds.TimeOffsetBySeconds("14:05:29.30", 2.5)
ds.TimeOffsetBySeconds(mylink.basetime, mylink.secos)
TimestampFromDateTime
Renvoie un horodatage à partir de la date et de l'heure indiquées.
Syntaxe
ds.TimestampFromDateTime(date (date), time (time))
retourne : l'horodate correspondant aux date et heure fournies en entrée.
Exemples
Si mylink.mydate
contient la date 18-08-2008 et mylink.mytime
l'heure 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 18-08-2008 22:30:52:
ds.TimestampFromDateTime("2008-08-18","22:30:52")
ds.TimestampFromDateTime(mylink.mydate, mylink.mytime)
TimestampFromSecondsSince
Renvoie un horodatage déduit du nombre de secondes à partir de l'objet d'horodatage de base.
Syntaxe
ds.TimestampFromSecondsSince(seconds (dfloat), [base_timestamp_object (string)])
renvoie: horodatage dérivé de la valeur donnée en secondes.
Exemples
Si mylink.myseconds
contient la valeur 2563 et que mylink.timestamp_base
contient l'horodatage 2008-08-18 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 2008-08-18 23:13:35:
ds.TimestampFromSecondsSince(2563,"2008-08-18 22:30:52")
ds.TimestampFromSecondsSince(mylink.myseconds,mylink.timestamp_base)
TimestampFromSecondsSince2
Renvoie un horodatage déduit du nombre de secondes à partir de l'objet d'horodatage de base.
Syntaxe
ds.TimestampFromSecondsSince2(seconds (dfloat), [base_timestamp_object (timestamp)])
renvoie: horodatage dérivé de la valeur donnée en secondes.
Exemples
Si mylink.myseconds
contient la valeur 2563 et que mylink.timestamp_base
contient l'horodatage 2008-08-18 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 2008-08-18 23:13:35:
ds.TimestampFromSecondsSince2(2563,"2008-08-18 22:30:52")
ds.TimestampFromSecondsSince2(mylink.myseconds, mylink.timestamp_base)
TimestampFromTimet
Renvoie un horodatage à partir de la valeur de chaîne UNIX time_t
indiquée.
Syntaxe
ds.TimestampFromTimet(timet_string (int32))
renvoie: horodatage dérivé de la valeur donnée en secondes.
Exemples
Si mylink.mytimet
contient la valeur 1234567890, les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 2009-02-13 23:31:30:
ds.TimestampFromTimet(1234567890)
ds.TimestampFromTimet(mylink.mytimet)
TimestampFromTime2
Renvoie un horodatage à partir des objets d'heure et d'horodatage indiqués. La valeur de l'objet d'heure remplace l'heure dans l'objet d'horodatage et seule la partie date de l'horodatage est utilisée.
Syntaxe
ds.TimestampFromTime2(time (time), timestamp (timestamp))
retourne : l'horodate correspondant aux objets heure et horodate fournis en entrée.
Exemples
Si mylink.mytime
contient l'heure 12:03:22 et que mylink.mytimestamp
contient l'horodatage 2008-08-18 22:30:52, les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 2008-08-18 12:03:22:
ds.TimestampFromTime2("12:03:22", "2008-08-18 22:30:52")
ds.TimestampFromTime2(mylink.mytime, mylink.mytimestamp)
TimestampOffsetByComponents
Renvoie l'horodatage à partir de l'horodatage de base avec les décalages d'année, de mois, de jour, d'heure, de minutes et de secondes indiqués sous la forme de valeurs séparées. Le décalage des secondes peut inclure des microsecondes.
Syntaxe
ds.TimestampOffsetByComponents(basetimestamp (timestamp), year_offset (int32), month_offset (int32), dayofmonth_offset (int32), hour_offset (int32), minute_offset (int32), second_offset (dfloat))
retourne : l'horodate décalée des valeurs spécifiées.
Exemples
Si 'mylink.basetimestamp
contient 2009-08-18 14:05:29 et 'mylink.yearos
contient 0, 'mylink.monthos
contient la valeur 2, 'mylink.dayos
contient la valeur -4, 'mylink.houros
contient la valeur 2, 'mylink.minos
contient la valeur 0, 'mylink.secos
contient la valeur 20, alors les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 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
Renvoie l'horodatage à partir de l'horodatage de base avec le décalage de secondes. Le décalage des secondes peut inclure des microsecondes.
Syntaxe
ds.TimestampOffsetBySeconds(basetimestamp (timestamp), second_offset (dfloat))
renvoie: le décalage d'horodatage par les valeurs spécifiées au format d'horodatage.
Exemples
Si mylink.basetimestamp
contient 2009-08-18 14:05:29 et que mylink.secos
contient la valeur 32760, les deux fonctions suivantes sont équivalentes et renvoient l'horodatage 2009-08-18 23:11:29:
ds.TimestampOffsetBySeconds("2009-08-18 14:05:29", 32760)
ds.TimestampOffsetBySeconds(mylink.basetimestamp, mylink.secos)
TimetFromTimestamp
Renvoie une valeur time_t UNIX à partir de l'horodatage indiqué.
Syntaxe
ds.TimetFromTimestamp(timestamp (timestamp))
renvoie: le time_t UNIX en fonction de l'horodatage indiqué au format int32 .
Exemples
Si mylink.mytimestamp
contient la valeur 2009-02-13 23:31:30, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1234567890:
ds.TimetFromTimestamp("2009-02-13 23:31:30")
ds.TimetFromTimestamp(mylink.mytimestamp)
YeardayFromDate
Renvoie le numéro du jour de l'année à partir de la date spécifiée.
Syntaxe
ds.YeardayFromDate(date (date))
retourne : le numéro du jour au format int16.
Exemples
Si mylink.mydate
contient la date 2008-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur 231 :
ds.YeardayFromDate("2008-08-18")
ds.YeardayFromDate(mylink.mydate)
YearFromDate
Renvoie l'année à partir de la date spécifiée.
Syntaxe
ds.YearFromDate(date (date))
retourne : le numéro de l'année au format int16.
Exemples
Si mylink.mydate
contient la date 2008-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2008 :
ds.YearFromDate("2008-08-18")
ds.YearFromDate(mylink.mydate)
YearweekFromDate
Renvoie le numéro de semaine dans l'année à partir de la date spécifiée.
Syntaxe
ds.YearweekFromDate(date (date))
retourne : le numéro de la semaine au format int16.
Exemples
Si mylink.mydate
contient la date 2008-08-18, les deux fonctions suivantes sont équivalentes et renvoient la valeur 33 :
ds.YearweekFromDate("2008-08-18")
ds.YearweekFromDate(mylink.mydate)
Mois
Renvoie le mois en cours.
Syntaxe
ds.Month()
renvoie: le mois en cours.
Exemples
Le code suivant renvoie le mois en cours au format int.
ds.Month()
Année
Renvoie l'année en cours.
Syntaxe
ds.Year()
renvoie: l'année en cours au format int.
Exemples
Le code suivant renvoie l'année en cours.
ds.Year()
Fonctions de l'opérateur
Les fonctions d'opérateur comparent deux objets et renvoient une valeur booléenne (true ou false):
Egal à
Compare si deux objets sont identiques.
Syntaxe
ds.EQ(object1 (any), object2 (any))
renvoie: true si la valeur de l'objet est égale, false dans le cas contraire.
Exemples
Les expressions suivantes renvoient la valeur true:
ds.EQ(null,null)
ds.EQ(true,true)
ds.EQ("1",1)
ds.EQ("1",1.0)
Les expressions suivantes renvoient la valeur false:
ds.EQ(1,null)
ds.EQ(false,true)
ds.EQ("a","b")
Différent de
Compare si deux objets ne sont pas identiques.
Syntaxe
ds.NE(object1 (any), object2 (any))
renvoie: true si la valeur de l'objet n'est pas égale, false dans le cas contraire.
Exemples
Les expressions suivantes renvoient la valeur true:
ds.NE(1,null)
ds.NE(true,false)
ds.NE(false,true)
ds.NE("a","b")
Les expressions suivantes renvoient la valeur false:
ds.NE(null,null)
ds.NE(true,true)
ds.NE(false,false)
ds.NE("a","a")
Inférieur à
Prend deux objets comme paramètres et renvoie la valeur true si le premier objet est inférieur au second.
Syntaxe
ds.LT(object1 (any), object2 (any))
renvoie: true si le premier objet est inférieur au second, false dans le cas contraire.
Exemples
Les expressions suivantes renvoient la valeur true:
ds.LT("a","b")
Les expressions suivantes renvoient la valeur false:
ds.LT("a","a")
ds.LT("a","b")
ds.LT("202310071855","20380727")
Supérieur à
Prend deux objets en tant que paramètres et renvoie la valeur true si le premier objet est supérieur au second.
Syntaxe
ds.GT(object1 (any), object2 (any))
renvoie: true si le premier objet est supérieur au second, false dans le cas contraire.
Exemples
Les expressions suivantes renvoient la valeur true:
ds.GT("b","a")
Les expressions suivantes renvoient la valeur false:
ds.GT("a","a")
ds.GT("5.12","5.123")
Greater than or equal
Prend deux objets en tant que paramètres et renvoie la valeur true si le premier objet est supérieur ou égal au second.
Syntaxe
ds.GE(object1 (any), object2 (any))
renvoie: true si le premier objet est supérieur ou égal au second, false dans le cas contraire.
Exemples
Les expressions suivantes renvoient la valeur true:
ds.GE(2, 1)
ds.GE("a","a")
Less than or equal
Prend deux objets comme paramètres et renvoie la valeur true si le premier objet est inférieur ou égal au second.
Syntaxe
ds.LE(object1 (any), object2 (any))
renvoie: true si le premier objet est inférieur ou égal au second, false dans le cas contraire.
Exemples
Les expressions suivantes renvoient la valeur true:
ds.GE(1, 2)
ds.LE("a","a") == true
Fonctions logiques
Les fonctions logiques exécutent des opérations bit à bit.
BitAnd
Retourne le bit à bit AND
des deux arguments entiers.
Syntaxe
ds.BitAnd(number1 (uint64), number2 (uint64))
Renvoie : bit à bit AND
au format uint64.
Exemples
Si mylink.mynumber1
contient le numéro 352 et que mylink.mynumber2 contient le numéro 400, les deux fonctions suivantes sont équivalentes et renvoient la valeur 256 :
ds.BitAnd(352,400)
ds.BitAnd(mylink.mynumber1, mylink.mynumber2)
BitCompress
Renvoie l'entier constitué à partir de l'argument de chaîne, qui contient une représentation binaire de "1"s et "0"s.
Syntaxe
ds.BitCompress(string (string))
renvoie: nombre résultant représenté par des binaires au format uint64.
Exemples
Si mylink.mynumber1
contient la chaîne "0101100000", les deux fonctions suivantes renvoient toutes les deux le nombre 352.
ds.BitCompress("0101100000")
ds.BitCompress(mylink.mynumber)
BitExpand
Renvoie une chaîne contenant la représentation binaire dans "1"s et "0"s de l'entier indiqué.
Syntaxe
ds.BitExpand(number (uint64))
retourne : une chaîne contenant la représentation binaire de l'entier.
Exemples
Si mylink.mynumber1
contient le nombre 352, les deux fonctions suivantes sont équivalentes et renvoient la chaîne "101100000".
ds.BitExpand(352)
ds.BitExpand(mylink.mynumber)
BitOr
Retourne le bit à bit OR
des deux arguments entiers.
Syntaxe
ds.BitOr(number1 (uint64), number2 (uint64))
Renvoie : OR
bit par bit des deux arguments entiers.
Exemples
Si mylink.mynumber1
contient le numéro 352 et que mylink.mynumber2 contient le numéro 400, les deux fonctions suivantes sont équivalentes et renvoient la valeur 496 :
ds.BitOr(352,400)
ds.BitOr(mylink.mynumber1, mylink.mynumber2)
BitXOr
Retourne le bit à bit Exclusive OR
des deux arguments entiers.
Syntaxe
ds.BitXOr(number1 (uint64), number2 (uint64))
Renvoie : le Exclusive OR
au format uint64.
Exemples
Si mylink.mynumber1
contient le numéro 352 et que mylink.mynumber2
contient le numéro 400, les deux fonctions suivantes sont équivalentes et renvoient la valeur 240 :
ds.BitXOr(352,400)
ds.BitXOr(mylink.mynumber1, mylink.mynumber2)
Non
Renvoie le complément de la valeur logique d'une expression. Si la valeur de l'expression est true, la fonction Not
renvoie la valeur false (0). Si la valeur de l'expression est false, la fonction NOT
renvoie la valeur true (1). Une expression numérique qui a pour résultat 0 est une valeur logique false. Une expression numérique ayant un autre résultat, différent de la valeur NULL, est une valeur logique true. Une chaîne vide a pour résultat logique la valeur false. Toutes les autres expressions de chaîne, y compris les chaînes incluant une chaîne vide, des espaces, ou le nombre 0 et des espaces, ont pour résultat logique la valeur true.
Syntaxe
ds.Not()
Renvoie : la valeur de complement
au format int8.
Exemples
Si mylink.myexpression
contient l'expression 5-5, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1 :
ds.Not(5-5)
ds.Not(mylink.myexpression)
Si mylink.myexpression
contient l'expression 5 + 5, les deux fonctions suivantes sont équivalentes et renvoient la valeur 0 :
ds.Not(5+5)
ds.Not(mylink.myexpression)
SetBit
Renvoie un entier avec des bits spécifiques définis sur un état spécifique, où origfield
est la valeur d'entrée pour effectuer l'action sur, bitlist
est une chaîne contenant une liste de numéros de bits séparés par des virgules pour définir l'état de, et bitstate
est 1 ou 0, ce qui indique l'état à définir pour ces bits.
Syntaxe
ds.SetBit(origfield (uint64), bitlist (string), bitstate (uint8))
retourne : le nombre, au format uint64, avec les bits désignés mis à l'état spécifié.
Exemples
Si mylink.origfield
contient le numéro 352, mylink.bitlist
contient la liste "2,4,8", et mylink.bitstate
contient la valeur 1, les deux fonctions suivantes sont équivalentes et renvoient la valeur 494 :
ds.SetBit(356,"2,4,8",1)
ds.SetBit(mylink.origfield, mylink.bitlist, mylink.bitstate)
Oui
Renvoie la valeur vraie de 1.
Syntaxe
ds.True()
renvoie: l'entier 1.
Exemples
Le code suivant renvoie 1:
ds.True()
Faux
Renvoie la valeur false de 0.
Syntaxe
ds.False()
renvoie: l'entier 0.
Exemples
Le code suivant renvoie 0:
ds.False()
Fonctions Mathmatical
Les fonctions mathématiques exécutent des opérations mathématiques.
Abs
Renvoie la valeur absolue d'une expression numérique. La valeur absolue d'une expression est sa magnitude sans signe.
Syntaxe
ds.Abs(numeric_expression (int32))
retourne : la valeur absolue de l'expression numérique, au format dfloat.
Exemples
Si mylink.number1
contient le nombre 12 et que mylink.number2
contient le numéro 34, les deux fonctions suivantes sont équivalentes et renvoient le numéro 22 :
ds.Abs(12-34)
ds.Abs(mylink.mynumber1-mylink.mynumber2)
Si mylink.number1
contient le nombre 34 et que mylink.number2
contient le numéro 12, les deux fonctions suivantes sont équivalentes et renvoient le numéro 22 :
ds.Abs(34-12)
ds.Abs(mylink.mynumber1-mylink.mynumber2)
Acos
Calcule l'arc cosinus trigonométrique d'une expression. L'expression doit être une valeur numérique. Le résultat est exprimé en radians.
Syntaxe
ds.Acos(numeric_expression (dfloat))
retourne : l'angle en radians résultant, au format dfloat.
Exemples
Si mylink.number
contient le nombre 0.707106781, les deux fonctions suivantes sont équivalentes et renvoient la valeur 0.7854:
ds.Acos(0.707106781)
ds.Acos(mylink.mynumber)
ACOS
Renvoie l'arc-cosinus trigonométrique de l'expression. L'entrée doit être une valeur numérique. Le résultat est exprimé en degrés.
Syntaxe
ds.ACOS(expression (float64))
renvoie l'angle en degrés, au format float64 .
Exemples
Le code suivant renvoie la valeur 45:
ds.ACOS(0.707106781)
Asin
Calcule l'arc sinus trigonométrique d'une expression. L'expression doit être une valeur numérique. Le résultat est exprimé en radians.
Syntaxe
ds.Asin(numeric_expression (dfloat))
retourne : l'angle en radians résultant, au format dfloat.
Exemples
Si mylink.number
contient le nombre 0.707106781, les deux fonctions suivantes sont équivalentes et renvoient la valeur 0.7854:
ds.Asin(0.707106781)
ds.Asin(mylink.mynumber)
ASIN
Renvoie le sinus trigonométrique d'une expression. L'entrée est l'angle exprimé en degrés.
Syntaxe
ds.ASIN(expression(float64))
renvoie l'angle en degrés, au format float64 .
Exemples
Le code suivant renvoie la valeur 45:
ds.ASIN(0.707106781)
Atan
Calcule l'arc tangente trigonométrique d'une expression. L'expression doit être une valeur numérique. Le résultat est exprimé en radians.
Syntaxe
ds.Atan(numeric_expression (dfloat))
retourne : l'angle en radians résultant, au format dfloat.
Exemples
Si mylink.number
contient le nombre 135, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1.5634, qui correspond à l'angle ayant une arc tangente de 135:
ds.Atan(135)
ds.Atan(mylink.mynumber)
ATAN
Renvoie l'arc-tangente trigonométrique de l'expression. L'entrée doit être une valeur numérique. Le résultat est exprimé en degrés.
Syntaxe
ds.ATAN(expression(float64))
renvoie: l'angle en degrés, au format dfloat.
Exemples
Le code suivant renvoie la valeur 45:
ds.ATAN(1)
Atan2
Calcule l'arc tangente trigonométrique des deux entrées en utilisant leurs signes pour déterminer le quadrant du résultat. Les entrées doivent être des valeurs numériques. Le résultat est exprimé en radians.
Syntaxe
ds.Atan2(numeric_expression (dfloat, dfloat))
retourne : l'angle en radians résultant, au format dfloat.
Exemples
Si mylink.number1
contient le nombre 10.0 et mylink.number2
contient le nombre -10.0, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2.3562:
ds.Atan2(10.0, -10.0)
ds.Atan2(mylink.mynumber1, mylink.mynumber2)
Ceil
Calcule la plus petite valeur entière supérieure ou égale à la valeur décimale spécifiée.
Syntaxe
ds.Ceil(number (dfloat))
retourne : la plus petite valeur entière, au format int32.
Exemples
Si mylink.number
contient le numéro 2355.66, les deux fonctions suivantes sont équivalentes et renvoient la valeur 2356 :
ds.Ceil(2355.66)
ds.Ceil(mylink.mynumber)
Cos
Calcule le cosinus trigonométrique d'une expression. L'expression doit être une valeur numérique. L'expression doit générer une valeur numérique qui est l'angle en radians.
Syntaxe
ds.Cos(radians (dfloat))
retourne : le cosinus de l'angle en radians, au format dfloat.
Exemples
Si mylink.number
contient le numéro 0.785398, les deux fonctions suivantes sont équivalentes et renvoient la valeur 0.7071 :
ds.Cos(0.785398)
ds.Cos(mylink.mynumber)
COS
Renvoie le cosinus trigonométrique d'un angle. L'expression est un angle sous forme de valeur en degrés.
Syntaxe
ds.COS(expression(float64))
renvoie l'angle en degrés, au format float64 .
Exemples
Le code suivant renvoie la valeur 0.7071:
ds.COS(45)
Cosh
Calcule le cosinus hyperbolique d'une expression. L'expression doit être une valeur numérique.
Syntaxe
ds.Cosh(number (dfloat))
retourne : le cosinus résultant, au format dfloat.
Exemples
Si mylink.number
contient le numéro 2, les deux fonctions suivantes sont équivalentes et renvoient la valeur 3.7622 :
ds.Cosh(2)
ds.Cosh(mylink.mynumber)
Div
Calcule le cosinus hyperbolique d'une expression. L'expression doit être une valeur numérique.
Syntaxe
ds.Div(dividend (dfloat), divisor (dfloat))
retourne : le cosinus résultant, au format dfloat.
Exemples
Si mylink.dividend
contient le nombre 100, et mylink.divisor
contient le numéro 25, les deux fonctions suivantes sont équivalentes et renvoient la valeur 4 :
ds.Div(100,25)
ds.Div(mylink.dividend, mylink.divisor)
Exp
Calcule le résultat de la base E élevée à la puissance désignée par la valeur de l'expression. La valeur de E est d'environ 2,71828. L'expression doit avoir pour résultat une valeur numérique.
Syntaxe
ds.Exp(number (dfloat))
Renvoie : le résultat E obtenu à la puissance spécifiée au format dfloat.
Exemples
Si mylink.number
contient le numéro 5, les deux fonctions suivantes sont équivalentes et renvoient la valeur 54.5982 :
ds.Exp(5-1)
ds.Exp(mylink.number-1)
Fabs
Calcule la valeur absolue de la valeur flottante spécifiée.
Syntaxe
ds.Fabs(number (dfloat))
retourne : la valeur absolue du nombre à virgule flottante (float).
Exemples
Si mylink.number
contient le numéro -26.53, les deux fonctions suivantes sont équivalentes et renvoient la valeur 26.53 :
ds.Fabs(-26.53)
ds.Fabs(mylink.number)
Etage
Calcule la plus grande valeur entière inférieure ou égale à la valeur décimale spécifiée.
Syntaxe
ds.Floor(number (dfloat))
renvoie: le plus grand entier inférieur ou égal à la valeur décimale au format int32 .
Exemples
Si mylink.number
contient le numéro 203.25, les deux fonctions suivantes sont équivalentes et renvoient la valeur 203 :
ds.Floor(203.25)
ds.Floor(mylink.number)
Ldexp
Renvoie une valeur dfloat en multipliant la mantisse par 2 élevée à la puissance de l'exposant.
Syntaxe
ds.Ldexp(mantissa (dfloat), exponent (int32))
retourne : la mantisse résultante au format dfloat.
Exemples
Si mylink.mantissa
contient le nombre 2 et que mylink.exponent
contient le numéro 3, les deux fonctions suivantes sont équivalentes et renvoient la valeur 16 :
ds.Ldexp(2,3)
ds.Ldexp(mylink.mantissa, mylink.exponent)
Llabs
Calcule la valeur absolue de la valeur entière spécifiée.
Syntaxe
ds.Llabs(number (integer))
retourne : la valeur absolue du nombre entier fourni en entrée, sous la forme d'un entier non signé.
Exemples
Si mylink.number
contient le nombre -26, les deux fonctions suivantes sont équivalentes et renvoient la valeur 26.
ds.Llabs(-26)
ds.Llabs(mylink.number)
niveau n
Calcule le logarithme naturel d'une expression en base E. La valeur de E est d'environ 2,71828. L'expression doit avoir pour résultat une valeur numérique supérieure à 0.
Syntaxe
ds.Ln(number (dfloat))
Renvoie : le logarithme résultant de l'expression en base E.
Exemples
Si mylink.number
contient le nombre 6, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1.7918:
ds.Ln(6)
ds.Ln(mylink.number)
Log10
Renvoie le logarithme en base 10 de la valeur spécifiée.
Syntaxe
ds.Log10(number (dfloat))
renvoie le logarithme de base 10 résultant au format dfloat.
Exemples
Si mylink.number
contient le nombre 6, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1.7782:
ds.Log10(6)
ds.Log10(mylink.number)
Maxi
Renvoie la valeur la plus élevée des deux valeurs d'argument.
Syntaxe
ds.Max(number1 (int32), number2(int32))
renvoie: le plus grand des deux nombres entiers au format int32 .
Exemples
Si mylink.number1
contient le numéro 6, et mylink.number1
contient le numéro 101, les deux fonctions suivantes sont équivalentes et renvoient la valeur 101 :
ds.Max(6,101)
ds.Max(mylink.number1, mylink.number2)
Min
Renvoie le minimum des deux valeurs d'argument.
Syntaxe
ds.Min(number1 (int32), number2(int32))
retourne : le plus petit des deux entiers.
Exemples
Si mylink.number1
contient le numéro 6, et mylink.number1
contient le numéro 101, les deux fonctions suivantes sont équivalentes et renvoient la valeur 6 :
ds.Min(6,101)
ds.Min(mylink.number1, mylink.number2)
Mod
Calcule le modulo (le reste) de deux expressions (dividende, diviseur).
Syntaxe
ds.Mod(dividend (int32), divisor (int32))
retourne : le modulo résultant au format int32.
Exemples
Si mylink.dividend
contient le nombre 115, et mylink.divisor
contient le numéro 25, les deux fonctions suivantes sont équivalentes et renvoient la valeur 15 :
ds.Mod(115,25)
ds.Mod(mylink.dividend, mylink.divisor)
Neg
Nie un nombre.
Syntaxe
ds.Neg(number (dfloat))
renvoie: le nombre négatif résultant au format dfloat.
Exemples
Si mylink.number
contient le numéro 123, les deux fonctions suivantes sont équivalentes et renvoient la valeur -123 :
ds.Neg(123)
ds.Neg(mylink.number)
Pwr
Calcule la valeur d'une expression lorsqu'elle est élevée à une puissance spécifiée (expression, puissance).
Syntaxe
ds.Pwr(expression (dfloat), power (dfloat))
renvoie: le nombre résultant qui est élevé à la puissance spécifiée au format dfloat.
Exemples
Si mylink.expression
contient le nombre 2, et que mylink.power contient le numéro 3, les deux fonctions suivantes sont équivalentes et renvoient la valeur 8 :
ds.Pwr(2,3)
ds.Pwr(mylink.expression, mylink.power)
Rand
Retourne un entier pseudo-aléatoire compris entre 0 et 232-1.
Syntaxe
ds.Rand()
retourne : l'entier aléatoire résultant au format uint32.
Exemples
Utilisez cette fonction pour générer un nombre pseudo-aléatoire :
ds.Rand()
Aléatoire
Retourne un entier pseudo-aléatoire compris entre 0 et 232-1.
Syntaxe
ds.Random()
retourne : l'entier aléatoire résultant au format uint32.
Exemples
Utilisez cette fonction pour générer un nombre aléatoire :
ds.Random()
Rnd
Génère tout entier aléatoire positif ou négatif ou 0. Prend le nombre total d'entiers comme entrée, y compris 0, à partir duquel le nombre aléatoire peut être sélectionné. Autrement dit, si n est la valeur de numeric_expression, le nombre aléatoire est généré à partir des nombres 0 à (n-1).
Syntaxe
ds.Rnd(numeric_expression (int))
renvoie un nombre aléatoire de 0 à (numeric_expression - 1)
au format int.
Exemples
Le code suivant renvoie un nombre aléatoire de 0 à 19.
ds.Rnd(20)
Sin
Calcule le sinus trigonométrique d'une expression. L'expression doit être une valeur numérique. L'expression doit générer une valeur numérique qui est l'angle en radians.
Syntaxe
ds.Sin(radians (dfloat))
retourne : le sinus résultant, au format dfloat.
Exemples
Si mylink.number
contient le numéro 0.785398, les deux fonctions suivantes sont équivalentes et renvoient la valeur 0.7071 :
ds.Sin(0.785398)
ds.Sin(mylink.mynumber)
SIN
Renvoie le sinus trigonométrique d'une expression. L'entrée est l'angle exprimé en degrés.
Syntaxe
ds.SIN(expression(float64))
renvoie: l'angle en degrés, au format dfloat.
Exemples
Le code suivant renvoie la valeur 0.7071:
ds.SIN(45)
Sinh
Calcule le sinus hyperbolique d'une expression. L'expression doit être une valeur numérique.
Syntaxe
ds.Sinh(number (dfloat))
retourne : le sinus résultant, au format dfloat.
Exemples
Si mylink.number
contient le nombre 2, les deux fonctions suivantes sont équivalentes et renvoient la valeur 3.6269:
ds.Sinh(2)
ds.Sinh(mylink.mynumber)
Racine carrée
Calcule la racine carrée d'un nombre.
Syntaxe
ds.Sqrt(number (dfloat))
retourne : la racine carrée du nombre au format dfloat.
Exemples
Si mylink.number
contient le numéro 450, les deux fonctions suivantes sont équivalentes et renvoient la valeur 21.2132 :
ds.Sqrt(450)
ds.Sqrt(mylink.mynumber)
tangente
Calcule la tangente trigonométrique d'une expression. L'expression doit générer une valeur numérique qui est l'angle en radians.
Syntaxe
ds.Tan(radians (dfloat))
retourne : la tangente résultante, au format dfloat.
Exemples
Si mylink.number
contient le nombre 0.7853981, les deux fonctions suivantes sont équivalentes et renvoient la valeur 1:
ds.Tan(0.7853981)
ds.Tan(mylink.mynumber)
TAN
Renvoie la fonction TAN pour renvoyer la tangente trigonométrique de l'entrée. L'entrée représente un angle exprimé en degrés.
Syntaxe
ds.TAN(expression(float64))
renvoie l'angle en degrés, au format float64 .
Exemples
Le code suivant renvoie la valeur 1:
ds.TAN(45)
ATAN
Renvoie l'arc-tangente trigonométrique de l'expression. L'entrée doit être une valeur numérique. Le résultat est exprimé en degrés.
Syntaxe
ds.ATAN(expression(float64))
renvoie l'angle en degrés, au format float64 .
Exemples
Le code suivant renvoie la valeur 45:
ds.ATAN(1)
Tanh
Calcule la tangente hyperbolique d'une expression. L'expression doit être une valeur numérique.
Syntaxe
ds.Tanh(number (dfloat))
retourne : la tangente résultante, au format dfloat.
Exemples
Si mylink.number
contient le numéro 2, les deux fonctions suivantes sont équivalentes et renvoient la valeur 0,964028 :
ds.Tanh(2)
ds.Tanh(mylink.mynumber)
Fonctions de nombre
Utilisez les fonctions de manipulation des nombres pour extraire la mantisse d'un nombre décimal ou en virgule flottante. La catégorie Numéro de l'éditeur d'expression contient également les fonctions de transtypage, que vous pouvez utiliser pour lancer des nombres sous forme de types de données double, flottant ou entier.
Les fonctions de transformateur AsDouble()
, AsFloat()
et AsInteger()
se comportent différemment des autres fonctions de conversion de données de transformateur lorsqu'elles sont utilisées dans des dérivations où le résultat est une chaîne. Le comportement est dû au fait que le compilateur du transformateur ne convertit pas les résultats de fonction de ces fonctions en chaîne.
AsDouble
Traite le nombre indiqué comme un double.
Syntaxe
ds.AsDouble(number (int, float and so on))
renvoie: le nombre au format double.
Exemples
Dans l'expression suivante, l'argument d'entrée mynumber
contient
un entier, mais la fonction produit un double en sortie. Si mylink.mynumber
contient la valeur 56, les deux fonctions suivantes sont équivalentes et renvoient la valeur 12.963:
ds.AsDouble(56/4.32)
ds.AsDouble(mylink.mynumber/4.32)
AsFloat
Traite le nombre indiqué comme une variable flottante.
Syntaxe
ds.AsFloat(number (int, double and so on))
retourne : le nombre au format float.
Exemples
Dans l'expression suivante, l'entrée mynumber
contient un entier, mais la fonction génère un nombre décimal. Si mylink.mynumber
contient la valeur 56, les deux fonctions suivantes sont équivalentes et renvoient la valeur 12.963:
ds.AsFloat(56/4.32)
ds.AsFloat(mylink.mynumber/4.32)
AsInteger
Traite le nombre indiqué comme un entier. Mais il y a une différence de comportement lorsqu'une décimale est affectée à un entier par rapport à une variable flottante ou double affectée à un entier. Si la conversion est d'un float ou un double en entier, il s'agit d'une simple affectation
à un entier. Dans le cas de la valeur décimale AsInteger()
, la fonction est démarrée et arrondit la sortie vers la valeur la plus proche.
Syntaxe
ds.AsInteger(number (float, double and so on))
retourne : le nombre au format entier (integer).
Exemples
Dans l'expression suivante, la valeur d'entrée 12.962963 est du type Double. La fonction produit un entier en sortie. Il s'agit donc d'une affectation simple à une fonction entière et renvoie la valeur 12:
ds.AsInteger(12.962963)
Dans l'expression suivante, les calculs similaires à (56/4.32) sont traités comme un type Décimal et l'appel de fonction AsInteger()
est lancé en arrondissant vers la valeur la plus proche et renvoie la valeur 13:
ds.AsInteger(56/4.32)
correctif
Convertit une valeur numérique en nombre à virgule flottante avec un nombre de précision spécifié. Si le nombre est évalué à la valeur null, la valeur null est renvoyée. La valeur de précision est une valeur numérique qui correspond au nombre de chiffres de précision dans le nombre à virgule flottante. La précision par défaut est 4. La valeur de mode est un indicateur qui spécifie la façon dont les chiffres en excès sont traités. Si le mode est 0 ou s'il n'est pas spécifié, les chiffres excédentaires sont arrondis. Si le mode est différent de 0, les chiffres en excès sont tronqués.
Syntaxe
ds.FIX(numeric_expression (string), precision (int8), mode (int32))
renvoie le nombre converti de formats dfloat.
Exemples
Le code suivant renvoie le numéro 37.7363.
ds.FIX("37.73629273")
MantissaFromDecimal
Renvoie la mantisse de la décimale spécifiée.
Syntaxe
ds.MantissaFromDecimal(number (decimal))
retourne : la mantisse au format dfloat.
Exemples
Si mylink.number contient le nombre 243.7675, les deux fonctions suivantes sont équivalentes et retourneront la valeur 7675 :
ds.MantissaFromDecimal(243.7675)
ds.MantissaFromDecimal(mylink.mynumber)
MantissaFromDFloat
Renvoie la mantisse de la valeur dfloat spécifiée.
Syntaxe
ds.MantissaFromDFloat(number (dfloat))
retourne : la mantisse au format dfloat.
Exemples
Si mylink.number
contient le nombre 1.234412000000000010E+4, la fonction suivante renvoie la valeur 1:
ds.MantissaFromDFloat(mylink.mynumber)
Réel
Convertit un nombre dans une chaîne en type à virgule flottante sans perte de précision.
Syntaxe
ds.Real(numeric_expression (string))
renvoie le nombre converti de formats dfloat.
Exemples
Le code suivant renvoie le nombre 1.23.
ds.Real("1.23")
Fonctions de type Raw
Utilisez la fonction Raw pour obtenir la longueur des données dans une colonne qui contient des données brutes.
RawLength
Renvoie la longueur d'une chaîne brute.
Syntaxe
ds.RawLength(input string (string))
retourne : la longueur de la chaîne de données brutes au format int32.
Exemples
Si mylink.rawdata
contient les données brutes d'une mappe de bits, la fonction suivante renvoie la taille de la mappe de bits en octets :
ds.RawLength(mylink.rawdata)
Fonctions de chaîne
Utilisez ces fonctions pour les fonctions liées à une chaîne dans une expression.
AlNum
Vérifie si la chaîne spécifiée contient uniquement des caractères alphanumériques.
Syntaxe
ds.AlNum(string (string))
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Exemple
Si mylink.mystring1
contient la chaîne "OED_75_9*E",
la fonction suivante retournera la valeur 0 (faux).
ds.AlNum(mylink.mystring1)
Si mylink.mystring2
contient la chaîne "12redroses",
la fonction suivante retournera la valeur 1 (vrai).
ds.AlNum(mylink.mystring2)
Alpha
Vérifie si la chaîne spécifiée contient uniquement des caractères alphabétiques.
Syntaxe
ds.Alpha(string (string))
retourne : un résultat du type int8, qui vaut 1 si la donnée d'entrée est valide pour le type indiqué, 0 dans le cas contraire.
Exemples
Si mylink.mystring1
contient la chaîne "12redroses", la fonction suivante renvoie la valeur 0 (false).
ds.Alpha(mylink.mystring1)
Si mylink.mystring2
contient la chaîne "twelveredroses", la fonction suivante renvoie la valeur 1 (true).
ds.Alpha(mylink.mystring2)
Chats
Concatène deux chaînes.
Syntaxe
ds.Cats(str1 (string), str2 (string))
renvoie: chaîne concaténée résultante.
Exemples
Le code suivant renvoie "ABC123".
ds.Cats("ABC", "123")
Modifier
Remplace la sous-chaîne spécifiée dans une expression par une chaîne de remplacement.
Si l'argument substring est une chaîne vide, la valeur de l'argument expression est renvoyée.
Si la valeur de l'argument de remplacement est une chaîne vide, toutes les occurrences de la sous-chaîne commençant à la position indiquée par la valeur de l'argument de début sont supprimées. Si la valeur de l'argument d'occurrence est inférieure ou égale à 0, toutes les occurrences commençant à la position indiquée par la valeur de l'argument de début sont remplacées. Sinon, le nombre d'occurrences remplacées est indiqué par la valeur de l'argument d'occurrence, à partir de la position indiquée par la valeur de l'argument de début. Si la valeur de l'argument begin est inférieure ou égale à 1, le remplacement commence à la première occurrence. Sinon, le remplacement commence à partir de la position indiquée par la valeur de l'argument de début.
Syntaxe
ds.Change(expression (string), substring (string), replacement (string), [occurrence (int32), [begin (int32)]])
retourne : la nouvelle chaîne avec les sous-chaînes remplacées.
Exemples
Si mylink.mystring
contient l'expression "aaabbbcccbbb", la fonction suivante renvoie la chaîne "aaaZZZcccZZZ".
ds.Change(mylink.mystring,"bbb","ZZZ")
Si mylink.mystring
contient l'expression "ABC" et que la sous-chaîne est vide, la fonction suivante renvoie la chaîne "ABC".
ds.Change(mylink.mystring,"","ZZZ")
Si mylink.mystring
contient l'expression "aaabbbcccbbb" et que le remplacement est vide, la fonction suivante renvoie la chaîne "aaaccc".
ds.Change(mylink.mystring, "bbb", "")
CompactWhiteSpace
Renvoie la chaîne après avoir réduit tous les blancs consécutifs à un espace unique.
Syntaxe
ds.CompactWhiteSpace(string (string))
retourne : la nouvelle chaîne avec les blancs réduits.
Exemples
Si mylink.mystring
contient la chaîne "trop d'espaces", la fonction suivante renvoie la chaîne "trop d'espaces":
ds.CompactWhiteSpace(mylink.mystring)
Comparer
Compare deux chaînes pour le tri. La comparaison peut être alignée à gauche (valeur par défaut) ou à droite. Une comparaison alignée à droite compare des sous-chaînes numériques dans les sous-chaînes spécifiées sous forme de nombres.
Les chaînes numériques doivent se situer au même emplacement dans chaque chaîne. Par exemple, une comparaison alignée à droite des chaînes AB100 et AB99 indique que AB100 est supérieur à AB99 étant donné que 100 est supérieur à 99. Une comparaison alignée à gauche des chaînes AC99 et AB100 indique que AC99 est supérieur étant donné que C est supérieur à B.
Syntaxe
ds.Compare(string1 (string), string2 (string), [justification ("L" or "R")])
retourne : un résultat du type int8 égal à -1 si string1 est inférieur à string2, 0 si les deux chaînes sont les mêmes ou 1 si string1 est supérieur à string2.
Exemples
Si mylink.mystring1
contient la chaîne "AB99" et mylink.mystring2 contient la chaîne "AB100", la fonction suivante renvoie le résultat 1.
ds.Compare(mylink.mystring1, mylink.mystring2, "L")
Si mylink.mystring1
contient la chaîne "AB99" et que mylink.mystring2 contient la chaîne "AB100", la fonction suivante renvoie le résultat -1.
ds.Compare(mylink.mystring1, mylink.mystring2, "R")
CompareNoCase
Compare deux chaînes pour les trier, sans considération de leur casse.
Syntaxe
ds.CompareNoCase(string1 (string), string2 (string))
retourne : un résultat du type int8 égal à -1 si string1 est inférieur à string2, 0 si les deux chaînes sont les mêmes ou 1 si string1 est supérieur à string2.
Exemples
Si mylink.mystring1
contient la chaîne "Chocolate Cake" et mylink.mystring2
contient la chaîne "chocolat cake", la fonction suivante renvoie le résultat 0.
ds.CompareNoCase(mylink.mystring1, mylink.mystring2)
CompareNum
Compare les premiers caractères N de deux chaînes, N étant spécifié par l'utilisateur.
Syntaxe
ds.CompareNum(string1 (string), string2 (string), length (int16))
retourne : un résultat du type int8 égal à -1 si string1 est inférieur à string2, 0 si les deux chaînes sont les mêmes ou 1 si string1 est supérieur à string2.
Exemples
Si mylink.mystring1
contient la chaîne "Chocolate" et que mylink.mystring2
contient la chaîne "Choccy Treat", la fonction suivante renvoie le résultat 0.
ds.CompareNum(mylink.mystring1, mylink.mystring2,4)
CompareNumNoCase
Compare les premiers caractères N de deux chaînes, en ignorant leur casse, N étant spécifié par l'utilisateur.
Syntaxe
ds.CompareNumNoCase(string1 (string), string2 (string), length (int16))
retourne : un résultat du type int8 égal à -1 si string1 est inférieur à string2, 0 si les deux chaînes sont les mêmes ou 1 si string1 est supérieur à string2.
Exemples
Si mylink.myraw
contient la chaîne "chocolat" et mylink.mystring2
contient la chaîne "Choccy Treat", la fonction suivante renvoie le résultat 0.
ds.CompareNumNoCase(mylink.mystring1, mylink.mystring2,4)
Conversion
Convertit une chaîne au format de stockage interne ou externe spécifié. L'expression string évalue la chaîne à convertir.
Le tableau suivant indique les valeurs que vous pouvez spécifier pour la conversion. conv_code
indique les types de format de stockage impliqués dans la conversion et conv_mode
indique le format utilisé pour l'entrée ou la sortie. Si vous spécifiez "I" pour conv_mode
, la fonction ICONV()
est utilisée pour la conversion. Si vous spécifiez "O" pour conv_mode
, la fonction OCONV()
est utilisée pour la conversion.
Tableau des valeurs de conversion
conv_code |
conv_mode |
Descriptif |
---|---|---|
MX | I | Convertit la chaîne d'entrée de hexadécimal en décimal. |
Mo | I | Convertit la chaîne d'entrée de binaire en décimal. |
MX0C | I | Convertit la chaîne d'entrée hexadécimale en chaîne de caractères ASCII. |
MB0C | I | Convertit la chaîne d'entrée de binaire en chaîne de caractères ASCII. |
MX | O | Convertit la chaîne d'entrée de décimal en hexadécimal. |
Mo | O | Convertit la chaîne d'entrée de décimal en binaire. |
MX0C | O | Convertit la chaîne d'entrée de chaîne de caractères ASCII en hexadécimal. |
MB0C | O | Convertit la chaîne d'entrée de chaîne de caractères ASCII en binaire. |
Syntaxe
ds.Conversion(string (string), conv_code (string), conv_mode (string))
renvoie: la chaîne convertie.
Exemples
Si mylink.mystring
contient la chaîne "1111", la fonction suivante renvoie la valeur 15.
ds.Conversion(mylink.mystring,"MB", "I")
Si mylink.mystring
contient la chaîne "CDE", la fonction suivante renvoie la valeur 434445.
ds.Conversion(mylink.mystring,"MX0C", "O")
Convertir
Convertit les caractères dans la chaîne qui est désignée dans l'expression indiquée. Convertit les caractères qui sont spécifiés dans une liste en caractères spécifiés dans une autre liste.
Syntaxe
ds.Convert(fromlist (string), tolist (string), expression (string))
retourne : la chaîne avec les caractères désignés convertis.
Exemples
Si mylink.mystring1
contient la chaîne "NOW IS THE TIME", la fonction suivante retourne la chaîne "NOW YS XHE XYME".
ds.Convert("TI","XY", mylink.mystring1)
Nombre
Compte le nombre de fois où une sous-chaîne apparaît dans une chaîne.
Syntaxe
ds.Count(string (string), substring (string))
renvoie le nombre d'occurrences de sous-chaîne au format int32 .
Exemples
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat", la fonction suivante retourne 3.
ds.Count(mylink.mystring1, "choc")
Dcount
Compte le nombre de zones délimitées dans une chaîne.
Syntaxe
ds.Dcount(string (string), delimiter (string))
renvoie le nombre de zones délimitées au format int32 .
Exemples
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat", la fonction suivante retourne 3.
ds.Dcount(mylink.mystring1,",")
DownCase
Remplace toutes les majuscules dans une chaîne par des minuscules.
Syntaxe
ds.DownCase(string (string))
renvoie: la chaîne résultante en minuscules.
Exemples
Si mylink.mystring1
contient la chaîne "casse mixte", la fonction suivante renvoie la chaîne "casse mixte".
ds.DownCase(mylink.mystring1)
DQuote
Place une chaîne entre guillemets.
Syntaxe
ds.DQuote(string (string))
retourne : la chaîne résultante entre guillemets.
Exemples
Si mylink.mystring1
contient la chaîne qui a besoin de guillemets, la fonction suivante renvoie la chaîne qui a besoin de guillemets.
ds.DQuote(mylink.mystring1)
Ereplace
Remplace une sous-chaîne dans une expression par une chaîne de remplacement.
Si l'argument substring est une chaîne vide, la valeur de l'argument replacement est préfixée à l'aide de la valeur de l'argument expression. Si l'argument de remplacement est une chaîne vide, toutes les occurrences de la sous-chaîne qui commencent à la position indiquée par la valeur de l'argument de début sont supprimées. Si la valeur de l'argument d'occurrence est inférieure ou égale à 0, toutes les occurrences commençant par la valeur de l'argument de début sont remplacées. Sinon, le nombre d'occurrences remplacées est indiqué par la valeur de l'argument occurrence, en commençant à l'emplacement indiqué par la valeur de l'argument begin. Si la valeur de l'argument begin est inférieure ou égale à 1, le remplacement commence à la première occurrence. Sinon, le remplacement commence à partir de la position indiquée par la valeur de l'argument de début.
Syntaxe
ds.Ereplace(expression (string), substring (string), replacement (string), [occurrence (int32), [begin (int32)]])
retourne : la chaîne résultante avec toutes les occurrences de la sous-chaîne remplacées.
Exemples
Si mylink.mystring
contient l'expression "ABC" et que la sous-chaîne est vide, la fonction suivante renvoie la valeur "ZZZABC".
ds.Ereplace(mylink.mystring,"","ZZZ")
Si mylink.mystring
contient l'expression "aaabbbcccbbb" et que le remplacement est vide, la fonction suivante renvoie la valeur "aaaccc".
ds.Ereplace(mylink.mystring, "bbb", "")
Echange
Remplace un caractère dans une chaîne.
Syntaxe
ds.Exchange(str (string), findStr (string), replaceStr (string))
renvoie: la chaîne résultante avec les caractères remplacés.
Exemples
Le code suivant renvoie: ".B.BCBC ".
ds.Exchange("ABABC", "41", "2E")
EXTRACT
Accéder au contenu de données d'une zone, d'une valeur ou d'une sous-valeur spécifiée à partir d'un tableau dynamique. La fonction est similaire à REMOVE
.
Le tableau dynamique d'entrée ne doit comporter que des délimiteurs CHAR (254), CHAR (253), CHAR (252) et leur hiérarchie, comme indiqué précédemment. Elles peuvent respectivement être extraites par des fonctions AM ou FM, VM, SM ou SVM. FM est le délimiteur des zones des chaînes, VM est le délimiteur des valeurs des chaînes et SM est le délimiteur des sous-valeurs des chaînes.
Pour en savoir plus sur le " EXTRACT
, voir la fonction EXTRACT.
Syntaxe
ds.EXTRACT(str (string), field (int64), [value (int64), subvalue (int64)])
renvoie: la chaîne extraite résultante de la chaîne de format.
Exemples
Les codes suivants renvoient tous les deux: "9ü3ü5". Le tableau dynamique contient 3 zones séparées par FM / AM, 2 valeurs dans la première zone, 1 sous-valeur dans la première valeur, etc.
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)
Le code suivant renvoie une chaîne vide, car il n'y a que 3 zones et non 10 ou plus.
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)
Zone
Renvoie une ou plusieurs sous-chaînes qui sont situées entre les délimiteurs spécifiés dans une chaîne. L'argument occurrence indique l'occurrence du délimiteur à utiliser comme caractère de fin. L'argument number indique éventuellement le nombre de sous-chaînes à renvoyer.
Syntaxe
ds.Field(string (string), delimiter (string), occurrence (int32), [number (int32)])
retourne : la chaîne correspondante entre les délimiteurs.
Exemples
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat, louches de chocolat", alors la fonction suivante renvoie la chaîne " glace au chocolat ".
ds.Field(mylink.mystring1,",",2)
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat, louches de chocolat", alors la fonction suivante renvoie la chaîne " glace au chocolat, tablettes de chocolat ".
ds.Field(mylink.mystring1,",",2,2)
FieldStore
Modifie les chaînes de caractères en insérant, supprimant ou remplaçant des zones séparées par une chaîne de délimiteurs spécifiée. La chaîne de délimiteurs indique la chaîne à modifier et peut être un caractère ASCII unique. La fonction prend également les paramètres start
(position de la chaîne d'entrée où la modification commence) et number
, qui correspond au nombre de fois où une nouvelle chaîne est insérée dans la chaîne d'entrée.
Syntaxe
ds.FieldStore(str (string), delimiter (string), start (int8), number (int8), new_fields (string))
renvoie: la chaîne modifiée de la chaîne de format.
Exemples
Le code suivant renvoie la chaîne A#B#C#D#5:
ds.FieldStore("1#2#3#4#5", "#", 1, 4, "A#B#C#D")
Fm
Utilise la fonction FMT ou une expression de format pour formater les données de sortie. Toute expression BASIC peut être formatée pour la sortie en la suivant avec une expression de format. Pour plus de détails sur la syntaxe de la fonction Fmt, voir Fonction FMT.
Syntaxe
ds.Fmt(string (string), format (string))
renvoie: les données formatées résultantes de la chaîne de format.
Exemples
Le code suivant renvoie la chaîne "23-69-86":
ds.Fmt("236986","R##-##-##")
Le code suivant renvoie le nombre "***** $ 555,666,898.00":
ds.Fmt("555666898","20*R2$,")
FmtDP
Convertit un jeu de caractères multi-octets de type chaîne au format cible. Si la globalisation (globalisation) n'est pas activée, la fonction FmtDP fonctionne comme une fonction Fmt équivalente. Pour plus de détails sur la syntaxe de la fonction FmtDP , voir FonctionFmtDP.
Syntaxe
ds.FmtDP(string (string), format (string), [mapname (string)])
renvoie: chaîne convertie de la chaîne de format.
Exemples
Le code suivant renvoie le numéro 56789:
ds.FmtDP("123456789","R#5")
Niveau
Plie les chaînes pour créer des sous-chaînes. string est la chaîne à plier. length est la longueur des sous-chaînes en caractères.
ds.Fold(str (string), length (int8))
renvoie: la chaîne pliée résultante.
Le code suivant renvoie "THISþIS AþTESTþFOLDEþD STRþING".
ds.Fold("THIS IS A TEST FOLDED STRING", 5)
Dossier
En mode globalisation (globalisation), plie les chaînes pour créer des sous-chaînes qui utilisent des positions d'affichage de caractères.
Syntaxe
ds.Folddp(str (string), length (int), opmap (string))
renvoie: la chaîne pliée résultante.
Exemples
Le code suivant renvoie: "??? ??? ??? ??? þUNICOþDE STþRING".
ds.Folddp("这里需要 UNICODE STRING", 5, "0")
Indice
Recherche l'emplacement du caractère de début d'une sous-chaîne. L'argument occurrence indique l'occurrence de la sous-chaîne à localiser.
Syntaxe
ds.Index(string (string), substring (string), occurrence (int32))
renvoie le résultat au format int32 du nombre d'occurrences.
Exemples
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat, louches de chocolat", alors la fonction suivante retourne la valeur 18.
ds.Index(mylink.mystring1,"chocolate",2)
Gauche
Renvoie les caractères N les plus à gauche d'une chaîne.
Syntaxe
ds.Left(string (string) number (int32))
Renvoie : les caractères N les plus à gauche de la chaîne.
Exemples
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat, louches de chocolat", alors la fonction suivante retourne la chaîne "chocolat".
ds.Left(mylink.mystring1,9)
Len
Renvoie la longueur d'une chaîne en caractères.
Syntaxe
ds.Len(string (string))
renvoie la longueur de la chaîne au format int32 .
Exemples
Si mylink.mystring1
contient la chaîne "chocolat", la fonction suivante renvoie la valeur 9.
ds.Len(mylink.mystring1)
Prêt
En mode globalisation (globalisation), renvoie la longueur d'une chaîne avec ses positions d'affichage totales.
Syntaxe
ds.Lendp(str (string), opmap (string))
renvoie la longueur de la chaîne au format int64.
Exemples
Le code suivant renvoie: 19.
ds.Lendp("这里需要 UNICODE STRING", "0")
Correspondance
Synonyme de MATCHES. Permet de comparer une expression de chaîne à un modèle. Pour en savoir plus sur la syntaxe " Match
, voir Opérateur de correspondance.
Syntaxe
ds.Match(str (string), pattern (string))
renvoie: le résultat indiquant si le modèle correspond à la chaîne d'entrée, au format booléen.
Exemples
Le code suivant renvoie la valeur false:
ds.Match("XYZ123AB", "3X3N")
Le code suivant renvoie la valeur true:
ds.Match("XYZ123AB", "3X3N...")
MatchField
Recherche une chaîne et renvoie sa partie qui correspond au paramètre d'entrée pattern
. Pour en savoir plus sur la syntaxe " MatchField
, voir Opérateur MATCH.
Syntaxe
ds.MatchField(str (string), pattern (string), field (int))
renvoie: le résultat de la chaîne de format.
Exemples
Le code suivant renvoie la chaîne "XYZ":
ds.MatchField("XYZ123AB", "3X3N...", 1)
Num
Renvoie 1 si la chaîne peut être convertie en nombre ; sinon, renvoie 0.
Syntaxe
ds.Num(string (string))
renvoie: 1 si la chaîne peut être convertie en nombre, ou renvoie 0 dans le cas contraire, au format int32 .
Exemples
Si mylink.mystring1
contient la chaîne "22", la fonction suivante renvoie la valeur 1.
ds.Num(mylink.mystring1)
Si mylink.mystring1
contient la chaîne "vingt deux", la fonction suivante renvoie la valeur 0.
ds.Num(mylink.mystring1)
PadString
Renvoie la chaîne remplie avec le nombre indiqué de caractères de remplissage.
Syntaxe
ds.PadString(string (string) padstring (string) padlength (int32))
retourne : la chaîne complétée résultante.
Exemples
Si mylink.mystring1
contient la chaîne "AB175", la fonction suivante renvoie la chaîne "AB17500000".
ds.PadString(mylink.mystring1,"0",5)
SUPPRIMER
Extrait et renvoie des éléments de tableau dynamique séparés par des délimiteurs système et pour indiquer quel délimiteur système a été trouvé. Elle accepte un caractère CHAR comme délimiteur et renvoie le nombre correspondant à partir duquel le délimiteur est trouvé.
Nombre | Type de délimiteur |
---|---|
0 | Fin de la chaîne |
1 | Marque d'élément ASCII CHAR (255) |
2 | Marque de zone ASCII CHAR (254) |
3 | Marque de valeur ASCII CHAR (253) |
4 | Marque de sous-valeur ASCII CHAR (252) |
5 | Marque de texte ASCII CHAR (251) |
6 | ASCII CHAR (250) (non disponible dans la version PIOPEN) |
7 | ASCII CHAR (249) (non disponible dans la version PIOPEN) |
8 | ASCII CHAR (248) (non disponible dans la version PIOPEN) |
Pour plus d'informations sur la fonction REMOVE, voir la fonction REMOVE.
Syntaxe
ds.REMOVE(str (string))
renvoie: la chaîne résultante avec les délimiteurs supprimés de la liste de chaînes de format et le nombre correspondant au délimiteur trouvé.
Exemples
Le code suivant renvoie [ "3", "12" ].
ds.REMOVE("12" + ds.VM() + "12" + ds.VM())
Droite
Renvoie les caractères N les plus à droite d'une chaîne.
Syntaxe
ds.Right(string (string) number (int32))
Renvoie : les caractères N les plus à droite d'une chaîne.
Exemples
Si mylink.mystring1
contient la chaîne "gouttes de chocolat, glace au chocolat, tablettes de chocolat, louches de chocolat", la fonction suivante retourne la chaîne "chocolat".
ds.Right(mylink.mystring1,7)
soundex
Renvoie un code qui identifie un ensemble de mots qui sont (approximativement) phonétiquement similaires en fonction de l'algorithme ouvert standard pour l'évaluation SOUNDEX
.
Syntaxe
ds.Soundex(string (string))
retourne : le code identifiant un groupe de mots semblables phonétiquement.
Exemples
Si mylink.mystring1
contient la chaîne "Griffin", la fonction suivante renvoie le code "G615".
ds.Soundex(mylink.mystring1)
Si mylink.mystring1
contient la chaîne "Griphin", la fonction suivante renvoie également le code "G615".
ds.Soundex(mylink.mystring1)
Espace
Renvoie une chaîne de caractères de l'espace N.
Syntaxe
ds.Space(length (int32))
retourne : une chaîne d'espaces de la longueur spécifiée.
Exemples
Si mylink.mylength
contient le nombre 100, la fonction suivante renvoie une chaîne contenant 100 caractères d'espace.
ds.Space(mylink.mylength)
SQuote
Place une chaîne entre apostrophes.
Syntaxe
ds.SQuote(string (string))
retourne : la chaîne entre apostrophes.
Exemples
Si mylink.mystring1
contient la chaîne qui a besoin de guillemets, la fonction suivante renvoie la chaîne qui a besoin de guillemets.
ds.SQuote(mylink.mystring1)
Str
Répète une chaîne le nombre de fois spécifié.
Syntaxe
ds.Str(string (string), repeats (int32))
Renvoie : la chaîne qui en résulte est répétée N fois.
Exemples
Si mylink.mystring1
contient la chaîne de besoin "choc", la fonction suivante renvoie la chaîne "chocchocchocchocchoc".
ds.Str(mylink.mystring1,5)
StripWhiteSpace
Renvoie la chaîne une fois que vous en avez supprimé tous les espaces.
Syntaxe
ds.StripWhiteSpace(string (string))
retourne : la chaîne sans les blancs.
Exemples
Si mylink.mystring
contient la chaîne "too many spaces", la fonction suivante renvoie la chaîne "toomanyspaces":
ds.StripWhiteSpace(mylink.mystring)
Sous-chaîne
Renvoie la sous-chaîne spécifiée.
Lorsque n est spécifié, la fonction extrait les n derniers caractères d'une chaîne.
Lorsque start et length sont spécifiés, la fonction extrait les caractères dont la longueur est égale à length à partir de la position start d'une chaîne.
Lorsqu'un délimiteur est spécifié, la fonction extrait une ou plusieurs sous-chaînes situées entre des délimiteurs spécifiés dans une chaîne. occu est le nombre de délimiteurs et num est la longueur de la sous-chaîne entre les délimiteurs dans la sous-chaîne résultante.
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))
renvoie: le tableau de sous-chaînes résultant de la chaîne de format.
Exemples
Le code suivant renvoie "ab.cd".
ds.Substring("ab.cd", ".", 1, 2)
Sous-chaînes
Crée un tableau dynamique, dont tous les éléments sont des sous-chaînes des éléments correspondants du tableau dynamique d'entrée.
Syntaxe
ds.Substrings(str (string), start (int8), length (int8))
renvoie: le tableau dynamique résultant avec des sous-chaînes correspondant au tableau d'entrée, de format chaîne.
Exemples
Le code suivant renvoie "NESýITHþ23üý50ü".
ds.Substrings("JONESýSMITHþ1.23ü20ý2.50ü10", 3, 20)
Tronquer
Supprime tous les espaces de début et de fin, ainsi que les tabulations. La fonction réduit également les occurrences internes des espaces ou des tabulations à une.
L'argument Stripchar spécifie éventuellement un caractère autre qu'un espace ou un onglet. L'argument options indique le type d'opération de compression à effectuer et contient une ou plusieurs des valeurs suivantes:
A: Supprimez toutes les occurrences de Stripchar.
B Supprimez les occurrences de début et de fin de Stripchar.
D Supprimez les espaces de début, de fin et d'espace blanc redondants.
E Supprimez les espaces blancs de fin de ligne.
F Supprimez les caractères d'espace blanc de début.
F Supprimez toutes les occurrences principales de Stripchar.
R Supprimez les occurrences de début, de fin et redondantes de Stripchar.
T Supprimez toutes les occurrences de fin de Stripchar.
Syntaxe
ds.Trim(string (string), [stripchar (string)], [options (string)])
retourne : la chaîne taillée.
Exemples
Si mylink.mystring
contient la chaîne " String with white space ", puis la fonction suivante renvoie la chaîne" String with white space ":
ds.Trim(mylink.mystring)
Si mylink.mystring
contient la chaîne " ..Supprimer .. points .. redondants .... ", la fonction suivante renvoie la chaîne "Remove.redondant.dots" :
ds.Trim(mylink.mystring,".")
Si mylink.mystring
contient la chaîne "Remove .. all.. dots....", la fonction suivante renvoie la chaîne "Removealldots" :
ds.Trim(mylink.mystring,".","A")
Si mylink.mystring
contient la chaîne "Remove .. trailing.. dots....", la fonction suivante renvoie la chaîne "Remove..trailing..dots" :
ds.Trim(mylink.mystring,".","T")
TrimB
Supprime tous les espaces de fin et les tabulations d'une chaîne.
Syntaxe
ds.TrimB(string (string))
retourne : la chaîne taillée.
Exemples
Si mylink.mystring
contient la chaîne "trop d'espaces de fin", la fonction suivante renvoie la chaîne "trop d'espaces de fin":
ds.TrimB(mylink.mystring)
TrimF
Supprime tous les espaces de début et les tabulations d'une chaîne.
Syntaxe
ds.TrimF(string (string))
retourne : la chaîne taillée.
Exemples
Si mylink.mystring
contient la chaîne " Trop d'espaces de tête ", alors la fonction suivante retourne la chaîne" trop d'espaces de tête ":
ds.TrimF(mylink.mystring)
TrimLeadingTrailing
Supprime tous les espaces de début et de fin, ainsi que les tabulations d'une chaîne.
Syntaxe
ds.TrimLeadingTrailing(string (string))
retourne : la chaîne taillée.
Exemples
Si mylink.mystring
contient lachaîne " Trop d'espaces ", la fonction suivante renvoie la chaîne" trop d'espaces ":
ds.TrimLeadingTrailing(mylink.mystring)
UpCase
Remplace toutes les minuscules dans une chaîne par des majuscules.
Syntaxe
ds.UpCase(string (string))
renvoie: la chaîne résultante en majuscules.
Exemples
Si " mylink.mystring1
contient la chaîne "CaMel cAsE", la fonction suivante renvoie la chaîne "CAMEL CASE" :
ds.UpCase(mylink.mystring1)
Messagerie instantanée
Renvoie CHAR (255). Fonctionne de la même manière que AM.
Syntaxe
ds.IM()
renvoie: le résultat CHAR (255).
Exemples
Le code suivant renvoie'ÿ'.
ds.IM()
modulation de fréquence
Renvoie CHAR (254).
Syntaxe
ds.FM()
renvoie: le résultat CHAR (254).
Exemples
Le code suivant renvoie "???".
ds.FM()
AM
Renvoie CHAR (254). Fonctionne de la même façon que FM.
Syntaxe
ds.AM()
renvoie: le résultat CHAR (254).
Exemples
Le code suivant renvoie "???".
ds.AM()
machine virtuelle
Renvoie CHAR (253).
Syntaxe
ds.VM()
renvoie: le résultat CHAR (253).
Exemples
Le code suivant renvoie'ý'.
ds.VM()
fibre optique monomode
Renvoie CHAR (252). Fonctionne de la même manière que SVM.
Syntaxe
ds.SM()
renvoie: le résultat CHAR (252).
Exemples
Le code suivant renvoie'ü'.
ds.SM()
SVM
Renvoie CHAR (252). Fonctionne de la même manière que SM.
Syntaxe
ds.SVM()
renvoie: le résultat CHAR (252).
Exemples
Le code suivant renvoie'ü'.
ds.SVM()
marque
Renvoie CHAR (251).
Syntaxe
ds.TM()
renvoie: le résultat CHAR (251).
Exemples
Le code suivant renvoie'û'.
ds.TM()
Fonctions utilitaires
Les fonctions de l'utilitaire spécifient divers objectifs liés à l'extraction d'informations sur des fonctions DataStage spécifiques.
ElementAt
Renvoie l'élément de la liste spécifié par l'index.
Syntaxe
ds.ElementAt(list (object))
renvoie: l'index d'élément de l'objet de format.
Exemples
Le code suivant renvoie'b':
ds.ElementAt(["a","b","c"], 1)
Le code suivant renvoie 2:
ds.ElementAt([1,2,3], 1)
GetCommandName
Prend l'ID de noeud d'une "activité Exécuter le script Bash" et extrait le nom de commande de l'activité Exécuter le script bash.
Syntaxe
ds.GetCommandName(tasks.activity_id (string))
renvoie: le nom de commande de la chaîne de format.
Exemples
Le code suivant renvoie le nom de la commande de la tâche run_bash_script_5
:
ds.GetCommandName(tasks.run_bash_script_5)
GetCommandOutput
Prend l'ID de noeud d'une "activité Exécuter un script Bash" et extrait sa sortie standard. Elle est équivalente à l'expression CEL:
tasks.<activity_id>.results.standard_output
Syntaxe
ds.GetCommandOutput(tasks.activity_id (string))
renvoie: la sortie standard de la chaîne de format.
Exemples
Le code suivant renvoie la sortie standard de la tâche run_bash_script_5
:
ds.GetCommandOutput(tasks.run_bash_script_5)
GetErrorMessage
Utilisé dans la tâche d'un gestionnaire d'exceptions uniquement, la sortie est le texte du message consigné en tant qu'avertissement lorsque l'exception est émise.
Syntaxe
ds.GetErrorMessage()
renvoie: le message résultant de la chaîne de format.
Exemples
Le code suivant renvoie le message d'erreur d'une tâche ayant échoué:
ds.GetErrorMessage()
GetErrorNumber
Utilisée dans la tâche d'un gestionnaire d'exceptions uniquement, la sortie est l'entier, qui indique le type d'erreur démarré. Soit 1, soit -1.
1 indique que la tâche a exécuté un travail qui a été annulé et qu'aucun gestionnaire spécifique n'est configuré.
--1 indique que la tâche ne s'est pas exécutée pour d'autres raisons.
Syntaxe
ds.GetErrorNumber()
renvoie: l'entier résultant de format int.
Exemples
Le code suivant renvoie le numéro d'erreur du type d'activité du gestionnaire d'exceptions:
ds.GetErrorNumber()
GetErrorSource
Utilisée dans la tâche d'un gestionnaire d'exceptions uniquement, la sortie est le nom de l'étape d'activité qui a généré l'exception.
Syntaxe
ds.GetErrorSource()
renvoie: la valeur résultante de la tâche de la chaîne de format.
Exemples
Le code suivant renvoie la tâche qui a échoué:
ds.GetErrorSource()
GetJobName
Renvoie le nom de travail de l'activité Exécuter DataStage au moment de l'exécution de la fonction. Elle est équivalente à l'expression CEL:
tasks.<activity_id>.results.job_name
Syntaxe
ds.GetJobName(tasks.activity_id (string))
renvoie: le nom de travail de la chaîne de format.
Exemples
Le code suivant renvoie le nom de travail de la tâche run_datastage_flow_1
:
ds.GetJobName(tasks.run_datastage_flow_1)
GetJobNameWithInvocationId
Renvoie le nom de travail de l'activité Exécuter DataStage au moment où la fonction est exécutée avec un ID d'appel de suffixe si le travail a été exécuté dans plusieurs instances et que l'ID d'appel de travail n'est pas vide.
Syntaxe
ds.GetJobNameWithInvocationId(tasks.nodeId)
renvoie: le nom de travail de la chaîne de format, suffixé avec l'ID d'appel, s'il est disponible.
Exemples
Le code suivant renvoie rowGenPeekJob.bigloop1
avec le nom de tâche rowGenPeekJob
et l'ID d'appel bigloop1
:
ds.GetJobNameWithInvocationId(tasks.rowGenPeekJob)
GetJobStatus
Prend l'ID de noeud d'une activité "Exécuter DataStage " et extrait son statut de travail pour <activity_name>.$JobStatus
. Elle est équivalente à l'expression cel suivante:
((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))
renvoie: le statut du travail au format int.
Exemples
Le code suivant renvoie le statut de la tâche run_datastage_flow_1
:
ds.GetJobStatus(tasks.run_datastage_flow_1)
GetListCounter
Utilisée dans la tâche d'une boucle avec un compteur de liste uniquement, la sortie est la valeur en cours de la variable de compteur.
Syntaxe
ds.GetListCounter()
renvoie: la valeur résultante du compteur de la chaîne de format.
Exemples
Le code suivant renvoie la valeur en cours de la boucle.
ds.GetListCounter()
GetNumericCounter
Utilisée dans la tâche d'une boucle avec un compteur numérique uniquement, la sortie est la valeur actuelle de la variable de compteur de la boucle.
Syntaxe
ds.GetNumericCounter()
renvoie: la valeur résultante du compteur de format int.
Exemples
Le code suivant renvoie la valeur en cours de la boucle.
ds.GetNumericCounter()
GetOutputArg
Renvoie la valeur spécifiée d'une clé à partir d'une entrée JSON de type chaîne.
Syntaxe
ds.GetOutputArg(JSON (string), key_value (string))
renvoie: valeur de la zone de propriété.
Exemples
Le code suivant renvoie la valeur de chaîne "tom":
ds.GetOutputArg("{"name":"tom"}", "name")
GetReturnValue
Prend l'ID de noeud d'une "activité Exécuter un script Bash" et renvoie la valeur de l'activité Exécuter un script Bash. Elle est équivalente à l'expression CEL suivante:
tasks.<activity_id>.results.return_value
Syntaxe
ds.GetReturnValue(tasks.activity_id (string))
renvoie: la valeur résultante de la tâche de format int.
Exemples
Le code suivant renvoie la valeur de la tâche tasks.run_bash_script_5
:
ds.GetReturnValue(tasks.run_bash_script_5)
GetUserStatus
Prend l'ID d'une tâche de flux DataStage et renvoie le statut de la tâche de flux DataStage dans le travail séquentiel. La fonction ne fonctionne pas si elle est exécutée dans un travail parallèle. Elle est équivalente à l'expression CEL:
tasks.<activity_id>.results.user_status
Syntaxe
ds.GetUserStatus(tasks.run_datastage_id (string))
renvoie le statut de l'ID de tâche de flux DataStage de la chaîne de format.
Exemples
Le code suivant renvoie la valeur de l'ID tâche run_datastage_5
:
ds.GetUserStatus(tasks.run_datastage_5)
LogName
Renvoie le nom de connexion de l'utilisateur en cours.
Syntaxe
ds.LogName()
renvoie: le nom de connexion de l'utilisateur en cours de la chaîne de format.
Exemples
Le code suivant renvoie le nom de connexion de l'utilisateur en cours.
ds.LogName()
Voie
Renvoie le nom de chemin de l'utilisateur en cours.
Syntaxe
ds.Path()
renvoie: le nom de chemin de l'utilisateur actuel de la chaîne de format.
Exemples
Le code suivant renvoie le nom de chemin de l'utilisateur en cours.
ds.Path()
Schéma
Renvoie le nom de schéma de l'utilisateur en cours.
Syntaxe
ds.Schema()
renvoie: le nom de schéma de l'utilisateur en cours de la chaîne de format.
Exemples
Le code suivant renvoie le nom de schéma de l'utilisateur en cours.
ds.Schema()
UserNo
Renvoie le numéro d'utilisateur de l'utilisateur en cours.
Syntaxe
ds.UserNo()
renvoie: les informations utilisateur de l'utilisateur en cours au format int.
Exemples
Le code suivant renvoie le numéro d'utilisateur de l'utilisateur en cours.
ds.UserNo()
Qui
Renvoie l'utilisateur en cours.
Syntaxe
ds.Who()
renvoie: l'utilisateur en cours de la chaîne de format.
Exemples
Le code suivant renvoie l'utilisateur en cours.
ds.Who()
Fonctions de gestion des valeurs NULL
Fonctions qui gèrent les valeurs null.
IsNull
Renvoie la valeur true lorsque l'expression d'entrée est évaluée à la valeur null.
Syntaxe
ds.IsNull(input (any))
renvoie: résultat indiquant si l'expression a pour résultat null, au format booléen.
Exemples
Le code suivant renvoie true.
ds.IsNull(null)
Le code suivant renvoie la valeur false.
ds.IsNull(0)
IsNotNull
Renvoie la valeur true lorsque l'expression d'entrée n'a pas pour résultat la valeur null.
Syntaxe
ds.IsNotNull(input (any))
renvoie: résultat indiquant si l'expression n'a pas pour résultat null, de format booléen.
Exemples
Le code suivant renvoie la valeur false.
ds.IsNotNull(null)
Le code suivant renvoie true.
ds.IsNotNull(0)
NULL
Renvoie la valeur null.
Syntaxe
ds.Null()
renvoie: la valeur null.
Exemples
Le code suivant renvoie la valeur null.
ds.Null()
NullToEmpty
Renvoie une chaîne vide si l'entrée est null, sinon renvoie la valeur de la colonne d'entrée.
Syntaxe
ds.NullToEmpty(input (any))
renvoie: une chaîne vide ou la valeur d'entrée.
Exemples
Le code suivant renvoie "AA".
ds.NullToEmpty("AA")
Le code suivant renvoie "".
ds.NullToEmpty(null)
NullStr
Renvoie la chaîne NULL CHAR (128).
Syntaxe
ds.NullStr()
renvoie: la chaîne NULL CHAR (128).
Exemples
Le code suivant renvoie €.
ds.NullStr()
NullToValue
Renvoie la valeur spécifiée si l'entrée est null, sinon renvoie la valeur de la colonne d'entrée.
Syntaxe
ds.NullToValue(input (any), default (any))
renvoie: la valeur spécifiée ou la valeur d'entrée.
Exemples
Le code suivant renvoie "test".
ds.NullToValue("test", "default")
Le code suivant renvoie "default".
ds.NullToValue(null, "default")
Le code suivant renvoie 1.
ds.NullToValue(null, 1)
NullToZero
Renvoie 0 si l'entrée est null, sinon renvoie la valeur de la colonne d'entrée.
Syntaxe
ds.NullToZero(input (any))
renvoie: 0 ou la valeur d'entrée.
Exemples
Le code suivant renvoie 88.
ds.NullToZero(88)
Le code suivant renvoie 0.
ds.NullToZero(null)
SetNull
Affecte une valeur NULL à la colonne cible.
Syntaxe
ds.SetNull()
renvoie: définit la cible sur la valeur null.
Exemples
Le code suivant renvoie la valeur null.
ds.SetNull()
Fonctions macros
Fonctions qui gèrent l'extraction d'un ensemble de métadonnées de projet liées aux travaux de séquence DataStage .
JobName
Renvoie le nom de travail du séquenceur.
Syntaxe
ds.JobName
renvoie: le nom de travail du séquenceur de la chaîne de format.
Exemples
Le code suivant renvoie le nom de travail du séquenceur.
ds.JobName
JobStartDate
Renvoie la date de début du travail du séquenceur.
Syntaxe
ds.JobStartDate
renvoie: la date de début du travail du séquenceur de la chaîne de format.
Exemples
Le code suivant renvoie la date de début du travail du séquenceur.
ds.JobStartDate
JobStartTime
Renvoie l'heure de début du travail du séquenceur.
Syntaxe
ds.JobStartTime
renvoie: l'heure de début du travail séquenceur de la chaîne de format.
Exemples
Le code suivant renvoie l'heure de début du travail du séquenceur.
ds.JobStartTime
JobStartTimestamp
Renvoie l'horodatage de début du travail du séquenceur.
Syntaxe
ds.JobStartTimestamp
renvoie: l'horodatage de début du travail du séquenceur au format horodatage.
Exemples
Le code suivant renvoie l'horodatage de début du travail du séquenceur.
ds.JobStartTimestamp
HostName
Renvoie le nom d'hôte du serveur DataStage .
Syntaxe
ds.HostName
renvoie: le travail de séquenceur InvocationId
de la chaîne de format.
Exemples
Le code suivant renvoie le travail de séquenceur InvocationId
.
ds.HostName
ProjectName
Renvoie le nom de projet du travail de séquenceur en cours d'exécution
Syntaxe
ds.ProjectName
renvoie le nom de projet du travail de séquenceur en cours d'exécution.
Exemples
Le code suivant renvoie le nom de projet du travail de séquenceur en cours d'exécution.
ds.ProjectName
ProjectId
Renvoie l'ID de projet du travail de séquenceur en cours d'exécution.
Syntaxe
ds.ProjectId
renvoie: l'ID de projet du travail de séquenceur en cours d'exécution.
Exemples
Le code suivant renvoie l'ID de projet du travail de séquenceur en cours d'exécution.
ds.ProjectId
JobId
Renvoie l'ID de travail du travail de séquenceur en cours d'exécution.
Syntaxe
ds.JobId
renvoie: l'ID de travail du travail de séquenceur en cours d'exécution.
Exemples
Les commandes suivantes renvoient l'ID de travail du travail du séquenceur en cours d'exécution.
ds.JobId
JobController
Renvoie le nom de flux de pipeline du travail de séquenceur en cours d'exécution.
Syntaxe
ds.JobController
renvoie: le nom de flux de pipeline du travail de séquenceur en cours d'exécution.
Exemples
Les commandes suivantes renvoient le nom de flux de pipeline du travail de séquenceur en cours d'exécution.
ds.JobController
Rubrique parent: Ajout de conditions à un pipeline