Funcții runtime conversie X++

Notă

Grupurile de interes din comunitate s-au mutat acum din Yammer în Microsoft Viva Engage. Pentru a vă alătura unei comunități Viva Engage și a participa la cele mai recente discuții, completați Request acces la Finanțe și Operațiuni Viva Engage Comunitate și alegeți comunitatea la care doriți să vă asociați.

Acest articol descrie funcțiile runtime de conversie.

any2Date

Efectuează conversia unei valori de orice tip într-o valoare dată .

date any2Date(anytype object)

Parametri

Parametru Descriere
obiect Este valoarea de convertit la o dată.

Valoare returnată

O valoare de dată .

Observații

Parametrul obiectului poate fi majoritatea tipurilor de date, dar obțineți rezultate utile atunci când este de tipul str sau int . Conținutul nepotrivit generează o eroare la momentul rulării.

Exemplu

static void any2DateExample(Args _args)
{
    date myDate;
    str s;
    int i;
    s = "2010 6 17"; // A string object, of yyyy mm dd.
    myDate = any2Date(s);
    Global::info(strFmt("%1  is output, from input of "2010 6 17"", myDate));
    i = 40361; // An int object, which represents the number of days from 1900/01/01.
    myDate = any2Date(i);
    Global::info(strFmt("%1  is output, from input of 40361", myDate));
}
/**** Infolog display.
Message (04:44:15 pm)
6/17/2010 is output, from input of "2010 6 17"
7/4/2010 is output, from input of 40361
****/

any2Enum

Efectuează conversia unei valori de orice tip în valoarea proprietății Name a unui element din enumerarea țintă.

enum any2Enum(anytype object)

Parametri

Parametru Descriere
obiect Valoarea de potrivit proprietății Value a unui element din enumerarea țintă.

Valoare returnată

Valoarea proprietății Name pentru elementul din enumerarea țintă are o proprietate Value care se potrivește cu parametrul de intrare.

Observații

Parametrul obiect poate fi majoritatea tipurilor de date, dar primiți date utile doar atunci când utilizați un parametru al tipului str sau int . Acest parametru de obiect de intrare se referă la proprietatea Valoare a unui element individual din enumerarea țintă.

Exemplu

static void any2EnumExample(Args _args)
{
    NoYes myNoYes;  // NoYes is an enum.
    int i;
    str s;
    i = 0;  // An int that will be converted.
    myNoYes = any2Enum(i);
    Global::info(strfmt("'%1' - is the output, from input of the %2 as int.", myNoYes, i));
    s = "1";  // A str that will be converted.
    myNoYes = any2Enum(s);
    Global::info(strfmt("'%1' - is the output, from input of the %2 as str.", myNoYes, s));
    /**** Infolog display.
    Message (01:05:32 pm)
    'No' - is the output, from input of the 0 as int.
    'Yes' - is the output, from input of the 1 as str.
    ****/
}

any2Guid

Efectuează conversia oricărui obiect tip specificat într-un obiect GUID.

guid any2Guid(anytype object)

Parametri

Parametru Descriere
obiect Valoarea de convertit la un obiect GUID.

Valoare returnată

Un obiect GUID.

any2Int

Efectuează conversia unei valori de orice tip într-o valoare int .

int any2Int(anytype object)

Parametri

Parametru Descriere
obiect Este valoarea de convertit.

Valoare returnată

O valoare int .

Observații

Parametrul obiect poate fi majoritatea tipurilor de date, dar obțineți date utile doar atunci când utilizați parametri de enumerare, reali sau str .

Exemplu

static void any2IntExample(Args _args)
{
    int myInt;
    str s;
    NoYes a;
    real r;
    s = "31";
    myInt = any2Int(s);
    Global::info(strfmt("%1 is the output, from input of 31 as a str value.", myInt));
    a = NoYes::No;
    myInt = any2Int(a);
    Global::info(strfmt("%1 is the output, from input of NoYes::No as an enum value.", myInt));
    r = 5.34e2;
    myInt = any2Int(r);
    Global::info(strfmt("%1 is the output, from the input of 5.34e2 as a real value.", myInt));
}
/**** Infolog display.
Message (02:23:59 pm)
31 is the output, from input of 31 as a str value.
0 is the output, from input of NoYes::No as an enum value.
534 is the output, from the input of 5.34e2 as a real value.
****/

