LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam

Utilizzando sistemi di composizione dei dati 1C impossibile senza set di dati... Possono essercene diversi in uno schema di composizione dei dati. E possono comunicare tra loro in un certo modo. O meglio, o, o unire... In questo articolo, considereremo combinando set di dati... La combinazione di set di dati in ACS è simile.

Per combinare due o più set di dati nell'ACS, è necessario nella scheda Set di dati pre-creare un set di dati speciale - union


Otteniamo questa foto


E già in questo oggetto creato aggiungiamo set che verranno combinati direttamente. Aggiungiamo due set di dati. Uno dei quali sarà una query e il secondo, tanto per cambiare, è un oggetto (origine dati esterna). Come questo:


Ad esempio, prendi in considerazione l'unione dei set di dati con i saldi dei prodotti.

Nel set in cui useremo, aggiungi manualmente i campi Articolo, quantità e scrivi il nome dell'oggetto contenente i dati


Per un set di dati in cui viene utilizzata una query, riceveremo i dati utilizzando i saldi da questo registro di accumulazione:


Facendo una semplice richiesta

SELEZIONA saldi di merci, prodotti, presentazione come merci, saldi di merci, saldi quantità come saldi (SELEZIONA merci, saldi) dal registro di accumulazione, saldi merci, resti come saldi di merci

Per sbarazzarci dei magazzini, abbiamo dovuto utilizzare la composizione dei dati nella query (tutto tra parentesi graffe) e disabilitare il flag di completamento automatico in basso. Inoltre, non è stato preso come prodotto un elemento del catalogo, ma la sua rappresentazione, in modo che il tipo fosse lo stesso di un set con un'origine dati esterna. Affinché i dati di set diversi rientrino in un campo, devono avere lo stesso nome nel campo Modo... Pertanto, per il campo Avanzi il percorso è stato corretto manualmente in quantitàper sincronizzarlo con il secondo set di dati. In effetti, è meglio, ovviamente, utilizzare immediatamente l'alias desiderato nella richiesta. In questo caso, non l'ho fatto deliberatamente per attirare l'attenzione su tale caratteristica.

Ora passiamo direttamente ai dati
Nel registro di accumulazione ho le seguenti bilance delle merci

e in una fonte di dati esterna questa è l'immagine

Configuriamo lo schema di layout nel modo più primitivo.
Campo quantità Naturalmente, ne faremo una risorsa e nella scheda delle impostazioni, aggiungeremo semplicemente Record dettagliati... E, naturalmente, non dimentichiamoci di mettere Prodotto e quantità nei campi selezionati. E per la completa felicità, organizzeremo per prodotto.


Come risultato dell'esecuzione del report con tali impostazioni ACS, otteniamo la seguente tabella

Come puoi vedere, la lampada, che si trova in entrambi i set di dati, è rappresentata da due linee come risultato della query. Per comprimerli in una riga, è necessario modificare leggermente la struttura nelle impostazioni ACS e, invece di record dettagliati, raggruppare per campo Prodotto.


E ora otteniamo il risultato senza linee duplicate.

In questa scheda puoi creare un numero illimitato di set di dati. Un set di dati è la fonte del recupero dei dati.

Esistono diversi tipi di set di dati:

  • Richiesta;
  • Un oggetto;
  • Unione.

La richiesta è una normale richiesta 1c, solo la lingua della richiesta è leggermente espansa. Per comodità, puoi usare il costruttore di query.

Un oggetto è un set di dati esterno, come una tabella di valori.

L'unione è l'unione di più set di dati di query e tipi di oggetto.

