itthon / Internet / Írja be a kérést 1s. Hogyan lehet kérésben megkapni a Dokumentum fajtáját (típusát)? Bal és jobb csatlakozás

Írja be a kérést 1s. Hogyan lehet kérésben megkapni a Dokumentum fajtáját (típusát)? Bal és jobb csatlakozás

Figyelem! Íme a lecke próbaverziója, melynek anyagai nem biztos, hogy teljesek.

Jelentkezzen be diákként

Jelentkezzen be tanulóként az iskolai tartalmak eléréséhez

1C 8.3 lekérdezési nyelv kezdő programozóknak: függvények és operátorok a típusokkal való munkavégzéshez (VALUE TYPE, TYPE, REFERENCE, IS NULL, EXPRESS)

Ne felejtsük el, hogy a referenciakönyv, dokumentum vagy bármely más alkalmazásobjektum minden attribútuma (tulajdonság, mező) saját típussal rendelkezik. És ezt a típust láthatjuk a konfigurátorban:

A lekérdezési nyelv függvények és operátorok egész osztályával rendelkezik az attribútumtípusokkal való munkavégzéshez. Vessünk egy pillantást rájuk.

VALUETYPE függvény

Ez a függvény egy paramétert (értéket) vesz fel, és visszaadja a típusát. A képen (fent) leírt kellékekhez Íz Könyvtár Étel a következőket adja vissza:

Most pedig vessünk egy pillantást a kellékekre. Megkülönböztető tulajdonság a címtárban Városok:

Láthatja, hogy ez a kellék többféle típus közül választhat: Vonal, Címtár. Ízek, Referencia.Színek. Az ilyen típusú részleteket kompozitnak nevezik.

Ha megpróbáljuk kitölteni egy ilyen attribútum értékét 1C:Enterprise módban, a rendszer megkérdezi, hogy milyen típusú lesz a bemeneti érték:

És csak a választásunk után teszi lehetővé a kiválasztott típus értékének megadását.

Így az azonos típusú könyvtárelemek ( Directory.Cities) képes lesz ugyanabban az attribútumban tárolni ( Megkülönböztető tulajdonság) értékeket különböző típusok(Fúró, színek vagy ízek).

Ezt a könyvtár elemeire kattintva saját maga ellenőrizheti Városok 1C:Vállalati módban. Ön a lecke próbaverzióját olvassa, a teljes leckék megtalálhatók.

Itt a jellemző érték referenciaelem Ízek:

Itt a sor:

És itt általában a könyvtár egy eleme Színek:

Ezek azok a lehetőségek, amelyeket egy összetett adattípus nyit meg előttünk!

Kíváncsi vagyok, hogyan fog működni a funkció ÉRTÉK TIPUSA kellékeken Megkülönböztető elem, amelynek összetett adattípusa van:

Ez már nagyon érdekes. Minden sorral külön foglalkozzunk.

Az Oroszország elem jellemzőérték-típusa: NULLA. Most találkoztunk először ezzel a típussal. Az ilyen típusú értékeket kizárólag a hiányzó érték meghatározására használják az adatbázissal való munka során.

Ez azért van, mert az Oroszország elem egy csoport, és nem a címtár szokásos eleme Városok, tehát nincs mezője Megkülönböztető tulajdonság. A hiányzó érték típusa pedig, ahogy fentebb olvastuk, mindig egyenlő NULLA.

A Perm megkülönböztető jellemzőjének értéktípusa: Ízek. Így van, mert az adatbázisban Perm városára pontozott megkülönböztető elem értéke egy hivatkozás a címtárelemre Ízek.

Krasznojarszk esetében a jellemző típusa egyenlő Színek, mert az adatbázisban kiválasztott érték egy szótárelemre való hivatkozás Színek.

Voronezh esetében a jellemző típusa egyenlő Vonal, mert az adatbázisban megadott érték egy normál karakterlánc.

India ismét egy csoport, így a jelentés hiányzik. A hiányzó érték típusa pedig, mint emlékszünk, az NULLA.

És itt van a dolog. Ha a könyvtár elemre lép Városok névvel Sao Paulo, látni fogja, hogy a mező Megkülönböztető tulajdonság teljesen kitöltetlen. Ez üres. DE az összetett típusú összes üres mezőnek különleges jelentése van MEGHATÁROZATLAN .

