view_maintenance_call Fehler: no_oc_found

Getting started ... Alles für einen gelungenen Start.
19 Beiträge • Seite 1 von 2 (current) Nächste
19 Beiträge Seite 1 von 2 (current) Nächste

view_maintenance_call Fehler: no_oc_found

Beitrag von STDIN (ForumUser / 39 / 16 / 0 ) »
Hallo zusammen,

ich habe über meinen Report eine Transaktion gelegt und bei der Ausführung zeigt dieser mir meine Tabelle mit den dazugehörigen Werten an. Zudem habe ich zwei Buttons eingefügt mit Eintrag löschen und Eintrag hinzufügen. Über den Button 'Eintrag hinzufügen' wird die Fkt. VIEW_MAINTENACE_CALL aufgerufen und soll somit in die SM30 wechseln. Hierbei bricht allerdings mein Programm ab, da es in der Klasse CL_VIEWFIELDS_ORG_CRIT - Constructor zu einem Fehler kommt --> no_oc_found (Keine Organisationskriterien gefunden).
Kann mir hierbei jemand helfen bzw. Tipps geben, wie ich diesen beheben kann?

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


Re: view_maintenance_call Fehler: no_oc_found

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Zu wenig Info. Kein aufrufender Code im Text; Du nennst noch nicht mal die Methode innerhalb der Klasse, die den Fehler wirft.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von STDIN (ForumUser / 39 / 16 / 0 ) »
Es ist die Methode get_oc_fields_for_table, welche aufgerufen wird. Mein sy-subrc = 2. View_name und view_fields werden übergeben, allerdings steht in der Tabelle oc_found_tab nichts innen.
Habe allerdings gelesen, dass über die Organisationskriterien die Zeilenberechtigung eingestellt wird. Kann das nicht irgendwie einfach übergangen werden, sodass jeder Berechtigte den ich festlege in jeder Zeile der Tabelle Änderungen durchführen darf?

Code: Alles auswählen.

CALL METHOD oc_viewfields->get_oc_fields_for_table
      EXPORTING
        view_name      = me->view_name
      IMPORTING
        oc_found_tab   = oc_found_tab
      CHANGING
        view_fields    = view_fields
      EXCEPTIONS
        view_not_found = 1
        no_oc_found    = 2.
    CASE sy-subrc.
      WHEN 1.
        RAISE view_not_found.
      WHEN 2.
        RAISE no_oc_found.
    ENDCASE.
* note: view_fields sorted descending now
    INSERT LINES OF view_fields INTO TABLE me->viewfields.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von ST22 (Specialist / 274 / 40 / 40 ) »
Hast du für deine Tabelle einen Pflegedialog generiert? Kannst du deine Tabelle pflegen, indem du sofort die SM30 aufrufst?

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von STDIN (ForumUser / 39 / 16 / 0 ) »
Ja, einen Pflegedialog habe ich generiert und kann diese auch wie üblich über die SM30 pflegen.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Die von Dir genannte Klasse CL_VIEWFIELDS_ORG_CRIT hat überhaupt keine Methode namens get_oc_fields_for_table. Das passt alles nicht zusammen, was Du hier schreibst. Außerdem wollte ich gerne Deinen Code sehen, der den FB VIEW_MAINTENANCE_CALL aufruft, nicht irgendein Codefragment aus dem SAP-Standard.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von STDIN (ForumUser / 39 / 16 / 0 ) »
Da habe ich mich wohl vertan ... die Methode gehört zu CL_OC_ATTR_VIEWFIELDS...

So rufe ich ihn auf:

Code: Alles auswählen.

clear: gt_sellist[].
gw_sellist-viewfield = 'USER'.
*gw_sellist-and_or = 'AND'.
gw_sellist-operator = 'EQ'.
gw_sellist-value = 'BENUTZER'.

            CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
              EXPORTING
                action                               = 'U'
                view_name                            =
'ZACTIVITIES_VIEW'
 TABLES
   DBA_SELLIST                          =  gt_sellist 
             EXCEPTIONS
               client_reference                     = 1
               foreign_lock                         = 2
               invalid_action                       = 3
               no_clientindependent_auth            = 4
               no_database_function                 = 5
               no_editor_function                   = 6
               no_show_auth                         = 7
               no_tvdir_entry                       = 8
               no_upd_auth                          = 9
               only_show_allowed                    = 10
               system_failure                       = 11
               unknown_field_in_dba_sellist         = 12
               view_not_found                       = 13
               maintenance_prohibited               = 14
               OTHERS                               = 15
                      .
            IF sy-subrc <> 0.
*              EXIT.
            ENDIF.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Ich würde vermuten, dass an dem Inhalt Deiner Tabelle irgendwas nicht stimmt. Versuch doch mal, den Baustein ohne den Tabellenparameter aufzurufen, also einfach nur:

Code: Alles auswählen.

CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
  EXPORTING
    action = 'U'
    view_name = 'ZACTIVITIES_VIEW'.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von STDIN (ForumUser / 39 / 16 / 0 ) »
Die Vermutung hatte ich auch schon, der Fehler bleibt allerdings trotzdem bestehen.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Na ja, die Methode CL_OC_ATTR_VIEWFIELDS->GET_OC_FIELDS_FOR_TABLE ist ja relativ einfach und übersichtlich. Offensichtlich wird diese Methode den von Dir beobachteten Fehler werfen, wenn Dein View nicht in der Tabelle ORGCRFLD drinsteht. Diese kannst Du Dir zwar nicht direkt mit der SE16 anschauen, wohl aber durch die kalte Küche, indem Du in der SE37 den Funktionsbaustein SE16N_INTERFACE "testest" und ihm als (einzigen) Parameter I_TAB mit dem Wert ORGCRFLD mitgibst.

In der Tabelle stehen nur wenige Einträge drin, und sie sind alle SAP-Standard. Unsere selbst angelegten Customizingtabellen stehen da auch nicht drin. Gleichwohl funktioniert bei uns der FB VIEW_MAINTENANCE_CALL. Das lässt nur den einen Schluss zu, dass die Methode für eigene Pflegeviews gar nicht erst aufgerufen werden sollte. Da dies bei Dir aber doch passiert, muss nach meinem Dafürhalten irgendwas an dem Pflegedialog im Tabellenpflegegenerator schief sein.

Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
STDIN


Re: view_maintenance_call Fehler: no_oc_found

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Kann es sein, dass es sich bei ZACTIVITIES_VIEW um einen Pflege-View mit Feldern handelt die das Pflegemerkmal "Subset" gesetzt haben?

Ganz leicht festzustellen, indem man den Pflegedialog über die Transaktion SM30 aufruft und dann kommt ein Auswahlpopup "Arbeitsbereich festlegen".

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

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: view_maintenance_call Fehler: no_oc_found

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
STDIN hat geschrieben:
25.02.2020 11:41
So rufe ich ihn auf:

clear: gt_sellist[].
gw_sellist-viewfield = 'USER'.
*gw_sellist-and_or = 'AND'.
gw_sellist-operator = 'EQ'.
gw_sellist-value = 'BENUTZER'.
gt_sellist scheint leer zu sein...?!
Spendiere deinem Programm mal einen APPEND...

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
a-dead-trousers hat geschrieben:
26.02.2020 13:33
Kann es sein, dass es sich bei ZACTIVITIES_VIEW um einen Pflege-View mit Feldern handelt die das Pflegemerkmal "Subset" gesetzt haben?

Ganz leicht festzustellen, indem man den Pflegedialog über die Transaktion SM30 aufruft und dann kommt ein Auswahlpopup "Arbeitsbereich festlegen".
Guter Hinweis!

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
ewx hat geschrieben:gt_sellist scheint leer zu sein...?!
Spielt ja keine Rolle, da sein Problem auch dann fortbesteht, wenn er die Tabelle gar nicht übergibt. Das mache ich bei dem FB aber immer so; das funktioniert.

Re: view_maintenance_call Fehler: no_oc_found

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
DeathAndPain hat geschrieben:
26.02.2020 14:20
ewx hat geschrieben:gt_sellist scheint leer zu sein...?!
Spielt ja keine Rolle, da sein Problem auch dann fortbesteht, wenn er die Tabelle gar nicht übergibt. Das mache ich bei dem FB aber immer so; das funktioniert.
Siehe meinen Kommentar viewtopic.php?f=1&t=24205#p94979

Wenn ein Subset aktiv ist, MUSS man im Viewcluster diese Daten übergeben, weil sonst das Popup für den "Arbeitsbereich" hochkommt. Von der Meldung her ("Keine Organisationskriterien gefunden") würde ich darauf schließen, dass das genau der Fehler ist der den korrekten Aufruf von VIEW_MAINTENANCE_CALL verhindert.

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

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

5
Antw.
4007
Views
CALL TRANSACTION bestimmten VIEW
von Niels » 06.07.2015 16:24 • Verfasst in ABAP® Core
3
Antw.
942
Views
Fehler: CALL FUNCTION NOT ACTIVE
von autohandel7 » 07.03.2019 13:19 • Verfasst in ABAP® für Anfänger
4
Antw.
7793
Views
Fehler bei CALL SCREEN 1000.
von matthes » 18.07.2008 09:31 • Verfasst in Dialogprogrammierung
2
Antw.
1772
Views
Fehler abfangen mit SUBMIT oder CALL TRANSACTION
von Barney » 07.09.2015 16:16 • Verfasst in ABAP® für Anfänger
0
Antw.
1412
Views
Maintenance Optimizer im SAP Solution Manager
von Nautilus » 09.02.2007 11:07 • Verfasst in Web Application Server

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 2 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

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

Zwischensumme Adobe Forms
vor 2 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 2 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140