Performance data 3 month period in ABAP stack
I have looked at ST03N and caan't seem to get a three month time period on a transaction per user count.
I can find the transaction code total steps #'s but I can't see a performance fingure for a transaction.
Is there reports I can run to list the performance stats on users and tcodes ran over a certain period.
Thanks
Weyland Yutani
Hi,
you cannot see that old data in ST03N.
regards,
rakesh
Similar Messages
-
How to apply Date condition for each month in 12 month period to my SQL query
I am trying to retrieve all Outstanding Problem tickets in my Trendline SSRS report.
I need to pull the OpenDate <= Last day of last month And CloseDate >= 1st day of current month
for each month in the Last 12 months. How do I accomplish this in my query?
I must also need to pull the oustanding tickets for the next 11 months in the same query
where it will automatically pull the outstanding tickets for when a new month comes
in out of the 12 month period?
Here's a sample of my query to pull July 2013 Outstanding Problem tickets:
Select OpenDate, CloseDate, Ref_Num, Type, status
From Call_Req
Where OpenDate <= '2013-07-31 00:00:00' And CloseDate >= '2013-08-01 00:00:00'
And Type = 'P'
My Results:
OpenDate
CloseDate
Ref_Num
Type
status
6/13/2013 7:41
8/26/2013 12:41
P1726456FY13
P
CL
6/13/2013 8:17
8/23/2013 12:31
P1726612FY13
P
CL
6/13/2013 10:17
9/6/2013 16:54
P1727352FY13
P
CL
7/12/2013 10:46
9/6/2013 10:23
P1812568FY13
P
CL
7/18/2013 10:17
9/6/2013 8:53
P1830452FY13
P
CL
7/29/2013 15:54
9/6/2013 16:16
P1862906FY13
P
CL
5/17/2013 20:51
8/22/2013 9:09
P1653380FY13
P
CL
5/30/2013 13:29
8/26/2013 7:33
P1685693FY13
P
CL
7/15/2013 14:14
9/7/2013 9:42
P1818874FY13
P
CL
6/7/2013 15:49
9/6/2013 16:46
P1712265FY13
P
CL
7/18/2013 10:25
9/7/2013 9:18
P1830516FY13
P
CL
7/24/2013 16:30
8/12/2013 18:26
P1849909FY13
P
CL
Talitha DavisWould this Work?
DECLARE @now DATE = GETDATE();
WITH months(lvl, daydate)
AS (
SELECT
1,
@now
UNION ALL
SELECT
lvl + 1,
DATEADD(MONTH, -1, daydate)
FROM months
WHERE lvl < 12
), dateranges(period, opendate, closedate)
AS (
SELECT
CAST(YEAR(daydate) AS CHAR(4))
+ '-'
+ RIGHT('0' + CAST(MONTH(daydate) AS varCHAR(2)), 2),
DATEADD(DAY, 0-DAY(daydate), daydate),
DATEADD(DAY, 1-DAY(daydate), daydate)
FROM months
SELECT
b.period,
a.OpenDate,
a.CloseDate,
a.Ref_Num,
a.Type,
a.status
From Call_Req a
INNER JOIN dateranges b
ON
a.OpenDate <= b.opendate
AND
a.CloseDate >= b.closedate
WHERE Type = 'P';
Microsoft Certified Trainer & MVP on SQL Server
Please "Propose as Answer" if you got an answer on your question, and vote for it as helpful to help other user's find a solution on a similar question quicker. -
Portal language refresh / reload (user data source ABAP stack)
Hello,
I'm on SAP NetWeaver Portal 7.0 with user data source on ABAP stack.
I'm trying to create simple JavaScript links for changing the Portal language.
I was able to change the ABAP stack user's logon language by BAPI call.
But the newly set language shows up only after the user logs out and logs in again.
I know that in the WebDynpro for Java, which implements the UME user interface, there is a functionality, that allows that relogging of the user is not necessary. After setting the language you only refresh the browser page (F5) and the new language shows up.
Does anyone know what function I should call, for the language refresh (could be the same as in UME standard WDJ)?Hi Andres,
language doesn't change on the Portal. The content remains in the previous language.
I know that the switching of Logon language parameter in the user profile in ABAP stack and logoff and login on the portal leads to change of the language on the Portal. But I don't know, how to do it without the relogging of the user.
I change the Logon language in ABAP by AJAX call of BAPI.
Thank you for any idea.
Jiri -
Data between two dates in a 12-month period
Hello Gentlemen
I am facing a problem hope you would solve it.
I have a table
CREATE TABLE MATCHES
(MT_ID NUMBER(4) CONSTRAINT MT_ID_PK PRIMARY KEY,
START_DATE DATE,
END_DATE DATE,
TEAM_A NUMBER(2),
TEAM_B NUMBER(2),
SERIES_ID NUMBER(3))
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B,SERIES_ID) VALUES(1,'1 Apr 1993', '5 Apr 1993',1,2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B,SERIES_ID) VALUES(2,'21 Apr 1993', '25 Apr 1993',2,1,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B,SERIES_ID) VALUES(3,'30 Mar 1994', '3 Apr 1994',4,2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B,SERIES_ID) VALUES(4,'1 May 1994', '5 May 1994',8,1,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B,SERIES_ID) VALUES(5,'24 Nov 1994', '28 Nov 1994',5,7,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B,SERIES_ID) VALUES(6,'31 Mar 1999', '4 Apr 1999',3,6,1);
select * from matches order by 1
MT_ID START_DATE END_DATE TEAM_A TEAM_B SERIES_ID
1 01-APR-93 05-APR-93 1 2 1
2 21-APR-93 25-APR-93 2 1 1
3 30-MAR-94 03-APR-94 4 2 1
4 01-MAY-94 05-MAY-94 8 1 1
5 24-NOV-94 28-NOV-94 5 7 1
6 31-MAR-99 04-APR-99 3 6 1Where
MT_ID is Match ID which is primary key
stat_date is the start date of the match and end_date is the date on which the match ended.
Each match has two teams i.e Team A and Team B. Each team has its unique ID. So in the above data there are eight teams form
ID 1 to 8.
Duration of match can be taken out if we minus the start date from the end date. For example:
Select END_DATE-START_DATE +1
From MATCHES
END_DATE-START_DATE+1
5
5
5
5
5
5 1 is added to include the start day too.
My requirment is as follows:
For each of the 8 Teams, show
1. How many matches they played in each of the 7 twelve month periods from 1 April 1993 to 31 March 2000? If a match overlaped a 12 month period, then it would be treated as one match each on either side on the 12 month period.
For example, if a match started on 30 March 1994 and ended on 3 Apr 1994 then for the 12-month year starting from 1 Apr 1993 to 31 March 1994 it would be treated as one match and for the 12-month period starting from 1 Apr 1994 to 31 March 1995 it would be treated as another match. Becuase the match was split into 2 + 3 days on either side of the 12-month period.
2. How many days each team was playing a match in each of the 7 twelve month periods from 1 April 1993 to 31 March 2000?
For example, a team played 3 matches between Apr 1, 1993 and Mar 31, 1994. The Duration of each of the matches was 5+5+5 = 15 days. But the third match overlaped the 12-month period which started on 30 Mar 1994 and ended on 3 Apr 1994. So the correct number of playing days for that team would be 5 + 5 + 2 = 12 days from Apr 1, 1993 and Mar 31, 1994.
A want an efficient query that gets me both of the above answers
My desired output is like this:
For Team ID = 1
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 2 10
1-Apr-1994 to 31-Mar-1995 1 5
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 0 0
1-Apr-1999 to 31-Mar-2000 0 0
For Team ID = 2
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 3 12
1-Apr-1994 to 31-Mar-1995 1 3
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 0 0
1-Apr-1999 to 31-Mar-2000 0 0
For Team ID = 3
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 0 0
1-Apr-1994 to 31-Mar-1995 0 0
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 1 1
1-Apr-1999 to 31-Mar-2000 1 4
For Team ID = 4
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 1 2
1-Apr-1994 to 31-Mar-1995 1 3
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 0 0
1-Apr-1999 to 31-Mar-2000 0 0
For Team ID = 5
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 0 0
1-Apr-1994 to 31-Mar-1995 1 5
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 0 0
1-Apr-1999 to 31-Mar-2000 0 0
For Team ID = 6
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 0 0
1-Apr-1994 to 31-Mar-1995 0 0
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 1 1
1-Apr-1999 to 31-Mar-2000 1 4
For Team ID = 7
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 0 0
1-Apr-1994 to 31-Mar-1995 1 5
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 0 0
1-Apr-1999 to 31-Mar-2000 0 0
For Team ID = 8
Period MT Playing Days
1-Apr-1993 to 31-Mar-1994 0 0
1-Apr-1994 to 31-Mar-1995 1 5
1-Apr-1995 to 31-Mar-1996 0 0
1-Apr-1996 to 31-Mar-1997 0 0
1-Apr-1997 to 31-Mar-1998 0 0
1-Apr-1998 to 31-Mar-1999 0 0
1-Apr-1999 to 31-Mar-2000 0 0I would appreciate a prompt reply in this regard.
Thanks in advance
Ramis ShahDear Oscar
Thanks for your feedback. Yes, this problem has to be resolved becuase SQL from browser is better to work with. The command prompt SQLPlus is not user friendly.
Any way, Oscar I checked your last query on the sample data that I also posted in my question. It was fine. But when I ran the query on my actual base table it did not gave me the correct results for frequency of six weeks gap. It showed 0 for even those gaps where there is actually a six week gap and where there was a gap of atleast six weeks on more than one ocassion in a 12-month period it shows only 1 for those.
THe "Free days" were however generated correct by the query and its further accumulution to next period at cut-off point (31-Mar-YYYY) is also correct..But I missed to tell you one thing which I explained below.
The is no difference in between the base tables and the dummy table. The only difference is ofcourse the data and the number of records.
For this reason I copied here actual base table DDL data (54 records) in order to solve the
problem.
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1615,'03-OCT-2002','07-OCT-2002',1,7);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1617,'11-OCT-2002','15-OCT-2002',7,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1620,'19-OCT-2002','23-OCT-2002',1,7);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1623,'07-NOV-2002','11-NOV-2002',1,2);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1628,'21-NOV-2002','25-NOV-2002',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1629,'29-NOV-2002','03-DEC-2002',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1634,'26-DEC-2002','30-DEC-2002',1,2);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1636,'02-JAN-2003','06-JAN-2003',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1638,'10-APR-2003','14-APR-2003',4,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1639,'19-APR-2003','23-APR-2003',1,4);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1643,'01-MAY-2003','05-MAY-2003',1,4);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1650,'18-JUL-2003','22-JUL-2003',12,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1652,'25-JUL-2003','29-JUL-2003',12,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1661,'09-OCT-2003','13-OCT-2003',1,11);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1663,'17-OCT-2003','21-OCT-2003',11,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1671,'04-DEC-2003','08-DEC-2003',1,6);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1673,'12-DEC-2003','16-DEC-2003',1,6 );
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1678,'26-DEC-2003','30-DEC-2003',6,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1680,'02-JAN-2004','06-JAN-2004',6,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1685,'08-MAR-2004','12-MAR-2004',1,9);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1688,'16-MAR-2004','20-MAR-2004',1,9);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1691,'24-MAR-2004','28-MAR-2004',1,9);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1706,'09-JUL-2004','13-JUL-2004',1,9);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1720,'03-NOV-2004','07-NOV-2004',6,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1721,'18-NOV-2004','22-NOV-2004',5,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1723,'26-NOV-2004','30-NOV-2004',1,5);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1726,'16-DEC-2004','20-DEC-2004',1,7);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1729,'26-DEC-2004','30-DEC-2004',7,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1731,'02-JAN-2005','06-JAN-2005',7,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1739,'10-MAR-2005','14-MAR-2005',5,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1742,'18-MAR-2005','22-MAR-2005',1,5);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1744,'26-MAR-2005','30-MAR-2005',5,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1756,'21-JUL-2005','25-JUL-2005',1,2);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1758,'04-AUG-2005','08-AUG-2005',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1760,'11-AUG-2005','15-AUG-2005',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1762,'25-AUG-2005','29-AUG-2005',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1763,'08-SEP-2005','12-SEP-2005',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1768,'14-OCT-2005','19-OCT-2005',1,21);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1769,'03-NOV-2005','07-NOV-2005',1,4);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1771,'17-NOV-2005','21-NOV-2005',4,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1773,'25-NOV-2005','29-NOV-2005',4,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1777,'16-DEC-2005','20-DEC-2005',1,3);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1779,'26-DEC-2005','30-DEC-2005',1,3);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1780,'02-JAN-2006','06-JAN-2006',3,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1789,'16-MAR-2006','20-MAR-2006',3,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1792,'24-MAR-2006','28-MAR-2006',1,3);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1795,'31-MAR-2006','04-APR-2006',3,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1797,'09-APR-2006','13-APR-2006',12,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1799,'16-APR-2006','20-APR-2006',12,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1817,'23-NOV-2006','27-NOV-2006',1,2);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1819,'01-DEC-2006','05-DEC-2006',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1821,'14-DEC-2006','18-DEC-2006',1,2);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1824,'26-DEC-2006','30-DEC-2006',2,1);
INSERT INTO MATCHES (MT_ID,START_DATE,END_DATE,TEAM_A,TEAM_B) VALUES (1826,'02-JAN-2007','06-JAN-2007',2,1);Select * from matches
MT_ID START_DATE END_DATE TEAM_A TEAM_B
1615 03-OCT-2002 07-OCT-2002 1 7
1617 11-OCT-2002 15-OCT-2002 7 1
1620 19-OCT-2002 23-OCT-2002 1 7
1623 07-NOV-2002 11-NOV-2002 1 2
1628 21-NOV-2002 25-NOV-2002 2 1
1629 29-NOV-2002 03-DEC-2002 2 1
1634 26-DEC-2002 30-DEC-2002 1 2
1636 02-JAN-2003 06-JAN-2003 2 1
1638 10-APR-2003 14-APR-2003 4 1
1639 19-APR-2003 23-APR-2003 1 4
1643 01-MAY-2003 05-MAY-2003 1 4
1650 18-JUL-2003 22-JUL-2003 12 1
1652 25-JUL-2003 29-JUL-2003 12 1
1661 09-OCT-2003 13-OCT-2003 1 11
1663 17-OCT-2003 21-OCT-2003 11 1
1671 04-DEC-2003 08-DEC-2003 1 6
1673 12-DEC-2003 16-DEC-2003 1 6
1678 26-DEC-2003 30-DEC-2003 6 1
1680 02-JAN-2004 06-JAN-2004 6 1
1685 08-MAR-2004 12-MAR-2004 1 9
1688 16-MAR-2004 20-MAR-2004 1 9
1691 24-MAR-2004 28-MAR-2004 1 9
1706 09-JUL-2004 13-JUL-2004 1 9
1720 03-NOV-2004 07-NOV-2004 6 1
1721 18-NOV-2004 22-NOV-2004 5 1
1723 26-NOV-2004 30-NOV-2004 1 5
1726 16-DEC-2004 20-DEC-2004 1 7
1729 26-DEC-2004 30-DEC-2004 7 1
1731 02-JAN-2005 06-JAN-2005 7 1
1739 10-MAR-2005 14-MAR-2005 5 1
1742 18-MAR-2005 22-MAR-2005 1 5
1744 26-MAR-2005 30-MAR-2005 5 1
1756 21-JUL-2005 25-JUL-2005 1 2
1758 04-AUG-2005 08-AUG-2005 2 1
1760 11-AUG-2005 15-AUG-2005 2 1
1762 25-AUG-2005 29-AUG-2005 2 1
1763 08-SEP-2005 12-SEP-2005 2 1
1768 14-OCT-2005 19-OCT-2005 1 21
1769 03-NOV-2005 07-NOV-2005 1 4
1771 17-NOV-2005 21-NOV-2005 4 1
1773 25-NOV-2005 29-NOV-2005 4 1
1777 16-DEC-2005 20-DEC-2005 1 3
1779 26-DEC-2005 30-DEC-2005 1 3
1780 02-JAN-2006 06-JAN-2006 3 1
1789 16-MAR-2006 20-MAR-2006 3 1
1792 24-MAR-2006 28-MAR-2006 1 3
1795 31-MAR-2006 04-APR-2006 3 1
1797 09-APR-2006 13-APR-2006 12 1
1799 16-APR-2006 20-APR-2006 12 1
1817 23-NOV-2006 27-NOV-2006 1 2
1819 01-DEC-2006 05-DEC-2006 2 1
1821 14-DEC-2006 18-DEC-2006 1 2
1824 26-DEC-2006 30-DEC-2006 2 1
1826 02-JAN-2007 06-JAN-2007 2 1 Now, I run my query to show the number of free days between each Test for matches played by TEAM = 1
SELECT MT_ID, START_OF_FREE_DAYS,
START_DATE-1 END_OF_FREE_DAYS, START_DATE, END_DATE, TEAM_A,
TEAM_B, FREE_DAYS, to_char( trunc(FREE_DAYS/7)+mod(FREE_DAYS,7)/10,'990.0') WEEKS1
FROM
select MT_ID, lag(END_DATE, 1) over (order by MT_ID)+1 START_OF_FREE_DAYS,
START_DATE,
END_DATE,
TEAM_A, TEAM_B,
CASE
WHEN DECODE(START_DATE-lag(START_DATE, 1) over (order by
MT_ID)-1,-1,0,START_DATE-lag(START_DATE, 1) over (order by MT_ID)-1) <= 4 THEN 0
WHEN DECODE(START_DATE-lag(START_DATE, 1) over (order by
MT_ID)-1,-1,0,START_DATE-lag(START_DATE, 1) over (order by MT_ID)-1) > 4 THEN
START_DATE-lag(END_DATE, 1) over (order by MT_ID)-1 END FREE_DAYS
FROM
MATCHES where TEAM_A = 1 OR TEAM_B = 1
MT_ID START_OF END_OF_ START_DATE END_DATE TEAM_ TEAM FREE_ Weeks1
FREEDAYS FREE_DAYS A _B DAYS
1615 - 02-OCT-02 03-OCT-02 07-OCT-02 1 7 - -
1617 08-OCT-02 10-OCT-02 11-OCT-02 15-OCT-02 7 1 3 0.3
1620 16-OCT-02 18-OCT-02 19-OCT-02 23-OCT-02 1 7 3 0.3
1623 24-OCT-02 06-NOV-02 07-NOV-02 11-NOV-02 1 2 14 2.0
1628 12-NOV-02 20-NOV-02 21-NOV-02 25-NOV-02 2 1 9 1.2
1629 26-NOV-02 28-NOV-02 29-NOV-02 03-DEC-02 2 1 3 0.3
1634 04-DEC-02 25-DEC-02 26-DEC-02 30-DEC-02 1 2 22 3.1
1636 31-DEC-02 01-JAN-03 02-JAN-03 06-JAN-03 2 1 2 0.2
1638 07-JAN-03 09-APR-03 10-APR-03 14-APR-03 4 1 93 13.2
1639 15-APR-03 18-APR-03 19-APR-03 23-APR-03 1 4 4 0.4
1643 24-APR-03 30-APR-03 01-MAY-03 05-MAY-03 1 4 7 1.0
1650 06-MAY-03 17-JUL-03 18-JUL-03 22-JUL-03 12 1 73 10.3
1652 23-JUL-03 24-JUL-03 25-JUL-03 29-JUL-03 12 1 2 0.2
1661 30-JUL-03 08-OCT-03 09-OCT-03 13-OCT-03 1 11 71 10.1
1663 14-OCT-03 16-OCT-03 17-OCT-03 21-OCT-03 11 1 3 0.3
1671 22-OCT-03 03-DEC-03 04-DEC-03 08-DEC-03 1 6 43 6.1
1673 09-DEC-03 11-DEC-03 12-DEC-03 16-DEC-03 1 6 3 0.3
1678 17-DEC-03 25-DEC-03 26-DEC-03 30-DEC-03 6 1 9 1.2
1680 31-DEC-03 01-JAN-04 02-JAN-04 06-JAN-04 6 1 2 0.2
1685 07-JAN-04 07-MAR-04 08-MAR-04 12-MAR-04 1 9 61 8.5
1688 13-MAR-04 15-MAR-04 16-MAR-04 20-MAR-04 1 9 3 0.3
1691 21-MAR-04 23-MAR-04 24-MAR-04 28-MAR-04 1 9 3 0.3
1706 29-MAR-04 08-JUL-04 09-JUL-04 13-JUL-04 1 9 102 14.4
1720 14-JUL-04 02-NOV-04 03-NOV-04 07-NOV-04 6 1 112 16.0
1721 08-NOV-04 17-NOV-04 18-NOV-04 22-NOV-04 5 1 10 1.3
1723 23-NOV-04 25-NOV-04 26-NOV-04 30-NOV-04 1 5 3 0.3
1726 01-DEC-04 15-DEC-04 16-DEC-04 20-DEC-04 1 7 15 2.1
1729 21-DEC-04 25-DEC-04 26-DEC-04 30-DEC-04 7 1 5 0.5
1731 31-DEC-04 01-JAN-05 02-JAN-05 06-JAN-05 7 1 2 0.2
1739 07-JAN-05 09-MAR-05 10-MAR-05 14-MAR-05 5 1 62 8.6
1742 15-MAR-05 17-MAR-05 18-MAR-05 22-MAR-05 1 5 3 0.3
1744 23-MAR-05 25-MAR-05 26-MAR-05 30-MAR-05 5 1 3 0.3
1756 31-MAR-05 20-JUL-05 21-JUL-05 25-JUL-05 1 2 112 16.0
1758 26-JUL-05 03-AUG-05 04-AUG-05 08-AUG-05 2 1 9 1.2
1760 09-AUG-05 10-AUG-05 11-AUG-05 15-AUG-05 2 1 2 0.2
1762 16-AUG-05 24-AUG-05 25-AUG-05 29-AUG-05 2 1 9 1.2
1763 30-AUG-05 07-SEP-05 08-SEP-05 12-SEP-05 2 1 9 1.2
1768 13-SEP-05 13-OCT-05 14-OCT-05 19-OCT-05 1 21 31 4.3
1769 20-OCT-05 02-NOV-05 03-NOV-05 07-NOV-05 1 4 14 2.0
1771 08-NOV-05 16-NOV-05 17-NOV-05 21-NOV-05 4 1 9 1.2
1773 22-NOV-05 24-NOV-05 25-NOV-05 29-NOV-05 4 1 3 0.3
1777 30-NOV-05 15-DEC-05 16-DEC-05 20-DEC-05 1 3 16 2.2
1779 21-DEC-05 25-DEC-05 26-DEC-05 30-DEC-05 1 3 5 0.5
1780 31-DEC-05 01-JAN-06 02-JAN-06 06-JAN-06 3 1 2 0.2
1789 07-JAN-06 15-MAR-06 16-MAR-06 20-MAR-06 3 1 68 9.5
1792 21-MAR-06 23-MAR-06 24-MAR-06 28-MAR-06 1 3 3 0.3
1795 29-MAR-06 30-MAR-06 31-MAR-06 04-APR-06 3 1 2 0.2
1797 05-APR-06 08-APR-06 09-APR-06 13-APR-06 12 1 4 0.4
1799 14-APR-06 15-APR-06 16-APR-06 20-APR-06 12 1 2 0.2
1817 21-APR-06 22-NOV-06 23-NOV-06 27-NOV-06 1 2 216 30.6
1819 28-NOV-06 30-NOV-06 01-DEC-06 05-DEC-06 2 1 3 0.3
1821 06-DEC-06 13-DEC-06 14-DEC-06 18-DEC-06 1 2 8 1.1
1824 19-DEC-06 25-DEC-06 26-DEC-06 30-DEC-06 2 1 7 1.0
1826 31-DEC-06 01-JAN-07 02-JAN-07 06-JAN-07 2 1 2 0.2 As you see there is one 93-day gap (from 07-JAN-03 to 09-APR-03) before MT_ID = 1638 of which 84 days come between period 01-Apr-2002 to 31-Mar-2003 and the remaining nine from April 1 to 9. This one six-week gap is very well showed by the result of your query below. But in the period from 01-Apr-2003 to 31-Mar-2004 your query below does not show any six-week gap. whereas in the same period, above the results show four instances of atleast 42-days gap. i.e. 73, 71, 43 and 61 days.
So your query should show the following for this period:
TOT TEAM PERIOD FREEDAYS EXISTS_SIX_WEEK_GAP
- 1 01-Apr-2003 to 31-Mar-2004 296 4 Same is true for the next period 01-Apr-2004 to 31-Mar-2005.
For other TEAM ID's the six-week results generated by your query are ok, becuase for each of those teams, except for Team = 21, there was only one instance of 42 days gap. The query fails only when there is more than one 42-days gap.
For Team = 21, The query shows 1 instance of six-week gap but doesn't show the number of free days for that period. This is mainly becuase I told you in my question the other day that Free Days are calculated by taking the diffrence between the end date of the previous match and the start date of the current match. Since team = 21 played only one match so that's why the query showed no free-days becuase it did not found any previous date to take the difference. For this purpose I rephrase my question below the following table.
When I run your query, modifying the start period to 1-Apr-2002 instead of 1992 and connect by
level <= 5,
with periods as ( select add_months(dt,12*(rownum-1)) start_period,
add_months(dt,12*rownum)-1 end_period
from (select to_date('1-Apr-2002') dt from dual)
connect by level <= 5),
....,on my actual data it gives me the following result:
TOT TEAM PERIOD FREEDAYS EXISTS_SIX_WEEK_GAP
- 1 01-Apr-2002 to 31-Mar-2003 140 1
- 1 01-Apr-2003 to 31-Mar-2004 296 0
- 1 01-Apr-2004 to 31-Mar-2005 315 0
- 1 01-Apr-2005 to 31-Mar-2006 293 0
- 1 01-Apr-2006 to 31-Mar-2007 242 0
TOTAL 1 - 1286 1
- 2 01-Apr-2002 to 31-Mar-2003 120 1
- 2 01-Apr-2003 to 31-Mar-2004 366 0
- 2 01-Apr-2004 to 31-Mar-2005 365 0
- 2 01-Apr-2005 to 31-Mar-2006 340 0
- 2 01-Apr-2006 to 31-Mar-2007 256 0
TOTAL 2 - 1447 1
- 3 01-Apr-2002 to 31-Mar-2003 0 0
- 3 01-Apr-2003 to 31-Mar-2004 0 0
- 3 01-Apr-2004 to 31-Mar-2005 0 0
- 3 01-Apr-2005 to 31-Mar-2006 80 1
- 3 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 3 - 80 1
- 4 01-Apr-2002 to 31-Mar-2003 0 0
- 4 01-Apr-2003 to 31-Mar-2004 342 1
- 4 01-Apr-2004 to 31-Mar-2005 365 0
- 4 01-Apr-2005 to 31-Mar-2006 228 0
- 4 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 4 - 935 1
- 5 01-Apr-2002 to 31-Mar-2003 0 0
- 5 01-Apr-2003 to 31-Mar-2004 0 0
- 5 01-Apr-2004 to 31-Mar-2005 108 1
- 5 01-Apr-2005 to 31-Mar-2006 0 0
- 5 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 5 - 108 1
- 6 01-Apr-2002 to 31-Mar-2003 0 0
- 6 01-Apr-2003 to 31-Mar-2004 99 1
- 6 01-Apr-2004 to 31-Mar-2005 216 0
- 6 01-Apr-2005 to 31-Mar-2006 0 0
- 6 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 6 - 315 1
- 7 01-Apr-2002 to 31-Mar-2003 165 1
- 7 01-Apr-2003 to 31-Mar-2004 366 0
- 7 01-Apr-2004 to 31-Mar-2005 266 0
- 7 01-Apr-2005 to 31-Mar-2006 0 0
- 7 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 7 - 797 1
- 9 01-Apr-2002 to 31-Mar-2003 0 0
- 9 01-Apr-2003 to 31-Mar-2004 9 1
- 9 01-Apr-2004 to 31-Mar-2005 99 0
- 9 01-Apr-2005 to 31-Mar-2006 0 0
- 9 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 9 - 108 1
- 11 01-Apr-2002 to 31-Mar-2003 0 0
- 11 01-Apr-2003 to 31-Mar-2004 3 1
- 11 01-Apr-2004 to 31-Mar-2005 0 0
- 11 01-Apr-2005 to 31-Mar-2006 0 0
- 11 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 11 - 3 1
- 12 01-Apr-2002 to 31-Mar-2003 0 0
- 12 01-Apr-2003 to 31-Mar-2004 248 1
- 12 01-Apr-2004 to 31-Mar-2005 365 0
- 12 01-Apr-2005 to 31-Mar-2006 365 0
- 12 01-Apr-2006 to 31-Mar-2007 10 0
TOTAL 12 - 988 1
- 21 01-Apr-2002 to 31-Mar-2003 0 0
- 21 01-Apr-2003 to 31-Mar-2004 0 0
- 21 01-Apr-2004 to 31-Mar-2005 0 0
- 21 01-Apr-2005 to 31-Mar-2006 0 1
- 21 01-Apr-2006 to 31-Mar-2007 0 0
TOTAL 21 - 0 1 I want that Free-days should be calculated in the following way:
1. The number of free-days for each team would be calculated by the taking the difference between the end-date of the previous match and the start date of the current match.
2.If there is no previous match or the current match is the first match of the respective team in that 12-month period then the number of free-days would be calculated by taking the difference between the start date of that respective period (say 1-Apr-2002) and the start date of the current match. For example, Team = 21 played its first and only match in the 12-month period (01-Apr-2005 to 31-Mar-2006) from 14-19 OCT-,2005. So for this team the number of free days in this period would be 196 days (from 1-Apr-05 to 13-Oct-05) before this match and since no further match is played by this team in that period so the free days (163) from 20-Oct-2005 till 31-Mar-2006 (period end) would also come into this period. Hence the total number of free days by team = 21 in this period would be 196 + 163 = 359 days. The six-week gaps were two for this team in this period. Similary, for Team = 1 in the period from 1-April-2002 to 31-mar 2003, it played it first match from 03-07 OCT, 2002. Its free days for that period currently shown are 140 but
they should be 325 (140 + 185 days ==> from 1 April 2002 to OCt 2, 2002).
3. If a team plays its last match in any period well before end period say by Jan 6, 2007, then the period from Jan 7 to March 31, would also be counted in the free days. If the current date or SYSDATE is less then March 31, 2007, then the free-days would be counted from Jan 7 to current date or SYSdate.
4. If a team played no match in any period then the total number of days in that period would come as free days and this would count as only 1 six-week gap in that period.
5. If the free days overlaped a 12-month period then the number of free days that came till the end of the period break point would come into the preceding period and the remaining number of free days would come in the next 12-month period. For exmaple, a team played a match from 01-MAY-94 to 05-MAY-1994 and then played its next match on 01-APR-1999 to 05-APR-1999. So the number of free days between 06-MAY-1994 TO 31-MAR-1999 are 1791 days. (This condition is already well done by your current query). Lastly, for an overlaping gap (over 2 or more periods), the frequency of atleast six-weeks would only come in the period from where the six-week gap started.
I would prefer results in the format below. The free-days gaps in each period are breaked-up into actual gaps, showing the start and end date of the gap and the number of days and the "1" if the gap is of atleast 42 days. the first line of each period shows the sum of the total number of playing days between that period, sum of free days for each period and the sum of six-weeks for that period.
TOT TEAM PERIOD Playing_days FREEDAYS EXISTS_SIX_WEEK_GAP
- 1 01-Apr-2002 to 31-Mar-2003 40 325 2
01-Apr-02 to 02-OCT-02 185 1
08-OCT-02 to 10-OCT-02 3 -
16-OCT-02 to 18-OCT-02 3 -
24-OCT-02 to 06-NOV-02 14 -
12-NOV-02 to 20-NOV-02 9 -
26-NOV-02 to 28-NOV-02 3 -
04-DEC-02 to 25-DEC-02 22 -
31-DEC-02 to 01-JAN-03 2 -
07-JAN-03 to 31-Mar-03 84 1
01-Apr-2003 to 31-Mar-2004 70 296 4
01-Apr-03 to 09-Apr-03 9 -
15-APR-03 to 18-APR-03 4 -
24-APR-03 to 30-APR-03 7 -
06-MAY-03 to 17-JUL-03 73 1
23-JUL-03 to 24-JUL-03 2 -
30-JUL-03 to 08-OCT-03 71 1
14-OCT-03 to 16-OCT-03 3 -
22-OCT-03 to 03-DEC-03 43 1
09-DEC-03 to 11-DEC-03 3 -
17-DEC-03 to 25-DEC-03 9 -
31-DEC-03 to 01-JAN-04 2 -
07-JAN-04 to 07-MAR-04 61 1
13-MAR-04 to 15-MAR-04 3 -
21-MAR-04 to 23-MAR-04 3 -
29-MAR-04 to 31-Mar-04 3 -
01-Apr-2004 to 31-Mar-2005
01-Apr-2005 to 31-Mar-2006
01-Apr-2006 to 31-Mar-2007
Grand TOTAL I hope everything would be clear this time too.
Oscar, I am sorry for taking alot of your precious time. But I badly need to have this query in order to have the results for my huge data analysis.
Kind regards
Ramis -
Issue in registering ABAP stack into SLD
Hi all
The issue is as shown below. I appreciate your help.
Environment: SLD host-Windows Server 2003, Oracle 10g, WAS JAVA 640 SP19
CRM ABAP+JAVA 640 host - unix, Oracle
I was able to register CRM JAVA stack in SLD from Visual Administrator>SLD Data Supplier. The CIM Client Test was successfull.
When i try to register the CRM ABAP stack from tcode RZ70, i get an error as below:
SLD DS start program
0: sapsrm_CRM_05 : Execute program: SLDAPPL_SERV
0: sapsrm_CRM_05 : Execute program: SLDBCSYS
0: sapsrm_CRM_05 : Execute program: SLDCLIENT
0: sapsrm_CRM_05 : Execute program: SLDCOMPSYS
0: sapsrm_CRM_05 : Execute program: SLDDBSYS
0: sapsrm_CRM_05 : Execute program: SLDGWSRV
0: sapsrm_CRM_05 : Execute program: SLDINSTSC
0: sapsrm_CRM_05 : Execute program: SLDINSTSP
0: sapsrm_CRM_05 : Execute program: SLDIPSERV
0: sapsrm_CRM_05 : Execute program: SLDMSGSRV
0: sapsrm_CRM_05 : Execute program: SLDASSOC
0: sapsrm_CRM_05 : Collection of SLD data finished
0: sapsrm_CRM_05 : Data collected successfully
0: sapsrm_CRM_05 : RFC data prepared
0: sapsrm_CRM_05 : Used RFC destination: SLD_UC
0: sapsrm_CRM_05 : RFC call failed: / CPIC-CALL: 'ThSAPECMINIT' : cmRc=17 thRc=236#SAP gateway connection failed. Is SAP gateway started?
0: sapsrm_CRM_05 : Existing periodic jobs removed. Number: 1
0: sapsrm_CRM_05 : Program scheduled: 20080506 222324
1: sapsrm_CRM_05 : Event-controlled job already exists; scheduling not necessary
I came to know from other forums in sdn that we need to install/configure separate gateway if the SLD is on a standalone JAVA engine.
Also, in SM59 SLD_UC, SLD_NUC, SAPSLDAPI are failing with the same error of "RFC call failed: / CPIC-CALL: 'ThSAPECMINIT' : cmRc=17 thRc=236#SAP gateway connection failed. Is SAP gateway started?"
Please suggest how to resolve this. Please let me know if you need more details.
Thanks already
Edited by: Rahul Paul Patchigondla on May 6, 2008 9:57 AMRahul,
as RK already stated: the SLD has to connect to an SAP gateway, such is running on an ABAP system.
You may initially try to use the SAP gateway from the CRM ABAP stack. Therefore you will have to adjust the SLD to use that SAP gateway. On 6.40 SLD: Administration / Data supplier bridge / RFC gateway: Server (host name) and Service (combination of sapgw and instance number of CRM ABAP system).
After that, in CRM SM59 SLD_UC, SLD_NUC, SAPSLDAPI will have to be adjusted accordingly.
Regards, Boris -
Runtime error in xi abap stack -while getting AE logon details
Hi XI gurus
We are getting a error in abap stack , transaction SMQ2 in XI box - whose details in sxmb_moni are as follows
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="INTERNAL">CLIENT_RECEIVE_FAILED</SAP:Code>
<SAP:P1>400</SAP:P1>
<SAP:P2>ICM_HTTP_CONNECTION_FAILED</SAP:P2>
<SAP:P3 />
<SAP:P4 />
When we look at the error trace in sxmb_moni, I see the following :
<Trace level="2" type="T">return fresh values from cache</Trace>
<Trace level="2" type="T">Get logon data for adapter engine (SAI_AE_DETAILS_GET):</Trace>
<Trace level="1" type="T">HTTP Multipart document length: 30971</Trace>
<Trace level="2" type="System_Error">HTTP-Client: exception during receive: HTTP_COMMUNICATION_FAILURE</Trace>
</Trace>
</Trace>
Is there a RFC destination to adapter engine from ABAP stack that is failing here ? What should we check ?Hi
Please perform below tasks
1. Please check INTEGRATION_SERVER_HMI rfc is working fine using SM59 transaction
2. If you are using RFC detination to connect to Proxy system, then i suggest you to check the connection
3. Have a look at SAP Note 755372, 634006 and 773830 for the solution.
4. refer to this blog - /people/krishna.moorthyp/blog/2006/07/23/http-errors-in-xi
5. If still problem persist please post us the ICM trace file
Regards
Sekhar -
ABAP Stack : Subroutines
Hi Everyone,
I was wondering how can you access the local variable of a subroutine using ABAP Stack.
E.g.
REPORT A.
PERFORM B.
FORM B
data : var2
CALL FUNCTION C
ENDFORM
FUNCTION C.
<access var2 here>
ENDFUNCTION.
I only know that you can usually access variables via (PROGNAME)variable and assign it to an <FS>.
Thanks,
PatrickHi f0Xg3!,
ABAP stack if i am not mistaken is a way for you to navigate through the flow of objects like programs, screen and other objects in the event of run time.
For a variable which is "LOCALLY" declared in a subroutine and you want to see it in call function... it is not possible. If anyone says its possible please enlighten me too.
Now, when a variable is "LOCALLY" declared, the visibility of this variable is only in the scope of that subroutine.
Any variable that you want to see in a call function, it should be pass over through EXPORTING. Although you may wrote your CALL FUNCTION in that sub-routine... but the CALL FUNCTION is registered or declared in its own Function Group's scope... so the locally declared variable in a subroutine will not be visible.
Hence, I don't think it will work for your idea.
Just my opinion.
Regards,
W. Wilstroth -
How do I get a variable, or object from ABAP STACK.
Hey Gurus,
How do I get a variable, or object from ABAP STACK.
Example: I start my FM. I can see in the ABAP STACK the variable I need. I can see the object; I could use to get my variable. I need to use it in my FM; however I need to reference it in the run time. How do I do that?
Is there a method I can use for reading ABAP STACK?
Do I just use command: get reference of u2026?
Does anyone have an example code?
Basis version 7
Thanks in advance
MartinAh, you mean you want to access a variable from another program in the call stack, yes? You can do this using field symbols, but please don't try to change a value while doing this, it could really screw things up.
this example, is using two programs, where the second is accessing variables of the first program. Basically just notice that we are using the program name and the variable name when assigning the field symbol.
report zrich_0006 .
tables: mara.
parameters: p_matnr type mara-matnr..
data: matnr type mara-matnr.
data: imarc type table of marc with header line.
matnr = p_matnr.
select * from marc into table imarc up to 10 rows
where matnr = p_matnr.
perform in in program zrich_0007.
report zrich_0007 .
* FORM in *
form in.
data: field(50).
data: xmarc type marc.
field-symbols: <matnr>.
field-symbols: <imarc> type marc_upl_tt.
* Assign an individual variable
field = '(ZRICH_0006)matnr'.
assign (field) to <matnr>.
* Assign an internal table
field = '(ZRICH_0006)IMARC[]'.
assign (field) to <imarc>.
* Write out your data
write <matnr>.
loop at <imarc> into xmarc.
write: / xmarc-werks.
endloop.
endform.
Regards,
Rich Heilman -
Can you please let me know what is ABAP Stack
Fundamentals
Summary
A comprehensive integration and application platform, SAP NetWeaver heralds a new approach to IT development and applications. It brings together the disparate worlds of packaged applications and custom development in a single ecosystem, in which enterprise applications as we know them become the building blocks of a new generation of service-oriented applications.
Custom development with SAP NetWeaver is about the very latest in application development practices. Efficiency and flexibility are the watchwords. Application development is based on the model-driven paradigm as little coding as possible, paired with maximum application robustness and flexibility with regard to front-ends. It is about visual, pattern-based programming that still offers complete control for the power developer.
By SAP AG
23 May 2007
Architectural Background
SAP NetWeaver is based on a dual-stack architecture based on ABAP and Java. While ABAP has been with SAP for years and provides a robust and scalable development and runtime environment for any type of business programming, Java is based on open standards and leverages SAP NetWeaver to the broad community of Java developers. In a service-oriented environment, however, the programming language boundaries disappear, since components written in one language (for example, ABAP) can expose their capabilities as services that are consumed by components written in another language (for example, Java). The interoperability is achieved through Web services standards that have been implemented for both stacks. Likewise, SAPs user interface strategy is built on top of the Web Dynpro programming model that is supported seamlessly both in the Java and in the ABAP space.
The question of which environment you should use when depends on a couple of criteria that have to be weighed up carefully.
ABAPs strength lies in its proven application server architecture. The language is based on a strong integration of OPEN SQL and manages large data sets known as internal tables. This allows use of ABAP in transaction-oriented environments with good performance. The development environment (ABAP Workbench) is tightly integrated in the application server. Since ABAP is essentially a server-based development infrastructure, work in large development teams is organized by means of the correction and transport system in a distributed development landscape. ABAP supports a variety of data types that are optimized for business processes. Many important engines of SAP NetWeaver such as the BI OLAP engine or the XI integration engine are implemented in ABAP.
Java focuses more on the user interface side although more and more applications make use of the entire Java stack from user interface through business logic to persistence. Many of the ABAP scalability features have been adapted for the Java stack, such as the proven scalability using a J2EE dispatcher and J2EE server nodes (that correspond to the ABAP dispatcher and work processes). The NetWeaver Development Infrastructure organizes distributed development in teams by means of a central repository and build and transportation services similar in philosophy to ABAPs change and transport system. However, there are subtle differences that have to be taken into account. Java development is carried out on the client side in the NetWeaver Developer Studio. A local J2EE engine makes it easy for Java developers to work offline and later integrate their work in a central test system. Sources are checked out locally so that you only need to connect from time to time to the development infrastructure. SAP has implemented a lot of SAP NetWeaver components in Java, such as the J2EE server itself, the Portal, and the Developer Studio to name just a few.
ABAP and Java are code-based environments. Although they offer model-driven and highly-graphical tools such as the Web Dynpro View Designer or the Web Dynpro Data Modeler you end up in editor and debugger sessions, since most of the developers work has to be done here.
Finally, it is important to note that SAP NetWeaver is in transition from an integration platform to a composition and business process platform.
Composite applications can be developed on top of SAP NetWeaver and are supported by the composite application framework (CAF) and Guided Procedures.
Both technologies accelerate composition on top of SAP NetWeaver, but are integrated in the Developer Studio and leverage existing technologies such as Web Dynpro and Adobe Forms integration.
Regards
Ben -
Download campaigns by campaign ids with performance data
Hi,
I'm a newcomer to bing ads API and was having trouble downloading a bulk report from DownloadCampaignsByCampaignIds.
In particular I'm having trouble downloading ad performance data from a specific time range. You can see my SOAP request below; the request returns HTTP 500. If I remove the <PerformanceStatsDateRange> block and keep everything else exactly the same,
however, there is no error. But no performance stats will be downloaded, presumably because there is no time period specified.
I would also like to know if this method can download performance stats for ads with 0 impressions during this time period.
Thanks!
<s:Envelope xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">...(header omitted)
<s:Body><DownloadCampaignsByCampaignIdsRequest xmlns="https://bingads.microsoft.com/CampaignManagement/v9">
<Campaigns i:nil="false">
<CampaignScope><CampaignId>1234</CampaignId> <ParentAccountId>1234</ParentAccountId></CampaignScope> </Campaigns>
<DownloadFileType i:nil="false">Tsv</DownloadFileType>
<Entities i:nil="false">Ads</Entities>
<FormatVersion i:nil="false">3.0</FormatVersion>
<LastSyncTimeInUTC i:nil="true"></LastSyncTimeInUTC>
<DataScope>EntityData EntityPerformanceData</DataScope>
<PerformanceStatsDateRange i:nil="false">
<CustomDateRangeEnd i:nil="false">
<Day>15</Day>
<Month>01</Month>
<Year>2015</Year>
</CustomDateRangeEnd>
<CustomDateRangeStart i:nil="false">
<Day>01</Day>
<Month>01</Month>
<Year>2015</Year>
</CustomDateRangeStart>
</PerformanceStatsDateRange>
</DownloadCampaignsByCampaignIdsRequest></s:Body>
</s:Envelope>Hello.
What is the error code and message observed when you exclude PerformanceStatsDateRange, and which programming language are you using? The following is working for me.
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://bingads.microsoft.com/CampaignManagement/v9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="https://bingads.microsoft.com/CampaignManagement/v9" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<tns:CustomerAccountId>***</tns:CustomerAccountId>
<tns:CustomerId>***</tns:CustomerId>
<tns:DeveloperToken>***</tns:DeveloperToken>
<tns:Password>***</tns:Password>
<tns:UserName>***</tns:UserName>
</SOAP-ENV:Header>
<ns0:Body>
<ns1:DownloadCampaignsByCampaignIdsRequest>
<ns1:Campaigns>
<ns1:CampaignScope>
<ns1:CampaignId>***</ns1:CampaignId>
<ns1:ParentAccountId>***</ns1:ParentAccountId>
</ns1:CampaignScope>
</ns1:Campaigns>
<ns1:DataScope>EntityData EntityPerformanceData</ns1:DataScope>
<ns1:DownloadFileType>Csv</ns1:DownloadFileType>
<ns1:Entities>Ads</ns1:Entities>
<ns1:FormatVersion>3.0</ns1:FormatVersion>
<ns1:PerformanceStatsDateRange>
<ns1:CustomDateRangeEnd>
<ns1:Day>15</ns1:Day>
<ns1:Month>1</ns1:Month>
<ns1:Year>2015</ns1:Year>
</ns1:CustomDateRangeEnd>
<ns1:CustomDateRangeStart>
<ns1:Day>1</ns1:Day>
<ns1:Month>1</ns1:Month>
<ns1:Year>2015</ns1:Year>
</ns1:CustomDateRangeStart>
</ns1:PerformanceStatsDateRange>
</ns1:DownloadCampaignsByCampaignIdsRequest>
</ns0:Body>
</SOAP-ENV:Envelope>
You might try updating namespaces to match, since otherwise the structure of your request looks right.
I hope this helps,
Eric -
Mid month period not being calculated in pay slip
Hi Experts,
Mid month period given in 0008 is not being calculated.
e.g. if i hire some one on 16.01.09, then 0008 data should be calculated for those days only (e.g. 16 days) in pay slip. But in my case it is taking full amount of 0008.
Can any one kindly help, pl.
thanks
BaluDear Sikindar,
thanks for the replay.
PCL 1 and PCL10 are having 3 and 1 respectively.
checked the control record and the pay roll area of that employee and generation of pay roll periods are available in V_T549Q.
please guide me further
thanks
Balu -
What is the best way to create a SSRS 2005 Line Chart Report for a 12 month period?
I'm looking for advice on how to create a SQL Server 2005 query and line chart report for SSRS 2005.
I need to display the peak number of patients assigned to a medical practice each month for a 12 month period based on the end-user selecting a
single month and year.
I've previously created a report that displays all patients assigned to the practice for any single month but I’m looking for advice on how to
how to produce a resultset that shows the peak number of patients each month for a 12 month period. I thought about creating a query that returns the peak count for each month (based on my previously created report which displays all patients assigned to the
practice for any single month) and then use a UNION statement to join all 12 months but I'm sure that isn't the most efficient way to do this. The other challenge with this approach (twelve resultsets combined via a UNION) is that the end-user needs to be
able to select any month and year for the parameter and the report needs to display the 12 month period based on the month selected (the month selected would be the last month of the 12 month period).
For the report I’ve previously created that displays all patients assigned to the practice for any single month, the WHERE statement filters the
resultset on two fields:
Start Date - The date the patient was assigned to the practice. This field is never null or blank.
End Date - The date the patient left the practice. This field can be null or blank as active patients assigned to the practice do not have an End Date. When the patient
leaves the practice, the date the patient left is populated in this field.
Using these two fields I can return all patients assigned to the practice during Nov 2012 by looking for patients that meet the following criteria:
start date prior to 11/30/2012 (using the last day of the month selected ensures patients added mid-month would be included)
AND
end date is null or blank (indicates the patient is active) OR the end date is between 11/1/2012 -11/30/2012 (returns patients that leave during the month
selected)
Regarding the query I need to create for the report that displays the peak count each month for 12 months, I'm looking for advice on
how to count patients for each month the patient is assigned to the practice if the patient has been assigned for several months (which applies to most patients). Examples are:
John Doe has a start date of 6/01/2012 and an End Date of 10/07/2012
Sally Doe has a start date of 8/4/2012 and no End Date (the patient is still active)
Jimmy Doe has a start of 7/3/2012 and an End Date of 9/2/2012
Given these examples how would I include John Doe in the peak monthly count each month for May - October, Sally Doe in the peak monthly count for
August - December and Jimmy Doe in the peak monthly count for July – Sept if the end-user running the report selected December 2012 as the parameter?
Given the example above and the fact I'm creating a line chart I think the best way to create this report would be a resultset that looks like
this:
Patient Name
Months Assigned
John Doe
June 2012
John Doe
July012
John Doe
Aug 2012
John Doe
Sept 2012
John Doe
Oct 2012
Sally Doe
Aug 2012
Sally Doe
Sept 2012
Sally Doe
Oct 2012
Sally Doe
Nov 2012
Sally Doe
Dec 2012
Jimmy Doe
July 2012
Jimmy Doe
Aug 2012
Jimmy Doe
Sept 2012
From the resultset above I could create another resultset that would count\group on month and year to return the peak count for each month:
June 2012 - 1
July 2012 – 2
Aug 2012 - 3
Sept 2012 - 3
Oct 2012 - 2
Nov 2012 - 1
Dec 2012 - 1
The resultset that displays the peak count for each month would be used to create the line chart (month would be the X axis and the count would
be the y axis).
Does this sound like the best approach?
If so, any advice on how to create the resultset that lists each patient and each month they were assigned to the practice would be greatly appreciated.
I do not have permissions to create SPs or Functions within the database but I can create temp tables.
I know how to create the peak monthly count query (derived from the query that lists each patient and month assigned) as well as the line chart.
Any advice or help is greatly appreciated.Thanks for the replies. I reviewed them shortly after they were submitted but I'm also working on other projects at the same time (hence the delayed reply).
Building a time table and doing a cross join to my original resultset gave me the desired resultset of the months assigned between dates. What I can't figure out now is how to filter months I don't want.
Doing a cross join between my original resultset that had two dates:
08/27/2010
10/24/2011
and a calendar table that has 24 rows (each month for a two year period)
my new resultset looks like this:
I need to filter the rows in yellow as the months assigned for stage 3 that started on 8/27/2010 should stop when the patient was assigned to stage 4 on 10/24/2011.
You'll notice that Jan - Sept 2011 isn't listed for Stage 4 assigned on 10/24/2011 as I included a filter in the WHERE clause that states
the Months Assigned value must be greater than or equal to the date assigned value.
Any advice would be appreciated. -
How to restart single application server(ABAP Stack)without effecting users
Hi Experts,
I Want to restart one application server(ABAP Stack) in my clustered environment with out effecting endusers. I believe can be done it by transfering users request to other application servers. Please let me know the steps to perform this activity.
Cheers
DVHi,
Yes, you need to wait for the users to disconnect from the app server and remove the server from the logon groups.
You should also remove the batch processes with an operation mode switch.
Beware also if you have HTTP applications and you use a web dispatcehr for load balancing.
Regards,
Olivier -
SAP BW Bex 7.3 Queries not working with Enterprise Portal (EP) 7.3 ABAP Stack
Dear Portal Gurus,
we want to integrate SAP BW Bex Queries 7.3 into an Enterprise Portal 7.3 EP ABAP Stack only installation.
1) We have Done SSO between EP And BI System
2) System Object is Created
3) When we trying to create Iview of BEX 7.3 report, its executing that report on BI server, we don't have java stack on BI System
4) We have updated the required table in Bi system for executing the report on EP
5) RFC is OK, System Object Test is OK, Report is working independently from Business Explorer, but not working from EP
There no irj services available on BI system, as it is only ABAP stack.
Can anybody help us in achieving our requirement
Thanks in advance
Michael WeckerHi Michael,
To integrate portal with BI you need to perform BI Portal integration steps.
Refer to a document link below for guidance purpose.
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0a5216a-349c-2a10-9baf-9d4797349f6a?overridelayout=t…
Ensure that you have performed all these relevant steps.
Hope this helps.
Regards,
Deepak Kori -
Date range selection in abap code in infopackage
Hi!
I have a field called "OPEN_DATE".
When the infopackage is runned, I need the abap code to fint the current date, and from that, make a date range from the first day of current month to the last day of current month
Ex:
Current date = 12.12.2008
Abap code should extract 01.12.2008 - 31.12.2008
Thanks!Hi helge,
Data: l_idx like sy-tabix.
Data: date_low like sy-datum,
date_high like sy-datum.
Date_low = sy-datum.
date_low+6(2) = '01'.
CALL FUNCTION 'SLS_MISC_GET_LAST_DAY_OF_MONTH'
EXPORTING
DAY_IN = Date_low
IMPORTING
LAST_DAY_OF_MONTH = date_high
read table l_t_range with key
fieldname = 'OPEN_DATE'.
l_idx = sy-tabix.
Pass Range values to L_T_Range Table.
Move date_low to L_T_Range -Low.
Move date_high to L_T_Range -High.
L_T_Range -Sign = u2018Iu2019. *****(Here: I u2013 Include, E u2013 Exclude)
L_T_Range -Option = u2018BTu2019.****( Here: BT u2013 Between )
modify l_t_range index l_idx.
p_subrc = 0.
Regards,
Maybe you are looking for
-
F-47 park and post option OR F110 block option for payment requests
HI experts, current business scenario: F-47 payment request by AP users F110 payment run (including payment requests) by manager so between F-47 & F110 system doesnt trigger for payment approvals Business requirement: After F-47 system should trigge
-
Problem in the function module HAZMAT_PRI_DATA_GET
hi all , This is related to the shipment. we are trying to print a form with details of dangerous goods but function module HAZMAT_PRI_DATA_GET not returning values of the dangerous goods details when the MOT is 05 ie; air . The function module is a
-
Enabling Spotlight search for server clients?
I have a mac mini server running OSX Mavericks, and 6 client mac also running Mavericks. The server provides access to the main storage raid for our design dept, and all the designers need to be able to search for files on this server, but Spotlight
-
Transfer of music stored in my laptop to a CD
How do I transfer music stored in my laptop to a CD?
-
Need to buy Office 2010 License
My PC crashed and I bought a new one because a company could not repair the one that crashed. It was working fine until the problem started. A couple of days ago I had and epiphany that told me that maybe it was a RAM stick that went bad. Sure enough