Variantenpflege -> mehrere Probleme

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Variantenpflege -> mehrere Probleme

Beitrag von holderda (ForumUser / 41 / 15 / 0 ) »
Hallo, habe mehrere Probleme zu meinem Programm. Bin über jede Hilfe dankbar :)

Ich soll ein paar Sachen an einem Programm verändern, dass ich nicht so recht kapiere.

Eigentlich sind es zwei Programme. Das eine ist eine Ausgabe

Code: Alles auswählen.

 TYPE-POOLS: rsdg, slis.

TABLES: rsrparametrizat.

DATA: it_variant  TYPE STANDARD TABLE OF rsrparametrizat.

DATA int_fcat2 TYPE slis_t_fieldcat_alv WITH HEADER LINE.
DATA int_fcat  TYPE slis_t_fieldcat_alv.

DATA: BEGIN OF line,
         langu    TYPE langu,
         paramnm  TYPE rsparamnm,
         objvers  TYPE rsobjvers,
         txtsh    TYPE rstxtsh,
         txtmd    TYPE rstxtmd,
         txtlg    TYPE rstxtlg,
      END OF line.

SELECTION-SCREEN BEGIN OF SCREEN 600.
" PARAMETERS p_param TYPE rsparamnm OBLIGATORY.

"PARAMETERS p_param LIKE rsrparametrizat-paramnm.
PARAMETERS p_langu LIKE rsrparametrizat-langu OBLIGATORY.
PARAMETERS: cb_all AS CHECKBOX DEFAULT rs_c_false.
"PARAMETERS p_txt TYPE rstxtlg.
"SELECTION-SCREEN END OF SCREEN 500.

SELECTION-SCREEN END OF SCREEN 600.
CALL SELECTION-SCREEN 600.


IF cb_all = rs_c_false.
  SELECT *
     FROM rsrparametrizat
     INTO CORRESPONDING FIELDS OF TABLE it_variant
     WHERE langu    = 'DE'
     AND   paramnm  LIKE 'Z%'
     AND   objvers  = 'A'.
     "AND   txtlg = ''. "nur nicht übersetzte anzeigen
* variante existiert nur in DE nicht in EN -> n. übers.
ENDIF.

IF cb_all = rs_c_true.
  SELECT *
   FROM rsrparametrizat
   INTO CORRESPONDING FIELDS OF TABLE it_variant
   WHERE langu    = p_langu
   AND   paramnm  LIKE 'Z%'
   AND   objvers  = 'A'.


ENDIF.


int_fcat2-fieldname = 'LANGU'.
int_fcat2-seltext_m = 'Sprache'.
int_fcat2-col_pos = 1.
APPEND int_fcat2 TO int_fcat.
CLEAR int_fcat2.

int_fcat2-fieldname = 'PARAMNM'.
int_fcat2-seltext_m = 'Variante'.
int_fcat2-col_pos = 1.
APPEND int_fcat2 TO int_fcat.
CLEAR int_fcat2.

int_fcat2-fieldname = 'OBJVERS'.
int_fcat2-seltext_m = 'Objektversion'.
int_fcat2-col_pos = 1.
APPEND int_fcat2 TO int_fcat.
CLEAR int_fcat2.

int_fcat2-fieldname = 'TXTSH'.
int_fcat2-seltext_m = 'Beschreibung kurz'.
int_fcat2-col_pos = 1.
APPEND int_fcat2 TO int_fcat.
CLEAR int_fcat2.

int_fcat2-fieldname = 'TXTMD'.
int_fcat2-seltext_m = 'Beschreibung mittel'.
int_fcat2-col_pos = 1.
APPEND int_fcat2 TO int_fcat.
CLEAR int_fcat2.

int_fcat2-fieldname = 'TXTLG'.
int_fcat2-seltext_m = 'Beschreibung lang'.
int_fcat2-col_pos = 1.
APPEND int_fcat2 TO int_fcat.
CLEAR int_fcat2.


*LOOP AT it_variant INTO line.
*  WRITE: / line-langu, line-paramnm, line-txtlg, line-objvers.
*ENDLOOP.


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    it_fieldcat   = int_fcat
  TABLES
    t_outtab      = it_variant
  EXCEPTIONS
    program_error = 1
    OTHERS        = 2. 


Das andere die Übersetzung

Code: Alles auswählen.

 DATA: lt_rsrparametrizat  TYPE TABLE OF rsrparametrizat,
      ls_rsrparametrizat  TYPE rsrparametrizat,
      langu    TYPE langu.


PARAMETERS p_param LIKE rsrparametrizat-paramnm.
PARAMETERS p_txt TYPE rstxtlg.
PARAMETERS sprache LIKE rsrparametrizat-langu OBLIGATORY.

START-OF-SELECTION.

  SELECT SINGLE *
  FROM rsrparametrizat
  INTO ls_rsrparametrizat
  WHERE langu  = sprache
  AND paramnm  = p_param
  AND objvers  = 'A' .

  ls_rsrparametrizat-langu    = sprache.
  ls_rsrparametrizat-paramnm  = p_param.
  ls_rsrparametrizat-objvers  = 'A'.
  ls_rsrparametrizat-txtlg    = p_txt.

  MODIFY rsrparametrizat FROM ls_rsrparametrizat.

  CALL FUNCTION 'DB_COMMIT'.

  IF sy-subrc IS INITIAL.
    WRITE: 'Update erfolgreich'.
    SKIP.
    WRITE: /   p_param,
    p_txt,
    sprache.

  ENDIF. 

Problem 1 (Ausgabe Programm):
Die Ausgabe soll nur Werte enthalten, welche nicht !PERS* enthalten.
Dachte an sowas:

Code: Alles auswählen.

DELETE it_variant WHERE paramnm NE '!PERS*'.
?

Problem 2 (Ausgabe Programm):
Die beschreibung lang wird gar nicht angezeigt, bei der kurzen bescheibung stehen keine Werte.?

Problem 3 (Übersetzungsprogramm)
Die Ausgabe aus dem ersten Programm soll als Tabelle im zweiten Programm angezeigt werden, dass der Endnutzer immer ablesen kann, welche Varianten noch nicht übersetzt sind.?

Wenn jmd was genauer wissen muss gerne fragen :)

Ich hoffe der eine oder andere hat ne Lösung für die Probleme :) Bin euch für jeden Hinweis dankbar!
LG

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Variantenpflege -> mehrere Probleme

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
hi,
Problem 1 (Ausgabe Programm):
Die Ausgabe soll nur Werte enthalten, welche nicht !PERS* enthalten.
definier das Feld paramnm als SELECT-OPTIONS, dann kannst du bei der Selektion bequem mit Mustern arbeiten:

Code: Alles auswählen.

SELECT-OPTIONS: o_paramnm for rsrparametrizat-paramnm.

      SELECT *
         FROM rsrparametrizat
         INTO CORRESPONDING FIELDS OF TABLE it_variant
         WHERE langu    = 'DE'
         AND   paramnm IN o_paramnm  "<--- die auszuschliessenden Werte gibst du in dem Selektionsbild in der Mehrfachselektion vor
         AND   objvers  = 'A'.
Problem 2 (Ausgabe Programm):
Die beschreibung lang wird gar nicht angezeigt, bei der kurzen bescheibung stehen keine Werte.?
wo ist denn hier der Unterschied? Wird überhaupt etwas aus der Tabelle selektiert? Hast du dir das im Debugger angeschaut?

Folgende Benutzer bedankten sich beim Autor Alexander D. für den Beitrag:
holderda

schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: Variantenpflege -> mehrere Probleme

Beitrag von holderda (ForumUser / 41 / 15 / 0 ) »
Hallo Alexander, erst einmal danke für deine schnelle Antwort,

dein erster Vorschlag würde zwar funktionieren, aber das Ergebniss, bzw die Ausgabe ist nachher die Suchhilfe im Übersetzungsprogramm. Wie bekomme ich dann dort die Felder mit '!PERS*' weg, dass in der Suchhilfe nur noch alle anderen angezeigt werden?

Zu Aufgabe 2:

Bei dem Ausgabeprogramm werden die Spalten: Sprache, Variante, Objektversion, Beschreibung kurz (leer), Beschr. mittel (leer) und Beschreibung lang (gefüllt) ausgegeben.

Bei der Suchhilfe im Übersetzungsprogramm werden nur noch die ersten 4 Spalten angezeigt.

Lg

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2721
Views
Probleme mit Typ RAW
von PeterPaletti » 28.08.2015 14:36 • Verfasst in ABAP® für Anfänger
1
Antw.
1771
Views
Probleme mit JOIN
von robin1at » 07.06.2006 11:17 • Verfasst in ABAP® für Anfänger
0
Antw.
2416
Views
Probleme mit Mini-SAP
von SkyHobbit » 20.03.2007 07:32 • Verfasst in ABAP® Core
1
Antw.
2156
Views
1
Antw.
1012
Views
Probleme mit create_by_url
von ABAP_User » 21.06.2011 15:49 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

BAPI zur ABSO?
vor 6 Tagen von DeathAndPain 2 / 1007
Materialstammerweiterung: Neuer Reiter
vor 2 Wochen von DeathAndPain gelöst 4 / 1689
Ermittlung der Arbeitstage (Mosid)
vor 3 Wochen von Radinator 11 / 47366
LSMW-Problem
vor 4 Wochen von DeathAndPain gelöst 6 / 5259

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

BAPI zur ABSO?
vor 6 Tagen von DeathAndPain 2 / 1007
Materialstammerweiterung: Neuer Reiter
vor 2 Wochen von DeathAndPain gelöst 4 / 1689
Ermittlung der Arbeitstage (Mosid)
vor 3 Wochen von Radinator 11 / 47366
LSMW-Problem
vor 4 Wochen von DeathAndPain gelöst 6 / 5259