1c хүсэлтэд одоогийн огноог хэрхэн зааж өгөх вэ. Өнөөг хүртэл хөрвүүлэх

1С асуулга, түүнчлэн 1C: Enterprise платформын суулгасан хэл нь огноотой ажиллах функцтэй байдаг. Эдгээр нь ашиглахаас зайлсхийж, асуулгад огнооны хөрвүүлэлтийг хялбарчлахад тусалдаг их хэмжээгээрпараметрүүд. Эдгээр функцуудыг авч үзье.

1С асуулгад огноог хэрхэн тогтмол болгох вэ

DATETIME (жил, сар, өдөр, цаг, минут, секунд). Сонголтууд Жил, сарТэгээд Өдөрзаавал байх ёстой, бусад нь тийм биш. Хэрэв та цагийг заагаагүй бол систем нь өдрийн эхлэлийг тохируулах болно.

Хүсэлт. Текст = "СОНГО
DATETIME (2016,09,28,12,22,00)"
; // Үр дүн: 2016 оны 9-р сарын 28-ны 12:22:00

Нэмж дурдахад зөвхөн тоонуудыг энэ функцийн параметр болгон тодорхой зааж өгч болно. Та бусад функцуудын утгыг параметр болгон зааж өгөх боломжгүй. Жишээлбэл, энэ барилга ажиллахгүй:

Хүсэлт. Текст = "СОНГО
DATETIME (Жил (Эх сурвалж. Огноо), 09,28,12,22,00)
Лавлахаас. Эх сурвалж AS Эх сурвалж"
;

1С асуулгад жил, хагас жил, улирал, сар, арван жил, долоо хоног, өдөр, цаг, минутын эхлэл эсвэл төгсгөлийг хэрхэн авах вэ

Үүний тулд дараах функцуудыг ашигладаг.

  • Эхлэх үе(Огноо, Хугацаа)
  • Төгсгөлийн үе(Огноо, Хугацаа)

Параметр болгон огноотөрөлтэй утгыг дамжуулсан Огноо.Параметр Хугацаа .

Хүсэлт. Текст = "СОНГО
StartPeriod(DATETIME (2016,09,28,12,22,00), 10 КАД)"
; // Үр дүн: 2016 оны 9-р сарын 21 0:00:00

Хүсэлт. Текст = "СОНГО
Төгсгөлийн үе(DATETIME (2016,09,28,12,22,00), QUARTER)"
; // Үр дүн: 2016 оны 9-р сарын 30 23:59:59

Жишээнүүдээс харахад та эдгээр функцүүдэд үүрлэсэн бусад функцуудыг ашиглаж болно.

1С асуулгад огнооноос жил, жилийн өдөр, улирал, сар, долоо хоног, долоо хоногийн өдөр, өдөр, цаг, минут, секундийг хэрхэн авах вэ

Үүнийг хийхийн тулд огноог параметр болгон дамжуулах шаардлагатай холбогдох функцууд байдаг.

  • Чиг үүрэг ЖИЛ (огноо)- жилийн дугаарыг буцаана;
  • Чиг үүрэг DAYYEAR (огноо)- жилийн өдрийн тоог нэмэгдүүлдэг;
  • Чиг үүрэг QUARTER (огноо)- улирлын тоог буцаана;
  • Чиг үүрэг САР (Огноо)- сарын дугаарыг буцаана;
  • Чиг үүрэг ДОЛОО ХОНОГ (Огноо)- жилийн долоо хоногийн тоог буцаана;
  • Чиг үүрэг 7 ХОНОГИЙН ӨДӨР (Огноо)- долоо хоногийн өдрийн тоог буцаана (Даваа - 1, Ням - 7);
  • Чиг үүрэг ӨДӨР (Огноо)- тухайн сарын өдрийн дугаарыг буцаана;
  • Чиг үүрэг HOUR (огноо)- цагийг буцаана;
  • Чиг үүрэг MINUTE (огноо)- минутыг буцаана;
  • Чиг үүрэг SECOND (Огноо)- секунд буцаана.

Хүсэлт. Текст = "СОНГО
YEAR(DATETIME (2016,09,28,12,22,00))"
; // Үр дүн: 2016 он

Хүсэлт. Текст = "СОНГО
ДОЛОО ХОНОГ(ӨГӨН ЦАГ (2016,09,28,12,22,00))"
; // Үр дүн: 40

Хүсэлт. Текст = "СОНГО
ДОТООДЫН ӨДӨР(ӨГӨН ЦАГ (2016,09,28,12,22,00))"
; // Үр дүн: 3

Хүсэлт. Текст = "СОНГО
ЖИЛИЙН ӨДӨР(ӨГӨН ЦАГ (2016,09,28,12,22,00))"
; // Үр дүн: 272

Хүсэлт. Текст = "СОНГО
ӨДӨР(ӨГӨН ЦАГ (2016,09,28,12,22,00))"
; // Үр дүн: 28

1С асуулгад жил, хагас жил, улирал, сар, арван жил, долоо хоног, өдөр, цаг, минут, секундын огноог хэрхэн нэмэх, хасах вэ

Үүнийг хийхийн тулд функцийг ашиглана уу AddToDate(Огноо, Хугацаа, Утга).

Параметр болгон огноотөрөлтэй утгыг дамжуулсан Огноо.Параметр Хугацаадараах утгуудын аль нэгийг авч болно: ХОЁРДУГААР, МИНУТ, ЦАГ, ӨДӨР, ДОЛОО ХОНОГ, АРВАН, САР, УЛИРЛ, ХАГАС ЖИЛ, ЖИЛ.

Параметр Утганэмэх үеийн тоог харуулна. Хэрэв хугацааг хасах шаардлагатай бол параметр Утгасөрөг байх ёстой.

Хүсэлт. Текст = "СОНГО
AddTODate(DATETIME(2016, 9, 28, 12, 22, 0), ХАГАС ЖИЛ, 1)"
; // Үр дүн: 2017.03.28 12:22:00

Хүсэлт. Текст = "СОНГО
НэмэхKDate(DATETIME(2016, 9, 28, 12, 22, 0), 10 КАД, -1)"
; // Үр дүн: 2016 оны 9-р сарын 18-ны 12:22:00

1С асуулгад огнооны зөрүүг хэрхэн тооцоолох вэ

