Überprüfung der Sprachpflege

Getting started ... Alles für einen gelungenen Start.
37 Beiträge • Vorherige Seite 3 von 3 (current)
37 Beiträge Vorherige Seite 3 von 3 (current)

Re: Überprüfung der Sprachpflege

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Es ist echt schwer, Deine Postings zu verstehen.

Keep it simple.

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


Re: Überprüfung der Sprachpflege

Beitrag von Spookykid (Specialist / 140 / 28 / 0 ) »
Hallo,

relativ oft ist das Textfeld ebenfalls Schlüsselfeld. Habt ihr ne Ahnung, wie man dieses trotzdem überprüfen kann?

Code: Alles auswählen.

Löschen der Schlüsselfelder in <row_en> und <row_de> ( diesmal inkl. Sprachfeld )
* Schauen, ob der Rest nun gleich ist, da du das ja auch nicht haben willst
*        if gleich.
*        write:/ 'Eintrag identisch',
*                <row_de>.
*        endif.

ich komme nicht weiter

Beitrag von Spookykid (Specialist / 140 / 28 / 0 ) »

Code: Alles auswählen.

    data:     dref type ref to data,
              keys type standard table of fieldname,
              key type  fieldname,
              where_rlang type string,
              where_clang type string.

    data      error type ref to cx_root.

    data:     collines(800) type c.




    field-symbols:  <t_rlang> type hashed table,
                    <t_clang>   type hashed table,
                    <row_rlang> type any,
                    <keys> type abap_sortorder,
                    <row_clang> type any,
                    <key>       type fieldname.

Code: Alles auswählen.

    loop at <t_rlang> assigning <row_rlang>.
      read table <t_clang> from <row_rlang> assigning <row_clang>.
      if sy-subrc <> 0.
        write:/ `In Customizingtabelle `,t_name, ` ist der Datensatz `, <row_rlang>, ` nicht vorhanden!`.
      else.
        loop at keys assigning <key>.
          <row_rlang>-<key> = ''.
          <row_clang>-<key> = ''.
        endloop.
Wie kann ich dynamisch die einzelnen Felder von <row_rlang> initial setzen? Die entsprechenden Felder sind in keys.

Re: ich komme nicht weiter

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
hi!

Ich glaub du suchst das

Code: Alles auswählen.

  loop at <t_rlang> assigning <row_rlang>.
      read table <t_clang> from <row_rlang> assigning <row_clang>.
      if sy-subrc <> 0.
        write:/ `In Customizingtabelle `,t_name, ` ist der Datensatz `, <row_rlang>, ` nicht vorhanden!`.
      else.
        loop at keys assigning <key>.
          assign component <key> of structure <row_rlang> to <ld_field>.
          <ld_field> = ''.
          assign component <key> of structure <row_clang> to <ld_field>.
          <ld_field> = ''.
        endloop.
      endif.
  endloop.
Zumindest wär es so syntaktisch richtig.


lg ADT

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
Spookykid

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Überprüfung der Sprachpflege

Beitrag von Spookykid (Specialist / 140 / 28 / 0 ) »
Vielen Dank für die Antwort. Syntaktisch korrekt ist der Code, jedoch rassle ich sofort in einen Runtime Error, wenn ich die Komponente MANDT löschen (bzw auf '') setzen möchte.

MOVE_TO_LIT_NOTALLOWED_NODATA
A new value is to be assigned to the field "<LD_FIELD>", although this field is
entirely or partly protected against changes.

The following are protected against changes:
- Character literals or numeric literals
- Constants (CONSTANTS)
- Parameters of the category IMPORTING REFERENCE for functions and
methods
- Untyped field symbols not yet assigned a field using ASSIGN
- TABLES parameters if the actual parameter is protected against changes
- USING reference parameters and CHANGING parameters for FORMs, if the
actual parameter is protected against changes and
- Accesses using field symbols if the field assigned using ASSIGN is
protected (or partially protected, e.g. key components of an internal
table with the type SORTED or HASHED TABLE) against changes
- Accesses using references, if the field bound to the reference is
protected (or partially protected) against changes
- External write accesses to READ-ONLY attributes,
- Content of a shared object area instance accessed using a shared lock
(ATTACH_FOR_READ).
Der Mandt ist ja C oder NUM Type, kann man den Wert auf initial setzen?

