Gjuha e shprehjes së sistemit të përbërjes së të dhënave (1Cv8). Gjuha e shprehjes së sistemit të përbërjes së të dhënave (1Cv8) Shprehja e të dhënave përfundimtare SKD 1S

Çdo organizatë, në mënyrë që të marrë vendime menaxheriale në kohë dhe korrekte, ka nevojë për informacion operacional në lidhje me disponueshmërinë e mallrave në depo, koston e tij dhe shitjet. Organizatat tregtare punojnë me një numër të madh artikujsh dhe palësh, dhe kjo kërkon një organizim të mirë të kontabilitetit analitik dhe marrjen e shpejtë të informacionit të kërkuar nga të dhënat e tij. Artikulli diskuton teknikat themelore për të punuar me raporte standarde në zgjidhjen standarde "1C: Menaxhimi i Tregtisë 8" (botimi 11), i ndërtuar mbi bazën e një sistemi të përbërjes së të dhënave dhe ofron rekomandime të dobishme praktike që do të jenë të dobishme për të dy përdoruesit fillestarë dhe ata që kanë kaluar në edicionin e ri nga botimet e mëparshme.

Për shembull, le të marrim raportin

  • Analiza e disponueshmërisë së produktit;

Cilësimet.

Në një kolonë Lloji i krahasimit Nomenklatura

  • Të barabartë
  • Jo të barabartë
  • Në listë
  • Jo në listë
  • Në grup Nomenklatura;
  • Jo në grup Nomenklatura;
  • Në një grup nga lista Nomenklatura;
  • Jo në një grup nga lista Nomenklatura.

Kuptimi

"Zgjedhje të shpejta"

Ndërsa platforma 1C:Enterprise 8 zhvillohet dhe shfaqet versioni i ri 8.2, raportet në sisteme bëhen më fleksibël dhe përdoruesit kanë gjithnjë e më shumë mundësi për t'i përshtatur ato sipas kërkesave të tyre pa ndihmën e programuesve.

Mundësitë e reja të ofruara nga sistemi i përbërjes së të dhënave (DCS) ju lejojnë të përjetoni përfitimet e aftësive 1C:Enterprise 8 kur krijoni raporte si kurrë më parë. Dhe, përkundër faktit se ndërfaqja e raportit ka pësuar ndryshime të rëndësishme (krahasuar me botimin 10.3 të konfigurimit "Menaxhimi i Tregtisë", në vijim i referuar si UT), cilësimet e raportit janë ende të disponueshme për përdoruesin mesatar. Le të shohim disa teknika bazë për të punuar me to.

Gjëja e parë që mund t'i kushtoni vëmendje është përzgjedhja e shpejtë. Ato ju lejojnë të shfaqni të dhëna në një raport bazuar në vlera të caktuara të fushave të raportit sipas dëshirave të përdoruesit.

Për shembull, le të marrim raportin Analiza e disponueshmërisë së produktit në UT. Le të vërejmë menjëherë se i gjithë demonstrimi i aftësive të raportimit në UT 11 do të bëhet duke përdorur shembullin e dy raporteve:

  • Analiza e disponueshmërisë së produktit;
  • Të ardhurat dhe kostoja e shitjeve.

Përzgjedhja nga disa fusha mund të bëhet ose drejtpërdrejt në formularin e raportit ose duke përdorur një buton Cilësimet.

Në një kolonë Lloji i krahasimit përdoruesi mund të zgjedhë kushte të ndryshme krahasimi. Për shembull, për fushën Nomenklatura Ju mund të zgjidhni llojet e mëposhtme të krahasimit:

  • Të barabartë- raporti do të ndërtohet vetëm për artikullin e përzgjedhur;
  • Jo të barabartë- raporti do të krijohet për të gjithë gamën e produkteve, me përjashtim të artikullit të zgjedhur;
  • Në listë- raporti do të bazohet në listën e artikujve;
  • Jo në listë- raporti do të ndërtohet mbi të gjithë gamën e produkteve, përveç artikujve të përzgjedhur;
  • Në grup- raporti do të ndërtohet në të gjithë artikullin që ndodhet në dosjen e zgjedhur të drejtorisë Nomenklatura;
  • Jo në grup- raporti do të ndërtohet në të gjithë gamën e produkteve, me përjashtim të artikujve të vendosur në dosjen e zgjedhur të drejtorisë Nomenklatura;
  • Në një grup nga lista- ngjashëm me krahasimin Në listë, si vlera të listës zgjidhen vetëm dosjet në drejtori Nomenklatura;
  • Jo në një grup nga lista- e ngjashme me krahasimin Jo në listë, vetëm dosjet në drejtori zgjidhen si vlera të listës Nomenklatura.

Kutia e zgjedhjes në të majtë të fushës së përzgjedhjes tregon se përzgjedhja për këtë fushë është "aktivizuar", d.m.th., merret parasysh nga raporti.

Fushat e pakontrolluara nuk merren parasysh edhe nëse keni zgjedhur vlera specifike për ato fusha.

Në varësi të llojit të përzgjedhur të krahasimit në kolonë Kuptimi tregohet një element ose dosje (grup) specifik i drejtorisë, ose një listë elementësh ose dosjesh.

"Zgjedhjet e shpejta" janë të disponueshme në të gjitha zgjidhjet në platformën 1C:Enterprise 8.

Një shembull i një ndryshimi të thjeshtë në cilësimet e raportit

