Ինչպե՞ս նշել դատարկ ամսաթիվ հարցման մեջ: 1-ին անգամ խնդրանքով։

Շատ հաճախ 1C հարցումներում դուք պետք է աշխատեք ամսաթվերի հետ: Հատկապես, երբ հարցումը կատարվում է մետատվյալների օբյեկտներին, որոնք պարունակում են պարբերական տեղեկատվություն: Որպես կանոն, դրանք ռեգիստրներ են (տեղեկատվություն, կուտակում, հաշվարկ, հաշվառում): Դիտարկենք 1C հարցումների լեզվի ամենատարածված գործառույթները՝ ամսաթվերի հետ աշխատելու համար: Մենք օրինակներ կկառուցենք տեղեկատվական ռեգիստրի հիման վրա ԱշխատակիցներԿազմակերպություններ ZUP կոնֆիգուրացիաների տարբերակ 2.5.

  • Ամսաթիվ ԺԱՄԱՆԱԿ

    Թույլ է տալիս Ձեզ ստանալ հայտի ամսաթիվ (ժամանակով կամ առանց ժամանակի)՝ նշելով տարին, ամիսը, օրը, ժամը, րոպեն, վայրկյանը:
    Շարահյուսություն:
    DATETIME (տարի, ամիս, օր, ժամ, րոպե, վայրկյան)
    Սովորաբար ժամը, րոպեն և վայրկյանը նշված չեն: Եկեք մի մինի օրինակ բերենք. Հարցման վահանակում մուտքագրեք հետևյալ տեքստը.

    SELECT DATETIME (2016, 1, 1)

    Հարցման կատարման արդյունքում ստանում ենք ամսաթիվ՝ 01.01.2016թ
    Իրականում դժվար է պատկերացնել մի իրավիճակ, երբ խնդրանքում ամսաթիվն այսպես նշվի։ Ի վերջո, երբ դուք պետք է նշեք ժամկետ, օգտագործվում են պարամետրեր: Բայց կա դեպք, երբ այս ֆունկցիան առանձնահատուկ արժեք ունի։ Սա այն դեպքում, երբ մենք պետք է դաշտերում կամ հարցումների պայմաններում նշենք դատարկ ամսաթիվ: Հիշեցնեմ, որ 1C լեզվի համար դատարկ ամսաթիվունի ձևը` 0001.01.01. Այսպիսով, հարցումում դատարկ ամսաթիվ ստանալու համար պարզապես նշեք DATETIME (1, 1, 1). Որպես օրինակ՝ ընտրենք տեղեկատվական ռեգիստրից ԱշխատակիցներԿազմակերպություններգրառումներ, որոնք չեն լրացվում Ավարտման ժամկետը:

    SELECT Organizational Employees.Period, Organizational Employees.Employee, Organizational Employees.Position, Organizational Employees.Organization Division FROM Register Information.Organizational Employees AS Organizational Employees WHERE Organizational Employees.Ավարտման ժամանակաշրջան = DATETIME(1, 1)

  • ԺԱՄԱՆԱԿԻ ՍԿԶԲԸ

    Համար նշված ամսաթիվըվերադարձնում է այն ժամանակաշրջանի սկիզբը, որի մեջ մտնում է:
    Շարահյուսություն:
    ԺԱՄԱՆԱԿԱՇՐՋԱՆԻ ՄԵԿՆԱՐԿ (ամսաթիվ, ժամանակաշրջանի տեսակ)
    PeriodType-ը կարող է ընդունել հետևյալ արժեքները. ՐՈՊԵ, ԺԱՄ, ՕՐ, ՇԱԲԱԹ, ԱՄԻՍ, ԵՌԱՄՍՅԱԿ, ՏԱՐԻ, Տասնամյակ, ԿԵՍ ՏԱՐԻ
    Հարցման վահանակում մուտքագրեք.

    ԸՆՏՐԵՔ ԺԱՄԱՆԱԿԱՀԱՏՎԱԾԻ ՍԿՍԻԶԲ (ԱՄՍՎԱԾ ԺԱՄԱՆԱԿ(2016, 1, 15), ԱՄԻՍ)

    Հարցումը կվերադառնա - 01/01/2016
    Իսկ հիմա օրինակ. Ինչպես գիտեք, ռեգիստրի պարբերականությունը ԱշխատակիցներԿազմակերպություններմի օր. Եկեք ստեղծենք հարցում, որում փաստացի ռեկորդային ժամանակահատվածի փոխարեն կցուցադրվի ամսվա սկզբի ամսաթիվը:

    SELECT BEGINNING OF PERIOD(Employees of Organizations.Period, MONTH) AS Սկիզբը, Employees of Organizations.Employee, Employee of Organizations.Position, Employees of Organizations.Organization of Division FROM Register Information.Employees of Organizations AS Employees of Organizations.

  • ԺԱՄԱՆԱԿԻ ՎԵՐՋ

    Շարահյուսությունը նույնն է, ինչ ժամանակաշրջանի սկզբի համար: Եվ ինչպես ենթադրում է անունը, այն վերադարձնում է ժամանակաշրջանի ավարտը ըստ ամսաթվի և ժամանակաշրջանի տեսակի: Մենք դա մանրամասն չենք դիտարկի։ Սահմանափակվենք մինի օրինակով.
    Հայց.

    ԸՆՏՐԵՔ ԺԱՄԱՆԱԿԱՇՐՋԱՆԻ ԱՎԱՐՏԸ (DATETIME (2016, 1, 15), ԱՄԻՍ)

    Վերադարձ 31.01.2016 23:59:59
    Ինչպես տեսնում եք, արժեքը ճշգրիտ վերադարձվում է երկրորդին:

  • ADDKDATE

    Ամսաթվին ավելացնում է նշված թվով ժամանակային ընդմիջումներ:
    Շարահյուսություն:
    ADDKDATE (ամսաթիվ, ժամանակաշրջանի տեսակ, քանակ)
    PeriodType-ն ընդունում է նույն արժեքները, ինչ ֆունկցիայի համար ԺԱՄԱՆԱԿԻ ՍԿԶԲԸ
    Օրինակ՝ ընտրենք փետրվարի ամսաթիվը.

    SELECT ADDKDATE(DATETIME(2016, 2, 15), MONTH, 2)

    Մենք ստանում ենք ամսաթիվ 04/15/2016 0:00:00 Չնայած այն հանգամանքին, որ փետրվարը կարճ ամիս է, ստացված ամսաթվի օրը նույնն է, ինչ սկզբնականը: Շատ հարմար է, որ դուք ստիպված չեք լինի մտածել ամիսների օրերի քանակի մասին:
    Քանակը կարող է լինել նաև բացասական։ Այնուհետեւ միջակայքը հաշվում են հակառակ ուղղությամբ։

  • ՏԱՐԲԵՐՎԵԼ

    Հաշվեք նշված միավորներում երկու ամսաթվերի տարբերությունը:
    Շարահյուսություն:
    ԱՄՍԹՎԱՅԻ ՏԱՐԲԵՐՈՒԹՅՈՒՆ (Սկիզբի ամսաթիվ, ավարտի ամսաթիվ, ժամանակաշրջանի տեսակ)
    Ժամանակահատվածի տեսակը կարող է վերցնել հետևյալ արժեքները. ԵՐԿՐՈՐԴ, ՐՈՊԵ, ԺԱՄ, ՕՐ, ԱՄԻՍ, ԵՌԱՄՍՅԱԿ, ՏԱՐԻ
    Օրինակ:

    ԸՆՏՐԵԼ ՏԱՐԲԵՐՈՒԹՅՈՒՆԸ (DATETIME (2016, 2, 15), DATETIME (2016, 3, 1), DAY)

    վերադարձնում է 15

Այստեղ մենք վերանայեցինք 1C հարցումների լեզվի առավել հաճախ օգտագործվող գործառույթները: Մնացածները բավականին հազվադեպ են օգտագործվում։ Անհրաժեշտության դեպքում նրանց հետ աշխատելու օրինակները կարելի է գտնել 1C հարթակում ներկառուցված օգնության մեջ:

43
NULL – բացակայող արժեքներ: Չպետք է շփոթել զրոյական արժեքի հետ: NULL-ը թիվ չէ, չի հավասարվում բացատին, դատարկ հղումին կամ Չսահմանվածին: NULL-ը տիպի ձևավորող արժեք է, այսինքն. կա NULL տեսակ և այս տեսակի մեկ արժեք: ԴԱՏԱՐԿ... 26
1C հարթակում տվյալների բազայի աղյուսակներում հարցումներ ստեղծելու և գործարկելու համար օգտագործվում է Query ծրագրավորման լեզվի հատուկ օբյեկտ: Այս օբյեկտը ստեղծվում է՝ կանչելով New Request կառուցվածքը: Հարմար խնդրանք... 18
Հոդվածում ներկայացված են օգտակար տեխնիկա 1C v.8.2 հարցումների հետ աշխատելիս, ինչպես նաև տեղեկություններ, որոնք այնքան էլ հայտնի չեն հարցումների լեզվի մասին: Ես չեմ փորձում տալ Ամբողջական նկարագրությունհարցման լեզուն, բայց ես պարզապես ուզում եմ կանգ առնել... 13
LIKE - Օպերատոր, որը ստուգում է տողը օրինաչափության նմանության համար: LIKE-ի անալոգը SQL-ում: SIMILAR օպերատորը թույլ է տալիս համեմատել դրա ձախ կողմում նշված արտահայտության արժեքը աջ կողմում նշված օրինաչափության տողի հետ: Արտահայտության իմաստը...

1C կոնֆիգուրացիաներում առկա բոլոր փաստաթղթերը և, հետևաբար, գրեթե բոլոր ռեգիստրները պետք է ունենան առնվազն մեկ հատկանիշ Date տեսակի հետ, այդ իսկ պատճառով յուրաքանչյուր մշակող պետք է իմանա և հասկանա.

  • Ինչպես փոխարկել այլ տեսակների պարամետրերը տվյալ տեսակին.
  • Ինչպես որոշել դատարկ ամսաթիվը 1C հարցումում;
  • Ո՞րն է տարբերությունը ամսաթվի և ժամկետի միջև:

Հենց այս հարցերին մենք կփորձենք պատասխանել մեր հոդվածում։

Ինչ է ամսաթիվը և ինչպես որոշել այն

Քանի որ կառավարման որոշումների մեծ մասի կայացումը և գրառումների պահպանումը չի պահանջում 1 վայրկյանից ավելի ժամանակի ճշգրտություն, 1C պլատֆորմի մշակողները որոշեցին, որ այս արժեքը կլինի բացարձակ նվազագույնը ամսաթվի ձևաչափում: Այսպիսով, ծրագրում իրադարձության ժամանակը նկարագրող յուրաքանչյուր հատկանիշ պետք է պարունակի.

  • Իրադարձության տեղի ունեցած տարին;
  • Այս իրադարձության ամիսը;
  • Օր.

Պետք չէ նշել՝ ժամ, րոպե և վայրկյան։ Եթե ​​այս երեք պարամետրերը բաց թողնվեն, և չկան լրացուցիչ պայմաններ, ծրագիրը ավտոմատ կերպով սահմանում է ժամը օրվա սկզբին:

Աշխարհում գոյություն ունեցող ամսաթվերի ձևաչափերը էական տարբերություններ ունեն.

  1. Ռուսաստանում մենք սովոր ենք սկզբում դնել օրը, հետո միջոցառման ամիսը, իսկ վերջում՝ տարին;
  2. ԱՄՆ բնակիչները ամսաթիվը սկսում են ամսով.
  3. Չեխերը, լեհերը և սլովենացիները գրանցում են ժամանակաշրջաններ Տարի-Ամիս-Օր ձևաչափով:

Հենց վերջին ձևաչափն է օգտագործում 1C հարթակը։

Փոխակերպել ամսաթվի

Մի քանի արժեքներից կամ տողից Date տեսակի պարամետր ստանալու համար դուք պետք է օգտագործեք Նկ. 1

Ինչպես երևում է վերևի նկարից, դուք կարող եք որոշել ամսաթիվը կամ օգտագործելով մեկ տող, կամ այս տողը բաժանելով իր բաղադրիչ մասերի ստորակետի միջոցով, արդյունքը չի փոխվի:

Կարևոր է հասկանալ, որ ամսաթվի տարեթիվը պետք է պարունակի չորս թվանշան, ներառյալ իրադարձության հազարամյակն ու դարը, ամիսը, օրը, ժամերը և վայրկյանները պետք է պարունակեն երկու նիշ, ներառյալ սկզբնական զրոները:

Ծրագրում ժամանակի հետհաշվարկը սկսվում է 0001 թվականի հունվարի 1-ի օրվա սկզբից։ Վերը նշված կոդի համար այս արժեքը կարող է որոշվել երկու եղանակներից մեկով (Նկար 2):

Բրինձ. 2

Երկրորդ տողում մենք բաց ենք թողել իրադարձության ժամերը, րոպեները և վայրկյանները, ինչը բացարձակապես չի ազդել մեր կոդի աշխատանքի վրա։

1C հարցումներում ամսաթվի օգտագործման առանձնահատկությունները

1C պլատֆորմի կողմից օգտագործվող տվյալների տեսակների մեծ մասի համար կան նախապես սահմանված դատարկ արժեքներ: Թվերի համար սա 0 է, հղումների համար կարող եք սահմանել EmptyLink(); ամսաթվի համար դատարկ արժեքը սովորաբար համարվում է մեկնարկի ամսաթիվը, դրա հետ է, որ համապատասխան տեսակի մանրամասները պետք է համեմատվեն, երբ հայտի պարամետրերի կարգավորում:

Կարևոր է հասկանալ, որ նույնիսկ եթե ձևի հատկանիշի արժեքում թվեր չեն նշվում, որն ունի տվյալ տեսակը, այսինքն՝ պատուհանը նման է (նկ. 3), դա չի նշանակում, որ դրանում ոչինչ նշված չէ. Այս պարամետրի համեմատությունը դատարկ տողի հետ չի աշխատի:

Բրինձ. 3

Ստանալով դատարկ ամսաթիվ՝ մենք կարող ենք այն նշել որպես մեր հարցման պարամետր, այսինքն՝ օգտագործել կոնստրուկցիան (նկ. 4)

Այնուամենայնիվ, կան ժամանակներ, երբ ավելի լավ է ստուգել հարցման մարմնի ներսում, առանց դատարկ ամսաթիվը որպես պարամետր անցնելու: Դա անելու համար կարող եք հարցումի կոդում մուտքագրել համապատասխան պայմանը (նկ. 5) և օգտագործել DateTime() հարցման ֆունկցիան։

Բրինձ. 5

Վերը նշված հարցման տեքստում մենք բաց թողեցինք տարվա, ամսվա և օրվա առաջատար զրոները, ինչպես նաև չնշեցինք ժամերը, րոպեները և վայրկյանները, և ծրագիրը, ինչպես ասում են, խժռեց այս ենթադրությունը:

Ամսաթվի և ժամի սահմանը

Մեկ այլ հետաքրքիր փաստՀարցումների և ամսաթվերի միջև կապի հետ կապված է «ժամանակի կետ» հասկացության օգտագործումը տվյալների բազայի տարբեր աղյուսակներ մուտք գործելիս:

Տեխնիկական փաստաթղթերում նշված «մինչև միլիվայրկյան» ճշգրտությունը պարզունակ Date տեսակը նկարագրելիս առավել հստակ դրսևորվում է կուտակման ռեգիստրի վիրտուալ աղյուսակներից գրառումներ ընտրելիս. և Մնացած և Շրջանառության աղյուսակները, այնուհետև իրականացվել է դրանցից ընտրություն որոշակի ժամանակ, կարող է տարբեր արդյունքներ տալ։

Հասկանալու համար, թե ինչպես և ինչու է դա տեղի ունենում, հաշվի առեք մի պարզ օրինակ.

  1. Մինչ վաճառքի փաստաթղթի կատարումը 12 ժամ 31 րոպե 36 վայրկյան, մնացորդները, ըստ Շաքարի անվանացանկի, կազմում էին 30 կգ.
  2. Փաստաթուղթը նշված ժամին դուրս է գրել 10 կգ.
  3. Փաստաթղթի ամսաթվին 12 ժամ 31 րոպե 36 վայրկյանում ստեղծված հաշվետվությունը, ըստ Մնացած աղյուսակի, ցույց կտա 30 կգ մնացորդը.
  4. Նույն հաշվետվությունը սեղանի վրա «Մնացորդներ» և «Շրջանառություններ» նույն ժամանակում ցույց կտա 20 կգ մնացորդ:

Ինչո՞վ է պայմանավորված այս պահվածքը և ինչպե՞ս խուսափել դրանից:

Խնդիրն այն է, որ Մնացած աղյուսակում ժամանակաշրջանը նշված է որպես բաց հատված, այսինքն՝ հաշվետվության ստեղծման պահին կատարված շարժումները հաշվի չեն առնվում, այսինքն՝ ժամանակը վերցվում է նշված երկրորդի սկզբում։ պարամետրում. Միևնույն ժամանակ, Շրջանառությունների աղյուսակի և Մնացորդների և Շրջանառությունների աղյուսակի համար հաշվի են առնվում ժամանակային սահմանները, այսինքն՝ ժամանակը վերցվում է նշված վայրկյանի վերջում:

Այս իրավիճակից մի քանի ելքեր կան.

  1. Մնացորդների աղյուսակն օգտագործելիս նշեք նշվածից 1 վայրկյանով մեծ ժամանակային կետ.
  2. Օգտագործեք միայն մնացորդների և շրջանառությունների աղյուսակը (գործողության տեսանկյունից ամենաօպտիմալ տարբերակը չէ);
  3. Օգտագործեք սահման հասկացությունը:

Վերջին տարբերակը կարող է ներկայացվել Նկ. 6.

Մեր օբյեկտի առաջին պարամետրում մենք նշում ենք այն ամսաթիվը, որի համար պետք է ստեղծվի զեկույցը, երկրորդ պարամետրը որոշում է եզրագծի տեսակը: Քանի որ մեզ համար կարևոր է, որ տվյալ ամսաթվի շարժումները ներառվեն ընտրության մեջ, մենք պետք է այս պարամետրը դնենք «Ներառում» դիրքի վրա:

1C հարցումները, ինչպես նաև 1C:Enterprise հարթակի ներկառուցված լեզուն ունեն ամսաթվերի հետ աշխատելու գործառույթներ։ Դրանք օգնում են պարզեցնել հարցումներում ամսաթվերի փոխարկումները և խուսափել մեծ թվով պարամետրեր օգտագործելուց: Եկեք նայենք այս գործառույթներին:

Ինչպես նշել ամսաթիվը 1C հարցումներում որպես հաստատուն

DATETIME (տարի, ամիս, օր, ժամ, րոպե, վայրկյան). Ընտրանքներ Տարի, ամիսԵվ Օրպարտադիր են, մյուսները՝ ոչ։ Եթե ​​ժամը չնշեք, համակարգը կսահմանի օրվա սկիզբը:

Հայց. Տեքստ = «ԸՆՏՐԵՔ
DATETIME (2016,09,28,12,22,00)»
; // Արդյունք՝ 28 սեպտեմբերի, 2016 12:22:00

Բացի այդ, միայն թվերը կարող են հստակորեն նշվել որպես այս ֆունկցիայի պարամետրեր: Դուք չեք կարող նշել այլ գործառույթների արժեքները որպես պարամետրեր: Օրինակ, այս շինարարությունը չի աշխատի.

Հայց. Տեքստ = «ԸՆՏՐԵՔ
DATETIME (տարի (Աղբյուր.Date),09,28,12,22,00)
Directory.Source AS Աղբյուրից»
;

Ինչպես ստանալ տարվա սկիզբը կամ ավարտը, կես տարի, եռամսյակ, ամիս, տասնամյակ, շաբաթ, օր, ժամ, րոպե 1C հարցումներում

Դրա համար օգտագործվում են հետևյալ գործառույթները.

  • Մեկնարկային ժամանակաշրջան (ամսաթիվ, ժամանակաշրջան)
  • Վերջնաժամկետ (ամսաթիվ, ժամանակաշրջան)

Որպես պարամետր ամսաթիվըփոխանցվում է տիպի արժեք Ամսաթիվը.Պարամետր Ժամանակաշրջան .

Հայց. Տեքստ = «ԸՆՏՐԵՔ
Մեկնարկի ժամանակաշրջան (DATETIME (2016,09,28,12,22,00), Տասնամյակ)"
; // Արդյունք՝ 21 սեպտեմբերի, 2016 0:00:00

Հայց. Տեքստ = «ԸՆՏՐԵՔ
Վերջնաժամկետ (DATETIME (2016,09,28,12,22,00), QUARTER)"
; // Արդյունք՝ սեպտեմբերի 30, 2016 23:59:59

Ինչպես տեսնում եք օրինակներից, այս գործառույթներում կարող եք օգտագործել այլ ներդիր ֆունկցիաներ:

Ինչպես ստանալ տարեթիվը, տարվա օրը, եռամսյակը, ամիսը, շաբաթը, շաբաթվա օրը, օրը, ժամը, րոպեն, վայրկյանը ամսաթվից 1C հարցումներում

Դա անելու համար կան համապատասխան գործառույթներ, որոնց պետք է փոխանցեք ամսաթիվը որպես պարամետր:

  • Գործառույթ ՏԱՐԻ (ամսաթիվ)— վերադարձնում է տարվա համարը.
  • Գործառույթ DAYYEAR (ամսաթիվ)— ավելացնում է տարվա օրերի քանակը.
  • Գործառույթ QUARTER (ամսաթիվ)— վերադարձնում է եռամսյակի համարը.
  • Գործառույթ MONTH (ամսաթիվ)— վերադարձնում է ամսվա համարը.
  • Գործառույթ ՇԱԲԱԹ (ամսաթիվ)— վերադարձնում է տարվա շաբաթվա թիվը.
  • Գործառույթ ՇԱԲԱԹՎԱ ՕՐ (ամսաթիվ)— վերադարձնում է շաբաթվա օրերի թիվը (երկուշաբթի — 1, կիրակի — 7);
  • Գործառույթ DAY (ամսաթիվ)— վերադարձնում է ամսվա օրվա թիվը.
  • Գործառույթ HOUR (ամսաթիվ)— վերադարձնում է ժամը;
  • Գործառույթ MINUTE (ամսաթիվ)— վերադարձի րոպեներ;
  • Գործառույթ SECOND (ամսաթիվ)— վերադառնում է վայրկյաններ:

Հայց. Տեքստ = «ԸՆՏՐԵՔ
ՏԱՐԻ (DATETIME (2016,09,28,12,22,00))"
; // Արդյունք՝ 2016թ

Հայց. Տեքստ = «ԸՆՏՐԵՔ
WEEK(DATETIME (2016,09,28,12,22,00))"
; // Արդյունք՝ 40

Հայց. Տեքստ = «ԸՆՏՐԵՔ
ՇԱԲԱԹՕՐ (DATETIME (2016,09,28,12,22,00))"
; // Արդյունք՝ 3

Հայց. Տեքստ = «ԸՆՏՐԵՔ
ՕՐՅԱ (DATETIME (2016,09,28,12,22,00))"
; // Արդյունք՝ 272

Հայց. Տեքստ = «ԸՆՏՐԵՔ
DAY(DATETIME (2016,09,28,12,22,00))"
; // Արդյունք՝ 28

Ինչպես գումարել կամ հանել ամսաթվից տարին, կիսամյակը, եռամսյակը, ամիսը, տասնամյակը, շաբաթը, օրը, ժամը, րոպեն, վայրկյանը 1C հարցումներում

Դա անելու համար օգտագործեք գործառույթը AddToDate (ամսաթիվ, ժամանակաշրջան, արժեք):

Որպես պարամետր ամսաթիվըփոխանցվում է տիպի արժեք Ամսաթիվը.Պարամետր Ժամանակաշրջանկարող է վերցնել հետևյալ արժեքներից մեկը. ԵՐԿՐՈՐԴ, ՐՈՊԵ, ԺԱՄ, ՕՐ, ՇԱԲԱԹ, Տասնամյակ, ԱՄԻՍ, ԵՌԱՄՍՅԱԿ, ԿԵՍՏԱՐԻ, ՏԱՐԻ.

Պարամետր Իմաստըցույց է տալիս ավելացվելիք ժամանակաշրջանների քանակը: Եթե ​​ժամկետը պետք է հանել, ապա պարամետրը Իմաստըպետք է բացասական լինի.

Հայց. Տեքստ = «ԸՆՏՐԵՔ
AddToDate(DATETIME(2016, 9, 28, 12, 22, 0), ԿԵՍ ՏԱՐԻ, 1)"
; // Արդյունք՝ 28.03.2017 12:22:00

Հայց. Տեքստ = «ԸՆՏՐԵՔ
ԱվելացնելKDate(DATETIME(2016, 9, 28, 12, 22, 0), DECADE, -1)"
; // Արդյունք՝ 18 սեպտեմբերի, 2016 12:22:00

Ինչպես հաշվարկել ամսաթվի տարբերությունը 1C հարցումներում

Դա անելու համար օգտագործեք գործառույթը DifferenceDate (Ամսաթիվ 1, Ամսաթիվ 2, ժամանակաշրջան):

Պարամետր Ամսաթիվ 1- հանման ամսաթիվը.

Պարամետր Ամսաթիվ 2 —ամսաթիվ, որից պետք է հանել.

Պարամետր Ժամանակաշրջանկարող է վերցնել հետևյալ արժեքներից մեկը. ԵՐԿՐՈՐԴ, ՐՈՊԵ, ԺԱՄ, ՕՐ, ԱՄԻՍ, ԵՌԱՄՍՅԱԿ, ՏԱՐԻ. Այն ցույց է տալիս, թե ինչ միավորներով ենք ուզում արդյունք ստանալ

Հայց. Տեքստ = «ԸՆՏՐԵՔ
DifferenceDate(DATETIME(2016, 9, 28, 12, 22, 0), DATETIME(2017, 9, 28, 12, 22, 0), QUARTER)"
; // Արդյունք՝ 4

Հայց. Տեքստ = «ԸՆՏՐԵՔ
DifferenceDate(DATETIME(2016, 9, 28, 12, 22, 0), DATETIME (2017, 9, 28, 12, 22, 0), Երկրորդ)"
; // Արդյունք՝ 31.536.000

Բոլոր գործառույթներում, բացի ֆունկցիայից Ամսաթիվ ԺԱՄԱՆԱԿ, որպես պարամետր ամսաթիվըկարող է լինել ոչ միայն կոնկրետ ամսաթվի արժեք (հաստատուն կամ հարցման պարամետր), այլ նաև աղբյուրի աղյուսակի դաշտեր:



սխալ:Բովանդակությունը պաշտպանված է!!