Montag, 16. Juli 2012

Business Process Monitoring funktioniert nach dem Upgrade auf Solution Manager 7.1 nicht mehr

Nach dem Upgrade auf das Release 7.1. beim Solution Manager funktioniert so einiges nicht mehr - ein Punkt davon ist das Business Process Monitoring!

Sollten Sie nach dem aktivieren der einzelnen Monitoring Objekte keine Werte erhalten dann prüfen Sie mal die Tabelle:

DSWP_BPM_SOLUTN

Wenn der Wert im Feld CBP_MODEL_KEY dem Wert im Feld SOLUTION gleicht und die Werte sehen wie folgt aus: SID/0123456789/0001234000_0123456789 dann sind so von dem Problem betroffen!

HW 1587042




Mittwoch, 11. April 2012

Unterstützung für Index-Komprimierung in BRSPACE 7.20

BRSPACE 7.20 unterstützt ab Patch 3 die Verwaltung der Index-Komprimierung sowohl bei Oracle 10g als auch bei Oracle 11g.


Mit Index-Komprimierung kann wesentlich Speicherplatz für Indizes gespart werden. Allerdings sind nicht alle Indizes für eine Komprimierung geeignet, zum Beispiel nicht sehr kleine Indizes und keine Indizes, deren Werte in den Schlüsselfeldern sich stets unterscheiden. Für die Qualität der Index-Komprimierung spielt auch die Entscheidung darüber eine wichtige Rolle, welche Index-Spalten in die Komprimierung einbezogen werden.

Weitere Informationen zur Index-Komprimierung und ihren Vor- und Nachteilen finden Sie im Hinweis 1109743 und in der Oracle-Dokumentation.

Beispiel - habe eine Datenbank mit 500GB Indizes komprimiert - danach waren es noch 300GB Indizes!

hab die Variante

brspace -u / -c force -f idrebuild -o sapsr3 -s PSAPSR3 -i allsel -c cind -ic ora_proc -p 4


verwendet - also die konservativer Methode!

QUELLE SAP HINWEIS
 

Dienstag, 10. April 2012

SAP Gui Anmeldung mit dem Keepass Tool

Wenn man noch kein Single Sign On hat oder man auf einem Testsystem oft mit unterschiedlichen Benutzern
eine Anmeldung durchführen muss kann das recht hilfreich sein!

Man erstellt sich pro System und User einen Eintrag mit folgender URL:

cmd://sapshcut -maxgui -system=NPL -client=010 -user={USERNAME} -pw={PASSWORD}

Der Parameter -system setzt voraus das es auch im SAPLOGON ein System mit dem selben Namen gibt!

Bei diesem Beispiel handelt es sich um das SAP System NPL mit dem Mandanten 010.


Wenn es das System nicht im SAPLOGON gibt dann muss man die Parameter aus den SAP Hinweis103019 verwenden.

Wichtg ist auch das die beiden Parameter -user={USERNAME} -pw={PASSWORD} in der URL ganz hinten stehen - sonst kann es zur Meldung kommen das User und Kennwort falsch sind.

Nun kann man das Logon an jedes SAP System ganz einfach über CTRL-U ohne eingabe von User und Kennwort durchführen.

Mittwoch, 28. März 2012

SAP Improvement Finder / Neuerungen werden nun wieder mit Hinweisen und Support Packages ausgliefert

Was ist der Improvement Finder?

Der Improvement Finder unterstützt Sie bei der Suche nach Verbesserungen, die im Rahmen des SAP Customer Connection Programms ausgeliefert wurden.
Diese Verbesserungen werden mit Hilfe von Supporthinweisen und Support Packages ausgeliefert und verbessern SAP Produktversionen, die Sie bereits heute im Einsatz haben.

Das ist nur wirklich eine wichtige Neuerung - es werden in der Zukunft über SNOTE und SPAM auch wieder Neuerungen und nicht nur Bugfix ausgeliefert!!