Për të parë/ndryshuar cilësimet e raportit, duhet të shkoni te menyja Të gjitha veprimet - Ndrysho opsionin.

Para nesh hapet dritarja e cilësimeve për opsionin e zgjedhur të raportit.

Struktura e raportit shfaqet në krye të dritares. Në thelb, kjo është një shfaqje vizuale e grupimeve të rreshtave dhe kolonave të raportit, d.m.th. në çfarë rendi do të shfaqen të dhënat analitike në raport në rreshta dhe kolona.

Në fund të dritares, shfaqet informacioni në lidhje me raportin në tërësi (nëse niveli i lartë është zgjedhur në strukturën e raportit Raportoni), ose në një grupim specifik rreshtash ose kolonash të raportit (nëse zgjidhet një grupim në një nivel më të ulët), cilësimet për shfaqjen e informacionit dhe dizajnimin e fushave.

Shembulli 1

Hapi 1. Ne duhet të heqim grupimin sipas karakteristikave të produktit, duke lënë vetëm grupimin sipas produktit. Për ta bërë këtë, në krye të dritares së cilësimeve të raportit, klikoni në fushë Nomenklatura, Karakteristikat. Në fund të dritares, shkoni te skeda Grupet.

Zgjidhni fushën Karakteristike dhe klikoni në butonin Fshije paneli komandues.

Konfirmoni ndryshimet në cilësimet e raportit duke klikuar butonin Përfundo redaktimin në këndin e poshtëm të majtë të ekranit.

Hapi 2. Pas heqjes së karakteristikës, detyra jonë, sipas kushteve të shembullit, do të jetë shtimi i një grupi çmimesh. Në thelb, ky grupim duhet të jetë në një nivel më të ulët se grupimi sipas magazinës, por në një nivel më të lartë se grupimi sipas artikullit. Prandaj, në strukturën e raportit do të veçojmë një grupim Stoku.

Duke klikuar me të djathtën mbi të, zgjidhni komandën nga menyja e kontekstit Grupi i ri.

Në dritaren e redaktimit të fushës së grupimit që hapet, zgjidhni Nomenklatura.Grupi i çmimeve.

Duke klikuar butonin Ne rregull, do të shohim se në raport është shtuar një grupim i ri, në varësi të grupimit Stoku.

Tani le të zgjedhim grupimin sipas produktit dhe, pa lëshuar butonin e djathtë të miut, tërhiqeni brenda (d.m.th. poshtë) grupimit sipas grupit të çmimeve. Do të marrim strukturën e paraqitur në Figurën 1. Rezultati i konfigurimit të raportit është paraqitur në Figurën 2.

Oriz. 1. Struktura e raportit që rezulton

Oriz. 2. Rezultati i personalizimit të raportit

Puna me fusha të personalizuara

Le të hedhim një vështrim më të afërt në opsionet e reja për personalizimin e raporteve në programin 1C: Trade Management 8.

Në formën e redaktimit të strukturës dhe cilësimeve të raportit tonë, le t'i kushtojmë vëmendje skedës Fushat e personalizuara.

Më parë, ne shtuam fusha në raport, lista e të cilave ishte paracaktuar nga zhvilluesi. Duke përdorur këtë skedë, ne mund të krijojmë fushat tona që na duhen - Fusha e përzgjedhjes ose Fusha e shprehjes.

Shembulli 2

Le të personalizojmë raportin "Historia e shitjeve" (versioni i raportit "Të ardhurat dhe kostoja e shitjeve"). Ne do të shfaqim të dhënat e shitjeve sipas partnerëve dhe gamës së produkteve. Le të supozojmë se kompania jonë shet mallra në Moskë dhe në rajone. Kështu, çdo klient në bazën e informacionit i përket një rajoni specifik gjeografik (atributi "Rajoni i Biznesit" në drejtorinë "Partnerët"). Ne mund t'i grupojmë lehtësisht të dhënat e shitjeve në një raport sipas rajonit, por çka nëse jemi të interesuar për statistika më të përmbledhura, në veçanti, përgjigjen e pyetjes "Sa mallra u shitën në Moskë dhe sa në të gjitha rajonet e tjera të kombinuara"? Këtu vijnë në ndihmë "fushat e personalizuara".

Hapi 1. Le të hapim raportin. Le të shkojmë te formulari për konfigurimin e strukturës së raportit ( Të gjitha veprimet -> Ndrysho opsionin). Le të fshijmë të gjitha grupimet e krijuara më parë në raport një nga një - për ta bërë këtë, zgjidhni secilën prej tyre dhe klikoni në butonin Fshije paneli komandues ose përdorni tastin DEL.

Ashtu si në shembullin e mëparshëm, le të shtojmë një grupim në raport sipas partnerit dhe më pas sipas artikullit. Ne tashmë e dimë se si ta bëjmë këtë, kështu që nuk do të marrë shumë kohë.

Hapi 2. Le të krijojmë një fushë të re të personalizuar. Le të hapim faqerojtësin Fushat e personalizuara dhe ekzekutoni komandën Shto -> Fusha e re e zgjedhjes.

Le t'i japim një emër fushës sonë të re - Rajoni në përgjithësi.

Le të klikojmë në butonin Shtoni. Në një rresht të ri, klikoni në butonin në kolonë Përzgjedhja. Në formën e redaktimit të përzgjedhjes që shfaqet, shtoni përzgjedhjen sipas fushës Partner.Rajoni i biznesit. Le të zgjedhim llojin e krahasimit Të barabartë, do të thotë - Moska.

Le të klikojmë në butonin Ne rregull, pas së cilës do të kthehemi në dritaren e redaktimit të fushës me porosi. Tjetra, duhet të klikoni në butonin në kolonë Kuptimi dhe në listën e përzgjedhjes së tipit të të dhënave që shfaqet, zgjidhni Linjë dhe shkruani si vlerë Moska.

Le të përsërisim operacionin. Le të shtojmë edhe një rresht në tabelë. Këtë herë për përzgjedhje sipas fushës Partner.Rajoni i biznesit zgjidhni llojin e krahasimit Jo të barabartë.

Kthimi në dritaren e redaktimit të fushës me porosi, në kolonë Kuptimi le të shkruajmë Rajone të tjera(shih Fig. 3).

Oriz. 3. Redaktimi i një fushe të personalizuar

Le të klikojmë në butonin Ne rregull. Fusha jonë e re është gati.

Hapi 3. Le të shtojmë fushën tonë të re në strukturën e raportit. Zgjedhja e nivelit të lartë me miun Raporti në strukturë, shtoni një grupim të ri. Në rekuizita Fusha le të zgjedhim Rajoni në përgjithësi.

Le të tërhiqni grupimin sipas partnerit dhe grupimin e varur sipas artikullit brenda atij të sapokrijuar me miun.

Le të krijojmë një raport dhe të shohim rezultatin (treguar në Fig. 4).

Oriz. 4. Rezultati i gjenerimit të raportit

Përzgjedhja dhe renditja

Le të kthehemi te dritarja për modifikimin e strukturës dhe cilësimeve të raportit dhe t'i kushtojmë vëmendje faqeshënuesve Përzgjedhja Dhe Renditja.

Nëse elementi rrënjësor është zgjedhur në strukturën e raportit ( Raportoni), atëherë cilësimet e bëra në këto skeda do të zbatohen për të gjithë raportin në tërësi. Nëse zgjidhet një grupim raporti, cilësimet do të ndikojnë vetëm në atë grupim.

Shembulli 3

Si rezultat, raporti Historia e shitjeve Do të përfshihen vetëm ato zbatime ku është specifikuar menaxheri Ivanov Ivan Fedorovich.

Shembulli 4

Ruani ndryshimet e bëra

Nëse ndryshoni strukturën e raportit, gjithmonë mund ta ruani atë duke përdorur komandën Të gjitha veprimet -> opsioni Ruaj.

Në formularin për ruajtjen e një opsioni, mund të përdorni çelësin për të zgjedhur Ruaje në versionin ekzistues të raportit(në vend të një prej opsioneve tashmë të disponueshme), ose Ruani versionin e ri të raportit.

Për menaxhim kompetent, çdo organizatë tregtare ka nevojë për marrjen e menjëhershme të informacionit në lidhje me gjendjen aktuale të mallrave, shitjeve dhe fitimeve. Sidoqoftë, nëse marrim parasysh se organizatat shpesh punojnë me një gamë të gjerë mallrash dhe një numër të madh palësh, atëherë mjeti i personalizimit të raportit analitik luan një rol të rëndësishëm në marrjen e informacionit të nevojshëm. Le të hedhim një vështrim më të afërt se si të punojmë me fushat e personalizuara në raportet standarde të programit (rev. 11).

Zhvillimi i platformës 1C: Enterprise 8 u ofron përdoruesve gjithnjë e më shumë mundësi. Për shembull, në versionin 8.2, raportet u bënë më fleksibël, duke i lejuar ato të personalizohen për t'iu përshtatur kërkesave të ndryshme pa ndihmën e programuesve të kualifikuar.

Po ndryshon cilësimet e raportit

Për të parë ose ndryshuar cilësimet e raportit, shkoni te menyja "Të gjitha veprimet" dhe zgjidhni komandën "Ndrysho opsionin". Pas kësaj, një dritare me cilësimet për raportin e hapur hapet para përdoruesit.

Në pjesën e sipërme të dritares së cilësimeve, mund të shihni strukturën e raportit, e cila nuk është gjë tjetër veçse një pasqyrim vizual i kolonave të raportit dhe grupimeve të rreshtave të tij, gjë që në thelb bën të mundur imagjinimin e rendit në të cilin janë të dhënat analitike. paraqitur në këtë raport.

Në fund të dritares së cilësimeve, shfaqen informacionet aktuale dhe cilësimet e fushës, që lidhen ose me raportin ose me elementët e strukturës së tij (kolonat dhe grupimet e rreshtave).

Fushat e personalizuara

Në një program 1C: Menaxhimi i tregtisë 8 Cilësimet e raportit të edicionit 11 u ofrojnë përdoruesve më shumë opsione në gjeneratën e tyre.

Në dritaren e modifikimit të cilësimeve dhe strukturës së raportit, dëshirojmë t'u tërheqim vëmendjen e veçantë përdoruesve te skeda "Fushat e personalizuara", e cila ju lejon të krijoni fushat tuaja dhe t'i shtoni ato në raport. Duhet të kujtojmë se më parë përdoruesi mund të përdorte vetëm ato fusha që ishin zbatuar nga zhvilluesi.

Le të shohim përdorimin e këtij funksioni duke përdorur një shembull.

Le të supozojmë se kreu i një kompanie tregtare që shet mallra në Moskë dhe rajone dëshiron të personalizojë raportin "Historia e Shitjeve" sipas kërkesave të tij, duke dashur të shfaqë në të të dhëna për shitjen e produkteve në Moskë dhe rajone në përgjithësi, si si dhe ndaj partnerëve. Kjo është shumë e lehtë për t'u bërë duke përdorur fusha të personalizuara.

Kështu, një shembull i qartë tregon se cilësimet fleksibël për fushat e personalizuara në një program standard 1C: Menaxhimi i tregtisë 8 ofrojini përdoruesit mundësi të shumta për të personalizuar raportet, duke ju lejuar të merrni shpejt informacionin e nevojshëm në një formë të përshtatshme.

Gjuha e shprehjes së sistemit të përbërjes së të dhënave

Gjuha e shprehjes së sistemit të përbërjes së të dhënave është krijuar për të shkruar shprehjet e përdorura në pjesë të ndryshme të sistemit.

Shprehjet përdoren në nënsistemet e mëposhtme:

  • diagrami i paraqitjes së të dhënave - për të përshkruar fushat e llogaritura, fushat totale, shprehjet e lidhjes, etj.;
  • cilësimet e paraqitjes së të dhënave - për të përshkruar shprehjet e fushës me porosi;
  • data layout layout - për përshkrimin e shprehjeve për lidhjen e grupeve të të dhënave, përshkrimin e parametrave të paraqitjes, etj.

Literale

Shprehja mund të përmbajë fjalë për fjalë. Llojet e mëposhtme të literaleve janë të mundshme:

  • Linjë;
  • Numri;
  • Data e;
  • Boolean.

Linjë

Një varg literal shkruhet me karaktere "", për shembull:

"String fjalë për fjalë"

Nëse keni nevojë të përdorni karakterin "" brenda një vargu literal, duhet të përdorni dy karaktere të tilla.

Për shembull:

"Literal ""në thonjëza"""

Numri

Numri shkruhet pa hapësira, në format dhjetor. Pjesa e pjesshme ndahet duke përdorur simbolin "." Për shembull:

10.5 200

datë

Një fjalë për fjalë datë shkruhet duke përdorur fjalë për fjalë kyçe DATETIME. Pas kësaj fjale kyçe, viti, muaji, dita, orët, minutat, sekondat renditen në kllapa, të ndara me presje. Specifikimi i kohës nuk kërkohet.

Për shembull:

DATETIME(1975, 1, 06) – 6 janar 1975 DATETIME(2006, 12, 2, 23, 56, 57) – 2 dhjetor 2006, 23 orë 56 minuta 57 sekonda, 23 orë 56 minuta 57 sekonda

Boolean

Vlerat Boolean mund të shkruhen duke përdorur fjalë për fjalë True (True), False (False).

Kuptimi

Për të specifikuar literale të llojeve të tjera (numërime të sistemit, të dhëna të paracaktuara), përdoret fjala kyçe Vlera, e ndjekur nga emri i fjalëpërfjalës në kllapa.

Vlera (Lloji i llogarisë. Aktive)

Veprimet në numra

Unar -

Ky operacion synon të ndryshojë shenjën e një numri në shenjën e kundërt. Për shembull:

Shitjet.Sasia

Unary +

Ky operacion nuk kryen asnjë veprim në numër. Për shembull:

Shitjet.Sasia

Binar -

Ky operacion synon të llogarisë diferencën e dy numrave. Për shembull:

RemainingsAndTurnovers.InitialRemaining – RemainingsAndTurnovers.FinalRemainingsRemainingsAndTurnovers.InitialRemaining - 100 400 – 357

Binar +

Ky operacion është krijuar për të llogaritur shumën e dy numrave. Për shembull:

RemainingsAndTurnover.InitialRemaining + RemainingAndTurnover.Turnover ResiduesAndTurnover.InitialRemaining + 100 400 + 357

Puna

Ky operacion është krijuar për të llogaritur prodhimin e dy numrave. Për shembull:

Nomenklatura.Çmimi * 1.2 2 * 3.14

Divizioni

Ky operacion është krijuar për të marrë rezultatin e pjesëtimit të një operand me një tjetër. Për shembull:

Nomenklatura.Çmimi / 1.2 2 / 3.14

Pjesa e mbetur e ndarjes

Ky operacion është krijuar për të marrë pjesën e mbetur kur një operand ndahet me një tjetër. Për shembull:

Nomenklatura Çmimi % 1,2 2 % 3,14

Operacionet e vargut

Lidhja (binare +)

Ky operacion është krijuar për të lidhur dy vargje. Për shembull:

Nomenklatura.Neni + “: ”+ Nomenklatura.Emri

si

Ky operacion kontrollon nëse vargu përputhet me modelin e kaluar.

Vlera e operatorit LIKE është TRUE nëse vlera<Выражения>plotëson modelin, dhe FALSE përndryshe.

Personazhet e mëposhtëm në<Строке_шаблона>kanë një kuptim të ndryshëm nga një personazh tjetër në rresht:

  • % - përqindje: një sekuencë që përmban zero ose më shumë karaktere arbitrare;
  • _ - nënvizon: një karakter arbitrar;
  • […] - një ose më shumë karaktere në kllapa katrore: një karakter, cilido nga ato të listuara brenda kllapave katrore. Numërimi mund të përmbajë vargje, për shembull a-z, që do të thotë një karakter arbitrar i përfshirë në interval, duke përfshirë skajet e diapazonit;
  • [^...] - në kllapa katrore një ikonë mohimi e ndjekur nga një ose më shumë karaktere: çdo karakter përveç atyre të listuara pas ikonës së mohimit;

