IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAP Discussion :

search help avec ABAP


Sujet :

SAP

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    309
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 309
    Points : 91
    Points
    91
    Par défaut search help avec ABAP
    Bonjour experts,

    J'ai deux champs fields1 et fields basés sur une même table bdd et qui apparaissent sur l'écran. Je voudrais qu'une fois que l'on selectionne une valeur dans field1 que la liste disponible dans field2 en depende.

    la relation entre field1 et field2 est n:1.

    Merci pour votre aide.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    voici un exemple qui marche, tu pourras regarder ce qu'il y a dans SE11 dans la table SFLIGHT:
    parameters CARRID TYPE SFLIGHT-CARRID.
    parameters CONNID TYPE SFLIGHT-CONNID.

    tu lances avant le programme SAPBC_DATA_GENERATOR (avec le plus petit éventail de données) pour remplir SFLIGHT

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    je viens de voir qu'il y a un bug SAP sur le cas que je t'ai donné. SAP utilise H_SPFLI sur la zone SFLIGHT-CONNID, alors qu'elle n'est en réalité pas liée (il suffit de cliquer sur le bouton Aide à la recherche pour cette zone pour obtenir un message d'erreur "il n'a pas d'aide à la recherche").

    Bref, voici un vrai exemple (la liste de valeurs de la zone Y dépend de la valeur de la zone X) :

    parameters x type scounter-carrid.
    parameters y type scounter-countnum.

  4. #4
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    309
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 309
    Points : 91
    Points
    91
    Par défaut
    Merci vous,

    Le code suivant fonctionne bien. Je voudrais maintenant savoir comment remplir automatiquement, le champ1(p_bukrs)

    des que l'on choisit une valeur dans champs2(p_tplst). Au fait la relation p_bukrs : p_tplst est de 1:N. Donc, quand on choisit

    une valeur dans p_tplst , il n'y aura qu'une seule valeur correspondante dans p_bukrs. Alors autant la remplir automatiquement pour

    eviter au user de devoir choisir, de tout facon il n'y a qu'une seule valeur.

    J'ai essayé le code suivant mais ca ne marche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT bukrs FROM ttds INTO TABLE it_bukrs WHERE tplst = p_tplst.
      p_bukrs = it_bukrs-bukrs.
    Merci d'avance,


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    REPORT  z4help.
    
    DATA : it_return1 LIKE ddshretval OCCURS 0 WITH HEADER LINE,
           it_return2 LIKE ddshretval OCCURS 0 WITH HEADER LINE.
    
    DATA: BEGIN OF it_bukrs OCCURS 0,
            bukrs LIKE ttds-bukrs,
          END OF it_bukrs.
    
    DATA: BEGIN OF it_tplst OCCURS 0,
            tplst LIKE ttds-tplst,
          END OF it_tplst.
    
    PARAMETERS: p_bukrs LIKE ttds-bukrs,
                p_tplst LIKE ttds-tplst.
    
    "DATA m LIKE ttds-tplst.
    
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_bukrs.
      IF p_tplst IS INITIAL.
        SELECT DISTINCT bukrs FROM ttds INTO TABLE it_bukrs.
        "where bukrs = p_bukrs.
    
      ELSE.
        SELECT  DISTINCT bukrs FROM ttds INTO TABLE it_bukrs WHERE tplst = p_tplst.
      ENDIF.
    
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = 'P_BUKRS'
          value_org       = 'S'
        TABLES
          value_tab       = it_bukrs
          return_tab      = it_return1
        EXCEPTIONS
          parameter_error = 1
          no_values_found = 2
          OTHERS          = 3.
      p_bukrs = it_return1-fieldval.
    
      SELECT tplst FROM ttds INTO TABLE it_tplst WHERE bukrs = p_bukrs.
    
    
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_tplst.
      IF p_bukrs IS INITIAL.
        SELECT  DISTINCT tplst FROM ttds INTO TABLE it_tplst.
      ELSE.
        SELECT  DISTINCT tplst FROM ttds INTO TABLE it_tplst WHERE bukrs = p_bukrs.
      ENDIF.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = 'P_TPLST'
          value_org       = 'S'
        TABLES
          value_tab       = it_tplst
          return_tab      = it_return2
        EXCEPTIONS
          parameter_error = 1
          no_values_found = 2
          OTHERS          = 3.
      p_tplst = it_return2-fieldval. 
    
    "****************************************************************************** 
    
    SELECT bukrs FROM ttds INTO TABLE it_bukrs WHERE tplst = p_tplst.
      p_bukrs = it_bukrs-bukrs.

Discussions similaires

  1. Help avec un vbs
    Par Routard2014 dans le forum Windows
    Réponses: 0
    Dernier message: 21/01/2014, 16h00
  2. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  3. connexion avec le reseau est-elle etablie ou pas? search api
    Par mehdi_swatch dans le forum Windows
    Réponses: 2
    Dernier message: 29/03/2005, 17h54
  4. Help : Pb d'installation avec pgsql
    Par gueeyom dans le forum PostgreSQL
    Réponses: 10
    Dernier message: 03/06/2004, 17h54
  5. Help ODBC avec Mysql
    Par Ashura75013 dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/02/2004, 08h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo