Na žádost data dokumentu. Funkce obdržení vydání nejnovějších záznamů v informačním registru Získejte cenu na Datum dokumentu na vyžádání

/
Provádění zpracování dat

Řešení výsledků pro pravidelné registry informací

Rozsah: řízená aplikace, mobilní aplikace, normální aplikace.

1.1. Pro periodické informační registry se doporučuje vyřešit výsledky, pokud jsou splněny všechny následující podmínky:

  • v rejstříku se očekává velké množství údajů (například odůvodněná za rejstřík s cenou nomenklatury; ale nedává smysl se zaregistrovat s měnovými kurzy);
  • konfigurace poskytuje požadavky na četnost na sekce naposledy a / nebo do sekcí první, aby získaly aktuální data (tj. Po období není uvedeno v parametrech virtuálních tabulek Spáta Krájení);
  • zdá zbývající podmínky pro virtuální tabulky Spát a Krájení jsou specifikovány pouze na hodnotách měření (a separátory v režimu Samostatně a společně);
  • v omezeních přístupu k datům se používají pouze měření (a rozdělovače v režimu Samostatně a společně).

Kompletní seznam všech podmínek, kdy jsou výsledky informačního registru zapojeny do dotazů, vizdokumentace pro platformu 1C: Enterprise.

Například, pokud jsou v konfiguraci poskytnuty požadavky na registraci CenaNactore. Získat současné ceny nomenklatury:

Vyberte nomenklaturu. Článek jako článek, cena zájmu. Cena jako cena ,. . . Z adresáře. Nomenklatura jako nomenklatura Levá spojení registru. CENYNET. Kroužení-trvající (, Viditiones \u003d & Videna) jako ceny Cenová záležitost. Nomenklatura \u003d nomenklatura. Odkaz. . .

které jsou předmětem všech ostatních podmínek uvedených výše, nastavení nemovitosti Povolit výsledky: Cut Poslední Výrazně urychluje provádění takových požadavků, počítá se, že vzorek bude proveden přímo z dalších tabulek, ve kterých jsou uloženy pouze poslední hodnoty (pro nedávné řezu) a první hodnoty (pro první části prvního) ).

1.2. Kromě toho by měly být zváženy alternativní možnosti pro revizi žádostí o registraci takovým způsobem, že tyto podmínky jsou provedeny.

Například, pokud v některých případech data v registru CenaNactore. Zaznamenávány budoucím datem a při výběru zboží je vždy dotaz na aktuální datum (datum je jasně nastaveno v parametru virtuální tabulky Krájení) Výsledky nebudou urychlit realizaci těchto požadavků. Vzhledem k tomu, že výsledky jsou postaveny pouze pro první a poslední záznamy registru.

Nicméně, pokud když otevřete formulář výběru zboží, analyzujte, zda existují registrátory s budoucí datum, a pokud ne - provádět další požadavek na poslední výpis do posledního výřezu, aniž byste museli instalovat datum, pak takový požadavek bude rychlejší.

2. Ve všech ostatních případech by neměl být vyřešen pro pravidelné informace o informacích. Nejprve, pokud

  • nejčastěji (vždy) do virtuálních tabulek částí prvního / posledního periodického informačního registru, dotazy jsou prováděny pro určité období (například na datum dokumentu).
  • v podmínkách pro virtuální tabulky Spát a Krájení Nejčastěji (vždy) používá poddechy a připojení (cirkulace "přes bod" do oblastí přidružených tabulek). Například v tomto případě:

3. Není nutné poskytnout v konfiguraci samostatného mechanismu pro přepočet výsledků, protože aktualizace výsledků tabulek se provádí automaticky s každým záznamem záznamů v registru.

: Spát a Krájení Zvažte práci s těmito virtuálními tabulkami pomocí 1C. Mnohem častěji aplikován Krájení, Takže s ním a začněme.

Vybrání této nabídky vám umožní získat nejnovější záznam o informačním registru do zadaného data v kontextu měření. Pro řezací stůl posledního (prvního) existuje příležitost v závorkách specifikovat dva parametry přes čárku. V prvním parametru se datum vysílá, ke kterému je řezu vytvořen (pokud parametr nevyjadřuje řezu, je proveden na aktuální datum). Druhý parametr představuje podmínku v jazyce 1C dotazu a umožňuje instalaci různých výběrů. Měření se zpravidla používají v těchto seborářích. To vše zní dost mlhavé, takže bez příkladu nemůžete udělat.
Takže máme periodický registr informací Cena ve kterých jsou ceny uloženy v kontextu zboží a dodavatelů. Frekvence registru je den.

Registr má následující položky

Chcete-li začít, dostaneme střih druhé, aniž byste používali parametry, podle tohoto požadavku.

Vyberte si cenu odevzdaneckého období. Období jako období, cenyRext. Sungwar jako produkt, cenou PricerexTrighted. Seznam je jako dodavatel, cena odevzdání. Shrnutí jako součet registru. Cena. Preventivní jako cena Částí.

