Time dependent Attibute in my Infoobject ?
Hi All,
Scenario :I have one Char Infoobject with time dependent attribute in that . Data is loaded as Direct update with full load
We are this to maintain History
Question :
1.When I go to maintain masterdata I get two attribute add along with my attribute as Valid From and Valid To, is it system genrated ?
2.When I go to transfer rule ,we have maped this two genrated attribute as well - so In our system To date is constant as 31/12/9999 and Valid From is assign to 0calday.
But when I see the data I get the entries for one particular material as multiple - and more ever it automatticaly adjust Valid To date = current calday -1 , the big problem for me I am not able to get How system is doing this adjustment for Valid From and Vaild To dates for previous entries . -
Is this feature of Time depeneded attribute ???
Note : When I see the infopakage I cant find start routine But I can find one date field from source made available only in Selection tab and which is assign to getyesterday (0)
But which is not maped in transfer rule, I was thinking that it might be used to map to Valid to Date through ABAP.. But I am not able to find code for the same ....
Please advice and Give more info on Time Dependend Attibute .?
1.When I go to maintain masterdata I get two attribute add along with my attribute as Valid From and Valid To, is it system genrated ?
Is this referring an additional record generated by system with diff valid to and from dates ?
Yes, system does that for Time dep m data
Ex : Profit Center - 9999 -12/31/2006- 01/01/1000 - > System Generated Record
Profit Center - 9999 -12/31/9999- 01/01/2007 - > One in the source system created by user.
That is how it works.
But what is your concern because of this sys gen records ?
You will only find the user created profit center in the report.
Similar Messages
-
Hi,
Can anybody help me with me problem?
I'm creating a datasource for a characteristic with time dependent attributes.
I need to have 0DATEFROM as a selection characteristic in the infopackage.
But when I do this, the load fails with the next error mesage: " ZEMPLOYEE : Data record 1 ('01000001 ') : Invalid "from" date '00000000 '". And the same error appears for all values of ZEMPLOYEE.
Does anybody how to solve the problem?Hi Elena,
Do you load master or transactional data?
If the latter, you need to load master data of 0EMPLOYEE first. The date supplied by the system you need to use in TO_DATE field. The system will take care about creating time-dependent records.
See some examples here:
Re: Master Data: 2 records with different FROM-TO dates
Re: Master data load failure
Re: Loading Multiple Time-Dependent Characteristics for an InfoObject
Best regards,
Eugene -
Time dependent Hirarchy Structure
Hi,
I need to create Hirarchy, i did not create before,
Please some one explaine me how to create Time dependent Hirarchy Structure in CostCenter InfoObject.
Please, please help me.
ThanksHI
Find the below link
http://help.sap.com/saphelp_nw2004s/helpdata/EN/0e/fd4e3c97f6bb3ee10000000a114084/frameset.htm
Time-Dependent Hierarchies
Use
In a hierarchy that is not time dependent, the characteristic values are always the same.
If you want to create views of a hierarchy that are valid for a specific time period, you need to create the entire hierarchy as time dependent.
If you want to model relationships that change time-dependently, you need to create the hierarchy structure time-dependently.
Functions
In InfoObject maintenance, you can set whether and in which ways a hierarchy is time dependent. You can choose from the following:
· whether the hierarchy is not time dependent (Hierarchy Not Time-Dependent). This is set by default.
· whether the entire hierarchy is time dependent (Entire Hierarchy Time-Dependent).
· whether individual node relationships are time dependent (Hierarchy Structure Time-Dependent)
· whether a temporal hierarchy join is used with time-dependent hierarchy structures (Use Temporal Hierarchy Join)
Entire Hierarchy is Time-Dependent
You can either load time-dependent hierarchies (see Loading Time-Dependent Hierarchies) or create them in the BI system (see Creating a Hierarchy). When you create a time-dependent hierarchy, you have to enter a validity interval (valid to and valid from fields).
If an entire hierarchy is time dependent, the system creates hierarchy versions that are valid for separate intervals. The system automatically uses the current valid version in this case. The hierarchy valid in each case can be uniquely identified by its technical name and the From-To Date.
In the InfoObject tree of the Data Warehousing Workbench, all time-dependent hierarchies under the associated InfoObject are displayed with the corresponding To Date, for example Time-Dependent Hierarchy 05/31/2000.
In reporting, the system returns the valid hierarchy when a query is executed using the query key date.
Within a restructuring company areas, you can create time-dependent versions of a hierarchy for the Main Area InfoObject. This enables you to compare the restructuring over different time periods in a query.
Time-dependent hierarchy 01/01/1999 - 05/31/1999
Time-Dependent Hierarchy 06/01/1999 - 12/31/1999
Main Area NORTH
Main Area NORTH
Area 1
Area 2
Area 2
Main Area SOUTH
Main Area SOUTH
Area 1
Area 3
Area 3
Area 4
Area 4
In reporting, you can work in the individual columns of the report structure with fixed date values. You may want to do this to compare Main Area North in the Time-Dependent Hierarchy 05/31/2000 with Main Area North in the Time-Dependent Hierarchy 06/01/2000 (simulation).
Time-Dependent Hierarchy Structures
You can either load time-dependent hierarchies (see Loading Time-Dependent Hierarchies) or create them in the BI system (see Creating a Hierarchy).
In hierarchy maintenance, you can determine a valid time interval for each hierarchy node (Valid to and Valid from fields).
In reporting, a hierarchy with time-dependent hierarchy structures is created either for the current key date or for the key date defined for the query. In addition, you can evaluate a hierarchy historically using the temporal hierarchy join.
You can assign an employee to different cost centers at different times within the context of a restructuring.
In the context menu of a hierarchy, choose Display Hierarchy to access the hierarchy display: Each node and leaf has been given a date symbol. Hierarchy nodes that are assigned to different places in the hierarchy structure, depending on the time, are displayed more than once. By double clicking on a hierarchy node, you can display the associated validity period for the node relation.
In the following example, you can double click on the Jones leaf to see that the worker Jones was assigned to region USA between 01/01/1999 and 05/31/1999 and Puerto Rico from 06/01/1999 to 12/31/1999.
In order to use a hierarchy with a time-dependent hierarchy structure in reporting, you require the following settings in the BEx Query Designer:
a. If you want to evaluate a hierarchy with a time-dependent hierarchy structure for a fixed key date, enter the key date in query definition.
b. If you want to evaluate a hierarchy with a time-dependent hierarchy structure historically, for a key date that is to be derived from the data, choose the temporal hierarchy join option and specify the derivation type for the key date.
For a more detailed description of the functions and differences between the two evaluation views, see Time-Dependent Hierarchy Structures in the Query.
In maintenance of the key date derivation type (RSTHJTMAINT) determine the rule you want to use to determine the key date from the data. In this way you determine the time characteristic and way in which the key date is to be derived.
1. First determine the time characteristic.
If you choose a Basic Time Characteristic as a time characteristic (for example, 0CALDAY, 0CALMONTH, 0FISCPER), you can use a key date derivation type of this kind for all InfoProviders that contain exactly one time characteristic that references the selected basic time characteristic. If there are several time characteristics in an InfoProvider that reference the basic time characteristic, you have to either determine the time characteristic more specifically or select a particular time characteristic from a particular InfoSet (Time Characteristic from InfoSet).
2. Determine how you want the key date to be derived from the time characteristic.
The following derivation types are available:
¡ First day of the period
¡ Last day of the period
¡ Delay by number of days (you specify this in the Delay by Days field). In this case, the key date is calculated from the first day in the period plus the number of days specified minus 1. If the key date does not fall within the period, the last day of the period is used.
Key date derivation type with (basic characteristic = 0CALMONTH, derivation type = u201Cfirst day of periodu201C):
· For January 2005 the key date is calculated as 1/1/2005.
· For February 2005 the key date is calculated as 2/1/2005.
Key date derivation with (basic characteristic = 0FISCPER, derivation type = u201Cdelay by number of daysu201C and u201Ddelay u201C = 29):
· For K4/01.2005 the key date is calculated as 1/29/2005.
· For K4/02.2005 the key date is calculated as 2/28/2005.
· For K4/03.2005 the key date is calculated as 3/29/2005.
Note that the way in which you determine the key date derivation type affects performance. The number of data records that the OLAP processor reads corresponds to the level of detail on which the time characteristic and the leaf level lie. For this reason, choose the time characteristic as approximately as possible in order to keep the hierarchy small.
A small hierarchy has 100 leaves. For a period of 12 months, the OLAP Processor reads 1200 data records at month level. At day level, it reads 36500 data records.
Regards,
kumar reddy.k
Edited by: kumar reddy on Nov 18, 2008 10:50 AM -
Reporting on Time Dependent Master Date Info Provider
Dear All.
We have a info object Employee which is time dependent master data containing all the information with time dependency, when i create the query over this info object it give me the option to select the key date and it show the accurate information which is lying according to the key date.
my requirement is to show all the records in the report which are there in master data but i am not able to show more then one record cause of the key date, can you please let me know how can i show all the records for any given employee id in the query.Hello Zeeshan,
By standard if you create query directly on time dependent info object, it would display the active records as of the report execution (if no key date has been provided). In any case you can only see one record per the info object key, not the history.
In order to fulfill this requirement, you may need to create infoset on this infoobject and select "date from" and "date to" as part of infoset fields.
Then create bex query on the infoset and drag the "date from" and "date to" also into "rows" section of the query (apart from infoobject key, time dependent attributes). This will let you see the history of changes to time-dependent attributes of the infoobject.
Cheers,
Vasu -
Problem with Time dependent master data
Dear All,
I have 0PERSON master data infoobject. It is getting records extracted from backend R3 and from a different datasource called 'Peoplesoft'. It has a field 'Date of Birth'. Point of concern here is - whether a particular employee is present in Peoplesoft or in R3, his date of birth is constant. Unfortunately someone hs made 'Date of Birth' as a time dependent attribute of the InfoObject 0PERSON.
We extract data from Peoplesoft from 01.01.1900 to 31.07.2005. From 01.08.2005 onwards, data is getting extracted from R3.There are some employees which are present in Peoplesoft but they are not in R3.
Problem is occuring when the user is reporting on a relevant Infocube containing this 0PERSON infoobject. He does not see the value for this 'Date of Birth' field for certain employees. The reason for this is that the 'Date of Birth' field is blank in the interval 01.08.2005 - 31.12.9999 as this employee was absent in R3 and hence no record/s got extracted.
To view this value in the report - Please suggest me a possible remedy. I thought to write a routine but I dont think it is advisable to change a time dependent master data.
Thanks,
SrinivasHi,
There are two ways of solving your issue.
- Remove the time dependent check box for 0person, delete the transactional data, load the master data again and reload the transactional data.
- Write a program to extend the 'Date to' value to 31.12.9999 for all employees.
Ravi -
Time Dependent Attributes for 0UCINSTALLA
Hello BI experts,
I have one question regardning time dependent attributes for Installation InfoObject (0UCINSTALLA) that are loaded from DSO (0UCS_DS06).
My Installation InfoObject has 3 time dependent attributes:
- ZGSP_ID
- ZPROF_CL (Profile Class)
- ZDUALFUEL (Flag for Dual Fuel installation)
EXAMPLE:
UCINSTALLA DATEFROM DATETO ZGSP_ID ZPROF_CL ZDUALFUEL
1 01.01.1000 31.03.2009 _A 3 X
1 01.04.2009 31.05.2009 _B 3 X
1 01.06.2009 31.12.9999 _B 3
In the DSO it is represented by following entreis:
UCINSTALLA DATEFROM DATETO OPERAND CHARVAL
1 01.01.1000 31.03.2009 ZGSP_ID _A
1 01.04.2009 31.12.9999 ZGSP_ID _B
1 01.01.1000 31.05.2009 ZDUALFUEL X
1 01.06.2009 31.12.9999 ZDUALFUEL null
1 01.01.1000 31.12.9999 ZPROF_CL 3
The lines that contain ZGSP_ID as openard should populate ZGDS_ID field, lines with ZDUALFUEL operand populate ZDUALFUEL attribute, etc
How can I map in one transformation? I believe this has to be done in ABAP, but it would be rather difficult to manipulate dates:
- when first record is processed Start Routine has to browse for all other lines in the DSO for the same installation and split the record into 2 or more depending when other attributes are valid.
At the same time one record have to be split into multiple records (when valiity dates for three attributes don't match), and multiple records have to be merged (for intervals when all attributes are valid).
One alternative is to load these three attributes from three separate DSOs - then BI will take care of dates by itself. But this is a bit nasty solution.
Could you kindly please advise if there is any simple way of doing this logic?
Kind regards,
Roman PikuzinskiHI,
If your data source contains dates such as start date and end date, then you can map them to 0DATEFROM and 0DATETO respectively. In that case the 0DATEFROM and 0DATETO take the values from the data source and split up.
For eg. if the start date is 05/25/2010 and end date is 12/31/2010, then now in your info provider you will have three records-
0DATEFROM 0DATETO
01/01/1900 05/24/2010
05/25/2010 12/31/2010
01/01/2011 12/31/9999
However if you do not want to map any field from the data source to these attributes then they take the system generated values - 01/01/1900 and 12/31/9999 respectively.
Hope this helps in the understanding.
Thanks,
Rahul -
Data not uploading in Time dependent Master data Infoobject
Hello All,
I have a master data infoobject for HR entity and have to load data from PSA to that info object.
The HR entity infoobject already have sone data like below:
HR Entity
Version
Date from
Date To
x
A
01.07.2013
31.12.9999
x
A
19.04.2013
30.06.2013
x
A
01.09.2012
18.04.2013
x
A
01.01.2012
31.08.2012
x
A
01.01.1000
31.12.2011
Now the data in PSA is as follows:
HR Entity
Start Date
End Date
X
01.01.2012
18.12.2013
Once I loaded this data to the infoobject, i can not see this value which is the latest value of this HR entity.
Can somebody please explain how the data gets loaded in the time dependent master data infoobject and why this entry is not getting loaded in the info object.
Regards
RKHi,
did you activate master data after your load?
You can check also version 'M' records and see if your record is there.
The load went green?
The problem is, that your entry overlaps all exisitng time intervals, which can't be deleted or merged as there may be dependent transactional data. You have first to delete the transactional data for this entity.
Then you can delete the time-dependent data and reoload it from your PSA.
BW will build then correct time intervals.
The easiest is to change the time interval in PSA, see example below:
At the moment the time interval is not accepted. But you can add time intervalls before 31.12.2011 and after 01.07.2013, Then system will create remaiing time intervals, e.g. your new record is:
HR Entity
Start Date
End Date
X
01.08.2013
18.12.2013
Result will be:
HR Entity
Version
Date from
Date To
x
A
19.12.2013
31.12.9999
x
A
01.08.2013
18.12.2013
x
A
01.07.2013
31.07.2013
Regards, Jürgen -
Time dependent infoobjects.
hi sapgurus,
When i am creating the infoobjects,i am facing following can some help with them.
1.Why are very putting attributes as time dependent attributes?
2.What is the importance of HIERARCHIES NOT TIME DEPENDENT AND ALSO INTERVALS PERMITTED IN HIERARCHY.
3.What is the importance of conversion routines?
4.If we write transfer routine then it will be applicable where ever infoobject is created,what is the advantage of that?
Can somebody spare some time help me with this.
thanks in advance.Hi Nrupal,
1. Time dependant attributes we use if they mean to changeable with time.
2. Intervals, we can choose 2 nodes (at same level).
3. Conversion routine is useful if we want to convert the format (time or date)
ex: date: dd/mm/yyyy but if u give input mm/dd/yyyy it suppose to give an error but u can use conversion routine to convert into internal format.
4. Transfer toutine at IO level for permanant and TR level only for that InfoSource.
Assign points if useful...
Regards,
ARK -
Time Dependent InfoObject and InfoPackages
Hi There,
I did create a time-dependent infoobject ( bI7 object) however the timeframe in the infopackage does not show-up meaning I can not restrict the load _ unless I define the dateto and datefrom as selection when I create the datasource in R/3 ... Any explanation ? is it a BI7 feature ?
Cheers,
Erik.With Time-dependent InfoOject, it is usually possible to restrict in the tab "Upadate" the FROM and TO date from the extraction. Usually the default value when you create the infopackage is TODAY for FROM and 31.12.9999 for TO.
In my case, when I create the infopackage these options do NOT appear in the screen. ....
What is the reason for that ? Is there a reason for that ?
Cheers,
Erik
Edited by: Erik MITON on Jul 25, 2008 8:38 AM -
Master data loading with Time dependent InfoObjects
Hi
For product master, I have a infoobject Standard Cost, a time dependent keyfigure attribute.
How do I Load data for product master
1. From flat file
2. from R/3 Pleas provide steps to do on R/3 side
Thanks in advance,
Regards,
VjHi,
Though you Material grade is time dependent and sequentially changing.
You can create 4 different DTP with Grade selection (only 1 Transformation).
For example, 1 DTP with filter Grade A, another DTP with grade B, so on.
and executive all 4 dtp sequentially and activate master data after every DTP run.
Hope it will workout.
Thanks,
Balaram -
Replacing DSO with InfoObject for storing time-dependent master data
Hi Gurus,
currently I am storing time-dependent contract items in a DSO. The posting items are enriched with this master data as well as some other transaction data into another consolidated DSO, which includes the time-dependency (valid from & valid to) as well for better performance. But this means that we will have a large number of records, because 1 new posting item could end up with few posting items more due to the versions of contract item.
Since there are many posting items (>50 millions yearly, daily peak 1-2 million) and the complexity with delta management, I am considering whether to use an InfoObject for storing the contract items. The number of contract items are not many, about 300,000 after migration and about 10,000 each month.
Hence, I would like to ask whether this approach is feasible? Is there a size limit for a master data InfoObject?
Thanks in advance.
Regards,
Menghi,
The Time dependent MD object will create the same number of records for the contract item (maybe more) as each contract item will have different record for different time frame.
this can be better explained with example.
let us say you have 1 contract item with 2 entries one valid from 2007-2008 and the other from 2008 onwards.
In DSO this will create 2 records, in time dependent MD object it would also create 2 records.
In the infopackage for the MD you would need to provide the interval (time range) for the MD.
if you provide it as 2007 till 2999 then two records will be created one with 2007-08 and other valid from 2008-999.
However as there would be other contract items which would have lower date say 2006 then this contract item would create 3 rows, 1 row for 2006-07 with blank values, 2nd for 2007-08 and 3rd for 2008-999. This way it has more number of records than the DSO.
In case of MD object you may not be able to delete data as well in future if the object is used in some other place.
There will be many pros and cons of the approach you are thinking and you would have to weigh them and decide.
regards,
Arvind. -
Using Time dependent Infoobjects in Reports
Hi
I have Standard Cost as time dependent attribute for 0Mat_Plant. How do I use this Standard cost values of different times ?
for Eg : How can I get this report in BEx
Material Standard cost (2006) Standard Cost(2007)
M100 10 12
M200 15 13
Note: Actual scenario is different where I have to use standard cost of different years in formulas
Regards,
VijayHi Vijay,
what is Standard cost? A key figure? Where is it stored?
Please take a look to infosets. There you can do some time dependet reporting.
http://help.sap.com/saphelp_nw04/helpdata/en/e3/e60138fede083de10000009b38f8cf/frameset.htm
But why you dont create a navigational attribute by using Standard cost? Than you can create a structure with two elements - one for 2006 and one for 2007 where you can restrict the attribute by calendar year (if available)!
But i dont know how your data model look like.
Regards,
Adem -
Time-dependent master data in the cube and query
Hello,
I have a time-dep. masterdata infoobject with two time-dep attributes (one of them is KF). If i add this infoobject into the cube, what time period SID will be considered during the load? I assume it only matters during load, if i add the KF to the query it gets its value based on the SID in the cube.. right?
Thanks,
vamsi.If its Time Dependent Master Data object when you run your Master Data if that time any changes to the Master Data that value will be overwrite to the old value you will get the new value. When you run the Query execution the Infocube Master Data infoobject will having the SID that time it will to there it will be displayed at that moved what is the value you have in the Master Data table.
This is what my experience.
Thanks,
Rajendra.A -
Issue while creating a heirarchy using Hierarchy Structure Time dependent
Hi every body
I created an Info object(SREP) with Heirarchy Strututre Time Dependent property. When i am creating an Heirarchy for the info object(SREP) i am not able to see any text node by default, do we need to create it explicitly or system would propose one node by defalut..
I created a text node manually then and tried to assign an another info object(SREG) as a child using an option of "Insert Characterstic", but i am getting a message as "InfoObject SREG is not entered for InfoObject SREP as a Foreign Heirarchy Characterstic", and system is again proposing to assign some info object as a child.
Thanks in advance..
sekharok
-
How to Display Time-Dependent Characteristic Data In Query
Hi Experts,
I have encountered a problem. I want to use Time-Dependent Chart. And want to display different value according characteristc's valid from time. For Example,
The Characteristic 0COSTCENTER has the navigation attribute 0COMPANY, The data as:
0COSTCENTER Valid from Valid To 0COMPANY
BW2305 20070101 20070430 A
BW2305 20070501 99991231 B
I want the report can display as :
0COSTCENTER Valid from Valid To 0COMPANY AMOUNT
BW2305 20070101 20070430 A 1000
BW2305 20070501 99991231 B 2000
But when I set the query's key date 20070420, the report display as:
0COSTCENTER Valid from Valid To 0COMPANY AMOUNT
BW2305 20070101 20070430 A 1000
BW2305 20070501 99991231 A 2000
when I set the query's key date 20070520, the report display as:
0COSTCENTER Valid from Valid To 0COMPANY AMOUNT
BW2305 20070101 20070430 B 1000
BW2305 20070501 99991231 B 2000
Can anybody tell me how I can get report expected.
Thanks in advance.
SFHi,
1) Add the characterstics 0COSTCENTER ,0DATETO,DATEFROM and 0COMPANY to the cube.
2) And also add these 4 IOs to the Communication structures which has update rules with the concern cube.
3) I hope , you already have 0COSTCENTER in the Commnication structure and mapping for that infoobject at both Update rules and Transfer rules.
4) Leave to the Blank(no mapping) mappings for the IOs 0DATETO,DATEFROM and 0COMPANY in the Transfer rules.But make 1:1 mapping in the Update rules for these 2 infoobjects.
5) Write the below code in the strt routine of the Update rules:
TYPES: BEGIN OF type4.
include structure like /BI0/QCOSTCENTER.
TYPES END OF type4.
DATA:
ITAB4 TYPE STANDARD TABLE OF TYPE4
WITH HEADER LINE
WITH NON-UNIQUE DEFAULT KEY INITIAL SIZE 0.
SELECT * FROM /BI0/QCOSTCENTER INTO CORRESPONDING FIELDS
OF TABLE ITAB4
WHERE OBJVERS = 'A'.
loop at DATA_PACKAGE.
READ TABLE ITAB4 WITH KEY COSTCENTER = DATA_PACKAGE-MATERIAL
DATETO LE DATA_PACKAGE-PSTNG_DATE
DATEFROM GE DATA_PACKAGE-PSTNG_DATE.
IF SY-SUBRC EQ 0.
DATA_PACKAGE-DATETO = ITAB4-DATETO.
DATA_PACKAGE-DATEFROM = ITAB4-DATEFROM.
DATA_PACKAGE-COMP_CODE = ITAB4-COMP_CODE.
ENDIF.
Modify DATA_PACKAGE.
endloop.
ABORT = 0.
Here I assumed you have Posting date in the Communication structure and used to map to Fiscalperiod of the cube.
6) Do the Master data upload to Cost center and active the master data of it always before uploading the data to cube.
7) Do the uploading to cube from Sratch.
With rgds,
Anil Kumar Sharma .P
Message was edited by:
Anil Kumar Sharma
Maybe you are looking for
-
How do I connect my 27" Imac to my 47" Vizio HDTV?
Good Morning! I am attempting to connect my 27" Imac to my brand-spankin-new 47" Vizio 1080p HDTV. I know there is a way to use the TV to display videos, internet (Netflix), and such, but I'm not sure what is the simplest and most effective way to ge
-
Direct link to an Episode?
There needs to be an easy, intuitive way for me to directly share an episode with a friend and NOT the entire podcast. So often I am listening to a podcast and think, "Jim would really like this one" but I have to type in the name and date of the act
-
Export Corrupt duplicate images
I am having a problem with export to pdf. the pages file looks the way it should but when you export the images are not right. Some pages that I have 4 different pictures export as 4 of the same picture. I tried... restarting, closing the applicat
-
AppleTV Rented Movie Twice - Kept Hanging, Completely Died an hour later
I find this so interesting since My Apple TV is hardly used & is fairly new + hasn't moved since it was unboxed. My wife bought the 'Sex & The City' movie & halfway through, it just hung & was unresponsive, then skipped drastically, kind of like what
-
I updated my MacBook Pro Retina 15" with the SMC Update v1.1. Everything went well with the installation, and it has successfully been installed amd restarted. After quite awhile, I shut down my MBP. Then when I tried to open it again, nothing happen