Rezultat CCD-a u tablici vrijednosti. Primjer korištenja vanjskog izvora podataka u LCD-u. Pročitajte dnevnik registracije

Hej!
Danas želim opisati temu s kojom se bez "Scuba" nećeš raspršiti :);)

Scuba na činjenicu da je uranjanje prilično duboko. U literaturi postoji nekoliko linkova na ovu temu, a još ne "prenošenje" u njoj neće razabrati. Ne bi se čak ni potaknulo takvoj akciji;) usput, u dokumentaciji se spominje vrlo loše i nedosljedno, morate se odnositi na književnost treće strane.

Na primjer, ja visoko preporučiti "razvoj složenih izvješća u" 1c: poduzeće 8.2 ". Sustav rasporeda podataka, (ako je točnije, vidi str. 224, 267 i 473)

U CCD-u postoje 2 vrste izvora podataka: zahtjev, objekt i pridruživanje (ova stvar se ne računa, to nije izvor podataka, ali dostupan rukovatelj). Vidi sliku 1:


Dakle, ako smo s izvorom (set) tipa podataka "Zahtjev" za nas više ili manje razumljivo, kako raditi, onda postoje poteškoće u bazi podataka "objekt".

Za početak, opisati ću što želimo dobiti na izlazu:

Izvješće, korisnik pritisnuo gumb " Oblik"I pojavio se popis nomenature (vidi sl. 2):

Da, napravio sam jednu netočnost, naime: nema gumba " Oblik"Ali postoji gumb" novi čin"(Malo ću objasniti zašto se to dogodilo;)

Da da! Avenum: Cijeli popis se prikazuje iz "objekt" skupa podataka:

Odluka:

  1. Stvoriti vanjsko izvješće;
  2. Dodamo raspored SCD-a, nazovite ga "mainhomaakmpanovKid";
  3. Dodavanje "objekt" postavljene podatke na njega, dodijelite naziv "Popis unosa" (treba biti isti kao na slici 3);
  4. U postavkama izvješća ne eksperimentiramo, neka sve jednostavno (vidi sl. 4)

Ok, polovica slučaja;)

Sada generirajte osnovni oblik izvješća (da, drugi trenutak! Moja konfiguracija radi na uobičajenom sučelju, ali mislim, na upravljanim oblicima naći ćete rješenje;) Dakle, Oblik:

Ovdje postoji problem! Ako kliknete na gumb "Oblik" (Sl. 5.), ćemo vidjeti pogrešku!


Namjestio sam ovaj članak u rješavanju ovog problema!

Uhvatite gumb događaja "u formi" nije uspio, pa sam odlučio koristiti štaku. Pokrenula je konfiguraciju u načinu debug i pokušao pronaći tipku "Obrazac".

Umetnut u obliku postupka "obrasca", ali u njemu nema znakova, morao sam nadjačati akciju gumba "Oblik" prije otvaranja obrasca:


Na sl. 8 Osim mijenjanja oblika obrasca, daje se primjer upita, obrade i prijenosa generiranih podataka u CCD. Pažljivo proučavamo bjeljilo:

  1. Generiramo ulazne podatke za CCD;
  2. Inicijalizirati CCD;
  3. Izrađujemo rezultat na obrascu (plaćate istu pozornost na to!).

Sjetite se sheme interakcije objekata sustava rasporeda podataka:

Dijagram rasporeda podataka u vanjskom izvješću prikladan je kao globalni objekt u metodi obrasca Shemacksprinky.Također možete kontaktirati po imenu tako što ćete ga prolaziti na metodu Primati(vidi sl. 8)

Glavni dio koda daje se u nastavku:

Zahtjev \u003d novi zahtjev; Zahtjev \u003d "odaberite | nomenklaturu. Ime kao nomenklatura | iz | katalog. Zamjena kao nomenklatura"; Nomenclampscription \u003d upit. Ispunite (). Unload (); SET \u003d NOVA STRUKTURA ("popis unosa", nomenchlampscriptions); // SCD \u003d primanje ("BasiccheemComPonicID"); SCD \u003d SchemeComponovydny; CompMeker \u003d novi stroj za preklopno čišćenje; MockAComp \u003d Compmacket. Ispunite (SCD, SCD. Non-pumppone); Procesor kompenziran \u003d novi procesorski odbori; Procesorski okviri. Inicijalizirati (mockUp, citirani); zaključak \u003d novi procesor-in-line rezultate.Complekmangadokument; zaključak. Instalacija (element oblika. Rezultat); zaključak. osigurati (Odbor za procesor, istinu);

Da! Evo još jednog ugodnog trenutka !!!

U ovom primjeru, kao što možete vidjeti (vidi sliku 2), izlaz se provodi u obliku, a ne u tablici. dokument! I to je vrlo dobro, jer možemo raditi s obrascem (programski presresti događaje elementa oblika, učiniti sve vrste žetona s povlačenjem i padom i tako dalje;)

U tabličnom dokumentu možemo jednostavno prikazati obrađene podatke na zaslonu i prenijeti upravljanje dokumentima na korisnika i ne možemo utjecati na daljnji proces uređivanja ovog sadržaja!

Pogledajte sustav pomoći " Područje tabličnog dokumenta ", I samo dajem izvadak iz ugrađene dokumentacije sustava 1c Enterprise 8.2:

"Polje dokumenta tablice je tabularni dokument smješten u obliku. Uz razdjelnik dizajnerskih mogućnosti tabličnog dokumenta, omogućuje vam da organizirate obradu događaja koji proizlaze iz odabira stanica, slika, kao i drugih kontrola smještenih u polju tabličnog dokumenta. "

U redu, kako kažu, uspjeh u bitci;)

U mom prošlom članku sam već napisao da je 1c paradoksalna platforma. Linija podataka podataka odnosi se na takve paradokse. CCD je dizajniran za izgradnju složenih izvješća i podrazumijeva zamjenu "ručnog" programiranja izvješća za projektiranje u višenamjenskim alatima. Mogućnost korištenja CCD-a pojavila se u osmoj verziji, ali je trebalo dugo vremena da se verzija 8.2 pojavila kako bi je koristila u svojim tipičnim proizvodima. SCD, SCD je multifunkcionalni alat pomoću kojih možete nadoknaditi vrlo složene izvještaje bez jedinstvene linije koda. Međutim, LCD ima prilično visok prag ulaska, proučavanja i počnite ga u potpunosti koristiti "od napada" vrlo teško, jer sučelje nije u potpunosti intuitivno, a najcjelovitije smjernice su dostupne samo u obliku plaćene literature.

U procesu moje studije, CCD je nastao zadatak. Morate dobiti podatke iz treće strane tablice vrijednosti pomoću jezika upita i nastaviti raditi s tim podacima kao sličnim iz tablica baze podataka (informacije o informacijama, grupiranje i tako dalje). U klasičnom formatu, donijeli bismo zahtjev koji prima informacije iz tablice prenesene na zahtjev u ideji parametra.

Zahtjev \u003d novi zahtjev (
"Odaberite
| Stol. Namerenklatura,
| Stol. Ploča
| Je
| & TK kao stol ");
Zahtjev. Parametar instalacije ("TK", TK);

Ali iz CCD-a nije tako jednostavno. Nažalost, gore opisana operacija treba obaviti u sustavu lista podataka nemoguće je. Ipak, provodi se mogućnost učitavanja vanjskih tablica vrijednosti u sustavu.

Vrijedno je izraditi malo lirsko povlačenje i razgovarati o skupovima podataka. Podaci su izvori informacija iz koje SCD prima podatke koji se kasnije žali na izvješće. Podatkovni skupovi su podijeljeni u vrste, u osnovi koriste vrstu "zahtjeva", u kojem programer piše zahtjev za bazu podataka. Upišite "objekt" se koristi za učitavanje podataka iz vanjskih objekata. U oba slučaja, imamo određeni skup polja dobivenih kao rezultat izvršenja upita ili učitavanja vanjskog objekta. Kasnije se ova polja mogu upravljati na kartici "Postavke", zajedno s detaljnim postavkama strukture izvješća. Za odnos različitih skupova, CCD pruža mogućnost određivanja veza skupova podataka na istom nazivu. Te su obveznice izravni analog lijeve veze u klasičnom zahtjevu. Međutim, treba napomenuti da zahtjevi u bilo kojem skupu podataka ne "znaju" o postojanju drugih skupova podataka, na kraju podatkovni skupovi skupova podataka će utjecati na izgled podataka na strukturi navedenoj na kartici Postavke.

Detaljno opisati zadatak na neki primjer. Postoji tipično izvješće o izračunanoj izjavi organizacije konfiguracije ZEK 8. Potrebno je da su vrste naselja u izvješću grupirane od strane nekih skupina. Korespondencija video grupe pohranjuje se u vanjskoj tablici vrijednosti. Da biste ga učitali u glavnu shemu postavljanja podataka, stvorite "skup podataka" s nazivom "Group" (Slika 2). Komunikacija proizvodimo s "postavljenim upita" - "razgraničenje" u skladu s obrascem izračuna (slika 3). U "skupu podataka" - "obračunate" je informacija o grupama, uklanjamo sve unose. Nakon, na kartici Postavke, možemo koristiti polje Grupe "Group", koja se učitava iz vanjskog izvora podataka (slika 4). U funkciji formiranja izvješća nadopunjujemo učitavanje vanjskih podataka.

Funkcija za formuliranje (rezultat \u003d nedefinirano, proprodershimps \u003d nedefinirano, outforming \u003d istina) izvoz

// primanje ili formiranje željene tablice vrijednosti "grupe" i njegov unos u istu varijablu

Vanjska \u003d nova struktura (); // stvoriti i ispuniti vanjsku strukturu podataka
Vanized. Unesite (skupine);

Opasna vrijednost \u003d tipični tipovi. Projekt PersaluppodingPastenerPasteer (ovaj objekt);
Pocilionpurpain \u003d postavke mape. Postavke prelijevanja ();
Tipični tipovi. Polingprenimennews (ovaj objekt);
Tipični tipovi. Formiranje izjave (ovaj objekt, rezultat, pohrana podataka, Outlook, ponderirani);
Oprema za mapu. Instalacije (jutarnja);
Vratiti rezultat;

Kraj

U slučaju da smo učinili izvješće "od nule", izvješćivački kodeks formiranja izvješća izgledao bi ovako:

Inozemne) \u003d nova struktura;
Stranih. Stavite ("grupe", grupe); // grupe - željena tablica vrijednosti
ShemescomponicIda \u003d primanje ("Basicshemakompomphond"); // naš izgled s dijagramom podataka
Postavke \u003d SchemeComponovydata.
Kompleks kompleksa s preklopom;
MockoupComponovka \u003d mapa. Ispunite (dijagram štapići, postavke);
ProcesorComponovydany \u003d novi procesorCompon
ProcesorComponovydy.initialize (glatke, vanjske dijelove);
Tabu \u003d novo drvo;
Oprema procesora \u003d novi procesor-in-line rezultati Commonthhelblocks
Vježba procesora. Instalacija dokumenta (tabo);
Opremu procesora. Oprema (procesorCompon);

Čitati 9660 vrijeme

