2016-08-25 2 views
0

Je dois appeler une fonction qui a un type de table comme paramètre d'importation dans un programme. J'ai pensé faire cela avec un écran de sélection mais je ne peux pas utiliser les structures profondes comme paramètres. Quand je 'TEST' ce module de fonction me montre une chose où je peux ajouter plusieurs entrées et soumettre tout à la fin. Puis-je obtenir quelque chose de semblable pendant l'exécution d'un programme? edit: Je dois offrir un programme qui appelle le module fonction create_skill_profile. function module import1Transférer le paramètre de table vers FM via l'écran de sélection

function module code 12

function module code 23

+0

Oui, il suffit de le programmer. Si vous voulez une réponse raisonnable, ajoutez plus de détails sur le module de fonction et les exigences réelles, s'il vous plaît. – vwegert

+0

Vous pouvez utiliser 'SELECT-OPTIONS' pour ajouter plusieurs valeurs sur un écran de sélection. – Jagger

+0

Diffusez votre code sous forme de texte, vos questions [est illisible sous forme de courant] (http://meta.stackoverflow.com/questions/303812/discourage-screenshots-of-code-and-or-errors/303816#303816) . – Suncatcher

Répondre

0

Ce que je comprends: Vous voulez appeler un module de fonction qui nécessite une table en tant que paramètre d'importation. Les lignes de la table sont remplies à partir de l'entrée de l'utilisateur. Le nombre de lignes est dynamique.

1) Utiliser l'écran de sélection avec des champs d'entrée prédéfinis et les afficher/masquer dynamiquement via PAI (A L'ECRAN DE SELECTION (sur xxx) BOUCLE A L'ECRAN.) Puis construire votre table et appeler votre module fonction sur START -OF-SELECTION.

2) afficher une grille ALV modifiable avec une structure de table. Implémentez un bouton de barre d'outils d'application ou utilisez le bouton ENREGISTRER pour laisser l'utilisateur appeler votre module de fonction lorsqu'il a fini d'insérer son entrée.

Je préférerais certainement 2), bien que la validation d'entrée personnalisée soit un peu difficile. Mais si l'entrée utilisateur requise est la même que la structure de table définie par ddic, la validation de l'entrée se fait automatiquement.

1

Vous pouvez appeler le module de fonction RS_COMPLEX_OBJECT_EDIT dans votre rapport pour modifier une structure complexe. C'est le même module de fonction que celui qui est utilisé pour éditer les données de test dans le test individuel du module fonction. Donc, dans votre rapport, vous pouvez demander le nom du type désiré (si cela doit être dynamique), et ensuite, en début de sélection, vous pouvez créer un objet de données de ce type et passez-le à RS_COMPLEX_OBJECT_EDIT pour permettre à l'utilisateur de le remplir.

Une sérieuse limitation de RS_COMPLEX_OBJECT_EDIT est qu'il ne peut pas gérer les tables de tri ou de hachurées en entrée. Donc, toutes les composantes de votre structure complexe, si elles sont de type table, elles doivent être des tables standard.