Accueil Blog Mardi technique : Connecter un site web au logiciel de comptabilité Acumatica Cloud

Mardi technique : Connecter un site web au logiciel de comptabilité Acumatica Cloud

Doug Johnson | Juin 9, 2020

Connecter un site web au logiciel de comptabilité Acumatica Cloud est un processus facile à réaliser. Cet article explique comment configurer un simple site web ASPX avec un formulaire qui utilise les services web pour soumettre un lead à Acumatica Cloud ERP.

Environnement: 5.10.0600 (cadre non requis)

IDE: Visual Studio Express 2013 pour le Web

Mardi technique d'Acumatica

Vue d'ensemble

Écran simple de saisie des commandes

Acumatica Cloud ERP peut être configuré pour répondre aux besoins des utilisateurs. Vous pouvez facilement déployer différents habillages pour modifier l'aspect et la convivialité du site. Les administrateurs peuvent ajouter des champs ou utiliser des droits d'autorisation pour simplifier les écrans. Les utilisateurs individuels peuvent personnaliser les grilles et créer des tableaux de bord.

Vous pouvez utiliser des modèles pour modifier l'aspect et la convivialité d'Acumatica.
Vous pouvez utiliser des modèles pour modifier l'aspect et la convivialité d'Acumatica.

Vous pouvez même créer des sites web entièrement nouveaux, ou de simples formulaires qui utilisent des services web pour entrer des données dans Acumatica. Cet article montre comment créer un formulaire simple qui crée une piste dans Acumatica.

Aperçu de la solution

Acumatica est une application web. Tous les écrans de saisie de données disposent d'une connexion aux services web, ce qui vous permet d'extraire et d'envoyer des données associées au "schéma" de l'écran en question. Un schéma Acumatica est une liste d'objets comprenant des tables de base de données, des champs, des procédures et des fonctions. En utilisant les services web, vous pouvez accéder au schéma de l'écran pour ajouter des enregistrements, sauvegarder des données et effectuer d'autres actions - comme si vous tapiez dans l'écran lui-même.

Connecter un site web au logiciel de comptabilité Acumatica Cloud
Connecter un site web à Acumatica

Dans cette section, nous procédons aux étapes suivantes :

  • Créer un site web simple
  • Ajouter la description des services web Acumatica au site web dans Visual Studio
  • Créer une page web avec un formulaire qui recueillera des données à soumettre.
  • Ajouter du code C# pour soumettre les données du formulaire à Acumatica

Créer un site web avec Visual Studio

Ouvrez Visual Studio et sélectionnez l'option de création d'un nouveau site web. Veillez à sélectionner Visual C# et à utiliser l'option ASP.NET Web Forms Site pour une création rapide du site. Indiquez le répertoire web dans lequel vous souhaitez que le site soit créé.

Créer un site web simple pour soumettre des données à Acumatica en utilisant des services web
Créer un site web simple pour soumettre des données à Acumatica en utilisant des services web.

Le résultat est un site simple que nous pouvons rapidement modifier pour montrer comment utiliser les services web pour se connecter à Acumatica. La page d'accueil de ce site est affichée ci-dessous. J'ai modifié le texte du site, les menus et les images.

Acumatica et connexion au site web
Site web ASPX simple créé à l'aide d'un modèle Visual Studio avec des modifications mineures

Lien Acumatica Web Services

L'étape suivante consiste à introduire la référence web d'Acumatica pour l'inclure dans notre site web. Chaque page Acumatica possède une référence web que nous pouvons utiliser. Dans cet exemple, nous utiliserons la page Leads.

Pour obtenir la référence web, connectez-vous à l'application Acumatica, naviguez jusqu'à la page, cliquez sur Help et sélectionnez le bouton Web Service.

Pour obtenir la référence web, connectez-vous à l'application Acumatica, naviguez jusqu'à la page, cliquez sur Aide et sélectionnez le bouton Service Web.
Cliquez sur Aide et sélectionnez le bouton Service Web.

