TEVEN und RPTIME

TEVEN und RPTIME

Postby Simone4399 » Thu Mar 09, 2017 7:14 am

Hallo,

ich habe mit einem merkwürdigen Problem zu kämpfen --- vielleicht kann mir ja jemand bei der Lösung helfen.

Ich habe eine Webdynpro-Anwendung geschrieben, die für Meister und Vorarbeiter einer Pflegeoberfläche für Zeitbuchungen ihrer Mitarbeiter zur Verfügung stellt, d.h. die eigentlichen Zeitbuchungen werden angepasst oder mit Arbeitsplatzinformationen erweitert. Nach dem Speichern der Daten wird automatisch der RPTIME00 angestoßen und die Oberfläche mit den frischen Statusinformationen (Fehlermeldungen, errechnete Arbeitszeit ... ) versorgt.

Das funktioniert grundsätzlich auch sehr gut. Problem dabei sind nicht reproduzierbare gelegentlich auftretende Fehler.

Ich versuche das mal zu beschreiben:
Der Meister bearbeitet ein Zeitpaar. Dieses wird anschließend vom ihm gespeichert. Dazu verwende ich die Funktionsbausteine NUMBER_GET_NEXT und HR_TMW_DB_UPDATE_TEVENT. Anschließend wird per SUBMIT der RPTIME00 angestoßen. Abschließend werden die Zeitpaare neu eingelesen und die Statusinformationen des B1/B2-Cluster dazu gelesen.
Jetzt passiert es manchmal (manchmal gar nicht ... manchmal mehrmals am Tag), das der RPTIME abbricht mit der Fehlermeldung, dass das Gehen fehlt. Lasse ich den RPTIME danach sofort nochmal laufen, ist alles i.O. Weiter ist mir aufgefallen, dass im Cluster in solchen Fällen die alte Kommen-Zeit abgespeichert ist.
Mein Gedanke war nun, dass mit dem Speichern der Daten diese erst in den Cache geschrieben wurden und der RPTIME quasi während des echten Update gelaufen ist. Da wäre ja ein COMMIT WORK AND WAIT' hilfreich .... dachte ich. Leider brachte das nicht die Lösung.

Hätte jemand noch eine Idee?

Gruß
Ulf
Simone4399
...
...
 
Posts: 238
Joined: Fri Apr 29, 2005 9:43 am

Re: TEVEN und RPTIME

Postby Bilal3242 » Thu Jun 08, 2017 7:45 am

Hallo Ulf,

ich habe eine ähnliche Lösung entwickelt, jedoch nicht über Webdynpro, sondern stattdessen über Excel. SAP schreibt regelmäßig die Zeitdaten in eine CSV-Datei und ein Makro in der Datei des Vorgesetzten sucht sich da die passenden Mitarbeiter heraus und bereitet dies schön formatiert auf.

Wenn der Vorgesetzte nun eine Stempelzeit nachmeldet oder Mehrarbeiten genehmigt, sendet er die per Knopfdruck per E-Mail an SAP. Wenige Sekunden später kann er dann schon das Ergebnis seiner Änderung in der Excel-Tabelle sehen.

Fehler wie oben beschrieben sind mir bisher nicht aufgefallen. Ich fülle die TEVEN wie folgt:

[...]
LX_P2011-PERNR = LDV-PERNR.
LX_P2011-SATZA = SATZA.
LX_P2011-LTIME = LTIME.
LX_P2011-LDATE = LDV-DATUM.

LD_PERNR = LDV-PERNR.

CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
INFTY = '2011'
NUMBER = LX_P2011-PERNR
RECORD = LX_P2011
OPERATION = 'INS'
NOCOMMIT = 'X'
DIALOG_MODE = '0'
VALIDITYBEGIN = LX_P2011-LDATE
VALIDITYEND = LX_P2011-LDATE
IMPORTING
RETURN = LX_BAPIRET.

Vielleicht klappt es damit ja besser?

Zeitereignisse löschen läuft einfach über einen SELECT auf die TEVEN und setzen des Stornokennzeichens.

Viele Grüße
Michael
Bilal3242
...
...
 
Posts: 400
Joined: Wed Apr 15, 2009 12:46 pm


Return to Human Resources

Who is online

Users browsing this forum: No registered users and 3 guests

cron