TÓL TŐL MEGHATÁROZATLAN mi is először találkozunk. Jelentése MEGHATÁROZATLAN akkor használjuk, ha olyan üres értéket szeretnénk használni, amely nem tartozik más típushoz. Ez csak a mi helyzetünk. Egy értéktípus MEGHATÁROZATLAN, mint valószínűleg már sejtette, egyenlő NULLA.

Funkció TYPE

Csak egy paraméter kell hozzá - a primitív típus neve ( VONAL, SZÁM, DÁTUM, BOOL), vagy annak a táblának a neve, amelynek referenciatípusát le szeretné kérni.

Ennek a konstrukciónak az eredménye egy Type típusú érték lesz a megadott típushoz.

Homályosan hangzik, nem?

Nézzük meg ennek a kialakításnak az alkalmazását, és minden azonnal a helyére kerül.

Tegyük fel, hogy ki akarjuk jelölni az összes címtárbejegyzést Városok, amelyek összetett attribútummal rendelkeznek Megkülönböztető tulajdonság típusú értékkel rendelkezik VONAL:

Most jelöljük ki az összes olyan rekordot, amely rendelkezik attribútumértékekkel Megkülönböztető tulajdonság hivatkozások hivatkozási elemekre Színek(asztal Referencia.Színek):

Visszavonulás

Mint emlékszel, a könyvtár egyes elemei Városok nincs kelléke Megkülönböztető tulajdonság. Funkció ÉRTÉK TIPUSA az ilyen elemekre ad NULLA.

Hogyan lehet ilyen elemeket kérésre kiválasztani? Erre van egy speciális logikai operátor. NULLA(nem tévesztendő össze a funkcióval NULLA amelyet az alábbiakban tárgyalunk). Ön a lecke próbaverzióját olvassa, a teljes leckék megtalálhatók.

Íme egy példa a használatára:

Kiváló. De észrevetted, hogy itt nincs Sao Paulo elem, kellék értéktípus Megkülönböztető tulajdonság amelyet szintén kiadtak NULLA. Miért történt ez?

És a helyzet az, hogy a csoportok helyzete (Oroszország, India, Brazília), amelyhez a részleteket kitölti Megkülönböztető tulajdonság elvileg lehetetlen, mivel náluk egyáltalán nincs, eltér a Sao Paulo elem helyzetétől, amelynél lehetséges a kellékek kitöltése, de egyszerűen nincs kitöltve, és mint emlékszünk, különleges jelentése MEGHATÁROZATLAN.

Az összes kellékkel rendelkező rekord kiválasztásához Megkülönböztető tulajdonság jelen van, de nincs kitöltve, egy másik konstrukciót kell használni:

De az UNDETERMINATED-el való összehasonlítás az üres (nem feltöltött) kellékek meghatározásához csak az összetett típusoknál működik.

Egyébként a logikai operátor IS NULL negációs forma így néz ki:

Logikai operátor REFERENCE

Például válasszunk a könyvtárból Városok csak azok a rekordok, amelyek összetett attribútum értékkel rendelkeznek Megkülönböztető tulajdonság hivatkozási elemre vonatkoznak Ízek:

Mint emlékszik, ugyanazt a problémát meg tudnánk oldani a használatával ÉRTÉK TIPUSAés TÍPUSÚ:

ISNULL függvény

A függvény célja az érték helyettesítése NULLA másik értékre.

Emlékszünk, hogy az érték NULLA visszaadásra kerül, ha a kért attribútum (mező, tulajdonság) nem létezik.

Mint a kellékek Megkülönböztető tulajdonság címtárcsoportokhoz Városok:

Funkció NULLA segít nekünk egy másik érték kiadásában, ha ez az érték egyenlő NULLA. Ön a lecke próbaverzióját olvassa, a teljes leckék megtalálhatók. Legyen ebben az esetben ez a "Nincs ilyen attribútum!" sor:

Kiderül, hogy ha a függvény első paramétere NULLA nem egyenlő NULLA, akkor visszatér. Ha NULL, akkor a második paraméter kerül visszaadásra.

EXPRESS funkció

Ez a funkció csak az összetett típusú mezőkre vonatkozik. Remek példa egy ilyen területre az ingatlan Megkülönböztető tulajdonság a könyvtárelemekhez Városok.

Emlékezzünk rá, hogy az összetett mezők a konfigurátorban megadott számos típus egyike lehetnek.

A mezőre Megkülönböztető tulajdonság ilyen érvényes típusok VONAL, Referencia.Színekés Címtár. Ízek.