Sélectionnez ensuite le lien Description du service.

Sélectionnez ensuite le lien Description du service
Sélectionnez ensuite le lien Description du service.

Cela renverra une URL similaire à http://localhost/demo/Soap/CR301000.asmx?WSDL que vous pouvez utiliser pour importer une référence de service dans le projet Visual Studio.

Dans Visual Studio, vous pouvez ajouter une référence de service en sélectionnant dans le menu supérieur Site Web -> Ajouter une référence de service. Une boîte de dialogue s'ouvre alors, comme vous pouvez le voir ci-dessous.

Ajoutez une référence de service en sélectionnant dans le menu supérieur Site web -> Ajouter une référence de service. Une boîte de dialogue s'ouvre alors.
Boîte de dialogue Ajouter une référence de service.

Cliquez sur "Avancé" pour faire apparaître un bouton appelé "Ajouter une référence Web" et cliquez dessus.

Pour ajouter une référence web (voir écran ci-dessous)

  1. Saisissez l'URL que vous avez obtenue à partir de la description des services Acumatica.
  2. Entrez un nom de référence web (j'ai utilisé l'ID d'écran CR.30.10.00)
  3. Cliquez sur le bouton Ajouter une référence

Cliquez sur le bouton Ajouter une référence
Sélectionnez le bouton Ajouter une référence

Les champs, objets et méthodes de l'écran des prospects d'Acumatica sont désormais disponibles sur votre site web.

Ajouter un code à votre site web

Dans cette section, un peu de codage C# est nécessaire pour que votre site web puisse.. :

  1. Se connecter à Acumatica
  2. Mapper les champs de formulaires du site web aux champs de données d'Acumatica
  3. Soumettre les données à Acumatica

Étape 1 : Création d'un formulaire dans une page ASPX

La première étape consiste à créer sur votre site web un formulaire dans lequel vous pouvez saisir des données. J'ai ajouté un simple formulaire de soumission à la page "Contact" du site web créé par Visual Studio. Le code du formulaire est indiqué ci-dessous :

Demande de vente

<asp:Label ID=”Label1″ runat=”server” Text=”First Name”></asp:Label>> <asp:TextBox ID=”FirstName” runat=”server” BackColor=”WhiteSmoke”></asp:TextBox>
<asp:Label ID=”Label2″ runat=”server” Text=”Last Name”></asp:Label> <asp:TextBox ID=”LastName” runat=”server” BackColor=”WhiteSmoke”></asp:TextBox>
<asp:Label ID=”Label3″ runat=”server” Text=”Email”></asp:Label> <asp:TextBox ID=”Email” runat=”server” BackColor=”WhiteSmoke”></asp:TextBox>
<asp:Label ID=”Label4″ runat=”server” Text=”Phone”> <asp:TextBox ID=”Phone1″ runat=”server” BackColor=”WhiteSmoke”></asp:TextBox>
<asp:Button ID=”SubmitButton” runat=”server” Text=”Submit Lead to Acumatica” OnClick=”SubmitButton_Click” />

Étape 2 : Ajouter la logique métier en C#

Ensuite, modifiez la page C# (content.apsx.cs) pour inclure le code permettant de se connecter, de mapper les champs du site web et de soumettre les données à Acumatica via les services web. Le code pour cela est listé ci-dessous.

Visual Studio affiche les méthodes associées à Acumatica pour simplifier la programmation.
Visual Studio affiche les méthodes associées à Acumatica pour simplifier la programmation.

Ce code (a) se connecte à Acumatica, (b) crée une commande qui comprend des actions et des données à insérer, et (c) soumet la commande à Acumatica.

protected void SubmitButton_Click(object sender, EventArgs e)

{

CR301000.Screen scr = new CR301000.Screen() ;

scr.CookieContainer = new System.Net.CookieContainer() ;

CR301000.LoginResult lr = scr.Login("admin", "123") ;

if (lr != null && lr.Code == CR301000.ErrorCode.OK)

{

CR301000.Content schema = scr.GetSchema() ;

var commands = new CR301000.Command {

schema.Actions.Insert,

new CR301000.Value {

LinkedCommand = schema.DetailsSummary.FirstName, Value = FirstName.Text },

new CR301000.Value {

LinkedCommand = schema.DetailsSummary.LastName, Value = LastName.Text },

new CR301000.Value {

LinkedCommand = schema.DetailsContact.Email, Value = Email.Text },

new CR301000.Value {

LinkedCommand = schema.DetailsContact.Phone1, Value = Phone1.Text },

schema.Actions.Save

} ;

scr.Submit(commands.ToArray()) ;

Response.Redirect("ContactSuccess.aspx") ;

}

}

Ce code suppose que vous avez créé une page d'atterrissage appelée ContactSuccess.aspx. Voici un peu de code simple pour cette page d'atterrissage :

<%@ Page Title=”Thank You” Language=”C#” MasterPageFile=”~/Site.Master” AutoEventWireup=”true” CodeFile=”About.aspx.cs” Inherits=”About” %>

<%@ Page Title=”Thank You” Language=”C#” MasterPageFile=”~/Site.Master” AutoEventWireup=”true” CodeFile=”About.aspx.cs” Inherits=”About” %>
<asp:Content ID=”BodyContent” ContentPlaceHolderID=”MainContent” runat=”server”>
<h2><%: Title %>.</h2>
<h3>Thank you for contacting RevisionTwo sales.</h3>

Un membre de notre équipe de vente vous contactera dans un délai d'un jour ouvrable.

</asp:Content>

Testez votre travail

Ouvrir le site web et soumettre le formulaire

Si tout a été fait correctement, vous devriez être redirigé vers la page ContactSuccess.
Un simple formulaire qui a été ajouté à notre site web

Ouvrez votre site web en le publiant ou en lançant un émulateur de navigateur en mode débogage dans Visual Studio. Allez à la page de contact et soumettez votre formulaire.

Si tout a été fait correctement, vous devriez être redirigé vers la page ContactSuccess.

Dans les coulisses, le site web a transmis l'information à Acumatica.

Vous pouvez vous connecter à Acumatica, naviguer dans la zone des leads ou entrer le nom que vous avez soumis dans la zone de recherche globale et vous devriez voir le lead créé dans Acumatica.

Un simple formulaire ajouté à notre site web
Un simple formulaire a été ajouté à notre site web.

Ne vous arrêtez pas là !

Chaque page d'Acumatica possède un webservice. Créez des pages pour créer des contacts, des opportunités, etc.

Créez une fonction de connexion (fournie avec Visual Studio) et connectez-vous en tant qu'utilisateur et non en tant qu'administrateur lorsque vous soumettez des formulaires. Cela permettra d'appliquer des contrôles de sécurité afin de limiter ce que les utilisateurs de votre site web peuvent soumettre.

Prochaine étape

Contactez Doug Johnson si vous souhaitez voir comment créer un processus d'importation pour une facture de fournisseur (voir l'écran ci-dessous). Dans cet exemple, il est possible d'obtenir des fonctionnalités supplémentaires :

  • Se connecter à notre nouveau site web et utiliser ce login pour soumettre le formulaire à Acumatica
  • Ajouter un gestionnaire supplémentaire (chargement de la page et soumission du formulaire)
  • Conversion des données (date)
  • Rattrapage des erreurs

Contactez Doug Johnson si vous souhaitez savoir comment créer un processus d'importation pour une facture fournisseur.

Contactez Doug Johnson si vous souhaitez savoir comment créer un processus d'importation pour une facture fournisseur.

Auteur du blog

Vice-président de la gestion des produits chez Acumatica.

Recevez les mises à jour du blog dans votre boîte de réception.