IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAP Discussion :

Génération d'un Catalogue pour SAP


Sujet :

SAP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Génération d'un Catalogue pour SAP
    Bonjour à tous, j'ai une mission un peu inconnue pour moi. C'est pour cela que je fais appel à vous !

    Ma mission :

    Un site internet possède des produits dans une base de données mysql.

    Un client veut accèder à ces produits depuis SAP.
    Je dois donc générer un catalogue sous le format HTML ou XML.
    SAP va donc accèder à ce catalogue via un URL.

    Le truc c'est que je ne connais absolument rien à SAP. C'est même la première fois que j'entends parler de ce logiciel.

    Avez-vous des conseils à me donner pour bien débuter mon développement ?
    Quelqu'un possède t-il un catalogue fictif (HTML ou XML) de produits sur lequel je puisse me baser ?

    Quelqu'un connaît t-il une documentation française pour m'aider à réaliser ce développement ?

    Merci d'avance pour votre aide !

  2. #2
    En attente de confirmation mail
    Inscrit en
    Décembre 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Quel type de catalogue ?
    Hello -

    de quel type de catalogue s'agit il?
    - catalogue achat (permettre à des "acheteurs" internes de passer des demandes/commandes d'achat) ?
    - catalogue vente (pour des commerciaux, voire des clients)?
    - ...

    Quelle solution SAP est concernée (ERP, SRM, CRM, ...) ?

    Selon le cas, la réponse ne sera pas la même...

    Quel type de client (PME, Grand compte)?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Type de catalogue - précision
    Hello ! Merci pour ta réponse rapide !

    Il s'agit d'un catalogue achat. C'est un en fait un gros client d'un de mes clients qui souhaite lui commander des produits directement depuis SAP.

    Précisément, la version utilisé est : SAP SRM 5.00

    J'ai demandé la version utilisé au client et il m'a envoyé :
    - SAP R/3 backend system 46B
    - SAP SRM 5.00

    Je ne sais pas à quoi correspond "SAP R/3 backend system 46B"

    Le client utilisateur de SAP est un Grand Compte.

    Merci d'avance !!!

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 414
    Points : 671
    Points
    671
    Par défaut
    4.6B est une version de SAP (R/3)

    en SAP R/3, SAP ne communique pas en HTTP/SOAP et ne lit pas de XML

    SAP utilise le protocole RFC. Pour moi c'est seulement à partir des versions ECC 5 ou 6 que SAP peut communiquer sur des principes SOA.

  5. #5
    En attente de confirmation mail
    Inscrit en
    Décembre 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 6
    Points : 7
    Points
    7
    Par défaut SAP et interfaces
    Hello,
    les solutions SAP proposent un nombre d'intefaces qui peuvent répondre à quasiment tous les besoins.
    Et ça, depuis très longtemps (je me souviens avoir développé une intégration à base de IIOP - pour ceux à qui ça parle- il y a une dizaine d'années). Pour XML, c'est à peine plus récent.
    Un mot de vocabulaire peut être : SAP est le nom de l'éditeur pas de ses produits. Par exemple, on ne dirait pas "je fais mes grilles de calcul avec Microsoft" mais plutôt "j'utilise MS Excel".
    De la même manière, on ne dit pas "SAP ne communique pas en XML" mais "SAP NetWeaver dispose de toutes les interfaces technologiques y compris pour échanger des messages XML"



    S'agissant des "catalogues", il y a une interface dédiée à cela : B2B-OCI (Open Catalog Interface) parfaitement documentée sur sdn.sap.com.

    Enjoy !

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Début du développement
    Merci pour vos réponses.

    J'étais en congés et je reprend désormais ce projet.

    J'ai ce lien qui me permet de faire mon développement.
    Dans l'onglet : "Open Catalog Interface: Inbound Section", on retrouve l'explication
    Dans l'onglet : "Example of a Catalog Interface", on retrouve un exemple.

    Je me suis basé sur le catalogue type HTML.

    J'ai pour le moment fait un test très simple de seulement 3 produits.
    Or, lorsque le client essai d'accèder à mon catalogue depuis SAP. Il ne retrouve pas mes 3 produits...

    Quelqu'un connaît-il ce type de développement ? Je peux vous présenter mon code ?

    Merci d'avance et bonne année à tous !

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    Je ne connais pas cette interface, mais je (on) peux toujours jeter un coup d'oeil pour te donner mon avis de développeur SAP pour voir si tu respectes les indications fournies par SAP, tu n'as qu'à mettre le fichier en PJ

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Code source
    Je me permet de mettre le code car il n'est pas très long du fait que j'en suis au tou début


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    
    <?php session_start(); ?>
    <HTML>
    
    <?php if(!empty($_GET["HOOK_URL"])) {
    		$_SESSION["METHOD"]="GET";
    		$_SESSION["HOOK_URL"]=$_GET["HOOK_URL"];
    		$_SESSION["OCI_VERSION"]=$_GET["OCI_VERSION"];
    		$_SESSION["FUNCTION"]=$_GET["FUNCTION"];
    		$_SESSION["PRODUCTID"]=$_GET["PRODUCTID"];
    		$_SESSION["user"]=$_GET["user"];
    		$_SESSION["password"]=$_GET["password"];
    		$_SESSION["language"]=$_GET["language"];
    		$_SESSION["~target"]=$_GET["~target"];
    		$_SESSION["~caller"]=$_GET["~caller"];
    		}
    	else
    	{
    		if(!empty($_POST["HOOK_URL"])) {
    		$_SESSION["METHOD"]="POST";
    		$_SESSION["HOOK_URL"]=$_POST["HOOK_URL"];
    		$_SESSION["OCI_VERSION"]=$_POST["OCI_VERSION"];
    		$_SESSION["FUNCTION"]=$_POST["FUNCTION"];
    		$_SESSION["PRODUCTID"]=$_POST["PRODUCTID"];
    		$_SESSION["user"]=$_POST["user"];
    		$_SESSION["password"]=$_POST["password"];
    		$_SESSION["language"]=$_POST["language"];
    		$_SESSION["~target"]=$_POST["~target"];
    		$_SESSION["~caller"]=$_POST["~caller"];
    		}
    		else
    		{
    			$_SESSION["METHOD"]="NONE";
    		}
    	}
    ?>
    
    <HEAD>
    
    <HEAD>
    
    </HEAD>
    
    
    <BODY bgcolor="#DED6C2">
    
    <u><b>Parameters sent to the catalog: </b></u><br>
    <ul>
    	<it><b>Method:</b> <?php echo $_SESSION["METHOD"]; ?> <br>
    	<it><b>HOOK_URL:</b> <?php echo $_SESSION["HOOK_URL"]; ?> <br>
    	<it><b>OCI-Version:</b> <?php echo $_SESSION["OCI_VERSION"]; ?> <br><br>
    </ul>			
    <?php if ($_SESSION["FUNCTION"]=="DETAIL") { ?>
    
    <H1>Detail View of <?php echo $_SESSION["PRODUCTID"]; ?> requested!</H1>
    
    <?php }else{ ?>
    
    <FORM action="<?php echo $_SESSION["HOOK_URL"]; ?>" method=post target="_top">
    
    <!--For more information about the interface fields, refer to the catalog interface description-->
    
    <!--Item number 1-->
    
    <input type="hidden" name="NEW_ITEM-DESCRIPTION[1]" value = "Produit 1 "> 
    <input type="hidden" name="NEW_ITEM-QUANTITY[1]" value = "1"> 
    <input type="hidden" name="NEW_ITEM-UNIT[1]" value = "l"> 
    <input type="hidden" name="NEW_ITEM-PRICE[1]" value = "15.00">
    <input type="hidden" name="NEW_ITEM-CURRENCY[1]" value = "EUR">
    <input type="hidden" name="NEW_ITEM-VENDOR[1]" value = "1234"> 
    <input type="hidden" name="NEW_ITEM-VENDORMAT[1]" value = "071S5A656_33">
    <input type="hidden" name="NEW_ITEM-EXT_PRODUCT_ID[1]" value = "071S5A656_33">
    <input type="hidden" name="NEW_ITEM-LONGTEXT_1:132[]" value = "Produits 1 : Description">
    
    <!--Item number 2-->
    
    <input type="hidden" name="NEW_ITEM-DESCRIPTION[1]" value = "Produit 2 "> 
    <input type="hidden" name="NEW_ITEM-QUANTITY[1]" value = "1"> 
    <input type="hidden" name="NEW_ITEM-UNIT[1]" value = "g"> 
    <input type="hidden" name="NEW_ITEM-PRICE[1]" value = "13.00">
    <input type="hidden" name="NEW_ITEM-CURRENCY[1]" value = "EUR">
    <input type="hidden" name="NEW_ITEM-VENDOR[1]" value = "1234"> 
    <input type="hidden" name="NEW_ITEM-VENDORMAT[1]" value = "088SS5654_08">
    <input type="hidden" name="NEW_ITEM-EXT_PRODUCT_ID[1]" value = "088SS5654_08">
    <input type="hidden" name="NEW_ITEM-LONGTEXT_1:132[]" value = "Produits 2 : Description">
    
    <!--Item number 3-->
    
    <input type="hidden" name="NEW_ITEM-DESCRIPTION[1]" value = "Produit 3"> 
    <input type="hidden" name="NEW_ITEM-QUANTITY[1]" value = "1"> 
    <input type="hidden" name="NEW_ITEM-UNIT[1]" value = "l"> 
    <input type="hidden" name="NEW_ITEM-PRICE[1]" value = "11.00">
    <input type="hidden" name="NEW_ITEM-CURRENCY[1]" value = "EUR">
    <input type="hidden" name="NEW_ITEM-VENDOR[1]" value = "1234"> 
    <input type="hidden" name="NEW_ITEM-VENDORMAT[1]" value = "011DD4232_33">
    <input type="hidden" name="NEW_ITEM-EXT_PRODUCT_ID[1]" value = "011DD4232_33">
    <input type="hidden" name="NEW_ITEM-LONGTEXT_1:132[]" value = "Produits 3 : Description">
    
    <input type="submit" value="Transfer Items to B2B shopping basket" id="submit1" name="submit1"><br>
    
    </FORM>
    
    
    </BODY>
    <?php } ?>
    </HTML>
    Comme vous pouvez le voir, j'en suis vraiment au tout début.

    Le client doit donc encore cliquer sur le bouton afin que le catalogue lui soit transmis.

    Dans SAP, mon client a du indiqué un login et un mot de passe pour accéder au catalogue.Je ne prend pas encore la vérification du mot de passe. Ce que je veux avant tout c'est qu'il voit mes produits de tests dans la solution SAP.

    Pensez-vous que cela peut poser probème ?

    Pour information, le Hook_URL est rempli en automatique par SAP. C'est le lien de retrour vers lequel sera transmis le catalogue.

    Donc en résumé. Le client arrive bien sur la page. On récupère bien le Hook_URL mais lorsqu'il clique sur le bouton, il ne retrouve aucun produit sous SAP.

    Merci d'avance pour votre aide !

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    Déjà, il faudrait que tu penses à renommer les index de tableaux: ...[2] pour le deuxième produit, et ...[3] pour le troisième produit.

    Doute sur la validité de <it>... (c'est quoi? il n'y a pas de </it>?)

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Suite code
    Bien vu !

    Effectivement, je ne vois pas comment est arrivé cette balise <it>.

    Bien vu aussi pour les indices des tableaux ! Alala les copiés collés sont pratiques mais on peut oublier facilement les modifications à apporter...

    Il avait aussi une autre erreur qui est très certainement la source du problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <FORM action="<?php echo $_SESSION["HOOK_URL"]; ?>" method=post target="_top">

    La méthode "post" était encore inscrite en dur. Or le client peut utiliser la méthode post ou get. En l'occurrence, il utilise la méthode Get. Ce qui ne risquait pas de fonctionner...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <FORM action="<?php echo $_SESSION["HOOK_URL"]; ?>" method="<?php echo $_SESSION["METHOD"]; ?>" target="_top">
    Avec la ligne ci-dessus, ça devrait mieux fonctionner. Enfin j'espère.

    Je vous tiens au courant !

    Encore Merci

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    J'ai un doute sur les double quotes, est-ce que le parseur php ne va pas: 1) sauter l'instruction <?php et 2) s'arrêter au guillemet après $_SESSION[ ?

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Double quote
    J'ai vérifié et je récupère bien les variables donc logiquement aucun souci.

    Je dois recontactez mon client vers 17h30 pour qu'il fasse un nouvel essai.

    Je croise les doigts !

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Aucun changement
    J'ai eu la réponse de mon client et il a toujours le même problème.

    J'ai mis en pièce jointe Une image avec 2 captures qui démontrent le résultat.

    Quelqu'un à une idée ?

    Merci d'avance
    Images attachées Images attachées  

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    Difficile de répondre sans connaître ce module.
    Il faudrait obtenir les éventuels messages d'erreur (aucune idée comment ça s'obtient).
    Essaie de lui demander de reproduire par toi-même ça sera plus simple: tu lui demandes tous les détails de connexion et d'étapes pour reproduire.

  15. #15
    Membre confirmé

    Homme Profil pro
    Indépendant
    Inscrit en
    Juin 2002
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Indépendant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2002
    Messages : 540
    Points : 607
    Points
    607
    Par défaut
    Bonjour,
    l'un de mes projets concerne un catalogue OCI. Nous avons rencontré nombre de petits soucis dernièrement à cause de l'encodage html de certains caractères spéciaux. Peut-être une autre direction à analyser ? Toutefois, je ne vois pas avec exactitude où se situe ton problème.

    Bon courage,
    L.
    Fondateur Alien6 : Prescriptive Analytics & Machine Learning Software

Discussions similaires

  1. [XPATH] génération d'un xpath pour faire des recherches dans un xml
    Par Spaceman Spiff dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 11/06/2007, 18h18
  2. Quels formations pour SAP
    Par Jihane75 dans le forum Etudes
    Réponses: 5
    Dernier message: 07/05/2007, 09h44
  3. Génération d'une référence (Pour un outil)
    Par Cyphen dans le forum Access
    Réponses: 2
    Dernier message: 19/06/2006, 18h08
  4. [FPDF] Génération d'un document pour impression
    Par Sandkura dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 13/02/2006, 15h06
  5. [Javadoc] Génération d'une javadoc pour un package
    Par Katyucha dans le forum Langage
    Réponses: 3
    Dernier message: 16/11/2004, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo