LA CAMPANA

C’è chi ha letto questa notizia prima di te.
Iscriviti per ricevere nuovi articoli.
E-mail
Nome
Cognome
Come vuoi leggere La Campana?
Niente spam

Elaborazione semplice per lavorare con valori predefiniti.

Consente di confrontare gli elementi di sicurezza delle informazioni con gli elementi predefiniti nella configurazione.

Consente di verificare l'intera configurazione per verificare la presenza di elementi duplicati (diversi elementi di sicurezza delle informazioni associati a un elemento predefinito - errore) e di elementi mancanti (elementi predefiniti che non sono associati a elementi di sicurezza delle informazioni - errore). Come durante gli scambi potrebbero verificarsi degli elementi o dei guasti che porterebbero ad errori nella configurazione.

Puoi semplicemente visualizzare i valori attuali e apportare le modifiche necessarie.

Procedura operativa:

1. Iniziamo l'elaborazione.

2. Selezionare la tipologia (rubrica, piano dei conti, PVC, PVR).

3. Selezioniamo la directory del tipo selezionato.

4. Tutti gli elementi predefiniti disponibili nella sicurezza informatica e descritti nella configurazione compaiono nella parte tabellare del trattamento.

Se nel database sono presenti più elementi legati ad una proprietà predefinita, oppure ad alcuni degli elementi descritti nella configurazione non sono assegnati elementi di sicurezza informatica, il sistema lo segnalerà durante la selezione di una directory. Gli elementi duplicati e mancanti appariranno in cima all'elenco e saranno evidenziati in arancione.

5. Impostiamo nuovi valori per gli elementi predefiniti richiesti.

In questo caso le righe per le quali un elemento predefinito scompare dalla configurazione sono contrassegnate in rosso. Quelle blu sono le linee per le quali cambia l'elemento predefinito, quelle verdi sono le linee per le quali appare l'elemento predefinito.
A grandi quantitàÈ conveniente selezionare tutti i duplicati con il mouse linee aggiuntive e specificare per tutti quelli selezionati di annullare la connessione utilizzando il pulsante “Annulla corrispondenza” (dalla versione 1.3.1)

6. Eseguiamo la riassegnazione facendo clic sul pulsante “Riassegna elementi”.

Controllo dei duplicati(errore "L'elemento predefinito non è univoco"):

Quando si fa clic sul pulsante "Verifica duplicati", l'elaborazione controllerà tutti i libri di consultazione, i piani dei conti, PVC e PVR e visualizzerà un elenco di tabelle con elementi duplicati che indica il numero di elementi duplicati.

Successivamente è necessario verificare separatamente gli oggetti per i quali sono stati rilevati errori.

Controllo delle voci mancate(errore "L'elemento predefinito non è nei dati"):

Quando si fa clic sul pulsante "Verifica mancati", l'elaborazione controllerà tutti i libri di consultazione, i piani dei conti, PVC e PVR e visualizzerà un elenco di elementi predefiniti che non sono associati ai dati sulla sicurezza delle informazioni.

Richiede la piattaforma 8.3.3 o successiva per l'utilizzo.

Universale, può essere utilizzato con qualsiasi configurazione.

Rileva lingua Afrikaans Albanese Arabo Armeno Azero Basco Bengalese Bielorusso Bulgaro Catalano Cinese (Simp) Cinese (Trad) Croato Ceco Danese Olandese Inglese Esperanto Estone Filippino Finlandese Francese Galiziano Georgiano Tedesco Greco Gujarati Creolo haitiano Ebraico Hindi Ungherese Islandese Indonesiano Irlandese Italiano Giapponese Kannada Coreano Laotiano Latino Lettone lituano macedone malese maltese norvegese persiano polacco portoghese rumeno russo serbo slovacco sloveno spagnolo swahili svedese Tamil Telugu Thai turco ucraino urdu vietnamita gallese yiddish Afrikaans Albanese Arabo Armeno Azero Basco Bengalese Bielorusso Bulgaro Catalano Cinese (Simp) Cinese (Trad) Croato Ceco Danese Olandese Inglese Esperanto Estone Filippino Finlandese Francese Galiziano Georgiano Tedesco Greco Gujarati Creolo Haitiano Ebraico Hindi Ungherese Islandese Indonesiano Irlandese Italiano Giapponese Kannada Coreano Laotiano Latino Lettone Lituano Macedone Malese Maltese Norvegese Persiano Polacco Portoghese Rumeno Russo Serbo Slovacco Sloveno Spagnolo Swahili Svedese Tamil Telugu Thai Turco Ucraino Urdu Vietnamita Gallese Yiddish

