Adja meg a dátumot a kérelemben 1s. Hogyan adjunk meg üres dátumot a lekérdezésben? Bővebben a hibás és szabályos linkekről.

A dátum az 1C:Enterprise egyik primitív adattípusa. A dátumnak mindig megvan a formátuma év, hónap, nap, óra, perc, másodperc. Tehát egy változó, mint dátum nem csak a dátumot, hanem az időt is tartalmazza.

Hozzon létre változót típussal dátum többféleképpen is elvégezhető:

1. módszer:

Típusérték hozzárendelése egy változóhoz „YYYYMMDDhhmmss” vagy „ÉÉÉÉ.HH.NN:óó:óó:ss”

Egy randevú egyes részeinek megszerzése

Egy dokumentum tartalmazhat egy címkét, több címkét vagy egy címkét sem. Ha egy mezőnek nincsenek értékei, hogyan kerül tárolásra egy fordított indexben? Ez vitás kérdés, mert a válasz: egyáltalán nincs tárolva. Nézzük meg ezt a fordított indexet az előző részből.

Hogyan tárolna egy olyan mezőt, amely nem létezik ebben az adatstruktúrában? A fordított index egyszerűen a tokenek és az azokat tartalmazó dokumentumok listája. Ha a mező nem létezik, akkor nem tartalmaz tokent, ami azt jelenti, hogy nem jelenik meg a fordított index adatstruktúrában.

‘20100304235959’ — visszaküldi a dátumot: 2010. 03. 04. 23:59:59.

‘2011.10.09:22:10:12’ - a dátumot adja vissza: 2011.10.09. 22:10:12.

2. módszer:

A globális kontextus funkció használata Dátum (év, hónap, nap, óra, perc, másodperc).

Dátum (2010, 07, 14, 12, 13, 14) —

Ugyanez a függvény használható egy karakterlánc dátummá alakítására.

Dátum (20100714121314) - a 2010. 07. 14. 12:13:14 PM értéket adja vissza

Egyszerűen nem léteznek a fordított indexben! Az első eszköz az arzenáljában egy meglévő lekérdezés. Ez a lekérdezés olyan dokumentumokat ad vissza, amelyeknek bármilyen értéke van a megadott mezőben. Használjuk a címkék példáját, és indexeljünk néhány mintadokumentumot.

Bővebben a hibás és szabályos linkekről

A címkemezőnk eredményül kapott fordított indexe így fog kinézni. Célunk, hogy megtaláljuk az összes olyan dokumentumot, amelyen szerepel a címke. Mindegy, hogy mi a címke, amíg létezik a dokumentumban. Lekérdezésünk három dokumentumot ad vissza. Az eredmények könnyen érthetők. Minden olyan dokumentumot, amelynek a címkemezőben kifejezések szerepeltek, a rendszer találatként adta vissza.

3. módszer (kérelmek esetén):

Egy kifejezés használata DATETIME (év, hónap, nap, óra, perc, másodperc)

Bármelyik módszernél az órák, percek és másodpercek nem kötelezőek.

Dátum (2 010, 07, 14) a 2010. 07. 14. 0:00:00 AM értéket adja vissza

4. módszer:

Megkérheti a felhasználót a kívánt dátum megadására is. Ehhez a funkciót kell használni EnterDate (Dátum, Prompt, PartDate). Az első paraméter azt a változót adja meg, amelyhez a beírt érték hozzá lesz rendelve. A második paraméter a párbeszédpanel címe, a harmadik paraméter a típus mely részét határozza meg dátum be kell írni. A következő értékeket veheti fel:

Gyors útmutató a lekérdezési feltételekhez

Cseréljük le a meglévő kérést az előző példából hiányzó kéréssel. És ahogy az várható volt, két olyan dokumentumot adunk vissza, amelyeknek nincs valódi értéke a címkék mezőjében: a 3. és 4. dokumentumot. A korábban látott alapértelmezett viselkedéssel ez nem lehetséges; Az adatok elvesznek. Bár ezek a kritériumok meglehetősen egyszerűek, mindegyik segíthet az adatok érdemi keresésében.

Egyszerű kritériumok minden adattípushoz

Ha hasznosnak találja ezt az útmutatót, mindig kéznél lesz.

Változók, értékek és kifejezések

Maradjon velünk a sorozat további tartalmaiért. Használhatja új eszközök létrehozására, a gyakori feladatok egyszerűsítésére, és akár a meglévő szerkesztői funkciók újratervezésére is. Végül is a szkriptelés lényege az, hogy csökkentse a gépelés mennyiségét.

  • A Dátum.Dátum részei - csak az év, a hónap és a nap kerül megadásra;
  • A Dátum.Idő részei – csak órák, percek, másodpercek kerülnek megadásra. Ebben az esetben a dátum így fog kinézni 0001.01.01 óó:pp:ss.
  • PartsDate.DateTime — minden dátum és idő összetevő megadásra kerül.

5. módszer (get mostani dátumés idő)

Date= CurrentDate() ;

Mindazonáltal tíz vagy több karaktert kell beírnia minden alkalommal, amikor a szintaxiskiemelést szeretné váltani. Ez azt eredményezi, hogy a sorozat be- vagy kikapcsolja a szintaktikai kiemelést minden alkalommal, amikor normál módban beírja. Vessünk egy pillantást ennek a szkriptnek az egyes összetevőire.

Sorok folytatása fordított perjelekkel

Ez a feladat a parancs végrehajtása. Létrehozhat például egy billentyűzetkiosztást, hogy a szóköz karakterlánca úgy működjön, mint a "le" billentyű, pl. Két vagy több utasítást is elhelyezhet ugyanabba a sorba, ha függőleges sávba választja őket.

Üres dátum érvényesítés

Gyakran ellenőrizni kell, hogy a dátumot megadták-e vagy sem. Az üres dátum január 1., 1. év, 0 óra, 0 perc, 0 másodperc. A csekk így nézhet ki:

Ha CheckedDate = Date(1 , 1 , 1 ) Akkor
//akció üres dátumon
EndIf ;

Dátum használata kellékekben

Vegye figyelembe, hogy a karakterláncok kettős vagy szimpla idézőjelekkel is megadhatók elválasztójelként. Ezzel szemben az egyszeres idézőjelek mindent szó szerinti karakterként kezelnek, ami a határolóban van, kivéve a két egymást követő egyetlen idézőjelet, amelyeket a rendszer szó szerinti egyetlen idézőjelként kezel. Vegye figyelembe, hogy a listákban vagy a szótárban szereplő értékeknek nem kell azonos típusúaknak lenniük, ha kívánja, keverhet karakterláncokat, számokat, sőt beágyazott listákat és szótárakat is.

Üres dátum érvényesítés

Az értékekkel ellentétben a változóknak nincs beépített típusuk. Ehelyett a hozzájuk rendelt első érték típusát veszik fel. Tehát az előző példában a név és magasság változók most skalárok, az érdeklődési körök most egy listaváltozó, a telefon pedig egy szótári változó. Változó típusok, ha hozzá vannak rendelve, állandóak és futás közben szigorúan betartatják.

A címtárak, dokumentumok stb. részleteiben. használható:

  • dátum, akkor az idő mindig 00:00:00;
  • csak idő, akkor a dátum 01.01.0001;
  • dátum és idő.

Egy randevú egyes részeinek megszerzése

Év beszerzése:

Eredmény= Év(Dátum) ;

Hónap beszerzése:

Eredmény= hónap(dátum) ;

Szerezze meg a hónap napjának számát:

Dátum konvertálási műveletek

Alapértelmezés szerint egy változó ahhoz a függvényhez van kötve, amelyben először hozzá van rendelve, vagy globális, ha az első hozzárendelése bármely függvényen kívül történik. A változók azonban kifejezetten deklarálhatók más hatókörhöz tartozónak is, különféle előtagok használatával, a táblázatban felsoroltak szerint.

Ezeket a táblázat foglalja össze. A "pszeudováltozók" változatai különösen hasznosak lehetnek. Például beállíthat két kulcsleképezést az aktuális lap ilyen módon történő növelésére vagy csökkentésére. Ez megakadályozza, hogy a kulcsleképezés a minimális minimum alá csökkentse az aktuális tabulátorközöket. A rendelkezésre álló operátorok táblázatban vannak összefoglalva. Amikor egy karakterláncot logikai értékként használunk, először egész számmá alakítjuk, majd kiértékeli, hogy igaz vagy hamis. Ez azt jelenti, hogy a karakterláncok túlnyomó többsége, beleértve a legtöbb nem üres karakterláncot is, hamisra fog kiértékelni.

Eredmény= Nap(Dátum) ;

Szerezd meg az év napjának számát:

Eredmény= DayYear(Date) ;

Szerezze meg a hét napjának számát:

Eredmény=NapHét(Dátum) ;

Szerezd meg az év hét számát:

Eredmény = WeekYear(Date) ;

Óra lekérése:

Eredmény= Óra(Dátum) ;

Kap egy percet:

Eredmény= Perc(Dátum) ;

Legyen második:

Dátum használata kellékekben

Tipikus hiba az ilyen üres karakterlánc ellenőrzése. A helyes megoldás az, hogy a megfelelő beépített függvény segítségével kifejezetten teszteljük a karakterláncok ürességét. Különösen, ha az egyik operandus egy karakterlánc, a másik pedig egy szám, a karakterláncot számmá alakítja, és a két operandust numerikusan összehasonlítja.

Honnan jöttetek

Ez kisebb hibákhoz vezethet. Megbízhatóbb megoldás ilyen esetekben. Erősen ajánlott "kifejezetten bekarikázott" operátorok használata minden karakterlánc-illesztéshez, mivel ezek biztosítják, hogy a szkriptek megbízhatóan működjenek, függetlenül a felhasználói beállítások módosításától.

Eredmény= Második(Dátum) ;

Dátum konvertálási műveletek

A dátum 0001. január 1. 00:00:00 óta eltelt másodpercek száma. Ezért ahhoz, hogy egy dátumhoz napokat, órákat, perceket stb. adjon, hozzá kell adnia a megfelelő számú másodpercet.

Eredmény= Dátum + 1 ; // Hozzáadott egy másodpercet
Eredmény= Dátum + 2 * 60 ; // 2 perc hozzáadva
Eredmény= Dátum + 3 * 60 * 60 * 24 ; //3 nap hozzáadva

Probléma az egész számokkal

Gyakori hiba a korábbi verziókban az volt, hogy ilyesmit írtak. A korábban bemutatott szintaxisváltó szkript könnyen adaptálható más hasznos eszközök létrehozására. Ez a szkript így nézhet ki.

A gyakran rosszul használt szavak kiemelése

Ez lehetővé teszi, hogy minden szerkesztőablakban külön-külön váltson a szóellenőrzés között. A mérkőzés szövegkiválasztási specifikációt vár, majd ezt követi reguláris kifejezés, amely meghatározza, hogy melyik szöveget kell kiemelni.

Ez az alternatívakészlet ezután zárójelbe kerül kis- és nagybetűket nem érzékeny szóhatárokkal, így biztosítva, hogy csak a teljes szavak illeszkedjenek, függetlenül azok nagybetűs írásmódjától. Ugyanazt az általános sablont használhatja beszúrókártya vagy rövidítés meghívására a szkript számára elérhető bármely művelet végrehajtásához. Ne feledje azonban, hogy ezek nem ugyanazok. A térképmellékletek tartalmazhatnak olyan szkripteket, amelyek sokkal összetettebbek, mint az előző példákban. Ilyen esetekben általában célszerű újraformázni a kódot egy egyéni funkcióvá, amelyet a billentyűleképezés ezután meghívhat.

Adjon hozzá vagy vonjon ki egy vagy több hónapot a dátumból.