Update: mit clear <ld_field> kommt der derselbe Runtime Error.

Ein weiteres Problem bleibt bestehen, was mache ich, wenn die Bezeichnung (weswegen ich die Überprüfung überhaupt mache) ebenfalls ein Key-Field ist?

Re: Überprüfung der Sprachpflege

Beitrag von black_adept (Top Expert / 4097 / 128 / 941 ) »
Hi Spookykid,

mein Beispielcoding solltest du nicht ungeprüft übernehmen sondern sinnvoll anpassen.
Da steht zwar "Schlüsselfelder löschen", damit du prüfen kannst, ob der Rest gleich ist oder nicht. Offensichtlich geht das nicht und die diversen Möglichkeiten warum das wohl verboten ist listet der Kurzdump ja auf - du musst nur erkennen das hier der Fall
- Accesses using field symbols if the field assigned using ASSIGN is
protected (or partially protected, e.g. key components of an internal
table with the type SORTED or HASHED TABLE) against changes
gemeint ist.
Somit darfst du die Schlüsselfelder nicht aus den Feldsymbolen direkt rauslöschen sondern solltest die einfach anderen Variablen zuweisen, die nicht der Schlüsselfeldbeschränkung unterliegen und das dann dort vollziehen.

Was deine 2. Frage angeht
Ein weiteres Problem bleibt bestehen, was mache ich, wenn die Bezeichnung (weswegen ich die Überprüfung überhaupt mache) ebenfalls ein Key-Field ist?
Irgendwie versteh ich dich immer weniger. Wenn die Bezeichnung Teil des Schlüssels ist - wie willst du dann prüfen, ob es einen zugehörigen portugiesischen Eintrag gibt? Oder hast du ein Wörterbuch im Hintergrund mit dem du das erledigen kannst?
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Überprüfung der Sprachpflege

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Hi!
Spookykid hat geschrieben:MOVE_TO_LIT_NOTALLOWED_NODATA
Mach bei deiner Feldsymboldefinition das HASHED weg und verwende nur TABLE, dann gehts!
Auch darfst du beim Anlegen der Datenfelder KEINE Schlüsselfelder angeben.

Code: Alles auswählen.

create data ... type standard table of ... with default key.
* oder
lr_line ?= CL_ABAP_TYPEDESCR=>DESCRIBE_BY_NAME( P_NAME = ... ).
lr_table = CL_ABAP_TABLEDESCR=>CREATE( P_LINE_TYPE = lr_line ).
create data ... type handle lr_table.
reicht vollkommen um die Daten aus der Datenbank zu lesen und dann bearbeiten zu können.

lg ADT

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
Spookykid

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Vergleichbare Themen

12
Antw.
11382
Views
URL Überprüfung
von Luigi91 » 28.03.2014 07:55 • Verfasst in ABAP Objects®
0
Antw.
929
Views
Überprüfung von Feldinhalten
von KLeinerj » 01.12.2005 07:58 • Verfasst in ABAP® Core
0
Antw.
1150
Views
1
Antw.
1590
Views
Überprüfung ob FUBA vorhanden ist
von nkuhn » 02.02.2007 07:40 • Verfasst in Basis
2
Antw.
1959
Views
Überprüfung der Materialreservierung für Kundenauftrag
von cuncon » 07.11.2017 08:16 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

Bedarfszusammenfassung "Einzelbedarfe"
vor 3 Stunden von harri 2 / 1188
Trennen Strasse und Hausnummer
vor 5 Stunden von ralf.wenzel 21 / 11296
Dialog-Container mit Toolbar/Status
Gestern von black_adept gelöst 27 / 4386

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

Bedarfszusammenfassung "Einzelbedarfe"
vor 3 Stunden von harri 2 / 1188
Trennen Strasse und Hausnummer
vor 5 Stunden von ralf.wenzel 21 / 11296
Dialog-Container mit Toolbar/Status
Gestern von black_adept gelöst 27 / 4386

Unbeantwortete Forenbeiträge

IT0024 Qualifikationen CP-ID
Gestern von ArjenR 1 / 260
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3189
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9778