Үүнийг хийхийн тулд функцийг ашиглана уу Ялгаа огноо(огноо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

Функцээс бусад бүх функцэд ОН САР ӨДӨР ЦАГ, параметр болгон огнооЗөвхөн тодорхой огнооны утга (тогтмол эсвэл асуулгын параметр) төдийгүй эх хүснэгтийн талбарууд байж болно.

1С тохиргоонд байгаа бүх баримт бичиг, улмаар бараг бүх бүртгэлүүд нь Date төрлийн дор хаяж нэг шинж чанартай байх ёстой тул хөгжүүлэгч бүр дараахь зүйлийг мэдэж, ойлгох ёстой.

  • Бусад төрлийн параметрүүдийг тухайн төрөл рүү хэрхэн хөрвүүлэх вэ;
  • 1С хүсэлтэд хоосон огноог хэрхэн тодорхойлох вэ;
  • Огноо ба цагийн хязгаар хоёрын ялгаа юу вэ?

Эдгээр асуултуудад бид нийтлэлдээ хариулахыг хичээх болно.

Огноо гэж юу вэ, түүнийг хэрхэн тодорхойлох вэ

Олонхийг хүлээн зөвшөөрөхөөс хойш удирдлагын шийдвэрүүдбүртгэл хөтлөхөд 1 секундээс илүү нарийвчлалтай байх шаардлагагүй тул 1С платформын хөгжүүлэгчид энэ утга нь огнооны форматын үнэмлэхүй хамгийн бага байх болно гэж шийдсэн. Тиймээс програм дахь үйл явдлын цагийг тодорхойлсон шинж чанар бүр нь дараахь зүйлийг агуулна.

  • Үйл явдал болсон жил;
  • Энэ үйл явдлын сар;
  • Өдөр.

Үүнийг зааж өгөх шаардлагагүй: цаг, минут, секунд. Хэрэв эдгээр гурван параметрийг орхигдуулсан бөгөөд нэмэлт нөхцөл байхгүй бол програм автоматаар өдрийн эхэнд цагийг тохируулна.

Дэлхий дээр байгаа огнооны формат нь мэдэгдэхүйц ялгаатай байна:

  1. Орос улсад бид өдөр, дараа нь үйл явдлын сар, жилийн төгсгөлд эхний ээлжинд дассан;
  2. АНУ-ын оршин суугчид огноог сараар эхэлдэг;
  3. Чех, Польш, Словенчууд жил - сар - өдөр форматаар үеийг тэмдэглэдэг.

Энэ нь 1С платформ ашигладаг сүүлийн формат юм.

Өнөөг хүртэл хөрвүүлэх

Огноо төрлийн параметрийг хэд хэдэн утгаас эсвэл мөрөөс авахын тулд та Зураг дээр үзүүлсэн кодыг ашиглах ёстой. 1

Дээрх зургаас харахад та огноог нэг мөр ашиглан эсвэл энэ мөрийг таслал ашиглан бүрэлдэхүүн хэсгүүдэд хуваах замаар тодорхойлж болно, үр дүн өөрчлөгдөхгүй.

Огнооны жил нь үйл явдлын мянган жил, зууныг багтаасан дөрвөн оронтой байх ёстой бөгөөд сар, өдөр, цаг, секунд нь хоёр тэмдэгтээс бүрдэх ёстой бөгөөд үүний дотор эхний тэг байх ёстой.

Хөтөлбөрт цаг тоолох нь 0001 оны 1-р сарын 1-ний өдрийн эхнээс эхэлдэг. Дээрх кодын хувьд энэ утгыг хоёр аргын аль нэгээр тодорхойлж болно (Зураг 2).

Цагаан будаа. 2

Хоёр дахь мөрөнд бид үйл явдлын цаг, минут, секундийг орхисон бөгөөд энэ нь бидний кодын гүйцэтгэлд огт нөлөөлсөнгүй.

1С асуулгад огноог ашиглах онцлог

1С платформын ашигладаг ихэнх өгөгдлийн төрлүүдийн хувьд урьдчилан тодорхойлсон хүчингүй утгууд байдаг. Тоонуудын хувьд энэ нь 0 байна, та огнооны хувьд EmptyLink()-ийг тодорхойлж болно хүсэлтийн параметрүүдийг тохируулах.

Хэдийгээр тухайн төрлийн маягтын шинж чанарын утгад ямар ч тоо заагаагүй, өөрөөр хэлбэл цонх нь иймэрхүү харагдаж байна (Зураг 3), энэ нь түүнд юу ч заагаагүй гэсэн үг биш гэдгийг ойлгох нь чухал юм; Энэ параметрийг хоосон мөртэй харьцуулах нь ажиллахгүй.

Цагаан будаа. 3

Хоосон огноог хүлээн авсны дараа бид үүнийг өөрийн хүсэлтийн параметр болгон зааж өгч болно, өөрөөр хэлбэл, бүтээцийг ашиглана (Зураг 4)

Гэсэн хэдий ч, параметр болгон хоосон огноог оруулахгүйгээр хүсэлтийн үндсэн дотор шалгах нь илүү дээр байх тохиолдол байдаг. Үүнийг хийхийн тулд та хүсэлтийн кодонд тохирох нөхцөлийг (Зураг 5) оруулаад DateTime() хүсэлтийн функцийг ашиглаж болно.

Цагаан будаа. 5

Дээрх хүсэлтийн текстэд бид жил, сар, өдрийн эхний тэгийг орхисон, мөн цаг, минут, секундийг заагаагүй бөгөөд хөтөлбөр нь тэдний хэлснээр энэ таамаглалыг идэв.

Огноо ба цагийн хил хязгаар

Өөр сонирхолтой баримтАсуулга болон огнооны хоорондын хамаарал нь мэдээллийн сангийн янз бүрийн хүснэгтэд хандахдаа "цаг хугацааны цэг" гэсэн ойлголтыг ашиглах явдал юм.

-д заасан миллисекундын нарийвчлал техникийн баримт бичигАнхдагч төрлийг тайлбарлахдаа хуримтлалын бүртгэлийн виртуал хүснэгтүүдээс бүртгэлийг сонгохдоо огноо нь хамгийн тод илэрдэг: хэрэв хуримтлалын бүртгэлд эргэлтийн хүснэгтээс гадна үлдэгдэл, үлдэгдэл, эргэлтийн хүснэгтүүд байгаа бол тэдгээрээс түүвэрлэх, түүвэрлэх ажлыг гүйцэтгэнэ. тодорхой хугацаанд гарч, өөр өөр үр дүнг өгч болно.

Энэ нь хэрхэн, яагаад тохиолддогийг ойлгохын тулд энгийн жишээг авч үзье.

  1. Борлуулалтын баримт бичиг 12 цаг 31 минут 36 секундэд хийгдэхээс өмнө элсэн чихрийн нэршлийн дагуу үлдэгдэл 30 кг;
  2. Баримт бичиг нь заасан хугацаанд 10 кг хассан;
  3. Үлдсэн хүснэгтийн дагуу баримт бичгийн огнооны 12 цаг 31 минут 36 секундэд үүссэн тайланд 30 кг-ын үлдэгдэл харагдах болно;
  4. Хүснэгтэнд байгаа ижил тайлангийн үлдэгдэл ба эргэлтийн ижил хугацаанд 20 кг-ийн тэнцлийг харуулах болно.

Шалтгаан нь юу вэ ижил төстэй зан үйлмөн үүнээс хэрхэн зайлсхийх вэ?

Асуудал нь "Үлдсэн" хүснэгтэд хугацааг нээлттэй сегмент гэж зааж өгсөн, өөрөөр хэлбэл тайланг гаргах үед хийсэн хөдөлгөөнийг тооцдоггүй, өөрөөр хэлбэл хоёр дахь заасан хугацааны эхэнд цагийг авдаг. параметрт. Үүний зэрэгцээ эргэлтийн хүснэгт болон үлдэгдэл ба эргэлтийн хүснэгтийн хувьд цагийн хил хязгаарыг харгалзан үздэг, өөрөөр хэлбэл заасан секундын төгсгөлд цагийг авдаг.

Энэ байдлаас гарах хэд хэдэн арга бий:

  1. Үлдэгдэл хүснэгтийг ашиглахдаа заасан хугацаанаас 1 секундээр илүү цагийг заана уу;
  2. Зөвхөн үлдэгдэл ба эргэлтийн хүснэгтийг ашиглана уу (гүйцэтгэлийн үүднээс авч үзвэл хамгийн оновчтой сонголт биш);
  3. Хил хязгаар гэсэн ойлголтыг ашигла.

Сүүлийн сонголтыг Зураг дээр үзүүлсэн кодоор илэрхийлж болно. 6.

Манай объектын эхний параметрт бид тайлан гаргах огноог зааж өгсөн бол хоёр дахь параметр нь хилийн төрлийг тодорхойлдог. Сонголтонд тухайн огнооны хөдөлгөөнийг оруулах нь бидний хувьд чухал тул бид энэ параметрийг "Оруулах" байрлалд тохируулах ёстой.

1С асуулгад ихэвчлэн огноотой ажиллах шаардлагатай болдог. Ялангуяа үе үе мэдээлэл агуулсан мета өгөгдлийн объектуудад хүсэлт гаргах үед. Дүрмээр бол эдгээр нь бүртгэл (мэдээлэл, хуримтлал, тооцоо, нягтлан бодох бүртгэл) юм. Огноотой ажиллахад 1С асуулгын хэлний хамгийн түгээмэл хэрэглэгддэг функцуудыг авч үзье. Мэдээллийн бүртгэл дээр үндэслэн бид жишээг бүтээх болно Ажилтнууд Байгууллага ZUP тохиргооны хувилбар 2.5.

  • ОН САР ӨДӨР ЦАГ

    Жил, сар, өдөр, цаг, минут, секундийг зааж өгөх замаар хүсэлтийн огноог (цагтай эсвэл цаггүй) авах боломжийг танд олгоно.
    Синтакс:
    DATETIME(жил, сар, өдөр, цаг, минут, секунд)
    Ихэвчлэн цаг, минут, секундыг заадаггүй. Жижиг жишээ хэлье. Query Console-д дараах текстийг оруулна уу:

    ОДОО ЦАГ СОНГОХ(2016, 1, 1)

    Хүсэлтийг гүйцэтгэсний үр дүнд бид 2016 оны 01-р сарын огноог авдаг
    Үнэн хэрэгтээ хүсэлтэд огноог ийм байдлаар зааж өгөх нөхцөл байдлыг төсөөлөхөд хэцүү байдаг. Эцсийн эцэст, та хугацааг зааж өгөх шаардлагатай үед параметрүүдийг ашигладаг. Гэхдээ энэ функц онцгой үнэ цэнэтэй байх тохиолдол байдаг. Энэ үед бид талбарууд эсвэл хүсэлтийн нөхцөлд хоосон огноог зааж өгөх шаардлагатай болдог. 1С хэлний хувьд хоосон огноо нь 0001.01.01 гэсэн хэлбэртэй байгааг сануулъя. Тиймээс хүсэлтэд хоосон огноог оруулахын тулд үүнийг зааж өгөхөд хангалттай DATETIME(1, 1, 1). Жишээ болгон мэдээллийн бүртгэлээс сонгож авъя Ажилтнууд Байгууллагабөглөөгүй бүртгэлүүд Дуусгах хугацаа:

    Байгууллагын ажилчдыг СОНГОХ.Хугацаа, Байгууллагын ажилтан.Ажилтан, Байгууллагын ажилтан.Албан тушаал, Байгууллагын ажилтан.Байгууллагын хэлтэс.Бүртгэлийн мэдээллээс.Байгууллагын ажилчдыг Байгууллагын ажилтан ХААНА БАЙГУУЛЛАГЫН АЖИЛЛАГАА.Дуусгах огноо(1,1,1)

  • ҮЕИЙН ЭХЛЭЛ

    Заасан огнооны хувьд хамаарах хугацааны эхлэлийг буцаана.
    Синтакс:
    ХУГАЦААНЫ ЭХЛЭЛ(Огноо, Хугацаа Төрөл)
    PeriodType нь дараах утгыг авч болно: МИНУТ, ЦАГ, ӨДӨР, ДОЛОО ХОНОГ, САР, УЛИРЛ, ЖИЛ, АРВАН, ХАГАС ЖИЛ
    Query Console-д дараахыг оруулна уу:

    ХУГАЦААНЫ ЭХЛЭЛИЙГ СОНГОХ(DATETIME(2016, 1, 15), САР)

    Хүсэлт буцаж ирнэ - 2016-01-01
    Тэгээд одоо жишээ. Та бүхний мэдэж байгаагаар бүртгэлийн үе үе Ажилтнууд Байгууллаганэг өдөр. Бодит бичлэг хийх хугацааны оронд тухайн сарын эхлэх огноог харуулах асуулга үүсгэцгээе.

    ХУГАЦААНЫ ЭХЛЭЛИЙГ СОНГОХ(Байгууллагын ажилчид.Хугацаа, САРЫН) Сарын эхээр Байгууллагын ажилтнууд.Ажилтан, Байгууллагын ажилтан.Албан тушаал, Байгууллагын ажилтнууд.Байгууллагын хэлтэс, Бүртгэлийн мэдээлэл.Байгууллагын ажилчид.

  • ХУГАЦААНЫ Төгсгөл

    Синтакс нь хугацааны эхэн үеийнхтэй ижил байна. Нэрнээс нь харахад хугацааны төгсгөлийг огноо, хугацааны төрлөөр нь буцаана. Бид үүнийг нарийвчлан авч үзэхгүй. Бяцхан жишээгээр хязгаарлая.
    Хүсэлт:

    ХУГАЦААНЫ Төгсгөлийг СОНГОХ(DATETIME(2016, 1, 15), САР)

    2016-01-31 23:59:59-д буцаж ирнэ
    Таны харж байгаагаар утгыг хоёр дахь хүртэл үнэн зөв буцаана.

  • ADDKDATE

    Заасан тооны интервалыг огноонд нэмнэ.
    Синтакс:
    ADDKDATE(Огноо, Хугацаа Төрөл, Тоо хэмжээ)
    PeriodType нь функцтэй ижил утгыг авдаг ҮЕИЙН ЭХЛЭЛ
    Жишээлбэл, хоёрдугаар сарын огноог сонгоё:

    НЭМЭГДСЭН ОДОО СОНГОХ(DATETIME(2016, 2, 15), MONTH, 2)

    Бид 2016 оны 4-р сарын 15-ны 0:00:00 огноог авдаг. 2-р сар богино сар боловч хүлээн авсан огноо нь анхныхтай ижил байна. Сарын хэдэн өдрийн талаар бодох шаардлагагүй нь маш тохиромжтой.
    Тоо хэмжээ нь сөрөг байж болно. Дараа нь интервалыг эсрэг чиглэлд тоолно.

  • ЗӨРҮҮЛЭХ огноо

    Заасан нэгжээр хоёр огнооны зөрүүг тооцоол.
    Синтакс:
    ОГНЫ ЗӨРҮҮ (Эхлэх огноо, дуусах огноо, хугацааны төрөл)
    Үеийн төрөл нь дараах утгыг авч болно. ХОЁРДУГААР, МИНУТ, ЦАГ, ӨДӨР, САР, УЛИРЛ, ЖИЛ
    Жишээлбэл:

    ЗӨРҮҮ ОДОО СОНГОХ(DATETIME(2016, 2, 15), DATETIME(2016, 3, 1), ӨДӨР)

    15-ыг буцаана

Энд бид 1С асуулгын хэлний хамгийн түгээмэл хэрэглэгддэг функцуудыг авч үзсэн. Үлдсэнийг нь маш ховор хэрэглэдэг. Шаардлагатай бол тэдэнтэй ажиллах жишээг 1С платформд суурилуулсан тусламжаас олж болно.

1С дахь "Огноо" төрөл нь тоо, мөр, логикийн хамт 4 үндсэн өгөгдлийн төрлүүдийн нэг юм. Огноо нь тохиргоонд хаа сайгүй байдаг - хөгжүүлэлтийн явцад энэ төрлийн өгөгдлийн төрөлтэй ажиллахаас зайлсхийх боломжгүй. Тиймээс огноог хэрхэн боловсруулах, тэдэнтэй ажиллах ямар сонголтууд, тэдгээрийг хэрхэн хадгалах талаар аль хэдийн ойлгосон асуулга бичиж эхлэх нь дээр. Янз бүрийн огноотой асуулга бичих бүх нарийн ширийн зүйлийн жишээг харцгаая.

1С асуулгад огноотой ажиллах жишээ

Юуны өмнө та хүсэлтийн огноог шаардлагатай форматаар авах хэрэгтэй - цаг хугацаатай эсвэл цаггүй. Энэ ажлыг дуусгах хэд хэдэн арга байдаг:

  1. Параметрээр дамжуулна. Та энэ аргыг ашиглан зөвхөн одоогийн сессийн огноог авах боломжтой;
  2. Сонгох талбараас асуулга дахь огноог авах;
  3. DATETIME() функцийг ашиглан тоон утгуудаас хөрвүүлэх.

Баримт бичигтэй ажиллах хамгийн нийтлэг ажил бол 1С хүсэлтэд хоосон огноог шалгах явдал юм. Энэ тохиолдолд DATETIME(1,1,1) функцийг ашиглан олж авсан хоосон огноотой хувьсагч эсвэл талбарыг харьцуулах нь хамгийн хялбар юм.

DATETIME (1, 1, 1)

Үүнтэй төстэй командыг ашигласнаар та хүсэлтэд дурын огноо, цагийг авах боломжтой. Түүнчлэн, параметр болгон 6 тоог зааж өгснөөр тэдгээрийг секундын нарийвчлалтайгаар тодорхойлж болно. Хэрэв зөвхөн 3 тоо ашигласан бол цаг, минут, секундийг 0 (өдрийн эхлэл) болгоно. Жишээлбэл, бид хүсэлтэд 2018 оны 1-р сарын эхний 10 хоногийн баримт бичгийг сонгох шаардлагатай.

Баримтыг одоогийн дансны линкээр СОНГОХ. DATETIME(2018, 1, 0, 0, 0) БА DATETIME (2018,1,). 10, 23, 59, 59)