any2Int64

Efectuează conversia unui obiect de tip într-un obiect int64 .

int64 any2Int64(anytype object)

Parametri

Parametru Descriere
obiect Obiectul de orice tip de convertit.

Valoare returnată

Un obiect int64 .

any2Real

Efectuează conversia unei valori de orice tip într-o valoare reală .

real any2Real(anytype object)

Parametri

Parametru Descriere
obiect Este valoarea de convertit.

Valoare returnată

O valoare reală .

Observații

Parametrul obiectului poate fi majoritatea tipurilor de date, dar obțineți rezultate utile pentru elementele de intrare ale datei, int, enumerare și str tipuri.

Exemplu

static void any2RealExample(Args _args)
{
    real myReal;
    str s;
    int i;
    NoYes a;
    s = "5.12";
    myReal = any2Real(s);
    Global::info(strfmt("%1 is the output from the input of 5.12 as a str object", myReal));
    i = 64;
    myReal = any2Real(i);
    Global::info(strfmt("%1 is the output from the input of 64 as an int object", myReal));
    a = NoYes::Yes;
    myReal = any2Real(a);
    Global::info(strfmt("%1 is the output from the input of NoYes::Yes as an enum object", myReal));
}
/****Infolog display.
Message (02:43:57 pm)
5.12 is the output from the input of 5.12 as a str object
64.00 is the output from the input of 64 as an int object
1.00 is the output from the input of NoYes::Yes as an enum object
****/

any2Str

Efectuează conversia unei valori de tip într-o valoare str .

str any2Str(anytype object)

Parametri

Parametru Descriere
obiect Este valoarea de convertit.

Valoare returnată

O valoare str .

Observații

Parametrul obiectului poate fi majoritatea tipurilor de date, dar obțineți rezultate utile din elementele de intrare ale tipurilor de dată, int și enumerare .

Exemplu

static void any2StrExample(Args _args)
{
    str myStr;
    anytype a;
    a = "Any to string";
    myStr = any2Str(a);
    Global::info(strFmt("%1 is output, from input of Any to string as a str value", myStr));
    a = NoYes::Yes;
    myStr = any2Str(a);
    Global::info(strFmt("%1 is output, from input of NoYes::Yes as an enumeration", myStr));
}
/****Infolog Display
Message (09:08:46 am)
Any to string is output, from input of Any to string as a str value
1 is output, from input of NoYes::Yes as an enumeration
****/

anytodate

Vedeți any2Date.

anytoenum

Vedeți any2Enum.

anytoguid

Vezi any2Guid.

oricetoint

Vedeți any2Int.

anytoint64

Vedeți any2Int64.

anytoreal

Vezi any2Real.

oricetostr

Vezi any2Str.

char2Num

Efectuează conversia unui caracter dintr-un șir în valoarea ASCII a caracterului.

int char2Num(str text, int position)

Parametri

Parametru Descriere
text Șirul care conține caracterul.
poziție Poziția caracterului din șir.

Valoare returnată

Valoarea ASCII a caracterului ca obiect int .

Observații

char2Num("ABCDEFG",3); //Returns the numeric value of C, which is 67.
char2Num("ABCDEFG",1); //Returns the numeric value of A, which is 65.

date2Num

Efectuează conversia unei date într-un număr întreg care corespunde numărului de zile de la 1 ianuarie 1900.

int date2Num(date _date)

Parametri

Parametru Descriere
_dată Data de conversie.

Valoare returnată

Numărul de zile dintre 1 ianuarie 1900 și data specificată.

Exemplu

//Returns the value377.
date2Num(1311901);
static void date2NumExample(Args _arg)
{
    date d = today();
    int i;
    i = date2Num(d);
    print i;
}

data2Str

Efectuează conversia datei specificate într-un șir.

str date2Str(date date, int sequence, int day, int separator1, int month, int separator2, int year [, int flags = DateFlags::None])