Um diese Neuerungen zu finden gibt es nun ein weiters Online Tool der SAP:

http://www.sapimprovementfinder.com/public/index.php

Beispiel HCM:

Hier gibt es im moment 4 Hinweise mit dem Neuerungen ausgliefert werden:


Ausschluss v. Positionen für erweiterte Quellensteuer (07.12.2011) Der in diesem Hinweis zur Systemverbesserung bereitgestellte Funktionsumfang umfasst Folgendes:Eine neue Customizing-Transaktion, die eine Ableitungsstrategie mit bestimmten Kriterien definiert, die festlegt, welche Positionen aus dem für die Quellensteuerberechnung verwendeten Steuerbasisbetrag ... [mehr]
Hinweis: 1640876
BRFplus-Integration mit Grundsteuer (17.01.2012) Sie können für die Berechnung der Grundsteuer BRFplus als Rules Engine verwenden und dadurch von den Vorteilen von BRFplus gegenüber BRF profitieren. [mehr]
Hinweis: 1651112
Null-Nettobuchungen in HCM-Abrechnungsprogrammen erlauben (24.11.2011) Das HCM-Abrechnungsprogramm enthält die Option zum Buchen der Null-Nettofinanzsätze in die HR-Mitarbeiterdetails. [mehr]
Hinweis: 1639381
Zusätzliche Beschreibungsfelder in Budgetierungs-Workbench (07.12.2011) Es wird eine allgemeine Lösung zur Verfügung gestellt, die es Ihnen ermöglicht Beschreibungsfelder in der Haushaltsmanagement-Budgetierung zu verwenden.Die neuen Felder stehen zur Verfügung inder Budgetierungs-Workbenchder Transaktion zur Anzeige von Budgeterfassungsbelegender Kopie des ... [mehr]
Hinweis: 1639978

Donnerstag, 8. März 2012

Zusätzliche Informationen in der Fensterüberschrift von SAP GUI einblenden

Wer kennt nicht das Problem – eine Taskleiste voller offener SAP Systeme und man klickt alle durch bis man das richtige SAP System gefunden hat!?

So sieht die Taskleiste ohne Zusätzliche Informationen in der Fensterüberschrift von SAP GUI aus:




Seit dem SAPGUI Release 6.40 kann man sich in der Taskleiste die Zusätzliche Informationen System-ID, Mandanten und Transaktion einblenden lassen!

Ruft dazu die REGEDIT auf und geht in folgenden Pfad rein:
HKEY_CURRENT_USER / SOFTWARE / SAP / SAPGUI Front / SAP Frontend Server / Administration.

Hier dann einen neuen DWORD-Wert anlegen mit Namen ShowAdditionalTitleInfo Wert auf 1 setzen.
Danach den SAP GUI neu starten.
Wenn ihr es nicht mehr wollt, dann einfach den Wert wieder auf 0 setzen und die Anzeige ist aus.

So sieht die Taskleiste aus wenn Sie den Eintrag ShowAdditionalTitleInfo angelegt haben und den Wert 1 hinterlegt haben:

Ab dem Release 7.20 hat die SAP das auch in die normalen Optionen gepackt – somit ist kein REGEDIT mehr notwendig.

Einfach auf Optionen gehen
Interaktionsdesign - Visualisierung & Interaktion - Häkchen setzen bei "Zusätzliche Informationen in der Fensterüberschrift von SAP GUI anzeigen"

Montag, 27. Februar 2012

Programm zum generieren des Solution Manager Key

Sollte mal kein Solution Manager vorhanden sein und Sie müssen bei einem Upgrade oder Installation den
Solution Manager Key eingeben dann verwenden Sie einfach diesen Report und genrieren sich den Schlüssel auf einem beliebegen ABAP System.


 *&———————————————————————*


*& Report ZSLMKEY

*&

*&———————————————————————*

*&

*&

*&———————————————————————*



REPORT ZSLMKEY.



types: begin of dswpclientkey,

INSTNO type num10,

DBID(3),

BUNDLE_ID(8),

SERVICE_KEY(40),

end of dswpclientkey.

*data: dswpclientkey_w type standard table of dswpclientkey.

DATA: P_VALUE(10),

P_INSTNO(10).



PARAMETERS: P_SID(3),

P_SYSNO(2),

P_SERVER(15).



START-OF-SELECTION.

PERFORM GET_SP_VALUE USING P_SID

P_SYSNO

P_SERVER

P_INSTNO

CHANGING P_VALUE.



END-OF-SELECTION.

WRITE P_VALUE.

*&———————————————————————*

*& Form get_sp_value

*&———————————————————————*

* text

*———————————————————————-*

* –>P_PF_SID text

* –>P_PF_SYSNO text

* –>P_PF_SERVER text

* <–P_PF_VALUE text

*———————————————————————-*

FORM get_sp_value USING P_PF_SID

P_PF_SYSNO

P_PF_SERVER

P_PF_INSTNO

CHANGING P_PF_VALUE.



CONSTANTS: lc_part_len TYPE i VALUE 5,

lc_pw_len TYPE i VALUE 10,

lc_allowed_chars(38) TYPE c VALUE '-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_'.



data: lf_string(20) type c,

lf_key type i,

ls_key type dswpclientkey,

lf_part(lc_part_len) type c,

lf_finalf(lc_pw_len) type c,

lf_finalx type xstring,

lf_xbuffer type xstring,

lf_opf(10) type c,

lf_langu like sy-langu,

lf_subrc like sy-subrc,

lf_len type i,

lo_conv_to_x TYPE REF TO cl_abap_conv_out_ce.



clear: lf_string, lf_finalx, lf_opf.



concatenate p_pf_sid p_pf_sysno p_pf_server into lf_string.



* Large letters only

translate lf_string to upper case.



lf_langu = sy-langu.

SET LOCALE LANGUAGE 'E'.

lo_conv_to_x = cl_abap_conv_out_ce=>create( encoding = '1100' ).

lf_len = STRLEN( lf_string ).



IF lf_string(lf_len) CN lc_allowed_chars.

else.



* Fold the input string to a lc_part_len long string

WHILE lf_len > 0.

lf_part = lf_string(lc_part_len).

SHIFT lf_string BY lc_part_len PLACES.

lf_len = STRLEN( lf_string ).

CALL METHOD lo_conv_to_x->reset.

CALL METHOD lo_conv_to_x->write( data = lf_part n = -1 ).

lf_xbuffer = lo_conv_to_x->get_buffer( ).

lf_finalx = lf_finalx BIT-XOR lf_xbuffer.

ENDWHILE.



lf_key = 12.



PERFORM scramble USING lf_finalx

lf_key

lc_part_len

CHANGING lf_finalf

lf_subrc.



if not lf_finalf is initial.

p_pf_value = lf_finalf.

ls_key-dbid = p_pf_sid.

ls_key-instno = p_pf_instno.

ls_key-bundle_id = 'SM_KEY'.

ls_key-service_key = lf_finalf.

if not p_pf_instno is initial.

* insert dswpclientkey_w from ls_key.

if sy-subrc <> 0.

* update dswpclientkey_w from ls_key.

endif.

endif.

else.

clear p_pf_value.

endif.

endif.

ENDFORM. " get_sp_value

*&———————————————————————*

*& Form scramble

*&———————————————————————*

* text

*———————————————————————-*

* –>P_LF_FINALX text

* –>P_LF_KEY text

* –>P_LC_PART_LEN text

* <–P_LF_finalf text

* <–P_LF_SUBRC text

*———————————————————————-*

FORM scramble USING iv_xstring TYPE xstring

iv_key TYPE i

iv_src_len TYPE i

CHANGING lf_finalf

