1 Programmation dans HR Les infotypes Les macros Les clusters.

71
1 Programmation dans HR Les infotypes Les macros Les clusters

Transcript of 1 Programmation dans HR Les infotypes Les macros Les clusters.

Page 1: 1 Programmation dans HR Les infotypes Les macros Les clusters.

1

Programmation dans HR

Les infotypes

Les macrosLes clusters

Page 2: 1 Programmation dans HR Les infotypes Les macros Les clusters.

2

Infotypes - Définiton

Toutes les informations stockées dans le module HR sont réunies sous forme de groupe de données en fonction de leur contenu.

Dans le module HR, ces unités d ’information sont appelées types d ’information ou infotypes.

Tous les infotypes sont datés. Ainsi toute information stockée possède :

une date de début de validité

une date de fin de validité

Page 3: 1 Programmation dans HR Les infotypes Les macros Les clusters.

3

Infotypes - Définiton

Les infotypes sont codés sur 4 caractères avec une désignation.

De 0000 à 0999 Administration du Personnel (PA)

De 1000 à 1999 Structure Organisationnelle

De 2000 à 2999 Gestion des temps

De 3000 à 3999 Liens avec la Gestion de production

De 4000 à 4999 Recrutement

De 9000 à 9999 Développement spécifique

Page 4: 1 Programmation dans HR Les infotypes Les macros Les clusters.

4

Infotypes - Définiton

Exemple : Cas d ’un changement d ’adresse

Adresse 1

Adresse 2

Changement d ’adresse au 01.04.2000

Adresse 1

Date de début

01.01.2000Date de fin

31.12.9999

Date de début

01.01.2000

Date de fin

31.12.9999Date de début

01.04.2000

Date de fin

31.03.2000

Page 5: 1 Programmation dans HR Les infotypes Les macros Les clusters.

5

Principaux infotypes

Infotype Identité (0002) :

Infotype Adresse (0006)

Infotype Rémunération de base (0008)

Infotype Eléments du contrat (0016)

Infotype 0001Affectation

Infotype 0003Statut de la paie

Infotype 0007Durée théorique

du travail

Infotype 0002Identité

Infotype 0008Rémunération

Infotype 0005Droit au congé

Page 6: 1 Programmation dans HR Les infotypes Les macros Les clusters.

6

Création et modification d’un infotype PA

Transaction : PM01

Page 7: 1 Programmation dans HR Les infotypes Les macros Les clusters.

7

Création et modification d’un infotype PA

Pour créer un infotype spécifique, deux possibilités s’offrent à nous par cette transaction:

Création pas à pas de l’infotype, création de tous les sous-objets un par un.

Création en totalité de l’infotype par la transaction (Bouton ‘TOUT’).

La première option est plus risquée (risque d’oubli de création de module de dialogue dans les tables) mais elle permet de mieux comprendre l’architecture technique d’un infotype.

Page 8: 1 Programmation dans HR Les infotypes Les macros Les clusters.

8

Création et modification d’un infotype PA

Création pas à pas

Création de la structure PSXXXX

XXXX correspond au n° de l’infotype dont le premier caractère est ‘9’.

Dans cette structure, sont présents tous les champs de l’infotype spécifique.

Création de la structure PXXXX

Prendre en modèle une structure d’un infotype standard par exemple l’infotype 0002, structure P0002 et faire de même.

Nous aurons alors 2 champs du type Include :

Field Name Data Element.INCLUDE PSHDR.INCLUDE PSXXXX

Page 9: 1 Programmation dans HR Les infotypes Les macros Les clusters.

9

Création et modification d’un infotype PA

Création pas à pas

Création de la structure PAXXXX

Field Name Key Data Element MANDT X MANDT .INCLUDE X PAKEY .INCLUDE PSHD1 .INCLUDE PSXXXX

Page 10: 1 Programmation dans HR Les infotypes Les macros Les clusters.

10

Création et modification d’un infotype PA

Création pas à pas

Création du Module Pool MPXXXX

Création de l’écran

Création de l’interface utilisateur

Création du Module de dialogue

ATTENTION à la classe de développement.

Paramétrage de l ’infotype : Table T582A

Page 11: 1 Programmation dans HR Les infotypes Les macros Les clusters.

11

Création et modification d’un infotype PA

Création en une seule étape

