Alle Beiträge von sapsoftware.de

Demo for Predictive Analytics with SAP HANA

Veröffentlicht am 05.12.2012

Note: Put video on HD quality before watching. This demo showcases how business analysts and data scientists can take advantage of predictive analytics in „big data“ scenarios. The demo also highlights how developers can embed the predictive analytics capabilities of SAP HANA into custom business solutions.
Two real-world examples are presented:
• Customer segmentation
• Time series analysis

Predictive analytics with SAP HANA allows customers and partners to:
• Make smarter decisions — faster — with real-time insights
• Accelerate key business processes with rapid analysis and reporting
• Invent new business models and processes by leveraging innovative solutions

 

Customer Testimonial: SAP HANA at Kaeser Kompressoren

Veröffentlicht am 16.09.2014

Hear from Mr. Lameter, the CIO of Kaeser Kompressoren, one of the world’s largest suppliers of air systems, how SAP HANA enables Kaeser to offer a world-class customer service with an innovative, custom Predictive Maintenance solution to monitor compressed air stations in real-time as well as to simplify its IT landscape by migrating their SAP Business Suite to the SAP HANA platform.

 

Exporting HR organizational structure to a stri… | SCN

Exporting HR organizational structure to a string variable

created by Samuli Kaski on Apr 20, 2012 2:41 PM, last modified by Samuli Kaski on Apr 20, 2012 3:52 PM Version 3

Overview

 

In this document I give a quick’n’dirty ABAP solution for storing the HR organizational structure in a string variable.

 

Coding

 

The coding is pretty straight forward and it should be easy to change or enhance it further. In the example I’m using the IDES organizational structure.

 

data lt_postree_objec    type table of objec.

data ls_postree_objec    type objec.

data lt_postree_struc    type table of struc.

data ls_postree_struc    type struc.

data lv_tot_str          type string.

data lv_tmp_str          type string.

data lv_tmp_str2         type string.

data lv_level            type i.

data lv_char60           type c length 60.

call function ‚RH_STRUC_GET‘

exporting

act_otype    = ‚O‘

act_objid    = ‚00000300‘          “ org. unit IDES US

act_wegid    = ‚O-S-P‘

tables

result_objec = lt_postree_objec

result_struc = lt_postree_struc.

clear lv_tot_str.

clear lv_char60.

lv_char60 = ‚Object‘.

concatenate lv_char60

‚Object ID‘

cl_abap_char_utilities=>cr_lf

into lv_tot_str

separated by cl_abap_char_utilities=>horizontal_tab

respecting blanks.

concatenate lv_tot_str

cl_abap_char_utilities=>cr_lf

into lv_tot_str.

loop at lt_postree_struc into ls_postree_struc.

clear ls_postree_objec.

read table lt_postree_objec into ls_postree_objec

with key otype = ls_postree_struc-otype

objid = ls_postree_struc-objid.

clear: lv_tmp_str,

lv_tmp_str2.

if ls_postree_struc-level gt 1.

lv_level = 1.

while lv_level lt ls_postree_struc-level.

concatenate lv_tmp_str ‚   ‚ into lv_tmp_str respecting blanks.

add 1 to lv_level.

endwhile.

concatenate lv_tmp_str ‚`–‚ into lv_tmp_str respecting blanks.

concatenate ‚(‚ ls_postree_objec-otype ‚)‘ into lv_tmp_str2.

concatenate lv_tmp_str lv_tmp_str2 ls_postree_objec-stext

into lv_tmp_str separated by space.

else.

concatenate ‚(‚ ls_postree_objec-otype ‚)‘ into lv_tmp_str2.

concatenate lv_tmp_str2 ls_postree_objec-stext

into lv_tmp_str separated by space.

endif.

clear lv_char60.

lv_char60 = lv_tmp_str.

concatenate lv_char60

ls_postree_struc-objid

cl_abap_char_utilities=>cr_lf

into lv_tmp_str

separated by cl_abap_char_utilities=>horizontal_tab

respecting blanks.

concatenate lv_tot_str lv_tmp_str into lv_tot_str.

endloop.

 

At the end of execution lv_tot_str string variable will contain the whole organizational structure.

 

Screenshot

 

And this is how it will look if exported to text file, at the left the view in PPOSE.

via Exporting HR organizational structure to a stri… | SCN.

Do you know your SE16N? | SCN

Do you know your SE16N?

Posted by Jörg Wulf in ABAP Development on Aug 8, 2014 12:40:16 PM

Probably, this does not exactly belong here, but i found no better place for it.

 

Several people i know(me included) like to use TA SE16N for a quick glance at table data or as a means of preselection e.g.  for personnel data.

Something like a query but without the hassle of building one.

 

It’s really great, as long as you only need data from a single table AND all selection criteria are AND related. (Or so I thought)

 

One problem, I frequently ran into, is when you want to evaluate  a „nested“ table. That is a table that has multiple  fields in its structure, basically for the same data, representing a limited table in maintenance view.

 

For example infotype tables in HR are often built like that and the problem is always, that you do not know, in which field (nnnn01, nnnn02, …) to look for a certain value.

 

Now quite I recently figured out, that SE16N can do that and I found it worth sharing.

 

Let’s assume, you  need to know all employee, that have a certain date type (say 18) in infotype 41, in a specific time interval, but you have no idea, in which date type column (DAR01, DAR02,…)  it is to be found.

 

In the past, I would have run several selections, each one with a different DARxx targeted to my date type and then would have assembled the results in Excel.

 

This is how to do it now

 

 

Call TA Se16N with table PA0041

Fill in the first set of selection criteria (DAR01 / DAT01)

Change to Technical View On (SHIFT+F11 or right-click for context menu)

Select Multiple entry (Cntrl+F9 or right-click for context menu or More button in the top)

Youwill be rewarded with an additional, empty selection screen

Fill in your selection criteria and then press Next Entry (F5 Or Right Arrow in the bottom)

You get a new empty selection screen. Note the number shown in the top line, it will increase as you circle through your  value sets.

Repeat

When you’re through with typing in your values in every possible column, press F8 to get back to your starting selection.

The only hint, that there are additional select criteria, is the more button in the top, now showing the filled Icon.

 

The difference is  in the result. After executing  your selection, you will now receive all entries, that match either of your value sets. They are each linked by OR-relation.

Of course, the use of this feature is in no way limited to HR Infotype tables. It’s just the most common use for me.

Wherever you need OR-related  sets of values for a SE16N Selection , this feature comes in handy.

 

Hope you’ll enjoy it.

via Do you know your SE16N? | SCN.

About open SAP

About openSAP

http://open.sap.com

Keeping pace with the rapidly developing world of information technology is a need that SAP helps to fill with openSAP. openSAP is developed and provided by SAP in cooperation with the Hasso Plattner Institute.

openSAP works according to the principle of „Massive Open Online Courses“ (MOOC): The key difference between MOOCs and other types of e-learning lies in the way MOOCs demand commitment by leveraging tried and trusted classroom concepts in an online delivery format.

openSAP uses these concepts in the following ways:

openSAP courses are conducted entirely online. All the material provided can be accessed from any device that is connected to the Internet, be it a desktop, a laptop, a smartphone, or a tablet.

openSAP courses have a defined duration (usually between five and seven weeks) to which course participants need to adhere.

openSAP courses are based on video units, supporting material (slide decks, handouts), and self-tests.

Course participants need to work on weekly assignments and keep to deadlines. The weekly assignment is graded and contributes to the points required to receive a record of achievement.

Course participants can discuss the course content in a discussion forum.

openSAP courses end with a final exam.

Upon successful completion of the weekly assignments and the final exam, participants receive a record of achievement.

openSAP courses are conducted in English.

The average duration of the video units is 90 minutes per week. Combined with additional self-study and weekly assignments, the average effort required to complete an openSAP course successfully will be 4–5 hours per week. This makes it easy for course participants to combine courses with their other tasks.

The Advantages of openSAP at a Glance

You have a lively exchange with a performance-oriented community.

You discuss exciting course content with instructors and other participants.

You use teaching material on the Internet, anywhere, anytime.

You gain an interesting learning experience based on fascinating interactive tools.

You find solutions to complex problems in stimulating discussions with experts.

You document your learning progress based on sophisticated tests.

You receive a grade or participation record of achievement upon completion.

You benefit from the expertise of instructors and other field experts in achieving personal goals.

You spotlight your individual potential for colleagues and employers.

You promote your career with the latest high-quality ICT knowledge.

You build and actively use networks with like-minded experts.

via openSAP.

ABAP – Wikipedia

ABAP ist eine proprietäre Programmiersprache der Softwarefirma SAP, die für die Programmierung kommerzieller Anwendungen im SAP-Umfeld entwickelt wurde und in ihrer Grundstruktur der Programmiersprache COBOL ähnelt.

Ursprünglich stand die Abkürzung für „Allgemeiner Berichtsaufbereitungsprozessor“, da mit dieser Sprache nur Auswertungen (Reports) programmiert wurden, aber keine Datenbankveränderungen vorgenommen werden konnten. Im Zuge der Weiterentwicklungen der Sprache steht die Abkürzung nun für „Advanced Business Application Programming“. Der Sprachumfang ist nicht fest definiert und wurde in der Vergangenheit immer wieder erweitert, z. B. um die objektorientierten Sprachbefehle von ABAP Objects.

Seit 1990 basieren alle SAP-R/3-Module auf ABAP, das aus dem Vorgänger SAP R/2 übernommen wurde. Seit der Einführung von SAP NetWeaver bietet die SAP neben ABAP auch eine Ablauf- und Programmierumgebung für Java, und dementsprechend einen ABAP-basierten und einen Java-basierten Applikationsserver an (siehe SAP NetWeaver Application Server).

Eigenschaften[Bearbeiten]

ABAP ist eine 4GL-Sprache, die speziell für die Massendatenverarbeitung in kommerziellen Anwendungen entwickelt wurde, und bietet u. a. folgende Vorteile gegenüber elementareren Sprachen, in denen solche Funktionen in Bibliotheken liegen:

  • als Open SQL in die Sprache integrierter Datenbankzugriff
  • in die ABAP-Laufzeitumgebung integrierte Performance-Optimierung von Datenbankzugriffen über die SAP-Pufferung
  • interne Tabellen für die dynamische Speicherung und Bearbeitung von tabellarischen Massendaten im Arbeitsspeicher
  • in die ABAP-Laufzeitumgebung integriertes Konzept des Online Transaction Processing (OLTP), bei dem viele Benutzer gleichzeitig auf die zentrale Datenbank zugreifen
  • in die Sprache integrierte Schnittstelle zu anderen Programmierumgebungen über Remote Function Call
  • in die Sprache integrierte Schnittstelle zu XML.

Die Integration solcher Funktionen in die Sprache ist im Wesentlichen vorteilhaft für die statische Überprüfbarkeit und die Ausführungsgeschwindigkeit von Programmen. Im Gegenzug enthält ABAP dadurch auch wesentlich mehr Sprachelemente als andere Programmiersprachen.

ABAP unterstützt ein auf Unterprogrammen und Funktionsbausteinen basierendes, prozedurales und ab Release 6.10 ein auf Klassen und Interfaces basierendes, objektorientiertes Programmiermodell. Beide Modelle sind interoperabel.

Abwärtskompatibilität[Bearbeiten]

SAP betreibt bei der Entwicklung von ABAP das Prinzip der Abwärtskompatibilität. Wird eine ABAP-Anweisung durch eine neuere (z. B. performantere) Anweisung ersetzt, so verliert die alte Anweisung nicht ihre Gültigkeit oder Funktion. Da die alten Anweisungen neben den neuen Anweisungen weiter existieren, ergibt sich dadurch ein sehr umfangreicher Sprachumfang. Alte Sprachelemente sollen zwar nicht mehr eingesetzt werden, jedoch ist der Einsatz durchaus möglich. Lediglich bei der Verwendung von ABAP OO (ABAP Objects) können einige alte Bestandteile nicht mehr eingesetzt werden.

Der Vorteil ist, dass die bisherigen Entwicklungen und Kundenanpassungen funktionsfähig bleiben und deren Verhalten sich nicht ändert. Entwicklungen müssen nicht überarbeitet werden. Der Nachteil ist jedoch, dass Entwickler oft noch zu alten Komponenten greifen, obwohl neuere und effektivere (performantere) Sprachbestandteile vorhanden sind. Für Sprachneulinge bedeutet dies, dass sowohl die alten Bestandteile und die neuen Bestandteile erlernt werden müssen. Außerdem erhöht sich damit die Komplexität und der Sprachumfang.

Alte und neue Bestandteile können auch kombiniert werden, so können in objektorientiertem Coding (Programmcode) auch prozedurale Elemente verwendet werden, gleichzeitig ist auch die Verwendung objektorientierter Elemente in prozeduralem Coding möglich. Durch die gezielte Kombination neuer und alter Bestandteile kann die Mächtigkeit der Sprache erhöht werden.

ABAP Workbench[Bearbeiten]

Die Programmierung in ABAP wird durch eine Entwicklungsumgebung unterstützt, die darauf ausgerichtet ist, große Projekte mit mehreren (hunderten) Entwicklern zu ermöglichen. Hierbei muss zu jeder Zeit ein lauffähiges System gewährleistet bleiben. Dazu werden die geänderten Objekte auf sog. Transportaufträgen erfasst, welche bei Freigabe auf das Dateisystem exportiert werden und in Folgesysteme importiert werden können. Durch diesen Mechanismus kann die Entwicklung der Programme von ihrem produktiven Einsatz getrennt erfolgen.

Die Entwicklungsumgebung zur Programmiersprache ABAP ist die ebenfalls in ABAP entwickelte ABAP Workbench. In der ABAP Workbench (Einstieg über den sogenannten Object Navigator, Transaktion SE80) können jedoch auch andere Objekte wie z. B. BSP (Business Server Pages, mit HTML-Anteilen) bearbeitet werden.

Das Besondere ist die sogenannte „Vorwärtsnavigation“. So führt ein Doppelklick auf einen Tabellennamen direkt zur Definition der Datenbanktabelle im ABAP-Dictionary, wohingegen Doppelklick auf einen Methodennamen direkt in diese Methode führt.

Die ABAP-Workbench wird mit der Zeit an die Anforderungen moderner Software-Entwicklung angepasst. Seit dem letzten Release wird beispielsweise auch Syntax-Highlighting unterstützt.

Seit Juli 2012 bietet die SAP auch eine ABAP-Entwicklungsumgebung auf Basis der Open Source Plattform Eclipse an („ABAP in Eclipse“). Die ABAP-Werkzeuge lassen sich ideal mit anderen Eclipse basierten Tools wie z.B. JEE und Android Developmenttools integrieren. Diese neu konzipierte Umgebung unterstützt speziell agile Softwareentwicklungsmethoden wie z.B. die testgetriebene Entwicklung. Der neue ABAP-Editor bietet neben Standardfunktionen wie Syntax-Highlighting und Code Completion auch Unterstützung für Refactoring wie z.B. das Umbenennen von Methoden und Variablen an. Der neue Eclipse-basierte Debugger rundet das Angebot einer modernen Entwicklungsumgebung ab. Damit auch Werkzeuge der klassischen ABAP Workbench wie z.B. SE11 weiterhin verwendet werden können, gibt es die Möglichkeit diese Transaktionen über ein integriertes SAP GUI innerhalb von Eclipse aufzurufen.

Codebeispiel[Bearbeiten]

Das nachfolgende Programm gibt den Inhalt der Tabelle TSTC (enthält SAP-Transaktionscodes) aus.

REPORT RSTSTCT1.
TABLES: TSTCT.
 
SELECT * FROM TSTCT WHERE SPRSL = SY-LANGU.
  WRITE: / TSTCT-SPRSL, TSTCT-TCODE, TSTCT-TTEXT.
ENDSELECT.

Codebeispiel für R/3 Versionen >= 4.7 SR 1[Bearbeiten]

Das nachfolgende Programm gibt den Inhalt der Tabelle TSTC (enthält SAP-Transaktionscodes) aus.

  REPORT ztest.
 
  CLASS demo DEFINITION.
    PUBLIC SECTION.
      CLASS-METHODS main.
  ENDCLASS.
 
  CLASS demo IMPLEMENTATION.
    METHOD main.
      DATA tstc_tab TYPE STANDARD TABLE OF tstc WITH NON-UNIQUE DEFAULT KEY.
      DATA alv      TYPE REF TO cl_salv_table.
      DATA exc      TYPE REF TO cx_salv_msg.
      SELECT *
        FROM tstc
        INTO TABLE tstc_tab.
      TRY.
        cl_salv_table=>factory(
          IMPORTING r_salv_table = alv
          CHANGING t_table = tstc_tab ).
        alv->display( ).
      CATCH cx_salv_msg INTO exc.
          MESSAGE exc TYPE 'I'
              DISPLAY LIKE 'E'.
      ENDTRY.
    ENDMETHOD.
  ENDCLASS.
 
  START-OF-SELECTION.
    demo=>main( ).
  • REPORT ztest. Beschreibt den Typ (REPORT) und den Namen (ztest) des Programms. Der Name richtet sich nach den Namensraumkonventionen, die besagen, dass kundeneigene (also nicht von SAP stammende) Programme im Kundennamensraum (Z* und Y*) oder in einem reservierten Namensraum (haben als erstes und letztes Zeichen einen Schrägstrich) liegen müssen.[2]
  • CLASS demo DEFINITION … ENDCLASS. Deklarationsteil einer Klasse demo.
  • CLASS-METHODS main. Deklaration einer statischen Methode main.
  • CLASS demo IMPLEMENTATION … ENDCLASS. Implementierungsteil einer Klasse demo mit Methodenimplementierung METHOD … ENDMETHOD
  • DATA tstc_tab TYPE STANDARD TABLE OF tstc WITH NON-UNIQUE DEFAULT KEY. Diese Anweisung definiert eine interne Tabelle tstc_tab vom Typ Standardtabelle, deren Zeilentyp die Struktur einer Zeile der Datenbanktabelle TSTC hat.
  • DATA alv TYPE REF TO cl_salv_table. Diese Anweisung definiert eine Referenzvariable für ein List-Viewer-Objekt.
  • DATA exc TYPE REF TO cx_salv_msg. Diese Anweisung definiert eine Referenzvariable für ein Ausnahmeobjekt.
  • SELECT * FROM tstc INTO TABLE tstc_tab. Diese Anweisung liest alle Daten der Datenbanktabelle tstc in die interne Tabelle tstc_tab. Der Stern indiziert, dass alle Spalten der Datenbanktabelle in die interne Tabelle geschrieben werden sollen.
  • TRY … CATCH … ENDTRY. Ausnahmebehandlung (Verfügbar seit Version 4.7 SR1).
  • cl_salv_table=>factory( … ). Erzeugung eines List-Viewers für die interne Tabelle.
  • alv->display( ). Aufruf der Methode display des List-Viewers.
  • START-OF-SELECTION. Einleitung eines Ereignisblockes (dient hier als Einstiegspunkt)
  • demo=>main( )Aufruf der Methode main der Klasse demo.

ABAP Objects[Bearbeiten]

Unter ABAP Objects versteht man die objektorientierten Erweiterungen der Programmiersprache ABAP. Sie implementiert sämtliche Elemente der objektorientierten Programmierung (OOP) mit Ausnahme von Mehrfachvererbung und dem Überladen von MethodenInterfaces sowie optionale Parameter werden unterstützt. Mit speziellen RTTI-Klassen ist auch reflexive Programmierung möglich, ab der Version 6.40 sogar (eingeschränkt) die dynamische Erzeugung neuer Typen.

ABAP Objects ist ab SAP Release 4.6 verfügbar und wird seitdem beständig weiterentwickelt und z. B. durch Object-Services ergänzt. Die objektorientierten Sprachelemente sind Voraussetzung für die Entwicklung von modernen Benutzeroberflächen mit Controls sowie für die Realisierung von Webanwendungen und XML-Services in ABAP. Große Teile der ABAP Workbench selbst sind objektorientiert in ABAP Objects implementiert.

ABAP Objects schränkt den Sprachumfang von „klassischem“ ABAP in einigen Punkten ein. So sind zum Beispiel interne Tabellen mit Kopfzeilen im Kontext von ABAP Objects nicht mehr erlaubt.

Web Dynpro[Bearbeiten]

Seit SAP NetWeaver 7.0 gibt es mit WebDynpro für ABAP auch die Möglichkeit, Web-Applikationen in ABAP zu entwickeln. WebDynpro ABAP basiert auf der Web-Dynpro-Technologie. Ursprünglich wollte SAP diese Technologie nur für die Programmiersprache Java (ab NetWeaver 6.40) zur Verfügung stellen. Aufgrund von Kundenanfragen (fehlendes Java-Know-how bei ABAP-Entwicklern bzw. fehlendes SAP-Know-how bei Java-Entwicklern) entschied sich SAP, diese Technologie in ABAP zu integrieren.

Kritik[Bearbeiten]

Allgemein[Bearbeiten]

Die Vielzahl der möglichen ABAP-Anweisungen und ihrer Varianten führt allgemein zu einem schwerer verständlichen Quellcode als in anderen gängigen Programmiersprachen. Die vorhandene Vielfalt der ABAP-Anweisungen resultiert aus der Abwärtskompatibilität.

  • Zuweisungen: So existiert zum Beispiel neben einer mathematischen Form der Zuweisung „variable = 18 / 3.“ auch die cobol-ähnliche Notation „MOVE 18 / 3 TO variable“. Auch für andere Aufgaben gibt es mehrere mögliche Notationen.
  • Signifikanz von Leerzeichen: Unterschied zwischen ‚+‚ und ‚ +‚ (Plus und Blank-Plus)
Beispiel: DATA myvar(3) TYPE N VALUE '123'..
myvar+1‚ (ohne Leerzeichen) ergibt ‚23‚ (Offset einer Zeichenkette), ‚myvar + 1‚ (mit Leerzeichen) ergibt ‚124‚ (Addition).
Diese ähnliche Schreibweise für sehr unterschiedlich wirkende Operationen ist eine potenzielle Fehlerquelle.

Vor Release 7.1 / 7.02[Bearbeiten]

Insbesondere vor Release 7.1 sind Details erkennbar, die den Umgang mit der Sprache erschweren.

  • Ausdrücke wurden nur bei Zuweisung zu einer Variablen ausgewertet, aber weder in einer IF-Bedingung noch in einer WRITE-Anweisung noch bei der Parameterübergabe an eine Funktion.
Beispiel: IF A * B < 15. muss ersetzt werden durch DATA C TYPE xxx. C = A * B. IF C < 15..
  • Das Ergebnis eines Funktionsaufrufes ist nicht unmittelbar in einem Ausdruck verwendbar.

Seit Release 7.1 / 7.02[Bearbeiten]

Mit Netweaver 7.1 sind eine Reihe von Vereinfachungen der Sprache, insbesondere verkettete Ausdrücke, verfügbar. Diese Änderungen wurden später in das Enhancement Package 2 (7.02) für Release 7.0 herunterportiert.

Beispiel: IF A * B < 15.
Beispiel: IF X->NEXT( )->NEXT( )->GET_RESULT( Y->GET_TYPE( ) ) > 20.

Einzelnachweise[Bearbeiten]

  1. Hochspringen ABAP Schlüsselwort-Dokumentation
  2. Hochspringen ABAP Namensräume und Namenskonventionen (PDF; 245 kB)

Literatur[Bearbeiten]

  • Horst Keller: ABAP-Referenz. Galileo Press, 2010, ISBN 978-3-8362-1524-4
  • Horst Keller: ABAP-Schnellreferenz. Galileo Press, 2005, ISBN 3-89842-680-7
  • Sascha Krüger, Jörg Seelmann-Eggebert: ABAP Best Practices. Galileo Press, 2005, ISBN 3-89842-354-9
  • Horst Keller, Sascha Krüger: ABAP Objects – ABAP-Programmierung mit SAP NetWeaver. Galileo Press, 2006, ISBN 3-89842-358-1
  • Horst Keller, Wolf Hagen Thümmel: ABAP-Programmierichtlinien, Galileo Press, 2009, ISBN 978-3-8362-1286-1
  • Andreas Wiegenstein, Markus Schumacher, Sebastian Schinzel, Frederik Weidemann: Sichere ABAP-Programmierung. Galileo Press, 2009, ISBN 978-3-8362-1357-8
  • Hermann Gahm: ABAP Performance Tuning Galileo Press, 2009, ISBN 978-3-8362-1211-3
  • Bernd Matzke: ABAP / 4, Addison – Wesley, ISBN 3-8273-1372-4
  • Stephan Kaleske: Query-Reporting mit SAP ERP. Galileo-Press, Bonn 2009ISBN 978-3-8362-1433-9 (SAP PRESS).

Weblinks[Bearbeiten]

 

 

via ABAP – Wikipedia.

Taxability Model – US | SCN

INTRODUCTION

Taxability model is used to define the taxability of wages in US payroll calculation under various tax authorities, viz., federal, state and local regulations. In order to understand the taxability model, we will consider a small example, wherein an employee is residing and working in State of Arizona, earning a basic salary of USD 2,000 per month is assigned to a given taxability model. Further for the purpose of understanding taxability model, we will consider the State of Arizona to levy only FED and State taxes and no other local taxes.

The below screenshots depict the infotype/table data in SAP for the given employee.

Residence Area (IT 0207) – State of Arizona

 

Work Tax Area (IT 0208) State of Arizona (100%)

 

Basic Pay (IT 0008) – 2000 USD PM

 

Taxability Model (T5UTM)

 

In order to create tax model, we need to update the below three tables.

T5UTE – Tax Authority / Tax Calculation Model

T5UTM – Tax Model

T5UTY – Tax Type Combinations

The relevance of each of these tables will be shared in the below document. However, prior to describing the tax models, it is important to share couple of important terms that are used while configuring taxability model.

COMMON TERMS

Tax Authorities

Tax Areas

Tax Types

Tax Class

Tax Combo

 

TAX AUTHORITIES (T5UTZ)

Tax authority is used to identify the government agency that is authorized to levy taxes. Depending on the jurisdiction, the level of tax authority may be Federal, State, County, City or School District. This level of authority in SAP is defined as Tax Level and is denoted with a single alphabet, viz, Federal – A, State – B, County – C, City – D, School District – E etc. Tax authorities are maintained under table T5UTZ.

TAX AREAS

Tax Areas are used to identify the area to which the employee is subjected to taxes. For example in State of Pennsylvania, the employees in some of the counties may be subject to local service taxes besides the withholding taxes for both resident and non-resident. These details are being maintained under the section of ‘Tax Areas’ in SAP.

The given SAP node can help to maintain both residence and work tax areas that may be valid for the organization.

TAX TYPES (T5UTT)

Tax type is used to indicate the type of tax that is levied by the given authority, e.g. withholding tax, unemployment tax, employee occupation tax etc. Each of these tax type is denoted by two digit letters in SAP and are maintained under table T5UTT.

An important point to note here is that not all taxes may be applicable for all areas. Some areas may have only withholding taxes applicable for their area, while other may have additional taxes applicable to them. This assignment of tax types to a given authority is being maintained in the table T5UTD – Assignment of Tax Authorities to Tax Type.

TAX CLASS

Tax Class is used to indicate the specification for processing class 71 (Wage type tax classification). For example in our example the wage type 0200 – Salary is assigned specification of 1, i.e. regular wage type.

Thus if a wage type contains ‘1’ in processing class 71, then only those models which have ‘1’ in the tax class field will be applied to that wage type and only those wage types will be taxed using the given combination.

TAX COMBO (T5UTY)

Tax combo is used to identify the combination of tax types that are used for a given taxability table. This is maintained in table T5UTY.

 

TAXABILITY MODEL – CONFIGURATION

To maintain the taxability model, we need to maintain the below tables. It is advisable to maintain the given sequence of table while configuring tax authority, else the system will give up due errors.

T5UTY – Tax Type Combinations

T5UTM – Tax Model

T5UTE – Tax Authority / Tax Calculation Model

Thus for our example, we will first define the tax type combination applicable for a particular tax area, assign this tax type combination to the required tax model and then attach the tax model to the given tax authority.

TAX TYPE COMBINATIONS (T5UTY)

The value of ‘01’ under filed ‘tax type’ indicates that it is withholding tax (01), and the field ‘taxability indicator’ as ‘Y’ specifies that processing class 69 (Taxable earning or non-taxable contribution) is applicable for this combination.

TAXABILITY MODEL (T5UTM)

Under this table we define the taxability model that will be applicable for our tax authority.

 

Residence, work or unemployment tax – The given field indicates whether the tax type combination is applicable for residence, work or unemployment authorities. Residence Tax is denoted by R, Work tax– W and Unemployment tax – U.

Tax Modifier – There may be certain scenarios where certain section of employees may be taxed differently. In such cases, different tax modifiers are assigned to different employees grouping, after which we can specify each modifier in a tax model. The payroll driver will then determine the tax modifier in the Personnel Calculation Rule – UMOT.

TAX AUTHORITY / TAX CALCULATION MODEL (T5UTE)

In this table, we finally assign each tax authority to a tax model which has its own set of taxation rules. The details / description of each tax authority can be seen under table V_T5UTZ.

 

 

Thus the configuration of the given tax model has been completed once all the three above tables have been maintained.

In the subsequent section, we will discuss as to how the given model is used while the calculation of taxes.

via Taxability Model – US | SCN.

Tate & Lyle: Geheimrezept für erfolgreiche Neuausrichtung

15. August 2014 | Feature | von Derek Klobucher

Tate & Lyle: Geheimrezept für erfolgreiche Neuausrichtung

Tate & Lyle sieht zuckersüßen Geschäften entgegen. Dem Anbieter von Zutaten für die Nahrungsmittel- und Getränkeindustrie eröffnen sich gerade vielversprechende globale Möglichkeiten. Dazu beitragen soll SAP MaxAttention.

Schon bald könnte die Londoner Firma der Lieferant des Süßstoffs sein, der jeden Tag auf ihrem Tisch steht. Kürzlich gab Tate & Lyle bekannt, dass Aktionäre diesen Sommer von einer Dividende profitieren werden. Und mindestens ein Analystenhaus hat das Kursziel für die Aktie von Tate & Lyle angehoben.

Doch die Arbeit bei Tate & Lyle ist nicht nur Zuckerschlecken. Das Unternehmen befindet sich noch immer in einem Transformationsprozess, den der Firmenchef im Jahr 2010 in die Wege geleitet hatte. Damit die Firma dynamischer und vielfältiger werden kann, müssen Geschäftsprozesse angepasst und die Effizienz erhöht werden.

„Wir haben vor, Zutaten für neue Rezepturen zu entwickeln und diese schneller auf den Markt zu bringen … und wir müssen in globalen Märkten agieren, in denen unterschiedliche gesetzlichen Vorschriften gelten“, erklärte Steve Byers, IT-Chef von Tate & Lyle, gegenüber SAP in einem Unternehmensvideo. „Außerdem wollten wir von den Best Practices der Branche profitieren.“

Unternehmenswandel mit SAP MaxAttention

Tate & Lyle vollzieht den Unternehmenswandel mithilfe von SAP MaxAttention, dem umfassenden Serviceangebot für Großunternehmen. Der Premium-Support verhilft Tate & Lyle zu einem reibungslosen Geschäftsbetrieb und gewährleistet die nötige Flexibilität, um weltweit agieren zu können. Laut Byers bestand das „Geheimrezept“ von SAP MaxAttention darin, die Diskussion über Best Practices abzukürzen. „Ich musste entscheiden, wie wir zwei Hauptgeschäftsbereiche auf einheitliche Art und Weise unterstützen – und dies rund um den Globus“, erklärte Byers. „So entstand die Strategie einer einzigen, weltweit genutzten IT-Plattform, die auf SAP basiert.“

SAP MaxAttention bietet Firmen, die mit SAP zusammenarbeiten, langfristigen, hochwertigen IT-Support. Der Service ist besonders hilfreich bei lang andauernden Maßnahmen wie den betrieblichen Veränderungen bei Tate & Lyle. Die Gründe dafür liegen auf der Hand:

Technisches Fachwissen und Account-Management-Fähigkeiten werden durch die Zusammenarbeit mit den Support-Teams vor Ort erweitert.

Durch gemeinsame Innovation mit Partnern, wird zusätzlicher Wert aus dem SAP-Wartungsprogramm geschöpft.

Die Leistung der SAP-Lösungen wird optimiert und die Wartung vereinfacht.

„Die Build-Phase, in der die Konfigurationseinstellungen vorgenommen wurden, dauerte nicht lange. So konnten wir termingerecht Ergebnisse liefern“, betonte Byers. „Und der wichtigste Grund, weshalb wir in der Lage waren, dies zu tun, war das solide Design.“

Tate & Lyle baute für das Projekt ein Innovation Control Center auf, in dem Lösungsanträge geprüft wurden, um benutzerspezifische Lösungen auf ein Minimum zu beschränken. Dadurch konnten Best Practices von Anfang an optimiert werden. Laut Byers war es wichtig, Unternehmensressourcen für die Zusammenarbeit mit SAP einzusetzen, denn so kann Tate & Lyle auch weiterhin maximalen Mehrwert aus SAP MaxAttention schöpfen.

„Die Umstrukturierung verläuft planmäßig“, sagte Vorstandssprecher Javed Ahmed letzten Monat gegenüber Branchenanalysten.

Und während das Unternehmen kontinuierlich neue Märkte erschließt, zum Beispiel mit Tafelsüße, bleiben die Aussichten weiterhin herrlich süß.

Folgen Sie Derek Klobucher auf Twitter: @DKlobucher

Dieser Artikel wurde ursprünglich auf SAP Business Trends veröffentlicht.

 

via Tate & Lyle: Geheimrezept für erfolgreiche Neuausrichtung.