Parametri

Parametru Descriere
date Data de conversie.
secvență Un număr din trei cifre care indică secvența pentru componentele datei: 1 pentru zi, 2 pentru lună și 3 pentru an.
zi O valoare de enumerare care indică formatul pentru componenta zi a datei.
separator1 O valoare de enumerare care indică separatorul de utilizat între primele două componente ale datei.
lună O valoare de enumerare care indică formatul pentru componenta lună a datei.
separator2 O valoare de enumerare care indică separatorul de utilizat între ultimele două componente ale datei.
an O valoare de enumerare care indică formatul pentru componenta de an a datei.
Steaguri O valoare de enumerare DateFlags care indică dacă setările de limbă de pe computerul local trebuie utilizate pentru a calcula secvența corectă de la stânga la dreapta sau de la dreapta la stânga din șirul returnat.

Valoare returnată

Este un șir care reprezintă data specificată.

Observații

MorphX alocă valori valide parametrilor de formatare dacă valorile specificate nu sunt valide. Pentru a utiliza formatul de dată specificat de utilizator în Setări regionale, utilizați funcția strFmt sau date2Str și specificați -1 în toți parametrii de formatare. Atunci când setările regionale controlează formatul de dată, setările se pot modifica de la utilizator la utilizator. Dacă -1 este utilizat pentru fiecare parametru separator , ambele separatori sunt setați implicit la Setări regionale. Valorile parametrului de secvență trebuie să fie orice număr format din trei cifre care conține exact o apariție a fiecărei cifre 1, 2 și 3. Cifrele 1, 2 și 3 reprezintă ziua, luna și, respectiv, anul. De exemplu, 321 produce anul secvenței, luna și ziua. Sau valoarea poate fi -1 pentru a utiliza Setări regionale. Nu utilizați un tip de enumerare pentru acest parametru, deoarece numerele cum ar fi 321 depășesc intervalul de valori valide pentru valorile de enumerare, care este între 0 și 250, inclusiv. Valoarea implicită a parametrului semnalizări este valoarea DateFlags::Fără enumerare, ceea ce înseamnă că nu se efectuează nicio procesare secvență de la stânga la dreapta sau de la dreapta la stânga.

Exemplu

Următorul exemplu afișează data curentă în secvența de an, lună și zi.

static void Job2(Args _args)
{
    date currentDate = today();
    str s;
    int iEnum;
    s = date2Str
    (currentDate, 
        321,
        DateDay::Digits2,
        DateSeparator::Hyphen, // separator1
        DateMonth::Digits2,
        DateSeparator::Hyphen, // separator2
        DateYear::Digits4
    );
    info("Today is:  " + s);
}
/** Example Infolog output
Message (12:36:21 pm)
Today is:  2009-01-13
**/

datetime2Str

Efectuează conversia unei valori utcdatetime într-un șir.

str datetime2Str(utcdatetime datetime [, int flags = DateFlags::None])

Parametri

Parametru Descriere
datetime Valoarea utcdatetime de convertit.
Steaguri O valoare de enumerare DateFlags care indică dacă se utilizează setările locale pentru ieșirea de la dreapta la stânga.

Valoare returnată

Un șir care reprezintă valoarea utcdatetime specificată ca parametru dată-oră .

Observații

Intrare dată-oră nulă

Dacă specificați valoarea minimă utcdatetime pentru parametrul datetime , funcția datetime2Str o tratează ca valoare de intrare nulă. Această valoare face ca funcția să returneze un șir gol. Metoda DateTimeUtil::minValue returnează data-ora 1900-01-01T00:00:00. Funcția tratează această valoare minimă ca null.

Setări locale de la dreapta la stânga

În mod implicit, această funcție generează șirul în secvența de la stânga la dreapta, unde porțiunea de an este cea mai din stânga. Totuși, dacă setați parametrul semnalizări la Valoarea DateFlags::FormatToate enumerarea, funcția generează șirul în secvența de la dreapta la stânga atunci când setările locale sunt configurate pentru de la dreapta la stânga. Setările regionale nu afectează formatul metodei toStr a clasei DateTimeUtil .

Exemplu

static void jobTestDatetime2str( Args _args )
{
    utcdatetime utc2 = 1959-06-17T15:44:33;
    str s3;
    s3 = datetime2Str( utc2 );
    info( s3 );
}

enumerare2Str

Efectuează conversia textului enumerat specificat într-o reprezentare a caracterelor.

str enum2Str(enum enum)

Parametri

Parametru Descriere
enumerare Este textul enumerat de convertit.

Valoare returnată

Valoarea enumerarii ca șir.

Exemplu

Următorul exemplu returnează șirul "Ne inclus". Acest șir este eticheta pentru valoarea IncludeNot a tipului de enumerare ListCode .

static void enum2StrExample(Args _arg)
{
    ListCode l;
    l =  ListCode::IncludeNot;
    print enum2Str(l);
}

guid2Str

Efectuează conversia obiectului GUID specificat în șirul echivalent.

str guid2String(guid _uuid)

Parametri

Parametru Descriere
_uuid Obiectul GUID de convertit.

Valoare returnată

Este echivalentul șirului obiectului GUID specificat.

Exemplu

static void guid2StrExample()
{
    guid _guid;
    str stringGuid;
    _guid = Global::guidFromString("{12345678-1234-1234-1234-123456789abc}");
    print strfmt("GUID is %1", _guid);
    stringGuid = guid2str(_guid);
    info("String GUID is " + stringGuid);
}
/**** Output to Infolog
String GUID is {12345678-1234-1234-1234-123456789ABC}
****/

int2Str

Efectuează conversia unui număr întreg în șirul echivalent.

str int2Str(int integer)

Parametri

Parametru Descriere
întreg Este numărul întreg de convertit.

Valoare returnată

O reprezentare șir a întregului.

Exemplu

static void int2StrExample(Args _arg)
{
    print "This is int2Str, value is " + int2Str(intMax());
    print "This is int642Str, value is " + int642Str(int64Max());
}

int642Str

Efectuează conversia parametrului întreg specificat în șirul text echivalent.

str int642Str(int64 integer)

Parametri

Parametru Descriere
întreg The int64 to convert to a string.

Valoare returnată

Șirul text echivalent al parametrului întreg .

Exemplu

static void example()
{
    print "This is int2Str, value is " + int2Str(intMax());
    print "This is int642Str, value is " + int642Str(int64Max());
}

num2Char

Efectuează conversia unui număr întreg în caracterul ASCII corespunzător.

str num2Char(int figure)

Parametri

Parametru Descriere
cifră Este numărul întreg de convertit într-un caracter.

Valoare returnată

Caracterul care corespunde întregului specificat.

Exemplu

static void num2CharExample(Args _arg)
{
    str s;
    s = num2Char(42);
    // Prints an asterisk * -the character represented by 42.
    print s;
}

num2Date

Regăsește data care corespunde numărului specificat de zile după 1 ianuarie 1900.

date num2Date(int _days)

Parametri

Parametru Descriere
_Zile Numărul de zile după 1 ianuarie 1900 pentru a returna data. Notă: Prima dată validă este 1 ianuarie 1901. Prin urmare, funcția num2Date nu returnează o dată validă decât dacă _days este mai mare de 365.

Valoare returnată

Data care este numărul de zile specificat de parametrul _days după 1 ianuarie 1900.

Observații

num2Date(366); //Returns the date 01/01/1901 (1 January 1901).

num2Str

Efectuează conversia unui număr real într-un șir.

str num2Str(real number, int character, int decimals, int separator1, int separator2)

Parametri

Parametru Descriere
număr Este numărul real de convertit într-un șir.
caracter Numărul minim de caractere care sunt necesare în text.
Zecimale Este numărul necesar de zecimale.
separator1 O valoare de enumerare ZecimalSeparator .
separator2 O valoare de enumerare MiiSeparator .

Valoare returnată

Este un șir care reprezintă numărul.

Observații