In questo articolo, esamineremo brevemente tutte le schede in Data Composition Schema Designer. Set di dati In questa scheda è possibile creare un numero illimitato di set di dati. Un set di dati è la fonte del recupero dei dati. Esistono diversi tipi di set di dati: Query; Un oggetto; Unione. La richiesta è una normale richiesta 1c, solo la lingua della richiesta è leggermente espansa. Per comodità, puoi usare il costruttore di query. Un oggetto è un set di dati esterno, come una tabella di valori. L'unione è l'unione di più set di dati di query e tipi di oggetto. Relazioni del set di dati Questa scheda descrive le relazioni del set di dati. Qui è possibile specificare quali dataset collegare, in base a quali campi e con quali parametri. La cosa più importante da ricordare è che nello schema di composizione dei dati, il join sinistro viene sempre utilizzato quando si collegano i set! Campi calcolati In questa scheda è possibile creare campi aggiuntivi non descritti nella scheda Set di dati. È possibile utilizzare il linguaggio delle espressioni di composizione dei dati, i campi dei set di dati master e le funzioni di moduli comuni non globali come espressioni per il calcolo. Risorse Le risorse sono un riepilogo dei raggruppamenti. In una scheda è possibile assegnare campi da set di dati e campi calcolati come risorsa. Inoltre, per le risorse, viene indicata l'espressione con cui vengono calcolate ed è possibile indicare il raggruppamento in base al quale verrà calcolata l'espressione per le risorse. I valori delle risorse vengono utilizzati anche per calcolare i totali complessivi del report. Parametri I parametri dei dati vengono generalmente utilizzati in un set di dati di query. Tutti i parametri descritti nella richiesta vengono visualizzati nella scheda Parametri. In questa scheda è possibile specificare il titolo, i tipi disponibili, i valori disponibili e altre cose. Maggiori informazioni sui parametri più avanti. Layout Per impostazione predefinita, il layout del report generato viene generato automaticamente dal sistema di composizione dei dati. Ma il sistema ha anche l'opportunità per lo sviluppatore di progettare personalmente le singole aree del report (campi, raggruppamenti, risorse ...). Tutti i layout delle singole aree create in questa scheda sono collegati solo al report corrente. Schemi nidificati Gli schemi nidificati vengono utilizzati quando i dati di un report devono essere utilizzati in un altro. In altre parole, "incorporiamo" uno schema di composizione dei dati in un altro, indicando una relazione tramite un campo comune. Un esempio di utilizzo di schemi nidificati è disponibile in questo articolo. Impostazioni In questa scheda, lo sviluppatore crea le impostazioni standard per la generazione di un rapporto. Una struttura gerarchica è impostata nella parte superiore della finestra. La struttura della generazione del report può essere costituita dai seguenti elementi: raggruppamento; Tavolo; Diagramma; Schema nidificato Nella parte inferiore della finestra è possibile specificare le impostazioni per l'intero report e per ogni elemento della struttura del report. Brevemente nelle schede delle impostazioni: Campi selezionati - elenco dei campi visualizzati nel rapporto; Selezione: tutti i tipi di selezione di record di report; Ordine: ordinamento dei record nel report; Parametri dei dati: il valore dei parametri del report; Campi personalizzati: campi del rapporto aggiuntivi creati dall'utente; Formattazione condizionale: imposta la formattazione condizionale dei record del report; Altre impostazioni: tutti i tipi di impostazioni aggiuntive come: titolo del report, layout, layout dei campi, ecc.

Attenzione! Questa è una versione introduttiva della lezione, i cui materiali potrebbero essere incompleti.

Accedi come studente

Accedi come studente per accedere ai materiali scolastici

1C 8.3 Sistema di composizione dati per principianti: presentazione di un report sotto forma di diagramma

Oggi integreremo il report dell'ultima lezione (o meglio una sua copia) con la possibilità di visualizzare gli stessi dati sotto forma di diagramma.

