Comment ouvrir par programme un traitement externe ? 1c comment ouvrir le traitement externe

Considérons dans cet article instructions étape par étape sur la création de traitements externes dans 1C 8.3 dans le mode application gérée, en conséquence, nous utiliserons des formulaires gérés. Et surtout, nous apprendrons comment le connecter au mécanisme de « traitement externe » des configurations 1C construit sur la bibliothèque sous-systèmes standards version 2.0 et ultérieure.

La tâche sera la suivante : créer le plus simple traitement externe, qui effectuera une action de groupe sur le répertoire « Article », à savoir définir le pourcentage de taux de TVA sélectionné pour le groupe d'articles spécifié.

Pour ce faire, nous effectuerons immédiatement les paramétrages nécessaires dans le programme (nous envisageons la configuration 1C 8.3 : « Enterprise Accounting 3.0 » sur formulaires contrôlés).

Cocher cette case nous donne la possibilité d'utiliser un traitement externe.

Création d'un nouveau traitement externe dans 1C 8.3 à l'aide d'un exemple

Passons maintenant au configurateur. Dans le menu "Fichier", sélectionnez "Nouveau...". Une fenêtre de sélection du type de fichier à créer s'ouvrira. Sélectionnez « Traitement externe » :

Une nouvelle fenêtre de traitement externe s'ouvrira. Donnons-lui un nom tout de suite. Il sera proposé lors de la sauvegarde du traitement sur disque :

Ajoutons un nouveau formulaire de traitement contrôlé. Nous indiquons qu'il s'agit d'une forme de traitement et c'est la principale :

Nous aurons deux détails sur le formulaire :

  • Groupe Nomenclature – lien vers l'annuaire « Nomenclature » ;
  • SelectVATRate – lien vers le transfert du taux de TVA.

Nous créons les détails dans la colonne « Propriétés » dans la fenêtre supérieure droite. Faites-les glisser avec la souris dans la fenêtre supérieure gauche. Les nouveaux détails devraient apparaître immédiatement sur le formulaire ci-dessous.

L'ordre des détails peut être modifié à l'aide des flèches « Haut » – « Bas » :

Obtenez 267 leçons vidéo sur 1C gratuitement :

Il ne reste plus qu'à ajouter le bouton « Installer ». Dans les formulaires gérés, vous ne pouvez pas simplement ajouter un bouton au formulaire. Même si vous l’ajoutez à la structure des éléments du formulaire, il ne sera pas visible sur le formulaire lui-même. Le bouton doit être associé à la commande qu'il va exécuter. Allez dans l'onglet « Commandes » et ajoutez la commande « Définir le taux de TVA ». Dans les propriétés de la commande, créez une action. Sélectionnez le gestionnaire de commandes « Sur le client ». Une commande peut également être ajoutée au formulaire en la faisant simplement glisser dans la section contenant les éléments du formulaire.

Une procédure du même nom sera créée dans le module formulaire. Dans celui-ci, nous appellerons la procédure sur le serveur :

&SurClient

Procédure Définir le taux de TVA (commande)

SetVATRateOnServer();

Fin de la procédure

Dans la procédure sur le serveur, nous rédigerons une petite requête et des actions liées à la fixation du taux de TVA :

&Sur le serveur

Procédure SetVATRateOnServer()

Demande = Nouvelle demande ;
Demande.Texte =
"CHOISIR
| Nomenclature.Lien
|DE
| Annuaire.Nomenclature AS Nomenclature
|OÙ
| Nomenclature.Link DANS LA HIÉRARCHIE (&Groupe de Nomenclature)
| ET NON Nomenclature.MarkDeletion
| ET NON Nomenclature Ceci est un groupe » ;

Request.SetParameter("Groupe d'articles", Groupe d'articles);
ResRequest = Request.Execute();
SelectRecordDet = ResRequest.Select();

Tandis que la boucle SelectRecordDet.Next()

Tentative
SprNomObject.Write();
Exception
Report("Erreur d'écriture de l'objet """ + SprNomObject + """ !
|» + DescriptionErreur());
FinTentative ;

Fin du cycle ;

Fin de la procédure

On revient dans l'onglet « Formulaire », on ajoute un bouton au formulaire et on l'associe à la commande :

Ainsi, notre traitement est prêt à l’emploi. Pour l'appeler, en mode « 1C Enterprise », vous devez vous rendre dans le menu « Fichier » - « Ouvrir » et sélectionner le fichier créé.

Cependant, travailler dans ce mode est pratique pour le traitement de débogage, mais n'est pas entièrement adapté à l'utilisateur. Les utilisateurs sont habitués à avoir tout « à portée de main », c'est-à-dire dans la base de données elle-même.

C'est à cela que sert la section « Rapports et traitements supplémentaires ».

Mais pour y ajouter notre traitement, nous devons d'abord lui donner une description et indiquer au programme ses propriétés.

Description de la fonction « Informations sur le traitement externe »

Je vais donner un exemple du contenu de cette fonction. Il doit être exportable et, à ce titre, situé dans le module de traitement :

Fonction InformationOnExternalProcessing() Exportation

DataForReg = Nouvelle Structure();
DataForReg.Insert("Nom", "Paramètre du taux de TVA");
DataForReg.Insert("SafeMode", True);
DataForReg.Insert("Version", "ver.: 1.001");
DataForReg.Insert("Information", "Traitement de fixation du taux de TVA dans le répertoire Nomenclature");
DataForReg.Insert("View", "AdditionalProcessing");

CommandTable = NouvelleValueTable ;
TabZnCommands.Columns.Add("Identifiant");
TabZnCommands.Columns.Add("Utilisation");
TabZnCommands.Columns.Add("Vue");

NewRow = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewRow.Use = "OpenForm" ;
NewRow.View = "Traitement ouvert";
DataForReg.Insert("Commandes", TabZnCommands);

Renvoie DataForReg ;

FinFonction

Pour mieux comprendre quels champs de la structure des données d'enregistrement doivent être utilisés, regardons les détails du répertoire « Rapports et traitements supplémentaires » :

Comme vous pouvez le constater, tout est assez simple. Un seul attribut ne correspond pas : « Option de lancement » – « Utilisation ». Si nous regardons le code de l'un des modules communs, nous verrons comment apparaissent un certain nombre de ces champs :

Pour déterminer quels champs d'une structure sont requis, vous pouvez d'abord ne pas la décrire, simplement en créer un vide, puis utiliser le débogueur. Si vous tracez les modules lors de l'enregistrement du traitement, vous verrez immédiatement quels champs sont obligatoires et lesquels ne le sont pas.

Connexion du traitement externe dans 1C 8.3

Accueil Pour les développeurs débutants Apprendre à programmer

Comment ouvrir par programme un traitement externe ?

Dans la version 8.2 l'application ne fonctionne pas directement avec fichiers locaux situé sur l'ordinateur. Les fichiers doivent être sur le serveur.

Par conséquent, pour ouvrir le traitement externe, vous devez effectuer la séquence d'actions suivante :

  • transférer le fichier de traitement externe vers le serveur,
  • connecter le traitement externe,
  • ouvrez le formulaire de traitement externe.
&Sur le traitement des commandes de la procédure client (paramètre de commande, paramètres d'exécution de commande) // Placer le traitement dans le stockage temporaire Storage Address = "";

Résultat = PlaceFile(StorageAddress, "C:\ExternalProcessing.epf", False); ProcessingName = ConnectExternalProcessing (StorageAddress);// Ouvre le formulaire du traitement externe connecté OpenForm("ExternalProcessing."+ProcessingName +".Form"); EndProcedure &OnServer Function ConnectExternalProcessing(StorageAddress) Return ExternalProcessing.Connect(StorageAddress); FinFonction

Pour transférer un fichier vers le serveur, il doit être placé dans un stockage temporaire. Pour cela, d'abord sur le client, dans le gestionnaire de la commande d'ouverture des traitements externes, avec la fonction PutFile() nous plaçons le fichier depuis le local système de fichiers au stockage temporaire.

Le quatrième paramètre de cette fonction précise le signe du mode interactif de sélection d'un fichier de traitement externe. Si ce paramètre ProcessingName = ConnectExternalProcessing (StorageAddress); Vrai , puis une boîte de dialogue de sélection de fichier apparaît, dans laquelle vous pouvez sélectionner un fichier à placer dans le stockage. Dans notre exemple, ce paramètre est Mensonge

, et le chemin d'accès au fichier à partir duquel les données seront placées dans un stockage temporaire est explicitement spécifié dans le deuxième paramètre de la fonction. Lors de l'appel d'une fonction responsable du traitement externe. En paramètre, il est transmis le chemin d'accès au fichier de traitement externe dans le stockage temporaire - , puis une boîte de dialogue de sélection de fichier apparaît, dans laquelle vous pouvez sélectionner un fichier à placer dans le stockage. Dans notre exemple, ce paramètre est. Cette méthode renvoie le nom du traitement externe connecté, - Nom de traitement, - que nous utilisons pour ouvrir le formulaire pour ce traitement.

Pour ouvrir un formulaire de traitement externe, utilisez la fonction OuvrirFormulaire(), auquel le nom du formulaire est transmis sous la forme de la ligne suivante : "TraitementExterne."+Nom du Traitement +".Formulaire". Dans le mode de réalisation ci-dessus, le formulaire de traitement principal s'ouvre. Vous pouvez également ouvrir un formulaire de traitement non principal - ceci est abordé dans la question Comment obtenir un formulaire de traitement non principal ? .

Lorsque vous travaillez avec des traitements externes, vous devez tenir compte du fait qu'ils sont lancés par défaut dans mode sans échec exécution du code du programme. Cela signifie que certaines fonctionnalités du langage intégré ne leur seront pas disponibles. Si vous êtes sûr que le traitement externe ne contient pas de code malveillant, il peut être activé en mode normal d'exécution du code du programme. Pour cela, le troisième paramètre de la méthode est utilisé Lors de l'appel d'une fonction responsable du traitement externe.

Plus d’informations sur le mode d’exécution de code sécurisé peuvent être trouvées dans la documentation.

Externe Traitement 1C et les rapports sont en cours de traitement et les rapports qui ne font pas partie de la solution d'application et sont stockés dans fichiers séparés. Leur principal avantage est que ces traitements et rapports peuvent être utilisés dans diverses solutions d'application sans modifier la structure des solutions elles-mêmes. Un avantage important rapports externes et le traitement est la possibilité de les concevoir et de les déboguer pendant le fonctionnement de 1C Enterprise, sans enregistrer à chaque fois la configuration de la solution applicative.

En mode Entreprise 1C externe Traitement 1C peut être lancé pour exécution en l'ouvrant comme n'importe quel autre fichier stocké sur le disque. Un tel traitement fonctionnera exactement de la même manière que s’il faisait partie d’une solution applicative.

Tout traitement existant dans la configuration peut être converti en traitement externe, et vice versa. A part ça traitement externe 1C peuvent être ajoutés à la structure de la solution applicative en tant que nouveaux objets.

Pour utiliser traitement externe 1C lorsque vous travaillez avec le système 1C Enterprise, vous devez l'ouvrir de la même manière que dans le configurateur. Mais il convient de garder à l'esprit que dans le système 1C Enterprise, le traitement externe n'est ouvert que pour être utilisé, c'est-à-dire que l'utilisateur ne peut pas le modifier.

La compilation du module de traitement externe est effectuée lors de l'ouverture du traitement externe, par conséquent, après avoir modifié le traitement externe dans le configurateur et l'avoir enregistré, vous devez rouvrir ce traitement dans le système 1C Enterprise.

Édition traitement externe 1C effectuée dans le configurateur. Pour ouvrir un traitement externe existant, sélectionnez Fichier - Ouvrir. Dans la boîte de dialogue standard affichée à l'écran, sélectionnez le type de fichier - Traitement externe - et précisez le nom du fichier de traitement externe à ouvrir. Lorsque vous ouvrez un traitement externe dans le configurateur, la boîte de dialogue d'édition d'objet s'ouvre automatiquement. Contrairement aux autres objets de configuration, le débogage traitement externe 1Cêtre effectué sans redémarrer 1C Enterprise.

Avantages traitement externe 1C : enregistrer le traitement externe et l'ouvrir dans l'entreprise sur la même configuration et sur le même ordinateur prend toujours quelques secondes ; certaines fonctionnalités du programme peuvent être transférées vers un traitement externe et lorsque ces parties seront modifiées, il ne sera pas nécessaire d'envoyer toute la configuration, il suffira de modifier le traitement et de l'envoyer à l'utilisateur ; pour corriger une erreur dans une base de données où il y a de nombreux utilisateurs, vous pouvez enregistrer le rapport en tant que traitement externe et l'y ajouter changements nécessaires et donnez-le aux utilisateurs, puis lentement, à un moment opportun, insérez un traitement externe pour remplacer le rapport incorrect ; de nombreux programmeurs distribuent leurs nouvelles solutions mises en œuvre pour certains configurations typiques sans copier toute la base de données.

Inconvénients du traitement externe 1C: ne peut pas être créé à l'aide d'un traitement externe nouveau document ou ouvrage de référence ; tout ce qui ne concerne pas la structure de la base de données peut être traité par traitement.

Pour créer un traitement externe, il faut se rendre dans le configurateur et retrouver le rapport d'opération par date dans l'arbre de configuration. Ensuite, dans le menu contextuel, sélectionnez Enregistrer comme traitement externe et précisez l'emplacement où l'enregistrer.

Pour travailler avec un traitement externe (et un formulaire d'impression externe est aussi un traitement externe), il existe un objet Traitement externe.

Considérons deux cas possibles :

Le traitement externe est stocké sur le disque séparément de l'infobase

Pour ouvrir par programme un traitement externe dans 1C, vous devez connaître l'adresse de son fichier. Le sachant, vous pouvez soit ouvrir un formulaire de traitement, soit demander à un objet de traitement d'effectuer d'autres actions avec lui (par exemple, appeler des fonctions d'exportation à partir d'un module objet).

Ouvrir un formulaire de traitement externe

Pour ouvrir par programme un formulaire de traitement externe dans 1C, utilisez la fonction ObtenirFormulaire() objet Traitement externe. La fonction a plusieurs paramètres. Considérons une simple ouverture du formulaire de traitement principal :


Formulaire = Processus Externes. GetForm(FileAddress) ;
Formulaire. Ouvrir();

Pour ouvrir un formulaire de sous-traitance mineure, vous devez préciser son nom.

//La variable FileAddress contient le chemin complet du fichier de traitement externe
Formulaire = Processus Externes. GetForm(AdresseFichier, "Forme mineure") ;
Formulaire. Ouvrir();

Ouvrir le traitement externe en tant qu'objet

Afin de recevoir un traitement externe en tant qu'objet, une fonction est utilisée Créer() objet Traitement externe.

//La variable FileAddress contient le chemin complet du fichier de traitement externe
ProcessingObject = ExternalProcessing. Créer(AdresseFichier) ;

Par défaut, tous les traitements sont ouverts en mode sans échec. Pour le désactiver, utilisez les options suivantes :

//La variable FileAddress contient le chemin complet du fichier de traitement externe

Formulaire de traitement ou d'impression externe enregistré dans l'infobase

Dans de nombreuses configurations, il est possible de stocker des formulaires d'impression externes et des traitements directement dans base d'informations. L'ouvrage de référence est utilisé pour cela. Traitement externe. Le traitement externe lui-même est stocké sous forme de données binaires ou dans des attributs StockageExterneTraitement, ou dans la section tabulaire Affiliation dans les accessoires StockageExterneTraitement.

Pour ouvrir un traitement externe, vous avez besoin de :

  1. Récupérez-le du stockage.
  2. Enregistrez le fichier traité sur le disque.
  3. Ouvrez un formulaire ou récupérez un objet de traitement.
  4. S'il s'agit d'un formulaire imprimé externe, nous pouvons alors remplir les détails standard Référence d'objet et appelez la fonction d'exportation Joint.

//La variable RefLink contient un lien vers l'élément de répertoire ExternalProcessings
DvData = RefLink. Stockage de traitement externe. Obtenir() ;
FileAddress = GetTemporaryFileName() ;
DvData. Écrire(AdresseFichier) ;
ProcessingObject = ExternalProcessing. Créer(FileAddress, False) ;

Il arrive que pour travailler, vous deviez utiliser un traitement externe ou un rapport, mais ce n'est pas toujours possible tout de suite. Parfois, lorsque vous essayez d'ouvrir un traitement externe ou un rapport à l'aide de l'élément de menu « Fichier » puis « Ouvrir », un message d'erreur apparaît indiquant que les droits d'accès sont violés.

Mais d'abord, regardons comment les rapports et les traitements externes s'ouvrent généralement dans « 1C : Comptabilité 8.3 » version 3.0. Il s'agit généralement d'archives téléchargées sur Internet ou obtenues d'une autre manière. Une fois enregistré, par exemple sur le bureau, en double-cliquant, nous pouvons voir son contenu.

Actions pour l'interface standard :

  1. Cliquez sur fichier requis clic droit souris, sélectionnez l'élément menu contextuel"Copie".
  2. Nous retournons au bureau, faisons un clic droit sur l'espace libre et sélectionnons « Coller » (ou faisons simplement glisser le fichier de l'archive vers le bureau).
  3. Vous pouvez également extraire le fichier de l'archive directement à l'emplacement souhaité sur le disque (dans notre exemple, il s'agit du bureau).
  4. Sélectionnez maintenant le fichier à traiter sur le bureau et cliquez sur « Ouvrir ».
  5. Le traitement sera ouvert dans le programme et vous pourrez l'utiliser.

Actions pour une interface gérée (par exemple, Taxi)

  1. Ouvrir directement à partir du fichier.
  2. Dans le menu, sélectionnez « Fichier », puis « Ouvrir ».
  3. Dans la fenêtre qui s'ouvre, allez sur le bureau, sélectionnez le fichier de traitement et cliquez sur « Ouvrir ».

Pour plus de commodité, vous pouvez créer un dossier spécial pour les traitements et les stocker tous.

Si vous ne parvenez pas à ouvrir un traitement ou un rapport, vous pouvez utiliser l'une des deux options suivantes.

Première façon

Vous pouvez enregistrer le traitement dans un répertoire appelé « Rapports et traitements supplémentaires ». Nous enregistrons donc le traitement dans la base de données.

  1. Nous allons dans la section administration, sélectionnons dans la liste l'élément des formulaires imprimés, des rapports et des traitements.
  2. Dans la fenêtre qui apparaît, cochez la case « Rapports et traitements supplémentaires » et ouvrez le lien du même nom.
  3. Dans la nouvelle fenêtre, cliquez sur « Créer ».
  4. Lisez l'avertissement de sécurité et cliquez sur « Continuer ».
  5. Dans la fenêtre suivante, sélectionnez l'emplacement du fichier à traiter et cliquez sur « Ouvrir ».

Important!

Si à ce stade une erreur apparaît avec le texte : « Il est impossible de connecter des traitements supplémentaires à partir du fichier... », vous devrez utiliser la deuxième méthode décrite ci-dessous.

  1. Si aucune erreur ne se produit, recherchez l'élément « Placement » dans « Commandes ».
  2. Dans la fenêtre "Partitions" interface de commande» Consultez la section opérations.
  3. Dans le tableau, nous trouvons « Accès rapide » et l'ouvrons.
  4. Sélectionnez tous les utilisateurs et cliquez sur OK.
  5. Cliquez sur le bouton « Enregistrer et fermer ».

Le traitement a été enregistré avec succès. Pour l'ouvrir, vous devez vous rendre dans la section opérations, sélectionner traitements supplémentaires, sélectionnez celui que vous souhaitez et cliquez sur « Exécuter ».

Deuxième façon

Si le traitement ne prend pas en charge l'enregistrement décrit dans la première option, vous pouvez procéder différemment, à savoir : réactiver la possibilité d'ouvrir le traitement dans la base de données à l'aide du menu « Fichier » avec le bouton droit de la souris « Ouvrir ».

  1. Accédez au configurateur de base de données.
  2. Sélectionnez « Administration » dans le menu, puis « Utilisateurs ».
  3. Double-cliquez sur l'utilisateur souhaité.
  4. Allez dans l'onglet intitulé «Autre».
  5. Cochez la case « Ouverture interactive des rapports et traitements externes ».
  6. Cliquez sur "OK".
  7. On ferme le configurateur, et aussi, s'il était ouvert, la base de données.
  8. Nous retournons dans la base de données et ouvrons le rapport dont nous avons besoin dans le menu « Fichier » à l'aide de la commande « Ouvrir ».


2024 wisemotors.ru. Comment cela marche-t-il. Fer. Exploitation minière. Crypto-monnaie.