Buona giornata.

Oggi parleremo dell’innovazione della piattaforma 8.3 per quanto riguarda gli elementi predefiniti.

introduzione

Lascia che ti ricordi che prima, in pratica, molto spesso volevo guardare un elemento della directory per scoprire il suo nome predefinito. Ad esempio, hai creato due controparti predefinite e le hai denominate IPSidorov e OOOMeteor. E hanno cucito loro una logica.

Quando tutto è stato debuggato e risolto, si è scoperto che il compito era posto al contrario e per la LLC era necessaria la logica del singolo imprenditore e per il singolo imprenditore la logica della LLC. "Nessun problema", diciamo, e in modalità aziendale rinominiamo gli elementi. Dopotutto, entrare nel codice è molto più difficile. Passa un anno e ti viene diagnosticata nuovo compito: per IP Sidorov, impostare un po' più di logica. Entri nel configuratore, scrivi la logica, inizi a controllare e non funziona niente, perché... nel configuratore IPSidorov e nell'impresa - OOOMeteor. Il cervello è rotto e voglio distruggere questo rastrello. La cosa più semplice e ovvia è visualizzare il nome elemento predefinito sotto forma di elenco. Ecco il problema: puoi ottenere solo il nome di uno predefinito in 8.2 usando il metodo. Ma il metodo presenta i suoi inconvenienti: non può essere ottenuto in una richiesta. Quelli. Il primo inconveniente è ricavare il nome di quello predefinito da un riferimento alla directory.

Il secondo inconveniente è quando abbiamo già un elemento di directory e dobbiamo renderlo predefinito. Creiamo un elemento predefinito e otteniamo due elementi nella directory. Uno è predefinito, l'altro è operativo, a cui si fa riferimento in tutti i nostri documenti. La sostituzione dei collegamenti aiuta sicuramente, ma se il database è grande è difficile.

Ora arriviamo al punto

Il primo è che la directory ora ha la proprietà "Aggiornamento dati predefiniti".

Cosa ci offre questo campo? Se è impostato su "Non aggiornare automaticamente", aggiungendo un elemento predefinito non lo vedremo subito nella directory. Quelli. i metadati non hanno nulla a che fare con i dati. E se non lo crei nella directory, accedervi con il suo nome tramite il gestore di directory causerà un errore di sintassi.

Molto interessante, ma perché? Come possiamo creare un elemento nella directory? Puoi crearlo come preferisci oppure collegarlo a uno esistente. Ora la directory ha l'attributo "Nome dei dati predefiniti". Creiamo un elemento di directory a livello di programmazione come al solito tramite "Directories.Contractors.CreateElement()" e riempiamo il suo attributo "PrefinedDataName" uguale al nome dell'elemento predefinito. Oppure se l'elemento esiste già, otteniamo il suo oggetto e inseriamo nuovamente il “Nome dei dati predefiniti”. Tutto.

E infine un po' di sciroppo

Questo nuovo attributo non solo è leggibile e scrivibile, ma è anche disponibile nelle richieste. In questo modo puoi imporre condizioni su di esso nelle query, determinare se è predefinito o meno.

Grazie per l'attenzione.

L'idea stessa di lavoro programmatico con elementi predefiniti, secondo me, è molto corretta. Ci sono semplicemente delle sfumature che devono essere prese in considerazione quando si lavora.

Innanzitutto, è necessario comprendere chiaramente da soli che ci sono elementi predefiniti nella configurazione e che ci sono elementi predefiniti nella base delle informazioni (IS). Tecnicamente gli elementi predefiniti di sicurezza informatica sono gli elementi più comuni delle directory, in cui l'attributo “Nome dei dati predefiniti” indica a quale elemento di configurazione predefinito corrispondono. Non sono diversi dagli elementi ordinari. Di conseguenza, qualsiasi elemento ordinario della sicurezza informatica può essere reso predefinito, qualsiasi elemento predefinito può essere reso ordinario. Per fare questo basta entrare valore desiderato agli oggetti di scena "NomeDatiPredefiniti".

Di tanto in tanto, questa proprietà contiene un valore che non è quello previsto dallo sviluppatore. Di conseguenza, si verificano errori nel funzionamento di 1C. Da critico, in cui il lavoro è sostanzialmente impossibile, a non critico, in cui la logica degli algoritmi viene sconvolta.

Condizionalmente possiamo distinguere tre tipi di errori:
1. "L'elemento predefinito non è presente nei dati";

3. Specificazione errata di un elemento predefinito;

1. "L'elemento predefinito non è nei dati" - o assenza di un elemento predefinito descritto nella configurazione dei dati di sicurezza informatica.

Questo è il tipo di errore più semplice da eseguire il debug e correggere. La sua semplicità è che la piattaforma segnala abbastanza correttamente questa situazione “Nei dati manca l'elemento predefinito” ed è abbastanza chiaro come risolverlo.

Quando si accede ad un elemento mancante nel codice "Elenchi.Tipi di informazioni di contatto.Email del referente" viene visualizzato un messaggio

Quando si accede ad un elemento della richiesta "VALUE(Directory.Tipi di informazioni di contatto.Email del contatto)" viene visualizzato il seguente messaggio:

Questo errore si verifica se un elemento è descritto nella configurazione, ma l'elemento non è associato ad esso nel database.

Per cominciare, chiariamo che questa situazione non è sempre sbagliata. È del tutto possibile utilizzare dati predefiniti in qualche tipo di logica di programma, che per la maggior parte degli utenti potrebbe non essere utilizzata. In questo caso, per non ingombrare la directory per tutti gli utenti della configurazione, è logico definire elementi predefiniti nella configurazione, ma non crearli in tutti i sistemi di sicurezza informatica, ma solo per quei sistemi di sicurezza informatica in cui viene utilizzata la logica di configurazione richiesta. In questo caso, il programmatore può specificare la proprietà "Non aggiornare i dati predefiniti" per la directory e creare elementi a livello di codice quando accede alle funzionalità del modulo. Oppure consentire all'utente di associare in modo indipendente gli elementi del modulo predefiniti agli elementi regolari esistenti.

Inoltre non utilizzato creazione automatica elementi predefiniti quando si lavora in modalità RIB. Poiché i nuovi elementi devono essere trasferiti dal database centrale e non creati in nodi con UID diversi.

Quelli. A volte l'errore è il riferimento ad un elemento non corrispondente, non la presenza di tale elemento stesso.

È necessario analizzare il motivo per cui l'elemento non è stato creato. Forse dovrebbe essere creato quando viene eseguita una modalità di programma. Ad esempio, dopo aver completato uno scambio in RIB. O forse è stato semplicemente cancellato per sbaglio.

Se la logica prevede il riempimento degli elementi predefiniti non automaticamente, ma in una modalità separata, prima di utilizzare l'accesso per nome " Elenchi.Tipi di informazioni di contatto.E-mail della persona da contattare"Per evitare una situazione eccezionale, è consigliabile verificare che l'elemento sia già nel database. Se l'elemento manca, informare l'utente di ciò e spiegare quale modalità deve eseguire per riempire l'elemento. Per tale controllo , puoi eseguire una query di dati.

Richiesta = Nuova richiesta; Request.Text = "SELECT | Tipi di informazioni di contatto. Link | DA | Directory. Tipi di informazioni di contatto COME Tipi di informazioni di contatto | DOVE | Tipi di informazioni di contatto. Nome dei dati predefiniti = "" EmailContactPersona"""; L'elemento è MissingInData = Query.Execute().Empty();

Se si tratta ancora di un errore nei dati del database, è necessario associarlo a un elemento predefinito dell'elemento di sicurezza delle informazioni. Quelli. è necessario spiegare al sistema a quale elemento di sicurezza delle informazioni il codice del programma dovrebbe accedere con questo nome. Tecnicamente, un'associazione sta semplicemente specificando il nome di un elemento predefinito nella proprietà "NomeDatiPredefinito" dell'elemento IS. Per installarlo basta eseguire il codice:

2. "L'elemento predefinito non è unico" - h doppi elementi predefiniti:

Questa situazione è che diversi elementi di sicurezza delle informazioni sono collegati a un elemento predefinito. In questo caso, quando si accede ad un nome predefinito, l'elemento verrà selezionato in modo casuale. Questa situazione è sempre sbagliata. La sua difficoltà è che la piattaforma non lo segnala in alcun modo. Gli algoritmi iniziano a funzionare in modo errato.

La piattaforma segnalerà l'errore "L'elemento predefinito non è univoco" solo quando si tenta di modificare un elemento duplicato.

Finché nessuno avrà bisogno di modificare l'elemento, nessuno saprà dell'errore.

Tali duplicati possono essere creati, ad esempio, se per la directory viene utilizzato RIB e nelle proprietà per i dati predefiniti è specificata la modalità "Aggiorna automaticamente". In questo caso, quando si esegue uno scambio, verrà creata un'istanza dei dati predefiniti quando si aggiorna la configurazione. Una seconda istanza di elementi predefiniti con lo stesso nome verrà trasferita dal database centrale durante lo scambio.