Çdo simbol tjetër nënkupton vetveten dhe nuk mbart ndonjë ngarkesë shtesë. Nëse një nga personazhet e listuar duhet të shkruhet si vetvetja, atëherë duhet të paraprihet<Спецсимвол>, e specifikuar pas fjalës kyçe SPECIAL CHARACTER (ESCAPE).

Për shembull, shabllon

“%ABV[abvg]\_abv%” KARAKTER I VEÇANTË “\”

nënkupton një nënvarg që përbëhet nga një sekuencë karakteresh: shkronja A; shkronjat B; shkronjat B; një shifër; një nga shkronjat a, b, c ose d; nënvizoj; shkronjat a; shkronjat b; letra v. Për më tepër, kjo sekuencë mund të vendoset duke filluar nga një pozicion arbitrar në linjë.

Operacionet Krahasuese

Të barabartë

Ky operacion është krijuar për të krahasuar dy operandë për barazi. Për shembull:

Sales.Counterparty = Sales.NomenclatureFurnizuesi Kryesor

Jo të barabartë

Ky operacion është krijuar për të krahasuar dy operandë për pabarazi. Për shembull:

Shitjet.Kundërpartia<>Shitjet.Nomenklatura Furnizuesi Kryesor

Më pak

Ky operacion është krijuar për të kontrolluar nëse operandi i parë është më i vogël se i dyti. Për shembull:

SalesRurrent.Shuma< ПродажиПрошлые.Сумма

Më shumë

Ky operacion është krijuar për të kontrolluar nëse operandi i parë është më i madh se i dyti. Për shembull:

SalesCurrent.Sum > SalesPast.Sum

Më pak ose e barabartë

Ky operacion është krijuar për të kontrolluar nëse operandi i parë është më i vogël ose i barabartë me i dyti. Për shembull:

SalesRurrent.Shuma<= ПродажиПрошлые.Сумма

Më shumë ose e barabartë

Ky operacion është krijuar për të kontrolluar nëse operandi i parë është më i madh ose i barabartë me të dytin. Për shembull:

SalesCurrent.Sasia >= SalesPast.Shuma

Operacioni B

Ky operacion kontrollon praninë e një vlere në listën e kaluar të vlerave. Rezultati i operacionit do të jetë True nëse gjendet vlera, ose False ndryshe. Për shembull:

Artikulli B (&Produkti1, &Produkti2)

Operacioni i kontrollit të pranisë së një vlere në një grup të dhënash

Operacioni kontrollon praninë e një vlere në grupin e specifikuar të të dhënave. Të dhënat e vërtetimit duhet të përmbajë një fushë. Për shembull:

Shitjet kundër palëve

Operacioni i kontrollit të një vlere për NULL

Ky operacion kthen True nëse vlera është NULL. Për shembull:

Shitjet.Kundërpala ËSHTË NULL

Operacioni i kontrollit të një vlere për pabarazinë NULL

Ky operacion kthen True nëse vlera nuk është NULL. Për shembull:

Shitjet.Kundërpala NUK ËSHTË NULL

Operacionet logjike

Operacionet logjike pranojnë shprehje të tipit Boolean si operandë.

Operacioni JO

Operacioni NOT kthen True nëse operandi i tij është False dhe False nëse operandi i tij është True. Për shembull:

NOT Document.Marrës = Dokument.Dërguesi

Operacioni I

Operacioni AND kthen True nëse të dy operandët janë True, dhe False nëse njëri prej operandëve është False. Për shembull:

Dokumenti. Marrësi = Dokumenti. Dërguesi DHE Dokumenti. Marrësi = &Kundërpala

OSE operacion

Operacioni OR kthen True nëse një nga operandët e tij është True, dhe False nëse të dy operandët janë False. Për shembull:

Dokumenti. Marrësi = Dokumenti. Dërguesi OSE Dokumenti. Marrësi = &Kundërpala

Funksionet agregate

Funksionet agregate kryejnë disa veprime në një grup të dhënash.

Shuma

Funksioni i agregatit Sum llogarit shumën e vlerave të shprehjeve që i kalohen atij si një argument për të gjitha regjistrimet e detajeve. Për shembull:

Shuma (Shitjet. Shuma e qarkullimit)

sasi

Funksioni Count llogarit numrin e vlerave të tjera nga NULL. Për shembull:

Sasia (Shitjet. Kundërpartia)

Numri i të ndryshmeve

Ky funksion llogarit numrin e vlerave të dallueshme. Për shembull:

Sasia (Shitje të ndryshme. Kundërpartia)

Maksimumi

Funksioni merr vlerën maksimale. Për shembull:

Maksimumi (E mbetur. Sasia)

Minimumi

Funksioni merr vlerën minimale. Për shembull:

Minimumi (E mbetur. Sasia)

Mesatare

Funksioni merr mesataren e vlerave jo-NULL. Për shembull:

Mesatare (E mbetur. Sasia)

Operacione të tjera

Operacioni SELECT

Operacioni Select synon të zgjedhë një nga disa vlera kur plotësohen disa kushte. Për shembull:

Zgjidhni Kur Shuma > 1000 Pastaj Shuma Përndryshe 0 Fund

Rregulla për krahasimin e dy vlerave

Nëse llojet e vlerave që krahasohen janë të ndryshme nga njëra-tjetra, atëherë marrëdhëniet midis vlerave përcaktohen në bazë të përparësisë së llojeve:

  • NULL (më e ulëta);
  • Boolean;
  • Numri;
  • Data e;
  • Linjë;
  • Llojet e referencës

Marrëdhëniet midis llojeve të ndryshme të referencës përcaktohen bazuar në numrat e referencës së tabelave që korrespondojnë me një lloj të caktuar.

Nëse llojet e të dhënave janë të njëjta, atëherë vlerat krahasohen sipas rregullave të mëposhtme:

  • për tipin Boolean vlera TRUE është më e madhe se vlera FALSE;
  • lloji i numrit ka rregullat e zakonshme të krahasimit për numrat;
  • për llojin Date, datat e mëparshme janë më të vogla se ato të mëvonshme;
  • për llojin String - krahasimi i vargjeve në përputhje me karakteristikat kombëtare të përcaktuara të bazës së të dhënave;
  • Llojet e referencës krahasohen në bazë të vlerave të tyre (numri rekord, etj.).

Duke punuar me Vlerën NULL

Çdo operacion në të cilin një nga operandët është NULL do të prodhojë një rezultat NULL.

Ka përjashtime:

  • Operacioni AND do të kthejë NULL vetëm nëse asnjë nga operandët nuk është False;
  • Operacioni OR do të kthejë NULL vetëm nëse asnjë nga operandët e tij nuk është i vërtetë.

Prioritetet e operimit

Operacionet kanë prioritetet e mëposhtme (rreshti i parë ka prioritetin më të ulët):

  • B, ËSHTË NULL, NUK ËSHTË NULL;
  • =, <>, <=, <, >=, >;
  • Binar +, Binar – ;
  • *, /, %;
  • Unary +, Unary -.

Funksionet e gjuhës së shprehjes së sistemit të përbërjes së të dhënave

Llogaritni

Funksioni Calculate është krijuar për të llogaritur një shprehje në kontekstin e disa grupimeve. Funksioni ka parametrat e mëposhtëm:

  • Shprehje. Lloji String. Përmban një shprehje të llogaritur;
  • Grupimi. Lloji String. Përmban emrin e grupimit në kontekstin e të cilit duhet të vlerësohet shprehja. Nëse një varg bosh përdoret si emër grupimi, llogaritja do të kryhet në kontekstin e grupimit aktual. Nëse vargu GrandTotal përdoret si emër i grupit, llogaritja do të kryhet në kontekstin e totalit të përgjithshëm. Përndryshe, llogaritja do të kryhet në kontekstin e grupit mëmë me të njëjtin emër. Për shembull:
Shuma (Sales.SumTurnover) / Llogarit ("Sum(Sales.SumTurnover)", "Total")

Në këtë shembull, rezultati do të jetë raporti i shumës për fushën "Sales.AmountTurnover" të rekordit të grupimit me shumën e së njëjtës fushë në të gjithë paraqitjen.

Niveli

Funksioni është krijuar për të marrë nivelin aktual të regjistrimit.

Niveli ()

NumberInOrder

Merrni numrin vijues të radhës.

NumberByOrder()

NumberInOrderInGrouping

Rikthen numrin rendor të radhës në grupimin aktual.

NumberByOrderInGroup()

Formati

Merrni një varg të formatuar të vlerës së kaluar.

Vargu i formatit është vendosur në përputhje me vargun e formatit 1C: Enterprise.

Opsione:

  • Kuptimi;
  • Formatoni vargun.

Formati (Shuma e Faturave. Dokumenti, "NPV=2")

Fillimi i periudhës

Opsione:

    • Minuta;
    • Dita;
    • Nje jave;
    • Muaj;
    • tremujori;
    • Dekada;
    • Gjysëm viti.

Periudha e fillimit (DataKoha (2002, 10, 12, 10, 15, 34), "Muaji")

Rezultati:

01.10.2002 0:00:00

Fundi i Periudhës

Funksioni është krijuar për të nxjerrë një datë specifike nga një datë e caktuar.

Opsione:

  • Data e. Lloji Data. Data e specifikuar;
  • Lloji i periudhës. Lloji String. Përmban një nga vlerat e mëposhtme:
    • Minuta;
    • Dita;
    • Nje jave;
    • Muaj;
    • tremujori;
    • Dekada;
    • Gjysëm viti.

Periudha e Fundit (DataKoha (2002, 10, 12, 10, 15, 34), "Java")

Rezultati:

13.10.2002 23:59:59

AddToDate

Funksioni është krijuar për të shtuar një vlerë të caktuar në një datë.

Opsione:

  • Lloji i zmadhimit. Lloji String. Përmban një nga vlerat e mëposhtme:
    • Minuta;
    • Dita;
    • Nje jave;
    • Muaj;
    • tremujori;
    • Dekada;
    • Gjysëm viti.
  • Shuma - sa ju duhet për të rritur datën. Lloji Numri. Pjesa thyesore shpërfillet.

AddToDate(DateTime(2002, 10, 12, 10, 15, 34), "Month", 1)

Rezultati:

12.11.2002 10:15:34

DifferenceDate

Funksioni është krijuar për të marrë diferencën midis dy datave.

Opsione:

  • Shprehje. Lloji Data. Data origjinale;
  • Shprehje. Lloji Data. Data e zbritur;
  • Lloji i ndryshimit. Lloji String. Përmban një nga vlerat:
    • E dyta;
    • Minuta;
    • Dita;
    • Muaj;
    • tremujori;

