Exemple de création d'un dashboard simple

De Wiki1000
(Différences entre les versions)
Ligne 1 : Ligne 1 :
{{#customtitle:Consommer un Web Service Sage 1000}}
+
{{#customtitle:Exemple de création d'un dashboard simple}}
  
Nous allons créer un paquet de service local et l'utiliser avec .NET.
+
Nous allons créer un dashboard. L'ouverture de ce dashboard effectuera une requête d'initialisation, et le dashboard pourra invoquer une méthode.
  
===Création du paquet de service local===
+
{{tip|La création d'un dashboard créé un paquet métier, le créateur du dashboard doit avoir le droit correspondant.}}
 +
[[image:dashboard_0.png]]
  
Les étapes sont :
+
===Création du dashboard===
*Création du paquet de stéréotype "Service Local"
+
*Occuper le paquet,
+
*Ajouter deux classes de stéréotype "Classe non persistantes" maClassParamIn et maClassParamOut (cette étape n'est pas obligatoire, on peut utiliser des types simples)
+
*Ajouter une classe de stéréotype "Classe support de service local"
+
*Sur cette classe ajouter une opération de service '''Function monOperationDeService(aParamIn:maClassParamIn):maClassParamOut;'''
+
  
<source lang='delphi'>
+
[[image:dashboard_1.png]]
//Function monOperationDeService(aParamIn:maClassParamIn):maClassParamOut;
+
[[image:dashboard_2.png]]
begin
+
[[image:dashboard_3.png]]
result := maClassParamOut.Create;
+
[[image:dashboard_4.png]]
result.monAttribut := 'echo ' + aParamIn.monAttribut;
+
[[image:dashboard_5.png]]
end;
+
[[image:dashboard_6.png]]
</source>
+
[[image:dashboard_7.png]]
 +
[[image:dashboard_8.png]]
 +
[[image:dashboard_9.png]]
 +
[[image:dashboard_10.png]]
 +
[[image:dashboard_11.png]]
 +
[[image:dashboard_12.png]]
 +
[[image:dashboard_14.png]]
  
*Libérer le paquet et le publier dans le référentiel
 
*redémarrer le service, on constate à l'adresse '''http://[hôte]/[service]/server/soap.l1000?wsdl''' que le web service est disponible
 
*le wsdl est visible à l'adresse '''http://[hôte]/[service]/server/soap.l1000?wsdl=TestServiceLocal'''
 
*on remarque en bas du wsdl la ligne <soap:address location=... qui représente le endpoint soap.
 
  
[[image:ConsommerWS 1.png]]
+
===Implémentation===
  
[[image:ConsommerWS 2.png]]
+
===Utilisation===
  
[[image:ConsommerWS 3.png]]
 
  
[[image:ConsommerWS 4.png]]
+
{{footer}}
 
+
[[Category:Portail]]
===Création du token d'authentification===
+
 
+
Outre les combinaisons utilisateur/mot de passe, il est possible de s'authentifier auprès d'un service web grâce à un token.
+
Cette méthode est préférable, elle évite la divulgation du mot de passe et permet la révocation d'un token sans révoquer l'utilisateur.
+
 
+
[[image:ConsommerWS 5.png]]
+
 
+
 
+
===Consommation du paquet de service local créé===
+
 
+
Le web service d'authentification est disponible à l'adresse '''http://[hôte]/[service]/server/soap.l1000?wsdl=Sage1000Authentication'''
+
 
+
 
+
[[image:ConsommerWS 6.png]]
+
 
+
[[image:ConsommerWS 7.png]]
+
 
+
[[image:ConsommerWS 8.png]]
+
 
+
[[image:ConsommerWS 9.png]]
+
 
+
 
+
 
+
<source lang='csharp'>
+
            //obtention de la session grâce au token
+
            Sage1000Auth.TdbmLocalServiceAuthenticationPortTypeClient auth = new Sage1000Auth.TdbmLocalServiceAuthenticationPortTypeClient();
+
            String session = auth.LocalServiceLoginToken("2E235A772C0D0105F4D1670CD60000005562BD0A1D2A13345A4A84A7D98DC9B7B736B0396E60E957ED499DD29EA3D2F86B832C7B571228B5BC612741A3EA7F17D9162C1E7122DD8DD3F88A8BEC2D6A337D2054DFDEE5331AD760D0C475FA3EBEA4D4A61C72D8ED99BE9006A0BB6BD7D67C8241E12AABEBC31E80D71EA0F7EC96F12731010E9520797256AF74C58AE37E31A5A5C6F83859DCA442DCD36DA814C53F3A66D52F7EC02A53A512D1E077FBEB6F5B85905CA9CA0E479250AE1C514AD12D138A80630AB84D12293CB7D63F7999C88AB211FDCDF29D1635CD1D2290BE1E5FEF7894B8D493BB");
+
            try
+
            {
+
                //Cet objet permet de passer la session lors de l'appel
+
                ServiceTest.SessionHeader sessionHeader = new ServiceTest.SessionHeader();
+
                sessionHeader.sessionId = session;
+
 
+
                ServiceTest.maClassParamIn paramIn = new ServiceTest.maClassParamIn();
+
                paramIn.monAttribut = "hello world";
+
 
+
                //invocation du service
+
                ServiceTest.maClasseSupportServiceLocalPortTypeClient srv = new ServiceTest.maClasseSupportServiceLocalPortTypeClient();
+
                ServiceTest.maClassParamOut paramOut = srv.monOperationDeService(sessionHeader, paramIn);
+
 
+
                MessageBox.Show(paramOut.monAttribut);
+
            }
+
            finally
+
            {
+
                auth.LocalServiceLogout(session);//ne pas oublier de se déconnecter à l'issue, sinon on risque la pénurie de licence
+
            }
+
</source>
+
 
+
 
+
 
+
 
+
 
+
{{Footer|Web Services (ws)}}
+
[[Category:Web Services]]
+

Version du 30 janvier 2015 à 10:35

Nous allons créer un dashboard. L'ouverture de ce dashboard effectuera une requête d'initialisation, et le dashboard pourra invoquer une méthode.

Tip-20px.png Tip : La création d'un dashboard créé un paquet métier, le créateur du dashboard doit avoir le droit correspondant.

Fichier:Dashboard 0.png

Création du dashboard

Fichier:Dashboard 1.png Fichier:Dashboard 2.png Fichier:Dashboard 3.png Fichier:Dashboard 4.png Fichier:Dashboard 5.png Fichier:Dashboard 6.png Fichier:Dashboard 7.png Fichier:Dashboard 8.png Fichier:Dashboard 9.png Fichier:Dashboard 10.png Fichier:Dashboard 11.png Fichier:Dashboard 12.png Fichier:Dashboard 14.png


Implémentation

Utilisation

Développement DSM

Outils personnels