Inoltre, questi duplicati si verificheranno quando si utilizza l'elaborazione di scambio tra configurazioni if diversi database gli elementi predefiniti corrispondono a diversi elementi di sicurezza delle informazioni. In questo caso, una copia dei dati predefiniti esiste già nel database, la seconda arriverà quando si caricano dati con un UID diverso. Se stai eseguendo trasferimenti di dati, devi decidere quali elementi del database sono considerati primari e utilizzarli nel database subordinato. Nel database subordinato è necessario sostituire l'utilizzo dei vecchi elementi con elementi del database principale.

Tali errori nel database possono essere identificati con una query come:

SELECT Tipi di informazioni di contatto.Nome di dati predefiniti, QUANTITÀ (DIVERSI tipi di informazioni di contatto.Link) AS Numero di directory FROM predefinite.Tipi di informazioni di contatto AS Tipi di informazioni di contatto GROUP BY Tipi di informazioni di contatto.Nome di dati predefiniti HAVING QUANTITY (DIVERSI tipi ContactInformation.Link) > 1

Questa query restituirà un elenco di elementi predefiniti a cui è associato più di un elemento di sicurezza delle informazioni.

Se tali elementi sono presenti è necessario rimuovere il collegamento con quello predefinito per uno di essi. Quelli. È necessario determinare in modo inequivocabile per il sistema a quale elemento di sicurezza delle informazioni dovrebbe fare riferimento il codice del programma quando si utilizza questo nome. Per fare ciò, basta eseguire il codice.

3. Specificazione errata di un elemento predefinito.

L'errore è che l'elemento predefinito corrisponde ad un elemento non previsto dalla logica del programma. Tali errori sono i più difficili da diagnosticare. A differenza dei primi due tipi, la configurazione non può essere controllata automaticamente per questi errori. Possono essere individuati solo analizzando la logica del lavoro. In caso di dubbi, puoi verificare se viene utilizzato l'elemento corretto.

Per fare ciò, basta eseguire uno dei comandi.

//Definizione di un elemento di sicurezza informatica che sia collegato alla Notifica predefinita desiderata (Directory.Tipi di informazioni di contatto.Email della persona da contattare) //Definizione di un elemento predefinito a cui è allegata la Notifica selezionata (Link a Element.Nome di dati predefiniti )

Se vengono individuati tali errori è necessario rimuovere la connessione errata con il vecchio elemento e aggiungere una connessione con il nuovo elemento. Il codice operativo è simile al codice per correggere i primi due tipi di errori.

Bene, brevemente sugli errori quando lavoro del programma oppure in modalità configuratore:

"L'elemento predefinito non appartiene a<Имя справочника>" - si verifica un errore quando si tenta di scrivere un elemento predefinito con un nome che non corrisponde al nome nel configuratore.

"Gli oggetti non predefiniti non possono avere record di visualizzazione dei sottoconti predefiniti" - Si verifica un errore quando si tenta di rendere non predefinito un elemento di un piano dei conti predefinito. Per eliminare gli errori è necessario rimuovere il flag “Predefinito” da ogni linea di sottocontatto dell'elemento.

"Gli oggetti non predefiniti non possono avere record predefiniti dei principali tipi di calcolo"- Si verifica un errore quando si tenta di rendere non predefinito un elemento predefinito del piano dei tipi di calcolo. Per eliminare gli errori è necessario rimuovere la casella di controllo “Predefinito” per ogni riga del tipo di calcolo principale dell’elemento.

"Gli elementi predefiniti non sono univoci"- appare un errore nel configuratore durante l'aggiornamento base informativa per rilasciare la configurazione senza modalità compatibilità con 8.3.4. È necessario verificare la presenza di duplicati ed eliminarli prima dell'aggiornamento.

"Il nome dell'elemento predefinito non è univoco" - l'errore si verifica quando nella configurazione durante l'aggiornamento alla piattaforma sono presenti più elementi predefiniti con lo stesso nome8.3.6.2332 e versioni successive. È necessario eliminare i duplicati nella configurazione.

Per lavorare con dati predefiniti, consiglio l'elaborazione. Può eseguire qualsiasi azione con dati predefiniti e può anche verificare la configurazione nel suo insieme per la presenza di errori dei primi due tipi (elementi duplicati e mancanti) in tutti gli oggetti di sicurezza delle informazioni (rubriche, piani dei conti, PVC, PVR) .

LA CAMPANA

C’è chi ha letto questa notizia prima di te.
Iscriviti per ricevere nuovi articoli.
E-mail
Nome
Cognome
Come vuoi leggere La Campana?
Niente spam