Néha szükségessé válik egy összetett mező értékeinek egy adott típusra történő átadása.

Soroljuk fel az összes mezőértéket Megkülönböztető tulajdonság begépelni Referencia.Színek:

Ennek eredményeként az összes elemérték, amelynek típusa volt Referencia.Színek, kitöltött maradt, és kiderült, hogy a megadott típusra csökkentették. Minden más típusú érték ( VONAL, Címtár. Ízek) most egyenlők NULLA. Ez a funkciót használó típusöntés sajátossága EXPRESSZ.

Egy típust primitív típusba ( BOOL, SZÁM, VONAL, DÁTUM) vagy referenciatípusra. Ön a lecke próbaverzióját olvassa, a teljes leckék megtalálhatók. De ennek az összetett mezőnek a típuslistájában szerepelnie kell annak a típusnak, amelyre az öntvény készül, különben a rendszer hibát generál.

Csináld meg a tesztet

Indítsa el a tesztet

1. Válassza ki a leghelyesebb állítást!

2. Azokat az attribútumokat, amelyek többféle értéket is felvehetnek, meghívjuk

3. Az attribútumérték típusának meghatározására a függvény alkalmas

4. A kitöltetlen összetett típusú attribútumok számítanak

Az 1C lekérdező nyelv az egyik fő különbség a 7.7 és 8 verziók között. Az 1C programozás tanulásának egyik legfontosabb pontja a lekérdező nyelv. Az 1C 8.3-ban a lekérdezések a leghatékonyabb és leghatékonyabb eszköz az adatok megszerzésére. A lekérdezési nyelv lehetővé teszi, hogy kényelmes módon szerezzen információkat az adatbázisból.

Maga a szintaxis nagyon hasonlít a klasszikus T-SQL-hez, azzal a különbséggel, hogy az 1C-ben a lekérdezési nyelv használatával csak a Select konstrukcióval lehet adatokat szerezni. A nyelv bonyolultabb konstrukciókat is támogat, például (kérelem a kérésben). Az 1C 8-ban szereplő kérések cirill és latin betűkkel is benyújthatók.

A cikkben megpróbálok beszélni az 1C lekérdezési nyelv fő kulcsszavairól:

  • választ
  • megengedett
  • különféle
  • Expressz
  • első
  • változásért
  • jelentése
  • érték típusa (és REF operátor)
  • választás
  • csoportosít
  • amelynek
  • NULLA
  • Vannak NULL
  • csatlakozások - jobb, bal, belső, teljes.

Valamint az 1C nyelv apró trükkjei, amelyek segítségével optimálisan összeállíthatja a lekérdezési szöveget.

A lekérdezések hibakereséséhez az 1C 8.2 rendszerben egy speciális eszköz áll rendelkezésre - a lekérdezési konzol. A leírást megtekintheti és letöltheti a - linken.

Tekintsük az 1C lekérdezési nyelv legfontosabb és legérdekesebb operátorait.

KIVÁLASZTÁS

Az 1C Enterprise 8 lekérdezési nyelvben minden lekérdezés a következővel kezdődik kulcsszó VÁLASZT. Az 1C nyelvben nincsenek UPDATE, DELETE, CREATE TABLE, INSERT konstrukciók, ezeket a manipulációkat objektumtechnikával hajtják végre. Célja csak az adatok olvasása.

Például:

VÁLASZT
CurrentCatalog.Name
TÓL TŐL
Reference.Nomenclature AS CurrentReference

A lekérdezés egy táblát ad vissza elemnevekkel.

a szerkezet mellett VÁLASZT kulcsszavak találhatók VÁLTOZÁSRA, ENGEDÉLYEZVE, KÜLÖNFÉLE, ELSŐ

ENGEDÉLYEZVE- csak azokat a rekordokat választja ki a táblából, amelyekhez az aktuális felhasználónak joga van.

KÜLÖNFÉLE- azt jelenti, hogy az eredmény nem tartalmaz ismétlődő sorokat.

KIVÁLASZTÁS (CASE)

Ezt a konstrukciót nagyon gyakran alábecsülik a programozók. Egy példa a használatára:

CurrentCatalog.Name,

WHEN CurrentCatalog.Service THEN

"Szolgáltatás"

VÉGE MINT KindNómenklatúra

Reference.Nomenclature AS CurrentReference

A példa egy szöveges értéket ad vissza a „Nómenklatúra típusa” mezőben – „Termék” vagy „Szolgáltatás”.