Суурилуулсан 1С хэл дээрх асуулгад та зөвхөн янз бүрийн талбаруудыг сонгож, параметрүүдийг хүлээн авах боломжгүй. Тодорхой ажлын хэрэгцээнд нийцүүлэн огноог форматлахад хялбар болгох олон функц байдаг. Хэрэв та асуулгад огноотой байнга ажилладаг бол дараах тушаалуудыг мэдэж байх хэрэгтэй.

  • ҮЕИЙН ЭХЛЭЛ.Параметрүүд нь тухайн огнооны эхлэлийг авах шаардлагатай огноо, цаг хугацааг зааж өгдөг. Огноог цаг хугацааны формат руу хөрвүүлэхэд ашигладаг. Үүнийг хийхийн тулд та хоёр дахь параметрийг тохируулах хэрэгтэй - "DAY";
ХУГАЦААНЫ ЭХЛЭХ(,) ЭХЛЭХ (&Огноо, ӨДӨР) үе>огноо>
  • ХУГАЦААНЫ Төгсгөл.Параметрүүдэд заасан нэгжийн хувьд сүүлчийн огноог буцаадаг ижил төстэй тушаал;
  • ADDKDATE.Заасан тооны нэгжээр илүү огноо авах боломжийг танд олгоно. Функцийн параметрүүд нь огноо, цагийн нэгж, тоо;
