Votre question contient plusieurs parties, laissez-moi essayer d'expliquer chacune d'entre elles. Tout d'abord, votre besoin est de définir quel BAPI vous devez appeler pour mettre à jour votre table SAP. Lorsque vous l'avez trouvé, assurez-vous qu'il est compatible RFC. Si ce n'est pas le cas, vous devez créer un module de fonction wrapper compatible RFC qui appelle simplement cette BAPI.
Lorsque vous avez trouvé le BAPI, il est assez simple de l'appeler en utilisant le .net Connector. Il y a un exemple très complet ici: https://www.codeproject.com/Articles/824928/SAP-Net-Connector-NCo-Example
Mais dans l'ensemble, vous devez configurer votre connexion ("destination") à SAP en utilisant RfcDestinationManager. Lorsque votre destination est configuré, vous récupérez le référentiel et le module de fonction comme ceci:
rfcDestination = RfcDestinationManager.GetDestination(destinationName);
RfcRepository rfcRepository = rfcDestination.Repository;
IRfcFunction rfcFunction = rfcRespository.CreateFunction("BAPI_WHATEVER");
Ensuite, vous pouvez remplir les paramètres du module de fonction en utilisant la fonction SetValue:
rfcFunction.SetValue("fieldName", value);
Lorsque vous avez terminé avec les paramètres, vous appelez la fonction Invoke pour réellement faire l'appel.
rfcFunction.Invoke(rfcDestination);
Après l'appel, vous pouvez utiliser la fonction GetValue ou la propriété tables pour récupérer les valeurs de retour:
var value = rfcFunction.GetValue("fieldName");
Avec que vous devriez avoir tout ce que vous devez appeler un BAPI qui met à jour une table SAP .