Applicazioni prima di lavorare con agenti gerarchici. L'operatore "nella gerarchia" nella voce 1s viene scritto nella gerarchia dell'elenco

Golovna / Zakhista

Vogliamo discutere di tutto con te funzioni del film 1s, così come costruzioni di query di film. Qual è la funzione del disegno? La funzione si attiva con i bracci ed i loro eventuali parametri, e il disegno viene scritto senza i bracci. Pazzo tutti i design e le funzioni delle query mov 1c rallentare il processo di acquisizione di dati flessibili e altamente funzionali. Queste funzioni e questi progetti sono completamente alimentati e anche le funzioni sono completamente alimentate.

Funzioni dei film 1s

Frammenti di una saggia descrizione Funzione film 1c Se ne è parlato molto prima, sotto la descrizione del design, abbiamo deciso di iniziare a considerare le funzioni stesse. Ora diamo uno sguardo più da vicino, descrivendone il significato, la sintassi e l'applicazione, e così via:

1. Funzione DATA ORA- Questa funzione crea un campo costante del tipo “Data”.

Sintassi: DATA ORA(<Год>,<Месяц>,<День>,<Час>,<Минута>,<Секунда>)

Calcio del Vikoristan:

2. Varietà di funzioni- Ruota la differenza di due date in una dimensione (giorno, mese, giorno, anno, anno, secondo). Il valore viene trasferito al parametro.

Sintassi: DATA REALIZZATO(<Дата1>, <Дата2>, <Тип>)

Calcio del Vikoristan:

Richiesta.Testo = "VIBRATI | REZNESTDAT(DATETIME(2015, 4, 17), DATETIME(2015, 2, 1), GIORNO) | YAK Kolvodniv";

3. funzione VALORE- specifica un campo costante con un record prevalore da database, è anche possibile eliminare un messaggio vuoto di qualsiasi tipo.

Sintassi: VALORE(<Имя>)

Calcio del Vikoristan:

Request.Text = "VIBRATI //zoom elemento | VALUE(Dovidnik.Currency.Dolar) YAK Dollaro, //messaggio vuoto | Physioba) YAK PhysOblichya, / / ​​zoom rahunok |

4. Funzione VIBIR- Abbiamo davanti a noi un analogo del disegno che viene corretto nel codice, proprio come viene corretto nelle query 1C.

Sintassi: VIBIR KOLI<Выражение>TODI<Выражение>Altrimenti<Выражение>KINETS

Calcio del Vikoristan:

Request.Text = //se l'importo è superiore a 7500, potrebbe esserci una riduzione di 300 rubli, //quindi viene utilizzata la funzione //cambia l'importo - 300 //allo stesso modo, scrivi semplicemente l'importo " VIBRATI |. VIBIR |. QUANDO PM nya.Suma > 7500 |. TODI TCHNadkhodzhennya.Suma - 300 |

5. Funzione VIRASITI- permette di esprimere un campo costante con un tipo di canzone.

Sintassi: VIRAZITY(Nome campo YA Nome tipo)

Calcio del Vikoristan:

Richiesta.Testo = "VIBRATI RIZNI | Vendite.Registrar.Number, | VIBIR | KOLI Vendite.Registrar POSILANNYA Document.Vidatkova | implementazione | TODI VIRAZITI (Vendite.Registrar YAK Document.Implementazione) | KINETS | ... | KINETS YAK Room | Z |. Registro degli acquisti YAK Acquistato";

Un'altra opzione è utilizzare la funzione VARIATE nei campi di tipo misto, dove si avvicinano? L'esempio più semplice è il “Registrar” per qualsiasi registro. Quindi potrebbe essere necessario verificare il tipo con il registrar? Diamo un'occhiata alla situazione, se selezioniamo dal registrar il campo "Numero", da quale tabella verrà inserito il numero? La risposta corretta è di tutti! Pertanto, per poter eseguire la procedura, dobbiamo specificare un tipo esplicito per la funzione aggiuntiva di VIRASITI

Calcio del Vikoristan:

Req.Text = "VIBRATI | VIRASITI(Nomenclature.Commentary YAK Row(300)) YAK Commentary, | VIRASITI(Nomenclature.Sum YAK Number(15,2)) YAK Sum |Z | Dovidnik.Nomenclature YAK

6. Funzione VAL.NULL(in alternativa scritto NULL) - se il campo è di tipo NULL, viene sostituito da un altro parametro di funzione.

Sintassi: Ä NULL (<Поле>, <ПодставляемоеЗначение>)

Calcio del Vikoristan:

È anche importante che il tipo NULL venga sostituito PRIMA come valore, perché Equiparare il tipo NULL porta sempre a delle sciocchezze perché equipara NULL a NULL. Molto spesso, i valori NULL vengono aggiunti alla tabella di join (tutti i tipi vengono uniti tranne quello interno).

Query.Text = //Seleziona l'intera nomenclatura e il surplus in base ad essa //se c'è un surplus in qualsiasi nomenclatura non ci sarà alcun campo, quindi il campo //NULL verrà sostituito con i valori 0 "SELECT | Nom.Posylannya, |. Zalishok |Z |Dovdnik.Nomenclature YAK Nom |Live Z'ednannya RegisterAccumulation.ProductsInWarehouses.Suspended YAK ProductsInWarehousesZalishki |PZ (ProductsInWarehousesZalishki.Nomenclature = Nom.Posilannya)";

7. Funzione di RAPPRESENTAZIONE- Ti permette di inserire i campi indicati quando richiesto.

Sintassi: RAPPRESENTANTE(<НаименованиеПоля>)

Calcio del Vikoristan:

Query.Text = "VIBRATI | RAPPRESENTAZIONE(Viln_ZalishkiZalishki.Nomenclature) Nomenclatura YAK, | RAPPRESENTAZIONE(Viln_ZalishkiZalishki.Warehouse) Magazzino YAK, |

Disegni per il primo movimento

Soprattutto ti abbiamo guardato funzioni del film 1s, ora è giunto il momento di dare un'occhiata disegni per mov zapitiv 1s, la puzza non è meno importante delle radici, cominciamo.

1. Design POSILANNYA- è un operatore logico per verificare il tipo di messaggio. Molto spesso ciò si verifica quando si controlla il campo di un tipo piegato per un tipo specifico. Sintassi: POSILANNYA<Имя таблицы>

Calcio del Vikoristan:

Query.Text = //poiché il tipo di valore del registrar è il documento di Pributkov, //allora verrà compilato con "Disponibilità prodotto", ovvero "Vendite prodotto" "VIBRATI | VIBIR | KOLI Zalishki.Registrar POSILANNYA Document." "Vitrata"" | KINETS YAK ruhu | Z | Accumulazione dei registri.

2. Design МІж- Questo operatore controlla e inserisce i valori delle indicazioni di range.

Sintassi: MIZH<Выражение>І<Выражение>

Calcio del Vikoristan:

Request.Text = //rimuove tutta la nomenclatura, il cui codice è compreso tra 1 e 100 "VIBRATI | Nomenclature. Posilannya | Z | Dovidnik. Nomenclature YAK Nomenclature | DE | Nomenclature.

3. Design B e B ІЄARCHY- verificare se i valori sono presenti nell'elenco che viene trasferito (poiché array, tabelle di valori, ecc. possono essere trasferiti nell'elenco). L'operatore B ІЄARCHY ti consente di visualizzare la gerarchia (esempio del Vikoristan Plan Rakhunkiv).

Sintassi: IN(<СписокЗначений>), IN ІЄARCHІЇ(<СписокЗначений>)

Calcio del Vikoristan:

Request.Text = // seleziona tutto subrahunki rakhunkovy "VIBRATI | Gosprozrakhunkovy. Posilannya YAK Rakhunok | Z | Plan Rakhunok. Gosprozrakhunkovy YAK Khozrozrakhunkovy | DE | Gosprozrakhunkovy.

4. COSTRUZIONE IN PARTICOLARE- Questa funzione ci permette di ruotare una riga da un modello di riga.

Sintassi: SUPERBILMENTE"<ТекстШаблона>"

Opzioni del modello di riga:

% - Sequenza che può essere riempita con il maggior numero possibile di simboli.

È sufficiente un simbolo.

[...] - sia esso un singolo simbolo, o una sequenza di simboli dai bracci quadrati situati al centro. La riorganizzazione può essere impostata su intervalli, ad esempio a-z, che significa l'ultimo carattere che precede l'intervallo, comprese le estremità dell'intervallo.

[^...] - un singolo simbolo o una sequenza di simboli dall'elenco al centro dei bracci quadrati, nonché quelli elencati dietro il segno della croce.

Calcio del Vikoristan:

Request.Text = //conosciamo tutta la nomenclatura su come posizionare la radice TABUR e inizia //con una lettera piccola o grande "VIBRATI | Nomenclatura. Posilannya | Z | Nomenclatura YAK Nomenclatura | DE | Prodotti. Nomenclatura SIMILI "" [Tt ]abur%""";

5. Progettazione CONSENTITA- Questo operatore ti consente di selezionare i record dal database in cui hai il diritto di leggere. Questi diritti non possono essere modificati a livello di record (RLS).

Sintassi: È CONSENTITO che venga scritto dopo la parola chiave VIBRATE

Calcio del Vikoristan:

Request.Text = "VIBRATI PERMISSION | Controparte.Posilannya |Z | Dovidnik.Counterparty YAK Controparte";

6. Costruzione- consente di selezionare le voci che hanno voci ripetute quotidianamente.

Sintassi: ІЗНІ viene scritto dopo la parola chiave VIBRATE

Calcio del Vikoristan:

Request.Text = // seleziona i record per i quali ha i diritti il ​​lettore "VIBRATIYIZNI | Controparti. Nome | Z | Consulente. Controparti YAK Controparti";

Inoltre, la costruzione del RIZNI può essere paragonata all'operatore CONSENTITO e ad altri operatori.

Calcio del Vikoristan:

Request.Text = // seleziona diversi record per i quali ha i diritti il ​​lettore "SELECT PERMISSIONS | Controparti. Nome | Z | Avvocato. Controparti YAK Controparti";

7. Design PERSHI- seleziona il numero di record specificati nel parametro dal risultato della query.

Sintassi: PERSHI<число>

Calcio del Vikoristan:

Richiesta Testo = // Seleziona i primi 4 numeri del VMD dal documento "VIBRAZIONE DEI PRIMI 4 | Numeri del VMD. Posilannya | Z | Il documento.

8. Progettare per il cambiamento- permette di bloccare una tabella, cosa che funziona anche nelle transazioni (soprattutto blocco automatico).

Sintassi: PER LA MENTE<НаименованиеТаблицы>

Calcio del Vikoristan:

Cap.Text = "REVER |

9. Costruzione ORDINA PER- ordina i dati in base al campo di canto. Poiché il campo viene inviato, quindi durante l'installazione del guardiamarina Bagno organizzato automaticamente Se viene inserito il guardiamarina, i messaggi verranno ordinati in base all'anzianità dell'indirizzo postale in memoria.

Sintassi: AL FINE<НаименованиеПоля>Bagno organizzato automaticamente

Calcio del Vikoristan:

Request.Text = "VIBRATI | Vilni Zalishki Zalishki. Nomenclatura YAK Nomenclatura, | Vilni Zalishki Zalishki. CHIVANNYA";

10. Progettazione GRUPPO PER- serve per raggruppare le file dietro i campi di canto. I campi numerici possono essere violati da qualsiasi funzione aggregata.

Sintassi: RAGGRUPPA PER<НаименованиеПоля1>, .... , <НаименованиеПоляN>

Calcio del Vikoristan:

Request.Text = "VIBRATI | GoodsInWarehouses.Nomenclature YAK Nomenclatura, | GoodsInWarehouses.Warehouse, | magazzini.Warehouse";

11. Design MAYUCHI- consente di impostare la funzione aggregata del cervello di raccolta dati, simile al design DDE.

Sintassi: MAYUCHI<агрегатная функция с условием>

Calcio del Vikoristan:

Query.Text = // seleziona i record raggruppati dal campo È evidente più di 3 "VIBRATI | Merci nei magazzini. Nomenclatura YAK Nomenclatura, | Merci nei magazzini. magazzino, | SUM (Merci nei magazzini. | Merci nei magazzini. Nomenclatura, |. Merci nei magazzini |. |MIYUCHI|SUMA(ItemsInWarehouses.InAvailability) > 3" ;

12. Design INDEXUVATI BY- Il campo di ricerca viene utilizzato per l'indicizzazione. La ricerca dei campi indicizzati verrà completata prima dell'indicizzazione. Puoi anche vikorizzare le tabelle virtuali.

Sintassi: INDEXUVATI DA<Поле1, ... , ПолеN>

Calcio del Vikoristan:

Request.Text = "VIBRATI | Tz. Nome del sistema operativo, | Tz. Numero cartella, | Tz. CodeOS, | Tz. Termine, | Tz. Tipo | ENTER Dati Tz | .KodOS";

13. Progettazione DE- permette di influenzare la mente, siano essi i campi di scelta. Di conseguenza, i dischi che soddisfano solo la mente vengono sprecati.

Sintassi: DE<Условие1 ОператорЛогСоединения УсловиеN>

Calcio del Vikoristan:

Request.Text = //seleziona tutte le voci da qualsiasi CompensationExcess<>0 і //AmountForRozchCompRemaining > 100 "VIBRATI | CompensationRRemains.Counterparty, | CompensationRRemains.Ditina, | CompensationRRemains.CompensationZashok, | CompensationRpostach. Statti YAK CompensationRPostacs |DE |Com pensionRPOremains.CompensationExcess<>0| Æ CompensationRPORemains.AmountForRozchCompRemaining > 100" ;

14. Design della borsa... DIETRO LA COPERTURA- il progetto specifica i campi da cui sono interessati i sacchetti e le funzioni aggregate impostate sui campi dei sacchetti. Quando non sono presenti sacche sul campo cutaneo dopo la progettazione della sacca, viene effettuato un raggruppamento di dati. La costruzione discreta della copertura e della struttura garantirà inoltre un ulteriore raggruppamento. Il calcio del risultato verrà lavato e abbassato.

Sintassi: BORSE<АгрегатнаяФункция1, ... , АгрегатнаяФункцияN>P.Z<ОБЩИЕ> <Поле1, ... , ПолеN>

Calcio del Vikoristan:

Request.Text = "VIBRATI | Rozrahunki.Accordo con la controparte.Tipo di contratto Tipo YAKDogovir, | Rozrahunki.Accordo con la controparte Trattato YAK, | Rozrahunki.Controparte, |

Il piccolo cerchio circonda i raggruppamenti che sono stati creati durante la ricerca finale, in particolare andando nella sezione BACK e l'altro nel campo Da contratto a controparte in contratto.

Cos'è Dovdnik 1s e perché è necessario? Il consulente salva quindi informazioni mentali e permanenti. Le informazioni potrebbero non cambiare nel frattempo. Ad esempio, l’agente “Nomenklatura” è responsabile dell’eccesso di beni venduti o prodotti. Allo stesso modo, il testimone può vendicarsi delle autorità senza volto, il che descrive l'elemento del testimone.

Se lo prendi per diventare un essere umano, allora ecco un elenco di cambiamenti e non cambiamenti, quindi l'overflow è più adatto a questo scopo.

Dopo aver creato un nuovo documento, inizieremo sicuramente l'immagine.

Diamo un'occhiata a tutti i tuoi segnalibri.

Principale

Qui indicate il nome (identificatore nel database) e il sinonimo (nome del fornitore dell'account). Non è necessario fare un commento che possa spiegare il ruolo di chi parla o descriverne le caratteristiche.

Gerarchia

In questa scheda è possibile regolare la profondità di inserimento degli elementi aggiuntivi. Per scopi aggiuntivi, è possibile separare e perfezionare manualmente le impostazioni in base a determinati criteri. Ad esempio, i prodotti “Shafi” si trovano in un gruppo e i prodotti “Stoli” in un altro. A tempo debito, l'avvocato rappresenterà elenco di elementi. Se metti l'insegna del 2° Difensore Arciarchico, l'elemento skin può essere subordinato a un altro elemento (gruppo). Di seguito sono riportate le opzioni per regolare questo segnalibro e modificare la visualizzazione in modalità utente.

Tipo di gerarchia:

Gerarchia di gruppi di elementi

Con questa opzione gli elementi nidificati possono essere contenuti solo in gruppi (cartelle).

Qui, come puoi vedere, tutti gli elementi di quel gruppo hanno nuove icone e qualsiasi elemento può avere un contributo.

Posiziona i gruppi sulla bestia

Quando viene stabilita questa proporzione i gruppi saranno sempre in ordine, altrimenti verranno riorganizzati secondo un ordinamento, ad esempio:

Scambio di più eguali della gerarchia

Poiché qui non c'è alcuna insegna, il contributo non viene scambiato.

Una volta installato il guardiamarina, il numero di gradi può essere indicato di seguito.

Vlasniki

Disponibile Vlasniki Altri agenti possono essere nominati interamente, fino a determinati scopi. Lo schema delle posizioni dei consiglieri leggeri è simile allo schema delle posizioni di un consigliere gerarchico, solo qui, come padre, appare un altro consigliere ed è chiamato leader. Nelle configurazioni tipiche, una buona idea è quella di subordinare l’agente “Accordo” all’agente “Controparti”, perché Non è possibile stipulare un accordo che non sia vincolante per alcuna controparte.

Il campo "Elenco delle autorità di un advisor" indica un elenco di advisor che contengono elementi di questo advisor.

Di seguito nel campo “Ordine di ordinazione” è indicato come verranno ordinati gli elementi di questa guida.

Come riconoscere un agente programmatico gerarchico o meno

Perché hai bisogno di andare ai metadati?

CeІєерхічныйАвідній \u003d Metadata.Авідні.ттттттѲєrarchіchny;

Continua a seguire...

Dovdniki 1C è un oggetto specializzato nell'albero dei metadati che serve a salvare informazioni statiche di natura dovdnik. Ad esempio, nelle configurazioni tipiche è possibile visualizzare le seguenti tipologie: , nomenclatura, apparecchiature, caratteristiche principali, ecc. Le informazioni fornite dai consulenti non cambieranno. Gli investigatori hanno iniziato a indagare praticamente su tutti gli oggetti presenti nella zona a seguito delle prove e delle informazioni sulle prove.

Di seguito esamineremo la regolazione e il design dell'appendice dal configuratore sull'applicazione dell'appendice “Nomenclatura”.

Scheda Nozioni di base

Nella scheda “Nozioni di base” sono indicati il ​​nome, il sinonimo, la rappresentazione degli oggetti e la descrizione dello scopo.

Scheda “Gerarchia del medico”

Qui si stabilisce la natura gerarchica del consigliere.

Ci sono due tipi di gerarchia in 1C 8.3 - gruppo di elementi"ta" elementi". Si scopre che il primo tipo può avere una cartella (cartella), mentre l'altro tipo può avere un elemento.

"Disponi i gruppi per la bestia" - il vessillo indica la visualizzazione dei gruppi nel modulo di elenco.

Inoltre, nelle impostazioni, puoi dividere un numero di gruppi nella gerarchia del leader in impostazioni separate.

Scheda "Vlasniki".

Il consigliere può essere subordinato ad un altro consigliere. Dall'aspetto della configurazione di 1C 8.3, i puntelli “Vlasnik” diventano un elemento semplice. Un esempio di tale connessione di fornitori nelle configurazioni standard “Nomenclatura - Unità di variazione”, “Controparti - Contratti di controparti”.

L'autore del documento può essere i seguenti oggetti di metadati: , .

Scheda "Omaggio".

Guarda 267 lezioni video da 1C gratuitamente:

La scheda più importante dal punto di vista di un programmatore. Contiene i dettagli dell'agente.

L'Adviser contiene una serie di dettagli standard che non vengono modificati dal programma 1C 8.2, un elenco degli stessi può essere ottenuto facendo clic sul pulsante “Dettagli standard”:

Approfondirò i dettagli della skin:

  • Gruppo Tse— oggetti di scena di tipo booleano, che mostrano il gruppo e l'elemento. Accessibile solo al consigliere gerarchico. Riporta il rispetto I dettagli importanti non possono essere modificati nella modalità 1C: Imprenditorialità.
  • Codice- oggetti di scena, tipo di riga (riga di chiamata). Il numero viene assegnato automaticamente dal sistema. Di norma l'assicurazione si ottiene come (codice frontale +1). Consiglio di utilizzare il tipo di riga stesso, poiché ordinare i valori numerici non sarà così semplice come necessario. Puoi vikoristovat come omaggio all'autore nell'elenco e nei campi di immissione. Di norma, è necessario cercare un elemento di seguito sotto l'ora dell'introduzione. Se devi selezionare il campo Codice, inserisci zero nella parte inferiore della riga.
  • Nome- Puntelli, obbligatori da riempire, di tipo ordinario. La lunghezza massima di una riga è di 150 caratteri. Puoi vikoristovat come inviare un documento nell'elenco e nei campi di immissione. Di norma, è necessario cercare un elemento di seguito sotto l'ora dell'introduzione. Se devi selezionare il campo Nome, inserisci zero nella parte inferiore della riga.
  • Padre- Oggetti di scena che potrebbero essere del tipo di Dovdnik Posilannya.<ИмяТекущегоСправочника>. Accessibile solo al consigliere gerarchico. Indica il grande padre nella gerarchia. Se un elemento o gruppo si trova nella radice dell'Adviser viene indicato il valore Adviser.<ИмяТекущегоСправочника>. Posilannya vuota.
  • Vlasnik- Posilannya sull'elemento-vlasnik dell'elemento flusso (gruppo) del dovdnik. Disponibile solo a un fornitore 1C subordinato.
  • Distintivo di Vidalennya- Oggetti di scena con tipo booleano. Indica che l'icona remota è visualizzata nel sistema. La designazione dell'elemento cancellato è considerata inappropriata per vikoristannya, la protea su quello nuovo potrebbe andare persa per i vecchi documenti.
  • Posilannya- Campo tipo riga. Per i cui dettagli viene salvato un identificatore di oggetto univoco GUID. Quelli nel sistema che sono rappresentati visivamente sotto il nome di “messaggio” sono semplicemente una manifestazione dell’oggetto. Non può essere modificato.
  • Zoomare— un tipo booleano che rappresenta un elemento intelligibile e soprattutto. Non può essere modificato.

La scheda “Dati” indica anche i dati del consulente nel sistema prima della versione 8.2.16, i dati potevano non avere Codice o Nome; Nelle nuove versioni della piattaforma (a partire dalla 8.3), gli invii possono essere descritti in modo indipendente nel modulo manager con l'aiuto della sezione "Elaborazione dell'elaborazione degli invii".

Scheda "Numerazione".

Qui è indicata la regolazione dell'agente per la numerazione. Si consiglia di utilizzare la numerazione automatica stessa. Il controllo dell'unicità è una regola che aiuta se è necessario creare un codice univoco. Se provi a registrare un elemento identificativo con un codice non univoco, vedrai la notifica “Il codice identificativo è diventato non univoco” in 1C.

Una serie di codici indica come numerare il consigliere, è possibile inserire la numerazione del consigliere nel contesto del leader. Ad esempio, la controparte “Rogi i Kopita” ha una propria numerazione degli accordi: “1, 2, 3” o giù di lì.

Scheda Moduli

Le forme del testimone sono qui descritte. Se la configurazione viene avviata sia in modalità base che in modalità avanzata, saranno presenti due schede con moduli dietro: "principale" e "aggiuntivo" - per i programmi base e rafforzato.

Da questo lato è importante l'autorità del testimone - “”. Questa è una funzione molto manuale di 1C 8, che ti consente, durante la compilazione dei dati nel campo di immissione, di non andare all'editor, ma di digitare il tuo nome, codice, ecc. e seleziona l'elemento richiesto dall'elenco. Sembra questo:

Scheda "Altro"

Nella scheda puoi accedere rapidamente ai moduli principali del browser: il modulo oggetto e il modulo gestore.

Nella pagina puoi anche trovare un elenco degli elementi importanti del browser. Elementi che non possono essere rimossi dal regime dell’imprenditorialità. Puoi accedere direttamente dal configuratore a tutti gli elementi necessari, per nome, ad esempio: Autorità.Nomenclatura.Servizio.

Questa scheda indica anche la modalità di blocco: automatica o di blocco. La ricerca per la ricerca full-text, nonché informazioni aggiuntive sul consulente, è disponibile nella modalità 1C: Enterprises.

Il design "IN HIERARCHY" nelle query 1C:Enterprise 8.x consente di selezionare elementi ordinati di un oggetto di configurazione gerarchica in base a una determinata selezione. Oggi l'articolo esaminerà il suo impatto sulla produttività, così come su altre piattaforme DBMS e il suo impatto sulla produttività.

Vikoristannya

Diamo un'occhiata a un semplice calcio del design vikoristan "IN ІЄARCHІЇ". Prima della fine della campagna in corso, gli elementi ordinati dell'indicatore gerarchico “Merci” verranno rimossi per il valore trasferito della modifica “Posylannya”.

Testo Zapitu = "VIBRATI | Prodotti . Posilannya,| Prodotti . codice venditore |Z| Dovidnik . Prodotti YAK|DE | Prodotti . Posilannya IN ІЄARCHІЇ(& Posilannya)"

Il database dei test contiene i seguenti dati di test:

Naturalmente, nell’immagine non sono mostrati tutti i documenti del testimone. Lo screenshot mostra la struttura di archiviazione dei dati per il consigliere gerarchico. La tabella guida salva 10 gruppi del livello superiore, ognuno di essi contiene 5 gruppi nidificati con 200 elementi ciascuno.

Passiamo alla domanda del test. Il parametro "&Posilannya" viene trasferito al gruppo "Gruppo - 1" (eccellente screenshot sopra). Quindi il risultato della ricerca sarà simile a questo:

Di conseguenza, gira il messaggio al gruppo in alto stesso (passato come parametro) e inserisci le voci del gruppo con i loro elementi. Pertanto, la costruzione vicoristica “In the Hierarchy” consente di rimuovere manualmente i dati ordinati gerarchicamente.

Sintassi delle query mov 1C:Enterprises e SQL classico molto simili in certi momenti. Tuttavia, per l'espressione "B ІЄARARCHY" non esiste un analogo nel linguaggio delle query SQL, poiché, ad esempio, per l'espressione del linguaggio della piattaforma "B" esiste un operatore SQL simile "IN". Ecco perché la piattaforma funziona dal DBMS con la scelta di questo operatore.

Dietro il Lashtunki

Dai, vediamo. Per il calcio di vikorystvatimemo, prima di scrivere, verrà scritto davanti all'autore “Prodotti”. Analizzeremo queste piattaforme per due situazioni:

  1. Poiché il parametro “&Posylannya” viene passato al gruppo di livello superiore “Gruppo 1” (come abbiamo già fatto).
  2. Il parametro viene inviato al gruppo "Gruppo 1 - 1", posto nel gruppo di livello superiore "Gruppo 1".

Ora, in ordine. Nel primo caso la piattaforma contiene le seguenti azioni sul server SQL:

1. L'istruzione SQL verrà ora completata estraendo il messaggio dal gruppo di agenti passato come parametro e da tutti i suoi gruppi subordinati. Il risultato si trova nella tabella oraria "#tt1".

2. In un'altra fase della conversazione, viene completata una nuova domanda:

Lo screenshot contiene commenti dettagliati sul testo della query SQL. In sintesi questo comando permette di selezionare elementi ordinati per i gruppi che compaiono nella tabella oraria. Il cibo sta finendo: “Le ragazze finiranno il loro matrimonio?” Qui la risposta è semplice: il primo passo è togliere i sottoelementi per i gruppi di primo livello, che si trovano già nella tabella oraria (sezione 1). Quindi un'altra query seleziona gli elementi subordinati per i gruppi subordinati di un altro livello. C'è ancora un gruppo di leader al terzo livello della gerarchia, che non sarà più risolto.

Nel nostro caso l'altra richiesta è probabilmente un risultato vuoto, i frammenti dei record che si trovano al 3° livello della gerarchia non hanno elementi subordinati (non esiste lo stesso gruppo lì).

3. Per estrarre il risultato finale della query, la piattaforma forma la seguente query SQL:

Il risultato della query stessa può essere ulteriormente elaborato dagli algoritmi della piattaforma installata. Pertanto, i record nella tabella dell'orologio "#tt1" vengono selezionati allo scopo di installare una selezione dalla tabella degli indicatori "_Reference41".

4. Infine, la piattaforma 1C:Enterprise 8.x cancella la tabella oraria “#tt1”, e di conseguenza non c'è più alcuna vittoria.

A questo punto il processo di visualizzazione dell'operatore “IN ІЄARCHІЇ” è completato. Permettetemi di ricordarvi che abbiamo esaminato la sequenza di azioni sul server SQL di Vikonana, quando abbiamo inviato messaggi lato piattaforma al gruppo di livello superiore “Gruppo - 1”. Come si comporterà la piattaforma quando il parametro “&Posylannya” viene trasferito a un gruppo di un altro livello “Gruppo - 1 - 1”? Tutto sarà in un ordine simile, tranne il momento attuale: soprattutto, in un'altra fase della piattaforma di interrogazione SQL, è stato scritto che verrà utilizzato per rimuovere gli elementi subordinati per i seguenti due "Gruppo - 1 - 1" è non così. Verrà chiesto una sola volta.

A destra si vede che un certo numero di richieste per il contenuto di elementi minori si trovano in un certo numero di gruppi della gerarchia. In altre parole, se un gruppo vuole essere collocato nella stessa gerarchia degli elementi, verrà sconfitto chiedi dal punto 2.

Incremento della produttività

L'uso errato di qualsiasi operatore in una sequenza può portare a prestazioni del sistema non ottimali. Sembra che la colpa non sia dell'operatore “IN ІЄARCHY”. È necessario fare attenzione però perché l'algoritmo per connettere le query SQL al database diventa più complesso e quindi aumenta l'impatto sul server DBMS.

Faccio un esempio di una domanda non ottimale che può portare ai nomi più comuni di queste dubbie eredità:

Prodotti VIBRATI. Posilannya Z Dovidnik. Tovari YAK Tovari DE (Prodotti. Posilannya V ІЄARARCHІЇ (& Posilannya) ABO Tovari. Posilannya V ІЄARARCHІЇ (& Posilannya1) ABO Tovari. Posilannya V ІЄARARCHІЇ (& Posilannya2) )

Come puoi immaginare, ciò porta alla formazione di query SQL impersonali, che causano una diminuzione della produttività del sistema informativo.

Iniziare!

Visnovki robiti tu. Dirò anche che l'operatore “IN ІЄARARCHІЇ” è considerato una piattaforma per un sistema di composizione dei dati, se in mente c'è una selezione di “GRUPPO U”, “GRUPPO U CON LISTA” e altri. Non penso sia facile spiegare che con manipolazioni errate, gli sviluppatori possono installare una selezione molto complessa e spingere più volte la ricerca al server 1C e al DBMS. Modifichiamo le impostazioni solo per i trader esperti.

Esatto, quando scrivi i meccanismi di potere, presta attenzione all'operatore “IN ІЄARCHІЇ”. Molto forte da un lato e distratto dall'altro.

In questa sezione sono state applicate le attività più tipiche quando si lavora con agenti gerarchici.

Separare gli elementi di un consigliere gerarchico da un dato gruppo subordinato

Per rimuovere dalle nostre query gli elementi più leggeri del consigliere gerarchico, il design è stato trasferito a quello gerarchico. Calcio del vikoristannya U ІЄARCHІЇ:


VIBRARE
Nomenclatura.
Nomenclatura.PrezzoAcquisto
Z

In questa applicazione, tutti i record della Nomenclatura che si trovano nel gruppo &Gruppo verranno rimossi, incluso lo stesso, i sottogruppi e gli elementi che appartengono ai sottogruppi.

Se siamo privati ​​di elementi e gruppi direttamente correlati al compito del gruppo, allora possiamo rimuovere tali elementi concentrando la nostra mente sul campo di Batko. Culo:


VIBRARE
Nomenclatura.
Nomenclatura Nome YAK,
Nomenclatura.PrezzoAcquisto
Z
Nomenclatura Dovidnik Nomenclatura YAK

DE
Nomenclatura.Batko = Gruppo

Questo ti chiederà di selezionare i gruppi e gli elementi che si trovano nel gruppo subordinato dal &Gruppo.

Verifica della presenza di elementi subordinati nell'elemento indicatore

Per verificare l'autenticità delle registrazioni subordinate dell'elemento di prova si può utilizzare una query simile a quella presentata:

Nell'applicazione di cui viene inviato l'elemento, per la quale è necessario verificare la presenza di elementi figli, viene registrato nel campo il parametro “Padre”. Dopo questa domanda, è necessario controllare completamente il risultato. Se il risultato non è vuoto, i record vengono ordinati. Altrimenti – no. Culo:


Yakshto Refill.Viconati().Empty()Todi
Report("Non ci sono voci");
Altrimenti
Mostra("Record");
Kinets Yakscho;

Rimozione di tutti gli elementi

I nostri prodotti non dispongono di metodi speciali per rimuovere tutti gli elementi della batteria. Per la viconica, è possibile produrre rapidamente risultati gerarchici, mentre la rimozione dei risultati gerarchici è ottimizzata per produrre risultati da un numero elevato di record e non è molto efficace per rimuovere batch di un singolo elemento. Per una rimozione più efficiente di tutti i record batch di un elemento, si consiglia di ordinare i batch batch in piccole porzioni. Culo:


ExactElementNomenclature = ElementNomenclature;

Zapit = Nuovo Zapit("VIBRATI
| Nomenklatura.Batko,
| Nomenclatura.Batko.Batko,
| Nomenclatura.Batko.Batko.
| Nomenclatura. Padre. Padre. Padre. Padre,
| Nomenclatura.Batki.Batki.Batki.Batki.Batki.

| Nomenclatura Dovidnik Nomenclatura YAK
|DE
| Nomenclature.Posylannya = &CurrentElementNomenclature";

Fino al Ciclo della Verità
Request.InstallParameter("Nomenclatura degli elementi di flusso", Nomenclatura degli elementi di flusso);
Risultato = Query.Viconati();
Yakshto Risultato.Vuoto() Todi
Interrompere;
Kinets Yakscho;
Seleziona = Risultato.
Vibirka.Offensive();
Per ColumnNumber = 0 Per Result.Columns.Quality() - 1 ciclo
ElementoNomenclaturaEsatta = Vibrazione[NumeroColonna];
Interrompere;
Altrimenti
Povidomity(CurrentNomenclatureElement);
Kinets Yakscho;
KinetsCycle;

Yakshto ExactElementNomenclature = Dovidniki.Nomenclature.EmptyPosylannya() Todi
Interrompere;
Kinets Yakscho;
KinetsCycle;

In quale applicazione, nella finestra di notifica del servizio, vengono visualizzati tutti i messaggi relativi al messaggio registrato nella nomenclatura degli elementi di modifica. Ogni ciclo ha 5 batch di messaggi inviati.

Poiché il numero di fonti nell'advisor è limitato e piccolo, è possibile rimuovere tutte le fonti con una query senza ciclo.

La comparsa del consigliere gerarchico nel mondo

Per identificare il consigliere gerarchico dal risparmio della gerarchia è necessario utilizzare una formula simile a quella attuale:


VIBRARE
Nomenclatura.
Nomenclatura Nome YAK,
Nomenclatura.PrezzoAcquisto
Z
Nomenclatura Dovidnik Nomenclatura YAK
AL FINE
Nome: Gerarchia

Questa query seleziona tutti i record dall'editor e crea una gerarchia di ordini. Il risultato sarà l'ordinamento dietro il nome della gerarchia.

Affinché i gruppi dell'oratore si trovino più degli elementi, è necessario in questa frase sostituire la proposizione ORDER BY nel passaggio:


AL FINE
Nomenclatura.CeGroup ІЄARCHYYA,
Nome

Il risultato, come prima, sarà l'ordinamento gerarchico, i gruppi saranno divisi in più elementi.

È anche possibile sostituire la proposizione ORDER BY con la proposizione auto-order. E qui il risultato dell'ordinamento sarà quindi coerente con gli aggiustamenti dell'interprete. Se nel documento si afferma che i gruppi colpevoli saranno pagati di più per gli elementi, allora saranno pagati di più.

È anche possibile creare una struttura gerarchica del consigliere con l'aiuto delle borse.


VIBRARE
Nomenclatura.
Nomenclatura Nome YAK,
Nomenclatura.PrezzoAcquisto

Nomenclatura Z Dovidnik

DE
(Nomenclatura.TseGroup = FALSO)

ORDINA PER Nome

Rimozione dei sacchetti dalla gerarchia

Per rimuovere le buste da una gerarchia, è necessario inserire la parola chiave HIERARCHY nella proposta BAGS dopo aver inserito il campo per il quale verranno allocate le buste. Un esempio di "Nomenclatura Fatturato" con il contenuto dei bagagli della gerarchia:


VIBRARE

Z

Nomenclatura ІЄARCHIA

A seguito di tale richiesta, le borse verranno rilasciate non solo per la categoria skin, ma anche per i gruppi soggetti alla stessa categoria.

Se non abbiamo bisogno di sacchetti per elementi, ma piuttosto di sacchetti in gruppi, dobbiamo utilizzare il design di un TILKA HIARCHY nei sacchetti. Culo:


VIBRARE
Aspetto della nomenclatura Fatturato. Nomenclatura YAK Nomenclatura,
La comparsa della nomenclatura del fatturato. Nomenclatura.
GuardaNomenclaturaFatturato.QualitàFatturato YAKKilkistityFatturato
Z
Accumulo di registri. L'aspetto della nomenclatura.
BORSE BORSA(KilkistObig)
Nomenclatura TILKI ІIRARCHIA

Come risultato di questa query, saranno presenti sottorecord senza gruppi di nomenclatura.

© 2024 androidas.ru - Tutto su Android