Ponekad se događa da se podaci u izvješću ne mogu dobiti pomoću zahtjeva ili upita kombinacije. Morate koristiti bilo koji postupak za prikupljanje podataka, a podaci se postavljaju u tablici vrijednosti. Postavlja se pitanje - je li moguće koristiti ove podatke u dijagramu rasporeda podataka? Uostalom, SKD alat je snažan i praktičan. Ispada da možete koristiti podatke iz tablice vrijednosti kao izvor podataka za izvješće u LCD-u i to to nije u potpunosti teško. Ovaj članak će pokazati stvaranje takvog izvješća za konvencionalne oblike.
Kako stvoriti CC izvješće pomoću podataka iz tablice vrijednosti? O svemu.
Prije svega, otvorite konfigurator i stvorite novo vanjsko izvješće.

Otvorite modul objekta i stvorite unaprijed određenu proceduru za prekomponodnost (rezultat dokumenta, pohranu podataka, standardni rad)

Unutar ovog postupka prikupljamo podatke i formiramo izvješće.
U postupku precomproceptrata isključujemo standardnu \u200b\u200bobradu. Standardni rad \u003d false;
Zatim nasumično oblikuju tablicu vrijednosti. Imena govornika tablice vrijednosti moraju se podudarati s budućim poljima skupa podataka u SCD:


Na primjer, dodajte tri podatkovne linije. Zatim, na koracima stvorite izlaz izvješća.

  • Iz sheme dobivamo zadane postavke.

  • U odgovarajućoj varijabli šaljemo podatke o dekodiranju.

  • Mi oblikujemo izgled pomoću izgleda rasporeda.

  • Prijenos rasporeda rasporeda na raspored, postavke i dešifriranje podataka.

  • Izrađujemo izgled pomoću procesora izgleda. Da biste to učinili, obavljamo metodu inicijalizacije podataka o rasporedu procesora (). Kao parametri, prenosimo raspored rasporeda podataka, vanjske skupove podataka (vrsta: strukturu, ključ ključ mora odgovarati nazivu objekta u krugu rasporeda podataka, vrijednost je formirana tablica vrijednosti), podatke o dešifrizu.

  • Očistite polje tabularnog dokumenta.

  • Prikaz rezultata u tabličnom dokumentu.
Kao rezultat toga, dobiva se sljedeći kod:
Schemacksprinky \u003d primanje ( "HeaviceshemaComponderen"); // Settings \u003d shemescomponicIda. // - Ako to učinite kao što je prikazano gore (preporučeno na nekim resursima), kada promijenite postavke u klijentskom načinu // te promjene nećete vidjeti, jer će se postavke uvijek biti zadane. Koliko ispravno - opcija ispod Postavke \u003d postavke mape. Dobivanje (); Inspectionshoflings \u003d nova intelekcijaciprunctionsced; Kompleks kompleksa s preklopom; MockupsComponovka \u003d mapa stroj. Obavljati (schemEcompnee, postavke, pomirnici); Vanjska označena \u003d nova struktura ( "Dodatne konvencije", TZ je napisao); ProcesorComponovydany \u003d novi procesorCompon Procesorkomidiran. Inicijalizirati (mock-upcompons, vanjski određeni, politici); Dokumentarnost. Čisto (); Oprema procesora \u003d novi procesor-in-line rezultati Commonthhelblocks CPU. Installertocument (rezultate dokumenta); CPU. Povlačenje (kompleks procesora); Dodajte raspored izgleda izgleda. Naziv se može ostaviti prema zadanim postavkama.

Napravite skup podataka. Da biste to učinili, dodajte novi skup vrste podataka. U ime objekta koji sadrži podatke sadrži ime koje smo istaknuli kao ključ prilikom stvaranja dodatne naplaćene strukture. Zatim dodajte polje. Imena moraju točno uskladiti imena stupaca u tablici vrijednosti. Zatim možemo odrediti važeće vrijednosti, formate itd.

Dodajte resurse ako je potrebno. Oni će se smatrati rezultatima. U našem slučaju, to su polja količina i iznos.

U kartici Postavke pomoću dizajnera postavki, oblikujte zadanu verziju izvješća

Spašavamo naše izvješće. Pokrenite ga u klijentu i oblikuju. Primjer izvršavanja CC izvješća pomoću podataka iz tablice vrijednosti prikazan je na slici.


To je sve. Dosta, nije li to istina?

Dobiveno izvješće na primjer može se preuzeti

41
Nedavno je učinio izvješće s neizvjesnim brojem stupaca. Nekovršeno je zabrljati s kodom, odlučio sam učiniti na CCD-u. Ovaj problem nije nastao, bilo je potrebno povući rezultat na proizvoljnom rasporedu (moj zaglavlje + ... 27
Unatoč činjenici da se studije CCD-a sastaju s ovim na prvom ili drugom danu, to bi trebalo biti u odjeljku FAQ-a. Jednostavan primjer izlaznog programa na rasporedu pomoću zadanih postavki. // dobiti shemu iz ... 18
Prilikom generiranja izvješća na zadani CCD, sve skupine su raspoređene, ali se događa odmah nakon formiranja prikaza izvješća s minimiziranim grupacijama! Ovaj kod u modulu izvješća omogućuje vam roll ... 10
Na ovoj knjižnoj oznaci možete odrediti koje su veze napravljene između dva i više skupova podataka, pomoću kojih parametara i uvjeta ..PNG 1. "Komunikacijski izvor" - označava prvi skup podataka, od ... 9
Kada se u razvoju izvješća mora imati korisnika s ograničenim pravima, izvješće je u potpunosti formirano bez provjere prava! Posebno ako je CLS konfiguriran, postoji nekoliko načina za učiniti: 1. Instalirajte ...

Prilikom otvaranja novih grana tvrtke, izračunati teret na poslužitelju 1c: poduzeća i druge zadatke, bit će potrebno vidjeti dinamiku rada korisnika u informacijskoj bazi u obliku grafikona.

Dynamics treba prikazati u odabranom razdoblju korisnika. Kao prikazani podaci bit će broj radnji o tim korisnicima u kontekstu sata. Informacije za takvo izvješće mogu se dobiti iz prijavnog dnevnika.

Razmislite o fazno stvaranje sličnog izvješća i uz pomoć vanjskog skupa podataka, izgradit ćemo ga na sustavu rasporeda podataka.

Pročitajte dnevnik registracije

I tako ćemo izgraditi izvješće na CCD-u. Nećemo primati podatke pomoću upita iz baze podataka i iz registracijskog dnevnika. Metoda pohranjivanja dnevnika registracije platforme napisao je u prethodnom članku.

U skladu s navedenim razdobljem, u izvješću moramo dobiti sve akcije korisnika o podacima o informacijama podataka. Rezultirajuća tablica je grupirana na korisniku i izlaz u obliku grafikona (vidi screenshot iznad).

Za informacije iz dnevnika registracije koristit ćemo globalnu metodu konteksta metoda "istovarna ()". U slučaju "prevrci" događaja izrađenog izvješća, dodajte sljedeći programski kod:

Postupak precipaka (rezultat dokumenta, pohranu podataka, standardni rad) standard \u003d lažno; // Odvojite standardni izlaz izvješća - prikazat ćemo softver // dobiti izvješće o zemljištu, uklj. razdoblje Postavke \u003d postavke mape. Dobivanje (); // dobiti postavke izvješća Parametrioid \u003d postavke mape. Prijem (). Obojena. Elementi. Pronađite ("razdoblje"). Vrijednost; Zhortab \u003d nove tablice; Preuzimanje \u003d nova struktura; // stvoriti strukturu odabira registra // popunite selekciju uz razdoblje Cijeđenje. Umetnite ("podaci", parametrirani); Cijeđenje. Umetnite ("podaci", parametrioid. Podatkovni podaci); // postavite odabir za događaje Oružje \u003d novi niz; Masigevati. Dodajte ("_ $ podaci $ _ , Izbrisati., Novi"); Masivacije. Dodaj (" _ $ podaci $ _ , Post."); Masivacije. Dodaj (" _ $ podaci $ _ , Ukupni brodovi."); Masivacije. Dodaj (" _ $ podaci $ _ , Napad."); Masivacije. Dodaj (" _ $ podaci $ _ , Ažuriranje."); Povlačenje. Paste (" događaj ", masivaci); // istovarite dnevnik registracije Iskrcano (Zrag, ruke); // Stvaranje i popunjavanje podataka za izlaz u izvješće Jostab. Stupci. Dodajte ("vrijeme"); Jostab. Stupci. Dodati (" Brojevi"); Za svaku stranicu jostab ciklusa p. Vrijeme \u003d sat (str. Datum); broj količina \u003d 1; kraj endcycle; // Grupni rezultati Jostab. Kolaps (" Vrijeme" , " Brojevi" ) ; // ..............

Prvi parametar metode "agencije za istovar" postavlja tablicu vrijednosti u koje će rezultat uzorka biti iskrcani iz registracijskog dnevnika. Drugi parametar postavlja filtar na odabrane unose. Filtre je struktura, ključevi u kojima su polja za koju se uspostavlja odabir. Koristimo polja "podataka" i "podataka" za instalaciju razdoblja analize registracije, kao i polje događanja, u kojem prenosimo niz žica (imena događaja). Događaj dodani događaj odgovara podacima o podacima u bazi podataka.

Možete pročitati više o korištenju metode "istovar upload" u asistentskoj sintaksi.

Prenosimo tablicu vrijednosti u SCD

Da bi CCD radio s primljenom tablicom vrijednosti, morate učiniti sljedeće:

1) Stvorite skup podataka u shemi izgleda i postavite njegova polja.
2) U softveru softvera "pregovori" modula "za registraciju prijenosa vrijednosti vrijednosti na CD-u.