AHOL

Egy 1C lekérdezési nyelvi konstrukció, amely lehetővé teszi, hogy kijelölést alkalmazzon a fogadott adatokra. Kérjük, vegye figyelembe, hogy a rendszer minden adatot megkap a szervertől, és csak ezután kerül kiválasztásra a paraméter szerint.

VÁLASZT
Directory.Name
TÓL TŐL
CurrentDirectory.Nomenclature AS CurrentDirectory
WHERE CurrentDirectory.Service = TRUE

A példában olyan rekordokat választunk ki, amelyeknél a „Szolgáltatás” attribútum értéke „Igaz”. NÁL NÉL ezt a példát a következő feltétellel lehet boldogulni:

"HOL szolgáltatás"

Lényegében azokat a sorokat választjuk ki, amelyek kifejezése a kulcsszó után egyenlő az "Igaz" értékkel.

Közvetlen feltételeket használhat a kifejezésekben:

WHERE Kód = "005215"

A feltételekben az "ÉRTÉK ()" operátor használatával használja a hívást előre meghatározott elemekés felsorolások az 1C kérésben:

WHERE cikktípus = érték (felsorolás. cikktípusok. cikk)

Az időértékek a következők szerint adhatók meg:

WHERE DateIncoming > DATETIME(2012,01,01):

Leggyakrabban a feltételeket a kérésnek átadott paraméterekként adják meg:

Ingyenes 267 1C videóleckéket kaphat:

WHERE ItemGroup= &ItemGroup

A feltétel szabható az attribútumtípusra, ha az összetett típusú:

Ha korlátozni kell a kiválasztást egy értéklistából vagy egy tömbből, a következőket teheti:

WHERE felhalmozási nyilvántartás. B nyilvántartó (&Kiválasztandó dokumentumok listája)

A feltétel összetett lehet, több feltételből állhat:

WHERE DateIncoming > DATETIME(2012,01,01) AND ItemGroup= &ItemGroup AND NOT Service

CSOPORTOSÍT

Az eredmény csoportosításához használt 1C 8.2 lekérdezési nyelvi konstrukció.

Például:

VÁLASZT
Áruk, szolgáltatások, áruk átvétele. Áruk,
SUM (Bejövő áruk, szolgáltatások, áruk. Mennyiség) AS mennyiség,
SUM(Bejövő áruk, szolgáltatások, áruk. Összeg) AS Sum
TÓL TŐL
Dokumentum.Áru átvételeSzolgáltatások.Goods AS ÁruátvételSzolgáltatásokÁruk

CSOPORTOSÍT
Áruk, szolgáltatások, áruk átvétele

Ez a lekérdezés az összes bevételt összeg és mennyiség szerint összegzi a cikk összefüggésében.

A kulcsszón kívül ÖSSZEG egyéb összesítő függvények is használhatók: ÖSSZEG, KÜLÖNBÖZŐ SZÁMA, MAXIMÁLIS, MINIMÁLIS, ÁTLAGOS.

HAVING

Egy konstrukció, amit gyakran elfelejtenek, de nagyon fontos és hasznos. Lehetővé teszi egy kijelölés megadását az űrlapon aggregált függvény, ezt a tervezésben nem lehet megtenni AHOL.

Példa a HAVING használatára 1C kérésben:

VÁLASZT
Áruk, szolgáltatások, áruk átvétele. Áruk,
SUM (Bejövő áruk, szolgáltatások, áruk. Mennyiség) AS mennyiség,
SUM(Bejövő áruk, szolgáltatások, áruk. Összeg) AS Sum
TÓL TŐL
Dokumentum.Áru átvételeSzolgáltatások.Goods AS ÁruátvételSzolgáltatásokÁruk

CSOPORTOSÍT
GoodsServicesGoods.goods átvétele

SZUM(Bejövő áruk, szolgáltatások, áruk. Mennyiség) > 5

Így kiválasztjuk az 5 darabnál többet érkezett áruk számát.

JELENTÉS()

Például:

WHERE Bank = Érték(Katalógus.Bankok.Üres hivatkozás)

WHERE Nómenklatúra típusa = Érték(Könyvtár.Nómenklatúratípusok.Termék)

WHERE cikktípus = érték (felsorolás. cikktípusok. szolgáltatás)

TYPE kérésben