En utilisant l’option ‘Créer tout’, toutes les structures et les tables sont crées automatiquement en une seule étape ainsi que le module pool, l’écran et l’interface utilisateur.

Il faudra ensuite paramétrer l’infotype dans la table T582A.

Page 12: 1 Programmation dans HR Les infotypes Les macros Les clusters.

12

Création et modification d’un infotype PA

Paramétrage : T582A

Page 13: 1 Programmation dans HR Les infotypes Les macros Les clusters.

13

Création et modification d’un infotype PA

Modification d’un infotype

La transaction PM01 permet de modifier un infotype standard : ajout de nouvelles zones au niveau du Customer Include d ’un infotype standard.

Selon les besoins, il faudra créer ou traiter le customer include, le module-pool ou le sous-écran.

Le bouton ‘ Affecter extension ’ permet de paramètrer la relation entre l ’écran standard de l ’infotype et le sous-écran contenant les zones supplémentaires.

Page 14: 1 Programmation dans HR Les infotypes Les macros Les clusters.

14

Création et modification d’un infotype PA

Modification d’un infotype (PM01)

Page 15: 1 Programmation dans HR Les infotypes Les macros Les clusters.

15

Création et modification d’un infotype PA

Modification d’un infotype

Page 16: 1 Programmation dans HR Les infotypes Les macros Les clusters.

16

Création et modification d’un infotype PD

Transaction : PPCI

Modification d’un infotype

Page 17: 1 Programmation dans HR Les infotypes Les macros Les clusters.

17

Création et modification d’un infotype PD

Création par la transaction PPCI

Pré requis : Création d ’une structure de type HRI9XXX.

XXXX correspond au n° de l’infotype dont le premier caractère est ‘9’. Cette structure comprend les différents champs de l ’infotype.

Choisir le type d ’infotype voulu

Création du nouvel infotype (9xxx) génération automatique

d’une nouvelle table de données (HRP9xxx)

d’un index de table

d’un module pool (MP9XXX)

de 3 écrans : initialisation, écran simple, écran de liste

d’un statut de surface

Page 18: 1 Programmation dans HR Les infotypes Les macros Les clusters.

18

Création et modification d’un infotype PD

Paramétrage

Lors de la création de l ’infotype, certaines tables de paramètrage sont alimentées automatiquement:

T778T Infotypes

T777T Infotypes (textes)

T777D Infotype - Affectation dialogue / BD

TDCT Modules de dialogue

D’autres tables sont à alimenter manuellement :

T777IInfotype par type d’objet

T77OA Types d’objet et infotypes par aspect

T777Z Occurrence des infotypes

Page 19: 1 Programmation dans HR Les infotypes Les macros Les clusters.

19

Exercice

En passant par la transaction PM01, créer un infotype PA dont l’intitulé sera ‘Suivi d’activté’.

Cet infotype sera constitué de deux zones ‘Heure de début’ et ‘Heure de fin’.

Page 20: 1 Programmation dans HR Les infotypes Les macros Les clusters.

20

Bases de données logiques PNP et PCH

Fonctions de la BDL PNP

Acquisition de données : les données HR sont chargées pour chaque salarié dans la mémoire centrale où elles peuvent être traitées.

Présélection : un écran de sélection vous permet de sélectionner les salariés conformément à des critères d’organisation (par exemple, vous pouvez sélectionner tous les salariés dans un domaine du personnel particulier).

Contrôle d’autorisation : le système vérifie que l’utilisateur lançant une exploitation est autorisé à accéder aux données du personnel.

Page 21: 1 Programmation dans HR Les infotypes Les macros Les clusters.

21

Bases de données logiques PNP et PCH

Acquisition de données

La structure PERNR contient les sélections standards pour le reporting des données de base. Ces données comprennent le matricule, les zones d’infotypes ainsi qu’un certain nombre de zones supplémentaires.

Lorsqu’une instruction GET est effectuée, les tables internes Pnnnn de la mémoire centrale sont renseignées avec tous les enregistrements de l’infotype approprié.

Les données dans les tables Pnnnn sont traitées grâce à une boucle PROVIDE – ENDPROVIDE. Si la période de validité des enregistrements chevauche la période de sélection des données choisie sur l’écran de sélection, ces enregistrements sont extraits. La période de sélection des données correspond aux variables PNPBEGDA et PNPENDDA.

Page 22: 1 Programmation dans HR Les infotypes Les macros Les clusters.

22

Bases de données logiques PNP et PCH

Présélection

Nous avons 2 manières de sélectionner les données 

La sélection des personnes qui détermine le groupe de salariés sur lequel une exploitation doit être effectuée (par exemple, une tranche de matricules, des caractéristiques de l’affectation, le statut du salarié .

La sélection de la période de validité des données qui détermine la période sur laquelle une exploitation doit être effectuée

L’instruction INITIALIZATION permet de définir des valeurs par défaut pour l’écran de sélection

Les zones de sélection de données sont définies dans la structure QPPNP.

Page 23: 1 Programmation dans HR Les infotypes Les macros Les clusters.

23

Macro - Définition

Tout comme les performs et les modules fonctions, les modules de macros permettent de structurer les programmes de façon modulaire. Les modules de macros sont fréquemment utilisés dans le module HR. Les macros sont disponibles uniquement pour les programmes utilisant la BDL PNP. Dans le module HR, il existe 2 types de macros :

Les macros dont le nom utilise le séparateur « tiret » : celles-ci sont gérées dans la table SAP TRMAC. Il s’agit des anciennes macros version 3 qui ne sont plus développées par SAP mais qui sont toujours utilisées dans les programmes HR.Les macros dont le nom utilise le séparateur « underscore »  (macro version 4) : celles-ci sont gérées dans l’include standard DBPNPMAC du programme SAPDNPNP. Il s’agit des nouvelles macros version 4 créées dans cet include standard et non plus dans la table SAP TRMAC.

Page 24: 1 Programmation dans HR Les infotypes Les macros Les clusters.

24

Exemple de macro version 3

Exemple de macro dont le nom utilise le séparateur « tiret » :La macro RP-PROVIDE-FROM-LAST définie dans la table SAP TRMAC permet de récupérer le dernier enregistrement d’infotype du salarié sur la période de sélection.

Transaction SE16 pourvisualisation de la macro

RP-PROVIDE-FROM-LAST

Page 25: 1 Programmation dans HR Les infotypes Les macros Les clusters.

25

Exemple de macro version 3

La syntaxe de cette macro est la suivante :RP-PROVIDE-FROM-LAST infty subty beg end

Paramètres d’entrée de cette macro :• infty = numéro de l’infotype• subty = sous-type de l’infotype si aucun sous-type renseigné, il faut saisir SPACE ou ‘  ’• beg = date de début de validité de l’infotype• end = date de fin de validité de l’infotype

Paramètres de sortie de cette macro :• le code retour PNP-SW-FOUND qui vaut ‘ 1 ’ si un enregistrement d’infotype valide a été trouvé, ‘ 0 ’ sinon• l’en-tête de la table interne d’infotype Pnnnn (où nnnn est le numéro de l’infotype) le dernier enregistrement valide sur la période de sélection.

Page 26: 1 Programmation dans HR Les infotypes Les macros Les clusters.

26

Exemple de macro version 4

Exemple de macro dont le nom utilise le séparateur « underscore » :La macro RP_READ_INFOTYPE définie dans l’include standard DBPNPMAC permet de lire les enregistrements d’infotypes HR relatifs à un salarié conformément aux critères de sélection spécifiés.

Transaction SE38 pourvisualisation de la macroRP_READ_INFOTYPE

dans l’include DBPNPMAC

Page 27: 1 Programmation dans HR Les infotypes Les macros Les clusters.

27

Exemple de macro version 4

La syntaxe de cette macro est la suivante :RP_READ_INFOTYPE pernr infty inftytab beg end

Paramètres d’entrée de cette macro :• pernr = matricule du salarié• infty = numéro de l’infotype• inftytab = nom de la table interne de l’infotype traité• beg = date de début de validité de l’infotype• end = date de fin de validité de l’infotype

Paramètres de sortie de cette macro :• le code retour PNP-SW-FOUND qui vaut ‘ 1 ’ si un enregistrement d’infotype valide a été trouvé, ‘ 0 ’ sinon• la table interne d’infotype inftytab contenant tous les enregistrements valides sur la période de sélection.

Page 28: 1 Programmation dans HR Les infotypes Les macros Les clusters.

28

Macro importantes

2 macros importantes sont utilisées dans le sous-module GTA-PAIE pour accéder en lecture et en écriture aux entrées de cluster

La macro RP-IMP-Cn-xy (où n = 1, 2, 3, 4 et xy = nom du cluster) permet de lire les entrées du cluster xy de la table PCLn.

Si l’import des données est effectuée avec succès, le code de retour RP-IMP-xy-SUBRC prend la valeur ‘ 0 ’.

Remarque : on parle de lecture de données de cluster ou d’import de données de cluster.

La macro RP-EXP-Cn-xy (où n = 1, 2, 3, 4 et xy = nom du cluster) permet de lire les entrées du cluster xy de la table PCLn. Si l’export des données est effectuée avec succès, le code de retour RP-EXP-xy-SUBRC prend la valeur ‘ 0 ’.

Remarque : on parle d’écriture de données dans un cluster ou d’export de données vers un cluster.

Page 29: 1 Programmation dans HR Les infotypes Les macros Les clusters.

29

Exercice

Créer une liste d’employés permettant de visualiser les jours d’absence par employé :

Matricule, Prénom, Nom, Date de début, Date de fin, Catégorie d’absence, Nombre de jours d’absence

 

Remarques :

Les informations proviennent de l’infotype ‘2001’.

Prendre les données actuelles pour l’identité.

Donner la possibilité de sélectionner des rubriques d’absence dans l’écran de sélection.

Page 30: 1 Programmation dans HR Les infotypes Les macros Les clusters.

30

Les clusters de données

Rappel sur les tables de BD dans HR

Il existe 3 types de tables de base de données dans HR :

Les tables transparentes PAnnnn et PBnnnn permettent de sauvegarder les enregistrements de données de l’infotype nnnn du module PA (Administration du Personnel) et PB (Recrutement) de HR.

Exemple : PA0002 pour l’infotype « 0002 » (infotype « identité »)

Les tables transparentes HRPnnnn permettent de sauvegarder les enregistrements de données de l’infotype nnnn du module PD (évolution du personnel) de HR.

Exemple : HRP1002 pour l’infotype « 1002 » (infotype « description »)

Les tables transparentes PCLn (où n =1, 2 …) permettent de sauvegarder les clusters de données.

Exemple : PCL2 (résultats de paie)

Page 31: 1 Programmation dans HR Les infotypes Les macros Les clusters.

31

Les clusters de données - Définition

Les tables de base de données du type PCLn sont divisés en sous-domaines appelés « clusters ».

Un cluster est une table transparente au même titre que toutes les autres tables transparentes à la différence près que les données y sont stockées de façon compressée afin d’optimiser la place BD.

La lecture du cluster ne peut se faire directement avec une instruction SQL du type SELECT en indiquant la clé.

Il existe 4 tables de clusters dans HR :PCL1 (BD pour domaines fonctionnels HR) KN (calendrier individuel)

PCL2 (résultats de paie) B2 (résultats du calcul des temps), RF (résultats de la paie française)

PCL3 (données de recrutement) AP (opérations de candidature)

PCL4 (documents) F1 (notes de paiement)

Page 32: 1 Programmation dans HR Les infotypes Les macros Les clusters.

32

Les clusters de données - Définition

Les clusters permettant d’optimiser la place BD, certains sous-modules HR utilisent plus que d’autres les clusters.

C’est notamment le cas pour le sous-module GTA-PAIE dont les données relatives à la gestion des temps et au calcul de la paie sont stockées :

d’une part dans les infotypes 0003 (statut de la paie), 0007 (durée de travail), 0008 (rémunération de base), 0050 (informations de saisie des temps), 2001 (présence), 2002 (absence), 2003 (remplacements), 2004 (permanences), 2005 (heures supplémentaires), 2006 (contingents d’absence), 2006 (contingents de présence), 2011 (mouvements) et 2012 (corrections et transfert de soldes horaires

d’autre part dans les clusters dont les plus importants sont les clusters B2 (résultats du calcul des temps) et RF (résultats de la paie française)

Page 33: 1 Programmation dans HR Les infotypes Les macros Les clusters.

33

Les clusters de données - Définition

Les clusters permettant d’optimiser la place BD, certains sous-modules HR utilisent plus que d’autres les clusters.

C’est notamment le cas pour le sous-module GTA-PAIE dont les données relatives à la gestion des temps et au calcul de la paie sont stockées :

d’une part dans les infotypes 0003 (statut de la paie), 0007 (durée de travail), 0008 (rémunération de base), 0050 (informations de saisie des temps), 2001 (présence), 2002 (absence), 2003 (remplacements), 2004 (permanences), 2005 (heures supplémentaires), 2006 (contingents d’absence), 2006 (contingents de présence), 2011 (mouvements) et 2012 (corrections et transfert de soldes horaires

d’autre part dans les clusters dont les plus importants sont les clusters B2 (résultats du calcul des temps) et RF (résultats de la paie française)

Page 34: 1 Programmation dans HR Les infotypes Les macros Les clusters.

34

Les clusters de données - Visualisation

Visualisation du cluster RF (résultats de la paie française)

Afin de visualiser les résultats de paie dans le cluster RF (résultats de la paie française) de la table PCL2, il faut passer par le chemin suivant :

Page 35: 1 Programmation dans HR Les infotypes Les macros Les clusters.

35

Les clusters de données - Visualisation

On peut également visualiser les résultats de paie dans le cluster RF (résultats de la paie française) en lançant via la transaction SE38 le programme RPCLSTRF

Remarque : le programme standard RPCLSTxy permet de visualiser les résultats du cluster xy.

Page 36: 1 Programmation dans HR Les infotypes Les macros Les clusters.

36

Les clusters de données - Visualisation

Exemple de visualisation

Pour visualiser ensuite le détail, il suffit de double-cliquer sur la ligne qui nous intéresse.Tous les résultats de calcul sont présents et sont identifiés par un code actualité : A = Actual result (résultat en cours), P = Previous result (résultat précédent), 0 = Old result (tous les autres résultats)

Page 37: 1 Programmation dans HR Les infotypes Les macros Les clusters.

37

Les clusters de données - Visualisation

Aperçu du contenu du cluster RF

Pour les résultats de paie, les tables les plus consultées sont les 2 tables RT (résultats du mois) et CRT (cumuls de l'année). Pour voir par exemple le contenu de la table RT, il suffit de double-cliquer sur la ligne correspondante.

Page 38: 1 Programmation dans HR Les infotypes Les macros Les clusters.

38

Les clusters de données - Visualisation

Contenu de la table RT (table des résultats de paie)

Voici le contenu de la table RT (table des résultats de paie) qui liste l’ensemble des rubriques de paie : on a tout le détail des rubriques de paie sur le mois de juillet 2003.

Page 39: 1 Programmation dans HR Les infotypes Les macros Les clusters.

39

Les clusters de données - Visualisation

Visualisation du cluster B2 (résultats du calcul des temps)

Afin de visualiser les résultats de temps dans le cluster B2 (résultats du calcul des temps) de la table PCL2, il faut passer par le chemin suivant :

Page 40: 1 Programmation dans HR Les infotypes Les macros Les clusters.

40

Les clusters de données - Visualisation

On peut également visualiser les résultats de paie dans le cluster B2 (résultats du calcul des temps) en lançant via la transaction SE38 le programme standard SAP RPCLSTB2.

Page 41: 1 Programmation dans HR Les infotypes Les macros Les clusters.

41

Les clusters de données - Visualisation

1

2

Voici l’écran de sélection du programme RPCLSTB2 :

Matricule du salarié

Période (date de début et de fin) pour laquelle on souhaite l’affichage des résultats.

12

Remarque : si ni l'année ni la période est saisie, on obtiendra tous les résultats depuis l'embauche du salarié

Page 42: 1 Programmation dans HR Les infotypes Les macros Les clusters.

42

Les clusters de données - Visualisation

Comme souhaité, on obtient uniquement les enregistrements générés par les calculs des temps sur tous les mois.Et pour visualiser le contenu du cluster B2 du mois de juillet 2003, il suffit de double-cliquer sur la ligne qui nous intéresse.:

Page 43: 1 Programmation dans HR Les infotypes Les macros Les clusters.

43

Les clusters de données - Visualisation

Aperçu du contenu du cluster B2

Pour les résultats de temps, les tables les plus consultées sont les 3 tables ZES (soldes horaires par jour), SALDO (soldes horaires cumulés) et ZL (rubriques de temps).

Pour voir par exemple le contenu de la table ZL, il suffit de double-cliquer sur la ligne correspondante.

Page 44: 1 Programmation dans HR Les infotypes Les macros Les clusters.

44

Les clusters de données - Visualisation

Contenu de la table RT (table des résultats de paie)

Voici le contenu de la table ZL (table des rubriques de temps) qui liste l’ensemble des rubriques de temps : nous avons tout le détail des rubriques de temps sur le mois de juillet 2003.

Page 45: 1 Programmation dans HR Les infotypes Les macros Les clusters.

45

Les clusters de données - Suppression

Le programme RPUPnD10 (où n = 1, 2, 3 ou 4) est un utilitaire standard permettant de supprimer des enregistrements d’un cluster quelconque de la table PCLn.

Exemple : pour supprimer des résultats de paie du cluster RF de la table PCL2, il suffit donc d’utiliser le programme RPUP2D10 en renseignant dans l’écran de sélection du programme le nom du cluster, les entrées à supprimer et l’identifiant de l’utilisateur.

Page 46: 1 Programmation dans HR Les infotypes Les macros Les clusters.

46

Les clusters de données - Suppression

Le programme demande une confirmation avant de supprimer définitivement les entrées du cluster RF de la table PCL2 :

Page 47: 1 Programmation dans HR Les infotypes Les macros Les clusters.

47

Les clusters de données – Gestion

Exportation de données (écriture dans un cluster)

Déclaration de la table d’importation /exportation PCLn

Définition du cluster (la définition du cluster est incluse à l’aide de l’instruction INCLUDE).

Alimentation de la clé du cluster xy-KEY

Alimentation des données / structures.

Écriture des données alimentées dans le cluster via la commande suivante :

EXPORT TO DATABASE PCLn(xy) ID xy-KEY

La commande EXPORT écrit 1 ou plusieurs objets de données tels que xy-KEY dans le cluster xy.

Si l’exportation est effectuée avec succès, le code de retour est 0.

Page 48: 1 Programmation dans HR Les infotypes Les macros Les clusters.

48

Les clusters de données – Gestion

Importation de données (lecture dans un cluster)

Déclaration de la table d’importation /exportation PCLn

Définition du cluster (la définition du cluster est incluse à l’aide de l’instruction INCLUDE).

Alimentation de la clé du cluster xy-KEY

Alimentation des données / structures.

Lecture des données se trouvant dans le cluster via la commande suivante :

IMPORT FROM DATABASE PCLn(xy) ID xy-KEY

La commande IMPORT lit les objets de données dotés des valeurs de clé spécifiés à partir de la table de base de données d’importation / exportation.

Si la lecture de l’enregistrement est effectuée avec succès, le code retour est 0. Dans le cas contraire, le code retour est 4.

Page 49: 1 Programmation dans HR Les infotypes Les macros Les clusters.

49

Trucs et astuces

Fonctions RFCInstruction HIDE

Création d’une vueCréation d’un matchcode

Définition d’un objet d’autorisation

Définition d’une arborescence

Page 50: 1 Programmation dans HR Les infotypes Les macros Les clusters.

50

Utilisation des fonctions RFC

SAP offre la possibilité à un système de communiquer avec un autre système par des liaisons RFC (Remote Function Call).

On peut ainsi d’une machine source (machine X) se connecter à une machine cible (machine Y) distante après avoir établi les deux liaisons nécessaires. La première est une liaison locale (du système X vers lui-même) et la seconde est une liaison distante (Système X vers système Y).

Il existe des possibilités prédéfinie sur SAP des fonctionnalités que l’on peut activer dans le système cible. On peut par exemple visualiser des tables, lancer des programmes…..(affichable en faisant une recherche en SE37 avec le mot clef “ RFC ”).

Exemple : La fonction 'TABLE_ENTRIES_GET_VIA_RFC‘ permet de récupérer la structure d’une table ainsi que son contenu.

Page 51: 1 Programmation dans HR Les infotypes Les macros Les clusters.

51

Utilisation des fonctions RFC

La fonction permet à partir d’une machine source de se connecter à une machine cible distante. La liaison RFC se définit via la transaction SM59.

Page 52: 1 Programmation dans HR Les infotypes Les macros Les clusters.

52

Utilisation des fonctions RFC

Définition de la liaison RFC

Renseigner la désignation de la liaison (attention la zone est case-sensitive)

Saisir le nom de la liaison

Préciser la machine cible, son adresse IP et son numéro de système

Renseigner la langue, le mandant, l’utilisateur et son mot de passe. Ces renseignements ne sont pas obligatoires mais ils permettent de ne pas avoir une boîte de dialogue qui s’affiche lors de la connexion. Ils deviendront obligatoires si la liaison est utilisée pour un traitement automatique (ALE, lancement automatique d’un job…)

Attention : pour des raisons de sécurité, privilégier l’utilisation d’un user de type CPIC et non un user de type dialogue. cible et le N° de système dans le SAP Logon (propriétés de la machine cible).

Page 53: 1 Programmation dans HR Les infotypes Les macros Les clusters.

53

Utilisation des fonctions RFC

Exemple de liaison

Page 54: 1 Programmation dans HR Les infotypes Les macros Les clusters.

54

Utilisation du HIDE

Cette instruction permet de rendre dynamique un état de restitution. SAP peut par cette instruction récupérer le nom et le contenu de n’importe quelle zone affichée à l’écran. Ainsi on peut gérer un traitement déclenché au double clique de l’utilisateur ou lorsque celui-ci actionne une touche au clavier.

Cette instruction est très utile pour la gestion des report interactifs. En effet, elle permet de lancer un second programme (ou une transaction) en fonction de la valeur du champs récupérée .

Exemple : Un utilisateur affiche un report concernant une liste de salarié. S’il clique sur une ligne du report il pourra alors soit visualiser des données complémentaires soient créer de nouvelles données pour le matricule concerné.

Page 55: 1 Programmation dans HR Les infotypes Les macros Les clusters.

55

Utilisation du HIDE

Exemple de syntaxe

LOOP AT ITAB.

CONCATENATE ITAB-BEGDA+6(2)'.'ITAB-BEGDA+4(2)'.'ITAB-BEGDA+2(2) INTO D1.

CONCATENATE ITAB-ENDDA+6(2)'.'ITAB-ENDDA+4(2)'.'ITAB-ENDDA+2(2) INTO D2.

WRITE: /5 ITAB-SUBTY, ITAB-ATEXT(25), D1, D2.

HIDE: ITAB-PERNR, ITAB-BEGDA, ITAB-ENDDA, ITAB-SUBTY, ITAB-INFTY.

ENDLOOP.

AT USER-COMMAND.

WHEN 'CREATE'.

CALL FUNCTION 'HR_INITIALIZE_BUFFER'

EXPORTING

TCLAS = 'A'

PERNR = ITAB-PERNR.

....

Page 56: 1 Programmation dans HR Les infotypes Les macros Les clusters.

56

Création d’une vue

Une vue est une fonction SAP qui permet à un utilisateur de gérer des données de paramétrage, les données provenant de plusieurs tables.

Exemple :

La gestion des vues se fait via la transaction SE11

Les entrées sont gérées via la transaction SM30/SM31

Page 57: 1 Programmation dans HR Les infotypes Les macros Les clusters.

57

Création d’une vue

Exemple de vue

S: Seule la lecture est autorisée pour la zone de vue,

R: La zone de vue est utilisée pour création de subset.

Page 58: 1 Programmation dans HR Les infotypes Les macros Les clusters.

58

Création d’une vue

Exemple de jointure

Page 59: 1 Programmation dans HR Les infotypes Les macros Les clusters.

59

Création d’une vue

Exemple d’environnement de gestion

Utilitaires/Générateur de gestion de tables

Gestion des délimitations : Environnement/Domaine de validité

Page 60: 1 Programmation dans HR Les infotypes Les macros Les clusters.

60

Création d’un matchcode

Le matchcode est une fonction SAP qui permet d’ider l’utilisateur dans sa recherche.

Des matchcodes standard existent pour les zones standard, mais ilest parfois utile de créer ses propres matchcode pour des zones spécifiques ou pour des zones standard en donnant de nouvelles possibilités de recherche à l’utilisateur..

La gestion des matchcodes se fait via la transaction SE11

Page 61: 1 Programmation dans HR Les infotypes Les macros Les clusters.

61

Création d’un matchcode

Renseigner la désignation. Attention, c’est ce texte qui sera repris lors de l’affichage des aides à la recherche pour l’objet.

Choisir le mode de sélection : Les entrées possibles affichées sur la liste des occurrences pour une zone seront déterminées pendant l'exécution par une sélection de la base de données. La sélection de méthode décrit l'objet de base de données qui lira les données. Vous pouvez indiquer une table de données ou une vue comme sélection de méthode.

Choisir le comportement de dialogue : Le Type de dialogue détermine quelles sont les étapes de dialogue lors du processus d'aide à la saisie.

Page 62: 1 Programmation dans HR Les infotypes Les macros Les clusters.

62

Création d’un matchcode

Les types de dialogues suivants sont possibles :

Affichage des valeurs immédiat : La liste des occurrences est affichée immédiatement après l'appel de l'aide à la recherche. Cela n'est utile que lorsque la liste des occurrences contient peu d'entrées.

Dialogue avec délimitation de valeur : La boîte de dialogue pour délimiter les valeurs apparaît immédiatement. Choisissez cette option car la liste des entrées possibles est généralement très longue. L'utilisateur en délimitant la quantité de données à traiter, clarifie la liste des occurrences et allège le système lors de la sélection des valeurs.

Dialogue dépendant du jeu de valeurs: Si la liste des occurrences comprend moins de 100 entrées, elle sera affichée immédiatement. Dans le cas contraire, la boîte de dialogue pour délimiter les valeurs apparaît.

Page 63: 1 Programmation dans HR Les infotypes Les macros Les clusters.

63

Création d’un matchcode

Renseigner les zones qui seront utilisées pour la recherche : Cocher la case EXPORT pour la zone qui sera exportée. Bien faire attention aux éléments de donnée. Si on veut que certaines valeurs soient reprises automatiquement, on peut définir des valeurs par défaut (qui peuvent être des ID). Il faut encore une fois spécifier la zone qui sera exportée.

Renseigner la position de chaque paramètre dans l’écran de sélection. Si le paramètre ne doit pas apparaître dans la liste des occurrences, laissez cette zone vierge. Aucun numéro de position ne doit apparaître deux fois dans cette colonne. Les espaces sont autorisés. Ils n'ont aucune répercussion sur la structure de la liste des occurrences.

Sauvegarder et activer la nouvelle aide à la recherche

Page 64: 1 Programmation dans HR Les infotypes Les macros Les clusters.

64

Création d’un matchcode

Exemple de matchcode

Page 65: 1 Programmation dans HR Les infotypes Les macros Les clusters.

65

Définition d’un objet d’autorisation

Un objet d’autorisation est basé sur un ou plusieurs éléments de données sur lesquels SAP pourra faire des contrôles d’autorisation via l’instruction ‘check authority’.

Les valeurs autorisés pour l’objet en question seront précisés au niveau du profil utilisateur.

Exemple : Dans le module HR, nous avons l’objet P_PERNR, basé sur l’éléments de données PERNR, numéro de matricule. Si un utilisateur a uniquement les droits sur les matricules allant de 10000000 à 2000000, il suffit de préciser dans son profil que l’objet P_PERNR doit avoir une valeur comprise entre 10000000 à 2000000. Lors du contrôle d’autorisation standard sur l’objet P_PERNR, SAP ira lire les valeurs autorisées par le profil et les comparera à la valeur du matricule que l’utilisateur veut gérer.

Page 66: 1 Programmation dans HR Les infotypes Les macros Les clusters.

66

Définition d’un objet d’autorisation

Définition par la transaction SE80

Page 67: 1 Programmation dans HR Les infotypes Les macros Les clusters.

67

Définition d’un objet d’autorisation

Exemple d’objet d’autorisation

Page 68: 1 Programmation dans HR Les infotypes Les macros Les clusters.

68

Définition d’un objet d’autorisation

Description des zones d’autorisation : Saut/Zones d’autorisation

Page 69: 1 Programmation dans HR Les infotypes Les macros Les clusters.

69

Définition d’un objet d’autorisation

Exemple de zone d’autorisation

Page 70: 1 Programmation dans HR Les infotypes Les macros Les clusters.

70

Définition d’un objet d’autorisation

Contrôle d’autorisation sur l’objet YP_REST

authority-check object 'YP_RESP'

id 'YAUTH' field wp_droit

id 'YYPAGT' dummy

id 'MOLGA' dummy

id 'YYRUBR' dummy

id 'MOABW' field wp_moabw

id 'YYMOABW' field wp_yymoabw.

Page 71: 1 Programmation dans HR Les infotypes Les macros Les clusters.

71

Définition d’une arborescence