Pentru parametrul zecimale , valoarea maximă este 16. Dacă utilizați un număr mai mare, metoda primește în schimb o valoare pentru parametrul zecimale de pe computerul local. În ambele cazuri, are loc rotunjirea. Iată valorile posibile de enumerare pentru parametrul separator1 :

  • 99 – Auto (setările de formatare ale utilizatorului determină ce separator zecimal este utilizat), valoarea de enumerare ZecimalSeparator::Auto
  • 1 – Punct (.), valoare enumerare zecimalSeparator::D ot
  • 2 – Virgulă (,), valoare enumerare ZecimalSeparator::Virgulă

Iată valorile posibile pentru parametrul separator2 :

  • 99 – Auto (setările de formatare ale utilizatorului determină ce mie de separatori se utilizează)
  • 0 – Fără (fără separator de mii), valoare de enumerare MiiSeparator::Fără
  • 1 – Punct (.), valoare enumerare MiiSeparator::D ot
  • 2 – Virgulă (,), valoare enumerare MiiSeparator::Virgulă
  • 3 – Apostrof ('), valoare enumerare MiiSeparator::Apostrof
  • 4 – Spațiu ( ), valoare de enumerare MiiSeparator::Spațiu

Exemplu

În următorul exemplu de cod, primul apel la metoda num2str furnizează 16 pentru parametrul zecimale , iar al doilea apel furnizează 17.

static void Job_Num2Str(Args _args)
{
    real realNum = 0.1294567890123456777; // 19 decimals places.
    info(Num2Str(realNum, 0, 16, DecimalSeparator::Dot, ThousandSeparator::Space)); // 16 decimal places
    info(Num2Str(realNum, 0, 17, DecimalSeparator::Dot, ThousandSeparator::Space)); // 17 decimal places
}

Ieșire

Mesajele se află în următorul grafic de informații. Primul număr din ieșire conține 16 cifre zecimale, în timp ce al doilea număr conține doar două cifre zecimale.

Message (10:18:12)
0.1294567890123457
0.13

str2Date

Efectuează conversia șirului specificat într-o valoare dată .

date str2Date(str _text, str _sequence)

Parametri

Parametru Descriere
_Text Șirul de convertit la o valoare dată .
_secvență Un număr întreg de trei cifre care descrie pozițiile zilei, lunii și anului din șir pentru conversie.

Valoare returnată

O valoare de dată .

Observații

Utilizați următoarele valori pentru a specifica pozițiile zilei, lunii și anului în parametrul _sequence :

  • Ziua: 1
  • Lună: 2
  • An: 3

De exemplu, dacă secvența din șir este lună, an, apoi zi, parametrul _sequence trebuie să fie 231. Se returnează o dată 0 (zero) dacă parametrii de intrare specifică o dată nevalidă. Următoarele două exemple specifică o dată nevalidă.

str2Date("31/12/44", 123) // Year must be four digits to reach the minimum of January 1 1901.
str2Date("31/12/2044", 213) // 213 means the month occurs first in the string, but 31 cannot be a month.

Exemplu

static void str2DateExample(Args _arg)
{
    date d;
    d = str2Date("22/11/2007", 123);
    print d;
}

str2Datetime

Generează o valoare utcdatetime din șirul specificat de informații despre dată și oră.

utcdatetime str2datetime( str text, int sequence )

Parametri

Parametru Descriere
text Șirul de convertit la o valoare utcdatetime .
secvență Un număr din trei cifre care descrie secvența componentelor de dată din parametrul text .

Valoare returnată

O valoare utcdatetime care reprezintă data și ora specificate.

Observații

Cerințele de sintaxă pentru porțiunea de dată a parametrului de text sunt flexibile. Varietatea de formate valide este la fel ca în funcția date2str . Fiecare dintre următoarele apeluri către str2datetime este valid și toate produc aceeași ieșire.

utc3 = str2datetime( "1985/02/25 23:04:59" ,321 );
utc3 = str2datetime( "Feb-1985-25 11:04:59 pm" ,231 );
utc3 = str2datetime( "2 25 1985 11:04:59 pm" ,123 );

Fiecare componentă a datei calendaristice este reprezentată de o cifră din parametrul secvenței :

  • 1 – Ziua
  • 2 – Lună
  • 3 – An

De exemplu, anul, luna, comanda de zi este 321. Toate valorile valide conțin fiecare dintre aceste trei cifre exact o dată. Dacă valoarea parametrului de secvență nu este validă, setările regionale sunt utilizate pentru a interpreta parametrul text de intrare. Dacă parametrii de intrare descriu o dată și o oră nevalidă, se returnează un șir gol.

Exemplu

static void JobTestStr2datetime( Args _args )
{
    utcdatetime utc3;
    str sTemp;
    utc3 = str2datetime( "1985/02/25 23:04:59" ,321 );
    sTemp = datetime2str( utc3 );
    print( "sTemp == " + sTemp );
}

str2Enum

Regăsește elementul de enumerare pentru care valoarea proprietății Etichetă localizată se potrivește cu șirul de intrare.

enum str2Enum(enum _type, str _text)

Parametri

Parametru Descriere
_tip O variabilă pe care o declarați ca tip de enumerare .
_Text Textul proprietății Etichetă localizată a elementului țintă din enumerare.

Valoare returnată

Un element al enumerarii țintă, care reprezintă, de asemenea, un int.

Observații

Enumerarea funcției asociate2str returnează valoarea unei proprietăți Label dintr-un element din enumerare. Valoarea returnată de funcția enum2str poate fi intrarea pentru parametrul _type al funcției str2enum . O valoare corespunzătoare pentru parametrul _text este enum2Str(BankAccountType::SavingsAccount). Fiecare element al unei enumerari are o proprietate Name și o proprietate Label . Într-o instalare nouă, valorile Nume sunt aproape întotdeauna cuvinte în limba engleză. În ediția engleză, valoarea proprietății Label este aproape întotdeauna aceeași cu valoarea Name . Cu toate acestea, în edițiile non-engleză, valorile Etichetă sunt localizate și, prin urmare, nu se potrivesc cu valorile Nume .

Exemplu

Pentru a evita nepotriviri de șiruri care localizează la alte limbi vorbite cauze, utilizați funcția enum2str pentru a genera intrarea în funcția str2enum . Următorul exemplu arată modul potrivit de a utiliza funcția str2enum împreună cu funcția enum2str .

static void str2Enum_AcrossLangs(Args _arg)
{
    BankAccountType bat;
    str sEnumValueLabelLocalized;
    int nInt;
    // enum2str.
    sEnumValueLabelLocalized = enum2str(BankAccountType::SavingsAccount);
    info("Localized friendly string: "
        + sEnumValueLabelLocalized);
    // str2enum.
    bat = str2Enum(bat, sEnumValueLabelLocalized);
    nInt = bat;
    info("nInt = " + int2str(nInt));
    /********** Actual output:
    Message (04:32:12 pm)
    Localized friendly string: Savings account
    nInt = 1
    **********/
}

str2Guid

Efectuează conversia unui șir într-un obiect GUID.

Guid str2Guid(str text)

Parametri

Parametru Descriere
Guid Un șir care reprezintă un GUID.

Valoare returnată

Un GUID pe care îl reprezintă șirul de intrare.

Observații

De exemplu, o valoare validă pentru parametrul GUID este {12345678-1234-abCD-3456-123456789012}, cu sau fără acolade.

str2Int

Efectuează conversia unui șir în întreg echivalent.

int str2Int(str _text)

Parametri

Parametru Descriere
_Text Șirul de convertit într-un întreg.

Valoare returnată

Este echivalentul întreg al șirului specificat.

Exemplu

static void str2IntExample(Args _arg)
{
    int i;
    i = str2Int("1234567890");
    print "i = " + int2Str(i);
}

str2Int64

Efectuează conversia unui șir într-o valoare Int64 .

int str2Int64(str text)

Parametri

Parametru Descriere
text Șirul de convertit.

Valoare returnată

Valoarea Int64 a șirului specificat.

Exemplu

static void str2Int64Example(Args _args)
{
    str myStr;
    str tooBig;
    Int64 myInt64;
    myStr = "1234567890";
    tooBig = int642str(int64Max()+1);
    myInt64 = str2Int64(mystr);
    print strfmt ("int64: %1",myInt64);
    myInt64 = str2Int64(tooBig);
    print strfmt ("Too big int64: %1",myInt64);
}

str2Num

Efectuează conversia unui șir într-un număr real.

real str2Num(str _text)

Parametri

Parametru Descriere
_Text Șirul de convertit într-un număr real.

Valoare returnată

Numărul real dacă șirul specificat conține un număr valid; altfel, 0 (zero).

Observații

Următoarele exemple vă arată cum să utilizați această funcție.

str2Num("123.45") returns the value 123.45.
str2Num("a123") returns the value 0.0.
str2Num("123a") returns the value 123.00.

Scanarea are loc de la stânga la dreapta și se termină atunci când un caracter nu poate fi convertit într-o parte a unui număr real.

Exemplu

static void str2NumToReal(Args _arg)
{
    real r;
    str s;
    r = str2Num("3.15");
    s = strFmt("r = %1", r);
    info(s);
}
/*** Infolog output.
Message_@SYS14327 (02:36:12 pm)
r = 3.15
***/

static void str2NumExponentialSyntax(Args _args)
{
    Qty qty1, qty2, qty3;
    qty1 = str2num('1e-3'); // Bad syntax by the user.
    qty2 = str2num('1.e-3');
    qty3 = str2num('1.0e-3');
    info(strfmt('Result: %1; Expected: %2', num2str(qty1, 0,3,2,0), '0.001'));
    info(strfmt('Result: %1; Expected: %2', num2str(qty2, 0,3,2,0), '0.001'));
    info(strfmt('Result: %1; Expected: %2', num2str(qty3, 0,3,2,0), '0.001'));
}
/*** Infolog output. The first result differs from expectations.
Message_@SYS14327 (02:20:55 pm)
Result: 1,000; Expected: 0.001
Result: 0,001; Expected: 0.001
Result: 0,001; Expected: 0.001
***/

str2Time

Efectuează conversia unui șir într-o valoare timeOfDay .

int str2Time(str _text)

Parametri

Parametru Descriere
_Text Este timpul de utilizat pentru a calcula numărul de secunde de la miezul nopții.

Valoare returnată

Numărul de secunde dintre miezul nopții și parametrul _text ; altfel, -1.

Observații

str2Time("05:01:37") //Returns the value 18097.
str2Time("7 o'clock") //Returns the value -1.

Exemplu

static void str2TimeExample(Args _arg)
{
    int i;
    i = str2Time("11:30");
    print i;
}

time2Str

Efectuează conversia unei valori timeOfDay într-un șir care include ore, minute și secunde.

str time2Str(int _time, int _separator, int _timeFormat)

Parametri

Parametru Descriere
_Oră O valoare timeOfDay .
_separator O valoare de enumerare TimeSeparator care indică caracterele dintre orele, minutele și secundele din șirul de ieșire.
_timeFormat O valoare de enumerare TimeFormat care indică dacă se utilizează un ceas de 12 ore sau un ceas de 24 de ore.

Valoare returnată

Este un șir care reprezintă ora specificată.

Observații

Valoarea parametrului _time este numărul de secunde de la miezul nopții.

Exemplu

static void TimeJob4(Args _args)
{
    timeOfDay theTime = timeNow();
    info( time2Str(theTime, TimeSeparator::Colon, TimeFormat::AMPM) );
}
/**
Message (04:33:56 pm)
04:33:56 pm
**/

uint2Str

Efectuează conversia unui număr întreg într-un șir. Această funcție presupune că întregul este nesemnat.

str uint2Str(int integer)

Parametri

Parametru Descriere
întreg Este numărul întreg de convertit.

Valoare returnată

Este echivalentul șirului întreg nesemnat specificat.

Observații

Utilizați această funcție în locul funcției int2str pentru numere întregi foarte mari, cum ar fi ID-uri de înregistrare.

info(int2str(3123456789)); //returns -1171510507 as a string.
info(uint2str(3123456789)); //returns 3123456789 as a string.