lf_subrc LIKE sy-subrc.



CONSTANTS: lc_max_len TYPE i VALUE 20,

lc_mask(4) TYPE x VALUE '0000003F', lc_random(64) TYPE x VALUE

'F0ED53B83244F1F876C67959FD4F13A2' &

'C15195EC5483C234774943A27DE26596' &

'5E5398789A17A33CD383A8B829FBDCA5' &

'55D702778413ACDDF9B83116610E6DFA'.



DATA: lv_key_index(4) TYPE x,

lv_rand_index(4) TYPE x,

lv_xkey(4) TYPE x,

lv_xkey_shl_1(4) TYPE x,

lv_xkey_shr_5(4) TYPE x,

lv_scramble_byte TYPE x,

lv_dest(lc_max_len) TYPE x,

lv_index TYPE i,

lv_len TYPE i.



CLEAR lf_subrc.



IF iv_src_len EQ 0. EXIT. ENDIF.

lv_len = XSTRLEN( iv_xstring ).

IF iv_src_len GT lc_max_len OR

iv_src_len GT lv_len.

lf_subrc = 2.

EXIT.

ENDIF.



lv_xkey = iv_key.

lv_xkey_shl_1 = iv_key * 2.

lv_xkey_shr_5 = iv_key DIV 32.

lv_rand_index = lv_xkey BIT-XOR lv_xkey_shr_5 BIT-XOR lv_xkey_shl_1.

lv_rand_index = lv_rand_index BIT-AND lc_mask.



lv_index = 0.

DO iv_src_len TIMES.

CATCH SYSTEM-EXCEPTIONS compute_int_times_overflow = 1.

lv_key_index = ( iv_key * lv_index * lv_index ) - lv_index.

ENDCATCH.

IF sy-subrc <> 0.

lf_subrc = 1.

EXIT.

ENDIF.

lv_scramble_byte = lc_random+lv_rand_index(1) BIT-XOR

lv_key_index+3(1).

lv_dest+lv_index(1) = iv_xstring+lv_index(1) BIT-XOR

lv_scramble_byte.

lv_index = lv_index + 1.

lv_rand_index = lv_rand_index + 1.

lv_rand_index = lv_rand_index BIT-AND lc_mask.

ENDDO.

IF lf_subrc <> 0.

EXIT.

ENDIF.



WRITE lv_dest(iv_src_len) TO lf_finalf.



ENDFORM.

Freitag, 24. Februar 2012

Neue Connect-Methode des AS ABAP an Oracle per SSFS

Bisher funktioniert die Verbindung des SAP-Systems (Application Server ABAP) und der SAP-Tools, die die ABAP-Datenbankschnittstelle verwenden (R3trans, R3load, ...), zur Datenbank über SQLNet (per DB-Aliasname, z.B. TNS), indem zunächst eine durch den Betriebssystem-Nutzer adm authorisierte sog. OPS$-Verbindung (mit dem DB-Nutzer OPS$ADM) hergestellt wird ("connect /@TNS"). Dies gestattet den Zugriff auf die Tabelle OPS$ADM.SAPUSER und nur auf diese Tabelle. Darin ist das Paßwort für die eigentliche DB-Verbindung des SAP-Datenbankbenutzers (Standardname SAPSR3) verschlüsselt enthalten.




Der OPS$-Remote-Connect (per TNS-Aliasnamen) wird von künftigen Oracle-Versionen nach Release 11g nicht mehr unterstützt. SAP führt deshalb ab Kernel-Release 7.20 eine neue Methode zur sicheren Speicherung des Datenbank-Paßwortes und für die Verbindung zur DB ein, den "Sicheren Speicher im Dateisystem" ("Secure Storage in File System", SSFS). Das verschlüsselte Paßwort für den SAP-Datenbankbenutzer wird dann nicht mehr in der Datenbank, sondern im Dateisystem gespeichert.

Mit der Übernahme des Kernels 7.20 (11/2011) als abwärtskompatibler Kernel (AKK für 7.x) steht die neue Methode auf allen 7.x-Systemen (ab SAP 7.00) zur Verfügung. SAP empfiehlt, aus Sicherheitsgründen die neue Methode zu verwenden.





Achtung:

Die neue Connect Methode (SSFS) steht derzeit nur für auf Unicode basierende 7.x-Systeme zur Verfügung. Nach aktueller Planung sollen Nicht-Unicode-7.x-Systeme bis Ende März 2012 ebenfalls den SSFS-Connect unterstützen.





Zwecks Rückwärtskompatibilität wird die herkömmliche Connect-Methode für alle SAP-Systeme mit Oracle bis Version 11.2 weiter unterstützt.

Alle SAP-Systeme ab Kernel 7.20, die zukünftige Oracle-Versionen nach 11g benutzen, können nur noch mit der neuen Methode betrieben werden.


Hinweis 1622837 - Neue Connect-Methode des AS ABAP an Oracle per SSFS

Oracle Index Komprimierung II

Dazu gibt es schon einen Post  - doch der  Hinweis 1109743 - Komprimierung von Indexschlüsseln für Oracle-Datenbanken enthält nun ein SQL Script mit Erfahrungswerten vieler Kunden welche Indizes auf einem ERP System komprimiert werden sollten!

Weiters gibt es im SDN noch ein SQL Skript mit dem man die Indizes ermitteln kann
welche relevant für eine Komprimierung sind!

Link: SND

Index Compression Overview


Being able to compress indexes has many advantages:

Less space consumption on disk

Less space consumption in buffer pool

Less I/O activities

Better performance due to less disk reads and buffer gets

Less CPU consumption (because the small compression related CPU overhead is smaller than the CPU savings due to less disk reads and buffer gets)

The main problem of index compression is that an optimal amount of leading index columns (prefix) has to be found that can be compressed

An exact analysis (e.g. via VALIDATE STRUCTURE or provided PL/SQL scripts) needs to scan a lot of data and runs a long time

The following SQL command can be used to determine an acceptable index compression prefix and the expected minimum space gain quickly based on CBO statistics.

AnalysisSQL Command: Space_IndexCompression.txt


Purpose:

Conservative index compression analysis based on CBO statistics

Features:

Threshold value for minimum amount of saved data space

Analysis can be restricted to particularly large or I/O intensive segments (focus on space or performance)

Generation of Oracle or BRSPACE index rebuild command for compression activation possible

Restrictions:

Result can„t be 100 % precise because correlation of leading index columns is not visible in CBO statistics, script assumes worst case scenario of uncorrelated columns, in about 20 % of all indexes this can lead to a suggested prefix length that is smaller than the optimal prefix length

Prerequisites:

Regular BRCONNECT statistic run must be scheduled (recommendation: daily)

Freitag, 18. November 2011

Sie möchten Ausgabegeräte aus Transaktion SPAD löschen

wissen aber nicht, ob die Ausgabegeräte möglicherweise noch in Anwendungstabellen vorhanden sind.

Dabei hilft der Hinweis 1040456 - Verwendungsnachweis für Ausgabegeräte!

Der Report RSPO0040 ist ab 7.00 SP24 bzw. 7.01 SP09 im Standard verfügbar!

Sonst einfach über SNOTE einspielen...




Donnerstag, 20. Oktober 2011

Concurent User Vermessung eines ABAP Systems

Auf der Suche nach dem Thema Concurent User auf einem ABAP System bin ich auf die Reports CCUINIT und CCUEVAL gestoßen!

Mit dem Report CCUINIT wird die Vermessung eingeplant - z.B. für einen Zeitraum von 30 Tagen!

Mit dem Report CCUEVAL kann man das Ergebnis auswerten.

Die Doku dazu gibt es im HW 157758.

Die Reports werden leider nicht mehr weiterentwickelt - Session mit HTTP werden z.B. nicht erfasst. Laut SAP wurde die Funktion der Concurent User in das CCMS übernommen - meines erachten stimmt das nicht da das CCMS doppelte User Anmeldunge auch mitzählt (gerade im BW gibt es für jeden BEX User eine Dialog Anmeldung und eine RFC Anmeldung.

Freitag, 15. Juli 2011

Transaktion ST13 - BACKGROUND_JOB_ANALYSIS

Mit der Transaktion ST13 werden einige interessante Reports ausgeliefert!

Heute möchte ich mal den Report BACKGROUND_JOB_ANALYSIS vorstellen.

Öfters stellt man sich die Frage bei einer neuen Anforderung für einen Batchjob wann soll bzw. kann ich diesen am besten laufen lassen.

Mit dem Report BACKGROUND_JOB_ANALYSIS hat man die Möglichkeit sich die Historie aller Jobs pro Applikationsserver anzusehen.

z.B. wann sind wieviele Jobs zugleich auf einem Applserver gelaufen und haben wieviel CPU verbraucht - somit kann man schon mal abschätzen das man in einer gewissen Zeit vielleicht keinen Job mehr einplanen sollte da alle Workpresse belegt sind.

Anbei ein Beispiel: ab 04:45 macht es keinen Sinn mehr auf diesem Applikationsserver
Batchjobs einzuplanen!

Freitag, 22. April 2011

Neues Berechtigungsobjekt S_TABU_NAM für Tabellenzugriffe


Es gibt ein neues Berechtigungsobjekt S_TABU_NAM für Tabellenzugriffe in welchem Tabellennamen hinterlegt werden können. Bisher war die Berechtigungsprüfung ja nur über die Berechtigungsgruppe im Objekt S_TABU_DIS möglich!
Über die im OSS Hinweis 1481950 angegebenen Korrekturanleitungen, bzw. Support-Packages wird das Berechtigungsobjekt S_TABU_NAM eingespielt und ein für die Tabellen- Berechtigungsprüfungen zentraler Funktionsbaustein (VIEW_AUTHORITY_CHECK - Berechtigungsprüfung für Views/Tabellen) entsprechend angepasst.
Das neue Berechtigungsobjekt S_TABU_NAM enthält zwei Felder
Aktivität 02 (Ändern) oder 03 (Anzeigen)
Tabellenname
Damit ist jetzt die Vergabe eines Zugriffsrechtes auf einzelne Tabellen bzw. Views möglich.
Das bis dahin ausschließlich genutzte Berechtigungsobjekt S_TABU_DIS enthält ebenfalls zwei Felder:
Aktivität 02 (Ändern) oder 03 (Anzeigen)
Berechtigungsgruppe Berechtigungsgruppe der Tabelle

Sollte man sich auch ansehen:


An diesem Hinweis hängt ein PDF - unbedingt lesen wenn Sie ein Auditor sind :-)

Freitag, 25. März 2011

Zentrale Jobverwaltung über den Solution Manager

Workcenter /sap/bc/webdynpro/sap/ags_workcenter?WORKCENTER=AGS_WORK_JOB_SCH_MAN

Sie suchen nach einer Möglichkeit Ihre Batchjobs Zentral zu verwalten und dokumentieren?!

Ja sowas gibt es im Solution Manager 7.01 (EHP1 Sp24) ohne das sie eine zusätzliche Software kaufen müssen....

Wenn es nur darum geht Jobs zu dokumentieren, monitoren und einplanen dann brauchen sie dazu keine cps lizenz kaufen - das geht auch ohne cps!

Beispiel für eine Jobdoku





















Wenn der Job dokumentiert ist kann man diesen auch über den Solman im Zielsystem einplanen und dann via BPM monitioren.

Es gibt auch die Möglichkeit das die Keyuser Jobs über ein Webinterface beantragen können.