2010-11-16 53 views
1

Je voudrais savoir s'il existe des fonctions RFC ou BAPI pour afficher les documents de modification en fonction de la requête d'entrée dans SAP. L'exigence du client est de mettre en œuvre un système de surveillance Java sur SAP sans ajouter de fonctions ABAP sur le serveur SAP.Existe-t-il un RFC ou BAPI implémentant la transaction rsscd001 pour afficher les documents de modification dans SAP?

J'ai essayé d'utiliser les fonctions 'RFC_READ_TABLE', qui sont déconseillées selon les documents officiels, pour lire la table CDPOS et CDHDR et les joindre. Mais comme l'a dit vwegert, pour parcourir la table, le CDPOS coûte vraiment du temps, car il contient des milliards d'entrées de table.

Mon intention de cette requête est de trouver des changements à tous les détails bancaires des fournisseurs.

D'autres idées?

Merci beaucoup d'avance!

Répondre

2

La façon la moins consommateur de ressources pour le faire serait d'utiliser le système d'exécution de flux de travail pour notifier activement l'application Java chaque fois qu'un document de modification est écrit. Vous n'avez pas besoin d'écrire de fonctions ABAP pour cela, configurez simplement le moteur de workflow (en utilisant le automatic customizing) et personnalisez la génération d'événement (documentation). Ensuite, vous écrivez un service Java qui se connecte au système SAP en utilisant JCo et registers as an RFC server en utilisant une destination de type TCP/IP et un ID de programme enregistré. Ce programme serveur Java doit être provide a function module handler et peut être appelé using tRFC à partir du système SAP. Enfin, ajoutez a linkage entry qui indique au système d'exécution du workflow d'appeler votre programme Java chaque fois qu'un document de modification est écrit.

Bien sûr, cela enregistrera seulement les changements qui se produisent après l'installation, pas les changements historiques.

+1

Salut vwegert, merci beaucoup pour votre explication et guide! Je vais donner un coup de feu et revenir vers vous bientôt! –

+0

belle solution. n'a pas pensé à ça –

0

avertissement: Je ne suis pas très familliar avec ce domaine.

La fonction RFC BAPI_VENDOR_FIND (fournisseur BAPI) semble être utilisée pour trouver le fournisseur en fonction des valeurs de la table. Vous pouvez l'utiliser pour vérifier la date de modification. Ce n'est pas parfait, car il n'y a pas d'opérateur relationelle, seulement égal à égal, et vous devrez vérifier contre plusieurs dates ...

espère que cette aide Guillaume