BAPI_EQUI_CREATE/CHANGE: Mise à jour de zones spécifiques

BAPI_EQUI_CREATE/CHANGE: Mise à jour de zones spécifiques

Messagede thoul » 06 Décembre 2011, 14:56

Bonjour,

J'utilise actuellement les BAPI_EQUI_CREATE/CHANGE pour créer et mettre à jour des équipements. Ces 2 BAPI fonctionnent parfaitement mais je me pose la question suivante:

Étant potentiellement amené à ajouter des zones spécifiques dans la fiche équipement (via l'extension ITOB0001 et le CI_EQUI de la table EQUI), comment mettre à jour ces nouvelles zones, les 2 BAPI précédemment nommés ne semblant pas capables de prendre en charge les extensions...

J'ai trouvé un début de piste avec la fonction EQUIPMENT_UPDATE (pas encore testé) mais je préfèrerais utiliser les BAPI (surtout que... tout est déja codé ;) )

Bref, une idée/info/solution, je suis preneur

Merci
thomas
'si il n'y a pas de solution, c'est qu'il n'y a pas de problème'
Avatar de l’utilisateur
thoul
Posteur confirmé
Posteur confirmé
 
Messages: 62
Inscription: 26 Juillet 2010, 10:56

Re: BAPI_EQUI_CREATE/CHANGE: Mise à jour de zones spécifiques

Messagede thoul » 07 Décembre 2011, 16:48

Bonjour,

Au cas ou certaines personnes rencontrerais le même problème, voici la solution que j'ai trouvé et qui, même si elle n'est pas pleinement satisfaisante, a le mérite de répondre au besoin.

Il semble bien que les BAPI_EQUI_* ne permettent pas la mise à jour de zones spécifiques, aussi, je fonctionne en étapes

1-Création de l'équipement et de ses zones "standard" via le BAPI

2-Lecture des données de l'équipement créé via le Module fonction ITOB_EQUIPMENT_READ_SINGLE (permet le chargement d'une structure ITOB-like contenant les informations de mon équipement)

3-Modification des zones spécifiques à partir de la structure ITOB-like (contenant les zones spécifiques ajoutées dans le CI_EQUI de la table EQUI) avec le Module fonction ITOB_EQUIPMENT_MODIFY_SINGLE

S'il existe une solution plus "clean" et plus directe, n'hésitez pas à le signaler
thomas
'si il n'y a pas de solution, c'est qu'il n'y a pas de problème'
Avatar de l’utilisateur
thoul
Posteur confirmé
Posteur confirmé
 
Messages: 62
Inscription: 26 Juillet 2010, 10:56

Re: BAPI_EQUI_CREATE/CHANGE: Mise à jour de zones spécifiques

Messagede kinchung64 » 09 Décembre 2011, 12:55

Hello.

2 solutions :

1ère solution.
Utiliser BAPI_EQUI_CREATE/CHANGE.
Dans le BAPI_EQUI_CREATE te retourne le numéro d'équipement.
Une fois la BAPI_TRANSACTION COMMIT faite,
Je mettrai à jour directement la table.
De plus l'accés serai très rapide vue que EQUNR est la clé de la table EQUI.
Cela reste propre et sans aucune conséquence.

2ème solution.
Etendre le module de fonction !
SE37 --> Traiter --> opération d'extensins --> Modifier interface.
Entrer la clé d'accés que l'on aura cherché auparavant sur SAPMARKETPLACE.
Toutes les nouveaux paramètres doivent être FACULTATIVES !

Entrer dans l'écran d'affichage du code et faire :
Traiter --> Opérations d'extensions --> Afficher point d'extension implicites.
Il y en a généralement deux. Le premier au début et le deuxième à la fin.
Exporter en mémoire les nouveaux paramètres aux début du programme.
Au début du MF IMPORTER les paramètres optionnel de la mémoire.

Désormais tu devrai avoir accès à toutes les données globales.
Dans le TOP include il existe une table : ITOB_EQUI_TAB TYPE STANDARD TABLE OF EQUI.
Je supposse que c'est celle là qui te permettra de modifier tes zones !
Ensuite poser le code dans le pont d'extension implicites de la fin !

Voilà ca reste propre aussi mais il y a modification de standard !

A plus cordialement.
Kin-Chung.
kinchung64
Posteur junior
Posteur junior
 
Messages: 18
Inscription: 15 Octobre 2010, 07:10


Retourner vers ABAP

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

cron