{"id":59,"date":"2016-01-13T20:02:22","date_gmt":"2016-01-13T20:02:22","guid":{"rendered":"http:\/\/psm.marlinconsulting.de\/?p=59"},"modified":"2016-01-13T20:02:22","modified_gmt":"2016-01-13T20:02:22","slug":"zugriff-auf-verkaufsbelege-ueber-rv_sales_document_view_3","status":"publish","type":"post","link":"http:\/\/psm.marlinconsulting.de\/?p=59","title":{"rendered":"Zugriff auf Verkaufsbelege \u00fcber RV_SALES_DOCUMENT_VIEW_3"},"content":{"rendered":"<p>Blick \u00fcber den Tellerrand \u2013 willkommen im SD. Dieser Beitrag hat ausnahmsweise einmal gar nichts mit dem PSM zu tun, sondern soll einen Einblick in die M\u00f6glichkeiten und Besonderheiten der Selektion von SD-Belegen geben.<\/p>\n<p>Grunds\u00e4tzlich stehen f\u00fcr beispielsweise die Selektion von Kundenauftr\u00e4gen (BUS2032) die BAPIs<\/p>\n<ul>\n<li>BAPI_SALESORDER_GETLIST zur Selektion von Kundenauftr\u00e4gen und<\/li>\n<li>BAPI_SALESORDER_GETSTATUS zur Anzeige des Status eines Kundenauftrages zur Verf\u00fcgung.<\/li>\n<\/ul>\n<p>Das Problem mit diesen BAPIs ist, dass die Statusanzeige einen konkreten Verkaufsbeleg als Inputparameter ben\u00f6tigt und f\u00fcr BAPI_SALESORDER_GETLIST sind Verkaufsorganisation und eine konkrete Kundennummer obligatorische Inputparameter. Eine Selektion im Sinne \u201eZeige mir alle Kundenauftr\u00e4ge zu einem Material.\u201c gestaltet sich damit schwierig.<\/p>\n<p>Abhilfe kann der Funktionsbaustein RV_SALES_DOCUMENT_VIEW_3 schaffen. Als Output erh\u00e4lt man von ihm eine interne Tabelle mit relevanten Verkaufsbelegen (nicht nur Kundenauftr\u00e4ge). Als Input verlangt er daf\u00fcr (neben einzelnen optionalen Parametern) Daten in Form der Struktur VBCOM.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-60 alignnone\" src=\"http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_01-300x201.png\" alt=\"sd_01\" width=\"300\" height=\"201\" srcset=\"http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_01-300x201.png 300w, http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_01-600x402.png 600w, http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_01.png 884w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>Bildquelle: SAP-System<\/p>\n<p>Besonders spannende Parameter innerhalb dieser Struktur sind:<\/p>\n<ul>\n<li>VBALL bzw. VBOFF: \u00fcber ein \u201aX\u2018 k\u00f6nnen Sie festlegen, ob Sie alle Vertriebsbelege oder nur die noch offenen lesen m\u00f6chten. Wenn Sie in beiden Parametern ein \u201aX\u2018 mitgeben, wird im Funktionsbaustein das VBOFF initialisiert und es werden alle Belege zur\u00fcckgeliefert.<\/li>\n<li>TRVOG: hier m\u00fcssen Sie unbedingt angeben, welche Art von Verkaufsbeleg Sie selektieren m\u00f6chten. Geben Sie den Parameter nicht mit, werden Sie eine leere Ergebnismenge bekommen.<\/li>\n<li>*_DAZU: \u00fcber diese Parameter k\u00f6nnen Sie komfortabel neben den Belegpositionen automatisch die Belegk\u00f6pfe, den Status sowie den Auftraggebernamen hinzu lesen. Das erspart h\u00e4ufig performancelastige Zusatzselektionen.<\/li>\n<li>VBERF: in Kombination mit einer SELECT-OPTION ist es so sehr einfach m\u00f6glich, die Selektion auf die Belege des Anwenders einzuschr\u00e4nken.<\/li>\n<li>VKORG in Kombination mit VTWEG und SPART: eine initiale Berechtigungspr\u00fcfung auf Auftragsart, Verkaufsorganisation, Vertriebsweg und Sparte findet nur statt, wenn alle drei Parameter bei der \u00dcbergabe gef\u00fcllt sind. Wird z. B. bei der Selektion nur eine Verkaufsorganisation \u00fcbergeben, findet in diesem Schritt keine Berechtigungspr\u00fcfung statt. Je nach Anwendungsfall ist es deshalb auf jeden Fall zu empfehlen, eine eigene Berechtigungspr\u00fcfung vor Aufruf des Funktionsbausteins zu implementieren \u2013 wie man es ordentlicherweise ja sowieso machen sollte.<\/li>\n<\/ul>\n<p><a href=\"http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_02.png\"><img decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-61 alignnone\" src=\"http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_02-300x126.png\" alt=\"sd_02\" width=\"300\" height=\"126\" srcset=\"http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_02-300x126.png 300w, http:\/\/psm.marlinconsulting.de\/wp-content\/uploads\/2016\/01\/sd_02.png 598w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Bildquelle: SAP-System<\/p>\n<p>Zudem existieren innerhalb des Funktionsbausteins noch Enhancement Spots, die gerne genutzt werden, um Selektionslogiken zu erweitern oder die Selektionsbilder des SD-Infosystems um zus\u00e4tzliche Felder zu bereichern.<\/p>\n<p>Alles in allem ein gro\u00dfartiger Funktionsbaustein \u2013 wenn man weiss, wie man ihn benutzt.<\/p>\n<p>Wie immer: alle Ausf\u00fchrungen ohne Gew\u00e4hr!<\/p>\n<p>\ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Blick \u00fcber den Tellerrand \u2013 willkommen im SD. Dieser Beitrag hat ausnahmsweise einmal gar nichts mit dem PSM zu tun, sondern soll einen Einblick in die M\u00f6glichkeiten und Besonderheiten der Selektion von SD-Belegen geben. Grunds\u00e4tzlich stehen f\u00fcr beispielsweise die Selektion von Kundenauftr\u00e4gen (BUS2032) die BAPIs BAPI_SALESORDER_GETLIST zur Selektion von Kundenauftr\u00e4gen und BAPI_SALESORDER_GETSTATUS zur Anzeige des &hellip; <a href=\"http:\/\/psm.marlinconsulting.de\/?p=59\" class=\"more-link\"><span class=\"screen-reader-text\">Zugriff auf Verkaufsbelege \u00fcber RV_SALES_DOCUMENT_VIEW_3<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=\/wp\/v2\/posts\/59"}],"collection":[{"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=59"}],"version-history":[{"count":1,"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=\/wp\/v2\/posts\/59\/revisions"}],"predecessor-version":[{"id":62,"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=\/wp\/v2\/posts\/59\/revisions\/62"}],"wp:attachment":[{"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=59"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=59"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/psm.marlinconsulting.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=59"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}