FI Realted T-codes
Hi,
Please anyone provide me FI realted T-codes in Extraction
FI-SL T-codes
CO-PA T-codes
Thanks,
GAL
Hi...
SPRO Enter IMG
OX02 Company Code - Create, Check, Delete
OX03 Create Business Area
OKBD Functional Areas
OB45 Create Credit Control Area
OB29 Maintain Fiscal Year Variant
OB37 Assign Co. Code to Fiscal Year Variant
OB13 Creation of Chart of Account (CoA)
OBY7 Copy Chart of Account (CoA)
OBY9 Transport Chart of Account
OBD4 Define Account Group
OBY2 Copy GL Accounts from the Chart to Co. Code
OB53 Define Retained Earnings
OB58 Maintain Financial Statement Versions
OBC4 Maintain Field Status Variant
OBBO Define Posting Period Variant
OBA7 Define Document Type & Number Ranges
OB41 Maintain Posting Keys
OBA4 Create Tolerance Groups
FBN1 Create GL Number Ranges
OBL1 Automatic Posting Documentation
FBKP Automatic Account Assignment
OBYC MM Automatic Account Assignment
OBY6 Enter Global Parameters
FS00 Creation of GL Master Records
(F-02) Posting of GL Transactions
(FB03) Display of GL Document
(FS10N) Display of GL Accounts
OB46 Define Interest Calculation Types
OBD3 Define Vendor Account Group
(XK01) Creation of Vendor Master
(F-43) Purchase Invoice Posting
(FK10N) Display Vendor Account
F112 Define House Bank
OBB8 Maintain Terms of Payment (ToP)
OBD2 Creation of Customer Account Group
OBA3 Customer Tolerance Groups
(XD01) Creation of Customer Master
(FD10N) Display Customer Account
(F-28) Incoming Payment Posting
OB61 Define Dunning Area
EC08 Copy Reference Chart of Depreciation (CoD)
OADB Define Depreciation Area
OAOB Assign Chart of Depreciation to Co. Code
OAOA Define Asset Class
AO90 Assignment of Account in Asset Class
OAY2 Determination of Depreciation Area in Asset Class
(AS01) Creation of Asset Master
(AS11) Creation of Sub Asset
(F-90) Asset Purchase Posting
(AFAB) Depreciation Run
(F-92) Asset Sale Posting
(AW01N) Asset Explorer
Explain the difference between INVOICE and BILLING in SAP.
Both are same in SD point of view.
- In SD terminology we call as Billing Document and
- In FI terminology we call as INVOICE.
- In MM again only INVOICE will be there for Vendors.
Invoice is document indicating to delivery goods and Billing is a receipt of payment.
If we receive the goods from vendors that is called bill if we give the goods to customer that is called invoice.
Bill means we have to pay the amount against bill invoice means we have to receive the amount against invoice.
The below are the command steps and explanation. COPA Extraction -steps
R/3 System
1. KEB0
2. Select Datasource 1_CO_PA_CCA
3. Select Field Name for Partitioning (Eg, Ccode)
4. Initialise
5. Select characteristics & Value Fields & Key Figures
6. Select Development Class/Local Object
7. Workbench Request
8. Edit your Data Source to Select/Hide Fields
9. Extract Checker at RSA3 & Extract
BW
1. Replicate Data Source
2. Assign Info Source
3. Transfer all Data Source elements to Info Source
4. Activate Info Source
5. Create Cube on Infoprovider (Copy str from Infosource)
6. Go to Dimensions and create dimensions, Define & Assign
7. Check & Activate
8. Create Update Rules
9. Insert/Modify KF and write routines (const, formula, abap)
10. Activate
11. Create InfoPackage for Initialization
12. Maintain Infopackage
13. Under Update Tab Select Initialize delta on Infopackage
14. Schedule/Monitor
15. Create Another InfoPackage for Delta
16. Check on DELTA OptionPls r
17. Ready for Delta Load
LIS, CO/PA, and FI/SL are Customer Generated Generic Extractors, and LO is BW Content Extractors.
LIS is a cross application component LIS of SAP R/3 , which includes, Sales Information System, Purchasing Information System, Inventory Controlling....
Similarly CO/PA and FI/SL are used for specific Application Component of SAP R/3.
CO/PA collects all the OLTP data for calculating contribution margins (sales, cost of sales, overhead costs). FI/SL collects all the OLTP data for financial accounting, special ledger
1) Add the fields to the operating concern. So that the required field is visible in CE1XXXX table and other concerned tables CE2XXXX, CE3XXXX etc.
2) After you have enhanced the operating concern then you are ready to add it to the CO-PA data source. Since CO-PA is a regenerating application you can't add the field directly to the CO-PA data source. You need to delete the data source and then need to re-create using KEB2 transaction.
3) While re-creating the data source use the same old name so that there won't be any changes in the BW side when you need to assign the data source to info-source. Just replicate the new data source in BW side and map the new field in info-source. If you re-create using a different name then you will be needing extra build efforts to take the data into BW through IS all the way top to IC. I would personally suggest keep the same old data source name as before.
If you are adding the fields from the same "Operating concern" then goto KE24 and edit the dataaource and add your fields. However if you are adding fields outside the "Operating concern" then you need to append the extract structure and populate the fields in user exit using ABAP code. Reference OSS note: 852443
1. Check RSA7 on your R3 to see if there is any delta queue for COPA. (just to see, sometimes there is nothing here for the datasource, sometimes there is)
2. On BW go to SE16 and open the table RSSDLINIT
3. Find the line(s) corresponding to the problem datasource.
4. You can check the load status in RSRQ using the RNR from the table
5. Delete the line(s) in question from RSSDLINIT table
6. Now you will be able to open the infopackage. So now you can ReInit. But before you try to ReInit ....
7. In the infopackage go to the 'Scheduler' menu > 'Initialization options for the source system' and delete the existing INIT (if one is listed)
Also check this following link :
http://sapdokumanlari.wordpress.com/fi-module-introduction/fi-transaction-codes/
Kindly assign me some points if this helps you...
Regards,
Debjani...
Edited by: Debjani Mukherjee on Sep 5, 2008 7:53 PM
Similar Messages
-
EOIO - failure - resend - alternatives
Hello,
For some of our interfaces, we are using the QoS as EOIO but this is quite problematic:
If the message gets stuck in the queue, the message has to be canceled manually, then only the messages can move forward:
I would like to know the following:
1. What should be the decision criteria in selecting QoS as EOIO? Are there other criterias other [than|/thread/294241 [original link is broken]; mentioned by Ronald.
2. Can the message which resulted in error be resend?
3. Can the stuck message, not block the whole queue and generate kind of warning?
4. How can one tackle locking in ECC, which happens due to multiple messages being generated from PI from multiple queues?
5. How can EOIO messages monitored efficiently?
Appreciate your inputs.
Best regards,
Dharmi1. What should be the decision criteria in selecting QoS as EOIO? Are there other criterias other than mentioned by Ronald.
yes that applies to EOIO in general. You can decide to use use it or not or how to use it in efficient way is based on the integration that you are working in.
2. Can the message which resulted in error be resend?
yes find out the root cause, fix it and re process the message. Please be informed that we cannot re send few messages.
3. Can the stuck message, not block the whole queue and generate kind of warning?
No actually.Alternaetly, If you get a error realted to code then you can handle that in your code to generate a warning from next time.
4. How can one tackle locking in ECC, which happens due to multiple messages being generated from PI from multiple queues?
provide same QueueID to all relevent messages that might lock up on ECC
5. How can EOIO messages monitored efficiently?
by understanding about it more in detail.
Venkat. -
Where we check the Project closing status?T.code for List of Closing Projec
Dear Guru's,
Where can we check the Project closing status? Can we change the closing status if want to do some modification, and what is the transaction code that we to view the list of closing project.
Regards,
Kalyan1.You can find the project status ( all the status ) in any project maintenance transaction for ex. Run Cj20n > Open you project> on the basic data tab you will find the project status.
( If you want to see the status of other PS oject than click on that object, similarly you will get the status of that object on Basic data tab. )
2.Yes you can change the closing status of proejct for midification. path is clickon the object for which you want to change the closed object > Edit> Status--> Close --> Undo.
3.For the list of Project status go to CN41
on the projectno. input line click on multiple selection--> give the proejct no. list for which you wanted to see the status. -->enter --> Excute.
Report will open in screen. in that report go to toolbar and click on 'choose filed' button.(F5) -->one pop up window will open -->right handside scroll down in that window >select 'status' field and move it to left side>enter
project status will be shown against you project list. you can verify the same in maintenance txn.
If you have activated user status the same will also get populated.
You can downlaod the same in Excle file path is : Evaluation menu>export>save to file. ( via filtering in Excle you call do all the analysis realted to project status how amny are in clised status etc. )
Regards
Nitin -
The CO account assignment object belongs to company code 1000, not 1100
Dear consultants,
I am SAP - HR consultant.
I have 4 company codes, under one controlling area & payroll area. I executed live Payroll & tried to run posting payroll results. System displayed folloewing error "You want to make a posting in company code 1100. At the same time, a CO account assignment object was specified that is assigned to company code 1000. This is account assignment object with object type CTR, and object key 1000/1010101400. "
I have created similar accounts 1110101400, 1210101400 & 1310101400 for company codes 1100, 1200 & 1300.
May I know what could be the reason?
Regards,
Bindumadhav"this is account assignment object with object type CTR, and object key 1000/1010101400" means; somethings is missing for cost center 1010101400 under the company code 1000. system tries to post and entry for company code 1100 to the cost center 1010101400 which falls under a different company code (1000).
so it is not realted with GL accounts i believe
you can go to KS02 and check the company code for the CCenter 1010101400 and change it to 1100.
or you may change the cost center assigned to employer master and give a new ccenter which is under the company code 1100.
but if i were you, before making any changes i would consult the a CO consultants first for this issue. -
How GL CODE gets determined based upon the TAX Code
Dear Sir,
We request you to kindly guide about the follwoing query :
In the PO we mention the TaxCode and the TAXCODE contain all the condition records .
Subsequently for the Items being ordered we maintain the condition type using FV11 .
my question is that during the MIGO , how the determination of GL takes place for the various Tax realted posting e.g Sale-Tax/VAT etc .
Reagrds
B MittalThe tax code has transaction keys in it (you can see them in T Code FTXP). These transaction keys are linked to GL accounts in T Code OB40 (table T030K).
-
Search helps & match codes - Urgent plz
Hi ,
1. Could any one give me the difference between search helps & match codes.
2. assume that you are giving input matnr from selection screen.and executed based on input matnr you have generated an interactive report with fields matnr,etc...
if i want to change that particular matnr realted fields how can i do that from this report.Shell i call mm02 tcode.How to do that.how to pass the selected parameter to the transaction.(screen matnr field.please give me an example.
Regards
SAISRIHi,
Check this example for interactive reporting..which will take you MM02
TYPE-POOLS: slis.
DATA: gt_fieldcat TYPE slis_t_fieldcat_alv.
DATA: BEGIN OF wa_material,
MATNR LIKE MARA-MATNR,
END OF wa_material.
DATA: v_repid TYPE syrepid.
v_repid = sy-repid.
DATA it_material LIKE STANDARD TABLE OF wa_material WITH HEADER LINE.
SELECT * UP TO 100 ROWS
FROM MARA
INTO CORRESPONDING FIELDS OF TABLE it_material.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = v_repid
i_internal_tabname = 'WA_MATERIAL'
i_inclname = v_repid
CHANGING
ct_fieldcat = gt_fieldcat.
* have hotspot for a PO.
DATA: s_fieldcat LIKE LINE OF gt_fieldcat.
s_fieldcat-hotspot = 'X'.
MODIFY gt_fieldcat FROM s_fieldcat TRANSPORTING hotspot
WHERE fieldname = 'MATNR'.
* Pass the program.
v_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = v_repid
it_fieldcat = gt_fieldcat
i_callback_user_command = 'USER_COMMAND'
TABLES
t_outtab = it_material.
* FORM display_detail *
* --> UCOMM *
* --> SELFIELD *
FORM user_command USING ucomm LIKE sy-ucomm
selfield TYPE slis_selfield.
IF ucomm = '&IC1' AND selfield-fieldname = 'MATNR'.
READ TABLE it_material INDEX selfield-tabindex.
IF sy-subrc = 0.
SET PARAMETER ID 'MAT' FIELD it_material-matnr.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
ENDIF.
ENDIF.
ENDFORM.
Thanks
Naren -
Getting out homogenous codes in a column
Hello all...
I have the following dial code column and i want to get out the similar codes. like bellow please help
319008390
319008391 >>>>>>>>>31900839
319008392
319008393
319004008080
319004008081
319004008082
319004008083
319004008084>>>>>>>>319004
319004008085
319004008085
319004308085
319004018085
3120718650
3120718651>>>>>>>3120718
3120718938
3120718939try this
select dial_code, substr(dial_code ,1,8) from urtable order by 2,1if u want to seach any realted codes then
select dial_code, substr(dial_code ,1,8) from urtable where dial_code like '31900839%' order by 2,1 -
Generate prov.xml for Creative Cloud. Return Code 27
We're trying to follow this guide (Creative Cloud Help | Using Adobe Provisioning Toolkit Enterprise Edition) to serialize a package (or something). We're stuck on generating prov.xml. My best attempt at an entry is:
C:\Program Files (x86)\Common Files\Adobe\OOBE\PDApp\CCP\utilities\APTEE>adobe_prtk.exe --tool=VolumeSerialize --generate --serial=xxxx-xxxx-xxxx-xxxx-xxxx-xxxx --regsuppress=ss --eulasuppress --locales=en_US --provfilepath=C:\Program Fil
es (x86)\Common Files\Adobe\OOBE\PDApp\CCP
It says half of this is optional, but I'm skeptical.
Anyway, I'm getting return code 27. This indicates that it is unable to edit the prov.xml file specified. I didn't specify a prov.xml file, I'm trying to make one. The syntax I'm using differs from what I found on the page I linked, as that was giving me syntax errors. I lifted this off someone else's code. I've tried just about every variation I can think of. Any help would be appreciated.
This is on WindowsOne of these links may help
http://helpx.adobe.com/creative-cloud/packager.html
http://forums.adobe.com/community/download_install_setup/creative_suite_enterprise_deploym ent -
Code returns "null" and "0"s in main module - why?
I am coding a program that is in two modules. The main module serves it's standard function. The inventory class/module has three functions - 1) request stock input on 4 data points (1 String and 3 integers, one of which is a double) - 2) calculate the value of the inventory, and - 3) return string which reads out the 4 data points and the calculation showing the total value of the inventory. I've created the 3 functions in the inventory class/module, but obviously don't have them referring to each other correctly because when we come to the end of the program the output is null for the String and "0"s for the int/doubles. The code is below - any ideas about how to overcome the empty output? The code compiles fine and acts like it is going to work, but when it comes to the final command line it outputs
"null, which is item number 0, has 0 currently in stock at a price of 0.00 each. The total value of inventory in stock is 0.00"
Main module:
public class Main {
@SuppressWarnings("static-access")
public static void main(String[] args) {
Inventory inventory = new Inventory(); //call Inventory class
inventory.inventoryInput();
Inventory results = new Inventory();
results.inventoryResults(); //call for inventoryResults in Inventory class
}Inventory module:
import java.util.Scanner;
import static java.lang.System.out;
public class Inventory
//declare and initialize variables
int itemNumber = 0;
String productName;
int stockAmount = 0;
double productCost = 0;
double totalValue = 0;
String inventoryResults;
//initialize scanner
Scanner input = new Scanner(System.in);
public void inventoryInput ()
out.println("Please enter item number: "); //prompt for item number
itemNumber = input.nextInt();
out.println( "Enter product name/description: "); //prompt for product name
productName = input.next();
out.println("Quantity in stock: ");
stockAmount = input.nextInt(); // prompt for stock quantity
out.println("What is the product cost for each unit? ");
productCost = input.nextDouble(); // prompt for product cost
} // end inventoryInput
public double totalValue( double stockAmount, double productCost )
totalValue = stockAmount * productCost;
return totalValue; // return stock value
} // end totalValue
public void inventoryResults()
out.printf("%s, which is item number %d, has %d currently in stock at a " +
"price of %.2f each. The total value of inventory in stock is " +
"%.2f\n.", productName, itemNumber, stockAmount, productCost, totalValue);
} // end inventoryResult
}// end methodjustStartingOut wrote:
Actually my final solution was quite simple - I moved the calculation and final formated print text statements into the body of Inventory's class code. It now works. "Works" scares me a bit.
Someone cooking dinner might rummage about in the fridge and the cupboards to see what's there. Do imaginative things with what they come up with. And, with a bit of luck come up with something tasty or, at any rate edible.
A physician deciding on a medical treatment would do well to try a more cautious approach. A specific aim would be a good thing. And a calculated appreciation of the documented effects of each medicine. And how they interact.
It's up to you to determine which approach your coding should resemble. But it seems to me that your original Main class had a perfectly good reason to exist. It was a driver class whose purpose seemed to be to create and use an Inventory. (And using an Inventory is a very different thing from being an Inventory, so it made perfect sense to have two different classes.) To me it works or not, depending on whether it fufills that purpose. And what you have done is not so much solve the problem of it not working, as avoid that problem.
(If by "moved" you mean that the outputting now occurs as part of - or is called from - inventoryInput() then that is not a good thing. The input method should input: just input.)
I think that is because once the original input was loaded into the program (when I entered product number, name, price and value), the entries were dropped when the code switched to the next step. I think your intuition is entirely correct. In particular look at what your original main() method does (my comments replacing yours):
Inventory inventory = new Inventory(); // (A) Create an inventory...
inventory.inventoryInput(); // ... and put stuff into it
// (B) Create some new entirely different (and empty) inventory...
Inventory results = new Inventory();
results.inventoryResults(); // ... and print its contentsInstead of creating a second inventory, try printing the results of the first one.
Edited by: pbrockway2 on Apr 22, 2008 12:37 PM
Whoops ... just read reply 2.
It might sense, though to call totalValue() at the end your input method (because at that point the total value has changed). Or do away with that method - which you worked on getting right in your other thread ;) -
Sample source code for fields mapping in expert routine
Hi All
Iam writing the expert routine from dso to cube for example I have two fields in dso FLD1,FLD2
same fields in infocube also ,can any body provide me sample abap code to map source fields to target fields in expert routine,your help will be heighly appreciatble,it's an argent.
regards
eliazBasic would be ;
RESULT_FIELDS -xxx = <SOURCE_FIELDS> -xxx
you have the source fields as source, and result fields for as the target. In between you can check some conditions as in other routines of transformation.
BEGIN OF tys_SC_1, shows your source fields ( in your case DSO chars and key figures)
BEGIN OF tys_TG_1, , shows your result fields ( in your case Cube characteristics)
Hope this helps
Derya -
My phone want let me download any apps when I put the password in it take me to billing option which tell me I have the wrong security code and that's the security code that was on the card on the account
iTunes Store: My credit card's security code or zip code does not match my bank's records
http://support.apple.com/kb/TS1646 -
I have a relatively new Macbook Pro Retina 15" and have a Western Digital 1 TB Passport. I've been using the passport for about a year now without any problems on older Macbooks in my house. I used to be able to read and write to this drive no problem. I am using the Paragon NTFS for Mac software in order to read and write to the NTFS drive. When I navigate through the drive in Finder, if I try to create a new folder, I do not have a problem. If I try to delete that folder I just created, I get this error:
The Finder can’t complete the operation because some data in “untitled folder” can’t be read or written.
(Error code -36)
The folder has nothing in it whatsoever. I just created it. But if I go to Terminal and I run
rm -rf "untitled folder"
This works fine. Why is Terminal acting different than Finder? This does not happen on my other Macbooks. Thanks in advance.Thanx for such qucik reply!!! The pages were great, it had an answer for my problem, but unfortunately it also involved me dealing with it only on the MacIntosh HD itself, not on mounted external drive I suppose... So it didn't work they say that there is an icon in the left corner indicating locked folder - I don't see any icon on it. It says you can untick the box to unlock the folder - there is no tick to be unticked. Finally, they say that if I don't have permition or rights I cannot delete it. But how do i change permittion which already says that i can read and write in it? So everything appears to be normal only I cannot delete it. there is not even any warnig telling me I don't have enough rights, it just requires the password and after me typing it in it makes the sound of scraping paper but does nothing more. I aslo had some problems with emptying Trash after being seemingly succesful with one file and had got so far to have them appear in the Trash (no clue how this one actully got there though..) I followd the advice and emptied the Trash with Terminal. The Folder is still there but it shows 0 Kb... So far so good BUT: It is still on the external drive, so I obviously only managed to copy it into the Trash!!! Phew, innit a bit too tight to poor owners, this macbook?? I want my rights back!
-
Hi, All
i have a trouble about report generation.it seems the error happened at the "write UUT report"--this step is teststand report generation'DLL.
detail:
An error occurred calling 'Save' in 'Report' of 'NI TestStand 2010 SP1 API'
Access Denied.. Error writing to file 'D:\program\seq\xxx.xml'.
The file might be open in another application. If file access is intermittently denied, you should try disabling the Microsoft FindFast utility.
error code:-17205; Access Denied.
locationtep 'Write UUT Report' of sequence 'Single Pass' in 'SequentialModel.Seq'
How to fix it?
Thanks a lot.
BRHm, it looks like the file might be open in another application. If you see that file accesss is intermittently denied, you should try disabling the Microsoft FindFast utility.
CTA, CLA, MTFBWY -
Error in Printing Crystal Report Directly to Printer using SDK Code
Hello ,
I am trying to print a crystal report created in SAP Crystal Reports 2008 through SDk Code using one parameter
as (Document Number).But While running the Code the Report is not getting printed and also the system is
not able to fetch the correct data in the report using the supplied parameter .
I am using Visual Studio 2005 Crystal Report dll s in my code :-
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
Imports CrystalDecisions.CrystalReports
Imports System
Imports System.Data.SqlClient
Imports System.IO
For Clarification i am pasting my code below :-
Dim oRpt As ReportDocument
oRpt = New ReportDocument
oRpt.Load(Path)
With crConnectionInfo
.ServerName = Server
.DatabaseName = Database
.UserID = User
.Password = Password
End With
CrTables = oRpt.Database.Tables
For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
Next
oRpt.ParameterFields("Document Number").CurrentValues.AddValue(Parameter)
If Printer <> "" Then
oRpt.PrintOptions.PrinterName = Printer
End If
oRpt.PrintToPrinter(Copies, False, 0, 1)
Catch ex As Exception
SBO_Application.MessageBox(ex.Message)
End Try
Please suggest me what i have to do in my code to print the report with correct data in report.
Thanks & Regards,
Amitk
-
hi all,
i want to take the report for the closing stock of plant/sloc on a particular date,but am not able to find out the t code,have tried with MB5B,still am not getting the report.
ur help required in this
thanks and regards
VijayHi,
As somebody pointed out the right T code is MC.9, which would give you the stock value for all the materials in a plant.However , fr Quantities you may have to add the field required in the choose Key figures icon and refine your report further.
Thanks in Advance,
Nagrajan
Maybe you are looking for
-
Sms(message or imessage) sorting in iphone 4s (ver IOS 8.1)
am facing a problem sorting issue in my iphone 4s. normally if message receive it'll display first in message box. but i can see messages in between of new messages also. ex: today 11 nov 2014 i have received a 5 messages in that i can see 30 oct 201
-
I have ProTools MBox, iLok, Printer, M-audio 88 key, external hard drive, and I am running on clam shell mode with external monitor with wired USB/mouse keyboard (the new bluetooth Keyboard does not have a number keys which I need for keyboard short
-
Multiple local storage repositories in a standalone Oracle VM Server
Hi, I have a server with two disk volumes created: RAID1(/dev/sdb3) and RAID10(/dev/sda1) In the RAID1 volume was installed the Oracle VM Server 2.2.1. The rest of the RAID1 volume is available in the /OVS storage repository structure. Then I setting
-
Server name changed but old server name reflecting
Hi Experts, Issue is In the SQL server name is changed. When the user is logging on SAP old server name is appearing and in SAP 8.8 there is no option of change like in SAP 2005B and 2007B so no database is appearing on screen. What should be done i
-
How do you download songs you've purchased off itunes if they were deleted before syncing
I just updated the software on my itouch and I lost all the media / apps / songs that were on it. I can restore to my last sync..but that was 3 months ago and I bought a ton of songs since then that I have lost. How do you download songs you've purch