Contract Start and End Dates in Sales Order
Hi
I have a situation where a service item is bundled with a deliverable item. The order is as follows
Line Item Mat Qty Higher Level Item
10 Item No.1 (Physical Item) 1
20 Item No.2 (Service Item) 1 10
For the deliverable item 10 , Revenue is recognized immediately. For the Service item no.20 , revenue needs to be recognized over a period of 1 Year (It is a 1 year service contract).
The whole order is created via BAPI from an external 3rd party order capture system.
In order to do revenue recognition properly for service items , SAP I believe has 2 options
1. Based on Billing plan dates
2. Based on contract start dates
Since order with both the line items need to produce 1 invoice, I cannot use billing plan . The only other option is to use contract start and end dates. I have enabled contract data at the sales order level. So when I enter the contract start and end dates manually at the line item level and set the item category to recognize revenue based on contract start and end dates based on time-based revenue recognition it is working fine.
But I need a way to automate the population of contract start and end dates at the line item level. My ABAP guy is not able to find a user exit that can change the XVEDA or any VEDA structure in any of the user exits.
I guess the SAP SD gurus out there would have definitely dealt with a situation of product bundling (Service and non-service items in the same sales order with one billing document , but seperate revenue recognition for service and non-service items)
Please help.
Thnx
Siva
Hi Siva,
Kindly let me know what criteria you want to give for automatic population of start date of contract...
Standard SAP comes with a few baseline dates for contract start date and we can control this from customization itself.
01 Today's date
02 Contract start date
04 Acceptance date
05 Installation date
06 Date contract signed
07 Billing date/Invoice date
08 CntrctStDate+contract duration
09 Contract end date
If you have some criteria which is not covered here, then let me know and i will try to provide some help then.
Thanks
Kapil Sharma
Similar Messages
-
Update Contract Start and End dates via BAPI_SALESORDER_CREATEFROMDAT2
Hi Experts.
We are successfully using BAPI_SALESORDER_CREATEFROMDAT2 to create sales order.
Only problem is that the contract start and end date do not get updated.
We are passing that in ORDER_HEADER_in-CT_VALID_F and ORDER_HEADER_IN-CT_VALID_T.
After debugging, I found that there is one more table SALES_CONTRACT_IN in SD_SALESDOCUMENT_CREATE. Updating the values in that table works.
But the problem is this table is not available in BAPI_SALESORDER_CREATEFROMDAT2. How to update Contract start and end dates from this FM ?
I could not find anything in the search of this forums. So I guess this is not an issue and I am doing something wrong. Can someone suggest to me please?
Thanks in adv.
AishiAre you creating a contract or a sales order?
-
BT Broadband Contract Start and End Date
Where can I find my contract start and end date online ?
conrad wrote:
You can, by starting a new order for BB and entering phone no + post code - no need for email address - you then go to choose a package page which shows your current package details at the top of the page
Obviously you don't need to go any further than that page
Conrad, thank you for your suggestion. I gave your suggestion a try but initially got a technical error and then appeared to be getting closer and closer to completing an order without the required information coming up so I chickened out. This also was fraught with difficulty as the cancel button seemed ineffective.
I think I may have to use imjolly suggestions. -
SAP CRM Tables and Fields for Contract start and End dates
Hi Experts,
Please Provide me SAP CRM Tables and Field names for the below.
SAP CRM Contracts start date and End date
SAP CRM Conditions(PROO, K007 etc....) records start and End Date.
Thanks and Regards,
Tejacorrection
10 Replies Latest reply: 24 May, 2013 8:38 AM by nishant Vasudev
Tweet
SAP CRM Tables and Fields for Contract start and End dates
This question has been Answered.
Teja Dhar 12 Oct, 2009 8:03 PM
Currently Being Moderated
Hi Experts,
Please Provide me SAP CRM Tables and Field names for the below.
SAP CRM Contracts start date and End date
SAP CRM Conditions(PROO, K007 etc....) records start and End Date.
Thanks and Regards,
Teja
Correct Answer by Sreekantha Gorla on Oct 22, 2009 8:22 PM
Hi,
dates will be stores in the table 'SCAPPTSEG'.
I double checked it. This table stores all the date types of one order transactions...
The relationship is as follows..
CRMD_ORDERADM_H- guid = crmd_link-guid_hi
crmd_link-guid_set = SCAPPTSEG-APPL_GUID.
Thanks and regards,
Sreekanth
<:footer>See the answer in context
6281 Views
Topics: Customer Relationship Management
Reply
Average User Rating
0
(0 ratings)
My Rating:
Rating Saved!
Comment on your rating
Re: SAP CRM Tables and Fields for Contract start and End dates
Robert Jesionowski 14 Oct, 2009 2:23 PM (in response to Teja Dhar)
Currently Being Moderated
Hi,
you should try with FM: CRM_DATES_READ_SINGLE_OB or CRM_DATES_READ_DB.
There is something in table SCAPPT and SCGENAPPT.
Regards, R
Report Abuse
Like (0)
Reply
Re: SAP CRM Tables and Fields for Contract start and End dates
Teja Dhar 22 Oct, 2009 5:30 PM (in response to Robert Jesionowski)
Currently Being Moderated
Hi Robert,
I am not able to find contract start date and End dates in the tables SCAPPT and SCGENAPPT.
Can you suggest some relevant tables.
Best Regards,
Teja
Report Abuse
Like (0)
Reply
Re: SAP CRM Tables and Fields for Contract start and End dates
Sreekantha Gorla 22 Oct, 2009 2:35 PM (in response to Teja Dhar)
Currently Being Moderated
Hi,
Table SCAPPTSEG stores the contract start and end dates.
Thanks,
Sreekanth
Report Abuse
Like (0)
Reply
Re: SAP CRM Tables and Fields for Contract start and End dates
Teja Dhar 22 Oct, 2009 5:32 PM (in response to Sreekantha Gorla)
Currently Being Moderated
Hi Sreekanth,
I am not able to find contract start date and End dates in the table SCAPPTSEG.This is for appointments.
Can you suggest some relevant tables.
Best Regards,
Teja
Report Abuse
Like (0)
Reply
Correct AnswerRe: SAP CRM Tables and Fields for Contract start and End dates
Sreekantha Gorla 22 Oct, 2009 8:22 PM (in response to Teja Dhar)
Currently Being Moderated
Hi,
dates will be stores in the table 'SCAPPTSEG'.
I double checked it. This table stores all the date types of one order transactions...
The relationship is as follows..
CRMD_ORDERADM_H- guid = crmd_link-guid_hi
crmd_link-guid_set = SCAPPTSEG-APPL_GUID.
Thanks and regards,
Sreekanth
Report Abuse
Like (0)
Reply
Re: SAP CRM Tables and Fields for Contract start and End dates
Wim Olieman 23 Oct, 2009 9:12 AM (in response to Sreekantha Gorla)
Currently Being Moderated
Hi,
I can tell you where the pricing records are saved, replicated from ECC.
The data from ECC table Axxx (e.g. A304) is replicated to CRM table
CNCCRMPRSAPxxx (e.g. CNCCRMPRSAP304).
Here you can find fields TIMESTAMP_TO and TIMESTAMP_FROM.
About the dates: what Sreekantha Gorla stated, about table 'SCAPPTSEG' is correct.
What might help is to execute program "CRM_ORDER_READ". Here you can find
the relevant entries also.
regards,
Wim
Report Abuse
Like (0)
Reply
Re: SAP CRM Tables and Fields for Contract start and End dates
Teja Dhar 23 Oct, 2009 4:59 PM (in response to Teja Dhar)
Currently Being Moderated
Hi Experts,
Thanks a lot for your support.My problem got resolved.
Best Regards,
Teja
Report Abuse
Like (0)
Reply
Re: SAP CRM Tables and Fields for Contract start and End dates
rajesh gadamsetty 27 Nov, 2009 12:29 PM (in response to Teja Dhar)
Currently Being Moderated
Hi Teja
Please let me know how you got the dates. i got the same requirement
Report Abuse
Like (0)
Reply
Correction on above mail.
Hi Sanjay,
Can you please help me to find the contract st art date and end date fetching from the table as below
ITEM DATES:
Select guid_set from table CRMD_LINK where guid_hi = CRMD_ORDER_I-GUID AND
OBJTYPE_HI = '06'
OBJTYPE_SET = '30'.
Select * from SCAPPTSEG where APPL_GUID = guid_set.
as from the table scapptseg has some unusal fields which fields to select to get the start date and end date and on what condition and isuppose we need to convert als the same
pls suggest further on same
regards
Arora -
VA42 user exit to update contract start and end dates at Item level
Hi Experts,
I need to update contract start and end dates at Item level in 'VA42' transaction, for this i am using user-exit 'USEREXIT_FIELD_MODIFICATION' in the include 'MV45AFZZ'. i am able to display the data into item level through my coding but the data is not getting updated into 'VEDA'
Note: No need to change contract start date and end date in header level. Only at item level i want to change dates.
Thanks,
Sateesh.Thanks For your reply Vikram,
i tried with 'USEREXIT_MOVE_FIELD_TO_VBAP' user-exit earlier it self its not working. Can you suggest me any another way how we can achieve this functionality. modification of Contract start date and end date in only item level.
'USEREXIT_MOVE_FIELD_TO_VBAP':
FORM USEREXIT_MOVE_FIELD_TO_VBAP.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(3) Form USEREXIT_MOVE_FIELD_TO_VBAP, Start A
*$*$-Start: (3)---------------------------------------------------------------------------------$*$*
ENHANCEMENT 1 ZSD_CONT_DATE. "active version
DATA : lv_var TYPE CHAR10.
lv_var = '0040000219'.
if sy-tcode = 'VA42'.
IF VBAK-VBELN EQ lv_var.
VEDA-VBEGDAT = '20140502'.
XVEDA-UPDKZ = 'X'.
VEDA-VENDDAT = '20140602'.
XVEDA-UPDKZ = 'X'.
ENDIF.
ENDIF.
ENDENHANCEMENT. -
Contract start and end date in BAPI_CONTRACT_CREATEFROMDATA
HI,
I am using BAPI_CONTRACT_CREATEFROMDATA to create a contract from within a custom ABAP program. However I cannot figure out how to get the contract start and end dates into the contract header. I know that you can enter them into the ONTRACT_DATA_IN table parameter but these dates only appear on the line items and not the header.
Does anyone know which parameters on the function map to the contract header start and end dates.
Thanks.Hi,
there are also fields QT_VALID_F and QT_VALID_T for quotation or inquiry. So it looks like for different contract types you need to use different fields. This BAPI calls FM SD_SALESDOCUMENT_CREATE which has subroutine ms_move_header_in which maps from BAPI fields to internal fields. Here is a small part of this routine.
MOVE order_header_in-qt_valid_f TO e_vbakkom-angdt.
MOVE order_header_in-qt_valid_t TO e_vbakkom-bnddt.
MOVE order_header_in-ct_valid_f TO e_vbakkom-guebg.
MOVE order_header_in-ct_valid_t TO e_vbakkom-gueen.
When I check technical fields for the screen fields "Valid from" and "Valid to" in VA43 I get names GUEBG and GUEEN. So it still looks like you should use CT_VALID_F and CT_VALID_T.
I forgot to mention you can still debug BAPI to figure out where the problem is.
Good luck
Edited by: Martin Voros on Sep 11, 2009 9:57 AM -
Start and end date in purchase order
hi everybody
I have to activate start and end date on the purchase order screen in the customer tab
can anybody tell me how to do this?First Go to SPRO-MM-Purchasing-Purchase Order-Define document types and Identify the Field Selection Screen assigned to Doc Type
then Using the same Path Go to Define Screen Layout at Document level and select the Field Selection screen for eg: NBF and Select Administrative Data, Header Tab and Set the Fields Start & End Dates as Required and Save.
If you do not Put Tick mark against three options called Required, Optional & Display then these Fields can not Seen in Po (Ie Hide)
Generally these Fields can be Seen in Purchase Order header Tab Additional Data tab.
Regards,
Ashok -
VA42 user exit to update contract start and end dates at header
Hi.
My requirement : In VA42, if a user changes a contract end date at item level, I want the change to be reflected at header level automatically.
I have looked in MV45AFZZ, USEREXIT_SAVE_DOCUMENT and USEREXIT_SAVE_DOCUMENT_PREPARE. I am unable to affect the contract end date in those user exits, whatever I put in VEDA-VENDDAT or XVEDA-VENDDAT or whateverVEDA-VENDDAT, does not have any effect on the actual contract dates.
Can anyone help?
Please note that we are running 46C.
Thank you.Thanks For your reply Vikram,
i tried with 'USEREXIT_MOVE_FIELD_TO_VBAP' user-exit earlier it self its not working. Can you suggest me any another way how we can achieve this functionality. modification of Contract start date and end date in only item level.
'USEREXIT_MOVE_FIELD_TO_VBAP':
FORM USEREXIT_MOVE_FIELD_TO_VBAP.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(3) Form USEREXIT_MOVE_FIELD_TO_VBAP, Start A
*$*$-Start: (3)---------------------------------------------------------------------------------$*$*
ENHANCEMENT 1 ZSD_CONT_DATE. "active version
DATA : lv_var TYPE CHAR10.
lv_var = '0040000219'.
if sy-tcode = 'VA42'.
IF VBAK-VBELN EQ lv_var.
VEDA-VBEGDAT = '20140502'.
XVEDA-UPDKZ = 'X'.
VEDA-VENDDAT = '20140602'.
XVEDA-UPDKZ = 'X'.
ENDIF.
ENDIF.
ENDENHANCEMENT. -
SNP Planned order start and end dates are not calculated correctly
Hello SNP Guru's
The SNP planned orders generated after the Heuristics run, have a start and end date based on the Activity Duration (Fixed), while the resource consumption is based on the Bucket Consumption (Variable), which is correct.
The Activity Duration (Fixed) is based on the BOM Base Quantity. So if the Activity Duration = 1 day, and if the order quantity is more than a day, the start and end dates, still shows as 1 day. So no matter what is the order quantity, the start and end dates is always = 1 day.
Does anyone have any experience in implementing any code to change the start and end dates on SNP Planned Order?
Seems like it should work as standard.
Am i missing something?
Thanks,
MangeshDear Mangesh,
SNP is a infinite planning tool. If you have defined fixed duration to be 1 DAY in the activity, no matter how many quantity you input for your planned order, the order will last for one day. If the resourced is overloaded, you then run capacity levelling to
banlance the capacity. What your expected beahavior happens in PPDS planning.
Claire -
What parameters determine Planned order production start and end dates?
Greetings
We are using the graphical planning table @ MF50 to firm Planned Orders (Basically checking off "Firm Order" field within the Planned Order). We are on ECC 6.0
Whenever I backflush, the production start and end dates get overwritten (The Basic dates do not change).
I would like to prevent this. Can someone advise me on what parameter controls how the production start and end dates getting changed?
Thank you
HanarinHi,
Calculating production dates ( Lead time scheduling) are explained in detail in the SAP help URL as below:
If "Automatci Scheduling indicator" is set in the customizing for scheduling parameters then after every change relevant to scheduling, the production order is also automatically rescheduled before saving.
You need to check these settings.
regards
Datta -
Calculate Start and End date in Connect By -- When Hirerchy Changes
/* Formatted on 5/20/2013 9:53:00 AM (QP5 v5.115.810.9015) */
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
Hello , Can some one Please help me or Guide me in calculating Start and End dates for the below logic
I want to calculate the Manager Hirerchy for the given Agent.
Then Below Query is working fine and its giving me the desired results
But when there is a change in the Manager Hirerchy or Manager gets Promoted
Then i need to calculate the start date and end date.
CREATE TABLE PERSON_DTL
SID VARCHAR2(10 BYTE),
EMP_MGRS_ID VARCHAR2(10 BYTE),
START_EFFECTIVE_DT DATE,
END_EFFECTIVE_DT DATE
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M100', 'M107', TO_DATE('05/20/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M101', 'M102', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('05/18/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('A100', 'M100', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M100', 'M101', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('05/18/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M107', 'M102', TO_DATE('05/20/2013 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M102', 'M103', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M103', 'M104', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('A101', 'M105', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
Insert into PERSON_DTL
(SID, EMP_MGRS_ID, START_EFFECTIVE_DT, END_EFFECTIVE_DT)
Values
('M105', 'M106', TO_DATE('01/01/2010 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), TO_DATE('12/31/9999 00:00:00', 'MM/DD/YYYY HH24:MI:SS'));
COMMIT;
SELECT CONNECT_BY_ROOT (b.sid) agent_sid,
TRIM (
LEADING ',' FROM SYS_CONNECT_BY_PATH (b.sid, ',')
|| ','
|| b.emp_mgrs_id
PATH,
START_EFFECTIVE_DT Start_dt,
END_EFFECTIVE_DT End_dt
FROM PERSON_DTL b
WHERE CONNECT_BY_ISLEAF = 1
START WITH sid IN ('A101', 'A100')
CONNECT BY PRIOR b.emp_mgrs_id = b.sid
This is the results that i am getting now.
AGENT_SID PATH START_DT END_DT
A100 A100,M100,M101,M102,M103,M104 1/1/2010 12/31/9999
A100 A100,M100,M107,M102,M103,M104 1/1/2010 12/31/9999
A101 A101,M105,M106 1/1/2010 12/31/9999
Results Required
A100 A100,M100,M101,M102,M103,M104 1/1/2010 5/18/2013
A100 A100,M100,M107,M102,M103,M104 5/20/2013 12/31/9999
A101 A101,M105,M106 1/1/2010 12/31/9999May be this..
SQL> select agent_sid,max(path) path,max(start_dt) start_dt,
2 min(end_dt) end_dt
3 from
4 (
5 select agent_sid,path,start_dt,end_dt,
6 sum(flg) over(order by rn) sm
7 from
8 (
9 select agent_sid,
10 path,
11 start_dt,
12 end_dt,rn,
13 case when path like lag(path) over(order by rn)||'%' then 0 else 1 end flg
14 from
15 (
16 SELECT CONNECT_BY_ROOT (b.sid) agent_sid,
17 TRIM (
18 LEADING ',' FROM SYS_CONNECT_BY_PATH (b.sid, ',')
19 || ','
20 || b.emp_mgrs_id
21 )
22 PATH,
23 START_EFFECTIVE_DT Start_dt,
24 END_EFFECTIVE_DT End_dt,rownum rn
25 FROM PERSON_DTL b
26 START WITH sid IN ('A101', 'A100')
27 CONNECT BY PRIOR b.emp_mgrs_id = b.sid
28 )
29 )
30 )
31 group by agent_sid,sm
32 order by agent_sid;
AGENT_SID PATH START_DT END_DT
A100 A100,M100,M101,M102,M103,M104 01-JAN-10 18-MAY-13
A100 A100,M100,M107,M102,M103,M104 20-MAY-13 31-DEC-99
A101 A101,M105,M106 01-JAN-10 31-DEC-99Edited by: jeneesh on May 20, 2013 7:54 PM
Not thoroughly tested.And not sure whether an easy way exists.. -
Report execution start and end date/time
Hi All,
How can one find execution start and end date/times for all reports? Basically I am looking to see what reports were run on a day, when and how long it took for each to complete.
Thank you.
DenisHi,
The "eul5_batch_reports" holds the data about the scheduled report and if you don't have any so you will not have any data.
Take a look at "EUL5_QPP_STATS"
for example:
select
qpp.qs_doc_name,
qpp.qs_doc_details,
fu.user_name Ran_by,
qpp.qs_created_date Start_run,
qpp.qs_doc_owner Doc_owner,
qpp.qs_num_rows rows_fetch,
qpp.qs_est_elap_time estimated_time,
qpp.qs_act_elap_time Run_time,
qpp.qs_act_cpu_time Cpu_time
from eul_us.EUL5_QPP_STATS qpp,
fnd_user fu
where substr(qpp.qs_created_by,2,10)=fu.user_id
order by qs_created_date -
Hi,
I have a requirement to find the list of persons who have overlapping dates.
Each person can have many start and End Dates, but only one row that has a NULL end date, the active record. If the start and end dates are overlapped, like in the example below, the second row should have a start date of 24-DEC-2006 and not 22-DEC-2006. Is it possible to list those persons who have overlapping dates/gap in the dates.
Empl_ID Start Date End Date
12345 01-JAN-2006 23-DEC-2006
12345 22-DEC-2006 13-JAN-2007
12345 14-JAN-2007 NULL
Any help is greatly appreciated.
Thanks!Hi Patrick
I like where you are coming from. I hope you don't mind but I have extended your idea slightly to add in a PARTITION BY clause to make sure we look at records for the same person. Also, if we LAG to get a previous record shouldn't we LAG the END_DATE and compare it with the current START_DATE?
LAG(END_DATE,1) OVER (PARTITION BY EMPL_ID ORDER BY START_DATE)
Doing this, then the results would look like this:
Empl_ID Start Date End Date Lag Date
12345 01-JAN-2006 23-DEC-2006 NULL
12345 22-DEC-2006 13-JAN-2007 23-DEC-2006
12345 14-JAN-2007 NULL 13-JAN-2007
This would give the SIGN an issue because in the first record the LAG would be NULL and in the last record the END_DATE would be NULL. So it looks like some manipulation of NULLs has to take place as well which I will deal with later.
SIGN((LAG(END_DATE,1) OVER (PARTITION BY EMPL_ID ORDER BY START_DATE)) - START_DATE)
Anytime the difference between the Lag Date and the Start Date is positive this means this is an overlap which means we do need to look for any variance where the SIGN is 1.
Using the other function, we could use LEAD like this:
LEAD(START_DATE,1) OVER (PARTITION BY EMPL_ID ORDER BY START_DATE)
Doing this, then the results would look like this:
Empl_ID Start Date End Date Lead Date
12345 01-JAN-2006 23-DEC-2006 22-DEC-2006
12345 22-DEC-2006 13-JAN-2007 14-JAN-2007
12345 14-JAN-2007 NULL NULL
which when combined with SIGN becomes: SIGN((LEAD(START_DATE,1) OVER (PARTITION BY EMPL_ID ORDER BY START_DATE)) - END_DATE)
This time you would be looking for the SIGN to be -1
Personally, I think I would prefer the LEAD function because a) there would always be a START_DATE, and b) we could replace all of the possible NULLs with the SYSDATE to get a final calculation like this:
SIGN(NVL(LEAD(START_DATE,1) OVER (PARTITION BY EMPL_ID ORDER BY START_DATE),TRUNC(SYSDATE)) - NVL(END_DATE, TRUNC(SYSDATE)))
Based on the current date being 17-NOV-2009, you would now get this result:
Empl_ID Start Date End Date Lead Date
12345 01-JAN-2006 23-DEC-2006 22-DEC-2006
12345 22-DEC-2006 13-JAN-2007 14-JAN-2007
12345 14-JAN-2007 17-NOV-2009 17-NOV-2009
Best wishes
Michael -
Adding a summary column in a table which contains the start and end dates in the week
Hi,
I've got a DIMENSION DATE table and want to add in another column which shows the start and end date of the week.
See below, the new column is WEEKOFYEARTEXT.
Does anybody know how i may generate this column using SQL and using the existing columns?
Umar JavedSee: http://www.sqlusa.com/bestpractices/datetimeconversion/
DECLARE @Year INT = '2015';
WITH cteDays AS (SELECT DayOfYear=Dateadd(dd, number,
CONVERT(DATE, CONVERT(char(4),@Year)+'0101'))
FROM master.dbo.spt_values WHERE type='P'),
CTE AS (SELECT DayOfYear, WeekOfYear=DATEPART(week,DayOfYear)
FROM cteDays WHERE YEAR(DayOfYear)= @YEAR)
SELECT WeekOfYear, StartOfWeek=MIN(DayOfYear), EndOfWeek=MAX(DayOfYear)
FROM CTE GROUP BY WeekOfYear ORDER BY WeekOfYear;
WeekOfYear StartOfWeek EndOfWeek
1 2015-01-01 2015-01-03
2 2015-01-04 2015-01-10
3 2015-01-11 2015-01-17
4 2015-01-18 2015-01-24
5 2015-01-25 2015-01-31
6 2015-02-01 2015-02-07
7 2015-02-08 2015-02-14
8 2015-02-15 2015-02-21
Kalman Toth Database & OLAP Architect
SQL Server 2014 Database Design
New Book / Kindle: Beginner Database Design & SQL Programming Using Microsoft SQL Server 2014 -
Report for Validity Start and End Date in PO
Dear All
Is there any report where I can get PO validity start and end date which user input in addtional data header tab of PO?
Regards
Satish KumarHi,
Yes, It is available standard report using T-code ME2N - Purchasing Document (PO) Per Document Number, enter the T-code and provide the following input data's are as follows.
Scope of List : ALV ( for Ms-Excel format report)
Plant : __________ to __________ (if required)
Document Date : ____________ to ___________ (if Required)
Execute the report shown by default in excel format and if required PO validity start and end data, you have to select Change Layout button and open new window options screen right side field option as Validity Per.Start, Validity Period End, Commutative number field data's are selected and click <--- arrow button and then click bottom tick marked button. Now, the report shown your requirement.
Hope, it is useful for you,
Regards,
K.Rajendran
Maybe you are looking for
-
somebody help me in this?
-
IMessaging with iOS 7.0.2
My iMessaging is not wanting to send as quickly to fellow iphone and ipad users as it did before the 7.0.1 and 7.0.2 update. I have turned off my iMessage to allow it to reboot along with turning off my phone as well. What are some steps to get thi
-
Null pointer Exception with Custom EventQueue
I created a simple class customEventQueue which is extended from EventQueue class and pushed it using Toolkit.getDefaultToolkit().getSystemEventQueue().push(customEventQueue); Now, whenever there are three modal dialogs on top of a frame and if I cli
-
Add routes remotely Via Powershell
I have csv file that contains computer name and defaultipgateway i need to add the routes on this servre but i am receiving error while doing it remotely below is my script $ADDs = Import-Csv .\gateway2.csv foreach ($add in $adds) { $compute
-
DaqMX & TDMS Logging - No Datestamp and dt until Close
In our application, we are continuously logging data to a TDMS file using the "DaqMX Configure Logging (TDMS).vi". However, there are times when we need to look at the TDMS data while the application is still running (i.e. when a failure is found). W