DATEDIFFERENCE(DATATIME(2002, 10, 12, 10, 15, 34), DATETIME(2002, 10, 14, 9, 18, 06), "DITA")

Rezultati:

Nënstring

Ky funksion është krijuar për të nxjerrë një nënvarg nga një varg.

Opsione:

  • Linjë. Lloji String. Vargu nga i cili nxirret nënvargu;
  • Pozicioni. Lloji Numri. Pozicioni i karakterit nga i cili fillon nënvargu që do të nxirret nga vargu;
  • Gjatësia. Lloji Numri. Gjatësia e nënvargut të caktuar.

SUBSTRING (Llogaritë. Adresa, 1, 4)

Gjatësia e linjës

Funksioni është krijuar për të përcaktuar gjatësinë e një vargu.

Parametri:

  • Linjë. Lloji String. Një varg gjatësia e të cilit është specifikuar.

Linja (Kundërpalët. Adresa)

viti

Ky funksion është krijuar për të nxjerrë vitin nga një vlerë e tipit Date.

Parametri:

  • Data e. Lloji Data. Data me të cilën përcaktohet viti.

YEAR (Shpenzime. Data)

lagje

Ky funksion është krijuar për të nxjerrë numrin e tremujorit nga një vlerë e tipit Data. Numri i tremujorit normalisht varion nga 1 në 4.

Parametri

  • Data e. Lloji Data. Data në të cilën përcaktohet tremujori
QARTER (Shpenzime. Data)

Muaj

Ky funksion është krijuar për të nxjerrë numrin e muajit nga një vlerë e tipit Data. Numri i muajit normalisht varion nga 1 në 12.

  • Data e. Lloji Data. Data me të cilën përcaktohet muaji.
MUAJ (Shpenzime. Data)

Dita e Vitit

Ky funksion është krijuar për të marrë ditën e vitit nga një vlerë e tipit Date. Dita e vitit normalisht varion nga 1 në 365 (366).

  • Data e. Lloji Data. Data me të cilën përcaktohet dita e vitit.
DAYYEAR (Llogaria e shpenzimeve.Data)

Dita

Ky funksion është krijuar për të marrë ditën e muajit nga një vlerë e tipit Date. Dita e muajit zakonisht varion nga 1 deri në 31.

  • Data e. Lloji Data. Data me të cilën përcaktohet dita e muajit.
DITA (Shpenzime. Data)

Nje jave

Ky funksion është krijuar për të marrë numrin e javës së vitit nga një vlerë e tipit Date. Javët e vitit numërohen duke filluar nga 1.

  • Data e. Lloji Data. Data në të cilën përcaktohen numrat e javës.
JAVA (Shpenzime. Data)

Ditë të javës

Ky funksion është krijuar për të marrë ditën e javës nga një vlerë e tipit Date. Dita normale e javës varion nga 1 (e hënë) deri në 7 (e diel).

  • Data e. Lloji Data. Data me të cilën përcaktohet dita e javës.
DITA E JAVËS (Data e faturës së shpenzimeve)

Ora

Ky funksion është krijuar për të marrë orën e ditës nga një vlerë e tipit Date. Ora e ditës varion nga 0 në 23.

  • Data e. Lloji Data. Data me të cilën përcaktohet ora e ditës.
HOUR (Shpenzime. Data)

Minuta

Ky funksion është krijuar për të marrë minutën e orës nga një vlerë e tipit Data. Minuta e orës varion nga 0 në 59.

  • Data e. Lloji Data. Data me të cilën përcaktohet minuta e orës.
MINUTE (Data e shpenzimeve)

Së dyti

Ky funksion është krijuar për të marrë sekondën e një minutë nga një vlerë e tipit Date. Sekonda e një minutë varion nga 0 në 59.

  • Data e. Lloji Data. Data në të cilën përcaktohen sekondat e minutës.
E DYTË (Shpenzime. Data)

shprehin

Ky funksion është krijuar për të nxjerrë një lloj nga një shprehje që mund të përmbajë një lloj të përbërë. Nëse shprehja përmban një lloj tjetër nga lloji i kërkuar, NULL do të kthehet.

Opsione:

  • Shprehje për konvertim;
  • Treguesi i llojit. Lloji String. Përmban një varg tipi. Për shembull, "Numri", "String", etj. Përveç llojeve primitive, kjo rresht mund të përmbajë emrin e tabelës. Në këtë rast, do të bëhet një përpjekje për të shprehur një referencë në tabelën e specifikuar.

Express(Data.Props1, "Numri(10,3)")

Është Null

Ky funksion kthen vlerën e parametrit të dytë nëse vlera e parametrit të parë është NULL.

Përndryshe, vlera e parametrit të parë do të kthehet.

Po NULL (Shuma (Shitjet. Shuma e qarkullimit), 0)

Funksionet e moduleve të zakonshme

Një shprehje e motorit të përbërjes së të dhënave mund të përmbajë thirrje për funksionet e moduleve të konfigurimit të përbashkët global. Asnjë sintaksë shtesë nuk kërkohet për të thirrur funksione të tilla.

Në këtë shembull, funksioni "AbbreviatedName" do të thirret nga moduli i konfigurimit të përgjithshëm.

Vini re se përdorimi i funksioneve të zakonshme të modulit lejohet vetëm nëse specifikohet parametri i duhur i procesorit të përbërjes së të dhënave.

Për më tepër, funksionet e moduleve të zakonshme nuk mund të përdoren në shprehjet e fushës me porosi.

Raporti merr bilancet e mallrave në magazina në seksione të ndryshme (karakteristika, seri, njësi matëse etj.). Për të mos e komplikuar shembullin, do të lëmë vetëm grupimin sipas artikullit dhe shfaqjen e vetëm bilancit përfundimtar që nga data e raportimit. Tabela përfundimtare do të tregojë bilancet e artikullit në magazina.

Por më pas përdoruesi raportoi se duhej të shtonte dy fusha shtesë:

  1. Alarmi për sasinë. Nëse sasia është më e vogël ose e barabartë me 5, atëherë sinjalizimi është "I pamjaftueshëm". Nëse sasia është më e madhe se 5, atëherë më e vogël ose e barabartë me 10, atëherë alarmi është "Normal". Nëse sasia është më shumë se 10, atëherë "Mbibollëk".
  2. Formula për llogaritjen e bilancit përfundimtar. Në kolonën shtesë, përdoruesi dëshiron të shohë se çfarë veprimesh ka kryer programi për të marrë vlerën e bilancit përfundimtar. Kjo do të thotë, formula "Bilanci fillestar + Qarkullimi = Bilanci përfundimtar", ku do të zëvendësohen vlerat përkatëse.

Sigurisht, një programues mund të ndërhyjë këtu dhe të ndryshojë kërkesën e skemës së përbërjes së të dhënave dhe cilësimet e raportit, por ne do ta përfundojmë detyrën në modalitetin e përdoruesit pa ndryshuar raportin në modalitetin e konfiguruesit.

Fushat shtesë

Pra, le të fillojmë. Le të shkojmë te cilësimet e opsionit të raportit:

Projektuesi i cilësimeve për opsionin e raportit ACS do të hapet para nesh. Duke shkuar te skeda "Fushat e personalizuara", do të fillojmë t'i krijojmë ato.

Pamja e ekranit tashmë tregon dy fusha të krijuara me porosi, funksionaliteti i të cilave u përshkrua më lart. Le të shohim cilësimet për secilën. Le të fillojmë me fushën "Njoftimi".

Në cilësimet, duhet të vendosim titullin e fushës që do të shfaqet në raport, si dhe të vendosim shprehjet për gjenerimin e vlerës në fushën e regjistrimeve të detajuara dhe në totalet për këtë fushë. Meqenëse nuk ka nevojë të tregohet alarmi në total, ne do të shkruajmë një shprehje vetëm për regjistrime të detajuara.

Sintaksa e shprehjes është e ngjashme me gjuhën e pyetjeve 1C: Enterprise. Ka disa dallime, por ne nuk do t'i prekim ato në detaje në këtë artikull. Shprehja përdor operatorin e përzgjedhjes:

"Zgjedhja kur pastaj përndryshe fundi"

i ngjashëm me një operator në një gjuhë pyetëse. Fushat në shprehjet e fushave të personalizuara specifikohen nga përfaqësimi i tyre. Në mënyrë që platforma të kuptojë se pamja e futur përfaqëson një fushë të caktuar, emri i pamjes është i rrethuar me kllapa katrore "". Nëse paraqitja e fushës është një fjalë, atëherë kllapat katrore janë opsionale. Në shembullin e mësipërm, ne po shikojmë fushën Bilanci përfundimtar.

Cilësimet për fushën "Formula për llogaritjen e bilancit përfundimtar" vendosen në të njëjtën mënyrë:


Këtu është e nevojshme të përmendim disa nuanca:

  1. Ne mund ta tregojmë formulën në një qelizë vetëm si rresht. Prandaj, ne i konvertojmë të gjitha vlerat numerike në një varg duke përdorur metodën e gjuhës së shprehjes SKD "String()", e cila konverton çdo vlerë në një varg. Pastaj kryejmë lidhjen e vargjeve.
  2. Në mënyrë që fusha të shfaqet në totalet e raportit, ne do t'i shtojmë një formulë të ngjashme shprehjes së të dhënave totale. Thjesht duhet të shtoni funksionet e grumbullimit "SUM()" për secilën vlerë në përputhje me totalet.

Jeni gati të përdorni fushat në raportin tuaj!

Vendosja dhe gjenerimi i një raporti

Shtoni fushën "Formula për llogaritjen e bilancit përfundimtar" në fushat e daljes së raportit:

Ne do të shtojmë shprehjen "Njoftim" në të dhënat e detajuara të artikujve. Për ta bërë këtë, shtoni fushën e shprehjes "Njoftim" në grupimin "Nomenklatura". Pas kësaj, struktura e raportit do të marrë formën e mëposhtme:

Konfigurimi i raportit tani ka përfunduar. Nëse është e nevojshme, cilësimet e shtuara mund të ruhen për ripërdorim. Le të krijojmë një raport:

Siç mund ta shohim, në raport janë shtuar fusha në përputhje me kushtet e detyrës. Në të njëjtën kohë, nuk kishte nevojë të modifikohej raporti në modalitetin e konfiguruesit. Ky është avantazhi kryesor i fushave të personalizuara! Një përdorues i trajnuar për t'i përdorur ato mund t'i përdorë ato për të krijuar një raport mbi kërkesat e tyre brenda shtëpisë, pa ndihmën e një programuesi.

Më besoni, është e mundur ta stërvitni atë për të përdorur këto veçori, sepse është shumë më e lehtë sesa të shkruani formula në spreadsheets Excel.