Funktionsbaustein + Web Dynpro --> Fehler

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

ABAP Web Dynpro, BusinessServerPages; Erstellung von Webapplikationen.
64 Beiträge • Vorherige Seite 2 von 5 (current) Nächste
64 Beiträge Vorherige Seite 2 von 5 (current) Nächste

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Also wenn ich das richtig verstanden habe muss ich der Methode read_links das Objekt über geben, von dem ich die verknüpften Objekte haben will. Als Rückgabewert bekomme ich ein Tabelle zurück.
Muss ich dann ein MARA-Objekt übergeben bzw. die Materialnummer?

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


Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Moin Alex,

Welches Objekt du übergibst, hängt von deinem Motor hab. Ich denke mal, dieser ist als Material im Materialstamm angelegt, oder?
In IS_OBJECT musst du eine Nummer, den Typen (z.B. BUS2012 für Bestellungen) sowie die Kategorie des Objekts. In der Transaktion SWO1 kannst du dir den Objekttypen zu deinen Motoren raussuchen. Bei der Kategorie weiß ich leider auch gerade nicht mehr, wie man das bestimmt, aber dazu gibt es ja Google! ;)

MARA ist nur die Tabelle in der, der Materialstamm gespeichert ist, du bräuchtest also zum Übergeben einer Materialnummer, den Objekttypen zum Materialstamm.
Gruß,
der Matze

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Hallo Matze,

sorry musste zwischendurch weiter am Dokument schreiben und habe etwas an der GUI gebastelt. Ich habe unter folgenden Link dies gefunden:

http://zevolving.com/2009/02/generic-ob ... -contents/

Ist ja ansatzweise etwas ähnliches was ich haben will.

Was mir nicht klar ist ist das der Punkt mit den Attachment Types. Sage ich hier bereits, welchen Dateiyp ich holen will?

Also bin jetzt soweit gekommen:

Code: Alles auswählen.

method ONACTIONGET_ZEICHNUNG .

*TYPEDECLARATIONS

  DATA input_node TYPE REF TO if_wd_context_node.
  DATA materialnummer TYPE string.

*lokale persistente Objektreferenz - BOR kompatibel  
  DATA gs_bor TYPE sibflporb.
  
*navigate from CONTEXT to IDENTIFY_NODE via lead_section
  input_node = wd_context->get_child_node( 'IDENTIFY' ).

*GET NOTIFACTION VALUE
  input_node->get_attribute( EXPORTING name = 'MATN' IMPORTING value = materialnummer ).
 
*BO Key setzen 
 gs_bor-instid = materialnummer.
 gs_bor-typeid = 'BUS1001006'.
 gs_bor-catid  = 'BO'.

*Links lesen
  TRY.
      CALL METHOD cl_binary_relation=>read_links
        EXPORTING
          is_object           = gs_bor
          it_relation_options = lt_relat
        IMPORTING
          et_links            = t_linktabelle.
    CATCH cx_root INTO lo_root.
  ENDTRY.
jedoch steht in

Code: Alles auswählen.

t_linktabelle
nichts drin.

Anbei ein Screen welche Dokumente zur einer Materialnummer hinterlegt sind (aus Transaktion mm03). Ich würde gerne z.B. die ME1 File über die Oberfläche öffnen können.

Stehe jetzt gerade etwas auf dem Schlauch.

Viele Grüße

Alex

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Hey allerseits,

habe jetzt gesehen dass die Dateien zum Objekttyp BUS1001006 als Verknüpfungstyp 'URL' gespeichert sind. Ändere ich das im Code, ist die Linktabelle weiterhin leer, weiss evtl. einer warum das leer ist ?

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hi Alex,

hast du deine lt_relat auch irgendwo gefüllt?

Aus einem alten WebDynpro Coding von mir, hab ich dir mal folgendes rausgesucht:

Code: Alles auswählen.

* Such-Optionen festlegen
  ls_rel-sign = 'I'.
  ls_rel-option = 'NE'.
  ls_rel-low = ''.
  APPEND ls_rel TO lt_rel.
Das habe ich bei mir für lt_relat hinterlegt um alle Links zu einer Bestellnummer zu finden.
Gruß,
der Matze

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
UUUPPS, das hab ich iwie nicht eingefügt.

jop das ist bei mir auch gesetzt!

Code: Alles auswählen.

  ls_relat-sign = 'I'.
  ls_relat-option = 'EQ'.
  ls_relat-low = 'ATTA'.
  APPEND la_relat TO lt_relat.
    ls_relat-low = 'NOTE'.
  APPEND la_relat TO lt_relat.
    ls_relat-low = 'URL'.
  APPEND ls_relat TO lt_relat.
Wie gesagt wenn ich im Debugger in die t_linktabelle reinschaue steht nichts drin. Hab die Option auch mal auf NE und den low wert auf ' ' getestet, ist immer noch leer

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hi,

also zu allererst würde ich NOTE, ATTA und URL nicht so direkt ansprechen, du möchtest ja sicher ALLE links haben und nicht nur diese speziellen.
Daher ist der Weg alle nicht leeren Einträge zu suchen (NE und ' ') etwas sinnvoller.
Außerdem bin ich mir gerade nicht sicher, ob und wie der Baustein mit 3 Einträgen in der Optionstabelle umgeht.
Hast du mal nur NE und ' ' mitgegeben und nichts anderes?

Die Materialnummer ist auch richtig besetzt worden von dir?
Gruß,
der Matze

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Jop habe ich probiert.

jop die Materialnummer ziehe ich mir aus der QMEL und lasse sie auch auf dem Dynpro anzeigen. Anhand der Materialnummer ziehe ich mir noch andere Sachen. Ich habe auch versucht die Materialnummer hard rein zu coden, funktioniert kommischerwise auch nicht, der Tabelleninhalt ist leer.

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Das ist echt knifflig.
In deinem Screen hat die Materialnummer punkte nach jeweils 3 stellen. ist das die exakte Materialnummer oder sind die Punkte eine Aufbereitung und die Materialnummer hat in Wirklichkeit gar keine Punkte?

Du musst jetzt systematisch jedes Übergabefeld prüfen. Eines von denen muss ja den Fehler beinhalten, der verhindert das die Links korrekt gelesen werden.
Gruß,
der Matze

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Also im Anhnag findest du Screenshots aus dem Debugger.

Ich habe auch versucht, die Materialnummer ohne Punkte, mit Punkte, ohne Punkte und ohne Nullen einzutragen --> kein Ergebnis.
Ich denke die Punkte sind zur Aufbereitung, dast ist halt Standard Typ von MARA-MATNR.

Gruß

Alex

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thomas R. (Expert / 757 / 78 / 34 ) »
Hallo Alex,
bei der Auflistung Deiner Versuche fehlt mir:
Ohne Punkte, aber mit allen führenden Nullen (MATNR ist 18-stellig).
Am besten die Konvertierung
MATN1
aus dem Datenelement nutzen.
(FuBa CONVERSION_EXIT_MATN1_INPUT)

MfG
Thomas R.

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Hallo Thomas, danke für deine Antwort.

Wenn ich mir die MATNR im Debugger anschaue (sieht man auch auf dem Screenshot), so ist die Materialnummer 18 stellig.

Kann es sein dass der BUS falsch ist? ich habe auch schon den BUS1001 probiert.

Viele Grüße

Alex

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thomas R. (Expert / 757 / 78 / 34 ) »
Hallo Alex,
gerade fällt mir auf, dass Du wohl Äpfel mit Birnen vergleichst....
Dokumente im Reiter Dokumentdaten (Zusatzdaten Material) findest Du in der Tabelle DRAD.

NOTE, ATTA usw. weisen auf die GOS hin (Der Button zwischen Drucktastenleiste und Menü rechts neben dem Statustitel).

Welche Dokumente interessieren Dich?

MfG
Thomas R.

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von jonny_1st (ForumUser / 46 / 0 / 0 ) »
Hallo Thomas,

mich interessieren erst einmal alle Dokumente die zu einer Materialnummer hinterlegt sind.

folgenden Code habe ich jetzt:

Code: Alles auswählen.

METHOD onactionget_zeichnung .

*TYPEDECLARATIONS

  DATA input_node TYPE REF TO if_wd_context_node.
  DATA materialnummer TYPE mara-matnr.

*lokale persistente Objektreferenz - BOR kompatibel
  DATA gs_bor TYPE sibflporb.

* Read the links
  DATA: t_linktabelle TYPE obl_t_link,
        la_links LIKE LINE OF t_linktabelle.

* Selectoptions für Beziehungstypen
  DATA: lt_relat TYPE obl_t_relt,
        ls_relat LIKE LINE OF lt_relat.

*Exception
  DATA lo_root TYPE REF TO cx_root.

*navigate from CONTEXT to IDENTIFY_NODE via lead_section
  input_node = wd_context->get_child_node( 'IDENTIFY' ).

*GET NOTIFACTION VALUE
  input_node->get_attribute( EXPORTING name = 'MATN' IMPORTING value = materialnummer ).

*BO Key setzen
  gs_bor-instid = materialnummer.
  gs_bor-typeid = 'BUS1001'.
  gs_bor-catid  = 'BO'.

* Suchoptionen 
  ls_relat-sign = 'I'.
  ls_relat-option = 'NE'.
  ls_relat-low = ' '.
  APPEND ls_relat TO lt_relat.


*Links lesen
  TRY.
      CALL METHOD cl_binary_relation=>read_links
        EXPORTING
          is_object           = gs_bor
          it_relation_options = lt_relat
        IMPORTING
          et_links            = t_linktabelle.
    CATCH cx_root INTO lo_root.
  ENDTRY.

*Breakpoint
Write: 'STOP'.

ENDMETHOD.

BUS1001006 habe ich ebenfalls probiert. Das die Dokumente in der DRAD abgelegt sind habe ich schon gesehen, bloß hab ich ehrlich gesagt keine Idee mehr!

Viele Grüße

Alex

Re: Funktionsbaustein + Web Dynpro --> Fehler

Beitrag von Thomas R. (Expert / 757 / 78 / 34 ) »
Hallo Alex,
an die Schlüssel der Dokumente im DMS kommst Du z.B. per direktem Zugriff auf die DRAD
Prinzip:
SELECT dokar doknr dokvr doktl
INTO CORRESPONDING FIELDS OF lt_dockey[]
FROM drad
WHERE dokob = 'MARA'
AND objky = lv_matnr
AND delflag = space.

Für die GOS ist es entweder
BUS1001 oder BUS1001006

MfG
Thomas R.

Vergleichbare Themen

1
Antw.
1744
Views
Fehler bei RFC-Funktionsbaustein
von kbit100 » 22.02.2010 17:47 • Verfasst in ABAP® für Anfänger
2
Antw.
1863
Views
Funktionsbaustein Fehler?!?
von Andreas G » 01.12.2005 15:21 • Verfasst in ABAP® Core
1
Antw.
2954
Views
Fehler auf Dynpro
von Doobie » 20.08.2021 16:57 • Verfasst in Dialogprogrammierung
6
Antw.
5391
Views
Dynpro PBO Fehler Message
von Gast » 15.12.2005 19:23 • Verfasst in Dialogprogrammierung
4
Antw.
8090
Views
Textfeld auf Dynpro in Funktionsbaustein füllen
von Hansi4u » 11.01.2006 18:28 • Verfasst in Dialogprogrammierung

Ü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

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.