ADDKDATE(,) ADDKDATE(&Огноо, ӨДӨР, 10) тоо хэмжээ>төрөл>огноо>
  • ЗӨРҮҮЛЭХ огноо.Заасан нэгж дэх огнооны зөрүүг авна;
DIFFERENCEDATE(,) DIFFERENCEDATE(&Огноо1, &Огноо2, DAY) төрөл>огноо2>огноо1>
  • ДОЛОО ХОНОГИЙН ӨДӨР.Долоо хоногийн аль нэг өдрийн серийн дугаарыг буцаана.

Эдгээр функцийг зөв ашигласнаар хөгжүүлэгч нь маш чухал бус асуудлыг шийдэж чадна. Жишээ нь, хүсэлтийн одоогийн огнооны долоо хоногийн өдрийн нэрийг мөр болгон авах:

СОНГОЛТ ХЭЗЭЭ WEEKDAY(&Одоогийн огноо) = 1 ДАРАА "Даваа" ХЭЗЭЭ WEEKDAY(&Одоогийн огноо) = 2 ДАРАА "Мягмар" ХЭЗЭЭ WEEKDAY(&Одоогийн огноо) = 3 ДАРААН "Лхагва" ХЭЗЭЭ WEEKDAY(&Одоогийн огноо) = 4 ДАРАА "Лхагва гараг"ӨДӨР(&Одоогийн огноо) = 4 "Лхагва гараг" "Баасан" ДОЛОО ХОНОГИЙН ХЭЗЭЭ(&Одоогийн огноо) = 6 ТЭГВЭЛ "Бямба" ӨӨР "Ням" ДУУСНА.

1С асуулгын төрлийг тоо эсвэл мөрөөс огноо болгон хөрвүүлэх нь маш их хөдөлмөр шаарддаг ажил юм. Та SUBSTRING функц болон SELECT WHEN THEN ELSE бүтцийг нэгтгэснээр DATETIME функцийг ашиглан тооноос огноог авч болно. Үүний үндсэн дээр хөгжүүлэгчид модулийн бусад төрлөөс огноог авч, параметр ашиглан хүсэлт рүү дамжуулахыг илүүд үздэг. Харамсалтай нь энэ нь үргэлж боломжгүй байдаг тул та хүсэлтийн огнооны форматыг өөрчлөх хэрэгтэй.

Виртуал бүртгэлийн хүснэгтээс өгөгдөл авах параметр болгон 1С хүсэлтэд огноог зааж өгөх боломжтой. Энэ үүрэг нь дээрх бүх функцийг ашиглаж болно. Гэхдээ энд 1С хүсэлтийн хоосон огноог кодыг гүйцэтгэх эцсийн үр дүнд нөлөөлөхгүй байх нь чухал тул шалгалт хийх шаардлагатай.