2011-09-16 5 views
8

Je ne suis qu'un débutant et j'essaie de comprendre la communication entre SAP et par exemple une application C# utilisant le connecteur SAP. J'ai cherché de nombreux sites, mais je ne trouve vraiment pas de réponse à ma question! J'espère que quelqu'un ici peut m'aider.Communication entre SAP et C#

J'ai une fonction dans SAP par exemple getProducts(String = " "). Cette fonction fonctionne parfaitement dans SAP, elle n'est pas écrite par moi et je n'y ai pas accès donc je ne peux pas vous donner de code (je suis désolé). Je dois communiquer avec SAP en utilisant une application C#. Ce que je veux faire est de donner un paramètre à SAP, par exemple "Chemises". Et SAP va rendre toutes les chemises. Je ne peux pas faire cela avec Function.GetValue() (ou du moins je pense que je ne peux pas) parce que GetValue attend seulement des nombres entiers. Mais si je tape GetValue(0), cela me donne tous les produits (ce qui est normal) et pas seulement les chemises.

Voici le code que j'utilise pour obtenir les données:

IRfcFunction function = fRepository.CreateFunction("GetProducts"); 
function.Invoke(destination); 
String products = function.GetValue(0).ToString(); 
result = Functions.Instance.GetData(result); 

est-il un moyen de donner un paramètre de chaîne (au lieu d'un nombre entier, dans ce cas, 0) au SAP-fonction et récupérer la données que je veux?

+0

S'il vous plaît poster le code que vous utilisez pour faire l'appel, votre question devrait être plus facile à comprendre avec elle. – Mat

Répondre

10

Si la fonction GetProducts prend un paramètre appelé par exemple Category, vous pouvez définir que avant d'appeler la fonction:

IRfcFunction function = fRepository.CreateFunction("GetProducts"); 
function.SetValue("Category", "Shirts"); 
function.Invoke(destination); 

Découvrez l'entrée de blog A Spotlight on the New .NET Connector 3.0 pour plus de détails, des liens et des exemples.

Questions connexes