// Grupni rezultati Jostab. Kolaps (" Vrijeme" , " Brojevi"); Insoitoricing ventili \u003d nova vlasnička dodatna oprema; // stvoriti podatke o dešifriranju Kompleks kompleksa s preklopom; // stvoriti raspored izgleda // inicijalizirati raspored izgleda pomoću sklopa rasporeda podataka // i prethodno stvorene postavke i dešifriranje podataka Schemacksprinky \u003d primanje: Osnovni ashamcomponovkin"); MockTackComponovka \u003d paket mape. Izvršite (schematicpone, postavke, pohrana podataka); // Scompi rezultat ProcesorCompononka \u003d nove komponente procesora; ProcesorComponovka. Inicijalizirati (mock-jedan, // !!! Mi prelazimo tablicu "Zhortab" do obrađivača izgleda !!! Nova struktura (" Lov", Žarab), pomirnici); rezultati dokumenta. Jasno (); // Prikaz rezultata u tabličnom dokumentu Oprema procesora \u003d novi procesor-in-line rezultati Commonthhelblocks CPU. Installertocument (rezultate dokumenta); CPU. Izlaz (pumpa za procesor); Ekstrudered

3) Prilagodite resurse i strukturu izvješća (pogledajte više pojedinosti u datoteci izvješća, veza na koju se daje na kraju članka).

Ova postavke izvješća dovršena i možemo je pokrenuti u načinu poduzeća.

Ishod

Vanjski izvor podataka u CCC podložan je korištenju u izvješćima podataka iz gotovo svih izvora, slijedeći one podatke koje ne možemo dobiti zahtjeve.

Korištenje SCD-a za takve izvore omogućuje stvaranje izvješća s fleksibilnim sustavom postavki, a također omogućuje korisniku da promijeni izlaz iz izvješća, njegovu strukturu. Sve mogućnosti sustava rasporeda podataka bit će uključene za takve izvore u cijelosti.

Preuzmite izvješće iz primjera koji možete prema sljedećoj vezi.