Vzhledem k tomu, že parametry nejsou zadány, se řez provádí na aktuálním datu - 01.02.2017. V důsledku toho dostaneme tuto tabulku

Zde vidíme, že kombinace měřicího zboží + dodavatel je jedinečná, tj. Pro každou kombinaci měření registru byl proveden záznam s maximálním datem a datum záznamu je menší nebo rovno aktuálnímu datu.

Předpokládejme, že musíme udělat totéž, ale záznamy, které chceme dostat s datem menšími nebo rovnými 15. lednem 2017. Chcete-li to provést, musíte změnit řetězec v dotazu s nedávnou řezanou tabulkou následujícím způsobem.

Z registrace. Cena. Preventivní (& tanečnice) jako cena transvestu

Před provedením požadavku je jistě nutné přenos parametru. & Dataseca.. Nyní bude vypadat výsledek dotazu

A nakonec si představte, že musíme snížit řez na stejné datum s podmínkou, že máme zboží Tužkaa dodavatel Papírnictví. Chcete-li to provést, zadejte druhý parametr v dotazu.

Z registrace. Cena. Preventivní (& tanečnice, produkt \u003d a zboží a dodavatele) jako Pricerext

V důsledku toho dostaneme pouze jeden záznam

Aby se nezmatil ve všech těchto závorkách a čárkách, je lepší použít návrhář žádosti. Ukážu vám příklad posledního dotazu.

Po výběru v designéru tabulky dotazu s řezem tohoto tlačítka musíte kliknout na tlačítko Nastavení virtuální tabulky a v okně, které se otevře zaregistrovat

Není těžké odhadnout, že pro řezání prvního principu akce je stejný s výjimkou, že první záznam je vybrán po datu řezání.

Pro pravidelné informace jsou k dispozici dvě virtuální tabulky: Spát a Krájení Zvažte práci s těmito virtuálními tabulkami pomocí požadavků 1C. Mnohem častěji aplikován Krájení, Takže s ním a začněme.

Vybrání této nabídky vám umožní získat nejnovější záznam o informačním registru do zadaného data v kontextu měření. Pro řezací stůl posledního (prvního) existuje příležitost v závorkách specifikovat dva parametry přes čárku. V prvním parametru se datum vysílá, ke kterému je řezu vytvořen (pokud parametr nevyjadřuje řezu, je proveden na aktuální datum). Druhý parametr představuje podmínku v jazyce 1C dotazu a umožňuje instalaci různých výběrů. Měření se zpravidla používají v těchto seborářích. To vše zní dost mlhavé, takže bez příkladu nemůžete udělat.

Takže máme periodický registr informací Cena ve kterých jsou ceny uloženy v kontextu zboží a dodavatelů. Frekvence registru je den.

Registr má následující položky

Chcete-li začít, dostaneme střih druhé, aniž byste používali parametry, podle tohoto požadavku.

Vyberte si cenu odevzdání. Období je období, cena posledního. Produkt jako zboží, pricerery-trvající. Dodavatel jako dodavatel, ceny vzkříšení. Částka je jako součet eventencí. Cena. Krouží se za cenu přeložených

Vzhledem k tomu, že parametry nejsou zadány, se řez provádí na aktuálním datu - 01.02.2017. V důsledku toho dostaneme tuto tabulku

Období | Produkt | Dodavatel | Součet

01/25/2017 | Tužka | Ltd. "Lesprot" | patnáct

02/01/2017 | Tužka | PJSC "papírnictví" | 31.

02/01/2017 | Rukojeť | PJSC "papírnictví" | 145.

Zde vidíme, že kombinace měřicího zboží + dodavatel je jedinečná, tj. Pro každou kombinaci měření registru byl proveden záznam s maximálním datem a datum záznamu je menší nebo rovno aktuálnímu datu.

Předpokládejme, že musíme udělat totéž, ale záznamy, které chceme dostat s datem menšími nebo rovnými 15. lednem 2017. Chcete-li to provést, musíte změnit řetězec v dotazu s nedávnou řezanou tabulkou následujícím způsobem.

Z registrace. Cena. Cirkus-trvalý (& amp; tanečnice) jako cena konzervovaných

Před provedením požadavku je jistě nutné přenos parametru. & Dataseca.. Nyní bude vypadat výsledek dotazu

Období | Produkt | Dodavatel | Součet

01.01.2017 | Tužka | Ltd. "Lesprot" | 10.

01.01.2017 | Tužka | PJSC "papírnictví" | 27.

01/03/2017 | Rukojeť | PJSC "papírnictví" | 137.

A nakonec si představte, že musíme snížit řez na stejné datum s podmínkou, že máme zboží Tužkaa dodavatel Papírnictví. Chcete-li to provést, zadejte druhý parametr v dotazu.

Z registrace. Cena. Kroucení-trvalý (& amp; tanečnice, produkt \u003d & amp; výrobek a dodavatele \u003d a dodavatel) jako cena přeložená

V důsledku toho dostaneme pouze jeden záznam

Období | Produkt | Dodavatel | Součet

01.01.2017 | Tužka | PJSC "papírnictví" | 27.

Aby se nezmatil ve všech těchto závorkách a čárkách, je lepší použít návrhář žádosti. Ukážu vám příklad posledního dotazu.
Po výběru v designéru tabulky dotazu s řezem tohoto tlačítka musíte kliknout na tlačítko Nastavení virtuální tabulky a v okně, které se otevře zaregistrovat

Není těžké odhadnout, že pro řezání prvního principu akce je stejný s výjimkou, že první záznam je vybrán po datu řezání.

43
Null - chybějící hodnoty. Nezaměňujte s nulovou hodnotou! Null není číslo, které není rovnocennému prostoru, prázdný odkaz, nedefinovaný. Null - hodnota tvarování typu, tj. Tam je nulový typ a jediný význam tohoto typu. NULA ... 26
Pro vytvoření a provedení dotazů do databázových tabulek v platformě 1C se používá speciální objekt pro programování objektu. Tento objekt je vytvořen voláním nového požadavku. Požadavek je pohodlný ... 18
Článek uvádí užitečné techniky při práci s požadavky 1C V.8.2, stejně jako informace, které nejsou tak dobře známé pro jazyk dotazu. Nesnažím se usilovat o celý popis jazyka žádostí, ale chci se zastavit jen na ... 13
Stejně jako - operátor zkontrolovat řetězec na podobném vzoru. Analogový jako v SQL. Provozovatel, který umožňuje porovnat hodnotu výrazu zadaného vlevo od ní, s řetězcem šablony uvedené vpravo. Hodnota výrazu ...

Někdy potřebujete žádost o získání pravidelných informací o informacích o několik dat okamžitě. Typickým příkladem pracuje s měnovými kurzy. Zvažte algoritmus, abyste tento úkol vyřešil na příkladu.

Formulace problému

V databázi byl vytvořen dokument "Implementace služby" v záhlaví, jehož existuje rekvizity "měna". Žádost je nutná pro každý dokument pro přijetí aktuální měnové sazby ze záhlaví do data dokumentu. Skladování směnných kurzů se provádí v periodickém registru "CARSIVALYUT".
Rozhodnutí "na čele" tohoto problému by mohlo být žádost v cyklu: přijímat všechny dokumenty se svými daty a měnou a ve vzorku odvolání na virtuální tabulku vydání posledního registru "Kurzivalyut". Ale protože Žádost v cyklu je "špatný", zkuste implementovat úkol s jedním požadavkem.

Rozhodnutí

Chcete-li problém vyřešit, použijeme skutečnost, že tabulky jsou v žádosti může být připojen nejen na rovnost polí.

VYBERTE RealizatsiyaTovarovUslug.Ssylka, RealizatsiyaTovarovUslug.Valyuta, MAX (KursyValyut.Period) jako období VTPeriodyUstanovkiKursov uhasit JAK Dokument.RealizatsiyaTovarovUslug RealizatsiyaTovarovUslug nechal vstoupit RegistrSvedeniy.KursyValyut Jak KursyValyut RealizatsiyaTovarovUslug.Valyuta \u003d KursyValyut.Valyuta A RealizatsiyaTovarovUslug.Data\u003e \u003d KursyValyut.Period seskupeny podle implementace služby Link, kterou se provádí v ulicích Svaluta.. ////////////////////////////////////////////// // // ////////////////////////////////////////////////// ////////////////////////////////////// /// // // Select TveriodoresOstorekurs. Link, WTPeriodoresOstrovikurstovs.Valuta, Kursivalyut.KURS z WTPeriodorestorecars v prodejnách nepřehledná zřizovateli levé připojení k registerings. Kashivalyuta jako dobíhající nastavení vaporiodine. Period \u003d coarsevalyut.period a clutterings MountingCurses.Valuta \u003d coarsevalyut.Valuta

Postup v dotazu:

  1. Získání směnný kurz měny pro každý dokument. Dokumenty jsou připojeny k fyzické tabulce "Kurzivalyut". Zde byste měli věnovat pozornost podmínkám připojení. Měny se musí rovnat, a datum dokladu\u003e \u003d doba informačního registru.
    Důsledkem takového spojení, bude možné získat sadu strun, které splňují podmínku pro každý dokument: všechny záznamy v sadě směnného kurzu měny nejpozději ke dni tohoto dokumentu.
    V poslední fázi bude seskupení řetězců, aby se získala maximální doba chodech. V důsledku toho bude pro každý dokument získána požadovaná doba instalace kurzu pro požadovanou měnu (maximální datum instalace směnného kurzu měny, ale ne více než datum dokumentu). Výsledkem je umístěn v dočasné tabulky nepřehledná systémů.
  2. Získání kurz. Dočasná tabulka poplatků je připojena k fyzické tabulce "Krasvalyut". Spojení se vyskytuje v závislosti na měně dokumentu a doba nastavení kurzu definovaného v druhé dočasné tabulky.