LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir les derniers articles.
Email
Nom
Nom de famille
Comment voulez-vous lire The Bell
Pas de spam

Ildarovich 6489 16.11.12 18:24 Maintenant dans le sujet

() Vladimir! Je suis heureux que vous ayez prêté attention à l'article, d'autant plus que vous avez été l'un des premiers à avoir vu (et apprécié) cette technique lors de la discussion sur «vraiment écrire une requête délicate» il y a deux ans. Une question intéressante que je n'ai pas posée moi-même, mais que je l'ai vue dans le forum. L'auteur de la question est Stanislav Sheptalov. De plus - 24/10/12 le même (juste attiré l'attention sur ceci, puisque le surnom est différent) le membre du forum a posé une question similaire, mais appliquée à la hiérarchie. Il s'avère que le problème PRATIQUE a été résolu. De plus, conformément à l'approche «scientifique», j'ai passé en revue les problèmes pratiques où cette technique peut être appliquée. Trouvé 7 autres problèmes. 5 - dans cet article. Parmi eux se trouve le problème des boucles dans les spécifications, que j'avais précédemment promis de résoudre avec Ish_2 en une seule requête. Je pense qu'Ish_2 pourra vous convaincre de l'urgence de cette tâche - il y a passé beaucoup de temps. La solution est courte - composée de plusieurs lignes, elle est donc extrêmement claire, formulée dans un style non procédural, à travers une exigence de résultat. Eh bien, d'autres tâches ont été rencontrées dans les articles et sur le forum, des solutions plus lourdes leur ont été proposées. Attendons donc un peu pour voir à quelle fréquence cela sera appliqué. C'est le genre de rétroaction que j'attends - de ceux qui essaieront.
D'ailleurs, le fait que cette branche des mathématiques ne soit pas loin de la pratique et soit nécessaire aux comptables est attesté par le module général «Ajustement des coûts» dans BP2, avec lequel nous sommes en train de bricoler (travail instable d'une demande régulière). Nous parlons ici de briser les cycles du graphe de déplacement de la nomenclature et de construire un arbre couvrant.
Passons maintenant à la structure de la base de données "pour une tâche spécifique". La question a été posée sur la mise en œuvre de la tâche dans 1C et, par conséquent, la tâche a été résolue dans 1C. Si on vous demandait «quel bus pouvez-vous prendre pour vous rendre à la bibliothèque», et que vous répondiez qu'il vaut mieux voler dans un dirigeable, vous ne seriez tout simplement pas compris (peut-être, sauf pour ceux qui sont dans les embouteillages de Moscou). La méthode fonctionnait à l'origine dans une langue complètement différente.
En général, je ne peux pas vous convaincre quand vous pensez que l'architecture de la plateforme 1C ne vaut rien. Je ne peux qu'exprimer mon opinion. Il est coûteux de développer un schéma de base de données à partir de zéro pour une tâche spécifique. Si l'on compare avec la construction: 1C est des immeubles de grande hauteur en panneaux - des logements bon marché - un moyen d'automatisation de masse - dans des quartiers exigus, mais pas offensés. Les organisations individuelles peuvent embaucher Norman Foster pour répondre exactement à leurs besoins. Les autres doivent utiliser des projets de masse bon marché - un SGBD relationnel avec un modèle d'objet rigide. De plus, je connais la triste expérience de l'utilisation de Caсhe dans plusieurs projets. Aux yeux du développeur, tout n'a pas l'air aussi rose qu'en théorie. Le modèle objet 1C résiste à l'épreuve du temps - «d'immenses territoires sont construits et peuplés». De plus, il se développe. Récemment, une technologie de source de données externe est apparue. Et si une tâche nécessite une plus grande réactivité (par exemple, les systèmes de facturation), vous pouvez désormais connecter de manière transparente 1C à un autre SGBD. Par exemple, nous l'avons fait avec un ERP d'importation.
Mais je ne voudrais toujours pas détourner la conversation du sujet principal - le travail des techniques proposées dans les tâches PRATIQUES détaillées.

Qu'est-ce que le livre de référence 1c et à quoi sert-il? Le livre de référence stocke des informations conditionnellement constantes, c'est-à-dire des informations qui ne changent presque pas sur une longue période. Par exemple, le répertoire «Nomenclature» contient une liste des produits vendus ou fabriqués. De plus, la référence peut contenir de nombreuses propriétés décrivant l'élément de référence.

Si nous prenons le sexe d'une personne à titre de comparaison, la liste ici est limitée et inchangée, donc une énumération est meilleure pour elle.

Après avoir créé un nouveau répertoire, nous verrons l'image suivante.

Considérons tous ses signets.

Le principal

Le nom (identifiant dans la base de données) et le synonyme (nom personnalisé du répertoire) sont indiqués ici. Un commentaire facultatif est un commentaire qui peut expliquer le but du livre de référence ou décrire ses caractéristiques.

Hiérarchie

Dans cet onglet, vous pouvez définir la profondeur d'imbrication des éléments du dictionnaire. À l'aide de ce paramètre, il est pratique de différencier et de détailler les éléments selon certains critères. Par exemple, les produits "Armoires" sont dans un groupe et les produits "Tables" dans un autre. Par défaut, lors de sa création, la référence présente liste d'objets... Si vous cochez la case Référence hiérarchique, chaque élément peut être subordonné à un autre élément (groupe). Vous trouverez ci-dessous les options permettant de personnaliser cet onglet et de modifier l'affichage en mode personnalisé.

Type de hiérarchie:

Hiérarchie des groupes et des éléments

Avec ce paramètre, l'imbrication des éléments ne peut se faire que dans des groupes (dossiers).

Ici, comme vous pouvez le voir, tous les éléments et groupes ont les mêmes icônes, et n'importe quel élément peut être imbriqué.

Placez les groupes au-dessus

Si vous cochez cette case, les groupes seront toujours en haut, sinon ils seront organisés dans l'ordre de tri, par exemple, comme ceci:

Limiter le nombre de niveaux dans la hiérarchie

Si cette case n'est pas cochée, l'imbrication est illimitée.

Si la case est cochée, vous pouvez spécifier ci-dessous le nombre de niveaux.

Propriétaires

Sur un signet propriétaires d'autres répertoires peuvent être indiqués par rapport auxquels il est subordonné. Le schéma des relations entre catalogues subordonnés est similaire au schéma des relations d'un catalogue hiérarchique, seulement ici un autre catalogue agit en tant que parent et est appelé propriétaire. Dans les configurations typiques, un bon exemple est la subordination du répertoire "Contrats" au répertoire "Contractors", car il ne peut y avoir de contrat qui n'appartienne à aucune contrepartie.

Dans le champ "Liste des propriétaires de catalogues", la liste des catalogues auxquels appartiennent les éléments de ce catalogue est indiquée.

Ci-dessous, dans le champ «Utilisation de la subordination», il est indiqué à quoi les éléments de cette référence seront subordonnés.

Comment savoir par programme que le répertoire est hiérarchique ou non

Pour ce faire, vous devez vous référer aux métadonnées

Il isHierarchicalDirectory \u003d Metadata.Reference.Contractors.Hierarchical;

À suivre ...

La structure "IN HIERARCHY" dans les requêtes 1C: Enterprise 8.x vous permet d'obtenir des éléments subordonnés d'un objet de configuration hiérarchique selon une sélection donnée. Aujourd'hui dans l'article nous allons considérer un exemple de son utilisation, ainsi que les actions de la plateforme du côté du SGBD et son impact sur les performances.

En utilisant

Prenons un exemple simple d'utilisation de la construction "IN HIERARCHY". Lors de l'exécution de la requête suivante, les éléments subordonnés du catalogue hiérarchique "Produits" pour la valeur passée de la variable "Référence" seront obtenus.

Request Text \u003d "SELECT | Produits ... Lien, | Des produits ... code de fournisseur |DE | Annuaire ... Produits en tant que produits | O | Des produits ... Lien EN HIERARCHIE (& Lien)"

Dans la base de test, le répertoire "Produits" contient les données de test suivantes:

Bien entendu, toutes les entrées du répertoire ne sont pas affichées dans l'image. La capture d'écran montre uniquement la structure du stockage des données dans le répertoire hiérarchique. La table de recherche contient 10 groupes de niveau supérieur, chacun contenant 5 groupes imbriqués de 200 éléments chacun.

Revenons à la requête de test. Passons dans le paramètre "& Link" un lien vers le groupe "Group - 1" (voir la capture d'écran ci-dessus). Ensuite, le résultat de la requête ressemblera à ceci:

Comme nous pouvons le voir, la requête a renvoyé un lien vers le groupe supérieur lui-même (passé par le paramètre), ainsi que des groupes imbriqués avec des éléments. Ainsi, l'utilisation de la structure "IN HIERARCHY" vous permet d'obtenir commodément des données hiérarchiquement subordonnées.

Syntaxe du langage de requête 1C: entreprises et sQL classique très similaire à certains égards. Mais pour l'expression "IN HIERARCHY", il n'y a pas d'analogue dans le langage de requête SQL car, par exemple, pour l'expression du langage de requête de la plateforme "B", il existe un opérateur SQL similaire "IN". Par conséquent, il est intéressant de travailler avec la plateforme avec le SGBD lors de l'utilisation de cet opérateur.

Dans les coulisses

Alors, commençons. A titre d'exemple, nous utiliserons la requête précédemment écrite dans le répertoire "Produits". Nous analyserons les actions de la plateforme pour deux situations:

  1. En tant que paramètre "& Link", nous passerons le groupe de niveau supérieur "Group 1" (comme nous l'avons fait précédemment).
  2. Dans le paramètre, nous passerons le lien vers le groupe "Groupe 1 - 1" imbriqué dans le groupe de niveau supérieur "Groupe 1".

Maintenant en ordre. Dans le premier cas, la plateforme effectuera les actions suivantes sur le serveur SQL:

1. Tout d'abord, une requête SQL est exécutée pour obtenir une référence au groupe de référence passé en paramètre et à tous les groupes qui lui sont subordonnés. Le résultat est placé dans la table temporaire "# tt1".

2. Dans la deuxième étape, la même requête est exécutée deux fois:

La capture d'écran détaille le texte de la requête SQL. En bref, la requête vous permet de sélectionner des éléments subordonnés pour des groupes référencés dans une table temporaire. La question demeure: "Pourquoi la requête est-elle exécutée deux fois?" Ici, la réponse est simple: d'abord, la requête reçoit des éléments subordonnés pour les groupes de premier niveau qui sont déjà contenus dans la table temporaire (voir paragraphe 1). La deuxième requête obtient ensuite les subordonnés pour les groupes de second niveau subordonnés. Étant donné qu'aucun groupe de catalogues n'est présent au troisième niveau de la hiérarchie, cette requête n'est plus exécutée.

Dans notre cas, la deuxième requête renverra un résultat vide, car il n'y a pas d'éléments subordonnés pour les enregistrements situés au 3ème niveau de la hiérarchie (il n'y a pas de groupes là-bas).

3. Pour obtenir le résultat final de la requête, la plateforme forme la requête SQL suivante:

Le résultat de cette demande particulière peut être traité ultérieurement par des algorithmes dans le langage intégré de la plate-forme. Ainsi, les enregistrements de la table temporaire "# tt1" sont utilisés pour définir la condition de sélection à partir de la table de recherche "_Reference41".

4. Lors de la dernière étape, la plate-forme 1C: Enterprise 8.x supprime la table temporaire "# tt1", car elle ne sera plus utilisée à l'avenir.

Ceci termine le processus d'exécution de l'opérateur "IN HIERARCHY". Permettez-moi de vous rappeler que la séquence d'actions ci-dessus sur le serveur SQL a été effectuée lorsque nous avons transmis un lien vers le groupe de niveau supérieur "Groupe - 1" vers la requête côté plateforme. Mais comment la plate-forme se comportera-t-elle si nous transmettons un lien vers le groupe de deuxième niveau "Groupe - 1 - 1" comme paramètre "& Link"? Tout se passera de la même manière, sauf pour le point suivant: ci-dessus, dans la deuxième étape de l'exécution des requêtes SQL par la plateforme, il a été écrit que la demande d'obtention des éléments subordonnés a été exécutée deux fois - dans le cas de l'obtention d'éléments subordonnés pour le groupe "Groupe - 1 - 1", ce n'est pas le cas ... La demande ne sera exécutée qu'une seule fois.

Le fait est que le nombre de demandes d'éléments subordonnés dépend du nombre de groupes dans la hiérarchie. En d'autres termes, si au moins un groupe est contenu au niveau de la hiérarchie des éléments, alors demande de l'article 2.

Impact sur la performance

Une utilisation incorrecte d'un opérateur dans une demande peut conduire à des performances système sous-optimales. L'opérateur "EN HIERARCHIE" en question ne fait pas exception. Il doit être utilisé avec précaution, car il complique grandement l'algorithme d'exécution des requêtes SQL sur la base de données et augmente ainsi la charge sur le serveur SGBD.

Je vais donner un exemple de demande non optimale qui peut entraîner les tristes conséquences mentionnées ci-dessus:

CHOISISSEZ des produits. Lien FROM Directory. Produits COMME Produits O Products (Produits. Référence EN HIERARCHIE (& Référence) OU Produits. Référence EN HIERARCHIE (& Référence1) OU Produits. Référence EN HIERARCHIE (& Référence2))

Comme vous pouvez le deviner, la requête conduira à la formation de nombreuses requêtes SQL, ce qui entraînera une diminution des performances du système d'information.

Conclure!

Des conclusions à vous faire. Permettez-moi simplement de dire que l'opérateur "IN HIERARCHY" est utilisé par la plateforme pour le système de composition des données lorsque les conditions de sélection incluent "IN GROUP", "IN GROUP FROM LIST" et autres. Je ne pense pas qu'il soit utile d'expliquer qu'avec des manipulations incorrectes, les utilisateurs peuvent effectuer une sélection très complexe et augmenter la charge sur le serveur 1C et le SGBD plusieurs fois. Modifions uniquement les paramètres pour les utilisateurs avancés.

Et bien sûr, lors de l'écriture de vos propres mécanismes, faites attention à l'opérateur "IN HIERARCHY". Très pratique d'un côté et dangereux de l'autre.

Cette section présente des exemples de résolution de tâches typiques lors de l'utilisation de répertoires hiérarchiques.

Récupération des éléments d'un répertoire hiérarchique subordonné à un groupe donné

Pour obtenir les éléments subordonnés du catalogue hiérarchique, le langage de requête fournit la construction IN HIERARCHY. Exemple d'utilisation EN HIERARCHIE:


CHOISIR
Nomenclature.Code,
Nomenclature.Prix d'achat
DE

Dans cet exemple, toutes les entrées du catalogue Nomenclature qui se trouvent dans le groupe & Groupe seront récupérées, y compris elle-même, ses groupes subordonnés et les éléments appartenant à des groupes subordonnés.

Si nous ne sommes intéressés que par des éléments et des groupes qui sont directement dans un groupe donné, alors nous pouvons obtenir de tels éléments en définissant une condition sur le champ Parent. Exemple:


CHOISIR
Nomenclature.Code,
Nomenclature. Nom AS Nom,
Nomenclature.Prix d'achat
DE
Référence: Nomenclature AS Nomenclature


Nomenclature.Parent \u003d & Groupe

Cette requête sélectionnera les groupes et les éléments subordonnés à un groupe avec le lien & Groupe.

Vérifier si un élément de catalogue a des éléments subordonnés

Pour vérifier l'existence d'enregistrements subordonnés d'un élément de dictionnaire, vous pouvez utiliser une requête similaire à celle présentée:

Dans cet exemple, la référence de l'élément pour lequel vous souhaitez vérifier les éléments enfants est écrite dans le paramètre de requête Parent. Après avoir exécuté une telle requête, vous devez vérifier le résultat pour la vacuité. Si le résultat n'est pas vide, il existe des enregistrements subordonnés. Sinon, non. Exemple:


Si Query.Run (). Empty () Then
Rapport ("Aucun enregistrement");
Autrement
Rapport ("Il y a des enregistrements");
Fin si;

Obtenir tous les parents d'un élément

Il n'y a pas de moyen spécial dans le langage de requête pour obtenir tous les parents d'un élément. Vous pouvez utiliser des totaux hiérarchiques pour terminer la tâche, mais l'obtention de totaux hiérarchiques est optimisée pour la création de totaux d'un grand nombre d'enregistrements, et pas tout à fait efficace pour obtenir les parents d'un élément. Pour une récupération plus efficace de tous les enregistrements parents d'un élément, il est recommandé de parcourir ses parents dans une boucle par petites portions. Exemple:


CurrentNomenclatureItem \u003d NomenclatureItem;

Demande \u003d Nouvelle demande ("SELECT
| Nomenclature.Parent,
| Nomenclature.Parent.Parent,
| Nomenclature.Parent.Parent.Parent,
| Nomenclature.Parent.Parent.Parent.Parent,
| Nomenclature.Parent.Parent.Parent.Parent.Parent
| DE
| Référence: Nomenclature AS Nomenclature
| O
| Nomenclature.Ref \u003d & CurrentNomenclatureItem ";

Jusqu'au cycle de la vérité
Query.SetParameter ("CurrentNomenclatureItem", CurrentNomenclatureItem);
Résultat \u003d Query.Run ();
Si Result.Empty () Alors
Avorter;
Fin si;
Selection \u003d Résultat.Select ();
Sample.Next ();
Pour ColumnNumber \u003d 0 By Result.Columns.Number () - 1 Cycle
CurrentNomenclatureItem \u003d Sélection [ColumnNumber];
Avorter;
Autrement
Rapport (CurrentNomenclatureItem);
Fin si;
Fin de cycle;

Si CurrentNomenclatureElement \u003d Directories.Nomenclature.EmptyRef () Then
Avorter;
Fin si;
Fin de cycle;

Dans cet exemple, tous les parents sont affichés dans la fenêtre de message de service pour le lien écrit vers la variable ElementNomenclature. Le cycle sélectionne 5 parents du lien.

Si le nombre de niveaux dans le livre de référence est limité et petit, il est alors possible d'obtenir tous les parents en une seule demande sans boucle.

Sortie d'un répertoire hiérarchique vers un rapport

Pour afficher un catalogue hiérarchique dans un rapport tout en conservant la hiérarchie, vous devez utiliser une requête similaire à la suivante:


CHOISIR
Nomenclature.Code,
Nomenclature. Nom AS Nom,
Nomenclature.Prix d'achat
DE
Référence: Nomenclature AS Nomenclature
TRIER PAR
Nom HIERARCHY

Cette requête sélectionne tous les enregistrements du répertoire et les trie par hiérarchie. Le résultat sera trié par nom, en tenant compte de la hiérarchie.

Pour que les groupes de l'annuaire soient placés au-dessus des éléments, il est nécessaire de remplacer la proposition ORDER BY SOFTWARE dans cette demande par la suivante:


TRIER PAR
Nomenclature: c'est le Groupe HIERARCHY,
Nom

Le résultat sera toujours trié dans une hiérarchie, mais les groupes apparaîtront au-dessus des éléments.

Il est également possible de remplacer l'offre ORDER SOFTWARE par l'offre AUTO ORDER. Dans ce cas, le résultat sera commandé conformément aux paramètres du livre de référence, c'est-à-dire si le livre de référence indique que les groupes doivent être situés au-dessus des éléments, ils seront situés au-dessus.

Il est également possible d'obtenir une structure hiérarchique d'un ouvrage de référence à l'aide de totaux.


CHOISIR
Nomenclature.Code,
Nomenclature. Nom AS Nom,
Nomenclature.Prix d'achat

FROM Référence.Nomenclature AS Nomenclature


(Nomenclature.ThisGroup \u003d FALSE)

COMMANDER PAR Nom

Obtenir les totaux par hiérarchie

Pour obtenir des totaux par hiérarchie dans une requête, vous devez spécifier le mot-clé HIERARCHY dans la clause TOTALS BY après avoir spécifié le champ par lequel les totaux seront calculés. Un exemple de rapport "Chiffre d'affaires article" avec des totaux de réception par hiérarchie:


CHOISIR

DE

Nomenclature HIÉRARCHIE

Suite à cette demande, les totaux seront calculés non seulement pour chaque article, mais aussi pour les groupes auxquels appartient tel ou tel article.

Dans le cas où nous n'avons pas besoin de totaux pour les éléments, mais que nous n'avons besoin que de totaux pour les groupes, nous devons utiliser la construction ONLY HIERARCHY dans les totaux. Exemple:


CHOISIR
ComptabilitéNomenclatureTurnovers.Nomenclature AS Nomenclature,
ComptabilitéNomenclatureTurnovers.Nomenclature.Presentation,
ComptabilitéNomenclatureTurnover.QuantityTurnover AS QuantityTurnover
DE
Registre d'accumulation.Nomenclature de comptabilité.Revenus AS NomenclatureComptabilité
SOMME TOTAUX (NumberTurnover) BY
Nomenclature UNIQUEMENT HIÉRARCHIE

À la suite de cette demande, il y aura des enregistrements de totaux uniquement pour les groupes d'articles.

Références 1C - un objet spécialisé de l'arbre de métadonnées, qui sert à stocker des informations statiques de nature de référence. Par exemple, dans les configurations typiques, vous pouvez voir les vues suivantes:, Nomenclature, Employés, Immobilisations, etc. Les informations contenues dans les ouvrages de référence, en règle générale, ne changent pas souvent. Les livres de référence sont en outre utilisés dans presque tous les objets comptables en tant que section comptable ou information de référence.

Ci-dessous, nous considérerons la mise en place et la conception du livre de référence à partir du configurateur en utilisant l'exemple du livre de référence «Nomenclature».

Onglet de base

Dans l'onglet "Général", vous pouvez spécifier le nom, le synonyme, la présentation des objets, la description de l'objectif.

Onglet Hiérarchie de référence

Ici, la hiérarchie du répertoire est établie.

Il existe deux types de hiérarchie dans 1C 8.3 - " groupes et éléments"Et" éléments". Il diffère en ce que dans le premier cas, le parent (dossier) ne peut être qu'un dossier (groupe), et dans le second cas, le parent peut également être un élément.

"Placer les groupes en haut" - le drapeau est chargé d'afficher les groupes sous forme de liste.

Toujours dans les paramètres, vous pouvez limiter le nombre de groupes dans la hiérarchie des répertoires par le paramètre correspondant.

Onglet Propriétaires

Un répertoire peut être subordonné à un autre répertoire. Du point de vue de la configuration de 1C 8.3, cela signifie que l'attribut "Propriétaire" devient obligatoire pour l'élément subordonné. Un exemple d'un tel lien entre répertoires dans les configurations standard «Nomenclature - Unités de mesure», «Entrepreneurs - Contrats d'entrepreneurs».

Les objets de métadonnées suivants peuvent également être le propriétaire d'un répertoire:,.

Onglet Données

Obtenez gratuitement 267 didacticiels vidéo 1C:

L'onglet le plus important du point de vue d'un programmeur. Les détails du livre de référence y sont indiqués.

Le livre de référence contient un ensemble de détails standard qui ne sont pas édités par le programmeur 1C 8.2, une liste d'entre eux peut être consultée en cliquant sur le bouton "Détails standard":

Je m'attarderai sur chacun plus en détail:

  • Ce groupe - un attribut de type booléen indiquant s'il s'agit d'un groupe ou d'un élément. Disponible uniquement dans le répertoire hiérarchique. Remarque, la valeur de cette variable ne peut pas être modifiée en 1C: mode Entreprise.
  • Code - attribut, numéro de type ou chaîne (généralement une chaîne). Un numéro attribué automatiquement par le système. Généralement calculé comme (code précédent + 1). Je recommande d'utiliser le type chaîne, car le tri des valeurs numériques ne se fait pas comme prévu. Peut être utilisé comme vue de recherche dans une liste et dans les champs de saisie. Généralement utilisé pour rechercher un élément au fur et à mesure que vous tapez par chaîne. Si vous devez supprimer le champ Code, indiquez zéro dans la longueur de la ligne.
  • Nom - Attribut requis, type de chaîne. La longueur de ligne maximale est de 150 caractères. Peut être utilisé comme vue de recherche dans une liste et dans les champs de saisie. Généralement utilisé pour rechercher un élément au fur et à mesure que vous tapez par chaîne. Si vous devez supprimer le champ Nom, indiquez zéro dans la longueur de la ligne.
  • Parent - un attribut de type ReferenceLink.<ИмяТекущегоСправочника>... Disponible uniquement dans le répertoire hiérarchique. Indique le parent supérieur dans la hiérarchie. Si l'élément ou le groupe se trouve à la racine du répertoire, la valeur du répertoire est spécifiée.<ИмяТекущегоСправочника>.EmptyRef.
  • Propriétaire - lien vers l'élément propriétaire de l'élément courant (groupe) du catalogue. Disponible uniquement dans le livre de référence subordonné 1C.
  • Marque de suppression - un attribut booléen. Responsable de l'affichage de la «marque de suppression» dans le système. Un élément marqué pour suppression est considéré comme inutilisable, mais les anciens mouvements dans les documents peuvent y rester.
  • Lien - champ de type chaîne. Cet attribut stocke un identificateur d'objet unique - GUID. Ce que nous voyons dans le système comme un affichage visuel sous le nom de «lien» n'est qu'une représentation d'un objet. Impossible de changer.
  • Prédéfini - type boolean, affiche si l'élément est prédéfini, nous en parlerons plus tard. Impossible de changer.

L'onglet "Données" indique également la vue du livre de référence dans le système, jusqu'à la version 8.2.16 la vue ne pouvait être qu'un Code ou un Nom. Dans les dernières versions de la plateforme (à partir de 8.3), la vue peut être décrite indépendamment dans le module gestionnaire à l'aide du gestionnaire "ViewGetProcessing".

Onglet de numérotation

Ici, vous pouvez spécifier les paramètres du livre de référence en termes de numérotation. Il est recommandé d'utiliser la numérotation automatique. Le contrôle d'unicité est un indicateur qui permet de rendre le code unique si nécessaire. Si, avec l'indicateur défini, vous essayez d'écrire un élément de répertoire avec un code non unique, dans 1C, vous recevrez le message «Le code de répertoire est devenu non unique».

Une série de codes - détermine comment numéroter le répertoire, vous pouvez entrer la numérotation du répertoire dans le contexte du propriétaire. Par exemple, la contrepartie «Horns and Hooves» aura sa propre numérotation de contrat - «1, 2, 3» et ainsi de suite.

Onglet Formulaires

Les formulaires de référence sont décrits ici. Si la configuration est lancée à la fois en mode normal et en mode géré, il y aura alors deux onglets avec des formulaires par défaut: "principal" et "supplémentaire" - différent pour les applications régulières et gérées.

Sur cette page, il y a une propriété importante du livre de référence - "". C'est une fonction très pratique de 1C 8, qui permet, lors du remplissage des données dans le champ de saisie, de ne pas entrer dans le répertoire, mais de saisir son nom, son code, etc. et sélectionnez l'élément souhaité dans la liste déroulante. Cela ressemble à ceci:

Autre onglet

Sur l'onglet, vous pouvez accéder rapidement aux principaux modules du livre de référence - le module objet et le module gestionnaire.

Vous pouvez également définir une liste d'éléments de catalogue prédéfinis sur la page. Ce sont des éléments qui ne peuvent pas être supprimés en mode Entreprise. Les éléments prédéfinis sont accessibles directement dans le configurateur par nom, par exemple: Répertoires.Nomenclature.Service.

Cet onglet définit également le mode de blocage - automatique ou contrôlé. Utilisation de la recherche en texte intégral, ainsi que des informations de référence sur le livre de référence, disponibles en 1C: mode Entreprise.

LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir les derniers articles.
Email
Nom
Nom de famille
Comment voulez-vous lire The Bell
Pas de spam