SUM(Case how to use this structure to get average values over date range
I am using:
Oracle SQL Developer (3.0.04) Build MAin-04.34 Oracle Database 11g Enterprise Edition 11.2.0.1.0 - 64bit Production
How do I use the sum function with a case structure inside.
so I have data that looks like has an ID, date, and value. I am looking to get the 7 day average for the date range of 4/1/2013 thru 4/20/2013
with t as (
select 1 ID_Key,to_date('4/1/2013','mm-dd-yyyy') date_val, 10 Value_num from dual union all
select 1 ID_key,to_date('4/2/2013','mm-dd-yyyy'), 15 from dual union all
select 1 ID_key,to_date('4/3/2013','mm-dd-yyyy'), 20 from dual union all
select 1 ID_key,to_date('4/5/2013','mm-dd-yyyy'), 0 from dual union all
select 1 ID_key,to_date('4/8/2013','mm-dd-yyyy'), 12 from dual union all
select 1 ID_key,to_date('4/9/2013','mm-dd-yyyy'), 8 from dual union all
select 1 ID_key,to_date('4/10/2013','mm-dd-yyyy'), 6 from dual union all
select 1 ID_key,to_date('4/12/2013','mm-dd-yyyy'), 10 from dual union all
select 1 ID_key,to_date('4/13/2013','mm-dd-yyyy'), 0 from dual union all
select 1 ID_key,to_date('4/14/2013','mm-dd-yyyy'), 0 from dual union all
select 1 ID_key,to_date('4/15/2013','mm-dd-yyyy'), 10 from dual union all
select 1 ID_key,to_date('4/16/2013','mm-dd-yyyy'), 5 from dual union all
select 1 ID_key,to_date('4/17/2013','mm-dd-yyyy'), 2 from dual union all
select 1 ID_key,to_date('4/20/2013','mm-dd-yyyy'), 3 from dual union all
select 2 ID_key,to_date('4/3/2013','mm-dd-yyyy'), 12 from dual union all
select 2 ID_key,to_date('4/5/2013','mm-dd-yyyy'), 15 from dual union all
select 2 ID_key,to_date('4/6/2013','mm-dd-yyyy'), 5 from dual union all
select 2 ID_key,to_date('4/7/2013','mm-dd-yyyy'), 7 from dual union all
select 2 ID_key,to_date('4/9/2013','mm-dd-yyyy'), 10 from dual union all
select 2 ID_key,to_date('4/11/2013','mm-dd-yyyy'), 5 from dual union all
select 2 ID_key,to_date('4/12/2013','mm-dd-yyyy'), 0 from dual union all
select 2 ID_key,to_date('4/13/2013','mm-dd-yyyy'), 0 from dual union all
select 2 ID_key,to_date('4/15/2013','mm-dd-yyyy'), 6 from dual union all
select 2 ID_key,to_date('4/16/2013','mm-dd-yyyy'), 8 from dual union all
select 2 ID_key,to_date('4/17/2013','mm-dd-yyyy'), 0 from dual union all
select 2 ID_key,to_date('4/18/2013','mm-dd-yyyy'), 10 from dual union all
select 2 ID_key,to_date('4/19/2013','mm-dd-yyyy'), 5 from dual
)**Please let me know if the table does not load.
I would like to get the 7 day average as long as there is date for that row has enough previous dates, it not then it will return null.
the results should look like this
ID_Key date_val Value_num 7Day_Avg 7Day_Avg2
1 4/1/2013 10 null null
1 4/2/2013 15 null null
1 4/3/2013 20 null null
1 4/5/2013 0 null null
1 4/8/2013 12 6.71 11.75
1 4/9/2013 8 5.71 10.00
1 4/10/2013 6 3.71 6.50
1 4/12/2013 10 5.14 9.00
1 4/13/2013 0 5.14 7.20
1 4/14/2013 0 5.14 6.00
1 4/15/2013 10 4.86 5.67
1 4/16/2013 5 4.42 5.17
1 4/17/2013 2 3.85 4.50
1 4/20/2013 3 2.86 4.00
2 4/3/2013 12 null null
2 4/5/2013 15 null null
2 4/6/2013 5 null null
2 4/7/2013 7 5.57 9.75
2 4/9/2013 10 7.00 9.80
2 4/11/2013 5 6.00 8.40
2 4/12/2013 0 3.86 5.40
2 4/13/2013 0 3.14 4.40
2 4/15/2013 6 3.00 4.20
2 4/16/2013 8 2.71 3.80
2 4/17/2013 0 2.71 3.17
2 4/18/2013 10 3.43 4.00
2 4/19/2013 5 4.14 4.83As you may notice, there are gaps in the dates, so the value are then treated as zeros for the 7Day_Avg and then ignored for teh 7Day_Avg2 (not counted as number of days averaged do to no valu_num row)
I was trying something like this to start, but getting error "missing keyword"
select
t.*/,
sum(
case
when date_val between :day2 - 6 and :day2
then value_num between date_val - 6 and date_val
else null
end
as 7Day_avg
form tShould I have the case structure outside the sum function?
Any thoughts??
Edited by: 1004407 on Jun 7, 2013 11:06 AM
Hi,
If you want the average of the last 7 days, including the current day, then then RANGE should be 6 PRECEDING, not 7.
Try this:
WITH got_min_date_val AS
SELECT id_key, date_val, value_num
, MIN (date_val) OVER () AS min_date_val
FROM t
WHERE date_val BETWEEN TO_DATE ('04-01-2013', 'mm-dd-yyyy')
AND TO_DATE ('04-20-2013', 'mm-dd-yyyy')
SELECT id_key, date_val, value_num
, CASE
WHEN date_val >= min_date_val + 6
THEN SUM (value_num) OVER ( PARTITION BY id_key
ORDER BY date_val
RANGE 6 PRECEDING
/ 7
END AS avg_7_day
, CASE
WHEN date_val >= min_date_val + 6
THEN AVG (value_num) OVER ( PARTITION BY id_key
ORDER BY date_val
RANGE 6 PRECEDING
END AS avg_7_day_2
FROM got_min_date_val
ORDER BY id_key
, date_val
Output:
ID_KEY DATE_VAL VALUE_NUM AVG_7_DAY AVG_7_DAY_2
1 01-APR-13 10
1 02-APR-13 15
1 03-APR-13 20
1 05-APR-13 0
1 08-APR-13 12 6.71 11.75
1 09-APR-13 8 5.71 10.00
1 10-APR-13 6 3.71 6.50
1 12-APR-13 10 5.14 9.00
1 13-APR-13 0 5.14 7.20
1 14-APR-13 0 5.14 6.00
1 15-APR-13 10 4.86 5.67
1 16-APR-13 5 4.43 5.17
1 17-APR-13 2 3.86 4.50
1 20-APR-13 3 2.86 4.00
2 03-APR-13 12
2 05-APR-13 15
2 06-APR-13 5
2 07-APR-13 7 5.57 9.75
2 09-APR-13 10 7.00 9.80
2 11-APR-13 5 6.00 8.40
2 12-APR-13 0 3.86 5.40
2 13-APR-13 0 3.14 4.40
2 15-APR-13 6 3.00 4.20
2 16-APR-13 8 2.71 3.80
2 17-APR-13 0 2.71 3.17
2 18-APR-13 10 3.43 4.00
2 19-APR-13 5 4.14 4.83
Message was edited by: FrankKulash
Sorry; I meant to reply to OP, not to Greg
Similar Messages
-
Hello
How to make labview program to get average value of 200 reading from multimeter (I using using loop) to read voltage from mulmeter but I like to get average value of all of 200 reding how can I do that?
Thanks
Wee
Solved!
Go to Solution.Another idea with less programming - take advantage of the "free" array that comes with a Chart - i.e. the History Data.
1) Wire your DMM data to a Chart. (You can set the chart to invisible if you don't plan on using it in the GUI).
2) Set the Chart History Length to 200 (right click on the chart, click on Chart History Length...)
3) On the block diagram, use the History Data Property Node, wire it to Mean.vi, and you're done.
Easiest running average ever.
Message Edited by Broken Arrow on 04-07-2010 11:36 AM
Richard
Attachments:
EasyAvg.jpg 8 KB -
i've recently reformatted my computer and i've taken the old firefox folder from before the reformat and put it on the new one but i dont know how to use it to restore my old settings
by the way im not using a different operating system im running windows 7 like i was previouslyHere's my suggested profile resurrection procedure using the old profile folder that's inside the Old Firefox Data folder.
'''Overview'''
These are the steps:
# Create a new Firefox profile
# Remove everything from that new profile folder
# Copy in everything from the old profile folder
'''Create a new Firefox profile (Windows)'''
Exit Firefox and start up in the Profile Manager using Start > search box (or Run):
firefox.exe -P
''Note: Any time you want to switch profiles, exit Firefox and return to this dialog.''
Click the Create Profile button and skip the option to change the folder location. Then select that new profile in the dialog and start Firefox.
'''Open the New Profile folder in Windows Explorer'''
Firefox in the new profile should look like a factory fresh installation. Open the Troubleshooting Information page using either:
* "3-bar" menu button > "?" button > Troubleshooting Information
* Help menu > Troubleshooting Information
In the first table, click the "Show Folder" button. Firefox will launch your brand new profile folder in Windows Explorer.
Leaving this folder open, switch back to Firefox, and Exit. This will leave that profile folder open in Windows Explorer.
'''Copy Old Data in Place of New'''
In that new profile folder, select all the contents and delete.
Leaving that window open, open or switch over to your Old Firefox Data folder. Drill down into your old profile folder. At this level you should see a folder named bookmarkbackups among other things.
Select everything (Ctrl+a) and Copy (either right-click > Copy or Ctrl+c).
Switch to the empty new profile folder in other window and Paste (either right-click > Paste or Ctrl+v). This may take a minute since some of the files are large.
'''Start Firefox'''
Firefox should start up in that new profile with the resurrected old profile data. Success? -
How to use SQL to display Datethat falls between the date range
Hi,
I'm figuring out how do i use SQL to select data
that falls between the date range stated
(for eg. 19/02/1955 to 19/02/2003)
I've tried :
sql="Select * From StudentRecords WHERE DOB BETWEEN #" jTextField21.getText() "#" +" And " +"#" +jTextField22.getText;
Using BETWEEN statment , but Between Statement isn't doing what i want..
even those out of range are displayed... any ideas how??
Thank yOU in advance!oracle:
sql = "Select * From StudentRecords WHERE DOB between TO_DATE('07/04/2003','dd/mm/yyyy') and TO_DATE('08/04/2003','dd/mm/yyyy')"; -
In this report i have marked one line..if this width < 30,i need to multiply by a number 0.3 and if the width >=30,it multiplies by 0.37...how to use this logic here..??? anyone can help??
Declare @FromDate Datetime
Declare @ToDate Datetime
Declare @SCCode nvarchar(30)
select @FromDate = min(S0.Docdate) from dbo.OINM S0 where S0.Docdate >='[%0]'
select @ToDate = max(S1.Docdate) from dbo.OINM s1 where S1.Docdate <='[%1]'
--Rcpt from PRDN (Condition checked for Return component exclusion also)
SELECT T2.U_STKNO as 'PRN No', T2.PostDate as Date,
T2.DocNum AS 'WorkOrderNo',
b.DocNum as 'Issue Doc No',
ISNULL(d.DocNum,'') as 'Receipt Doc No',
b.U_IssPSCName as 'SubContractor Name',
T2.ItemCode as 'FG Item Code',
T3.ItemName as 'FG Item Name',
T2.PlannedQty as 'FG Planned Qty',
T2.U_OD as 'OD',
T2.U_ID as 'ID',
T2.U_OD/25.4 as 'Inches',
(T2.U_OD-T2.U_ID)/2 as 'Width',
0 as 'FG Pending Qty',
0 as 'FG Receipt Qty',
'' as 'Issue Item Code',
'' as 'Issue Item Name',
Sum(ISNULL(a.Quantity,0)) as 'Total Issue Quantity',
0 as 'Issue Item - Return Quantity',
'' as 'Return Doc No',
SUM(ISNULL(a.U_IssPTotWeight,0)) as 'Total Issue Weight',
SUM(ISNULL(c.U_Quantity,0)) as 'Total Receipt Weight'
from OWOR T2 inner join WOR1 T4 on T2.DocEntry = T4.DocEntry
INNER JOIN OITM T1 ON T1.ItemCode = T4.ItemCode inner join OITM T3 on T3.ItemCode = T2.ItemCode
LEFT join IGE1 a on T2.DocNum = a.BaseRef Inner JOIN OIGE b on a.DocEntry = b.DocEntry and T4.ItemCode not in (a.ItemCode)
LEFT JOIN IGN1 c ON c.BaseRef = T2.DocNum and T2.ItemCode = c.ItemCode INNER JOIN OIGN d on c.DocEntry = d.DocEntry
WHERE b.Series in('101','20') and T2.PostDate >= @FromDate and T2.PostDate <= @ToDate and b.U_IssPSCName = '[%2]'
GROUP BY T2.U_STKNO, T2.PostDate, T2.DocNum, b.DocNum, d.DocNum, b.U_IssPSCName,T2.ItemCode,T3.ItemName,T2.PlannedQty,T2.U_OD,T2.U_ID, T2.U_OD/25.4,(T2.U_OD-T2.U_ID)/2
UNION ALL
SELECT T2.U_STKNO as 'PRN No', T2.PostDate as Date,
T2.DocNum AS 'WorkOrderNo',
b.DocNum as 'Issue Doc No',
ISNULL(d.DocNum,'') as 'Receipt Doc No',
b.U_IssPSCName as 'SubContractor Name',
T2.ItemCode as 'Item Code',
T3.ItemName as 'Item Name',
T2.PlannedQty as 'Planned Qty',
T2.U_OD as 'OD',
T2.U_ID as 'ID',
T2.U_OD/25.4 as 'Inches',
(T2.U_OD-T2.U_ID)/2 as 'Width',
(Select (T2.PlannedQty - (Select ISNULL(sum(a1.Quantity),0) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum and a1.ItemCode in (b1.itemcode) where b1.DocNum = t2.DocNum))) as 'Pending Qty',
(Select ISNULL(sum(a1.Quantity),0) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum and a1.ItemCode in (b1.itemcode) where b1.DocNum = t2.DocNum) as 'Receipt Qty',
a.ItemCode as 'Issued Item Code',
a.Dscription as 'Issued Item Name',
Sum(ISNULL(a.Quantity,0)) as 'Total Issue Quantity',
(Select (Select ISNULL(sum(a1.Quantity),0) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum inner join WOR1 b2 on b1.DocEntry = b2.DocEntry where b1.DocNum = t2.DocNum and a1.ItemCode in (b2.itemcode))) as 'Issue Item - Return Quantity',
(ISNULL((Select (Select a2.DocNum from OIGN a2 where a2.DocEntry = a1.DocEntry) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum inner join WOR1 b2 on b1.DocEntry = b2.DocEntry where b1.DocNum = t2.DocNum and a1.ItemCode in (b2.itemcode)),'')) as 'Return Doc No',
SUM(ISNULL(a.U_IssPTotWeight,0)) as 'Total Issue Weight',
SUM(ISNULL(c.U_Quantity,0)) as 'Total Receipt Weight'
from OWOR T2 inner join WOR1 T4 on T2.DocEntry = T4.DocEntry
INNER JOIN OITM T1 ON T1.ItemCode = T4.ItemCode inner join OITM T3 on T3.ItemCode = T2.ItemCode
LEFT join IGE1 a on T2.DocNum = a.BaseRef Inner JOIN OIGE b on a.DocEntry = b.DocEntry and T4.ItemCode in (a.ItemCode)
LEFT JOIN IGN1 c ON c.BaseRef = T2.DocNum and T2.ItemCode = c.ItemCode LEFT JOIN OIGN d on c.DocEntry = d.DocEntry
WHERE b.Series in('101','20') and T2.PostDate >= @FromDate and T2.PostDate <= @ToDate and b.U_IssPSCName = '[%2]'
GROUP BY T2.U_STKNO, T2.PostDate, T2.DocNum, b.DocNum, d.DocNum, b.U_IssPSCName,T2.ItemCode,T3.ItemName,T2.PlannedQty,T2.U_OD,T2.U_ID,T2.U_OD/25.4,(T2.U_OD-T2.U_ID)/2,a.ItemCode,a.Dscription order by T2.DocNum descHi,
Try this:
Declare @FromDate Datetime
Declare @ToDate Datetime
Declare @SCCode nvarchar(30)
select @FromDate = min(S0.Docdate) from dbo.OINM S0 where S0.Docdate >='[%0]'
select @ToDate = max(S1.Docdate) from dbo.OINM s1 where S1.Docdate <='[%1]'
--Rcpt from PRDN (Condition checked for Return component exclusion also)
SELECT T2.U_STKNO as 'PRN No', T2.PostDate as Date,
T2.DocNum AS 'WorkOrderNo',
b.DocNum as 'Issue Doc No',
ISNULL(d.DocNum,'') as 'Receipt Doc No',
b.U_IssPSCName as 'SubContractor Name',
T2.ItemCode as 'FG Item Code',T3.ItemName as 'FG Item Name',T2.PlannedQty as 'FG Planned Qty',T2.U_OD as 'OD',T2.U_ID as 'ID',T2.U_OD/25.4 as 'Inches',(T2.U_OD-T2.U_ID)/2 as 'Width',case when ((T2.U_OD-T2.U_ID)/2) <30 then ((T2.U_OD-T2.U_ID)/2) *0.3 end, 0 as 'FG Pending Qty',0 as 'FG Receipt Qty','' as 'Issue Item Code','' as 'Issue Item Name',Sum(ISNULL(a.Quantity,0)) as 'Total Issue Quantity',0 as 'Issue Item - Return Quantity','' as 'Return Doc No',SUM(ISNULL(a.U_IssPTotWeight,0)) as 'Total Issue Weight',SUM(ISNULL(c.U_Quantity,0)) as 'Total Receipt Weight'from OWOR T2 inner join WOR1 T4 on T2.DocEntry = T4.DocEntryINNER JOIN OITM T1 ON T1.ItemCode = T4.ItemCode inner join OITM T3 on T3.ItemCode = T2.ItemCodeLEFT join IGE1 a on T2.DocNum = a.BaseRef Inner JOIN OIGE b on a.DocEntry = b.DocEntry and T4.ItemCode not in (a.ItemCode)LEFT JOIN IGN1 c ON c.BaseRef = T2.DocNum and T2.ItemCode = c.ItemCode INNER JOIN OIGN d on c.DocEntry = d.DocEntryWHERE b.Series in('101','20') and T2.PostDate >= @FromDate and T2.PostDate <= @ToDate and b.U_IssPSCName = '[%2]'GROUP BY T2.U_STKNO, T2.PostDate, T2.DocNum, b.DocNum, d.DocNum, b.U_IssPSCName,T2.ItemCode,T3.ItemName,T2.PlannedQty,T2.U_OD,T2.U_ID, T2.U_OD/25.4,(T2.U_OD-T2.U_ID)/2UNION ALL SELECT T2.U_STKNO as 'PRN No', T2.PostDate as Date,T2.DocNum AS 'WorkOrderNo',
b.DocNum as 'Issue Doc No',
ISNULL(d.DocNum,'') as 'Receipt Doc No',
b.U_IssPSCName as 'SubContractor Name',
T2.ItemCode as 'Item Code',T3.ItemName as 'Item Name',T2.PlannedQty as 'Planned Qty',T2.U_OD as 'OD',T2.U_ID as 'ID',T2.U_OD/25.4 as 'Inches',(T2.U_OD-T2.U_ID)/2 as 'Width',case when ((T2.U_OD-T2.U_ID)/2) >=30 then ((T2.U_OD-T2.U_ID)/2) *0.37 end, (Select (T2.PlannedQty - (Select ISNULL(sum(a1.Quantity),0) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum and a1.ItemCode in (b1.itemcode) where b1.DocNum = t2.DocNum))) as 'Pending Qty',(Select ISNULL(sum(a1.Quantity),0) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum and a1.ItemCode in (b1.itemcode) where b1.DocNum = t2.DocNum) as 'Receipt Qty',
a.ItemCode as 'Issued Item Code',
a.Dscription as 'Issued Item Name',
Sum(ISNULL(a.Quantity,0)) as 'Total Issue Quantity',
(Select (Select ISNULL(sum(a1.Quantity),0) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum inner join WOR1 b2 on b1.DocEntry = b2.DocEntry
where b1.DocNum = t2.DocNum and a1.ItemCode in (b2.itemcode))) as 'Issue Item - Return Quantity',
(ISNULL((Select (Select a2.DocNum from OIGN a2 where a2.DocEntry = a1.DocEntry) from IGN1 a1 inner join OWOR b1 on a1.BaseRef = b1.DocNum inner join WOR1 b2 on b1.DocEntry = b2.DocEntry where b1.DocNum = t2.DocNum and a1.ItemCode in (b2.itemcode)),'')) as 'Return Doc No',
SUM(ISNULL(a.U_IssPTotWeight,0)) as 'Total Issue Weight',
SUM(ISNULL(c.U_Quantity,0)) as 'Total Receipt Weight'
from OWOR T2 inner join WOR1 T4 on T2.DocEntry = T4.DocEntry
INNER JOIN OITM T1 ON T1.ItemCode = T4.ItemCode inner join OITM T3 on T3.ItemCode = T2.ItemCode
LEFT join IGE1 a on T2.DocNum = a.BaseRef Inner JOIN OIGE b on a.DocEntry = b.DocEntry and T4.ItemCode in (a.ItemCode)
LEFT JOIN IGN1 c ON c.BaseRef = T2.DocNum and T2.ItemCode = c.ItemCode LEFT JOIN OIGN d on c.DocEntry = d.DocEntry
WHERE b.Series in('101','20') and T2.PostDate >= @FromDate and T2.PostDate <= @ToDate and b.U_IssPSCName = '[%2]'
GROUP BY T2.U_STKNO, T2.PostDate, T2.DocNum, b.DocNum, d.DocNum, b.U_IssPSCName,T2.ItemCode,T3.ItemName,
T2.PlannedQty,T2.U_OD,
T2.U_ID,T2.U_OD/25.4,(T2.U_OD-T2.U_ID)/2,a.ItemCode,a.Dscription
order by T2.DocNum desc
Thanks & Regards,
Nagarajan -
How to use this function in crm5.2 - /CEM/ENT_IMPORT_DATAFROMEXCEL
i am having a problem regarding how to use this function to import values from an excel sheet.
in call funtion what to specify at place of ct_ent_action = ?
CALL FUNCTION '/CEM/ENT_IMPORT_DATAFROMEXCEL'
CHANGING
CT_ENT_ACTION =
EXCEPTIONS
FILE_ERROR = 1
IMPORT_ERROR = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.Hi
The use of Standard Parner functions are as follows:
1. Ordering Address (OA): The PO will be sent this vendor and not the main vendor.
2. Goods Supplier (WL): In case of return deliveries, Goods will be returned to thsi vendor's address
3. Invoicing party (RS): The payment will be made to this vendor.
Hope this clarifies.
Thansk -
How to use this function call function 'REUSE_ALV_COMMENTARY_WRITE' in alv
hi all
thanks in advance
how to use this function in alv programming
call function 'REUSE_ALV_COMMENTARY_WRITE'
why use and what purpose use this function plz tell me details
plz guide me
thanksHi
see this exmaple code where i had inserted a LOGO by useing this FM
*& Report ZTEST_ALV_LOGO
REPORT ztest_alv_logo.
TYPE-POOLS : slis.
*ALV Formatting tables /structures
DATA: gt_fieldcat TYPE slis_t_fieldcat_alv.
DATA: gt_events TYPE slis_t_event.
DATA: gs_layout TYPE slis_layout_alv.
DATA: gt_page TYPE slis_t_listheader.
DATA: gs_page TYPE slis_listheader.
DATA: v_repid LIKE sy-repid.
*ALV Formatting work area
DATA: w_fieldcat TYPE slis_fieldcat_alv.
DATA: w_events TYPE slis_alv_event.
DATA: gt_bsid TYPE TABLE OF bsid WITH HEADER LINE.
INITIALIZATION.
PERFORM build_events.
PERFORM build_page_header.
START-OF-SELECTION.
*perform build_comment. "top_of_page - in initialization at present
SELECT * FROM bsid INTO TABLE gt_bsid UP TO 10 ROWS.
*perform populate_for_fm using '1' '3' 'BUKRS' '8' 'GT_BSID' 'Whee'.
*USING = Row, Column, Field name, display length, table name, heading
*OR
PERFORM build_fieldcat.
gs_layout-zebra = 'X'.
*top of page event does not work without I_callback_program
v_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = v_repid
i_structure_name = 'BSID'
i_background_id = 'ALV_BACKGROUND'
i_grid_title = 'This is the grid title'
I_GRID_SETTINGS =
is_layout = gs_layout
it_fieldcat = gt_fieldcat[]
it_events = gt_events[]
TABLES
t_outtab = gt_bsid.
Form..............: populate_for_fm
Description.......: Populates fields for function module used in ALV
FORM populate_for_fm USING p_row
p_col
p_fieldname
p_len
p_table
p_desc.
w_fieldcat-row_pos = p_row. "Row Position
w_fieldcat-col_pos = p_col. "Column Position
w_fieldcat-fieldname = p_fieldname. "Field name
w_fieldcat-outputlen = p_len. "Column Lenth
w_fieldcat-tabname = p_table. "Table name
w_fieldcat-reptext_ddic = p_desc. "Field Description
w_fieldcat-input = '1'.
APPEND w_fieldcat TO gt_fieldcat.
CLEAR w_fieldcat.
ENDFORM. " populate_for_fm
*& Form build_events
FORM build_events.
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = gt_events.
READ TABLE gt_events
WITH KEY name = slis_ev_user_command
INTO ls_event.
IF sy-subrc = 0.
MOVE slis_ev_user_command TO ls_event-form.
APPEND ls_event TO gt_events.
ENDIF.
READ TABLE gt_events
WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE slis_ev_top_of_page TO ls_event-form.
APPEND ls_event TO gt_events.
ENDIF.
ENDFORM. " build_events
*& Form USER_COMMAND
When user command is called it uses 2 parameters. The itab
passed to the ALV is in whatever order it currently is on screen.
Therefore, you can read table itab index rs_selfield-tabindex to get
all data from the table. You can also check r_ucomm and code
accordingly.
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
READ TABLE gt_bsid INDEX rs_selfield-tabindex.
error checking etc.
SET PARAMETER ID 'KUN' FIELD gt_bsid-kunnr.
CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
ENDFORM. "user_command
*& Form top_of_page
Your own company logo can go here if it has been saved (OAOR)
If the logo is larger than the size of the headings in gt_page,
the window will not show full logo and will have a scroll bar. Thus,
it is a good idea to have a standard ALV header if you are going to
use logos in your top of page.
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = gt_page
i_logo = 'ENJOYSAP_LOGO'.
ENDFORM. "top_of_page
*& Form build_fieldcat
*Many and varied fields are available here. Have a look at documentation
*for FM REUSE_ALV_LIST_DISPLAY and REUSE_ALV_FIELDCATALOG_MERGE
FORM build_fieldcat.
w_fieldcat-fieldname = 'BUDAT'.
w_fieldcat-seltext_m = 'Dte pst'.
w_fieldcat-ddictxt(1) = 'M'.
w_fieldcat-edit = 'x'.
Can change the position of fields if you do not want them in order
of the DDIC or itab
w_fieldcat-row_pos = '1'.
w_fieldcat-col_pos = '10'.
APPEND w_fieldcat TO gt_fieldcat.
CLEAR w_fieldcat.
ENDFORM. " build_fieldcat
*& Form build_page_header
gt_page is used in top of page (ALV subroutine - NOT event)
*H = Header, S = Selection, A = Action
FORM build_page_header.
For Headers, Key is not printed and is irrelevant. Will not cause
a syntax error, but is not used.
gs_page-typ = 'H'.
gs_page-info = 'Header 1'.
APPEND gs_page TO gt_page.
gs_page-typ = 'H'.
gs_page-info = 'Header 2'.
APPEND gs_page TO gt_page.
For Selections, the Key is printed (bold). It can be anything up to 20
bytes. It gets printed in order of code here, not by key value.
gs_page-typ = 'S'.
gs_page-key = 'And the winner is:'.
gs_page-info = 'Selection 1'.
APPEND gs_page TO gt_page.
gs_page-typ = 'S'.
gs_page-key = 'Runner up:'.
gs_page-info = 'Selection 2'.
APPEND gs_page TO gt_page.
For Action, Key is also irrelevant.
gs_page-typ = 'A'.
gs_page-info = 'Action goes here'.
APPEND gs_page TO gt_page.
ENDFORM. " build_page_header -
How to use this HR_GET_PAYROLL_RESULTS in am enhancement spot?
hi,
can you explain me how to use this function modulde HR_GET_PAYROLL_RESULTS.. i have tried this by giving the valid PERNR AND YEAR. but still i am getting no table records and some times as wrong table structure. can you help me out in this regard. i have to use this FM in am enhancement spot.
thanks in advance.
swathi.Hi,
Depending of the country for which you want the payroll result you have to define result table as follows:
data: it_result type payXX_result. "where XX is an abreviation of the country you get pay result for
"i.e. US, GB, NL, DE etc
"for some countries there is no specific cluster table, therefore you must delcare it as
data: it_result type pay99_result. "this indicates that results are international
now you simply call the FM:
CALL FUNCTION 'HR_GET_PAYROLL_RESULTS'
EXPORTING
pernr = here your pernr
pabrj = year you want to report
tables
result_tab = it_result.
It will work:)
Marcin -
How to use event structure of event data nodes event filter nodes in programming
hi,
I need manual of how to use 'event structure' events of 'event data nodes' and 'event data filters'...please help me....
Regards
RavindranathI'm not really sure what you are looking for here. Did you do a search in the LabVIEW help for Event Structure?
The Event Data Node just returns information about the event, like control data, control reference, what caused the event, etc.
The Event Data Filters are just used in Filter Events. This allows you to discard an event or change the data that the event will recieve.
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines -
the query below , i am using in valueset :
select * from AR_LOCATION_VALUES
Where ar_location_values.location_segment_qualifier =
'COUNTRY' and ar_location_values.location_structure_id in ( select location_structure_id from ar_system_parameters )
how to use this query to set in R12?
Thankshi
i am using the following query in 11i and i want to use the same in R12 :
SELECT ar_location_values.location_segment_description,ar_location_values.location_segment_value,location_segment_id
FROM AR_LOCATION_VALUES
WHERE ar_location_values.location_segment_qualifier = 'COUNTRY'
AND ar_location_values.location_structure_id IN
(SELECT location_structure_id FROM ar_system_parameters)
note: the table ar_location_values is obsolette in R12 so what is the replacement table in R12 for this? -
How to use the structure in the EXIT_SAPMM06E_013 function module
Hello Experts,
Please guide me how to use the structure defined in function modules under table tab in the driver program for smart form to fetch the data. Please post some sample code if available.
Best Regards,
Sandesh.SreyamshCan you please elaborate little bit more what is the actual requirement?
-
Emicsoft HD Video Converter is the high definition video converter software develeped to convert HD video files with high quality. With this HD video converter you can also easily convert between HD video formats, convert standard definition videos to HD videos, or convert HD videos to SD (Standard-Definition) videos. The HD video converter supports most of HD video formats: MTS/M2TS, TS, HD MKV, HD AVI, HD MP4, HD WMV, HD MOV, HD ASF.
How to use this HD Converter?
1. Launch the software and click "Add File" button to import files into the software. You can watch them on the preview screen.
2. Edit the added movie by clicking "Effect" "Trim" or "Crop" button which can help you create unique videos easily.
3. Select output in Profile option. Here all popular formats and mobile devices are supported. Then make sure the destination folder.
4. Click "Start" button and the program will automatically start conversion.
Emicsoft AVCHD Converter can convert AVCHD video to all popular video formats, and convert other videos to AVCHD video. So many formats are supported such as HD video (TS, MTS, M2TS, HD MPEG-4, HD MOV, HD AVI, HD VOB, HD ASF, HD WMV, etc.), general video (AVI, MP4, WMV, MPEG-1, MPEG-2, VOB, MOV, 3GP, FLV, SWF, etc.) and audio track (MP3, WMA, WAV, AAC, AC3, OGG, etc.).
Emicsoft MOD Converter is a powerful MOD video converter which can MOD to AVI, MOD to MPG, MOD to MPEG, MOD to WMV and to other video format, such as FLV, SWF, ASF, DivX, XviD, MP4, VCD, SVCD, DVD-Video, VOB and so on. Batch conversion supported, so you can add several .MOD files one time.
More softwares may help you:
Emicsoft Video Converter
Emicsoft FLV Converter
Emicsoft MTS ConverterThis is not a simple issue. You can set up a network, and set up sharing on the Mini, so that other computers on the same network can read and write to the external hard drive connected to the Mini.
To do that you have to get both computers on the network first, then set up the external hard drive so others can read on and write to it.
Is that what you want to do? If yes, and yu need help with this, please post back.
If you want to store apps on the external, and run them from a networked Mac, that is a whole other issue. To do that you need to set up the Mini to be a network server:
https://www.apple.com/ca/mac-mini/server/
Please post back, because I'm not sure I'm answering your questions. -
How to use "Reference Structure" setting in analysis grid item
Hello expert,
in Bex analyzer, how to use "Reference Structure" setting in analysis grid item by example?
Many thanks,The variable needs assigned a value, that's why you're getting prompted. When you execute the statement, it's not executing the variable and exec lines.
Having script output available in a grid would be an enhancement request. -
I'm not sure how to use this site....but here goes, I have a samsung galaxy and it's fully charged but it won't turn on, can someone give me some solutions I can use to fix this problem???
Try this website. Yes its sprint but it might help you. http://support.sprint.com/support/article/Troubleshoot_issues_related_to_your_Sa msung_Galaxy_S_II_not_turning_on_completely/WTroubleshootingGuide_542_GKB51165-T rend?INTNAV=SU:DP:OV:TSIS:SamsungGalaxySIi-AsYouGo:TroubleshootIssuesRelatedToYo urSamsungG
-
How to use This webservice in PHP ?
Hello.
I'm trying to use this webservice in PHP but there isn't a documentation or something that can help me.
I have this function, and she returns to me a sessionID :
function wslogin() {
global $crmdomain;
$url = $crmdomain . "/Services/Integration?command=login";
$page = "/Services/Integration?command=login";
$headers = array(
"GET ".$page." HTTP/1.0",
"UserName: *****",
"Password: *****",
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HEADER, true);
$data = curl_exec($ch);
if (!curl_errno($ch)) {
// Show me the result
$sessionid = substr($data,(strpos($data,"Set-Cookie:")+23),(strpos($data,";")-strpos($data,"Set-Cookie:")-23));
curl_close($ch);
return $sessionid;
Now, i want to retrieve for example an user... i need to get an user, set an user (insert or update), check if a user exist or not...
I have test this :
function getContactInfo ($contactid,$sessionid) {
global $crmdomain;
$serverpath = $crmdomain . "/Services/Integration;jsessionid=$sessionid";
$namespace= "urn:crmondemand/ws/contact/10/2004";
$soapaction = "document/urn:crmondemand/ws/contact/10/2004:ContactQueryPage";
$param = "<ListOfContact>
<Contact>
<IntegrationId>='$contactid'</IntegrationId>
<MrMrs/>
<ContactFirstName/>
<ContactLastName/>
<JobTitle/>
<Department/>
<AccountName/>
<AccountId/>
<PrimaryAddress/>
<PrimaryCity/>
<PrimaryZipCode/>
<PrimaryCounty/>
<PrimaryCountry/>
<AlternateAddress1/>
<AlternateAddress2/>
<AlternateAddress3/>
<AlternateCity/>
<AlternateZipCode/>
<AlternateCounty/>
<AlternateCountry/>
<ContactEmail/>
<WorkPhone/>
<WorkFax/>
<CellularPhone/>
</Contact>
</ListOfContact>
$method = "ContactWS_ContactQueryPage_Input";
$response = getwsresponse($serverpath,$namespace,$soapaction,$method,$param,$debug);
return $response;
function getwsresponse($serverpath,$namespace,$soapaction,$method,$param,$headers=""){
require_once('nusoap-0.9.5/lib/nusoap.php');
$client = new nusoap_client($serverpath, array('trace' => 1));
if($headers != ""){
$client->setHeaders("$headers");
$response = $client->call($method,$param,$namespace,$soapaction);
return $response;
But when i check : var_dump(getContactInfo("Integrationd",wslogin())); i have always false...
I have no idea how to use this webservice. Can you help me ?
Thanks !
Edited by: 990614 on 27 févr. 2013 00:29Perhaps a shorter example would be more appropriate to ask about.
Use bbcode code tag http://www.phpbb.com/phpBB/faq.php?mode=bbcode#5 to enclose code.
-- cj
Maybe you are looking for
-
How can I control the javascript tolerance of missing html element tags in FF 4.0?
I have a javascript routine that tries to get a form hidden input value using getElementById(id).value. The line of html code is: <input id='id' type='hidden' value='value' Note the missing closing tag ">". The line is terminated by a crlf. This code
-
Can I use the E2500 to extened my range to a wireless signal across the street ?
What I have is a wireless internet signal that my neighbor has agreed to share with me, as I am currently not happy with the Hughsnet Sattelite ISP service I have. My connection right now is connected to the neighbors wireless 2.4Ghz wireless setup,
-
Hi, I have to display all the records from a custom table in a page. Please Help. Regards, fsl
-
Edited iMovie Project has disappeared
I spent hours editing an iMovie project last night and now the project is no where to be found. The project file is on one of the hard drives of my Mac Pro but the event is on an external hard drive (ejected properly after iMovie was closed properly)
-
Imovie wont update saying that i need a different email but it is the right one?
i have imovie 9.0.4 but when i try to update it, it says... sign in to another account where you purchased it but i did on that account. it will not update plz plz plz help!!!