Ci siamo posti un obiettivo

  • Fai una copia del rapporto dell'ultima lezione.
  • Visualizza gli stessi dati in un grafico.
  • In questo caso, le serie (colonne, asse Y) dovrebbero essere i prodotti ei punti (asse X) dovrebbero essere i clienti. I valori delle colonne (sull'asse Y) saranno la quantità di cibo che il cliente ha ordinato dati.

Modifica una copia del rapporto precedente

Fai una copia del report dell'ultima lezione con il nome "Lesson9" e aprila nel configuratore del database "Deli".

Modifica il nome del rapporto in "Lezione9" e fai clic sul pulsante "Apri schema di composizione dati":

Non cambieremo i set di dati: il nostro compito è cambiare la loro presentazione per l'utente.

Pertanto, andiamo immediatamente alla scheda "Impostazioni" e attiriamo la nostra attenzione sulla colonna di sinistra con le opzioni del rapporto.

Non abbiamo lavorato prima con questa colonna, ma oggi vi dirò qual è il suo significato.

Tutte le impostazioni che effettuiamo in questa scheda (utilizzando il costruttore della bacchetta magica o manualmente in basso) si riferiscono ad una delle opzioni del report, che è evidenziata nella parte sinistra della finestra.

Per impostazione predefinita, questa opzione è sempre una e si chiama "Base". Il trucco è che in modalità utente puoi passare facilmente da un'opzione all'altra.

E ora abbiamo l'opzione principale, le cui impostazioni indicano: visualizzare i dati sotto forma di tabella:

Rinominiamo questa opzione (doppio clic) e quella principale in "Tabella" in questo modo:

Aggiungi una nuova versione del rapporto

Ora, usando il segno più, aggiungi un'altra opzione (dove spingeremo l'impostazione dell'output dei dati sotto forma di diagramma):

Chiamiamo questa opzione "Diagramma":

Impostazione di una nuova versione del rapporto

Come puoi vedere, a destra di questa opzione (l'abbiamo selezionata) è vuoto, cioè non ci sono impostazioni. Creiamoli con la nostra bacchetta magica:

Questa volta, seleziona il tipo di rapporto "Grafico ...":

Seleziona "Quantità" come campi per la visualizzazione (per analogia con la tabella):

Come serie (asse Y) indicheremo il campo "Cibo", e come punti (asse X) - il campo "Clienti":

È risultato così:

Salviamo il nostro report nel configuratore ed eseguiamolo in modalità utente:

Vediamo una tabella ... che cos'è ?! E il fatto è che devi solo scegliere un'altra versione del rapporto. Fare clic sul pulsante "Seleziona opzione ..." e selezionare l'opzione "Diagramma":

Il diagramma è pronto

Ancora una volta, generiamo un rapporto:

Fantastico, che bellezza

Elaborazione dei riferimenti dopo aver completato tutti i passaggi di questa lezione

Alla conclusione del modulo

Questo conclude la nostra revisione delle basi di un sistema di composizione dei dati. Ho cercato di raccontare e spiegare con semplici esempi le basi fondamentali necessarie affinché i principianti lavorino con ACS.

Se hai in futuro ( ti consiglio di farlo dopo il diploma di tutta la scuola) ci sarà bisogno di uno studio più approfondito del sistema di composizione dei dati - c'è un libro meraviglioso di E. Yu. Khrustaleva "Sviluppo di rapporti complessi in 1C: Enterprise 8".

In questo modulo, hai acquisito conoscenze e abilità pratiche sufficienti per iniziare a leggere letteratura più seria su questo argomento.

Abbiamo fatto un ottimo lavoro, è ora di riposare!

A volte, per ottenere un determinato risultato della composizione, è necessario creare collegamenti di dataset nell'ACS. Cercheremo di dirti quando è necessario e come farlo nel nostro articolo.

Lo schema di composizione dei dati implementato in 1C supporta tre tipi di origini dati (Fig.1)

Origine dei dati

L'origine dati più ovvia e comunemente utilizzata per gli sviluppatori è Query.

Il designer di query implementato nella versione 8 di 1C è molto comodo e, nella maggior parte dei casi, è possibile collegare tra loro più tabelle, effettuare i raggruppamenti e le selezioni necessari direttamente in esso.

In casi complessi, quando è necessario o più opportuno utilizzare l'esecuzione di un codice (ad esempio, caricando dati da un file di terze parti) o quando non è possibile utilizzare una query, la sorgente dati "Object" viene in soccorso. Il codice arbitrario eseguito nel modulo dovrebbe avere una struttura nell'output a cui l'ACS può accedere.

La terza fonte di dati è "Unione". In effetti, questa fonte può essere vista come uno dei tipi di comunicazione. Combina (riunisce più tabelle), senza corrispondenze, ma la coincidenza di determinati campi. Cioè, se ci sono 3 e 4 righe nelle due tabelle unite, rispettivamente, l'origine dati risultante avrà 7 righe.

Formulazione del problema

Come terreno di prova, sceglieremo la base UPP, versione 1.3.92.3, operante nella normale modalità di applicazione.

Ci troviamo di fronte alla seguente attività: utilizzando solo l'ACS, creare un report che visualizzi una tabella degli articoli acquistati da un documento, con i prezzi presi da un file inviato da un appaltatore.

Quindi, dobbiamo:

  1. Prendi la parte tabulare del documento di ricevuta;
  2. Carica il file nella sorgente dati "Object";
  3. Collega queste due sorgenti tramite un parametro specifico (nel nostro caso, questo sarà un codice);
  4. Stampa la tabella risultante.

Processo di esecuzione

Esaminiamo tutti i passaggi elencati:

  • Creare una richiesta nella sezione tabellare del documento di ricevuta (Fig.2)

Fig. 2

  • Crea un oggetto dataset (Fig. 3);

Fig. 3

Qui è importante fare attenzione al "Nome dell'oggetto contenente i dati", dovremo specificare questo nome nel codice del modulo report.

  • Vai al modulo report e crea la procedura "AtCompositionResult" (Fig.4);


Fig. 4

Non descriveremo la procedura per ottenere i dati da un file esterno, faremo attenzione alla parte di codice che deve essere presente nel layout per poter ricevere i dati per il "Data set 2" (Fig.5).

Fig.5

Importante! Quando si crea un "Oggetto" nel codice della procedura di collegamento, il valore del parametro StandardProcessing deve essere False.

Vai alla scheda "Collegamenti set di dati".

Set di collegamento

Andiamo alla scheda corrispondente dello schema (Fig.6).

Vediamo la sezione tabulare, che è molto simile alla sezione tabulare che si trova nel designer delle query, con alcune eccezioni. Per l'insieme della sorgente e l'insieme del ricevitore di comunicazione non è possibile selezionare la casella di spunta "Tutto", ma sono state aggiunte diverse colonne aggiuntive.

Nei collegamenti al set di dati, è possibile stabilire solo un collegamento come il join sinistro esterno del designer di query.

Prima di creare un collegamento, definiamo lo scopo delle colonne:

  1. La sorgente del collegamento è il primo set di dati da cui verranno presi tutti i valori disponibili;
  2. Ricevitore di comunicazione: un insieme di dati da cui verranno selezionati i valori corrispondenti alla nostra condizione;
  3. Espressione di origine: un campo o un'espressione del primo set di dati a cui corrispondere;
  4. L'espressione del destinatario è un campo o un'espressione di un insieme dipendente;
  5. Parametro - se si specifica il nome del parametro in questo campo, il collegamento con il set - il ricevitore verrà eseguito solo dal valore specificato nel parametro;
  6. Elenco parametri: definisce la capacità di utilizzare un elenco di valori come parametro;
  7. Condizione di collegamento: specificando qui un'espressione utilizzando i campi sorgente, è possibile creare una condizione, il cui adempimento servirà da segnale per stabilire un collegamento;
  8. Valore iniziale: mostra il valore iniziale del collegamento;
  9. Collegamento obbligatorio: determina se i campi utilizzati nella sorgente (impostato su FALSE) o nel ricevitore (impostato su TRUE) sono coinvolti e in base a questo aggiunge un collegamento al layout.

Quindi:

  • La fonte della connessione sarà il risultato della nostra richiesta;
  • L'oggetto fungerà da ricevitore;
  • L'espressione sorgente sarà "NomenclatureCode";
  • L'espressione ricevente "Nomenclatura";
  • Sarà necessaria la comunicazione (Fig. 7).

Se avessimo indicato il nome di una nomenclatura, o il suo tipo di riproduzione, o qualcos'altro come condizione di connessione, potremmo ottenere un campione più accurato per il nostro compito. Il risultato delle nostre azioni può essere visto in Fig.8.

Fig. 8

Non c'era corrispondenza per le ultime due righe del report nel file dei prezzi.

41
Di recente ho realizzato un rapporto con un numero di colonne indefinito. Ero riluttante a fare confusione con il codice, ho deciso di farlo su ACS. Non c'era alcun problema con questo, era necessario estendere il risultato su un layout arbitrario (il tuo titolo + ... 27
Anche se gli studenti ACS si imbattono in questo il primo o il secondo giorno, dovrebbe essere nella sezione FAQ. Un semplice esempio di output programmatico di un report su un layout utilizzando le impostazioni predefinite. // Ottieni lo schema da ... 18
Quando si generano report su ACS, per impostazione predefinita, tutti i raggruppamenti vengono espansi, ma accade che sia necessario mostrare un report con gruppi compressi subito dopo la generazione! Questo codice nel modulo report consente di comprimere ... 10
In questa scheda è possibile specificare quali connessioni vengono effettuate tra due o più set di dati, in base a quali parametri e condizioni..png 1. "Fonte di comunicazione" - indica il primo set di dati, da ... 9
Che durante lo sviluppo di report, è necessario che per un utente con diritti limitati, il report venga generato completamente senza verificare i diritti! Soprattutto se RLS è configurato. Esistono diversi modi per farlo: 1. Installa ...

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam