Conversion de données 2.1. Les solutions sont toujours quelques-unes

Migration des données entre différentes configurations - la tâche n'est pas triviale. Résoudre les moyens comme toujours, mais pas tous sont optimaux. Essayons de comprendre les nuances de transfert de données et de choisir une stratégie universelle pour résoudre ces problèmes.

Le problème de la migration de données (nous sommes purement des produits de la société 1C) d'une décision à une autre apparurez-vous hier. La société "1c" comprend parfaitement comment les développeurs difficiles sont confrontés lors de la création de migrations. Il essaie donc d'aider les outils à tous égards.

Lors du développement de la plate-forme, la société a introduit un certain nombre d'outils universels, ainsi que de la technologie simplifiant le transfert de données. Ils sont incorporés dans toutes les solutions de type et le problème des migrations entre des configurations identiques en général résolues. La victoire confirme à nouveau l'intégration étroite des solutions typiques.

Avec des migrations entre des solutions non typiques, la situation est quelque peu difficile. Une large sélection de technologies permet aux développeurs de choisir de manière indépendante le problème de la résolution du problème de leur point de vue.

Considérons certains d'entre eux:

  • échange via des fichiers texte;
  • utilisation de plans d'échange;
  • etc.

Chacun d'entre eux a ses avantages et ses inconvénients. Si nous résumons, alors le principal minus sera varié. La mise en œuvre indépendante des algorithmes de migration est semée de coûts temporaires importants, ainsi qu'un long processus de débogage. Je ne veux même pas parler d'un soutien supplémentaire de ces décisions.

Complexité, coût élevé de l'escorte, poussé la société "1c" pour créer une solution universelle. Technologies permettant de simplifier le développement et le soutien des migrations. En conséquence, l'idée a été mise en œuvre comme une configuration distincte - "Conversion de données".

Conversion de données - Solution typique, auto-configuration. Toute personne qui a un abonnement «STI: Prof» peut complètement télécharger ce package à partir du site de support utilisateur ou de son disque. L'installation est effectuée par la méthode standard - ainsi que toutes les autres solutions typiques de 1c.

Maintenant, un peu sur les plus de la solution. Commençons par la chose la plus importante - l'universalité. La solution n'est pas affûtée à certaines versions de configurations / de plate-forme. Cela fonctionne également bien avec des configurations typiques et auto-écrites. Les développeurs sont disponibles à la technologie universelle et à une approche standardisée de la création de nouvelles migrations. L'universalité de la solution vous permet de préparer la migration même pour différentes plateformes "1C: Enterprise".

Le deuxième Bold Plus est des fonds visuels. Les migrations simples sont créées sans programmation. Oui, oui, sans une seule ligne de code! Ce n'est que pour cela en vaut la peine de passer du temps sur la technologie d'apprentissage, puis utilisez des compétences inestimables à plusieurs reprises.

Troisièmement les avantages, je voudrais noter le manque de restrictions sur la distribution des données. Le développeur lui-même sélectionne la méthode de livraison de données à la configuration du récepteur. Deux options sont disponibles dans la zone: Déchargement à un fichier XML et connexion directe à la base d'informations (COM / OLE).

Architecture d'apprentissage

Nous savons déjà que la conversion de données est capable de faire des merveilles, mais il n'est pas tout à fait clair que les avantages techniques sont exprimés. La première chose à apprendre est la base de toute migration de données (conversion) des règles d'échange. Règles d'échange - Fichier XML normal avec une description de la structure dans laquelle des données d'IB seront déchargées. Le traitement des services qui décharge / chargement analyse analyse les règles d'échange et sur leur fondation effectue le déchargement. Pendant le téléchargement, le processus inverse a lieu.

Configuration "CD" - une sorte de concepteur visuel, avec lequel le développeur crée les règles d'échange. Il ne sait pas comment décharger des données. Pour cela, des traitements de service externes supplémentaires sont responsables de la distribution de CD. Leur plusieurs (xx dans le numéro de nom de fichier - numéro de version):

  • Mdxxexp.epf. - Le traitement vous permet de télécharger une description de la structure de la base de données d'informations dans un fichier XML. La description de la structure est chargée dans le CD pour une analyse plus approfondie et la création des règles d'échange.
  • V8exchanxx.epf. - Charges / téléchargement des données de la base d'informations conformément aux règles d'échange. Dans la plupart des configurations typiques, le traitement est présent dans la boîte (voir l'élément de menu "Service"). Le traitement est universel et n'est pas attaché à certaines configurations / règles spécifiques.

Eh bien, maintenant sur la base de ce qui précède, nous définirons les étapes du développement d'une nouvelle conversion:

  1. Définition de la tâche. Il est nécessaire de comprendre clairement ce que les données sont nécessaires pour être transférées (à partir desquelles des objets de configuration) et surtout pour transférer.
  2. Préparation de la description des structures de configuration (source / récepteur) pour le téléchargement ultérieur sur le CD. La tâche est résolue par le traitement du service MDXXEXP.ePF.
  3. Chargement des descriptions préparées des structures dans IB.
  4. Création de règles d'échange utilisant des fonds visuels visuels.
  5. Effectuer / télécharger les données créées par les règles de conversion de données à l'aide du traitement V8EXchanXX.ePF.
  6. Déboguer les règles d'échange (si nécessaire).

Conversion la plus simple

Pour démontrer, nous avons besoin de deux configurations détaillées. J'ai décidé de rester à la version: "Gestion du commerce" de la 10ème édition et une petite décision auto-écrite. La tâche sera de transférer des données de la configuration typique "UT". Pour une brièveté, appelons la décision auto-conductrice "Récepteur" et la gestion du commerce "Source". Résolvez le problème Commençons par le transfert d'éléments du manuel "Nomenclature".

La première chose à faire est de jeter un coup d'œil au schéma de conversion de données et de relire la liste des actions que vous devez faire. Ensuite, lancez la configuration "source" et ouvrez le traitement du service MD82EXP.epf.

L'interface de traitement ne brille pas d'abondance des paramètres. L'utilisateur doit uniquement spécifier les types d'objets de métadonnées qui ne tomberont pas dans la description de la structure. Dans la plupart des cas, ces paramètres ne doivent pas changer, car Signification spéciale dans le déchargement des mouvements sur les registres d'accumulation (comme exemple) n'est pas.

Le mouvement est correct pour former pendant les documents au récepteur. Tous les mouvements seront effectués par le document indépendamment après le transfert. Le deuxième argument dans les paramètres par défaut consiste à réduire la taille du fichier avec déchargement.

Certains documents (en particulier dans des configurations typiques) forment des mouvements le long d'une variété de registres. Télécharger toute cette ferme fera un fichier XML résultant trop grand. Cela peut rendre difficile le transport ultérieur et le téléchargement sur le récepteur de base de données. Plus le fichier avec les données, plus il est nécessaire de le traiter. Pour ma pratique, j'ai eu l'occasion de faire face à des fichiers de déchargement indécencieux. Ces fichiers ont complètement refusé de comprendre avec des moyens standard.

Donc, laissez tous les paramètres par défaut et déchargez la description de la configuration dans le fichier. Une procédure similaire répète pour la deuxième base.

Ouvrez le CD et sélectionnez le menu principal "Références" -\u003e "Configurations". Le manuel stocke la description des structures de toutes les configurations qui aideront à être utilisées pour créer une conversion. Nous téléchargons la description de la configuration une fois, puis nous pouvons l'utiliser à plusieurs reprises pour créer diverses conversions.

Dans la fenêtre Répertoire, cliquez sur le bouton " Ajouter"Et dans la fenêtre qui apparaît, sélectionnez un fichier avec une description de la configuration. Cochez la case «Téléchargement dans une nouvelle configuration», nous célébrons la case et cliquez sur le bouton «Exécuter le téléchargement». Des actions similaires sont effectuées avec une description de la structure de la deuxième configuration.

Maintenant, tout est prêt à créer des règles d'échange. Dans le menu principal du CD, sélectionnez "Références" -\u003e "Conversion". Ajouter un nouvel élément. Dans la nouvelle fenêtre de création de conversion, vous devez spécifier: configuration de la source (SELECT UT) et configuration du récepteur (sélectionnez "Récepteur"). Ensuite, ouvrez l'onglet "Avancé" et remplissez les champs suivants:

  • le nom de fichier des règles d'échange - sous le même nom, les règles d'échange créées seront enregistrées. Le nom du fichier peut être modifié à tout moment, mais il est plus rentable de la définir maintenant. À l'avenir, cela gagnera du temps. J'ai appelé les règles de l'exemple de démonstration: "Règles-ut-to-priememnik.xml".
  • nom - Nom de la conversion. Le nom peut être absolument tout, j'ai limité la «démo. Ut to récepteur. "

Tout, appuyez sur "OK". Immédiatement avant que nous n'apparaissions une fenêtre avec la question de la création automatiquement de toutes les règles. Le consentement à une telle offre tentante donnera à la commande à un maître pour analyser automatiquement la description des configurations sélectionnées et générer indépendamment les règles d'échange.

Mettre immédiatement le point sur "et". Rien de sérieux ne sera capable de générer. Cependant, il ne vaut pas la peine d'escaler cette opportunité. Si vous devez effectuer l'échange entre des configurations identiques, les services de l'assistant seront tout à fait. Pour notre exemple, de préférence le mode manuel.

Considérez une fenêtre détaillée «Paramètres des règles d'échange». L'interface peut sembler déroutante - un grand nombre d'onglets, des commandes en peluche. En fait, tout n'est pas si difficile, vous commencez à vous habituer à cette folie après quelques heures de travail avec l'application.

À ce stade, nous sommes intéressés par deux onglets: «Règles de conversion d'objet» et «Règles de déchargement des données». Sur le premier, nous devons configurer les règles de conformité, c'est-à-dire Faites correspondre les objets de deux configurations. Sur la seconde, identifiez les objets possibles qui seront disponibles pour le déchargement de l'utilisateur.

Dans la seconde moitié de l'onglet "Règles de conversion d'objet", il existe un panneau supplémentaire avec deux onglets: "Conversion des propriétés" et " Conversion des valeurs". La première sélectionnera les propriétés (détails) de l'objet sélectionné et la seconde est nécessaire pour travailler avec des valeurs prédéterminées (par exemple, des éléments prédéfinis des livres de référence ou des éléments de dénombrement).

Excellent, créez maintenant des règles de conversion pour les livres de référence. Vous pouvez effectuer cette action par deux options: utilisez l'assistant de synchronisation d'objet ("bouton") ou ajoutez de la conformité pour chaque objet manuellement.

Pour économiser de l'espace, nous utilisons la première option. Dans la fenêtre de l'assistant, supprimez les cases à cocher du groupe " Documentation"(Nous ne sommes intéressés que par des livres de référence) et révéler le groupe" Répertoires". Faites défiler soigneusement la liste et regardez le nom des livres de référence pouvant être comparés.

Dans mon cas, ces livres de référence sont trois: nomenclature, organisation et entrepôts. Il y a toujours un livre de référence clients effectuant la même charge sémantique que " Contrepartie"De la configuration" UTAH.". Vrai, le maître ne pouvait pas les comparer en raison d'excellents noms.

Nous pouvons réparer cette défaillance seule. Trouver dans la fenêtre " Conformité des objets"Manuel" Les clients", Et dans la colonne" Source ", choisissez le répertoire" Contreparties ". Définissez ensuite la case à cocher dans la colonne "Type", puis cliquez sur le bouton "OK".

L'assistant de synchronisation d'objet proposera de créer automatiquement les règles de convertir les propriétés de tous les objets sélectionnés. La comparaison des propriétés se produira par des noms et pour notre démonstration, cela sera suffisant, d'accord. La prochaine question sera la proposition de créer les règles de déchargement. Accepter-lui.

La base des règles d'échange est prête. Nous avons choisi des objets pour la synchronisation et les règles de convertissage des propriétés et des règles de déchargement ont été créées par une machine. Enregistrez les règles d'échange dans le fichier, puis ouvrez la «Source» IB (dans mon cas c'est UT) et lancez le traitement de service dedans. V8exchan82.epf..

Tout d'abord dans la fenêtre de traitement, sélectionnez les règles d'échange créées par nous. La question des règles de téléchargement répond positivement. Le traitement analysera les règles d'échange et créera l'objet d'objets disponibles pour le déchargement. Pour cet arborescence, nous pouvons installer toutes sortes de nœuds de sélection ou d'échange, que vous souhaitez sélectionner des données. Nous voulons décharger absolument toutes les données. Il n'est donc pas nécessaire d'installer les filtres.

Une fois le processus de déchargement des données terminé dans le fichier, allez à IB " Destinataire". Il est également ouvert de traitement V8exchan82.epf., Seulement cette fois, allez à l'onglet "Download Data". Sélectionnez un fichier avec des données et appuyez sur le bouton "Télécharger". Toutes les données ont été transférées avec succès.

Tâches du monde réel

Le premier exemple de démonstration pourrait être trompeur. Tout semble assez simple et logique. En fait, ce n'est pas vrai. Dans le travail réel, les tâches se produisent, pour résoudre les moyens visuels (sans programmation) sont difficiles ou totalement impossibles.

Afin de ne pas décevoir à la technologie, j'ai préparé plusieurs tâches réelles. Avec eux, vous allez certainement rencontrer lorsque vous travaillez. Ils n'ont pas l'air si trivial et il s'agit de la conversion des données sous un nouvel angle. Considérez soigneusement les exemples présentés et utilisez hardiment les deux snappets lors de la résolution de problèmes réels.

Numéro de tâche 1. Remplir les détails manquants

Supposons que nous ayons besoin de reporter de l'UT un répertoire " Contrepartie". Dans le récepteur pour cela, il existe un livre de référence similaire "Clients". Il convient parfaitement à stocker des données, mais il a des conditions requises " Organisation«, Vous permettant de séparer les contreparties sur la propriété de l'organisation. Par défaut, toutes les contreparties doivent être liées à l'organisation actuelle (elle peut être obtenue à partir de la simonon constante).

Les solutions pour la tâche en sont plusieurs. Nous examinerons la possibilité de remplir la requis " Organisation"DROITE dans la base de données" Destinataire", C'est à dire. Au moment de télécharger des données. L'organisation actuelle est stockée dans la constante. Par conséquent, il n'y a pas d'obstacles à l'obtention de cette valeur. Je vais découvrir la règle de conversion d'objet (ci-après PKO) " Les clients"(Double-cliquez sur l'objet) et dans l'assistant de configuration, nous passons à la section" Manipulateurs d'événements ". Dans la liste des gestionnaires trouvent " Après le téléchargement”.

Nous décrivons le code d'obtention de l'organisation actuelle, suivie de l'attribution d'accessoires. Au moment du gestionnaire après le téléchargement, l'objet sera entièrement formé, mais pas encore enregistré dans la base de données. Personne ne nous interdit de le changer à sa discrétion:

Si ce n'est pas un objet. L'usine est alors l'objet. Organisation \u003d constante. Costorganisation. Versez (); Terminé;

Avant de remplir les accessoires " Organisation»Assurez-vous de vérifier la valeur des accessoires" Ce groupe" Pour un livre de référence " Les clients»Installé un signe de hiérarchie, le chèque de groupe est donc nécessaire. De même, le remplissage de tout détail. Assurez-vous de lire le certificat pour d'autres paramètres du gestionnaire " Surcharge" Par exemple, parmi eux un paramètre " Renoncement" S'il est attribué à la valeur de "vérité", l'objet de la base de données ne sera pas enregistré. Ainsi, il semble limiter les objets à enregistrer au moment du chargement.

Numéro de tâche 2. Détails dans le registre de l'information

Dans le répertoire " Contrepartie"Configurations UT, il y a des détails" Acheteur"Et" Fournisseur". Les deux requis ont le type " Booléen"Et servir à déterminer le type de contrepartie. Dans ib " Destinataire", Manuel" Les clients"Il n'y a pas de détails similaires, mais il y a un registre d'informations" Naturel". Il effectue une fonction similaire et peut stocker plusieurs signes pour un client. Notre tâche consiste à transférer les valeurs des détails en enregistrements distincts des informations.

Certains moyens visuels ici, malheureusement, ne pas faire face. Commençons par le petit, créez un nouveau PKO pour le registre de l'information " Naturel". Ne spécifiez rien comme la source. De la création automatique de règles de déchargement, refusez.

La prochaine étape formera les règles de déchargement. Allez dans l'onglet approprié et cliquez sur le bouton " Ajouter". Dans la fenêtre Règles de réglage, remplissez:

  • Méthode d'échantillonnage. Nous changeons à l'algorithme arbitraire;
  • Règle de conversion. Choisissez un registre de "vitesse";
  • Code (nom) Règles. Écrire comme "liants de décharge";

Maintenant, vous devez écrire du code pour la sélection des données pour le déchargement. Ici, nous aiderons le paramètre " Groppé". Nous pouvons mettre une collection avec un ensemble de données préparé. Paramètre " Groppé"Peut prendre des valeurs différentes - le résultat de la demande, de l'échantillonnage, de la collecte de valeurs, etc. Nous l'initialisons sous la forme d'une table de valeurs avec deux colonnes: client et type client.

Vous trouverez ci-dessous le code du gestionnaire d'événements " Avant le traitement". Il initialise le paramètre " Groppé"Avec le remplissage ultérieur de données de l'annuaire" Contrepartie". Il convient de faire attention au remplissage de la colonne " Tipcalent". Dans "UT", nous avons des signes de "booléen" et dans la liste des destinataires.

À ce stade, nous ne pouvons pas les conduire au type souhaité (ce n'est pas dans l'UT), donc je vais toujours partir sous la forme de lignes. Cela ne peut pas être fait, mais je souhaite immédiatement montrer comment conduire au type manquant de la source.

Élu \u003d nouvelles signes de table (); Échantillonné. Des boutures. Savourement ("client"); Échantillonné. Des boutures. Savourement ("Tipcalent"); Sweeseprantspravenchik \u003d références. Protecteurs. Clair (); Tandis que l'échantillonnage est la reddition. Le cycle suivant (), si l'échantillon est une auto-ligne. Puis continuez; Terminé; Si l'échantillon est un spa. Le mousseur alors le journal \u003d élu. Ajouter (); Nouvelle stand. Cly Heaten \u003d Sampledinapychnik. Lien; NewsTraille. Typcleate \u003d "acheteur"; Terminé; Si l'échantillon est une application de la loi. Le partisan puis le journal \u003d élu. Ajouter (); Nouvelle stand. Cly Heaten \u003d Sampledinapychnik. Lien; Newstock.templant \u003d "fournisseur"; Terminé; Endyclycle;

Enregistrez la règle de déchargement des données et revenez à l'onglet » Règles pour la conversion d'objets". Ajouter pour obtenir des informations sur les informations " Naturel"Règles de conversion de propriété: type client et type client. La source laissera vide et dans le gestionnaire des événements "avant de décharger" écrire:

// pour la valeur de la propriété "client" \u003d source. Climat; // pour les propriétés du "picturent" si la source. Claque \u003d "acheteur" alors expression \u003d "transferts. Lispuits. La source" inspectée la source. Clint \u003d "Fournisseur" puis expression \u003d "Supplément"; Terminé;

Inscription Les détails remplissent sur la base des données échantillonnées. Client Nous passons simplement sous la forme d'un lien et le type de client est écrit sur le " Expression" Les données de ce paramètre seront interprétées dans le récepteur et lors de l'exécution des accessoires seront complétés avec la valeur correcte de la liste.

Tous, les règles d'échange sont prêtes à l'emploi que l'exemple considéré s'est avéré être assez universel. Cette approche est souvent utilisée lors du transfert de données des configurations créées sur la plate-forme 7.7. Un exemple brillant est le transfert de détails périodiques.

Tâche numéro 3. Trucs avec des pièces tabulaires

Souvent, des tâches rencontrées, nécessitant les lignes d'une pièce de table dans plusieurs. Par exemple, dans la configuration d'origine du service et que les marchandises sont établies dans une partie de tableau, le stockage du récepteur de ces entités est divisé. Un moyen visuel, la tâche n'est à nouveau pas résolue. Ici, comme base, il convient de prendre la solution de la deuxième tâche.

Nous établissons la règle de déchargement des données, spécifiant un algorithme arbitraire et dans le gestionnaire "Avant Désload", écrivez une demande pour obtenir des données de la partie tabulaire.

Pour économiser de l'espace, je ne donnerai pas au code (vous pouvez toujours faire référence à la source) Demande - il n'y a rien d'inhabituel. L'échantillon résultant est juré et les résultats triés sont placés dans le paramètre déjà familier " Groppé". En tant que collection, il est commode d'utiliser à nouveau la table des valeurs:

Élu \u003d nouvelles signes de table (); // Il y aura une autre partie de table de l'échantillonnage. Boucts. Ajouter ("marchandises"); // Ici aussi, il y aura une partie de la table de l'échantillonnage. Colonges. Auvlux ("Services"); Verdannovie. Découpes. Savourement ("link");

Tâche numéro 4. Transfert de données au fonctionnement

Si plusieurs comptes sont utilisés dans l'organisation, il y aura plus tôt ou une autre migration de données, suivie de la formation de câblage.

Dans la configuration " Bp"Il y a un document universel" Opération«Et il est idéal pour la formation d'un plus grand nombre de câbles. Ce n'est qu'une tâche n'est pas une tâche - le document est effectué par la ruse, ce qui n'est donc pas transféré.

Un exemple de cette conversion peut être trouvé dans le code source de l'article. Le volume du code s'est avéré assez grand, il n'ya donc aucun sens de le publier à l'article. Je dirai seulement que le déchargement utilise à nouveau un algorithme arbitraire dans les règles de déchargement de données.

Tâche numéro 5. Synchronisation des données sur plusieurs détails

Nous avons déjà examiné plusieurs exemples, mais je n'ai toujours pas parlé de la synchronisation des objets pendant le transfert. Nous allons imaginer que nous devons reporter des contreparties et certains d'entre eux sont certainement disponibles dans la base de données. Comment transférer des données et empêcher l'avènement du chêne? Sur ce compte, le CD offre plusieurs façons de synchroniser des objets portables.

Le premier est sur un identifiant unique. De nombreux objets ont un identifiant unique qui garantit l'unicité de la table. Par exemple, dans le répertoire " Contrepartie«Il ne peut y avoir de deux éléments avec les mêmes identifiants. CD le rend calculé et pour tous les PKO créés immédiatement par défaut, la recherche de l'identifiant est activée. Lors de la création de PKO, vous deviez faire attention à l'image de la loupe à proximité du nom de l'objet.

Synchronisez sur un identifiant unique - une manière fiable, mais elle n'est pas toujours appropriée. Lors de la combinaison de livres de référence " Contrepartie"(De plusieurs systèmes différents), il ne suffit pas qu'il aidait.

Dans de tels cas, il est correct de synchroniser des objets dans plusieurs critères. Les contreparties sont correctes pour rechercher l'auberge, la boîte de vitesses, le nom ou diviser la recherche de plusieurs étapes.

La conversion de données ne limite pas le développeur dans la détermination du critère de recherche. Considérer un exemple abstrait. Devons synchroniser des livres de référence » Contrepartie"Des bases d'informations différentes. Préparez PKO et dans les réglages des règles pour convertir l'objet pour définir la case à cocher " Continuez à rechercher des champs de recherche si le récepteur ne se trouve pas sur l'identifiant". Avec cette action, nous avons immédiatement défini deux critères de recherche - en fonction de l'identifiant unique et des champs arbitraires.

Champs Nous avons le droit de choisir eux-mêmes. Notant l'auberge, PPC, nous indiquons immédiatement plusieurs critères de recherche. Commodément? Tout à fait, mais encore une fois cela ne suffit pas. Et que voulons-nous modifier les critères de recherche? Par exemple, nous recherchons d'abord un forfait Inn + PPC, et si nous ne trouvons rien, nous commençons à torturer le bonheur avec le nom.

Un algorithme similaire est entièrement mis en œuvre. Dans le gestionnaire d'événements " Champs de recherche"Nous pouvons spécifier jusqu'à 10 critères de recherche et pour chacun d'eux pour déterminer leur composition des champs de recherche:

Si le numéro Canvaspectory \u003d 1, puis les noms d'aviron \u003d "Inn, PPC"; Inversité au numéro du téléphone \u003d 2, puis la rampe \u003d "nom"; Terminé;

Les solutions sont toujours quelques-unes

Toute tâche a plusieurs solutions et transfert de données entre différentes configurations aucune exception. Chaque développeur a le droit de choisir son chemin de solution, mais si vous devez constamment développer des migrations de données complexes, je vous recommande vivement de faire attention à la configuration "". Devons d'abord investir des ressources (heure) dans la formation, mais ils vont payer au premier projet plus ou moins grave.

À mon avis, la société 1C est indistinct de contourner l'application de la conversion de données. Pour toute l'existence de la technologie, un seul livre est sorti: "1C: Enterprise 8. Conversion des données: échange entre des solutions appliquées." Le livre est assez vieux (2008), mais il est toujours souhaitable de vous familiariser avec elle.

La connaissance des plates-formes est encore nécessaire

»- Outil universel, mais si vous envisagez d'appliquer cela pour créer des migrations de données à partir de configurations développées pour la plate-forme 1C: Entreprise 7.7, vous devrez ensuite passer une connaissance du temps avec la langue intégrée. La syntaxe et l'idéologie de la langue sont très différentes, vous devez donc passer du temps à l'apprentissage. Le reste du principe reste le même.

Conversion des données 2.0 et 2.1 - Configuration technologique de la société 1C, mise en œuvre sur la version de la plate-forme de 8,1 à 8.3.

La tâche principale de l'instrument est d'écrire les règles d'échange entre les solutions appliquées 1C 8 et 7. La version actuelle de la conversion de données est de 3,0.

La conversion de données est une configuration très utile, avec elle, il est possible de résoudre non seulement la question du transfert d'informations d'une base d'informations à une autre, mais également, par exemple, de convertir des informations dans une base.

La configuration est très pratique à utiliser quand.

La conversion de données sera utile à tout programmeur: l'existence des compétences de la création des règles d'échange est un plus grave aux compétences professionnelles.

Pour étudier le travail avec la configuration, la solution convient parfaitement aux tâches pratiques. Essayez de trouver une tâche vous-même, par exemple: Transférer toutes les informations d'une base à une autre, tournez le document de mise en œuvre dans le document de réception, «Drive» Les soldes actuels sur la comptabilisation de la "introduction" et d'autres tâches.

Il sera très utile de comprendre le règlement «typique» de l'échange de 1 ° C 8.3, vous pouvez souvent trouver des exemples intéressants de tâches.

Pour comprendre les bases, vous aurez besoin de matériaux, considérez-les ci-dessous.

Instructions vidéo pour la conversion

Paramètres d'échange de données AZA en 1C à l'aide de la configuration "1C Data Data" sur l'exemple, voir la vidéo:

Matériel, manuels scolaires pour l'étude de la conversion de données 1C 2.0

Les matériaux et la documentation sur le réseau ne sont pas trop grands, j'ai essayé de collecter les matériaux les plus importants et les plus intéressants:

0. Tout d'abord, je conseille le parcours vidéo gratuit d'Ilya Leontiev, il est disponible sur relier.

1. Je conseillerais d'abord utiliser l'aide intégrée dans la configuration. Il est vraiment joliment écrit et mis en œuvre avec compétence techniquement:

2. La deuxième source d'information la plus importante est http://www.mykod.info/ (site fermé) spécialisé sur la conversion de données. Là, vous pouvez télécharger un grand nombre de matériaux de conversion.

3. Séparément, je voudrais souligner le tutoriel - (auteur - Olga Kuznetsova).

1. Entrée.

2. Ce dont vous avez besoin: Configuration 1C: Conversion des données 2. * et traitement de l'emballage. Par exemple, nous prenons la configuration 1C: Gestion des échanges 11 et 1C: BP 3. *.

Donc, pour développer des règles de déchargement de données dans 1C, la configuration 1C sera requise: Conversion des objets 2, ainsi que le traitement inclus dans l'emballage.

Par exemple, nous avons déjà déployé la base de la conversion et la course à pied.

Nous écrivons le développement des règles d'échange entre la configuration de 1C: Gestion des échanges 11 et 1C: comptabilité d'entreprise 3 (règles de change UT / Buch).

3. Nous aurons besoin de traitement pour décharger la structure des métadonnées et des échanges.

La première chose à faire pour le développement est des fichiers avec la structure de métadonnées. Ceci est fait à l'aide du traitement de la structure de téléchargement des métadonnées incluses dans le package de conversion d'objet.

En fait, dans le répertoire de configuration déballé pour les configurations sur des formulaires gérés, nous sommes intéressés par le traitement MD83EXP.epf. Si vous devez décharger des configurations sur des formulaires ordinaires, le traitement MD82EXP.ePF est utilisé. Ceci est si, par exemple, vous devez obtenir une structure à partir de configurations telles que 1C: UT 10, 1C: Contrôle entreprise de fabrication 1.3, 1C: Automatisation complète 1.1, 1C: ZUP 2.5 et ainsi de suite.

Ensuite, pour décharger des données de téléchargement en 1C en utilisant nos règles, vous devez traiter "Universal Data Exchange en format XML" V8EXchan83.epf pour des configurations sur des formulaires gérés tels que 1C: Gestion des échanges 11. *, 1C BP 3, 1C: ERP 2. * Et similaire. Et en conséquence v8exchan83.epf - pour des configurations sur des formes ordinaires.

4. Déchargement de la structure de métadonnées de la configuration 1C: Gestion des échanges 11.3 et 1C: Comptabilité de la société 3.0. *

Commençons par le déchargement de la structure de métadonnées à partir de la configuration 1C: comptabilité d'entreprise 3.
Traitement ouvert MD83EXP.epf.

Le formulaire de traitement présente des paramètres supplémentaires, où nous pouvons activer ou désactiver le paramètre de décharger des registres et des mouvements en 1c. Il existe également un choix où le déchargement sera: sur le serveur 1C ou "sur le client". Indiquez le nom du fichier dans lequel la structure de données est déchargée. De même, nous effectuons le déchargement de la structure du contrôle de la configuration des métadonnées du commerce 11.

Maintenant, vous devez télécharger la configuration vers la base de données de conversion. Cet élément peut provenir de la liste des configurations et de la liste de conversion. Nous ferons la charge facile du bureau:

Dans la boîte de dialogue, chargez la structure de BP:

Et de la même manière - la structure de la gestion du commerce.

À la fin du téléchargement, une boîte de dialogue apparaît où vous pouvez spécifier un nom pratique pour vous.

6. Création de règles de conversion en 1C sur un exemple spécifique de la tâche.

Ensuite, accédez à "Définition des règles d'objet", où nous créons un nouveau paramètre.
Dans la boîte de dialogue Création de la conversion, sélectionnez la configuration "Source" et la configuration du récepteur (qui a précédemment téléchargé), puis cliquez sur OK.

Étant donné que cet article envisageait de montrer la création de "à partir de zéro" et de "sans ordures", je vous rappelle que vous ne créez rien automatiquement. Pas de prototypes.

Dans cette boîte de dialogue, nous n'effectuerons rien, cliquez simplement sur "Fermer".

Créez les règles de déchargement non un document dans une, mais une vue d'une autre, par exemple, un document de réalisation du service d'UT 11 avec les livres de référence nécessaires au document AdLaimetovarovatov Services de BP 3.

Donc, créez une nouvelle PKO (une règle de conversion d'objets en 1c)

Nous choisissons la source de la mise en œuvre du service et du récepteur de l'industrie admiration et cliquez sur OK.
Dans le même temps, une boîte de dialogue apparaît, là où nous refusons à nouveau de créer automatiquement un PC (règles de conversion de propriétés). Ensuite, choisissez uniquement le nécessaire.

Mais sur la proposition de créer une PVD (règles de déchargement de données) répond à «Oui».

Les PVD créés, qui seront reflétés dans le traitement de l'échange XML universel pour sélectionner:

Les mêmes règles de conversion des règles seront créées avec des règles de conversion de propriétés vides.

De plus, on peut voir que le PKO par défaut est invité à rechercher un identifiant d'objet interne. Cela indique une loupe près de PKO. Nous ferons notre recherche et la faire par numéro de document et date au début de la journée.

Supprimer la recherche par uio:

Commençons maintenant à faire les propriétés nécessaires de l'objet. Pour cela, cliquez sur "Synchronisation" (étiquette "1" sur la capture d'écran). Nous supprimons la création récursive des règles ("2"). Supprimer tous les détails marqués ("3"). Et choisissez-vous ce dont nous avons besoin.

Par exemple, choisissez le nécessaire:

J'attire l'attention sur le fait que nous ferons une contrepartie de PCS dans l'organisation et de l'organisation de la contrepartie, et de comparer encore des détails qui ne coïncident pas par nom, par exemple, la "monnaie" et "Document de la monnaie".

Où nous voyons qu'il n'y a pas de règles de conversion.

Commençons par des détails pour réussir et décrire. Premièrement, nous configurons la recherche du document que j'ai écrit précédemment, en effectuant le déchargement et la recherche de la date de la date, et nous allons effectuer la substitution de numérotation. Les trois premiers caractères seront remplacés par votre préfixe "UTB". Et puisque dans le BP et votre numérotation de 11 caractères, nous effectuons un numéro composite: notre préfixe et 8 caractères de la source. Exemple sur l'écran ci-dessous.

Documents de déchargement, nous ne dépensons toujours pas et sans mouvement. Nous supposons que les documents seront dans le récepteur après avoir vérifié l'utilisateur.

Pour ce PKS, installer, comme non pris, 0 ou 1, nous utilisons comme boolevo.

Sur l'exemple de la monnaie, nous créons une règle de conversion d'objet pour les PC. Dans le même temps, nous croyons que dans les deux bases de devises, et ils doivent se synchroniser dans le code. Par conséquent, dans les devises PKO ne créera pas tous les PC, mais n'ajoute que le code à rechercher. Ceux. De la proposition de créer un PKS pour l'installation - nous refusons.

Le document PKO pour la PKS a déclaré la règle de conversion créée. Et la règle par défaut elle-même est offerte par l'identifiant unique. Corrigez, faites une recherche par code et définissez la propriété pour ne pas créer un nouvel objet.

En conséquence, nous avons la possibilité:

En outre, par analogie, nous créons PKO et PKK et PKK pour les détails restants. Et la recherche de l'organisation selon la contrepartie et, au contraire, définir l'auberge Cela ressemble à cela avec des détails minimaux (vous pouvez ajouter si nécessaire).

Pour les traités de l'entrepreneur PCU, nous effectuons une recherche sur la contrepartie, le nom et le propriétaire de PC.

Voyons voir comment spécifier dans les PC la valeur souhaitée dans le type de liste. Par exemple, la "vision" requise. Ici, vous pouvez utiliser différentes conditions et substituer les valeurs. Par exemple, nous devons "le type d'opération" non chargé "Marchandises", dans ce cas suffisamment pour écrire la valeur souhaitée de la chaîne dans le "front".

Vous trouverez ci-dessous comment installer sans difficultés et dans la plupart des cas, PKS pour plusieurs considérations via des considérations, des termocamounties, des comptes comptables.

Pour la nomenclature PKO, laissez une recherche par un identifiant unique interne. Mais faites attention à la façon dont vous pouvez remplacer votre groupe. Par exemple, nous convenons qu'une nouvelle nomenclature de la configuration 1C sera déchargée: Gestion du commerce 11, mais il est nécessaire que la nomenclature soit assemblée dans un groupe spécifique "NashIgroup".

Pour mettre en œuvre cette tâche, créez un autre PKO. Nous l'appellerons la "nomenclature", qui indiquera les PC du parent dans la règle de conversion.

Nous établissons deux recherches: par nom, où le nom est sévèrement spécifié à notre groupe et la fonctionnalité obligatoire du «Groupe ETCO» est en vérité.

Puisque nous avons décidé que nous avons toute la nomenclature tombe dans notre groupe, il n'est pas nécessaire de décharger pour décharger des groupes de l'UT 11. Pour ce faire, dans la PKO, la nomenclature du gestionnaire des événements "avant-lafense", nous avons mis Le filtre que vous n'avez pas besoin de décharger les groupes d'échecs \u003d Source. Ce groupe; ".

Dans PVD (Règles de téléchargement de données) Filtre de réalisation, ajoutez un filtre à ne pas être déchargé marqué pour supprimer des documents. Pour ce faire, dans la PVD dans les manutentionnaires des événements "avant le périphérique", le filtre "refus \u003d objet. Présentation;".


Enregistrez les règles développées dans le fichier.


7. Sommes-nous: décharger et télécharger des données à l'aide des règles d'échange de données développées.

Ouvert en 1C: Gestion des échanges 11 Traitement "Exchange de données universel au format XML" V8EXchan83.epf.

Le déchargement a passé, nous faisons maintenant la charge en 1C: la comptabilité de la société 3.


Chargement passé. Vérifiez ce qui a démarré. Donc, le document est chargé, comme nous l'avons atteint - notre organisation est chargée dans la contrepartie et la contrepartie de l'organisation. Comptes de comptabilité Tous téléchargés et installés. Le numéro de document s'est avéré avec notre préfixe et au début de la journée. Tous les détails prescrits sont remplis.

Vérifiez le téléchargement de la nomenclature. Nous voyons que tout s'est avéré que nous avions prévu.


Nous avons créé et rempli de détails comme nous le pensions. Il existe de nombreuses subtilités dans la conversion et certaines choses simples mais nécessaires qui aident à écrire avec précision la conversion. Et cela vous permet de minimiser les erreurs, de ne pas gâcher les données existantes et de vous débarrasser des ordures en excès. C'est l'un des exemples les plus simples. Vous pouvez également faire une conversion d'un objet dans de nombreux ou vice versa, en une.

Il existe maintenant une conversion de données 3, elle résout d'autres tâches. Par conséquent, la conversion 2 est également nécessaire. Bonne chance à tout le monde dans l'apprentissage et l'apprentissage.

Bien sûr, si vous êtes programmeur et c'est le travail principal, vous pouvez essayer d'écrire la conversion. Mais sinon, cela vaut la peine d'apprécier votre temps dans votre domaine d'activité, et cette tâche est invitée à effectuer des professionnels.



erreur:Le contenu est protégé !!