HR ESS Help
Hi Experts,
My requirement is-
I have HR ESS in place. Whenever an user places a request for leave, mail goes to SAP Inbox. I need to send a copy to external mail.
I got the code somehow.
Can anyone suggest Please tell me the userexit/BADI I need to use. Please let me know I guarantee points for this.
--Ragu
Reports for Controlling Processing
· RPTARQEMAIL (Send E-Mails)
· RPTARQPOST (Leave Requests: Post)
· RPTARQSTOPWF (Leave Requests: Complete Current Workflows)
· RPTARQLIST (Leave Requests: Check)
· RPTARQAPP (Leave Requests: Approve Documents)
· RPTARQERR (Leave Requests: Process Posting Errors)
Reports for Testing Customizing Settings
· RPTREQWEBMO (Determine Rule Group). You can use this report to determine the most important organizational assignments for individual employees or organizational units that are to be evaluated in the Web application.
· RPTREQAPPRCHK (Determine Approver). You can use this report to check whether the system determines an employee's supervisor correctly.
Reports for Displaying and Maintaining the Database
· RPTARQDBVIEW (Display Leave Requests (Database of Requests)) You can use this report to view all information relating to the leave requests that have been entered.
· RPTARQDBVIEW (Delete Leave Requests (Database of Requests)) You can use this report to remove out-of-date requests from the database.
System Tables
The following tables are SAP tables. You must not make any changes to them. If you do, the process of leave requests may no longer function as it is supposed to.
· PTREQ_STATUS_CHK (Check Methods for Status Transitions)
· PTREQ_STATUS_TRA (Status Transitions)
· V_PTREQ_TYPE (Document Type)
Test Programs
The test programs RPTARQUIATEST (Test Report for the UIA Interface for Leave Requests) and RPTARQAPTEST (Test Report for the UIA Area Pages for Leave Requests) enable you to test processing in the backend system. You can use it to simulate the entry of leave requests in the Web application.
The test program should be used only in test systems; you must not use it in your production system.
Message was edited by: Prabhu Peram
Similar Messages
-
TRAVEL MANAGEMENT and ESS help required
Hi
Can anyone help me how to configure TRAVEL MANAGEMENT and ESS in IMG
Please help.
Regards
SonuHi duxten,
That is fine but how you will suggest me to go ahead, as i am configuring fo the 1st time so what are the steps i need to follow.
Please can you suggest me.
Thanks
Sonu -
How to do configuration of ESS HELP SERVICE
Hi All,
As it is very urgent, please respond immediately.
Thanks a bunch in advance
Priyahi priya
go to img-pm-ess-general settings-home page for self services (all subnodes), sevice specific settings then you have to do pz01,pz02,pz03,pz09 for this first you type /n then press enter then you go for pz01,pz02,pz03,....... if you want more tcode go to sm01 there down small box will be there type pz01 and press enter you can see all the tcodes related to ess. i hope its clear
bye
naveen -
SAP ESS/MSS Functional Guide
Hello Experts,
I am new to ESS/MSS, so can anyone provide me with a proper Functional & Technical guide on ESS/MSS, also it would be great if you all provide me with a specific configuration guide on installing ESS/MSS. I have already searched some forums on this, but there was no concrete doc available.
I already have ESS / MSS Configuration (SAP Best Practices for SAP HCM V2.600) (N06) Building Block Configuration Guide & ESS HELP CAESS .
But if you have something more on this then please share.
Thanks & Regards,
Amit NaikHi
Maybe you can follow the following steps :
1.you need to identify what is your requirement for the Employee and the Manager.
2. you need to sit with your portal consultant to check out what views are available for the functionality required.
3. You need to create a ess user (your basis consultant can help you to do that by running hruser)
4. you can login onto the portal and check out whether the standard views have what you require or is there some change required.
4. they you can go to the r/3 system and and use transaction simg_sport for getting to mss configuration quickly.
5. Ess configuration you will find at under spro-> personnel management - > employee self service- > service specific settings...
A guide to configure will be very generic and may not directly help. the documentation against each spro node is quite helpful. do write for any other specifics.
all the best. -
ESS Leave's PT_ARQ_TEAMCALE_GET
Hi,
I'm working on the ESS Leave's team calendar enhancement.
In the SAP library Business Package ESS help, under the Approving Leave Requests, there is a RFC function modules called PT_ARQ_TEAMCALE_GET used for Team Calendar. A further check in ABAP also confirm that this function exist and did the team calendar functions. However, i couldnt find the related RFC adaptive Model in the ess/lea WebDynPro source code?
Where should i look for it?
Any help would be much appreciated. Thanks.
- juliusHi Vasundhara,
<b>But Package "com.sap.xss.ser.tecl.vc. VcTeamCalendar " is no where exists in ess/lea.</b>
Just for ur info, i found this VcTeamCalendar in FPM package pcui_gp\tecl\_comp\gen\default\src\java
[code]// -
// This file has been generated partially by the Web Dynpro Code Generator.
// MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
// ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
package com.sap.xss.ser.tecl.vc;
// IMPORTANT NOTE:
// ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
// BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
// AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateVcTeamCalendarView).
// OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
// A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
// OF IMPORT STATEMENTS.
//@@begin imports
import java.text.DateFormatSymbols;
import java.util.Calendar;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.List;
import java.util.Locale;
import com.sap.pcuigp.xssfpm.java.FPMRuntimeException;
import com
.sap
.tc
.webdynpro
.clientserver
.uielib
.graphics
.api
.IWDBusinessGraphics;
import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDButton;
import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDDropDownByIndex;
import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDGridData;
import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDGridLayout;
import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDGroup;
import com.sap.tc.webdynpro.clientserver.uielib.standard.api.IWDTextView;
import com
.sap
.tc
.webdynpro
.clientserver
.uielib
.standard
.api
.IWDTransparentContainer;
import com.sap.tc.webdynpro.progmodel.api.IWDTextAccessor;
import com.sap.tc.webdynpro.progmodel.api.WDVisibility;
import com.sap.tc.webdynpro.services.sal.localization.api.WDResourceHandler;
import com.sap.tc.webdynpro.services.sal.url.api.WDURLGenerator;
import com.sap.xss.ser.tecl.java.customizing.CustomizingException;
import com.sap.xss.ser.tecl.java.customizing.GridLine;
import com.sap.xss.ser.tecl.java.customizing.Line;
import com.sap.xss.ser.tecl.java.customizing.Point;
import com.sap.xss.ser.tecl.java.customizing.SAPChartCustomizing;
import com.sap.xss.ser.tecl.java.customizing.TimeAxis;
import com.sap.xss.ser.tecl.java.customizing.ValueRange;
import com.sap.xss.ser.tecl.java.customizing.types.RGBColor;
import com.sap.xss.ser.tecl.java.fctm.FcTmDataExchangeConstants;
import com.sap.xss.ser.tecl.java.util.CalendarUtil;
import com.sap.xss.ser.tecl.vc.wdp.IPrivateVcTeamCalendarView;
//@@end
//@@begin documentation
//@@end
public class VcTeamCalendarView
Logging location.
private static final com.sap.tc.logging.Location logger =
com.sap.tc.logging.Location.getLocation(VcTeamCalendarView.class);
static
//@@begin id
String id = "$Id$";
//@@end
com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
Private access to the generated Web Dynpro counterpart
for this controller class. </p>
Use <code>wdThis</code> to gain typed access to the context,
to trigger navigation via outbound plugs, to get and enable/disable
actions, fire declared events, and access used controllers and/or
component usages.
@see com.sap.xss.ser.tecl.vc.wdp.IPrivateVcTeamCalendarView for more details
private final IPrivateVcTeamCalendarView wdThis;
Root node of this controller's context. </p>
Provides typed access not only to the elements of the root node
but also to all nodes in the context (methods node<i>XYZ</i>())
and their currently selected element (methods current<i>XYZ</i>Element()).
It also facilitates the creation of new elements for all nodes
(methods create<i>XYZ</i>Element()). </p>
@see com.sap.xss.ser.tecl.vc.wdp.IPrivateVcTeamCalendarView.IContextNode for more details.
private final IPrivateVcTeamCalendarView.IContextNode wdContext;
A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
Represents the generic API of the generic Web Dynpro counterpart
for this controller. </p>
private final com.sap.tc.webdynpro.progmodel.api.IWDViewController wdControllerAPI;
A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
Represents the generic API of the Web Dynpro component this controller
belongs to. Can be used to access the message manager, the window manager,
to add/remove event handlers and so on. </p>
private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
public VcTeamCalendarView(IPrivateVcTeamCalendarView wdThis)
this.wdThis = wdThis;
this.wdContext = wdThis.wdGetContext();
this.wdControllerAPI = wdThis.wdGetAPI();
this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
//@@begin javadoc:wdDoInit()
/** Hook method called to initialize controller. */
//@@end
public void wdDoInit()
//@@begin wdDoInit()
Locale sessionLocale = WDResourceHandler.getCurrentSessionLocale();
java.util.Calendar calendar =
java.util.Calendar.getInstance(sessionLocale);
// calendar.setTime(new Date());
// months
int month = calendar.get(java.util.Calendar.MONTH);
DateFormatSymbols dts = new DateFormatSymbols(sessionLocale);
String[] months = dts.getMonths();
IPrivateVcTeamCalendarView.IMonthsNode monthsNode =
wdContext.nodeMonths();
for (int i = 0; i < NUMBER_OF_MONTH; i++) {
IPrivateVcTeamCalendarView.IMonthsElement monthElement =
monthsNode.createMonthsElement();
monthsNode.addElement(monthElement);
monthElement.setId(i + "");
monthElement.setDescription(months<i>);
monthsNode.setLeadSelection(month);
// years
int year = calendar.get(java.util.Calendar.YEAR);
String[] years =
new Integer(year - 1).toString(),
new Integer(year).toString(),
new Integer(year + 1).toString()};
IPrivateVcTeamCalendarView.IYearsNode yearsNode = wdContext.nodeYears();
for (int i = 0; i < years.length; i++) {
IPrivateVcTeamCalendarView.IYearsElement yearElement =
yearsNode.createYearsElement();
yearsNode.addElement(yearElement);
yearElement.setDescription(years<i>);
yearElement.setId(years<i>);
// selection is actual date
yearsNode.setLeadSelection(1);
//@@end
//@@begin javadoc:wdDoExit()
/** Hook method called to clean up controller. */
//@@end
public void wdDoExit()
//@@begin wdDoExit()
//@@end
//@@begin javadoc:wdDoModifyView
Hook method called to modify a view just before rendering.
This method conceptually belongs to the view itself, not to the
controller (cf. MVC pattern).
It is made static to discourage a way of programming that
routinely stores references to UI elements in instance fields
for access by the view controller's event handlers, and so on.
The Web Dynpro programming model recommends that UI elements can
only be accessed by code executed within the call to this hook method.
@param wdThis Generated private interface of the view's controller, as
provided by Web Dynpro. Provides access to the view controller's
outgoing controller usages, etc.
@param wdContext Generated interface of the view's context, as provided
by Web Dynpro. Provides access to the view's data.
@param view The view's generic API, as provided by Web Dynpro.
Provides access to UI elements.
@param firstTime Indicates whether the hook is called for the first time
during the lifetime of the view.
//@@end
public static void wdDoModifyView(IPrivateVcTeamCalendarView wdThis, IPrivateVcTeamCalendarView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
//@@begin wdDoModifyView
// save list box selections
wdThis.setCurrentMonthSelection(
wdContext.nodeMonths().getLeadSelection());
wdThis.setCurrentYearSelection(
wdContext.nodeYears().getLeadSelection());
wdThis.setCurrentViewSelection(
wdContext.nodeViews().getLeadSelection());
wdThis.setCurrentPageSelection(
wdContext.nodePages().getLeadSelection());
IWDTextAccessor textAccessor =
wdThis.wdGetAPI().getComponent().getTextAccessor();
// selection grid
_addSelection(wdThis, wdContext, view, firstTime, textAccessor);
// gantt chart
_addChartCustomizing(wdThis, wdContext, view, firstTime, textAccessor);
// paging
_addPageNavigation(wdThis, wdContext, view, firstTime, textAccessor);
// handle refreshing
_handleRefreshing(wdThis, wdContext, view, firstTime, textAccessor);
// request button
_addRequestButton(wdThis, wdContext, view, firstTime, textAccessor);
//@@end
//@@begin javadoc:getChartCustomizing()
/** Declared method. */
//@@end
public com.sap.xss.ser.tecl.java.customizing.SAPChartCustomizing getChartCustomizing( )
//@@begin getChartCustomizing()
if (_chartCustomizing == null) {
try {
String url =
WDURLGenerator.getResourcePath(
wdThis
.wdGetAPI()
.getComponent()
.getDeployableObjectPart(),
CHART_CUSTOMIZIMG);
_chartCustomizing = new SAPChartCustomizing(url);
} catch (Exception e) {
wdThis.wdGetVcTeamCalendarInterfaceController().raiseException(
e);
} else {
_chartCustomizing.init();
return _chartCustomizing;
//@@end
//@@begin javadoc:getColCount()
/** Declared method. */
//@@end
public int getColCount( )
//@@begin getColCount()
// set colcount for selection grid
int teamView =
wdThis.wdGetVcTeamCalendarInterfaceController().getTeamView();
if (teamView == FcTmDataExchangeConstants.EMPLOYEE_VIEW) {
return COLCOUNT_EMPLOYEE;
} else {
return COLCOUNT_MANAGER;
//@@end
//@@begin javadoc:hasPageGrid()
/** Declared method. */
//@@end
public boolean hasPageGrid( )
//@@begin hasPageGrid()
return _hasPageGrid;
//@@end
//@@begin javadoc:setHasPageGrid()
/** Declared method. */
//@@end
public void setHasPageGrid( boolean hasPageGrid )
//@@begin setHasPageGrid()
_hasPageGrid = hasPageGrid;
//@@end
//@@begin javadoc:setCurrentMonthSelection()
/** Declared method. */
//@@end
public void setCurrentMonthSelection( int month )
//@@begin setCurrentMonthSelection()
_currentMonthSelection = month;
//@@end
//@@begin javadoc:setCurrentYearSelection()
/** Declared method. */
//@@end
public void setCurrentYearSelection( int year )
//@@begin setCurrentYearSelection()
_currentYearSelection = year;
//@@end
//@@begin javadoc:setCurrentViewSelection()
/** Declared method. */
//@@end
public void setCurrentViewSelection( int view )
//@@begin setCurrentViewSelection()
_currentViewSelection = view;
//@@end
//@@begin javadoc:setCurrentPageSelection()
/** Declared method. */
//@@end
public void setCurrentPageSelection( int page )
//@@begin setCurrentPageSelection()
_currentPageSelection = page;
//@@end
//@@begin javadoc:onActionSelect(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionSelect(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionSelect(ServerEvent)
// put month, year and teamId to context
_addSelectionCriteriaToContext();
// update data from backend
try {
wdThis.wdGetVcTeamCalendarInterfaceController().readData();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionRefresh(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionRefresh(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionRefresh(ServerEvent)
// reset all selections
_resetAllSelections();
// update data direct from database
try {
wdThis.wdGetVcTeamCalendarInterfaceController().refreshData();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionFirstPage(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionFirstPage(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionFirstPage(ServerEvent)
// reset all selections
_resetAllSelections();
try {
wdThis.wdGetVcTeamCalendarInterfaceController().gotofirstPage();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionNextPage(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionNextPage(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionNextPage(ServerEvent)
// reset all selections
_resetAllSelections();
try {
wdThis.wdGetVcTeamCalendarInterfaceController().gotoNextPage();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionPreviousPage(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionPreviousPage(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionPreviousPage(ServerEvent)
// reset all selections
_resetAllSelections();
try {
wdThis.wdGetVcTeamCalendarInterfaceController().gotoPreviousPage();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionLastPage(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionLastPage(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionLastPage(ServerEvent)
// reset all selections
_resetAllSelections();
try {
wdThis.wdGetVcTeamCalendarInterfaceController().gotoLastPage();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionGotoPage(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionGotoPage(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionGotoPage(ServerEvent)
// reset header selection
_resetHeaderSelection();
try {
wdThis.wdGetVcTeamCalendarInterfaceController().gotoPage();
} catch (FPMRuntimeException e) {
//@@end
//@@begin javadoc:onActionNewRequest(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionNewRequest(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionNewRequest(ServerEvent)
// reset all selections
_resetAllSelections();
wdThis.wdGetVcTeamCalendarInterfaceController().raiseNewRequestEvent();
//@@end
//@@begin javadoc:onActionClick(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionClick(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent, java.lang.String eventId )
//@@begin onActionClick(ServerEvent)
// ignore other selections
_resetAllSelections();
// read corresponding request ids
Hashtable requestIds =
wdContext.nodeRequestIds().currentRequestIdsElement().getIds();
List ids = (List) requestIds.get(eventId);
wdThis.wdGetVcTeamCalendarInterfaceController().setSelectedRequestIds(
ids);
//@@end
The following code section can be used for any Java code that is
not to be visible to other controllers/views or that contains constructs
currently not supported directly by Web Dynpro (such as inner classes or
member variables etc.). </p>
Note: The content of this section is in no way managed/controlled
by the Web Dynpro Designtime or the Web Dynpro Runtime.
//@@begin others
private static void _addPageNavigation(
IPrivateVcTeamCalendarView wdThis,
IPrivateVcTeamCalendarView.IContextNode wdContext,
com.sap.tc.webdynpro.progmodel.api.IWDView view,
boolean firstTime,
IWDTextAccessor textAccessor) {
// read context
IPrivateVcTeamCalendarView.IPageInfoElement pageInfo =
wdContext.nodePageInfo().currentPageInfoElement();
int currentPageNumber = pageInfo.getCurrentPageNumber();
int lastPageNumber = pageInfo.getLastPageNumber();
// create page grid if neccessary
if (lastPageNumber > 1 && !wdThis.hasPageGrid()) {
IWDTransparentContainer bottomGrid =
(IWDTransparentContainer) view.getElement(BOTTOM_GRID);
IWDTransparentContainer pageGrid =
(IWDTransparentContainer) view.createElement(
IWDTransparentContainer.class,
PAGE_GRID);
bottomGrid.addChild(pageGrid, 0);
IWDGridLayout gridLayout =
(IWDGridLayout) pageGrid.createLayout(IWDGridLayout.class);
gridLayout.setColCount(PAGE_COLCOUNT);
gridLayout.setStretchedHorizontally(false);
gridLayout.setStretchedVertically(false);
IWDButton firstPage =
(IWDButton) view.createElement(IWDButton.class, FIRST_PAGE);
pageGrid.addChild(firstPage);
firstPage.setOnAction(wdThis.wdGetFirstPageAction());
firstPage.setText("");
firstPage.setTooltip(textAccessor.getText("FIRST_PAGE"));
IWDButton previousPage =
(IWDButton) view.createElement(IWDButton.class, PREVIOUS_PAGE);
pageGrid.addChild(previousPage);
previousPage.setOnAction(wdThis.wdGetPreviousPageAction());
previousPage.setText("");
previousPage.setTooltip(textAccessor.getText("PREVIOUS_PAGE"));
IWDGridData gridData =
(IWDGridData) previousPage.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
IWDButton nextPage =
(IWDButton) view.createElement(IWDButton.class, NEXT_PAGE);
pageGrid.addChild(nextPage);
nextPage.setOnAction(wdThis.wdGetNextPageAction());
nextPage.setText("");
nextPage.setTooltip(textAccessor.getText("NEXT_PAGE"));
gridData =
(IWDGridData) nextPage.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
IWDButton lastPage =
(IWDButton) view.createElement(IWDButton.class, LAST_PAGE);
pageGrid.addChild(lastPage);
lastPage.setOnAction(wdThis.wdGetLastPageAction());
lastPage.setText("");
lastPage.setTooltip(textAccessor.getText("LAST_PAGE"));
gridData =
(IWDGridData) lastPage.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
IWDTextView tv =
(IWDTextView) view.createElement(IWDTextView.class, PAGE_INFO);
pageGrid.addChild(tv);
gridData = (IWDGridData) tv.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
tv.setText(
textAccessor.getText("PAGE")
+ " "
+ currentPageNumber
+ "/"
+ lastPageNumber);
tv = (IWDTextView) view.createElement(IWDTextView.class, GOTO_PAGE);
pageGrid.addChild(tv);
gridData = (IWDGridData) tv.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(LONG_PADDING);
tv.setText(textAccessor.getText("GOTO"));
IWDDropDownByIndex pageInput =
(IWDDropDownByIndex) view.createElement(
IWDDropDownByIndex.class,
PAGE_INPUT);
pageGrid.addChild(pageInput);
pageInput.bindTexts(
wdContext.nodePages().getNodeInfo().getAttribute(
ATTRIBUTE_PAGEDESCRIPTION));
pageInput.setOnSelect(wdThis.wdGetGotoPageAction());
gridData =
(IWDGridData) pageInput.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
wdThis.setHasPageGrid(true);
// hide the page grid if there is only one page
if (wdThis.hasPageGrid() && lastPageNumber <= 1) {
IWDTransparentContainer pageGrid =
(IWDTransparentContainer) view.getElement(PAGE_GRID);
pageGrid.setVisible(WDVisibility.NONE);
// set the correct image urls
if (wdThis.hasPageGrid() && lastPageNumber > 1) {
IWDTransparentContainer pageGrid =
(IWDTransparentContainer) view.getElement(PAGE_GRID);
if (!pageGrid.getVisible().equals(WDVisibility.VISIBLE))
pageGrid.setVisible(WDVisibility.VISIBLE);
IWDButton firstPage = (IWDButton) view.getElement(FIRST_PAGE);
IWDButton previousPage = (IWDButton) view.getElement(PREVIOUS_PAGE);
IWDButton nextPage = (IWDButton) view.getElement(NEXT_PAGE);
IWDButton lastPage = (IWDButton) view.getElement(LAST_PAGE);
IWDTextView pageText = (IWDTextView) view.getElement(PAGE_INFO);
if (currentPageNumber == 1) {
// first page: disable first/previous page
firstPage.setImageSource(FIRST_PAGE_IMAGE_DISABLED);
firstPage.setEnabled(false);
previousPage.setImageSource(PREVIOUS_PAGE_IMAGE_DISABLED);
previousPage.setEnabled(false);
nextPage.setImageSource(NEXT_PAGE_IMAGE);
nextPage.setEnabled(true);
lastPage.setImageSource(LAST_PAGE_IMAGE);
lastPage.setEnabled(true);
} else if (currentPageNumber == lastPageNumber) {
// last page: disable next/last page
firstPage.setImageSource(FIRST_PAGE_IMAGE);
firstPage.setEnabled(true);
previousPage.setImageSource(PREVIOUS_PAGE_IMAGE);
previousPage.setEnabled(true);
nextPage.setImageSource(NEXT_PAGE_IMAGE_DISABLED);
nextPage.setEnabled(false);
lastPage.setImageSource(LAST_PAGE_IMAGE_DISABLED);
lastPage.setEnabled(false);
} else {
firstPage.setImageSource(FIRST_PAGE_IMAGE);
firstPage.setEnabled(true);
previousPage.setImageSource(PREVIOUS_PAGE_IMAGE);
previousPage.setEnabled(true);
nextPage.setImageSource(NEXT_PAGE_IMAGE);
nextPage.setEnabled(true);
lastPage.setImageSource(LAST_PAGE_IMAGE);
lastPage.setEnabled(true);
pageText.setText(
textAccessor.getText("PAGE")
+ " "
+ currentPageNumber
+ "/"
+ lastPageNumber);
private static void _addChartCustomizing(
IPrivateVcTeamCalendarView wdThis,
IPrivateVcTeamCalendarView.IContextNode wdContext,
com.sap.tc.webdynpro.progmodel.api.IWDView view,
boolean firstTime,
IWDTextAccessor textAccessor) {
IWDBusinessGraphics bg =
(IWDBusinessGraphics) view.getElement(TEAM_CALENDAR_VIEW);
IWDTextView tv = (IWDTextView) view.getElement(TEXTVIEW_MESSAGE);
if (wdContext.nodeCategory().size() == 0) {
// set chart and the bottom grid to invisible
bg.setVisible(WDVisibility.NONE);
IWDTransparentContainer bottomGrid =
(IWDTransparentContainer) view.getElement(BOTTOM_GRID);
bottomGrid.setVisible(WDVisibility.NONE);
// add textview with message
if (tv == null) {
IWDGroup group = (IWDGroup) view.getElement(GROUP);
tv =
(IWDTextView) view.createElement(
IWDTextView.class,
TEXTVIEW_MESSAGE);
group.addChild(tv);
tv.setText(textAccessor.getText("EMPTY_MESSAGE"));
} else {
tv.setVisible(WDVisibility.VISIBLE);
} else {
// make the chart and bottom grid visible
bg.setVisible(WDVisibility.VISIBLE);
IWDTransparentContainer bottomGrid =
(IWDTransparentContainer) view.getElement(BOTTOM_GRID);
bottomGrid.setVisible(WDVisibility.VISIBLE);
// remove empty message if neccessary
if (tv != null)
tv.setVisible(WDVisibility.NONE);
// chart customizing
SAPChartCustomizing chartCustomizing = wdThis.getChartCustomizing();
String customizing = null;
// handle language
Locale locale = WDResourceHandler.getCurrentSessionLocale();
chartCustomizing.getGlobalSettings().setLanguage(
locale.getLanguage());
// handle time axis
TimeAxis timeAxis = chartCustomizing.getTimeAxis();
String yearString =
wdContext.nodeYears().currentYearsElement().getId();
String monthString =
wdContext.nodeMonths().currentMonthsElement().getId();
int year = Integer.parseInt(yearString);
int month = Integer.parseInt(monthString);
int day = 1;
CalendarUtil calendarUtil = new CalendarUtil();
timeAxis.setMinimum(
calendarUtil.addLeadingZeroes(yearString, 4)
+ calendarUtil.addLeadingZeroes(
new Integer(month + 1).toString(),
2)
+ FIRST_DAY_OF_MONTH);
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, day);
calendar.add(Calendar.MONTH, 1);
timeAxis.setMaximum(
calendarUtil.convertToString(calendar.getTime()));
Line line = timeAxis.getLine();
GridLine gridLine = timeAxis.getGridLine();
IPrivateVcTeamCalendarView.IWeekDaysNode weekDaysNode =
wdContext.nodeWeekDays();
for (int i = 0; i < weekDaysNode.size(); i++) {
IPrivateVcTeamCalendarView.IWeekDaysElement weekDaysElement =
weekDaysNode.getWeekDaysElementAt(i);
ValueRange valueRange =
i == 0 ? line.getDefaultValueRange() : line.addValueRange();
valueRange.setStartValue(weekDaysElement.getStartDate());
valueRange.setEndValue(weekDaysElement.getEndDate());
valueRange.setId(WEEKDAY_PREFIX + i);
valueRange.setVisibility(true);
valueRange.setColor(
new RGBColor(
weekDaysElement.getColorRed(),
weekDaysElement.getColorGreen(),
weekDaysElement.getColorBlue()));
valueRange =
i == 0
? gridLine.getDefaultValueRange()
: gridLine.addValueRange();
valueRange.setStartValue(weekDaysElement.getStartDate());
valueRange.setEndValue(weekDaysElement.getEndDate());
valueRange.setId(WEEKDAY_PREFIX + i);
valueRange.setVisibility(true);
valueRange.setColor(
new RGBColor(
weekDaysElement.getColorRed(),
weekDaysElement.getColorGreen(),
weekDaysElement.getColorBlue()));
// handle point customizing
IPrivateVcTeamCalendarView.ILegendNode legendNode =
wdContext.nodeLegend();
for (int i = 0; i < legendNode.size(); i++) {
IPrivateVcTeamCalendarView.ILegendElement legendElement =
legendNode.getLegendElementAt(i);
Point point =
i == 0
? chartCustomizing.getDefaultPoint()
: chartCustomizing.addPoint();
point.setId(legendElement.getId());
point.setCaption(legendElement.getText());
point.setColor(
new RGBColor(
legendElement.getColorRed(),
legendElement.getColorGreen(),
legendElement.getColorBlue()));
// customer entrys are fully transparent
if (legendElement.getText() == null
|| legendElement.getText().trim().equals("")) {
point.setTransparency(TRANSPARENCY_FULL);
try {
customizing = chartCustomizing.serialize();
} catch (CustomizingException e) {
wdThis.wdGetVcTeamCalendarInterfaceController().raiseException(
e);
bg.setDirectCustomizing(customizing);
bg.mappingOfOnAction().addSourceMapping(SOURCE_ID, TARGET_ID);
bg.setWidth(CHART_WIDTH);
// set height according the number of rows
// minimum chart height was determined experimentally. If the height
// is lower than the minimum the calendar header will not be shown.
int rows = wdContext.nodeCategory().size();
int chartHeight = CHART_HEADER_HEIGHT + rows * CHART_ROW_HEIGHT;
chartHeight =
chartHeight < CHART_MINIMUM_HEIGHT
? CHART_MINIMUM_HEIGHT
: chartHeight;
bg.setHeight(chartHeight);
private static void _addSelection(
IPrivateVcTeamCalendarView wdThis,
IPrivateVcTeamCalendarView.IContextNode wdContext,
com.sap.tc.webdynpro.progmodel.api.IWDView view,
boolean firstTime,
IWDTextAccessor textAccessor) {
HashSet commandTable = wdContext.currentCommandsElement().getTable();
IWDTransparentContainer selectionGrid =
(IWDTransparentContainer) view.getElement(SELECTION_GRID);
if (commandTable.contains(COMMAND_UPDATE)) {
if (selectionGrid == null) {
IWDGroup group = (IWDGroup) view.getElement(GROUP);
selectionGrid =
(IWDTransparentContainer) view.createElement(
IWDTransparentContainer.class,
SELECTION_GRID);
group.addChild(selectionGrid, 0);
IWDGridLayout gridLayout =
(IWDGridLayout) selectionGrid.createLayout(
IWDGridLayout.class);
gridLayout.setColCount(wdThis.getColCount());
gridLayout.setStretchedHorizontally(false);
gridLayout.setStretchedVertically(false);
IWDGridData selectionGridData =
(IWDGridData) selectionGrid.createLayoutData(
IWDGridData.class);
selectionGridData.setPaddingBottom(PADDING);
IWDTextView tv11 =
(IWDTextView) view.createElement(
IWDTextView.class,
TEXTVIEW_11);
selectionGrid.addChild(tv11);
tv11.setText(textAccessor.getText("ATTENDANCE_STATUS"));
if (wdThis
.wdGetVcTeamCalendarInterfaceController()
.getTeamView()
== FcTmDataExchangeConstants.MANAGER_VIEW) {
IWDDropDownByIndex views =
(IWDDropDownByIndex) view.createElement(
IWDDropDownByIndex.class,
VIEWS);
selectionGrid.addChild(views);
views.bindTexts(
wdContext.nodeViews().getNodeInfo().getAttribute(
ATTRIBUTE_DESCRIPTION));
IWDGridData gridData =
(IWDGridData) views.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
IWDTextView tv13 =
(IWDTextView) view.createElement(
IWDTextView.class,
TEXTVIEW_13);
selectionGrid.addChild(tv13);
gridData =
(IWDGridData) tv13.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
tv13.setText(textAccessor.getText("FOR"));
IWDDropDownByIndex months =
(IWDDropDownByIndex) view.createElement(
IWDDropDownByIndex.class,
MONTHS);
selectionGrid.addChild(months);
IWDGridData gridData =
(IWDGridData) months.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
months.bindTexts(
wdContext.nodeMonths().getNodeInfo().getAttribute(
ATTRIBUTE_DESCRIPTION));
IWDTextView tv15 =
(IWDTextView) view.createElement(
IWDTextView.class,
TEXTVIEW_15);
selectionGrid.addChild(tv15);
gridData =
(IWDGridData) tv15.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
tv15.setText(textAccessor.getText("IN"));
IWDDropDownByIndex years =
(IWDDropDownByIndex) view.createElement(
IWDDropDownByIndex.class,
YEARS);
selectionGrid.addChild(years);
gridData =
(IWDGridData) years.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
years.bindTexts(
wdContext.nodeYears().getNodeInfo().getAttribute(
ATTRIBUTE_DESCRIPTION));
IWDButton button =
(IWDButton) view.createElement(IWDButton.class, BUTTON_GO);
selectionGrid.addChild(button);
gridData =
(IWDGridData) button.createLayoutData(IWDGridData.class);
gridData.setPaddingLeft(PADDING);
button.setText(textAccessor.getText("GO"));
if (wdThis
.wdGetVcTeamCalendarInterfaceController()
.getTeamView()
== FcTmDataExchangeConstants.MANAGER_VIEW)
button.setTooltip(
textAccessor.getText("CALENDAR_SELECTION_MANAGER"));
else
button.setTooltip(
textAccessor.getText("CALENDAR_SELECTION_EMPLOYEE"));
button.setOnAction(wdThis.wdGetSelectAction());
} else {
if (selectionGrid != null
&& !selectionGrid.getVisible().equals(WDVisibility.NONE)) {
selectionGrid.setVisible(WDVisibility.NONE);
private static void _addRequestButton(
IPrivateVcTeamCalendarView wdThis,
IPrivateVcTeamCalendarView.IContextNode wdContext,
com.sap.tc.webdynpro.progmodel.api.IWDView view,
boolean firstTime,
IWDTextAccessor textAccessor) {
IWDButton requestButton = (IWDButton) view.getElement(REQUEST_BUTTON);
if (wdThis
.wdGetVcTeamCalendarInterfaceController()
.getRequestButtonVisibility()
== FcTmDataExchangeConstants.REQUEST_BUTTON_VISIBILITY_VISIBLE) {
if (requestButton == null) {
IWDTransparentContainer rootGrid = (IWDTransparentContainer) view.getElement(ROOT_CONTAINER);
requestButton =
(IWDButton) view.createElement(
IWDButton.class,
REQUEST_BUTTON);
rootGrid.addChild(requestButton);
IWDGridData gridData =
(IWDGridData) requestButton.createLayoutData(
IWDGridData.class);
gridData.setPaddingTop(LONG_PADDING);
requestButton.setText(textAccessor.getText("NEW_REQUEST"));
requestButton.setTooltip(textAccessor.getText("NEW_REQUEST"));
requestButton.setOnAction(wdThis.wdGetNewRequestAction());
} else {
if (requestButton != null
&& !requestButton.getVisible().equals(WDVisibility.NONE)) {
requestButton.setVisible(WDVisibility.NONE);
-
Dear Expert,
I an getting a short dump and i believe is because the is another session of LUW is still on. Is there anyway to delete the existing LUW session so that my workflow can continue. Below are some information of my short dump.
Runtime Errors ASSERTION_FAILED
Information on where terminated
Termination occurred in the ABAP program "CL_HRASR00_PAITF_ADAPTER======CP" - in "IF_HRASR00_PAITF_ADAPTER~OPEN_LUW".
The main program was "RSWWDHEX_INTERNAL ".
In the source code you have the termination point in line 5
of the (Include) program "CL_HRASR00_PAITF_ADAPTER======CM00M".
The program "CL_HRASR00_PAITF_ADAPTER======CP" was started as a background job.
Job Name....... "SWWDHEX" |
Job Initiator.. "WF-BATCH" |
Job Number..... 00471100
Source Code Extract
| 1|METHOD if_hrasr00_paitf_adapter~open_luw .
2
| 3| is_ok = true.
| 4|* we want to make sure that only 1 LUW is open at any time
|>>>>>| ASSERT a_magic_cookie IS INITIAL.
| 6|* Exceptions are not handled. If exception happens in these methods then dont forward but ju
| 7| CALL METHOD a_masterdata_bl->initialize.
| 8| CALL METHOD a_masterdata_bl->start_trial
| 9| IMPORTING
| 10| magic_cookie = a_magic_cookie.
11
| 12| ASSERT a_magic_cookie IS NOT INITIAL.
13
| 14|ENDMETHOD.
Thanks in advance...
Regards,
BryanASSERTION_FAILED
Re: SAP HR ESS help
http://help.sap.com/abapdocu/en/ABAPASSERT.htm
Regards
Neha
Edited by: Neha Shukla on Nov 27, 2008 12:18 PM
Edited by: Neha Shukla on Nov 27, 2008 12:18 PM -
F4 help key does not work in ESS on ITS in Portal
Hello All,
F4 help key is not working in all iviews in ESS in Portal.When i try to press it nothing happens and no pop up appears,kindly please suggest wt might be the cause of this error? Iam tired struggling with this issue and not able to trace out reason for the same.My Email Id is [email protected] .Plz revert at earliest.
regards,
SaumyaHi,
This kind of problem is known when webgui is being started from an IAC, e.g. HRWPC_FC_EXEC
You have to set parameter ~webgui_popups 1 in the service file of this IAC.
BR,
Disha.
Pls reward points for helpful answers. -
Run time error when we click "Leave overview " in ESS - pl help
Hi Gurus ,
We are getting run time error when we
click the 'Leave Overview' in
ESS.
when emloyee applies for leave he may
need to wait for aproval during
that time he cannot access the 'leave
overview' screen he will be
facing run time error .
because of this run time error system
performance become very slow .
please help me .i will give points for valid answers .
:-Suneetha reddyHi ,
I am soory for late reply ,
I changed the runtime parameter to 1200 and monitaring the system .
Now there is no Run time error but still Leave overview is taking time .
Please help
Thanks,
Sunitha -
Run time error iview 'Leave Overview' in ESS - Pl Help
Hi Gurus ,
We are getting run time error when we
click the 'Leave Overview' in
ESS.
when emloyee applies for leave he may
need to wait for aproval during
that time he cannot access the 'leave
overview' screen he will be
facing run time error .
because of this run time error system
performance become very slow .
please help me .i will give points for valid answers .
:-Suneetha reddy
Edited by: Sunitha Reddy on Mar 26, 2008 9:47 AMHi ,
I am soory for late reply ,
I changed the runtime parameter to 1200 and monitaring the system .
Now there is no Run time error but still Leave overview is taking time .
Please help
Thanks,
Sunitha -
Help with ESS MSS documentation
Dear All,
please help me with the documentation on ESS MSS.
Thanks in advance
Regards
MinalHi,
Check this links:
http://help.sap.com/saphelp_erp2005/helpdata/en/f6/263359f8c14ef98384ae7a2becd156/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/29/d7844205625551e10000000a1550b0/frameset.htm
Regards,
NR -
Disable input help for a webdynpro field in ESS
I need to disable the drop down capability of a field in ESS (field is "Bank Key" available in the ESS page "Bank Information"). So I need the field to stay visible and ready for input... I just want the input help to not show up (the entries in the input help are not applicable to the user and they confuse them). how can I do that?
Tiberiu
Edited by: Tiberiu Sasu on Apr 27, 2010 11:25 PMJust throwing ideas around...
you could create a custom field which is of the same length as bank key - but no value helps etc assigned to it. Add this into the CI_append structure of the bank details structure used by ESS.
Then in the inbound and outbound mappings - UI conversion class BAdIs move the bank key to and from this plain text field and into the "real" bank key field.
You could then "decorate" the iView with the additional customer field and hide the standard bank key field.
Sounds like a lot of bother! But depends on how much you dislike modifying standard WD Java apps (personally I'd put that in the definitely worthwhile basket - maintenance after support packs on WD Java is not fun!)
Cheers,
Chris -
Need help in revamping salary statement in ESS
Hello Experts,
I would like your help in understanding the process of revamping salary statement in ESS and also define the role of the various members Functional Consultant, ABAPer, and Portal Consultant. Thank you!**************** - Printing remuneration statement (Pay slips) using HR Forms
this link is related to PE51, this can be done by functional consultant itself. No need of Technical consultant.
If your planning to use HRFORMS i.e adobe based payslip then you required Technical resource code and design the payslip. -
How to add search help to customer field of field selection on ESS Screen?
Hi all,
I am able to get customer field CUSTOMER01 from field selection customization on leave application ESS Screen. How to attach search help which contains Holiday date & its description to this field?
Thanks,
SwapnaliHi,
This is for working time -> leave request screen
In field selection there is one field 'code for description of illness'. I have done required config for getting this field on ESS Screen. This field already has standard search help. So I m able to view the values of this field on ESS screen .
So I thought to try assigning custom search help to this CUSTOMER0 field. Is there any method in BADI PT_ABS_REQ through which I can achieve the same. Please help.
-Swapnali -
Need help with validation of SSNumber in ESS US Personal Data WebDynpro app
Hi,
We're using ESS /SAP Netweaver 2004....
When I make the Soc Sec# visible (changing the Java webdynpro app ess.us.fam the dependents update form in ESS) and trying to make this field not mandatory, I get strange results...
The Gender field that was mandatory before is now not treated as Required after I select the Review button, but this SSN Text that I made visible is treated as Mandatory with a Red box saying This field is required....
I guess the Required (state) attribute in the InputField properties is only for showing the red asterisk, but the actual mandatory logic is done somewhere else???..Is this somewhere in the webdynpro app or in the SAP backend...
This app uses the structure HCMT_BSP_PA_US_R0021...
Can anyone point me to where this validation is done so I can change it to what I need,
Thanks,
VenkateshHello ,
I am working on EP7.0 ERP05 NW04s . I want to make the Social Security Number field mandatory on the Family Members Detail (Edit) , ...I want to know what's the procedure to do that...
Any help would be highly appreciated. -
ESS/MSS Configuration Help
Hi Friends,
Can anyone help me with some reference documents for ESS/MSS configuration and integration of ABAP report/Infotypes on ESS portal.
Regards,
Ameet[Click here|http://saphrexpert.blogspot.com/2009/01/links-to-pdfs-from-sap-website.html] for the all the ESS/MSS PDF's
[Click here|http://saphrexpert.blogspot.com/2009/01/ess-basics.html] for all config links
Maybe you are looking for
-
ITunes only plays one song at a time, it wont play my playlist or library
all of a sudden my itunes will only play one song and then stop and when i press the "next" button, it just stops the song playing. and now there are check boxes in front of each song and i dont know what it means? i just want to be able to put my li
-
How to select column dynamically with sharepoint list as data source in ssrs report
Hi all, I am creating reports from SharePoint list but i have requirements to select the column name dynamically with SharePoint list as data source. I didn't find any way of doing this.. Can anyone help me to resolve this issue.. There is no way of
-
PO Tolerance Limit for Price Variance
All, For the key PE I have set Upper Limit for Percentage Check Limit to 0.01%. At what point is the tolerance limit check? Is it at PO creation or some other point? Thanks, Sean
-
Hello, I created a query with several variable selection for dates and once I entered those date values, I hit Personalize all Variables on the variable screen. And, I copied this query to different sheets in a workbook. But, now when I want to ref
-
If I rest my chin on the desk, the display looks great, but...
that's not a very comfortable way to work. I just bought this mbp 13" day before yesterday. It's the glossy display. It's way too bright. burns right thru text. My ical is almost unreadable. So I tried adjusting the brightness and contrast. Doesn't w