Az adattípus a következőképpen ellenőrizhető: a TYPE() és VALUETYPE() függvényekkel, vagy a logikai REFERENCE operátorral.

EXPRESSZ()

Az 1C lekérdezések Express operátora adattípusok konvertálására szolgál.

Szintaxis: EXPRESSZ(<Выражение>HOGYAN<Тип значения>)

Ezzel konvertálhatja a karakterlánc-értékeket dátumokká vagy a referenciaértékeket karakterlánc-adatokká stb.

A gyakorlatban az Express() operátort nagyon gyakran használják korlátlan hosszúságú mezők konvertálására, mert a korlátlan hosszúságú mezőket nem lehet kiválasztani, csoportosítani stb. Ha az ilyen mezőket nem konvertálja, hibaüzenetet kap Nem lehet összehasonlítani a korlátlan hosszúságú és nem kompatibilis típusú mezőket.

VÁLASZT
ContactInformation.Object,
EXPRESS(Kapcsolatinformáció.Nézet AS STRING(150)) AS Nézet
TÓL TŐL
Információk nyilvántartása Kapcsolattartási információk AS Kapcsolatfelvételi adatok

CSOPORTOSÍT
EXPRESS(Kapcsolattartási adatok. Ábrázolás STRING(150)-KÉNT),
ContactInformation.Object

ISNULL (ISNULL)

Elég hasznos funkció az 1C lekérdezési nyelvet, amely ellenőrzi a rekordban lévő értéket, és azt, hogy az egyenlő-e NULLA, lehetővé teszi, hogy saját értékkel helyettesítse. Leggyakrabban fogadáskor használják virtuális asztalok egyenlegeket és forgalmokat elrejteni NULLAés tegyen egy tiszta 0-t (nullát).

ISNULL(AdókPrevMonth.FSS-mentesség alkalmazva, 0)

Az 1C lekérdezési nyelv ilyen függvénye IS NULL érték hiányában nullát ad vissza, ami elkerüli a hibát.

CSATLAKOZIK

A csatlakozások 4 típusúak: BAL, JOBB, TELJES, BELSŐ.

BAL és JOBB CSATLAKOZÁS

Az összekapcsolások két tábla összekapcsolására szolgálnak egy bizonyos feltétel alapján. Funkció itt: BAL CSATLAKOZÁS abban, hogy az első megadott táblát teljesen átvesszük és a második táblát feltétel szerint kötjük. A második tábla mezői, amelyek feltétel alapján nem kapcsolhatók össze, meg vannak töltve az értékkel NULLA.

Példa bal oldali csatlakozásra egy 1C kérésben:

A teljes táblát visszaadja, és csak azokon a helyeken tölti ki a "Bank" mezőt, ahol a "Counterparts.Name = Banks.Name" feltétel teljesül. Ha a feltétel nem teljesül, a Bank mező értéke lesz NULLA.

JOBB CSATLAKOZÁS az 1C 8.3-ban abszolút hasonló BAL csatlakozni, egy különbség kivételével: JOBB CSATLAKOZÁS a "mester" tábla a második, nem az első.

TELJES KAPCSOLAT

TELJES KAPCSOLAT abban különbözik a bal- és jobboldalitól, hogy két táblából jeleníti meg az összes rekordot, csak azokat kapcsolja össze, amelyek feltétellel összekapcsolhatók.

Például:

TELJES KAPCSOLAT
Címtár Banks AS Banks

TOVÁBB

A lekérdezési nyelv csak akkor adja vissza mindkét táblát teljes egészében, ha a Rekordok összekapcsolása feltétel teljesül. A bal/jobb összekapcsolással ellentétben lehetséges, hogy NULL-ok két mezőben fordulnak elő.

BELSŐ ÖSSZEKAPCSOLÁS

BELSŐ ÖSSZEKAPCSOLÁS abban különbözik a teljestől, hogy csak azokat a rekordokat jeleníti meg, amelyeket adott feltétel szerint össze lehetett kapcsolni.

Például:

TÓL TŐL
Címtár. Partnerek AS ügyfelek

BELSŐ ÖSSZEKAPCSOLÁS
Címtár Banks AS Banks

TOVÁBB
Clients.Name = Banks.Name

Ez a lekérdezés csak azokat a sorokat adja vissza, ahol a bank és a partner neve megegyezik.

Következtetés

Ez csak egy kis része az 1C 8 lekérdező nyelv szintaxisának, a jövőben megpróbálok néhány pontot részletesebben megvizsgálni, megmutatni és még sok mást!

Kérés . Szöveg = "VÁLASZT | usStorageUnits.Reference | FROM | Reference.usStorageUnits AS usStorageUnits // 1. példa összehasonlítás egy üres logikai értékkel: |HOL | setStorageUnit.Allow SelectionFromStandbyZone = Hamis // 2. példa, de ha ez a logikai érték definiálva van, akkor ez jobb: // feltétel negatív logikai értékre: |HOL | NEM tárolóegységekkel. Engedélyezze a kivonást a készenléti zónából // 3. példa. Kiválasztás egy üres mező feltétele alapján, "betontípus hivatkozás" |HOL | setStorageUnit.ActiveFilterRegion = ÉRTÉK(Katalógus.FilterRegion us.NullReference) // 3a. példa. kijelölés "egy adott típusú dokumentum" típusú üres mező feltétele alapján |HOL | OurInformationRegister.Document = ÉRTÉK(Document.OurDocument.EmptyReference) // 3b. példa. kiválasztás a "különböző típusú dokumentumok" típusú üres mező feltételével ( összetett mező) |HOL | (OurInformationRegister.Document = ÉRTÉK(Document.OurDocument1.EmptyReference) | VAGY OurInformationRegister.Document = ÉRTÉK(Document.OurDocument2.EmptyReference) | VAGY... (stb. - sorrendben sorolja fel az összes lehetséges összetett mezőtípus feltételeit)) // 4. példa, vagy fordítva, ha "string" típusú kitöltött értéket kell kiválasztani, akkor a feltétel segít: |HOL | usStorageUnits.Name > """" // 5. példa, ha meghatározott típusú, összetett adattípusú dokumentumokat kell kiválasztani, például a "Végrehajtott feladatok" regiszterben, akkor a "Feladat" erőforrásnak van egy összetett típusa, amelynek értékei között a "Kiválasztás" dokumentum lehetséges |HOL | EXPRESS(InformationRegister Elvégzendő munkák.Job AS Document.Filter) REF Document.Filter // 5a. példa. Egy másik hasonló példa, amikor egy adott típusú dokumentumokat kell kiválasztania | VÁLASZTÁS | MIKOR KIFEJEZNI (agDocument Compliance.DocumentBU AS Dokumentum.Beérkező áruk/szolgáltatások) REFERENCIA Dokumentum.Beérkező áruk/szolgáltatások | AKKOR ""Szolgáltatások átvétele"" | MIKOR KIFEJEZNI(ar Dokumentumok levelezése.DokumentumBU AS Dokumentum.Szolgáltatási termékek értékesítése) REFERENCIA Dokumentum.Szolgáltatási termékek értékesítése | AKKOR "Áruk és szolgáltatások értékesítése" | MÁS """" | VÉGE MINT KindDocument // 6. példa: kiválasztás egy meghatározatlan érték feltétele alapján: |HOL | SavedSettings.User = UNdefined // 7. példa. Kiválasztás a felhalmozási regiszter "Bejövő" mozgása szerint, "Kiadás" - hasonlóan): |HOL | RegGoodsRetail.MovementType = ÉRTÉK(MovementAccumulationType.Income) // 8. példa: Hogyan jelezzük a lekérdezésben, hogy nem szükséges végrehajtani a lekérdezést (például valamilyen feltételtől függően üres lekérdezési eredményt kell programszerűen visszaadni - Query.Text = StrReplace(Query.Text, "WHERE) Doc.Link = &DocumentLink" , "HOL HAZUDJON");). Ehhez csak adja hozzá a „Hol van hamis” feltételt. Egyébként a mintában kért adatok mennyiségétől függetlenül egy ilyen kérés azonnal végrehajtásra kerül. |HOL HAZUDJON // 9. példa. Annak ellenőrzése, hogy a lekérdezés eredménye tartalmaz-e adatokat: Ha nemKérés.Fuss().Üres() Akkor // 10. példa Kiválasztás üres dátum feltétele szerint: |HOL | tbRows.CancellationDate = DATETIME(1; 1; 1)

43
NULL – hiányzó értékek. Nem szabad összetéveszteni nulla érték! A NULL nem szám, nem egyenlő szóközzel, nulla hivatkozás, nem definiált. A NULL típusképző érték, azaz. létezik egy NULL típus és egy ilyen típusú érték. NULLA... 26
Az 1C platformon az adatbázistáblák lekérdezésének kialakításához és végrehajtásához a Request programozási nyelv speciális objektumát használják. Ez az objektum a New Request konstrukció meghívásával jön létre. Kényelmes kérés... 18
A cikk tartalmazza hasznos trükkök amikor 1C v.8.2 lekérdezésekkel dolgozik, valamint olyan információkkal, amelyek nem annyira ismertek a lekérdezési nyelvről. Nem próbálok adni Teljes leírás lekérdező nyelv, de csak a ... 13
LIKE – Operátor, amely ellenőrzi, hogy egy karakterlánc hasonló-e egy mintához. A LIKE analógja SQL-ben. A LIKE operátor lehetővé teszi a tőle balra megadott kifejezés értékének összehasonlítását a jobb oldalon megadott sablon karakterlánccal. Kifejezés értéke...

Az 1C lehetővé teszi, hogy jelentősen leegyszerűsítse a könyvelést, vagy egyszerűen kezelje bármely szervezetet, legyen az egy kis üzlet vagy nagyvállalat. A program egy nagy adatbázis-kezelő rendszer. Annak érdekében, hogy ne keveredjen össze ebben az egészben, képesnek kell lennie különféle egyszerű műveletek végrehajtására, és meg kell értenie a lényeget. Ezután meg fogja érteni, hogyan ellenőrizheti egy érték típusát egy kérésben az 1C-ben, valamint azt, hogy mik azok általában, és hogyan lehet megkülönböztetni őket.

Értéktípusok

1C: A vállalat egy speciális funkciót is beépített az új verziókba (8.2-es platform). Segítségével az adatrendszer tetszőleges nevéhez, eleméhez tetszőleges speciális paramétert adhatunk. Ezt azért tették, hogy megkönnyítsék a rendszer szerkesztését és új elemek hozzáadását. Ezt a függvényt csak "értéktípusnak" hívják.

Valójában ez az egyik alapfogalom, amely a legtöbb programozási nyelvet tartalmazza. Különféle adatok osztályozására használható. Például: dátumok, számok, karakterláncok, hivatkozások. Ezek csak alapvető besorolások. Lehet, hogy sokkal többen vannak. Tegyük fel, hogy ha városokkal kapcsolatos információkat ír be a rendszerébe, használhatja: szárazföld, ország, körzet stb.

Vizsgálat

Egy adott mezőt a lekérdezési nyelv használatával ellenőrizhet. Pontosabban a funkciói: ÉRTÉKTÍPUS. Vagyis, ha meg akarjuk tudni, hogy az érdeklődésre számot tartó cella milyen információkat tartalmaz, akkor a parancsot kell használnunk.

ÉRTÉKTÍPUS(érték) = TÍPUS(karakterlánc)

A fenti példában a paranccsal definiáltuk a legegyszerűbb nézetet. Egy másik kérelem érvényesítési példa:

A dokumentumok

Maguk is jó néhány típus létezik, a felhasználók beérik a kezdetivel is, és beírhatják a sajátjukat a fejlesztés érdekében információs bázis. Íme néhány közülük.

  • DocumentLink. Jelentkezik kényelmes tárolás hivatkozások különféle objektumokhoz a rendszer más részein belül.
  • DocumentObject - dokumentumok szerkesztése.
  • DocumentSelection - objektumok rendezése az adatbázisból.

Ezenkívül vannak speciális kifejezések, amelyek bármilyen adatot jellemeznek:

  • a nyomtatvány;
  • vonal;
  • logikai érték
  • szám;
  • dátum;
  • sor;
  • jelölőnégyzet;
  • kép.

Ez csak egy részük. Bármely objektum csak ebből a listából lehet valami. A Boolean egy speciális paraméter, amely két értéket vesz fel: igaz vagy hamis. Vannak speciális címkék is, amelyek lehetővé teszik a kérés módosítását: mikor, hol, hogyan, egyébként stb. Beállítják a program viselkedési algoritmusát. Az 1C-t az a tény különbözteti meg, hogy ezek a szavak itt, mint minden más, oroszul is beírhatók.

Fontos megérteni, hogy mindezt a kezdők és a nem profik kínai betűként fogják fel. Ahhoz, hogy megértsük, mi forog kockán, és hatékonyan használjuk az 1C-t, ismernie kell a programozás alapjait. Általában meglehetősen könnyű ellenőrizni a kérés típusát az 1C programban, összehasonlítva más műveletekkel.