COPA and BSEG-SGTXT
We have postings that are happening in FI, and the users are populating the text fields on these postings. Is there a way to pass this text field over to COPA to bring into reporting and display of documents in that module?
Your question is more appropriate for the ERP Financials - Controlling forum, but I don't have authority to move it. So I'll go ahead and try to give you an answer here. But keep that in mind when posting about CO-PA in the future since a larger audience will be found at the other [forum|SAP ERP Financials - Controlling; This requirement is an unusual request and the only way I think it could be possible is as follows.
1 Define a new characteristic (KEA5) with the option "No check" data validation so that no master data would be expected in CO-PA (KES1).
2 Add this new characteristic to your operating concern (KEA0) and activate and generate the operating concern.
3 Utilize COPA enhancement COPA0005 (SMOD) by defining an enhancement project in (CMOD) and calling the function module EXIT_SAPLKEII_002 and programming your logic to read SGTXT from include INCLUDE ZXKKEU08. (Notice that use of enhancement COPA0005 is not related to CO-PA derivation (KEDR), rather it is a way to directly modify the CO-PA data passed by the FI/CO document.
Here is some relevant documenation on COPA005.
This enhancement lets you modify how actual data is updated in
Profitability Analysis via the FI/CO interface.
Caution!
Using the components in this enhancement means that you are modifying
the standard update of actual data from Sales and Distribution (SD),
Financial Accounting (FI), or Materials Management (MM) to Profitability
Analysis. To avoid data from being updated inconsistently, you need to
have a solid understanding of the "FI/CO document" interface!
Make changes with extreme caution. If unsure, contact SAP!
The components comprise the following function modules:
o EXIT_SAPLKEII_001
o EXIT_SAPLKEII_002
You are responsible for ensuring the consistency of any changes made!
Test each change made extensively before use in the productive system.
For further clarification, contact SAP.
You should strongly consider whether this solution will negatively affect your system performance by growing your segment-level characteristics (table CE4XXXX where XXXX is your operating concern). You may want to in fact make this new characteristic field a non-segment level characteristic (KEQ3). This will disable you from viewing this field in summary level CO-PA reports (KE31), but it would available from line item based reports (KE91) or from a custom BW infoprovider which gets line item data. You could of course use a combination of KE31 reports and KE91 reports by jumping from summary to detail reports and passing the selected characteristics. This is accomplished via the split report (KE3L) option.
Best regards,
[Jeffrey Holdeman|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/jeffrey+holdeman]
SAP BusinessObjects
Enterprise Performance Management
Regional Implementation Group
Tried to fix the formatting, but unsuccessful. Edited by: Jeffrey Holdeman on Jul 28, 2009 10:04 PM
Edited by: Jeffrey Holdeman on Jul 28, 2009 10:10 PM
Similar Messages
-
Problem in updating bseg-zuonr and bseg-sgtxt fields.
Hi guys,
I have a requirement to update ZUONR and SGTXT fields in BSEG , BSAS, BSIS, BSAK, BSIK, BSAD, and BSID tables . Is there any FM or BAPI to achieve this functionality as i dont want to use UPDATE statement. anybody please help me out.
Thanks in Advance
Regards
satishPerform some search at scn on transactions FB02 and FB09 (BDC solution) or FM FI_ITEMS_MASS_CHANGE (BDC generator actually)
Regards,
Raymond -
Item text (BSEG-SGTXT) is not getting updated in Payment document generated
Hi All,
Item text (BSEG-SGTXT) is not getting updated in Payment document generated through F110.
After generating the payment document via Transaction Code u2013 F110, system is not updating the
Text field (BSEG-SGTXT) in the payment document with the text that we have entered in the Invoice (MIRO or FI Invoice).
In case of manual payment (F-53) we can input the text manually hence that will get updated in
payment document but this thing is not possible with F110.
How can I update it?
Is there any configuration for that?
Thanks
Daniel DortaHi All,
I've applied the two notes as recommended. However, when I run FBL3N for payment run items, the Text field is update with wrong data, i.e. not from the Text field in FB60
Thus, I'll like someone to help me with what should exactly be done on the 'Step', 'Pre-requisite' and 'Substitution' side of the Substitution rule (TCode GGB1), I did not fill anything in the Pre-requisite box - is this right?
Thanx in advance. -
Enhancement for VL02N to update the item text(BSEG-SGTXT) during PGI
Hello all,
Actually, I need your help experts. I am trying to update the item text(BSEG-SGTXT) for accounting documents with the sales order number during their creation(post goods issue) from transaction VL02N, VL01N, VL09.
I have checked the 17 exits available for these transactions and non of these 17 exits allow me to modify the item text(BSEG-SGTXT). I am currently investigating on the two badi's available for these transactions.
I am not sure if it possible to make these modifications via Badi's.
Does anyone have any idea or technique that can help me to find a way to modify/update the item text(BSEG-SGTXT) for any accounting document generated during post goods issue using transaction VL02N, VL01N, VL09?
Thanks a lot in advance for your help experts.
Kind Regards,
BryanHello Ankur Agrawal,
Thanks a lot for your help.
I got the item text from the mentioned BADI. I will get back to this post if it works.
Thank again for your quick reply.
Kind Regards,
Bryan -
I need to "update" BSEG-SGTXT. What is the best way to do this?
For a bunch of FI documents, the BSEG-SGTXT has been entered wrong while creating the documents. We need to change the BSEG-SGTXT values. What would be the best method to do this. We understand, direct table updates are risky and not suggested. Also BSEG-SGTXT is duplicated in other tables, like BSIS, BSID etc. We wanted to get some BAPI/ other FM. But we have not found any such one till now.
Can anyone suggest a suitable method for this problem?Hi kaushik just check this Fm to change the text ..
BAPI_EXPENDITUREPROGTREE_SVRPV
also check
BAPI_EXPENDITUREPROGTREE_CHVAL
hope this helps regards,
Vijay -
Changing the length of BSEG-SGTXT (Accounting document line item text)
Hi ,
I came across a requirement where my business user wants to add more information (greater than 50 char) to BSEG-SGTXT field. It is uncommon and not recommended to change SAP provided data definitions (BSEG-SGTXT) but my business user badly needed this enhancement. I was wondering any of you come across this kind of situation? I need your suggestions & valuable input to enhance this field BSEG-SGTXT.
Thank you for reading this post and I appreciate all your inputs.
Kumar.Hi
I recommend not to do this. This BSEG table could have impact on lot of things, even in future uprade too.
regards
Srinivas -
Unable to print BSEG-SGTXT in Main window - SAP Script
Hi
I have an issue in Scripts.
I want to print BSEG-SGTXT in my Main Window and below is my code but i am unable to print the text. while debugging, i am getting value in zsgtxt field, but i am unable to get/print in script.
can any one help me why it's not printing? and plese suggest where it's wrong.
In Main window:
/: PERFORM TEXT IN PROGRAM ZFIGS_CHECK_PRINTING
/: USING ®UP-BELNR&
/: CHANGING &ZSGTXT&
/: ENDPERFORM
CH &ZSGTXT&
In Subroutine pool:
FORM text TABLES intab STRUCTURE itcsy
outtab STRUCTURE itcsy.
DATA: zbelnr(10),
zsgtxt LIKE bseg-sgtxt.
READ TABLE intab WITH KEY name = 'REGUP-BELNR' .
IF sy-subrc = 0.
MOVE intab-value TO zbelnr.
SELECT SINGLE sgtxt INTO zsgtxt FROM bseg
WHERE bukrs = '8140' AND
belnr = zbelnr.
IF sy-subrc = 0.
MOVE zsgtxt TO outtab-value.
MODIFY outtab INDEX sy-tabix.
ENDIF.
ENDIF.
ENDFORM.
Thanks,
SivaHi,
Can any one tell how to write loop statement in Main window to display BSEG-SGTXT. As i am getting text (BSEG-SGTXT) from subroutine pool and calling into Main window using Perform statement and printing duplicate text in multiple times insted of different text.
Thanks,
Siva -
Substitute item line text (BSEG-SGTXT)
Dear all,
I have some questions here. For example, in tcode FB60, we enter the vendor code, invoice date, amount, tax, etc. When click on simulate, there will be another line item for Tax Input(if we select the tax). One of my requirement is, if user enter any text at the basic data tab (SGTXT), i would like to copy the text (BSEG-SGTXT) to the TAX INPUT text (BSEG-SGTXT), means different line item. When i click save for park documents, the tax input text needs to be saved too. So when i view in tcode FB03, the Tax input text will also have the same value as the vendor line item text. As well as after i post the documents, the Tax Input text should also be there.
I have tried to use Substitution. When i click Simulate, the value did copy from vendor line item to Tax Input line item text. But after i click save, i check the document, the text at the Tax Input line item is not there.
In my Prerequisite, i put tcode = FB60. Substitution, i am using BSEG-SGTXT substitute by exit. I have copy the program RGGBS000 to a new program and assign the exit. May i know how can i pass the whole item table instead of checking in structure BSEG in the exit? Because the main point is, the vendor line item and the Tax input line item are different. I want to copy different line item text into different line item text.
Can anyone guide me into this?
Thanks a lot. Appreciate it!Hi Starry,
Use PROCESS BTE not INTERFACE BTE. Process BTE has the following Parameters :
FUNCTION ZSAMPLE_PROCESS_00001120.
*"*"Local Interface:
*" IMPORTING
*" VALUE(I_BKDF) TYPE BKDF OPTIONAL
*" TABLES
*" T_BKPF STRUCTURE BKPF
*" T_BSEG STRUCTURE BSEG
*" T_BKPFSUB STRUCTURE BKPF_SUBST
*" T_BSEGSUB STRUCTURE BSEG_SUBST
*" T_BSEC STRUCTURE BSEC OPTIONAL
*" CHANGING
*" REFERENCE(I_BKDFSUB) TYPE BKDF_SUBST OPTIONAL
Follow the instruction which I had posted earlier. Also check the documentation of the FM. Some important part am pasting here :
The current document headers (there will be more than one for cross-company code transactions, for example), the corresponding line items and the recurring entry data for the document header and the one-time account data are transferred to the additional component, for information purposes only. You must not edit this data. Instead, two additional tables (T_BKPFSUB and T_BSEGSUB) and the structure BKDF_SUBST are also transferred. The contents of the fields that can be substituted are entered in these tables. Field TABIX contains a line number which shows from which line in T_BSEG or T_BKPF the field contents originate.
Thanks & Regards,
Faheem. -
With FB02 changes in BSEG-SGTXT not transferred to COEP-SGTXT
Hi guys
In ECC 6.0 when you change a doc. with FB02, BSEG-SGTXT is not transferred to COEP-SGTXT. In fact if you parked an invoice with FV60 and leave item text "SGTXT" field blank , and afterwards you fill the item text with something and save the doc. as definitve the field bseg-sgtxt is not transferred to controlling doc and field COEP-sgtxt is not updated.
Transactions KOB1 or KSB1 don't show you the changes made in the finance document in line item text.
I have searched in the sap notes but all of them relates to version up to 500.
I Do not Know how to resolve the issue. I tried also with 1KE8 but only reverse and create a new Profit center doc and the field GLPCA-SGTXT is blank
Does someone Know how to reflect or transfer the changes made in FB02 in Bseg-sgtxt to Coel-SGTX ?
Kind RegardsHi Abhisek
When I searched in sap help portal this note: 1003756, I get next error message: "The requested SAP Note is either in reworking or is released internally only"
By the way I do not get also this note implemented in my system, but I can not find it also in https://websmp203.sap-ag.de/notes
Do you Know Why ?
Kind Regards -
How to use BKPF and BSEG without using inner join
Hi,
can anybody plz tell me the logic about how to complete the report without inner joining bkpf and bseg.Is this report can be really be made by using only bseg,bkpf ?
*selection-criteria .
BKPF-USNAM
BKPF-CPUDT
BKPF-BUDAT
BKPF-GJAHR
BKPF-BUKRS
BKPF-BELNR
BSEG-SAKNR
BSEG-LIFNR
BSEG-KUNNR
BSEG-ZUONR
BSEG-SGTXT
Output fields required.
BKPF-BUKRS
BKPF-BELNR
BKPF-GJAHR
BKPF-MONAT
BKPF-BLART
BKPF-CPUDT
BKPF-BLDAT
BKPF-BUDAT
BKPF-USNAM
BKPF-XBLNR
BKPF-STBLG
BKPF-BKTXT
BKPF-WAERS
BKPF-KURSF
BSEG-BUZEI
BSEG-BSCHL
BSEG-KOART
BSEG-UMSKZ
BSEG-SHKZG
BSEG-MWSKZ
BSEG-PSWBT
BSEG-PSWSL
BSEG-DMBTR
BSEG-SAKNR
BSEG-HKONT
BSEG-KOSTL
BSEG-KUNNR
BSEG-VBELN
BSEG-LIFNR
BSEG-ANLN1
BSEG-ANLN2
BSEG-AUFNR
BSEG-MATNR
BSEG-MENGE
BSEG-MEINS
BSEG-ZUONR
BSEG-SGTXT
Thanks,
Rahman
Moderator Message: Please search before posting your question. Thread locked.
Edited by: Suhas Saha on Jan 31, 2012 3:07 PMQuick question - what's preventing your from using built-in functions?
I suggest mapping your Time Dim to a standard Time Dim and work with it - you'll save a lot more time. You'd even need this table if you wanted to work around Todate/AGO.
It is possible to model this functionality w/o functions, but it'll be time consuming task, similar to using Time Series Wizard in Siebel Analytics. You'll need to build aliases and views along with some complex joins (such as TIME.KEY=TIME.KEY-365), introduce a bunch of variables to control. Also, you might not get much flexibility in terms of years. For each year, you'd need an alias table. (TIME_DIM_PY). -
Hi,
The standard program RFBIBL00 does FAE(FI) posting in our custom program.
For doing so, we are passing a file with all the revenue G/L account details based on the structure BSEG.
The standard program creates a document for the FI posting.
When we view the document in transaction FB03, posting has been made for all the revenue G/L accounts and
also the corresponding VAT G/L accounts and the exact Tax amount has been determined by the standard program and posting has been made for the same.
But the Text field (BSEG-SGTXT) is empty for the VAT G/L accounts, since those account details has been determined in run-time by the standard program.
NOTE: Text fields have the constant value only for the revenue G/L accounts, since we pass to the file to the standard program only for the revenue G/L accounts.
Our requirement is to add the value in the text field for a particular VAT G/L account.
Kindly suggest few methods to add the constant value in the text field for a particular G/L account of the document through our custom program.
Thanks in Advance.
Yogesh.Thanks for your quick answer,
I have checked the table BSAS as well, it also has no entries corresponding the above G/Laccount.
I can find the entries in BSEG for that G/L, but since it does not have the G/L account as primary key
my program will take very long processing time as the user will give range of G/L accounts.
When I Check the Report FS10N with the same G/L account, and double click to see the lineitems
it also gives me the message 'no line items found' eventhough it shows some amount in the first screen.
Salman Zahir -
Account-based COPA and having Cost Center as Real Object in Sales Order
Hi,
We have recently activated account-based COPA and in our SO, we realized the Profitability Segment being populated- that is not a problem in normal scenarios.
However, in some cases, we would like to charge to a cost center instead of COPA. We have tried the 2 ways mentioned in the forum/on the web to include Cost Center in Sales Order:
1. Go to OVF3 t-code and configure a default cost center for the order reason
2. Change the SD Document Category under 'Define Sales Document Types' to 'I- Order w/o charge'.
However both ways only open the Cost center field but still populates the COPA. At accounting entries, cost center will become a statistical object and COPA, the real object- which is not what we want.
Is there a way to stop the auto-populating of Profitabiltiy Segment in SO when cost center is being entered?
Thanks very much in advance for any suggestions.
Regards,
HuiminSolved by myself, with help of OSS Note: 44381 - Profitability Segment Not Required in SD Postings. Have a CO substitution rule to clear away the Profitability Segment number based on certain conditions. Thanks!
-
I am having to install tbird again on a new system, I copied and backup-ed my previous emails. When I view my copies and/or restored email files they are empty, nothing is displayed and the window shows message of being empty. I an sure of the backup and of my copy/paste steps. Where and/or what has happened to my emails? I also searched each disk and all files for email extensions (*.mozmsgs and *.sbd and *.sbf) with no results. I can not find a way to restore over 10 years worth of very important emails. Can someone please help me recover what I know is their? All my emails in Seamonkey are on another system (the one I replaced with new win7 pro 64 i7 based system) and all the emails I had in tbird, before having to reinstall everything on new system due to something that happened to the os, are the copied and backup-ed files that are showing empty. Prior to new install all old Seamonkey emails transferred to tbird and all the tbird emails prior were their and were the copied/backup-ed files showing empty now. This is turning into my worst experience and nightmare in over 25 years of systems. I am really lost on this one. please help....
Are you saying you split your profile between C and D drive, perhaps through specifying a location in the account settings.
BTW.
*.mozmsgs useless duplicate files created for windows search integration. Simply wasted space on the disk.
*.sbd a folder indicating the presence of a sub folder (contains no mail at all.
*.sbf (I don't know that one.
*.msf an index of mail. contains tags, but otherwise useless and will be recreated when the mail is loaded in Thunderbird so it can display the mail list.
*. that is no file extension. You mail in files with the same name as the folders they came from. -
Regarding link up b/w CHVW and BSEG
Hi,
i am making a report in which i have to make link up B/W CHVW AND
BSEG and how should i do this so dat can be properly displayed.hi,
yeah i know dat it is a cluster table and moreover i am using for all enteries but th thing is when i make link with CHVW there is a problem that the aufnr or vbeln which are present are not dere in bseg ,So what should i do to show in my reprt that the cost of material had been paid to the vendor or not.
plzzz help me out as it is really urgnent to me. -
Gurus,
I have to write the logic to fetch data from bkpf and bseg. Need help on how can i do that..
I have to get bukrs belnr gjahr ldgrp from BKPF for a given date and company code. For all these documents, then i have to get the line items from BSEG if the ldgrp is I1 or SPACE.
If the ldgrp is not I1 or SPACE then i have to fetch the records from BSEG_ADD and then generate a ALV report with all the data including the data that was fetched from BKPF.
So, it wil be a combined ALV report that displays header as well as LINE item data together...
Can u please help me with the code...I am not sure how can everything go all together in one internal table....Becoz once its there in one table then only a ALV list can be generated.......
Cheers:
Samhi Sam, this may be of some similar thing.
Use this program, I got this prog from a source and we added a small conditional check in the program which checks document numbers in BSEG and also comapres in BKPF and sees if the output from BSEG falls under the posting data range specified in the initial selection.
Now just so you know, this output is kinda messed up, so you will have to play with it in Excel to extract the document numbers, if that is what you want.
============================
PROGRAM....... ZFI_BSEG_DOWNLOAD
TITLE......... Download BSEG
PROGRAM TYPE.. Download
======================================================================
GENERAL DOCUMENTATION AND COMMENTS
<...>
======================================================================
ASSOCIATED PROGRAMS
<Program>..... <Description>
======================================================================
CHANGE HISTORY
Date By Ticket Description
REPORT zfi_bseg_download.
TABLES: bseg, bkpf.
TYPES: BEGIN OF ty_output,
line(6000) TYPE c,
END OF ty_output.
TYPES: ty_tab_output TYPE TABLE OF ty_output,
ty_tab_nametab TYPE TABLE OF x031l.
CONSTANTS: c_delimiter(04) TYPE c VALUE '"%%"',
c_records TYPE i VALUE 10000.
SELECTION-SCREEN
SELECT-OPTIONS: p_bukrs FOR bseg-bukrs,
p_belnr FOR bseg-belnr,
p_buzei FOR bseg-buzei,
p_gjahr FOR bseg-gjahr,
p_budat for bkpf-budat.
SELECTION-SCREEN SKIP.
PARAMETERS: p_file LIKE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN SKIP.
PARAMETERS: p_append AS CHECKBOX DEFAULT 'X'.
START-OF-SELECTION
START-OF-SELECTION.
PERFORM get_records.
*& Form get_records
FORM get_records.
DATA: l_cursor TYPE cursor,
lt_bseg TYPE TABLE OF bseg,
ls_bseg LIKE LINE OF lt_bseg,
lt_output TYPE ty_tab_output,
ls_output LIKE LINE OF lt_output,
lt_nametab TYPE ty_tab_nametab,
ls_nametab LIKE LINE OF lt_nametab,
l_field(30) TYPE c,
l_output(50) TYPE c,
l_date(10) TYPE c,
l_len TYPE i.
FIELD-SYMBOLS: <field>.
IF p_append NE space.
OPEN DATASET p_file FOR APPENDING IN TEXT MODE.
ELSE.
OPEN DATASET p_file FOR OUTPUT IN TEXT MODE.
ENDIF.
Retrieve BSEF fieldnames and data types
PERFORM get_fields CHANGING lt_nametab.
OPEN CURSOR l_cursor FOR
SELECT * FROM bseg
WHERE bukrs IN p_bukrs
AND belnr IN p_belnr
AND buzei IN p_buzei
AND gjahr IN p_gjahr.
Write out fieldnames
IF p_append IS INITIAL.
LOOP AT lt_nametab INTO ls_nametab.
CONCATENATE ls_output ls_nametab-fieldname
INTO ls_output SEPARATED BY c_delimiter.
ENDLOOP.
IF ls_output+0(4) = c_delimiter.
SHIFT ls_output LEFT BY 4 PLACES.
ENDIF.
l_len = strlen( ls_output ).
TRANSFER ls_output TO p_file LENGTH l_len.
ENDIF.
Process BSEG records
DO.
CLEAR lt_bseg.
FETCH NEXT CURSOR l_cursor
INTO TABLE lt_bseg
PACKAGE SIZE c_records.
IF sy-subrc 0.
EXIT.
ENDIF.
LOOP AT lt_bseg INTO ls_bseg.
SELECT single * FROM BKPF
WHERE BUKRS = ls_bseg-BUKRS
AND BELNR = ls_bseg-BELNR
AND GJAHR = ls_bseg-GJAHR
AND BUDAT in p_budat.
if syst-subrc 0.
continue.
endif.
CLEAR ls_output.
Process individual fields of BSEG record
LOOP AT lt_nametab INTO ls_nametab.
CONCATENATE 'LS_BSEG-' ls_nametab-fieldname INTO l_field.
ASSIGN (l_field) TO <field>.
CLEAR l_output.
Process by field data types
CASE ls_nametab-exid.
WHEN 'C' OR 'N' OR 'I'.
Character, Numeric & Integer
l_output = <field>.
WHEN 'D'.
Dates
WRITE <field> TO l_date DD/MM/YYYY.
l_output = l_date.
WHEN 'P'.
Packed decimals
WRITE <field> TO l_output.
WHEN OTHERS.
MESSAGE a000(zs) WITH 'Data type error - ' ls_nametab-exid.
ENDCASE.
SHIFT l_output LEFT DELETING LEADING space.
CONCATENATE ls_output l_output
INTO ls_output SEPARATED BY c_delimiter.
ENDLOOP.
IF ls_output+0(4) = c_delimiter.
SHIFT ls_output LEFT BY 4 PLACES.
ENDIF.
l_len = strlen( ls_output ).
TRANSFER ls_output TO p_file LENGTH l_len.
ENDLOOP.
IF sy-subrc = 0.
ENDIF.
ENDDO.
CLOSE CURSOR l_cursor.
CLOSE DATASET p_file.
ENDFORM. " get_records
*& Form get_fields
FORM get_fields CHANGING pt_nametab TYPE ty_tab_nametab.
CALL FUNCTION 'RFC_GET_NAMETAB'
EXPORTING
tabname = 'BSEG'
TABLES
nametab = pt_nametab
EXCEPTIONS
table_not_active = 1
OTHERS = 2.
IF sy-subrc 0.
ENDIF.
ENDFORM. " get_fields
hope this helps.
cheers,
Hema.
Maybe you are looking for
-
fo:inline in a cell that has a variable
Using 10.1.3.4 BI Publisher on my desktop. I have a table in my rtf file. In a cell I can enter a field *<fo:inline color="red"><?EXPR11_11?></fo:inline>* and it will show the text in red as I want. If I change the cell to something like *<fo:inline
-
I want to make a DVD of a slide-show with an audio track behind the photographs. I have carefully followed the iDVD video tutorials but the result is far from satisfactory. The quality of the images on the resulting DVD are blurred and indistict alth
-
CD burn error a.k.a. error 4261
i make a playlist of about 20 songs then put in my disc (which i know can hold 20 songs because media player can burn even more songs onto it) and then click burn disc. it burns the first two songs fine and then after that either error 4261 or 4260 c
-
Hi Experts, Do we have any STD report - which will show PO processing time (in days) -{ from PO date till GR date} per PO?? Regards, Jackie
-
For the last several days, my OS X has been freezing with different programs. It locks up and I have to manually restart. It is becoming a pain. Any ideas on what I can do? Thank you.